Changing From Proprietary to Open Source: The First Year*
What are the challenges a software professional faces moving from the proprietary world of big systems into the web-heavy open source world? Is it as simple as swapping to a new language or a new platform? Is there a mindset change? How big is the learning curve? What will surprise you? For employers, is it as simple as hiring someone smart, motivated and resourceful, or are there greater hidden obstacles?
Once programmers twisted wires to create programs. Software languages arrived and they adjusted and grew as the languages grew. They adjusted to databases, networks, Macs, PCs, the Interwebs, etc. Ideally the adjustments are incremental and manageable, enough to challenge, even to stretch, but not so much that it overwhelms.
Now, how big is the challenge of swapping from closed to open anyway? One might move from giant mainframes and massive multi-million dollar projects, or from the land of expensive desktop/network packages and licenses. If you’re lucky you might move to a related situation, for example from .NET to Rails. One likely moves to FOSS from software too expensive to own copy, making it hard/impossible to have their own projects on the side and stifling sharing and collaboration beyond the confines of a given project. They may have worked on massive, well-managed international teams, but nothing as organic as the open source world.
Most were used to longer projects built to last decades, with large/huge teams, vast budgets, excessive planning, complex methodologies, reams of documentation, teams of QA testers and managers who could handle the kinds of clients with millions to spend. They may find themselves in the rapidly evolving web world, developing a web page for a client in days/weeks weeks using agile development, based on a spec built from an email exchange, on a site expected to last just a year or two.
Many of the weapons in their arsenal will no longer work, or worse, will lead them astray. It’s quite possible that every piece of software they use will change, from operating system, through framework. The learning curve can be overwhelming. What are the warnings and pitfalls? What can a programmer do to shrink this gap and prepare themselves? For employers the normal approach is to hire smart capable programmers thinking they can quickly adjust to all this, but does this still apply?
I’ll try to cover all the bases and share the lessons I learned, and I’ll wrap up by answering the big question; is it worth it?
Meyer Memorial Trust
I’m a South African with over 30 years in programming and IT, twenty of them in the USA, half of those as an open source guy. I’m an open source evangelist who pushes open source at every opportunity. My current employer (MMT) uses primarily open source software for our websites and servers.
Currently I’m working on a large PHP project and a sizable Drupal site and have involvement in a Ruby on Rails site.
I’m big on helping others. I’ve helped run many all-volunteer-run conventions in the past and was a primary organizer for DrupalCampPDX 2008 and have been heavily involved with the group. The pay-it-forward nature of open source fits me to a tee and I’m not going anywhere.
In my spare time I’m a writer of nonfiction, science fiction and African fantasy, and I’m an artist, hobby-collector, reader and more.