Subject line says it all. What's next on your list of things to tackle and get to grips with? Got a language you want to learn? Want to grok dynamic programming? Think it's about time you understood type theory?

What's next? And why?

+23  A: 

For me it is a better understanding of LINQ, jQuery and MVC

Mitchel Sellers
+41  A: 

Currently at top of the list: jQuery

Milan Babuškov
+14  A: 

I really want to do something with C#, if only I had enough time.

+9  A: 

For me it's SOA

+8  A: 
  • jQuery
  • MVC
  • F#
+42  A: 

More Python and Django.

Hah i read that as Monty Python
Ólafur Waage
+1  A: 
  • WCF, WPF and linq
  • jquery
  • other neato .net 3.5 features
Joe Basirico
Wow. Our names are very similar. :-)
Jose Basilio
+3  A:


Lance Roberts
I feel sorry for you.
Yeh, I wish they would have kept VB6 going, but thems the breaks.
Lance Roberts
I hope it is only to maintain and migrate it to C#
Schalk Versteeg
Don't you meen then after that ....
Ian Ringrose
+53  A: 

JQuery, Asp.Net MVC, F#

Isn't it funny that we both gave the same answer at pretty much the same time yet yours has 32 upvotes and is marked as the answer while mine has 3?
yep. maybe its because i provided links :)
I'll keep that in mind for my next post :)
F# on wikibooks:
+18  A: 

Ruby on Rails. Because it's about as far as I could get from my current skill set without becoming a Haskell programmer or something.


WPF and WTL (basically both ends of the desktop UI dev spectrum)

+29  A: 

Cocoa, Objective C

+1  A: 

Smalltalk, Objective-C and SOA Best Pratice. Ok I know , I'm a bit spreaded out

Julien Grenier
+30  A: 

Functional Programming, mainly Haskell.

I'm armed with GNU Emacs (with Haskell Mode), the online version of Real World Haskell and the GHC and I'm ready to get stuck in.

Emacs is annoying when it comes to Haskell, real world haskell is the best book IMO, your on a good track, good luck with it.
Haskell will reward you for years to come. I can't believe it's been over 3.5 years for me; there is still tons to learn but I'm much more "fluent" and comfortable than when I first heard of scary things like Monads.
Jared Updike
I really got into Haskell after posting on Reddit and visiting the #haskell channel on freenode, where one of the authors of the book hangs out. It's pretty cool to be able to talk to someone who has written a book you're about to learn from and gain some advice on how to learn the language.
I always wanted to learn a functional programming language, and Haskell seems like a good one. I already know the basics, but I would like to learn it well enough to be able to apply it in "real-world" situations.
Anders Sandvig
+2  A: 

Haskell More F# PHP Javascript More D XML.

+14  A: 

Lisp and Haskell. Lisp macros seem to be mind-blowingly powerful.

Andrew Top
+4  A: 

Javascript for fun.

Obscure bug at work is pushing me to learn strace, tcpdump, signals, poll, and such like.

Don Wakefield

Silverlight 2 and JavaFX

Silverlight 4 was just demoed at PDC, looks like quite a good time to jump on board.
Kyle B.

Microsoft ASP.NET

Daniel Silveira
+6  A: 

Much more EMACS...

I can't really rely on TextMate anymore. It's awesome, but it's only for Mac.

Vicent Marti
If you're in win32, be sure to check out the `e` editor: :)
Camilo Díaz
Already checked it... IMHO it cannot really compete with TextMate right now. :/Wish there was as an open source alternative to both of them.
Vicent Marti
+7  A: 

For me, Lua or Erlang will be next.

+1  A: 

