What’s The Best Programming Language To Learn In 2011?

It’s that time of year again. Programmers everywhere are wondering what skills will be most valuable in 2011 and what is the best programming language to put valuable time and effort into learning now.

There are many ways to look at the question but here’s a good analysis from Rob Diana incorporating Tiobe rankings, info from the Dataists, charts from indeed.com and SimplyHired and other sources like Stackoverflow, Google searches and GitHub projects. Hint: Lua, R, Clojure, Go, Erlang, Scala, Groovy, Scheme, ActionScript come out on top of this admittedly personal list.

We did a post around this time last year asking what the best programming languages to learn for 2010 would be; it’s interesting to compare the two lists.

HTML5 3D Examples

Check out this great gallery of websites featuring the 3D functionality of HTML5. If this one doesn’t make you laugh I don’t know what will. I have often linked to galleries in the past that feature websites created with Flash, CSS3, or any number of other technologies, because I think there’s value in observing what people are making on the cutting edge. Not only can web developers and graphic designers be inspired to go further in their own creative process, there’s a good chance that you’ll see something (especially when it comes to web programming) that you didn’t even imagine as possible beforehand. There’s no better recipe for inspiration than that, I think.

While we are on the subject of HTML5 here is the most interesting example of HTLM5 video I have yet seen.

Groovy Tutorial For Beginners

Here’s a lucid, fairly lengthy tutorial on Groovy, covering basic Groovy constructs with emphasis on comparisons with Java. The author admits that he won’t be getting too deeply into Groovy, that he is trying to give a more broad overview for people who are just starting to get familiar with Groovy code.  It covers topics such as declaring classes, using scripts, GroovyBeans, Annotations for AST transformations, and quite a few other subjects, with plenty of code snippets included.

If you’d like to get a little Groovy-er, check out what I found when I scoured the Internet for some quality Groovy tutorial sites.

HTML5 Video Demo

Sometimes the Internet shows you something that defies your tendency to think about things in terms of what’s familiar. I’m not talking about ESPN3.com.

In this case I’m talking about technology and art intersecting in new magic ways that involve you in a personalized experience via HTML5, unique to you. Choreographed windows, real-time compositing, etc., all the bells and bombshells of the latest open web technologies. I don’t even know where to start with this one.

Forget HTML5 vs Flash, load it in Chrome, sit down and don’t touch anything. Do you remember the address of the house where you grew up?

Using Visual Studio 2010 To Create A Silverlight Application

Dinesh at beyondrelational.com has a detailed post on creating a basic Silverlight application using Microsoft Visual Studio 2010. Microsoft has shown a huge commitment to Silverlight and though most developers will be well aware of it I think there is still a lot of value in pointing to basic tutorials for students or professionals who are not yet actually involved in programming applications with it. Redmond has an outstanding tool in Silverlight and if you would like to help yourself stay relevant in the business in the future you would do well to educate yourself on this part of the Microsoft Visual Studio 2010 suite.

Building iPhone Apps


You might know my friend Dave as one of the guys behind Bob’s Picklepops, but I know him as the old buddy who just can’t stop talking about his brand-new iPad. He’s sifting through the net for good tools to get the Picklepop e-book into the app store quickly and cheaply as both an iPhone app and an iPad app, and he pointed me to these two tools:

Interface is a very, very nice $9.99 mockup and prototyping tool for iPhone that runs on your iPhone. Check out the five-minute video that shows just how much you can do in five minutes with one hand, so to speak.

Yapper gives you a way to turn RSS feeds into not just App store-ready iPhone applications, but Android, Blackberry and iPad apps too. Write no code! WYSIWYG! The app is $99 but the customization options are pretty impressive. You can run an RSS feed from your site through their demo in just a few minutes and see just exactly what you’ll get.

C++ Framework

Popular C++ frameworks include Platinum, Reason, Evocosm, ACF and many others, and now there is Cinder, a free, community developed offering from The Barbarian Group. It’s cross-platform, including iPhone/iPad, and was designed with audio, graphics, video, image processing, computational geometry and networking in mind. I always enjoy posting pointers to new tools that are developed by a devoted community and that cost nothing to use;  I don’t know how much in need of another C++ framework the world is but again having more choice if you’re a C++ developer cannot be a bad thing. I’d love hearing feedback from readers in the comments regarding Cinder.

HTML5 Video Fun

Sean Christmann has been playing around with HTML5 video and canvas tags, specifically getting creative with the Canvas.drawImage() api call. Exploding video and 3D video–very cool!  I realize that in the last few months we’ve done quite a few posts on some of the HTML 5 brilliance that is popping up all over the web and I’d like to encourage any readers of Digital Media Minute to go ahead and send any pointers to HTML 5 excellence that they find, or especially examples of it that they create themselves. It is interesting how a new tool could breathe such life into the creative process and inspire people to go further than they perhaps are used to in their creative coding efforts.

Best 8 Groovy Tutorial List

