From Random Hacks of Kindness
[edit] Why hack for humanity?
- It feels good to help people, especially when it's fun
- Learning about new technologies and social sector subjects
- Practice and use your skills to benefit humanity
- Opportunities to build your reputation
[edit] Why Open Source?
- Open source gives people the freedom to use, learn, improve and share. This lowers barriers for those with the least resources.
[edit] ICT for Development
[edit] Getting Started
[edit] Documentation
[edit] Open Source Community Building
[edit] Managing an Open Source Project
[edit] Security
[edit] QA/Testing
[edit] Fund-raising
[edit] Product Management
[edit] Marketing
[edit] Design and User Experience
[edit] Open Hardware
[edit] Building a Startup with Your Project
[edit] Learning GitHub
[edit] Learning Development
[edit] YouTube Channels
- phpacademy channel - covers php,mysql,jquery
- thenewboston channel - covers java,c++,c,python,after affects,php,dreamweaver,3Ds max
- MIT's channel -search playlists for actual MIT computer class lectures!
- Google's Python classes - covers python (not a channel)
- briantwill's channel - *covers hardware/os, general beginning programming, python, java, C, clojure *
[edit] Communities for Developers
[edit] On-line Courses
[edit] Principles of Good Code
- Code should be single-purpose, self contained, predictable, unit testable, documented
- Use comments for every function, method, class, object property, constant, parameter
- Unit test
- Reduce Cyclomatic complexity wherever possible (no more than 3 indentations)
[edit] Reducing "Code Smell"
http://www.codinghorror.com/blog/2006/05/code-smells.html
Recommended Reading for Developers
http://www.codinghorror.com/blog/2004/02/recommended-reading-for-developers.html
http://www.artima.com/intv/fixit.html
http://www.artima.com/intv/dry3.html
Learning to Love Unit Testing - http://media.pragprog.com/articles/other-published-articles/stqe-01-2002.pdf
Art in Programming - http://media.pragprog.com/articles/other-published-articles/ArtInProgramming.pdf
Pipelines - http://media.pragprog.com/articles/nov_03_pipelines.pdf
Agile software principles - http://agilemanifesto.org/principles.html
Code Stewardship - http://c2.com/cgi/wiki?CodeStewardship
Contributing without code
Advocacy
- Introducing new people to RHoK
- Blog posts, video, screencasts, twitter, Facebook
Design
- Collateral
- UX/UI
Documentation
- User documentation
Project Management
- Issue/bug wrangling
- Organization
Support
- Forums
- Issues/bug reports
- Sitting down next to someone
Testing
- Setting up for testing
- Writing bug reports
- Applying fixes
Translation
- The RHoK site
- New translations
- Fixing translations