Snowtide Informatics Welcomes Ben Fry (of Processing fame) to Northampton

April 28th, 2009

Next Tuesday, the 5th of May @ 6:30PM, Snowtide Informatics and Atalasoft will be hosting Ben Fry, creator of the Processing programming language and environment and author of Visualizing Data from O’Reilly, at Snowtide’s offices in Northampton, MA.

(This hasn’t been a secret or anything (for good reason!), but I thought I’d put out an announcement post.)

Dr. Fry will be presenting “Computational Information Design” – a mix of his work in visualization and coding plus a quick introduction to the Processing language and environment.  Processing has had a huge impact on the field of data visualization, and Dr. Fry’s presentation will no doubt be enlightening for anyone who engages in data visualization at any level.

There will be refreshments.  There’s a Google Maps link on this page if you need directions; please note that the presentation will be held in the second-floor conference room, Suite 234.

Small afterthought: the three avid readers of my blog may recall that a similar event was held about a year ago, where we hosted Rich Hickey, creator of the Clojure language.  I think we (meaning Snowtide, Atalasoft, the Western Mass. Developer’s Group, et al.) have a pretty unique combination in this area of outrageously talented people with a collectively broad set of experience and specialties, and a relatively intimate environment where ideas or presentations can be fully fleshed out with lively feedback from everyone involved.  I think there’s some potential to build this foundation up into something very worthwhile; perhaps a regular flow of software wizards to give talks, show off their newest ideas, and recruit evangelists (zealots? ;-)).  Something to think about anyway…

Why MIT now uses python instead of scheme for its undergraduate CS program

March 24th, 2009

This week, I find myself lucky enough to be at the International Lisp Conference at MIT in Cambridge, MA.  I won’t get into why I’m here right now, for those of you who might be surprised.  The purpose of this post is simply to paraphrase what Gerald Jay Sussman, one of the original creators of Scheme, said yesterday in an a brief impromptu talk about why the computer science department at MIT had recently switched to using python in its undergraduate program.  This change is something that was widely panned when it was announced by many people all across the programming and computing world from various disciplines, so it seems worthwhile to try to document what Prof. Sussman said.

(The impromptu talk happened much after Monday’s formal talks and presentations, and I don’t think that anyone was recording Prof. Sussman’s remarks.  If anyone does have a recording, by all means, post it, and I’ll link to it here — and probably just drop my paraphrasing.)

This is all from memory, so I’ll just apologize ahead of time for any errors or misinterpretations I propagate. If anyone has any corrections, by all means, leave a comment (try to keep your debate reflex in check, though).  In a couple of places, I’ve added notes in italics.  Just to keep things simple and concise, the following is written in first-person perspective:

When we conceived of scheme in the 1970’s, programming was a very different exercise than it is now.  Then, what generaly happened was a programmer would think for a really long time, and then write just a little bit of code, and in practical terms, programming involved assembling many very small pieces into a larger whole that had aggregate (did he say ‘emergent’?) behaviour.  It was a much simpler time.

Critically, this is the world for which scheme was originally designed.  Building larger programs out of a group of very small, understandable pieces is what things like recursion and functional programming are built for.

The world isn’t like that anymore.  At some point along the way (he may have referred to the 1990’s specifically), the systems that were being built and the libraries and components that one had available to build systems were so large, that it was impossible for any one programmer to be aware of all of the individual pieces, never mind understand them.  For example, the engineer that designs a chip, which now have hundreds of pins generally doesn’t talk to the fellow who’s building a mobile phone user interface.

The fundamental difference is that programming today is all about doing science on the parts you have to work with.  That means looking at reams and reams of man pages and determining that POSIX does this thing, but Windows does this other thing, and patching together the disparate parts to make a usable whole.

Beyond that, the world is messier in general.  There’s massive amounts of data floating around, and the kinds of problems that we’re trying to solve are much sloppier, and the solutions a lot less discrete than they used to be.

Robotics is a primary example of the combination of these two factors.  Robots are magnificently complicated and messy, with physical parts in the physical world.  It doesn’t just move forward along the ground linearly and without interruption: the wheels will slip on the ground, the thing will get knocked over, etc.

This is a very different world, and we decided that we should adjust our curriculum to account for that.  So, a committee (here, Prof. Sussman peaked his hands over his head, which I interpreted to indicated pointy-headedness) got together and decided that python was the most appropriate choice for future undergraduate education.  Why did they choose python?  Who knows, it’s probably because python has a good standard library for interacting with the robot.

