HELP!...Google SketchUp needs a Python API

r rt8396 at gmail.com
Thu Nov 27 18:18:44 EST 2008


Hello fellow Python Advocates!
Help me promote Python to a larger audience.

An introduction to SketchUp:
====================
I don't know if you are familiar with "Google Sketchup". It is the
best 3d CAM program available.
If you have not checked it out and do modeling of any kind, or want to
learn modeling, you need to see it right away. SketchUp offers a
simple and intuitive interface for drawing 3D models. Very powerful,
and Very simple. Now before you say "Blender has a Python API", your
right, but Blender and SketchUp are like two sides of the "modeling
mountain". There are things you can do in 5 minutes with SketchUP that
would take hours with Blender, and vice versa. SketchUp is more
archtecural based.

Google provides both a FREE and PRO version of the application. Now,
although most free versions of a software are cut down so much that
they are little more than toys...this is not the case with
SketchUp!...You can do almost everything in the free version as in the
pro...including scripting! Unfortunatly though SketchUp currently uses
Ruby(sorry to use profanity) language for scripting on both the free
and pro versions. IMHO...and you will probably agree... programming
with Ruby is neither fun or efficient. Don't get me wrong i am not
knocking Ruby. But i have tried to learn Rudy and i all i get is a
headache...C in my opinion is much easier than Ruby(but this may just
be me). So basically SketchUp is intended for beginners as well as
pros. And inline with SketchUp's philosophy I believe Python will make
the application more intuitive and more fun. Creating less overhead to
learn the API and at the same time expose new people to the greatness
of Python!

This is the slogan i took from there website:
===============================
"We designed SketchUp's simplified toolset, guided drawing system and
clean look-and-feel to help you concentrate on two things: getting
your work done as efficiently as possible, and having fun while you're
doing it."

Which is 100% correct, but the sort-coming here is the API. I really
think it would be in Google interest to include Python as a scripting
language. And before you say..."scripting is not THAT important".... i
say wrong, without the scripting API more advanced "modeler" types
like myself would not be as interested in SketchUP.

Why Python? you ask. Well Python has more docs, tutorials, and info
than Ruby, Python has a MUCH clearer syntax, and Python is easy to
learn for n00bs...or anybody. And Python promotes a better coding
style than Ruby. I have looked over many Ruby scripts and they are
just a mess. Since Ruby does not enforce ellipsis for a method call,
parsing code with your eyes can be very frustrating. Also Ruby offers
too many ways to do one thing, alowing two scripts that do the exact
same thing to look completely different. Some of the things I like
more about python:

-I think classes are much easier to write and understand. Python
keywords are a no brainer! When i first studied python the keywords
stuck in my head right away! No need to go back to the docs to refresh
my memory.
-print instead of puts
-input instead of gets
-elif instead of elsif
-None instead of nil --WTH is nil anyway?
-list comprehensions: [x for x in range(100) if x % 2 == 0]
even a n00b can see what that is doing .
-The dict and list objects could not be easier to use. And the
similarity for accessing list indexes, string indexes, and dict could
not be easier to remember.

Also something i find completely frustrating about Ruby is the end
statement, Why in the world, do we need such things in a high level
language? High level languages are suppost to take the burden off the
developer and put it on the machine(where it belongs). Python uses
indentation instead of the "end" keyword to denote a block. Which has
the effect of creating a good coding style from day one, and also
makes for easy reading of source code, something very important to a
n00b (i know i am preaching to the choir here;)

Credit where credit is do:
==================
You know, Guidio van Rossum really nailed it when he created this
language. He took the best of everything he saw that was good and left
out everything he saw was bad (i think only one other entity has done
his before long ago...see Book of Genesis ;)

Now if we could get Python into SketchUp this would be a win for
SketchUp, AND for Python.
Python would get more exposure, and SketchUP would be easier to use,
sticking to there policy above. And when people have a choice between
Python and Ruby... you and I both know who will win that
competition ;-).

Now before you say..."don't tell us, tell the SketchUp DEV TEAM". I
have hinted at adding Python as a second scripting API, but what needs
to happen is to get a list together of people that use SketchUp or
people who want use SketchUp, or people who just think it is a damn
good idea and submit it to the DEV TEAM.

Look forward to hearing from you! I am open to any suggestions good or
bad.
Thanks



More information about the Python-list mailing list