471,334 Members | 1,398 Online
Bytes | Software Development & Data Engineering Community
Post +

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 471,334 software developers and data experts.

python for EE CAD program

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
8 1277
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
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
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
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
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
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
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
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.

Similar topics

699 posts views Thread by mike420 | last post: by
114 posts views Thread by Maurice LING | last post: by
68 posts views Thread by Lad | last post: by
4 posts views Thread by Julian | last post: by
12 posts views Thread by adamurbas | last post: by
34 posts views Thread by Anthony Irwin | last post: by
1 post views Thread by Jim Langston | last post: by
8 posts views Thread by karthikbalaguru | last post: by
1 post views Thread by =?ISO-8859-1?Q?Andr=E9?= | last post: by
reply views Thread by rosydwin | last post: by

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.