Open Source Development and Migration
Adopting Open Source Working Methods
There are several open source development practices that corporate can benefit from adopting within their development environment that can lead to improvement in quality of code, communication, effectiveness and performance.
Using open development methods
- Open source code tree: Make source code available for others to review and offer feedback and suggest improvements (peer review). Inside a company, this allows teams to works across organizational lines and allows others to add value to your software. Different users tickle different bugs, leading to higher quality. The practice of incrementally adding functions allows better testing and better chances to capture bugs. Cooperation is good and benefits all.
- Open mailing list used for all project related discussions.
- Bug tracking system.
- Technical support tracking system.
- Patch tracking system.
- Feature request tracking system.
Fast development cycle with small incremental changes
- Adopt the “release early and release often” practice.
- Go through the cycle several times.
- Apply small incremental changes in the release to make it easier to understand and test.
- Faster development builds.
- Lower Time to market.
Pay special attention to quality and security
- Promote and encourage company developers to use Open Source software and tools in their development environment where it can meet their needs.
- Include Open Source software in products based on a set of criteria such as technical merits, the time-to-market advantage, and avoiding vendor lock-in situation.
- Code re-use improves Efficiency and increases cost savings.
Build reusable software components
- Don’t keep re-inventing the wheel and don’t act superior. If someone has already implemented the capability or feature you need, use it and build on top of it.
- When you develop from scratch, keep reusing in mind and develop code in modules that can be used by others and by you for other situations without many modifications.
Respect and follow community coding style
- The open source community follows a strict coding style to make it easier to understand the code, review it and revise it quickly.
Flag problems early and review with team
- Hiding problems or bugs until you come up with a solution is not encouraged.
- It is advised to report bugs or problems as early as they occur and the community will help you come up with a workaround or propose and help implement a better solution.
- Openness and honesty is key.
- New ideas have a better chance if engineers have the source code to review and experiment with and build proof-of-concept and test different methods.