Archive for the ‘learning’ Category

New year’s resolutions of a software developer

January 2, 2011 4 comments

I registered this account for some time ago but I haven’t really posted anything yet so I decided that a new year’s resolution would be a great way to start.

To sum up my plans for 2011, I’m going to improve my skills on various topics and become better at my profession. I’m planning to take small steps to learn something new everyday.

I categorized the goals under separate topics but many of them overlap.

In no specific order, here goes:

Programming languages:
Primary goal:
Learn Clojure, Ruby, Scala and JavaScript.
Implement something nontrivial with each of them.

Secondary goal:
Improve Python and PHP skills. Learn Groovy.

Functional programming:
Learn all the fundamental concepts related to functional programming.
Implement something nontrivial with a functional programming language.

Parallel programming:
Implement something nontrivial that (effectively) uses parallel programming techniques.

JavaEE platform:
Finish the JEE6 showcase project.
Read at least one book that’s related to JavaEE technologies.

Learn the details of the JVM:
Memory handling and tweaking the memory options, custom class loaders etc.

Client-side web development:
Read a book about JavaScript.
Learn and use JavaScript frameworks, primarily jQuery.
Improve CSS skills.
Do some sort of HTML5 showcase project.

Implement something nontrivial with some cloud technology (like GAE).

Use at least one NoSql DBMS in some hobby project.

Teach/inspire other people to learn:
Organize a study group or training session(s) at work.

Be active online:
Blog and comment other people’s blog posts. Tweet. Answer the questions of others.

I consider it a success if I manage to get some of my colleaques or friends excited about some technology they didn’t previously know about.

Write a blog post at least once a month.

Books about software development:
Finish at least a book per quarter. Aim for a book per month.

Productivity and use of time:
Read at least one book related to developer productivity.
Apply the required knowledge/techniques to work and hobby projects.

And finally, don’t take things too seriously. Remember to keep it fun. 🙂

Categories: learning Tags: