Every computer language is different. And, even if I don’t need to learn a new language to do my day job (my current employers are quite happy with Java), I think it helps a programmer to learn new languages.
There’s always something new to learn about thinking your way through problem solving. And I find that is often assisted by learning another language.
For me over the last couple of years that language has been Ruby. I’ve also dabbled in Python, which is very similar to Ruby.
The first language I learnt, many years ago, was Pascal. I didn’t end up using it professionally but it did teach me a lot about structuring programs, about breaking a program up into smaller units. As it happens, the first language I used in the workplace was PL/I and I was able to apply many of the principles I had learnt at Uni programming in Pascal.
Some people prescribe learning one new language each year. I wouldn’t go that far. In my view, people who try to achieve that need to get out more! But if you want to become a better programmer, you could do worse than choosing another language to learn.
Mar 08, 2007, 03:39AM PST | 2 cheers | 2 comments
It’s a book that I’ve been meaning to read for years. Now I’m finally reading this classic by Andrew Hunt and Dave Thomas and finding it to be a healthy collection of challenges to my approach to programming.
Sometimes I find myself nodding in agreement whilst at others I’m forced to pause and reflect on how I can improve my approach, perhaps by casting aside long-held beliefs and practices.
Definitely worth reading and acting upon.
Jul 11, 2006, 05:51AM PDT | 0 comments
... there’s an old saying in the software consulting industry (and I’m sure it’s more widely used): The best way to learn is to teach.
Well, this week and next week I have that opportunity again whilst I teach a Java and J2EE course…
Jun 20, 2006, 06:22AM PDT | 2 cheers | 0 comments
I get plenty of satisfaction from learning new tools that will make my life as a programmer easier.
Having used CVS at work for many years and heard quite a bit of praise for Subversion, recently I’ve been setting up Subversion on an old machine I have at home that has Debian installed.
For the moment it is satisfying to have set Subversion up for my purposes. I’m looking forward to using it over the next few months or so to see for myself how much of an improvement it is on CVS.
Reading is one way of learning, but there is no substitute for actually getting your hands dirty.
Mar 28, 2006, 03:25AM PST | 0 comments
Today I had a refactoring experience that left me feeling very satisfied.
A discussion had led to a decision to improve an existing design. Having run my automated unit test successfully, I embarked on my refactoring and quickly became immersed in the process. I was eager to finish because I could see how the design would be improved.
At the end of my refactoring session, my test still passed (in fact I’d improved it because I had discovered a couple of bugs along the way) and I paused and admired the better design, which had eliminated some unnecessary code as a by-product.
Programming bliss!
Mar 22, 2006, 03:51AM PST | 3 cheers | 0 comments
... and there’s still plenty to learn. There always will be, whether it’s a new language, new techniques, better style, achieving greater productivity, improving quality etc.
I think the key is to always strive to find better ways of programming and be prepared to learn from others.
Nov 15, 2005, 10:25PM PST | 6 cheers | 0 comments