Since the best way to learn is to work on projects, what are some good software to try making yourself with a purpose of sharpening certain programming skills or learning a new language?
closed as not constructive by Mark Trapp Feb 12 '12 at 22:18
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or specific expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, see the FAQ for guidance.
|
I found the following programs give a good start with new languages: Conway's Game of Life Easy to implement. Gives you a good start with simple usage of container classes. Doesn't necessarily need graphics for output of results. In addition you could write a 3D version of it, and use a game engine for output (eg something simple like Panda3D) Sudoku Solver Slightly more complex. Complexity can be adjusted to your needs. Either just cancel out numbers and stop when that's not possible anymore or go on and implement a search tree to solve more complex problems. Problems and solutions for Sudokus on every level of difficulty for testing your program are available on the web in abundance. Same for material on possible strategies. Problems on every level of difficulty you can want. And compare your solutions to those of experienced programmers in every major programming language. |
||||
|
|
I'm not sure what you mean with 'what are some good software to try ...', but I can recommend the book 'seven languages in seven weeks' It gives you a good starting point to try new languages. |
|||||
|
|
|
Just log on to any of the following sites and see if you are up to the coding challenges they present: SPOJ, TOPCODER etc. Most of these sites provided you with the option of coding in multiple programming languages so you can use the one you are most familiar with. And if you are a master at your game, there's always ICPC. |
|||
|
|
|
I would say any project that meets the following three requirements:
|
|||||
|
|
|||
|
|
|
For Beginners String Manipulation:
Database:
Random Number Manipulation:
Matrix and Basic Graphics
|
|||
|
|
|
Anything you like enough to keep doing. The most learning is done in that last 1% that is commonly ignored on a side project, but is a very important part of a work product. As a result, it's a very personal choice what the project could be. That's why there's so many great OS projects out there, and why everyone says that they matter so much when they're on your resume/CV: that person worked hard on it and learned lots from working on that last 1% of it to make it usable by others and enjoys what they do. |
|||
|
|
|
Just found an iteresting link "6 games you must be able to make in a day". I think this is good start. |
|||
|
|