Groovy is a dynamic programming language for the JVM that combines Java’s enterprise capabilities with productivity features like closures, builders, dynamic typing and meta-programming. It can either be interpreted or compiled and you can add new methods to classes dynamically at run time, with greater flexibility than standard Java offers. There seems to be an increasing interest in Groovy so I looked around for some quality Groovy tutorials, and here are a few that make the grade. You might want to bookmark this article, as I will actively maintain this list of tutorials, as I do with Digital Media Minute’s well-received ruby on rails tutorial listings.

  • The best place to start is codehaus.org, which has links to all things Groovy, including a very comprehensive set of Groovy tutorials. You’ll also find a download for the latest stable version, user guides developer and testing guides, cookbook examples of Groovy, and an advanced usage guide.

  • This Groovy tutorial by Lars Bogle is quite comprehensive, covering installation, your first project and some example usage. Groovy classes objects and methods, loops and datatypes are covered in the introductory chapters, then Vogel moves on to a section on Grails, Groovy classes in Java and using the language via the command line. This is one of the longer and more professional Groovy tutorials on the Internet at the moment.
  • Over at skill-guru.com you will find a series of task-specific Groovy and Grails tutorials, for instance on topics like Groovy closures, calling a stored procedure, and creating and running your first application in Grails.
  • Guillaume Laforge at the Springsource blog has an excellent long tutorial on building your first Groovy-powered Google app engine web application.
  • At IBM developerWorks, Scott Davis has written several Grails and Groovy tutorials in the form of modules on topics like meta-programming with closures, ExpandoMetaClass and categories, and building a Grails application.
  • NetBeans has a brief tutorial on getting started with Groovy in NetBeans IDE.
  • Chris Judd and Jim Shingler have a very lengthy slideshare presentation on Groovy and Grails taken from CodeMash 2009.
  • Here’s another Groovy tutorial from IBM’s developerWorks on exactly how you can incorporate the language into your Java programming.
  • Best Programming Language To Learn In 2010

    With a new year upon us, it’s a time to examine the big questions: what is the best place to buy lottery tickets? Should I buy a puppy? But seriously, the sands of tech are changing rapidly so everyone should be looking to expand their repertoire, as in ‘what programming language should I learn next?’

    H3rald.com has a great article on 10 programming languages worth checking out right now: Haskell, Erlang, Io, PLT Scheme, Clojure, Squeak, OCaml, Factor, Lua, and Scala. This is no halfhearted end-of-the-year “10 best” list, it’s a thoughtful and informed overview of the pros and cons of each language. The author is opinionated but frank, admitting that in the case of Haskell for instance, some of the more difficult concepts such as monads are still beyond his grasp. Very lively debate in the comments as you might expect from those wounded by the idea that their favorite esoteric languages would be left off.

    Each of these top programming languages has a “To get you started” set of links; this is definitely an article to refer back to over the holidays, assuming you get any time off. I know I always appreciate meta- commentary and this is extremely well done.

    Also, here’s something interesting: what about creating your own programming language?

    The article gets bonus points for using the word “didascalic”. Who knew? (Wow, that word damn near exploded my voice activated typing software…)

    Dad, Can you make a video game?

    My four year old son and I have a Saturday morning ritual where the two of us go our for a “special” breakfast at a local restaurant. While we are waiting for our food, Owen always draws a very exciting battle scene on the back of the paper placemat using the crayons provided by our server. This week’s battle scene was that of an army battle that involved a very large spaceship and a tank and some helicopters. Once he was done drawing, he asked “Dad, can we turn this into a video game?”. I answered that of course I could make a video game!

    So we went home and pulled out an old scanner, scanned his drawing, and went to work in Flash! The result, is a fun little game that I had fun making (and relearning a bit of trigonometry) and Owen had fun playing. I thought I’d share it as a small lesson in how to make a video game.

    The game is aptly titled “Army Battle“. To play the game, you try to blast the helicoters with a bullet from your tank. To move the tank use the up and down arrows. To rotate the tank, use the left and right arrows. To aim the turret, move your mouse pointer around the screen. To fire the cannon, click the left mouse button!


    Digg this…

    Convert MS Access To MySQL

    It continues to amaze me the number of times a client give us an Access database that needs to be converted to a web application. One of the tools I have found to work really well at making the conversion is Access To MySQL. It is a free utility that will help convert your Access databases to the open source mySQL. Hey, you never know when you’ll get a similar request for this and I suggest bookmarking this article just in case you do one day because this utility made it absolutely simple to do so. We’re talking minutes not hours!

    Introduction to the Selenium IDE

    Selenium is an automated web application testing utility that runs your tests directly in a web browser. Selenium uses JavaScript and Iframes to embed a test automation engine in your browser. The engine uses JavaScript that you can write by hand, but the makers of Selenium, OpenOQ.org, have also created an IDE extension for Firefox that make writing your tests much easier. If you would like to try out Selenium and the Selenium IDE, you should check out this tutorial (complete with screencasts) that will get you up and running in no time at all! The tagline here is “Selenium automates browsers”–that sounds pretty good doesn’t it?

    Top 10 Ajax Applications

    The blog at A Venture Forth is offering a list of the Top 10 Ajax Applications currently available on the net. For the most part his list is very complete, although I would suggest that he is missing the most impressive one which is Zimbra, an open-source collaboration server with an awesome AJAX based GUI.

    I have been doing a lot of Ajax development posts lately on Digital Media Minute and I’m hoping that I’m not tilting too far to one side as far as getting my readership information which there actually interested. Do drop me a line if you’d like to affect the direction that I’m going; I aim to be responsive.

    Example Design Project—The Band

    D. Keith Robinson is about to embark on a really cool project. Essentially he is going to create a website for a fictional band. The cool part is that he is going to prove that a band site can be cool while at the same time useable and he is going to completely document the process from start to end.  As we create all these technologies it’s really interesting to see how people integrate them with the commercial realm. You have to believe that in five or 10 years every band in the world will have a website of some kind in question is: how do we get there from here? Projects like this attempt to answer that exact question. I’ll be watching!