I have seen the following advice posted on JavaRanch as a suggestion for new CS grads frustrated with their inability to find a job -- "Hook up with an open source project to
boost your skills ... etc". I think this advice is fine, so long as one realizes the potential repercussions of their advice.
I work in the IT department of a large company (~40,000 employees worldwide). A project team within my group has decided to go with open source Java-based tools for their application (Apache,
JBoss,
Tomcat). They chose open source tools for the usual reasons of security, performance, and most of all cost.
Enter Software Engineer A and Software Engineer B. Engineer A works for a well known software company that writes commercial grade
Java application servers. Engineer B works for an IT department that licenses software from Engineer A's company. At some point Engineer B decides to start using open source software tools and therefore no longer needs to pay Engineer A's company for licenses. Engineer A's company revenue shrinks due to a growing open source market share and eventually has to layoff Engineer A. Ok, so now if Engineer B should lose his job, he will have to compete with all of the Engineer A's now in the unemployment lines in addition to all of the CS college grads flipping burgers and writing open source code.
I don't have anything against open source; in fact I use several open source tools at my job. But I often wonder if the open source movement continues to take hold, where does it leave those of us who make a living writing code.