Expand Your Development Skills With Creative Tech Projects
Even if you’re an experienced Web developer, your next project doesn’t have to be a website. Sometimes doing something outside of the usual Web developer’s box is more fun and can even be educational. We’ll try here to give you some inspiration on what to do on your next rainy day.
You can learn a lot by doing something other than building or designing a website. And if you stick with techniques that you can learn in a couple hours, you won’t burden yourself either.
Think Work Outside The Box
As a Web developer, you have to constantly summon creativity and empathize with users. If you have a natural flare for design and usability, that’s great. But our work can sometimes become inflexible and boring. We can lose our enthusiasm to try new things. To avoid this trap, we can strive to gain new insight by putting our common tools aside and exploring projects beyond the Web developer’s usual environment.
Experimenting with new ways of creating applications and interfaces and even building a hardware controller will lend fresh insight into our own field and make us see the techniques we use day after day with new eyes.
It is also a good way to become more sensitive to usability issues. If you work all day at the computer, you probably cannot understand how a technically inexperienced 85-year-old person feels when they visit your website for the first time. You can’t because your experience with using a keyboard and mouse is so natural.
The best way to get that feeling back — to feel what it’s like to have to click and play around with an interface to figure out how to use it — is to build your own hardware controller or a new kind of interface. Being the one who has to fix these fundamental problems will make you much better at identifying what elements make for a comfortable interface.
Your future Web development will surely benefit from the insights and innovation you bring back. So get out and play around with other tech stuff and recharge your batteries! We’ve put together some suggestions here for you. You may already have heard of some of them and perhaps even planned on taking action on them. If so, hopefully this article will motivate you to actually get on it! If you know of any interesting tools not listed below, please let us know in the comments.
Write Your Own Desktop Application
Doesn’t sound very exciting, but every developer should create a desktop application once in their life… even if the only lesson they learn is that they should stick to developing websites.
If you are not familiar with any programming languages for desktop applications and are not interested in learning one, you could still create a local application using one of the following tools.
Adobe AIR
Adobe Integrated Runtime enables you to write desktop applications using HTML, CSS, JavaScript or Flash. Popular applications such as Seesmic and Tweetdeck use it. Combined with frameworks like ExtJS (for JavaScript) and Flex (for Flash), AIR lets you create user interfaces that come pretty close to real desktop apps.
See this round-up of resources for Adobe AIR that appeared on Smashing Magazine.
Shoooes
If you are a Ruby-ist or want to become one, Shoooes (currently offline) might interest you. It’s an easy-to-learn cross-platform toolkit for writing small apps in Ruby. If you want to learn the joy of programming, this could be a good entry point.
Extend Firefox
You don’t have to set up a standalone application, though. If you use Firefox, why not play around with Greasemonkey, Ubiquity or Jetpack?
You can extend your favorite Web pages with AJAX functionality or even create your own toolbar with useful plug-ins. Hint: if you create a great Greasemonkey script, you can convert it to a Firefox extension on the fly.
Create Interfaces For Your Favorite Gadget
iPhone
The Safari browser on the iPhone and iPod Touch offers some JavaScript events that let you make use of the browser’s multi-touch interface. Combined with CSS Transforms, you can create online applications tailored to iPhone users, based mainly on your knowledge of HTML, CSS and JavaScript.
Two good starting points are this demo of multi-touch events and this example showing a more detailed usage case. With the possibility of GPS positioning and storing offline content, the potential for amazing iPhone-specific Web applications is huge. By the way, if you want to create an iPhone app, have a look at Phonegap: it’s like Adobe AIR for mobile phones.
Nintendo Wii
The Opera-powered Internet channel of the Wii console offers a supplementary JavaScript object that holds information such as the position of the pointer and pressed buttons for up to four connected WiiMotes. If you want to impress your non-techie friends by bringing your own multi-player Wii game to the next party, try this out.
There are also some code examples and a demo application.
Nabaztag
The Nabaztag bunny is surely one of the best Internet-related gadgets around. Even though it’s a little unusual, no list of customizable gadgets would be complete without it. Nabaztag owners adore the little bunny so much, so it is common for them to tailor special gear and costumes for it.
In case you don’t want to go this far, there’s also a Web-based API that you can use as a remote control for your little friend. Make Nabaztag speak and move with any programming language that can send an HTTP request.
Play With Hardware
WiiMote
The WiiMote is an impressive piece of hardware. It’s able to track infrared light and has acceleration sensors for all three axes. Best of all, you can connect it to your computer via Bluetooth. There are libraries in many programming languages such as Java (here and here) and even Flash that let you use the WiiMote as a controller or receiver so that you can create features like multi-touch, gesture recognition and head tracking.
Look on YouTube to see what’s possible.
Arduino
If you want to create your own hardware, check out the Arduino boards. Whether you want to build a touch-screen device, a robot or an intelligent sweater, a lot of extensions are around that make it easy for you to assemble a hardware device that fits your needs.
Of course, a lot of other solutions are around, including USB experimental kits (available at any electronics dealer). But the easy extensibility of Arduino’s components make for a relatively easy yet powerful start in hardware programming.
Lego Mindstorms
Though made by the same company, Mindstorms does not have much in common with those miniature colored bricks you played with as a kid. Mindstorms is a collection of plug-and-play components, such as servo motors and light sensors, that you can use to build a robot or other device easily. The interesting part is that you can define the robot’s behavior using a visual interface, so you don’t have to do any coding at all if you don’t want to.
Discover New Ways To Create And Visualize
Visualizing data and creating virtual and augmented realities is a big challenge and also a chance to create something very personal and outstanding. Processing is a toolkit for creating visualizations in a simplified Java language. It is popular because it supports access to external devices via USB and Bluetooth.
The combination of Papervision3D and FLARToolKit might interest Flash developers. They enable you to create augmented realities in Flash using a Web cam and printed barcode. Even developers who usually don’t work in Flash should check them out. These two libraries really make Flash worth another look.
Other notable projects are the vvvv toolkit for visual programming and OSCulator for sound effects.
Combine Everything!
Keep in mind that these are not necessarily standalone suggestions. You’ll surely get more innovative ideas if you combine this hardware and software with each other or with tools you normally use. A lot of blogs out there may provide further inspiration, including Hacked Gadgets.
(al)







