By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
440,235 Members | 1,057 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 440,235 IT Pros & Developers. It's quick & easy.

python for EE CAD program

P: n/a
Hi All,

I have read some posts on this subject but I haven't been able to make
a decision whether to use Python or not.

I'm considering converting a Java CAD program to Python/C with
wxWdigets for the GUI.

I don't have good answers for:

1) Can I use py2exe or pyinstaller to produce an executable for
Linux, Windows, and Mac? If not, is there a way it can be done?

2) Is there any way to protect the source code, like obfuscation?

3) Memory footprint of application seems large for python demo. Is
this typical for large python applications?

I guess the best thing to do is convert a little portion of the Java
program and see how it works out with respect to the concerns above.

Suggestions and comments appreciated.

Jun 4 '07 #1
Share this Question
Share on Google+
8 Replies


P: n/a
chewie54 wrote:
Hi All,

I have read some posts on this subject but I haven't been able to make
a decision whether to use Python or not.

I'm considering converting a Java CAD program to Python/C with
wxWdigets for the GUI.

I don't have good answers for:

1) Can I use py2exe or pyinstaller to produce an executable for
Linux, Windows, and Mac? If not, is there a way it can be done?

2) Is there any way to protect the source code, like obfuscation?

3) Memory footprint of application seems large for python demo. Is
this typical for large python applications?

I guess the best thing to do is convert a little portion of the Java
program and see how it works out with respect to the concerns above.

Suggestions and comments appreciated.
Look at python-cad, that might give you an idea how such a thing is to be
accomplished using python.

Diez
Jun 4 '07 #2

P: n/a
On Jun 4, 9:56 am, "Diez B. Roggisch" <d...@nospam.web.dewrote:
chewie54 wrote:
Hi All,
I have read some posts on this subject but I haven't been able to make
a decision whether to use Python or not.
I'm considering converting a Java CAD program to Python/C with
wxWdigets for the GUI.
I don't have good answers for:
1) Can I use py2exe or pyinstaller to produce an executable for
Linux, Windows, and Mac? If not, is there a way it can be done?
2) Is there any way to protect the source code, like obfuscation?
3) Memory footprint of application seems large for python demo. Is
this typical for large python applications?
I guess the best thing to do is convert a little portion of the Java
program and see how it works out with respect to the concerns above.
Suggestions and comments appreciated.

Look at python-cad, that might give you an idea how such a thing is to be
accomplished using python.

Diez

Hello Diez,

I did look at PythonCad but the distribution and install methods for
Windows is not user freindly. Since the public domain software, I
don't think they protect the source code either.
Jun 4 '07 #3

P: n/a
Hello Diez,
>
I did look at PythonCad but the distribution and install methods for
Windows is not user freindly. Since the public domain software, I
don't think they protect the source code either.
The subject of code obfuscation in python has been beaten to death quite a
few times on this list, do a search to find anything you want to know.

In a nutshell: forget about it. it's not worth it, difficult to accomplish
due to the dynamic nature of python and to be brutally honest: more or less
nothing you can come up with in your own code is really worth looking at
anyway. That's not saying that you can't code, just that more or less
everything one programs is trivial and only of value in the actual context
it was written in. So nobody is really interested in ripping stuff out.

diez
Jun 4 '07 #4

P: n/a
On 2007-06-04, chewie54 <df*********@gmail.comwrote:
1) Can I use py2exe or pyinstaller to produce an executable
for Linux, Windows, and Mac? If not, is there a way it can be
done?

2) Is there any way to protect the source code, like obfuscation?

3) Memory footprint of application seems large for python demo. Is
this typical for large python applications?
I'm glad somebody asked these questions. I was getting
worried. It's almost lunchime on Monday and they hadn't come
up yet this week. :)

--
Grant Edwards grante Yow! RHAPSODY in Glue!
at
visi.com
Jun 4 '07 #5

P: n/a
On Jun 4, 10:58 am, "Diez B. Roggisch" <d...@nospam.web.dewrote:
Hello Diez,
I did look at PythonCad but the distribution and install methods for
Windows is not user freindly. Since the public domain software, I
don't think they protect the source code either.

The subject of code obfuscation in python has been beaten to death quite a
few times on this list, do a search to find anything you want to know.

In a nutshell: forget about it. it's not worth it, difficult to accomplish
due to the dynamic nature of python and to be brutally honest: more or less
nothing you can come up with in your own code is really worth looking at
anyway. That's not saying that you can't code, just that more or less
everything one programs is trivial and only of value in the actual context
it was written in. So nobody is really interested in ripping stuff out.

diez

Your opinions are noted, thank you, but I don't agree with you.
There are
portions of the code that are under review for patents and as such
need to
be protected.

I'm investigating whether Python is the right language to use
for a commercial CAD application. While I think Python is a great
scripting
language, there seems to limitations with regards to packaging and
distributing
programs.



Jun 4 '07 #6

