December 31, 2009

Twitter Tag Cloud for #Code2009 Hashtag

Category: development — loren @ 10:12 am

Update: Just found this nice dynamic chart created by @casron.

There’s a trending topic for programmers on Twitter right now: #Code2009. The idea is that you tweet and list all of the languages and environments that you’ve worked in this year. Seems like a great, simple way to quickly reflect on your past year and plan for next year. (I also like @rjurney’s suggestion to review your Amazon purchases.)

But with all those people participating in the #code2009 fun, I quickly got the urge to analyze the data. I couldn’t find a quick way to throw a tag cloud together for a given twitter search, but I did find the Search Cloudlet Firefox plugin that did the trick. Here’s the results as of a few moments ago:

#Code2009 Tag Cloud

Shows up pretty much as expected, I guess! Javascript, of course, has become The World’s Most Popular Programming Language, according to Douglas Crockford. Ruby and Python continue to suck all the oxygen out of the room in terms of what the Cool Kids are using. SQL only makes sense, as most databases are still RDBMS, much to the chagrin of the NoSQL movement (of which I’m rapidly becoming affiliated.) Java’s got a strong showing, but where’s .NET and their “enteprisey” ilk? I guess their offices block Twitter traffic ::snicker::

This was just a quick-n-dirty exercise for fun, of course. I wouldn’t read too much into it, and I really wish the tag cloud would go much deeper as there are clearly many, many more languages that are being tweeted but not represented here. Still, it is interesting how social media is putting more data and potential metrics at our fingertips.

And this whole exercise begs the obvious question: What will your #Code2010 tweet look like a year from now?

February 6, 2009

Actionscript 3 Filter Performance

Category: development — loren @ 10:59 pm

I ran into performance issues while trying to use a filter on the DisplayList in ActionScript 3 this week. I wanted a nice, gradient dropshadow on a large UI component, but loading in a big, expensive Bitmap image to do the trick just didn’t seem appropriate.  So I decided to use the built-in GlowFilter class.

Then my framerate went to hell.

What I was doing wrong was adding the filter to a DisplayObject that had other interactive children: in my case, SimpleButtons.  SimpleButtons have over- and down-states, which apparently cause the GlowFilter to recalculate itself frequently while the mouse is over the buttons.

To illustrate, here’s the component:

flashplayer-pano-test-virtual-tour

See the subtle dropshadow around the curved surface? That’s our culprit!

The fix was to make a separate component with the filter applied to it, then add it as a child to the component, instead of applying the filter directly to the component itself.

The rule: Don’t apply BitmapFilters to objects with dynamic children!

(If you know more about what’s going on here, please leave comments. This is mostly educated guesswork on my part about what’s happening and Adobe seems to have a problem with documenting all of the strange quirks of their platform.)

October 1, 2008

From Startup to Free Agent

Category: development, real life, startup culture — loren @ 9:00 pm

We closed the doors to the Lab this week.  Looking at the emptied space was pretty sad, but we have nothing but fond memories of the place.  So many great people and projects graced our makeshift office during its brief existence this year, and I’m grateful for everyone’s support.

We simply ran out of time as a company!  As a bootstrapping startup, you’re always in a race against the clock.  The modest revenue streams we’ve created over the past year and a half just aren’t enough to sustain us, so it’s time to try something new.  Snowcap Labs will not be taking on new work, and each of us is exploring our own options for what to do next.

That said, I don’t exactly want to go fly a cubicle for 60 hours a week, now.  So I’m evaluating my options (and there are a lot of really great projects to get involved with in Atlanta right now), but ideally I will find something that I’m excited to work on and that can offset my personal cash flow needs.

If you’d like to discuss your cool project with me, or you just want to shoot the breeze, get ahold of me (via Twitter or just leave a comment) soon and we’ll schedule a lunch or coffee (or even drinks!)

Emotional as all of this is, I see this as a good thing.  There are no hard feelings, we’ll each get residual checks going forward, and I’ve still got our (wicked!) web video recording software at my disposal.  I’m very excited about being Atlanta’s newest entrepreneurial “free agent”, and you can bet I’m already thinking about how to get into a new coworking situation!

May 26, 2008

Ruby in the Enterprise

Category: development — loren @ 6:44 pm

Joel Spolsky (of Joel on Software) and Jeff Atwood (of Coding Horror) have created an excellent podcast for programmers called StackOverflow.  Listeners can submit questions by emailing MP3s, so i promptly sat down and recorded one. But i think it’s silly to just send it into the ether and wait for someone else’s users to one day get a hold of it and begin discussing it, when i’ve got a perfectly good community right here! (all 3 of you…)

So give a listen and say something productive, you heathens:

Here’s the transcript for lazy listeners, Google spiders, and the Cubicly Challenged:

====================================

Hey Jeff and Joel, great podcast.

My name is Loren Norman, and i’m a web entrepreneur and Ruby on Rails programmer in Atlanta, GA.

Joel, for your RailsConf talk, i think you should address the subject of Ruby in the enterprise.  There’s a bit of a holy war going on for these fundamental Rubyists who shout “Ruby is so great, everyone should use it.”  Of course, no language or technology can inherently belong, or not belong, in the enterprise, but the fact is it’s just not instantly practical for a corporation with millions of dollars of infrastructure in Java or .NET to suddenly inject Ruby into the mess.

So i think the real question is more along the lines of “How should a new language or technology go about entering the enterprise?”, is there a responsible path? perhaps it’s a task-by-task judgment?  or maybe there ARE there some things that should inherently be true of a language before it should be considered?

So what are your thoughts, guys?

====================================

And that question goes to my readers as well.  To the comments!

May 25, 2008

Podcast 2: More Cloud Computing and Live Video Talk

Category: development, podcasting — loren @ 8:48 pm

(Note: Marty’s coverage of this podcast here.)

Another podcast! Alas, the program remains nameless, and there has been no meaningful feedback. We forged ahead nonetheless, and now we’ve created even more discussion around cloud computing and live video broadcast to the web. Give a listen:

Topics:

  • Loren is considering alternatives to Justin.tv for his live video needs. Does anyone know anything about Stickam or Ustream?
  • Google FriendConnect: Webmaster’s Godsend, or Evil Empire Play? Facebook certainly doesn’t like it…
  • Loren broadcast his entire day yesterday, including home-brewing some beer, playing some old-school video games, a health round of drinking games, and then some chick shenanigans
  • Loren also likes to embed a Backnoise channel under his live videos for easy chat support/interaction
  • Marty spent a long time trying to get Canadian sports with web hackery, and then discovered via a local blog, The Burgh Report, that Justin.tv is full of people (illegally) rebroadcasting pretty much all sports
  • Marty discusses at length his experiences with cloud technologies, particularly Google AppEngine and how badly they have hobbled the excellent Django web development framework for Python
  • Lastly, the guys discussed the new GPS, connected, crowd-sourced mapping device, the Dash, and how cool it is that it was built on the open cell network framework, OpenMoko

Now gimme some comments!