Friday, September 28, 2012

Learning Ruby

This week I've been reading through "Code Complete" by Steve McConnell. He discusses the importance of choosing the right programming language for the task at hand. Now, there are many languages available for use today. How do we choose which language to use? Do we just stick with what we know or do we branch out and try to learn a new language? Every language has its strengths and weaknesses, if you limit yourself to only a few languages you may possibly be limiting your knowledge and capabilities.

Working in the IT field over the past 10 years, I've learned many programming languages over the years ranging from C to SQL. However, Steve McConnell brings up the interesting topic of utilizing high-level languages that allow you to be more productive and allows you to produce higher quality results. A study shows that 1 line of C++ is as efficient as 2.5 lines of C code and 1 line of Perl or PYTHON is as efficient as 6 lines of C code. This means that you can do more with less when utilizing high level programming languages! 

One specific language brought up was Perl. I've heard all about this language and have several co-workers who go on and on about how great it is. However, I never really took to even look into it, much less learn it. A few weeks ago my boss suggested I learn Perl and I brushed it off not thinking much about it. This week, I learned what it is capable of through Steve McConnell's book.

On a daily basis, I utilize the Linux command line and write SQL queries to retrieve data from databases. I do most of this manually with some shell scripting for administrative tasks in Linux. Today I learned that I can make my job 10 times easier by learning and using Perl! If that's not incentive enough to learn it, I don't know what is.

First stop, Google and YouTube! Here is some good links that I found for anyone who may be interested in learning Perl as well. Click here for a free online book and here for some tutorials.

Have fun!



No comments:

Post a Comment