P: n/a
On 6/4/07, chewie54 <df*********@gmail.comwrote:
On Jun 4, 10:58 am, "Diez B. Roggisch" <d...@nospam.web.dewrote:
Hello Diez,
I did look at PythonCad but the distribution and install methods for
Windows is not user freindly. Since the public domain software, I
don't think they protect the source code either.
The subject of code obfuscation in python has been beaten to death quite a
few times on this list, do a search to find anything you want to know.

In a nutshell: forget about it. it's not worth it, difficult to accomplish
due to the dynamic nature of python and to be brutally honest: more or less
nothing you can come up with in your own code is really worth looking at
anyway. That's not saying that you can't code, just that more or less
everything one programs is trivial and only of value in the actual context
it was written in. So nobody is really interested in ripping stuff out.

diez


Your opinions are noted, thank you, but I don't agree with you.
There are
portions of the code that are under review for patents and as such
need to
be protected.
For the record: This is not true. If you've already applied for the
patent, you have as much legal protection as you will ever get. Also,
since patents apply to methods and not to literal source, if you're
trying to protect something patentable you have even less protection
against analysis and disassembly than you would if you were trying to
protect the copyright on the code. If you need to make a token effort
to satisfy whatever legal hurdles are involved, shipping .pyc files
(which py2exe and all the other packagers I'm aware of do) is just as
effective as shipping executables compiled with C or C++.
I'm investigating whether Python is the right language to use
for a commercial CAD application. While I think Python is a great
scripting
language, there seems to limitations with regards to packaging and
distributing
programs.
None that don't also exist in every other language in existence. These
are fundamental issues of information theory, not language
constraints.
Jun 4 '07 #7

P: n/a
On 2007-06-04, Chris Mellon <ar*****@gmail.comwrote:
>Your opinions are noted, thank you, but I don't agree with
you. There are portions of the code that are under review for
patents and as such need to be protected.

For the record: This is not true. If you've already applied
for the patent, you have as much legal protection as you will
ever get. Also, since patents apply to methods and not to
literal source, if you're trying to protect something
patentable you have even less protection against analysis and
disassembly than you would if you were trying to protect the
copyright on the code. If you need to make a token effort to
satisfy whatever legal hurdles are involved, shipping .pyc
files (which py2exe and all the other packagers I'm aware of
do) is just as effective as shipping executables compiled with
C or C++.
>I'm investigating whether Python is the right language to use
for a commercial CAD application. While I think Python is a
great scripting language, there seems to limitations with
regards to packaging and distributing programs.

None that don't also exist in every other language in
existence. These are fundamental issues of information theory,
not language constraints.
Especially since the alternative appears to be Java. Just like
Java, Python compiles to byte code that runs on a VM.

If for some reason he's happy shipping Java VM byte-code and
not Python VM byte-code, then he can use Jython to generate
byte-code for the Java VM instead of for the Python VM.
Personally I think it's rather deluded to think that one is any
more secure than the other.

--
Grant Edwards grante Yow! What UNIVERSE is this,
at please??
visi.com
Jun 4 '07 #8

P: n/a
On Jun 4, 12:47 pm, Grant Edwards <gra...@visi.comwrote:
On 2007-06-04, Chris Mellon <arka...@gmail.comwrote:
Your opinions are noted, thank you, but I don't agree with
you. There are portions of the code that are under review for
patents and as such need to be protected.
For the record: This is not true. If you've already applied
for the patent, you have as much legal protection as you will
ever get. Also, since patents apply to methods and not to
literal source, if you're trying to protect something
patentable you have even less protection against analysis and
disassembly than you would if you were trying to protect the
copyright on the code. If you need to make a token effort to
satisfy whatever legal hurdles are involved, shipping .pyc
files (which py2exe and all the other packagers I'm aware of
do) is just as effective as shipping executables compiled with
C or C++.
I'm investigating whether Python is the right language to use
for a commercial CAD application. While I think Python is a
great scripting language, there seems to limitations with
regards to packaging and distributing programs.
None that don't also exist in every other language in
existence. These are fundamental issues of information theory,
not language constraints.

Especially since the alternative appears to be Java. Just like
Java, Python compiles to byte code that runs on a VM.

If for some reason he's happy shipping Java VM byte-code and
not Python VM byte-code, then he can use Jython to generate
byte-code for the Java VM instead of for the Python VM.
Personally I think it's rather deluded to think that one is any
more secure than the other.

--
Grant Edwards grante Yow! What UNIVERSE is this,
at please??
visi.com

Honestly, thank you for your opinions and suggestions. I know this
has been
discussed before on this forum, but after reading the discussions,
I'm still
unsure about question 1. This is a big step and I want to make sure,
if
possible, I don't run into any show stoppers after many man hours of
work.

I will put the sensitive stuff and the datbase in a C extension and I
think that solves question 2 for me.

Jun 4 '07 #9

This discussion thread is closed

Replies have been disabled for this discussion.