November 12th, 2004, 04:18 PM
My problem is this; I eventually want to create an application that sits on a master server with a web front end. This program controls applications and manages files running on the slave servers.
Unfortunately I have never programmed before, choosing what language to learn/start with is proving very tricky. The solution needs to be cross platform working on Linux, FreeBSD and in the future poss win32. however the code will be being written on a windows box.
I started teaching myself java a few days ago and I think Iím doing ok at it, the trouble is the more I looked at different languages the more confused I got. Would I be better off using Perl, or Python or even php? Then I stumbled onto mono, so perhaps c# is the way to go! agggggggggggggg
So far Iím quite attracted to python, it looks relatively easy and powerful but Iím not sure if it can do what I want to achieve
The other trouble is that I can not find any good IDE's for python.
Any recommendations would be good..
November 12th, 2004, 04:49 PM
hmmm, after abit of hunting it appears that it is very hard to effectivly secure python source from prying eyes
This is a shame as it is to be a retail product I do not want it to be easy for anyone to view my code..
November 12th, 2004, 05:07 PM
It is certainly possible to do what you want in Python - there are plenty of web service tools and frameworks available for it.
As for protecting the source, Python is compiled down to bytecode (.pyc files), which you can distribute instead of the source files. It is not too difficult to decompile the bytecode back into source, but this is also true of Java and C#.
Who are you hiding the source code from? Since it is a web app then the source will not be available to the users anyway, so it is only the hosting service that will be able to access it. This is probably not as big an issue as you think.
What are you looking for in an IDE? There are plenty of dedicated python editors (SPE, Boa constructor, Idle, Wing, PythonWin etc) and general editors that have good python support (emacs, vim, jedit and many others). There is also a python plugin to eclipse that I have just started playing with, and looks very cool.
Dave - The Developers' Coach
November 12th, 2004, 05:13 PM
The trouble would be that if I ever managed to get the code working correctly then i would be aiming to sell it with a license model. ie 1 ip one license - the trouble is if people can see the source there is nothing to stop them essentially stealing the program
As this is the eventual aim I might as well use a language that I can achieve this in from the beginning.
November 12th, 2004, 05:25 PM
I think that came out wrong, essentially what I do not want is people to be able to double click and see the code I have used. I'm aware that nothing that I do will stop someone determined to see the code but it would be nice to make it at least a bit difficult! Even if that just involves packaging it in a way that discourages people just opening it in notepad..
However having looked at zend it seems fairly secure..
November 13th, 2004, 05:09 AM
As I said above, you do not need to distribute the source code, just the compiled bytecode. This is no different from Java or C#.
Dave - The Developers' Coach
November 13th, 2004, 09:12 AM
Ok, having spent the morning reading around this I have decided there really is nothing in it, so I might as well go with my gut and learn python first
I would still like something abit stronger that just compiling to bytecode to protect my source, but thatís life! At least it means someone has to go and look for a program to decompile it, and if they are prepared to do that I guess not alot will stop them!
Code obscuration would still be nice :P
November 13th, 2004, 09:29 AM
Just incase anyone is intrested, there seem to be several way to offer more protection for your code.
Pyrex - this converts into C binaries - harder to decompile and
pyobfuscate - had to search long and hard to find this, anyone know how effective it is?
November 13th, 2004, 11:22 AM
Well i'm happy, I have learnt more python in one afternoon than I learnt java in a week, for me having never programed before (well basic about 5 years ago!) it just makes sense It is so easy to read vs other languages