That is my best paraphrasing of Prof. Sussman’s remarks.  I spoke with him briefly earlier today, primarily to ask his permission for me to post this sort of first-person paraphrasing; he replied: “Sure, as long as you paraphrase me accurately.”  Hopefully I succeeded; I’ll mention again my solicitation for corrections in the comments.

As a short addendum, while I had Prof. Sussman’s ear, I asked him whether he thought that the shift in the nature of a typical programmer’s world minimizes the relevancy of the themes and principles embodied in scheme.  His response was an emphatic ‘no’; in the general case, those core ideas and principles that scheme and SICP have helped to spread for so many years are just as important as they ever were.  However, he did say that starting off with python makes an undergraduate’s initial experiences maximally productive in the current environment.  To that, I suggested that that dynamic makes it far easier to “hook” undergrads on “computer science” and programming, and retaining people’s interest and attracting people to the field(s) is a good thing in general; Prof. Sussman agreed with that tangential point.

Western Mass Developers Meet @ Snowtide!

March 13th, 2009

I just wanted to say ‘thank you’ to everyone who came to last night’s Western Mass. Developers’ meeting.  Further, many thanks to those who helped out in one way or the other  — especially Miles and Doug for running for the D’Angelos, Doug for bringing the ice and cooler, Joe and Lou and Greg and Brian and everyone else who helped to set up or tear down.  I think everyone pitched in, which made it all work out pretty smoothly, I think.

FYI, we collected $170 last night.  That covered all of our food expenses and then some — I think once I tally up everything, we’ll have a surplus of ~$40 (and we have a bunch of generic supplies that we can put to use in the future).  Thank you very much to everyone who pitched in in this way, too.  Hopefully we can keep that pot flowing.

Some highlights from the meeting, and random thoughts of mine, in no particular order:

  • Doug gave what sounded like a rousing talk about the PHP templating system that he conjured up.  It seemed like most of the group really enjoyed that.
  • I generally don’t touch PHP, so I hung back and talked about entrepreneurship and software business models with Lou, Maria, Michael, and….darnit, I can’t recall the name of the other gentleman that joined us.  Sorry, man, I can be bad with names at times.  Keep coming to the meetings, and I’ll straighten out, I promise.
  • In the second time slot, I instigated a discussion about the current state of rich client platforms, through the lens of some particular requirements that we have for current/future projects.  That turned out to be pretty entertaining and productive, with a big chunk of time dedicated to people being impressed by the surface features of Titanium/Appcelerator.  That may be a good topic for future blog posts if we end up really digging into it.
  • Just about everyone was down on Adobe Flex/AIR as being very unpleasant from an end-user perspective (widgets not behaving as one would expect, etc).  I unintentially sort ended up trashing on JavaFX — or more specifically, the current lack of an integration story between Swing and JavaFX, as well as the oddities of JavaFX script.  In the clear light of day, I feel like I should probably give it a closer look, simply because of our established JVM codebase.
  • There was widespread speculation that a “shadow group” got together at Panera, despite all of the chatter and announcements about the change in venue.  Maybe next time (if there’s a next time here @ Snowtide), someone could swing by Panera and gather up those who aren’t as plugged-in to the group’s chatter.
  • Gerard walked away with Managing Humans, graciously provided to us by Apress’ developer group book program.
  • Will and I ended up holding on to the Terracotta book (also from Apress), though we promise to pass it on to Miles when we’re done!

It seemed like everyone had a good time and that most were pretty happy with the results compared to the usual Panera experience, but I’m clearly biased.  One way or the other, shout out what you liked and didn’t like (either on the mailing list or in the comments below).

FWIW, I’m happy to have Snowtide continue hosting the group’s meetings if people enjoyed the result.  If there’s a next time, get the shared conference room, and see how that works out.

Again, thanks to everyone who came!

Venture capitalists are entertaining, but please don’t take them too seriously

March 5th, 2009

I often enjoy the Entrepreneurial Thought Leaders podcasts, which deliver talks from the Stanford Technology Ventures Program.  In particular, it is often useful to glean an idea or moral from the war stories told by some of the weathered entrepreneurs that the STVP invites to talk about their past or current companies.

