Thursday, June 28, 2012
As a programmer, it is very advantageous to have strong database skills. It makes you more professionally rounded, more versatile, and as a result, more marketable.
With the exception of certain specialized application types, the majority of applications are designed to move data in and out of databases. Therefore, your ability to manipulate data increases your software development capabilities.
When I think of database skills, I mentally divide them into three primary skill sets; database design, stored procedure writing, and database production. Database design, as the name suggests, is the ability to analyze the data being stored and construct an appropriate database structure which balances data usage flexibility, data storage efficiency, and application performance. Stored procedures are similar to application software, but written using a database-specific programming language designed to store, manipulate, and retrieve data. Database production is the process of allocating needed disk space, re-indexing overworked indexes and other ongoing production processes. As a programmer, you would be best served to first learn to program stored procedures and then expand your skills to include database design. Learning database production would be an advantage, but as a programmer, it's not as important as the other two.
There is one more thing to consider regarding database knowledge. Over the years, various front end technologies have come and go, but the data remains. A deep understanding of data storage, data movement, and data usage will be valuable to you throughout your professional career.
This blog is based on a column I wrote last year, as part of my weekly blog in IT World. For my most recent IT World blogs, go to
http://www.itworld.com/blogs/eric-bloom.
Until next time, work hard, work smart, and continue to grow.