Linux Certification for the Software Professional
Within the Linux community is a growing discussion concerning the need for certification. Although certification may not be appropriate for today's Linux enthusiasts, it will be essential in the future as Linux software is brought into corporate and government environments. Certification programs and open source software will become significant as more and more independent professional programmers integrate Linux and Linux-based software into standard contract programming. Use of the certification process to develop minimal standards that are acceptable to the Linux community will also smooth the coming transition to state board licensure of the Professional Software Engineer.
When comparing diverse professions such as law, civil engineering, accountancy, clinical medicine, clinical psychology, and even hairdressing, one notices they all have a requirement of certification or licensure for the practicing professional. Computer professionals, on the other hand, do not have such a requirement.
The main reason for the lack of required credentials is probably that the computer discipline is only about twenty-five years old and, therefore, it has yet to come of age in industry or academia. As evidence of this field's youthfulness, traditional engineers often dismiss computer science as pseudo-engineering. Programmers stress the art (as opposed to science) of programming and the art of system administration. Computer science degree programs have been placed in university liberal arts, business or engineering schools. Meanwhile, computer scientists themselves cannot agree on even a short list of essential degree requirements for the Bachelor of Science in Computer Science (BSCS).
In spite of this awkwardness and uncertainty, our profession is doing well. BSCS graduates command high initial salaries that match or exceed other engineering disciplines. Computers control much of the country's infrastructure and this control is dramatically demonstrated by the manpower and resources currently employed to address the year 2000 problem.
In other words, the debate over certification in general and Linux certification in particular represents the growing pains of a relatively new profession and society's need to understand what a software engineer does. To make matters worse, the U.S. Department of Labor predicts that the computer industry will have 300,000 more programmer positions than programmers over the next few years and universities will not be able to fill the predicted demand. In fact, overall enrollment in computer science programs has decreased slightly in the last year (see http://stats.bls.gov/oco/ocos110.htm).
The role of certification, therefore, is to provide a method by which employers can specify and expect a given level of computer system expertise from employees without requiring them to have an advanced computer science degree. In a secondary role, certification acts as a supplement to a college or university degree by providing professional development through continuing education.
It is now time for the Linux community to shape the future of the software engineering profession by agreeing upon minimal industry requirements that will be codified into certification and licensure requirements.
A Linux system and its array of development tools and applications represent a central core (or “common body”) of knowledge for today's professional software engineer. Linux “empowers” the software professional with a set of tools that allows one individual to quickly provide sophisticated, flexible and reliable system solutions on a variety of computing platforms. These sophisticated solutions would otherwise require teams of programmers working months to integrate proprietary and incompatible software modules.
Second, a fundamental concern of corporate and government managers is the cost of operations—and Linux dramatically reduces this cost. The reduction is not so much from the idea of free software, but more a result of increased programmer productivity through complete control over the system. Another aspect of reduced cost is that the entire Linux community, including business and government, is continually debugging and improving the program base, making the system even more cost effective with each new distribution.
A third reason for a Linux certificate comes from state licensing boards. Licensing is a governmental action that seeks to safeguard the health, safety, welfare and property of its citizens and businesses through regulation of the offer of services, review of performance and use of the title “Engineer”.
On February 18, 1998, the Texas Board of Professional Engineers stated its intention to recognize software engineering as a legitimate sub-discipline. On June 17, 1998, the Texas Board approved a license for the Professional Software Engineer, and on August 3, 1998, began licensing software engineers through a waiver process (http://www.main.org/peboard/).
Given how Linux is used, this is a significant move by the Texas Board of Professional Engineers. Linux system software allows the independent software professional to provide a competitive bid, program the application and deliver a software product quickly. The professional programmer knows that Linux is a complete and open source software system that will simplify the solution of any development problem. In other words, from embedded systems through advanced networked clusters, Linux has already handled many programming and integration issues. The software developer is free to configure Linux in any way that best suits the required solution. Hence, Linux is an integral part of the software engineering process and as State Board licensure continues to grow, Linux must be a part of the licensing process.
Finally, given the predicted demand for software professionals, a Linux certificate will provide a valuable aid to employers in discovering productive software professionals.
|Dynamic DNS—an Object Lesson in Problem Solving||May 21, 2013|
|Using Salt Stack and Vagrant for Drupal Development||May 20, 2013|
|Making Linux and Android Get Along (It's Not as Hard as It Sounds)||May 16, 2013|
|Drupal Is a Framework: Why Everyone Needs to Understand This||May 15, 2013|
|Home, My Backup Data Center||May 13, 2013|
|Non-Linux FOSS: Seashore||May 10, 2013|
- RSS Feeds
- Making Linux and Android Get Along (It's Not as Hard as It Sounds)
- Using Salt Stack and Vagrant for Drupal Development
- Dynamic DNS—an Object Lesson in Problem Solving
- New Products
- Validate an E-Mail Address with PHP, the Right Way
- Drupal Is a Framework: Why Everyone Needs to Understand This
- A Topic for Discussion - Open Source Feature-Richness?
- Download the Free Red Hat White Paper "Using an Open Source Framework to Catch the Bad Guy"
- Tech Tip: Really Simple HTTP Server with Python
7 min 26 sec ago
- Keeping track of IP address
1 hour 58 min ago
- Roll your own dynamic dns
7 hours 11 min ago
- Please correct the URL for Salt Stack's web site
10 hours 23 min ago
- Android is Linux -- why no better inter-operation
12 hours 38 min ago
- Connecting Android device to desktop Linux via USB
13 hours 7 min ago
- Find new cell phone and tablet pc
14 hours 5 min ago
15 hours 34 min ago
- Automatically updating Guest Additions
16 hours 42 min ago
- I like your topic on android
17 hours 29 min ago
Enter to Win an Adafruit Pi Cobbler Breakout Kit for Raspberry Pi
It's Raspberry Pi month at Linux Journal. Each week in May, Adafruit will be giving away a Pi-related prize to a lucky, randomly drawn LJ reader. Winners will be announced weekly.
Fill out the fields below to enter to win this week's prize-- a Pi Cobbler Breakout Kit for Raspberry Pi.
Congratulations to our winners so far:
- 5-8-13, Pi Starter Pack: Jack Davis
- 5-15-13, Pi Model B 512MB RAM: Patrick Dunn
- 5-21-13, Prototyping Pi Plate Kit: Philip Kirby
- Next winner announced on 5-27-13!
Free Webinar: Hadoop
How to Build an Optimal Hadoop Cluster to Store and Maintain Unlimited Amounts of Data Using Microservers
Realizing the promise of Apache® Hadoop® requires the effective deployment of compute, memory, storage and networking to achieve optimal results. With its flexibility and multitude of options, it is easy to over or under provision the server infrastructure, resulting in poor performance and high TCO. Join us for an in depth, technical discussion with industry experts from leading Hadoop and server companies who will provide insights into the key considerations for designing and deploying an optimal Hadoop cluster.
Some of key questions to be discussed are:
- What is the “typical” Hadoop cluster and what should be installed on the different machine types?
- Why should you consider the typical workload patterns when making your hardware decisions?
- Are all microservers created equal for Hadoop deployments?
- How do I plan for expansion if I require more compute, memory, storage or networking?