Thanks to Tru-Synergy for hosting Brunei Geek Meet #4 and thanks for all those who attended! It was a much better turn out than I expected and hope for more meetups to come!
Open Source Involvements: Experience in working on the OpenMRS CPM open source project
thewheat.github.io/presentation-open-source-involvements
- People Management is essential
- there is a need to manage expectations
- High barriers of entry => great killer of enthusiasm
- Reproducible developer environments
- Documentation
- Document both technical and non-technical aspects
- Confluence, MediaWiki, Redmine
- Project Management: list of things to work on
- Communicate
- A way for people to communicate
- Google Groups, Slack, Flowdock
- Code
- It takes time
- commit 4 – 8 meetups to see where you can contribute
- nothing is too small
- Places to contribute
- OpenHatch is a non-profit dedicated to matching prospective free software contributors with communities, tools, and education. openhatch.org
- CodeTriage: receive a different open issue in your inbox every day. codetriage.com
Testing: TDD, BDD, WTH?
thewheat.github.io/presentation-testing-tdd-bdd-wth
- TDD: Test Driven Development (Red, Green, Refactor)
- Write test (watch test fail in test suite: Red)
- Write code (to make test pass: Green
- Refactor
- BDD: Behaviour Driven Development
- Focuses on clear understanding of software behavior from stakeholders
- Focuses on why code should be created: thinking “from the outside in”
-
- Given [initial context]
- when [event occurs]
- then [ensure some outcomes]
- Unit Tests
- Testing core unit of works
- Isolated: no interaction with other systems (e.g. databases, web services)
- Integration Tests
- Functional Tests
- Tests features / functions of a system from user’s point of view (Quality Assurance process. Black box testing)
- Automation tools (Selenium for webapps)