Programming for Architects 101
December 14, 2008 5:40 PM   Subscribe

Help me pick a scripting language/environment for an intro to programming course for architecture students.

I am starting a new course next fall aimed at teaching architecture students how to program. I need to decide which language to teach.
This will be aimed at people with little or no programming experience, but plenty of 3d modelling/rendering experience. They should know Autocad, Max, Sketchup and maybe Rhinoceros.
The idea is to teach them to use scripting to generate and analyze architectural form and problems, so I'll probably choose one of the embedded scripting environments within a CAD app.
The main focus should be on ease of learning and ability to create complex geometries. I don't intend to turn these people into hardcore, professional programmers, but rather give them a toolset they can apply to their careers as architects.
Any thoughts, experience or recommendations welcome.
posted by signal to Computers & Internet (11 answers total) 2 users marked this as a favorite
 
Use Ruby to create sketchup macros?
Ruby is a great programming language to learn; relatively easy, powerful, and multi-platform. I'm not an architect, so I'm coming at it from a "general purpose programming language that will be useful throughout a career" angle. Oh, just to be clear, because sometimes there's confusion; I'm talking about Ruby the programming language, not the Ruby on Rails web development framework.
posted by forforf at 6:41 PM on December 14, 2008


processing

http://www.processing.org/

scripted java for open gl
posted by geos at 6:43 PM on December 14, 2008


Ruby is actually pretty obtuse, IMO, and not a good start for non-programmers. I'd recommend Automator or AppleScript, maybe even Python.
posted by Blazecock Pileon at 6:50 PM on December 14, 2008


If they know 3D Studio Max, I'd suggest MAXscript or Python. Maybe you could do some Ruby with SketchUp, and some Python/ MAXscript with 3DS Max?
posted by fairytale of los angeles at 10:43 PM on December 14, 2008


Response by poster: fairytale of los angeles: I'm more than partial towards Python, but to use it with Max we'd have to go through COM, no? Seems a bit too much for first time learners.
posted by signal at 4:51 AM on December 15, 2008


I'm going to 2nd Processing. They use it at NYU's ITP (Interactive Telecommunications Program) school to pretty good effect. My brother recently graduated from there and he loved it. He had no programming background and was very quickly making visual doo-dads. He's since used it in a couple of real-work projects. From the Processing website:
Processing is an open source programming language and environment for people who want to program images, animation, and interactions. It is used by students, artists, designers, researchers, and hobbyists for learning, prototyping, and production. It is created to teach fundamentals of computer programming within a visual context and to serve as a software sketchbook and professional production tool. Processing is an alternative to proprietary software tools in the same domain.
Seems like a good fit to me.
posted by funkiwan at 7:59 AM on December 15, 2008


Blender has a Python scripting subsystem that is fairly popular.
posted by demiurge at 8:17 AM on December 15, 2008


Response by poster: Though I know and love processing, I don't think it's aimed at producing architectural 3d geometry, the kind that you can drop into a CAD environment and transform into actual working plans.
posted by signal at 8:32 AM on December 15, 2008


using python with max is still a bit tricky, but perhaps worth teaching how to setup.
posted by figTree at 4:06 PM on December 15, 2008


processing will most effectively teach the basics (the near-instant feedback is nice), but autolisp is the best way to create geometry in autocad. not familiar with any similar scripting language for MAX, though.
posted by Chris4d at 10:56 PM on December 15, 2008


btw if this is really about teaching architecture students how to program, I'd keep it very simple. Many designers are interested in novel ways of working (myself included) but there's already enough other stuff we have to learn to keep us occupied for a lifetime. Programming as a hobby or to augment the design process had better be quick, simple and intuitive, or it's useless. No architecture student anywhere wants to learn how to make python play with MAX. That's what programmers are for.
posted by Chris4d at 11:03 PM on December 15, 2008


« Older Can mold grow on food packed in oil?   |   Books/resources on running community groups Newer »
This thread is closed to new comments.