Let’s face it: The barriers to becoming a programmer are extremely low. Whether this is a good or bad thing is debatable, but an almost infinite number of internet resources means that anyone with the time and desire can learn pretty much any programming language. This, my friends, is a problem.
You see, a lot of the programming tutorials and examples on the web just plain suck. Sure, you’ll become a programmer, but chances are you won’t learn how to become a good programmer. The difference between an average programmer and a good programmer (and a good and great one) is significant, usually brining dramatic productivity increases (and bigger salaries to boot).
This was a stuggle of mine for quite a while. I really wanted to do the right thing when coding, but I didn’t know the practices of good programmers, or what good code looked like. This finally changed last summer when I read The Pragmatic Programmer: From Journeyman to Master. David Thomas and Andrew Hunt really know their stuff, and give you almost all of the high level knowledge you need to be a successful programmer.
Even better though, they’ve baked the same pragmatic philosophy into the entire Pragmatic Bookshelf. You can learn how to really program Ruby, kick ass with Rails, get agile, or actually ship a product. Whatever it is, you’ll learn it, and you’ll learn it the right way.
So, if you’ve been programming for a long time, or just getting started, the Pragmatic Programmers have something on the bookshelf that’ll help you out. Take a little while and look around!
2 replies on “Why you should be a Pragmatic Programmer”
Absolutely, I’ve been reading the pragmatic programmers’ ruby manual. With only a few Java and C programming classes and knowledge of machine code obtained from excellent professors at MSU, Mankato and NDSCS, Wahpeton; I found the pragmatic book on Ruby very plain and simply -a good thing for programming across the board.
So Sam, I need to ask: What do you think of Ruby compared to the other languages you’ve programmed in?
Personally, I did some Java, Visual Basic, Cold Fusion, Assembly, and Ada coding in college. Since then, it’s been exclusively web scripting in PHP, Perl, and now Ruby.
Perl originally scared the hell out of me, mainly because of the example code I was staring at. PHP does a pretty good job for a lot of web pages and apps, but I found maintaining my code a pain. Also, there are a lot of inconsistencies in their function naming, which started to tick me off after a while.
After working with it for a bit, Ruby just seems to feel “right”. The “everything’s an object” aspect to Ruby makes a lot of sense, and lets you write code that is tight, but still pretty readable.
Have you done any playing with Rails yet? That’s been my introduction to Ruby, so my understanding is coupled pretty tightly to Rails. The recent (non-Pragmatic) book Ruby for Rails: Ruby Techniques for Rails Developers may help me understand the many Rubyisms you don’t often see in Rails.
Cheers,
Jason