LaDonna
August 23rd, 2009 12:32 amvery nice way to grow your skills . .. great post
anjum nawab
August 23rd, 2009 12:38 amvery good sure i will grow more with those resources thanks guys SM rocks :)
snnaqvi
August 23rd, 2009 12:38 amReally good
superdit
August 23rd, 2009 12:41 amyups very good advice, now i’m trying to develop mobile app after two year building web app
Ben Jacob
August 23rd, 2009 12:42 amsounds like an interesting idea. !
Thanks for sharing
Nerdster Magazine
August 23rd, 2009 12:42 amvery nice post
twe4ked
August 23rd, 2009 1:17 amShooes has disappeared with _why :-(
Ravi Lautan
August 23rd, 2009 1:53 amVery nice and exceptionally fun post! These are great ways to tingle designers up with :)
Aaron
August 23rd, 2009 2:01 amNice to see Arduino get a mention. It’s easy to learn and limitless in possibility.
furas
August 23rd, 2009 2:23 ammore informations like this !!
Gwen McCauley
August 23rd, 2009 4:26 amNot being at all technical, I think these are great suggestions for helping stimulate creativity. However, it seems to me that you remain in a bigger ‘technical’ box with your suggestions. Now I know I’m biased, but how about taking a painting/creativity workshop? How about reading a book that stretches the mind (just finished Outliers by Malcolm Gladwell; brings a whole new perspective to well-known topics)? How about following weird people on Twitter (I’m discovering a whole new world that is profoundly impacting my thinking by following Tweeps outside my ‘comfort zone’).
I am a Life Transition Coach with a marketing bent who took a social media crash course a while back. I’ve invested myself in playing with social media and have found it that is has blown my mind in terms of possibility & potential. I know that I will become a much more creative coach, retreat & workshop facilitator as a result. So if a people person can stimulate creativity by looking towards technology differently, why can’t techies get stimulated by exploring the non-technical world a bit more??
Anyone wanna come explore the world with me?
Troy DeRego
August 23rd, 2009 6:03 amGreat suggestions. I feel inspired just reading. Man, if I could have programed my Legos when I was a kid I would rule the world right now.
j
August 23rd, 2009 6:41 amreally cool stuff here
Chip Tinder
August 23rd, 2009 8:02 amAlong the lines of the nabaztag, there’s the chumby.. I’m considering one, it seems like a neat idea.
Chris
August 23rd, 2009 8:13 amOpera has long since removed the documentation for the Wii Remote API but I happen to have an archive of it (link), complete with the live examples. Enjoy!
Tom
August 23rd, 2009 10:01 amWould have been a good articel… – UNTIL you came up with the nabaztag rubbish. That´s what it was all about, the article, heh?
Chris
August 23rd, 2009 10:16 am@Chip, @Chris: Thanks for the links!
@Tom: I don’t own a Nabaztag myself, but I like the idea and the easy way to customize its behaviour. Tastes differ ;)
Morten Zetlitz
August 23rd, 2009 11:47 amThanks for this really great article.
I personally am going to quote the “Work outside the box” from now on.
Michael Bach
August 23rd, 2009 11:50 amPretty cool stuff. If you’re on Windows, Microsoft has some fun projects you can do on there coding for fun site – http://blogs.msdn.com/coding4fun/
Additionally, you can also get Robotics Studio for doing fun stuff with Lego. http://msdn.microsoft.com/en-us/robotics/aa731520.aspx
sad
August 23rd, 2009 6:13 pmsweeet!
Leomax
August 23rd, 2009 7:26 pmBrillant as always :)
Andrew Wooldridge
August 23rd, 2009 8:19 pmNot sure if my other post got through :) You forgot about an open source alternative to AIR called Titanium : http://www.appcelerator.com/
It allows you to make desktop apps as well as iphone and android apps.
Amanda
August 23rd, 2009 9:24 pmOMG what is this Nabatztag thing? I’ve never heard of it! It’s so cute, and I love all of the functions! I want one now! lol
gaurav
August 23rd, 2009 10:05 pmhave to do it do it do it just do it
Joel
August 24th, 2009 12:06 amCool! I never knew about the Opera / Wii thing, will definitely have to put together a little game!
Guillaume Pelletier
August 24th, 2009 6:36 am[comment removed by author]
Michiel
August 24th, 2009 7:38 am@Guillaume: Pelletier Nabaztag = dead.
janessa
August 24th, 2009 11:21 ami looked at Nabaztag and loved it!! But then I stumbled upon a few disturbing articles:
1) http://www.engadget.com/2009/08/11/nabaztag-cant-make-rfid-cool-has-to-file-for-bankruptcy/
have they really just filed for bankruptcy??
2) http://www.pcauthority.com.au/Review/81506,nabaztag-tag.aspx
evidence of bad server load handling and poor customer service??
I hope this isn’t true as I’m seriously in love with these little guys…
kajdo
August 24th, 2009 11:27 amvery nice post! … great post actually
Bryant
August 24th, 2009 2:15 pmPhigets are another great thing to play with, kinda like Arduino but with less hardware and more creating software to work with the various devices they have… bad description…just check the link
http://www.phidgets.com/
alfred devanesan Samuel
August 24th, 2009 10:28 pmgreat post dude. well organized.
Lee Englestone
August 25th, 2009 12:13 amWow. Quite a few ideas i’d not previouslty thought of. Well done.
My advice would be If you don’t want to be creative.. don’t be a developer.
– Lee
scaffas
August 25th, 2009 12:57 amExcellent post…Now you made me thinking ;)
Thank you.
Snympi
August 26th, 2009 6:09 amOutside of the box is the place to be :)
Great post, thanks.
lokers
August 27th, 2009 4:48 amhehe, I got one nabaztag:tag, they’re quite cool but because lack of a time I didn’t have a chance to write any app for this device …and that was the actual reason I bought it ;/
cellphonelookup
August 30th, 2009 5:53 pmHow To Find The Owner Of A Phone Number ?
If you’re getting prank calls or if you find a number on you caller identification that you don’t recognize, you probably want to find out who is behind that number. The good news is that finding the owner of a phone number is easier than you might think with Reverse Phone Detective!
As long as you have the area code and the seven digit number, you should be able to locate any number’s owner, if you know cell phone lookup reviews viste this web: cell phone lookups reviews
Cell Phone Lookup – Search Free – Reverse lookup any phone or cell number & get a name, address & more.
AlaskaWebDesigner
August 30th, 2009 11:46 pmSpoken by a true Web designer. We have been trying to get our Web developers think more like designers.
Custom Alaska Web Designs
Alice
September 2nd, 2009 5:01 amGood article but I would love to see more in depth articles from Smashing Magazine on some of these, especially custom iPhone apps and Wii games. Or maybe a a detailed tutorial featuring a mash-up of all of these!
eric fickes
October 30th, 2009 11:04 amGreat post, thanks for the list! I must get that nutty bunny
luciyahelan
July 6th, 2010 7:54 pmGood article but I would love to see more in depth articles from Smashing Magazine on some of these, especially custom iPhone apps and Wii games. Or maybe a a detailed tutorial featuring a mash-up of all of these!Phigets are another great thing to play with, kinda like Arduino but with less hardware and more creating software to work with the various devices they have… bad description…just check the link.
==============================================================
Technology Details