A list of Projects For Programmers.
References
Anyone out there looking for challenges?
- Area: Software Engineering
- Programming Language
- Design a new Programming Language. Write an Interpreter for the language.
- Interpreter for your own Lisp.
- Personal Note: While I was in College, I used to dream of inventing - not just an “YAPL” - "Yet Another Programming Language" but a great programming language that would take the Software World by storm! This project would be a great practice for that yet-to-be-named programming Language!
- Software Engineering Tools
- Write a "mini" Dependency Injection Framework.
- Write a Code Generation Tool that generates project structure, classes, fields, methods, creates Database from XML / YAML.
- Examples:
- Ruby on Rails
- Spring Roo
- Area: Theoretical Computer Science
- Solve TopCoder [1] and Google Codejam [2] Problems.
- Area: Intelligence and Data
- Implement Natural Language Parsing.
- Use your Dependency Injection Framework to inject different Algorithms.
- Top down Parsing
- Chart Parsing
- Implement Minimax Algorithm with Alpha-Beta pruning on a simple game.
- Use your Dependency Injection Framework to inject different games into the Algorithm (so that you can inject any game you wish).
- Prototype a Web Search Engine on a small number of Wikipedia pages.
- Analyze Political Survey Data with
- Hadoop, Mahout
- Spark, MLib
- Prototype Web-based Email with anti-spamming feature.
- Implementation of Machine Learning (Bayes)
- Area: Systems
- Mobile Development
- Mini Android Apps
- Develop a “Who wants to be a Millionaire” App.
- Virtualization
- Design a Virtual Machine.
- Database
- Design and implement a prototype RDBMS Server (RDBMS lite).
- Design and implement a prototype NoSQL Server
- Graph Database Server.
- Write a Mini Web Browser.
- Use Google’s JavaScript V8 Engine.
- Networking & Distributed Computing
- Design and Implement a new Application Layer Protocol.
- Protocol that supports Internet Of Things, Cloud, Mobile.
- New Full-duplex protocol on top of HTTP
- Current:
- WebSocket
- Comet
- Prototype your own Mapreduce framework.
- Prototype an HTTP Server.
- Use Node.JS
- Prototype an E-Mail Server.
- Write a Django CMS on Google App Engine (datastore).
- Write a Distributed Application with Java Spring Framework.
- Write a PC^2 equivalent Software for Programming Contests.
- Write Personal News / Blog Reader and Bookmark Manager for personal use.
- Design Ebook App.
- Interactive HTML5 EBook with advanced Mobile Interactions.
References
No comments:
Post a Comment