Quick Start Guide for COMP 190/290 Students
If you’ve taken COMP 190 (Tools and Techniques for Software Development) or COMP 290 (Large-scale and Open Source Software Development), you have specialized knowledge that will be incredibly valuable during the hackathon!
What You Already Know
From COMP 190/290, you’re familiar with:
- Unix command line environment
- Shell scripting
- System administration basics
- Debugging tools
- Version control with Git
- Open source software development methodologies
- Collaborative development workflows
- Project organization and management
How to Maximize Your Experience
As someone with experience in open source development and collaboration tools, consider taking on these roles during the hackathon:
1. Team Technical Lead
- Set up the Git repository with proper structure
- Configure continuous integration
- Establish coding standards
- Manage branching strategy and pull requests
2. DevOps Specialist
- Create automated build scripts
- Set up deployment pipelines
- Configure testing frameworks
- Manage development environments
3. Open Source Integration Expert
- Identify and integrate relevant open source libraries
- Ensure license compatibility
- Document external dependencies
- Contribute improvements back upstream if possible
Project Ideas Leveraging Your Skills
1. Humanitarian Software Solution
Apply your HFOSS experience to create something that addresses a social need:
- Educational tools
- Community resource mapping
- Accessibility solutions
- Environmental monitoring
2. Developer Productivity Tool
Build something that improves the development workflow:
- Custom Git extensions
- Code quality analyzers
- Automation scripts
- Documentation generators
3. Collaborative Platform
Create a tool that facilitates collaboration:
- Real-time collaborative editors
- Project management dashboards
- Code review systems
- Knowledge sharing platforms
Advanced Tools to Explore
Consider incorporating these technologies:
- Docker: Containerization for consistent environments
- GitHub Actions/GitLab CI: Automated testing and deployment
- React/Vue/Angular: Modern front-end frameworks
- Node.js/Express: JavaScript back-end
- MongoDB/PostgreSQL: Database systems
Remember that your technical skills can help the entire team be more productive. Share your knowledge generously and help create an environment where everyone can contribute effectively.