Python secure?

Roger Binns rogerb at rogerbinns.com
Mon Aug 16 07:48:26 CEST 2004


M. Clift wrote:
> My reason for choosing Python was one, that it is free, so if my
> efforts amount to nothing I haven't wasted money, two, that it is
> supposed to be an easy language when compared to some others and
> three, that my application when finished, probably wouldn't sell for
> that much and not in any great quantities for me to gamble spending
> something like £1000 on Visual C / ++ this that and the other or
> whatever.

A simpler answer for you:

The less lines of code you write, the easier it is for someone to
recover how it works and the equivalent of your source code.  This
is true no matter what language is used.

The less lines of code you write, the less bugs there will be and
the less places for bugs to hide.

The less lines of code you write, the sooner you will finish.

The less lines of code you have to write in order to achieve some
functionality, the sooner you will be able to ship your program.

The less lines of code you have, the easier it is to make major
changes such as moving to another platform, using different
toolkits, databases etc

Python will result in you writing less lines of code.  C++/C will
result in you writing more.  Java is another planet where the
Eclipse editor helps by writing some of the code :-)

Since you are not a programmer, here is some friendly advice:

- The LEAST of your issues is going to be people recovering your
  code.  You will have the biggest problems in actually getting
  something that works correctly, especially in the real world.
  Try writing down exactly how you will test your program first.
  Details like what the input and output data will look like,
  values that are out of bounds, whatever users paste in from
  the clipboard, someone typing rapid random junk, input data
  far larger than you anticipated etc.

- Your first program ever will be junk.  After a few years, and
  even possibly months you will look back at it an be amazed.
  It will also be one of the most valuable learning experiences :-)

- Unless you have a perfect specification written down, your first
  version will tend to get things wrong, but help give you an idea
  of what your code should be doing.  This is called prototyping
  and it is best to do it in a way that allows the easiest changes
  to explore new ideas and delete the old ones.

I would advise you to write your first program in Python.  Once
you have something that you know works, can be tested and you
completely understand the problem and solution (as well as
programming :-) then decide what to write the "proper" version
in since you will be in a better position to make value
judgements.

Roger 





More information about the Python-list mailing list