Ruby and C++ because I haven't been there yet. I've been doing .NET (C# and VB.NET) and JavaScript development for a few years now, and it's about time I learn some development languages/platforms that aren't Microsoft based. FYI, before .NET I was a VB6 and Classic ASP developer.

Chris Pietschmann
+1  A: 

N2. It's an open source, ASP.NET MVC enabled CMS.

+3  A: 

C++ and the STL. My knowledge in the area is limited to the academic stuff. As someone in the C# / .NET side of things, it'd kind of nice not being hand-held through non-trivial tasks. :)

Gabriel Isenberg
  1. Creating a LabVIEW driver.
  2. How to develop a business plan and sell it to Venture capital.
  3. Learning the tools for embedded platform development.
+7  A: 

Lisp. I took a class in college, and I've been meaning to get back to it ever since. I finally have a project or two on the horizon that use lisp as a scripting language, so I've finally got the excuse.

Look at Clojure. It works on the JVM so you can use every Java library out there with your code.
Chad Okere
+2  A: 

DirectX 10.1 and 11 when it comes out. New rendering pipeline looks awesome.


I'd like to do more with Python perhaps some dabbling in Django as well.

Michael McCarty

Ruby on Rails, or Silverlight. Coin flip as soon as I finish Head First C#.

John Dunagan
+1  A: 

Better understanding of OO programming. C++. Security. Struts/Hibernate/Spring.

+4  A: 

I can spell SQL - I need to learn database technology. My team uses it every day and I don't grok it near enough.


WPF and jQuery in ASP.NET!

Edit ~ I forgot Adobe Air, I've been meaning to get to this for a while.

Saif Khan

Which language - Why?

Python - used at work, powerful, expressive, GoogleAppEngine

Groovy - full Java API, some momentum behind it

Objective-C - iPhone Apps

C#/.NET - Want to know what all the fuss is about, Visual Studio Express is free, Used at work.

+37  A: 

Better communication.

Ashley Davis
This works both personally and professionally.
JB King

My perennial "wish I knew better" was Lisp. But I've almost never had a project where Lisp would have made it sufficiently easier & less time consuming than, say, C++, to justify me learning it.

F# sounds moderately interesting and in the same category as Lisp, but with the added hassle of .NET libraries.

Other than that, I'm exploring data mining as a hobby, and I am reading about professional level software engineering to prepare my grad student-y self for the business world.

Paul Nathan
I'm not a .NET fan, but I'd say .NET libraries are not a hassle in this case. F# with decent libraries vs. LISP with not much library support... Hmmm... :-)
Brian Knoblauch
This is the third time I've mentioned this, but Clojure is a JVM lisp that works with all the java libraries.
Chad Okere

I'm definitely going to learn more about JQuery + Grails and maybe some Django if I have time to spare :)

+31  A: 

Unit Testing, because I think I should. I really need to stop putting this off.

Also as chakrit mentioned, more Django, because I've enjoyed the little I have done.

More about UTF-8, because I find it interesting.

+7  A: 

I just started reading The Art of Multiprocessor Programming by Herlihy and Shavit. Heavy duty concurrent programming, updated for modern hardware.

+4  A: 

How to use the advanced features of c#

How to use DirectX to speed up some image processing


SQL stuff, Django, PHP - Just web programming in general.

Oh, and ++ to whoever said multithread/process programming.

Ruby and Linux



matt b

In to learn in no order:


  • more ruby
  • rails
  • more css
  • regex
  • mastering c
  • c++(ya, I know but it's needed for what I want to do)
  • lisp
  • obc-c/cocoa
  • maybe javascript/jquery


  • compilers
  • os design
  • hardware design
  • embedded systems
  • functional programming
  • ai

things to forget

php and java

Mark Lubin
+7  A: 

Get a vacation long enough to get an REALLY interesting book

  • Handbook of bio Inspired algorithms
  • Handbook of Brain Theory and Neural Networks (only got through the first trail so far)
  • Eclipse RCP to try the above and actually build something out of it
  • Adroid API for the ability to program my way out of procrastination.

If only I found the time now...

just one last game, gotta beat the highscore


WCF because it's the wave of the future...

+3  A: 

LINQ in C# 3.0 at work. At home I'm trying to find time to learn me some Ruby on Rails. You know do some web development and such. Always wanted to learn Javascript too.

+3  A: 

iPhone Programming !

  • .net 3.5 and all that includes
  • DSDM

Marketing, Communications (speaking at conferences), stockmarket analysis, and Erlang :)


I'm afraid Windows Presentation Foundation is the next step for me. I say "afraid" because what I need to do with it is an extremely non-trivial reimplementation of the software I've been developing over the last 3 years. I know enough about WPF at this point to know how much I have to learn before I can do this with a reasonable expectation of success.

Robert Rossney


+2  A: 

I started learning Haskell and so far it's real fun. I must admit it takes some time to get used to it (20 years of imperative coding getting in the way) but even the most trivial programs are pretty rewarding when they compile the first time (and run as expected!). I pretty much feel like the young me learning his first programming language again... The other big topic for me at the moment is design, i think there's a lot to learn for many programmers.

+5  A: 

Learning how to lead. I already know how and why to write unit tests, but getting the rest of my team on board is a totally different matter. Same for decent comments, documentation, etc. etc.

+1  A: 

Haskell, Smalltalk, ML, Nemerle, Boo... pretty much a whole bunch of interesting languages.


RIA frameworks like Flex and JavaFX


My current objective is learn how to manage software requirements (functional and non-functional) as well as estimate development time better.

After all these years of working I'm still getting 200% more time than originally estimated to get things done and I'm still accepting confusing (and even paradoxal) software requirements - and my team is suffering with it.

I kept wondering if there was a language / concept / anything out there which can be used as a silver bullet to my problem but instead of going to code books I have to resort to project management books.


python,django and JQuery


Unit testing.

I need to get a good grasp of the concepts to be able to implement it in my current working enviromnent.

Ola Eldøy

functional programming and related math

  • Better team programming methods, especially around agile/scrum. I'm stuck in waterfall, and I hate it.
  • A deeper understanding of ExtJS, especially when using it at scale.
  • Reading up on how to implement crowdsourcing applications. I'm currently reading Programming Collective Intelligence.
Joeri Sebrechts
+3  A: 

People skills.

The single most important determinant of future income is the incomes of the five people you associate most with.

Also, dealing with people is fun.


Grails and Groovy


Recursion (again)

Richard Nagle
  • FreeBSD - for fun
  • Management Techniques - for work
Andrew Cox

Jquery, Python, Unit Testing, and .net 3.5 related things (and some 2.0 related things, actually). As for order, Python I'm trying to pick up on my own. Jquery I want to use at work; unit testing is about becoming a better developer and the .net stuff is because we're a .net house and we might be migrating forward in the near future and I want to stay up on things.

+7  A: 

Functional programming, specifically F#. F# is the first one I've played around with that has enough library support (via .NET) to make it worth my effort.

Brian Knoblauch

jQuery and Python for me.

  • Java Messaging Service (JMS)
  • Ajax
  • Algorithm Theory (For fun :D )
Ryan Thames
+11  A: 

I just started reading "Code Complete" after reading many positive reviews on SO.

Cory House
Have a look at the Pragmatic Programmer as well

Sadly, it has to be Sharepoint. We are doing an implementation of that at our shop. I would much rather spend the time on LINQ-to-SQL.


Closures and Erlang


I have read a lot recently about the how C++ and C# are not true OO and are more class oriented (or template based) languages. As a VB programmer by trade (and more recently a C# developer) I have argued that OO is not just about the language and more about the approach. I now want to understand the "true" OO nature of languages such as Ruby, and arguably aspects of Javascript such as prototyping.

Jon Simpson

More OO JavaScript, Struts 2.0, Groovy, ASP.NET MVC, F#

Buu Nguyen

Programming wise: ASP.Net MVC and WCF. Operating System: Linux, just to play around with a distro and see how well it runs for me. General technology: Virtualization.

This is ignoring the things currently in my doing list like Sitecore.

JB King
+1  A: 

A more solid knowledge of the most widely used design patterns.

Federico Ramponi
+1  A: 

More Design Patterns and after that Architectural Patterns.

I hope this is the right order to do it...


MVC JQuery and F#

like many others it seems :)