Every now and then, though, a podcast lands in my iPod that involves a roundtable of venture capitalists.  VCs are often very dynamic, engaging people that are entertaining to listen to, but just as often, they say the most amazingly absurd things.  A recent roundtable podcast (entitled What is the Next Big Thing) really pegged the absurdity meter, though.

Addressing a gathering of Stanford students, alumni, and associates, three venture capitalists, Tony Perkins, Tim Draper, and Michael Moe discussed the recent economic conditions, with the bottom-line message that it is in “times like these”, when markets and economies look their bleakest, that the most successful and impactful businesses are often forged.  That’s an oldie but goodie — so far, so good.

Things go off the rails around the 13:20 mark, though.  One of the three speakers — I believe it was Tony Perkins, but these things are hard to be sure of in an ensemble podcast — relayed how Marc Andreessen (former founder of Netscape and now also a part-time investor) was talking with Charlie Rose about how the New York Times should just kill their paper version.  That’s no huge new idea, but that got Tony off on a slight tangent that led him straight into the weeds (bold emphasis mine):

A lot of the whole [dot-com] bubble period was based upon a vision of the Internet steamrolling the way people do business and creating what was then called the “New Economy”.  My theory right now is that all of those things we talked about that were going to happen, like the end of television, the end of newspapers, all that stuff that we poured a bunch of money in because we thought it was going to happen ten years ago is actually happening now.

So a lot of the destruction in the market, a lot of the jobs that are being destroyed, are jobs that are being steamrolled — a lot by the Internet — but increasingly by the “green tech” movement because entrepreneurs are looking at how we do everything, and they’re saying “how can I do that same thing in a way that is better for the environment?”.  That’s bringing the Silicon Valley mentality into the whole green space, which is super-exciting.

The reason I share your optimism is because we are the future.  Silicon Valley is the future; a lot of the jobs we’re seeing being destroyed are never going to come back, but it is our world that is causing the destruction, and therefore is going to be the one that creates the jobs.

Hey, I’m essentially a nobody, so maybe Tony’s really got the inside track, and I’m not seeing the forest for the trees.  But wow, the U.S. economy lost 598,000 jobs in January, including:

  • 22,000 cut from Caterpillar
  • 4,500 from Kodak
  • 19,800 cut from Pfizer
  • 5,000 cut from Microsoft (the first mass layoff in that company’s history)
  • 2,400 cut from EMC
  • 13,500 cut from Alcoa

Etc., etc.  Sorry Tony, these job losses aren’t due to Silicon Valley and VC-backed internet and green-tech companies owning the world and replacing Caterpillar’s earth movers and minimizing the need for Alcoa’s aluminum.  There are a lot of theories about why the economy is what it is of late (lending practices, creative derivative strategies, poor Federal Reserve policy, etc.), but honestly it never occurred to me that I’d come across anyone with the chutzpah to say that recent shrinkage (and reversal) of economic growth and the attendant job losses are due to internet and green-tech companies “steamrolling” the Old Economy1.

Even more crazy to me is the notion that Silicon Valley is going to be singularly responsible for reinvigorating the economy.  It certainly has a role to play, and has had tremendous impact in the past, but from where I sit, Silicon Valley has been far too busy over the past couple of years building Web 2.0 trinkets to be ready with any kind of game-saver anytime in the near future.  Thinking (and saying) otherwise is good marketing within that particular echo-chamber, but it likely sounds like simple self-aggrandizement anywhere else.  (Hopefully there’s a stealth-mode clean energy startup that will prove me wrong on this point.)

I don’t mean to pick on Tony here.  Lots of other VCs have said similar things — it’s just that in this case, the usual VC rhetoric happens to bump up pretty hard into real-world facts and real-world struggle.  Big-picture notions about how entrepreneurship and innovation are the keys to building a stronger economy and a better world are good, but watch out for the odd notions that are borne out of the VC bubble (which seems to have its effect upon almost everyone that steps inside for a time).

My general point is simply that VCs say the darnedest things, and especially as it’s become clear that venture capital isn’t at all required (or even desirable) in many situations, one needs to be careful about how much of the VC worldview one takes to heart.

Footnotes:

1Wow, typing “Old Economy” right there reminded me of back-in-the-day when Wired was raving on and on about the new economy and introduced The Wired Index consisting of 40 New Economy companies.  That’s classic entertainment.