Hacker News new | ask | show | jobs
by specialdragon 1310 days ago
If your experience has been entirely Python then a compiled language is the way to go.

SOLID principles still apply, but I've found multi-threaded applications to be more sensible in compiled languages.

More SQL is valid, up to a point. Make sure you're familiar with the basic syntax for SELECT, UPDATE, DELETE.

After a compiled language, try a different scripting language: JS, Ruby, PHP. JS is interesting because it's browser based. Ruby is interesting because of its ActiveRecord layer. PHP is interesting because of its legacy, and where it's going syntactically.

I wouldn't stop there either. Once you've done the above, write a Domain Specific Language on top of one you're familiar with. I wrote my first one on top of C#.

Write a terminal only application, and then extend it to be visual. Does it have to be HTML? Write a flashcard program, there are so few about.

In my experience, Ruby was good for prototyping, and then JRuby for performance. Python was good for quick science and then R, C or C++ for performance. PHP was good for prototyping websites, and then you switch it to become the view layer with API support for scaling.

Once you've done the above, try an esoteric language such as Piet.

Definitely learn a new language.