+6  A: 

jQuery, ASP.NET MVC, and Cocoa/Objective-C

Robert S.

My next big thing is jQuery. I really jazzed the Microsoft is going to start including this technology in Visual Studio Scott Gu's Blog about jQuery and Microsoft. Obviously it's important.

With jQuery I'm learning how to build something big with MVC. I'm beyond the examples and need the tough problem to help advance my knowledge.

Mike Daniels
+3  A: 

Lisp and assembly (any arch), but not necessarily in that order.

Lisp, mainly because of all of the things I've heard about it (being a "powerful" language per Paul Graham, being a "must-learn" language per ESR, etc.)

Assembly, because I believe it will give me a new perspective on programming. Not to mention allowing me to do programming that is "closer to the hardware" than I can with C.

Bill B
I always review the disassembly of any functions that pop above 5% on the profile. I found my lower_case(std::string) made a _M_leak_harder (gnu libstdc++) for every string operator[]. Using iterators ran much faster.
Zan Lynx
Exactly. I'm sure there are tons of cases where knowing assembly would be beneficial. Optimization is certainly one of those cases (as you obviously know).
Bill B
Look at Clojure, it's a Java virtual machine based Lisp-like language. But you get to use all the java libraries out there, which is a lot. That said, Paul Grahm is kind of dumb and ESR is an idiot.
Chad Okere

