I made a blackjack game when I was learning python. It's nice because you can set-up the frame when your just starting out and come back later when your more experienced and add things like, splitting, doubling down, saving the players money and so on.
Hmm ... that is a good project to invest some time in - considering I kinda love card games (blackjack and poker my fav). I probably will put this on my list of "programs to code"
Did you do it with actual pictures of the cards?
I would say that it depends on what your interests are. Pick a project that is in line with your personal interests or curiosity.
I think that's the problem here
I have no idea what my interests are in terms or coding and whatever I come up with always seems to be quite complicated
One that I always find fun and still work on is solving the
Traveling Salesman problem.
It's very easy to setup and will teach you about NP-Complete problems that are applicable to so many other areas. It will amaze you how few cities you need before brute force is no longer an option even on todays CPUs. Then the fun part starts, implementing different algos to solve the problem. My current favorite is a genetic algorithm, but there are many directions you can go (many are listed on the wiki page)
Ekkk, I think I heard of this problem in more advanced classes. I read the wiki link you posted but it seems a bit out of my abilities atm. But it does seem very interesting - i shall have to learn theory at some point.
Then tell us what you think is fun.
Physics: lunar lander, lunar orbiter, space wars, etc.
http://en.wikipedia.org/wiki/Space_Wars
http://en.wikipedia.org/wiki/Lunar_Lander_(video_game)
http://en.wikipedia.org/wiki/Lunar_Lander_(arcade_game)
Physics: gunner games
http://en.wikipedia.org/wiki/Special:Search?search=gunner+game&fulltext=Search
For interaction, you can go the traditional console I/O route, or you can use a C lib like ncurses for basic addressable cursor action in a Terminal.app window.
http://developer.apple.com/mac/library/documentation/Darwin/Reference/ManPages/man3/ncurses.3x.html
For example, the 'top' command uses ncurses.
The book BASIC Computer Games has a boatload of games.
http://en.wikipedia.org/wiki/BASIC_Computer_Games
It's out of print, but read the article for links and more examples.
If games aren't what you consider fun, then you'll have to be more specific than "interesting" or "fun".
I think those games are fun as in it'll be fun to play and whatnot. But what I mean by interesting is something that's useful, helpful to learning real programming, and .... thought provoking? Hope that clears it up!
Before posting this thread, I have googled possible projects to code and I found that link; I was excited but once I read through the projects, it seemed to be more math-based. I'm not that great at math
and prefer something that is pure Comp Sci but thanks for the thought
I think learning assembler is a lost art. There's a lot of things that happen at the higher level that leave you wondering WTF is going on. Seeing that happen at the assembler level gives you excellent insight into many of the higher level languages.
Hahahaa, my friend would agree with you. I most likely will learn assembly language and I do find myself sometimes wondering how it works (i.e. when programming GUIs with all those register action commands
) but I think that's something I'll leave for when I get more advance into programming and learning a ton of concepts.
And once again, thank you everyone! I'm starting to gather some ideas of what I want to do but it is always interesting to see how other people learn this strange subject of Comp Sci!