AJAX (just any JavaScript in general) and C# for me.


Haxe. Got some ideas for animations, mostly 2D or semi-3D, with some user interactions, and i have no particular reason to stick with actionscript or the Windows-based Flash app or any other conventional tools. And it's free, can also make javascript and other output types. It might not be big out there in the world but it fits my odd little side projects just fine. Or, i think it would... gotta learn it better...


Writing a basic language. The primary goal of being to better understand compiler theory and to gain insight into how to write many of the constructs I use every day. Also, it would just be really cool to play around with my own language.


(I'm a web developer) jQuery, because re-writing common javascript everytime I want to do something is just silly. More advanced uses/functionality of ASP.Net and C# - I keep running across built-in classes that do really interesting things. and keep going with PHP - coz you have to know at least one free server-side language.


Python, Django, and Jquery. I would also like to learn about cryptology (Reading Applied Cryptography by Bruce Schneier right now).

+3  A: 

To be even more self-disciplined.

To stay with the thinking of the best.

To eschew mediocrity.

Jon DellOro
+1  A: 

Just Started Perl a few weeks back, so next to learn is.... more Perl!

I'm gonna need to learn it for my network engineering & security analysis course anyway.

John T
  • Objective-C : to develop for my iPod
  • sed : That's a unix command that seems powerful.
Julien Grenier

F#, jQuery, Lua and MVC. I also have some books on string/text algorithms that I'd like to finish off.

Dana Robinson

Definately some more on collaborative work - subversion got me a taste for more team based programming.


Object-C with some Cocoa

+1  A: 

I want to learn:

  • More C++
  • Physics for game programming
  • More shaders
  • OpenCL, for the fun:D
  • lisp/scheme for AI
  • And I have courses differential equations (both partial and regular) pluss linear programming, so I guess I'll have to learn that too.

I can already see that this will be a fun year:D

+1  A: 

Erlang, Scala, Haskell (I think it's obvious why).

jQuery (I tried some mixed flash/JS-frameworks but they are as broken as Flash is; YUI is good also, but it takes a little too long to do small things with it).

+5  A: 

English Grammar... :(

Click Ok

jQuery, ASP.NET MVC, Silverlight / WPF, Workflow Foundation


C, C++, JQuery and Ruby.


Design Pattern Silverlight MVC,also living the life better :)


Primarily I want to learn to manage my time more effectively, because right now it seems to me that there are not enough hours in a day, and not enough days in a week!!

Then I'd like to learn Python, and perhaps work a little more with WPF.

Nikos Steiakakis

TDD and C#.
Even if I plan to migrate to Linux... :) Yes, probably, I'm a masochist.


JQuery, Maven, JBoss ESB, and C#


For me on top of the list is Linq, JQuery, ASP.NET AJAX


Better parallel programming techniques like hybrid OpenMP/MPI since it will be the best way to cope with future architectures.


Ada: I have just started using it at work for the project I am on. I will be working in Ada for about the next 2 years so my feet should be pretty wet in it once this project is done.

And to think, my Comp Sci buddies and I used to joke that we should write a wrapper around Java called AdaWeb. It would be the next big thing, secure, reliable, and now with more WEB! Of course the joke is on me now that they have a bridge between Ada and Java allowing you to call Java from Ada ;-)

Mark Thistle
+7  A: 

Windows Power Shell

Vulcan Eager
+1  A: 

Patience and understanding... :P


New stuff I'd like to learn is jQuery and Ruby on Rails, along with improving my understanding of everything else, specifically ASP MVC.NET and Linq.

Antony Scott
+1  A: 

Cloud computing

Yakov Fain

let me see :

Grails -> done
Grok -> done
Javafx-> done GWT -> useless but done

hum...probably ruby

+5  A: 


Specifically, learning enough of the symbols and the names of different types of math that I can decide which bit of math I need to know about to do whatever jobs come up. At the moment, the door is closed because I don't speak the lingo.

Simon Gibbs

Forth! Am I the only one? (:


how to build a compiler


In no particular order:

  • Calculus
  • Linear Algebra
  • Python
  • IronPython / Dynamic Language Runtime
  • Objective-C
  • Cocoa Touch
  • XNA
  • JQuery
  • Silverlight
  • Emacs
  • Subversion
Gabriel Isenberg



I'm just coming back to programming after a loooooong break (doing sysadmin and business stuff) and I'm learning Java for a possible job, but I'd like to learn C, to get me as close as possible to the machine (without getting spattered with grease, like you do with Assembly! I'm too old for Assembly...)


Silverlight, XNA and WPF


Django, because there might be some money in it for me.

Embedded microprocessor programming, because I love writing code that affects things in the physical world. I've got a Teensy++ sitting on my desk, blinking out Morse code now. Now to wire up an LCD and some servos.


My Computer Science education was fairly strong on the "computer science" part, a bit light on the math part, and left the applied stuff (learning and using specific languages and technologies) to us.

My learning cycle is a balance of these three things. This is my first year as a professional programmer, and I've found myself in a world I never expected: web development. While I was busy completing CS assignments in C++, the web was becoming a legitimate application platform, and one where SO much new development (and, thus, new job opportunities) is focused.

So, my learning list looks like this:
1. Sharpening PHP/MySQL skills to advanced levels, learning jQuery and AJAX
2. Going back through my old CS textbooks, reading other "classic" CS texts that I didn't get in school
3. Re-learning the math I either forgot or never really knew before. :)

I think this balance is good for my long-term development.


parallel programming and cloud computing

+1  A: 

Business Logic.

Dr. Xray
+2  A: 

Assembly, C, math.

+1  A: 

Photography. Looks like fun.


deeper C++, master degree php, beginner ASM, APIs in general, XML, complexe mathematics... hash algos




Where to start? There's a ton of interesting stuff out there. Scala and Clojure are at the top of my list since I'm a java fan now. Android development seems really interesting too. I've always wanted to do 3D programming so OpenGL is on the list as far as general programming interests.

It will be exciting to play around with Closures when Java 7 comes out, but I don't expect it will take very long to learn them.

Chad Okere
+1  A: 

Lisp. I have played around a bit with Practical Common Lisp and the language fascinates me to no end. Even if I never use it for a real project I have the distinct feeling that learning Lisp will make me a better programmer in other languages as well.

Also, hardware! I love building software but I would love to learn how to build some custom hardware for it. From simple controllers to home automation. For example, I have written a jukebox daemon not unlike MPD that runs on my home server (absolute alpha quality but hey, it works for me). I'd like to build a small "box" that can listen to an IceCast stream and output to my stereo. I'd like to build some sort of remote control for it, etcetera. I've been looking at Arduino to see if that can serve me.

DDD (Domain Driven Design). I have played with various MVC frameworks, most of which ape RoR and ActiveRecord. But I have the feeling that ActiveRecord is breaking down when the application becomes more complex. So, I have been reading up a bit about DDD, DataMappers, etcetera. This probably also means trying out something like Zend Framework in the near future.

Sander Marechal

Ryan Dahl's Node.js. Easily one of the most brilliant new projects in years to address the concurrency issue, in particular with I/O. I'm interested mainly because of how easy he's managed to make evented I/O seem.

Bob Aman
  1. x-code/objective-c/iphone sdk, and quick overview of Snow Leopard Grand Central Dispatch
  2. c# 4.0, .net 4.0 parallelization framework
  3. f#
  4. architecture and design for cloud computing
  5. python (via ironpython)

Drupal, PHP, and jQuery

+3  A: 

How to balance family time and computer time.

Mike Weller