CS210 - Notes and Resources

Text: "C++ Programming: Programming Design With Introduction To Data Structures",
Malik, 3rd Ed., Thomson, ISBN: 1-4188-3640-0


General Hacker Stuff

IBM DeveloperWorks - A great resource for developers, with articles, tutorials and links to software.

The Jargon File - A great collection of geek-speak which makes for very entertaining reading. Particularly good if you're interested in how the industry has grown and changed since it started.

Dr. Dobbs Journal - the Web site for the best general-interest programming magazines around.  In addition to posted articles, opinion pieces and essays, they also have a collecition of links to software tools, techniques, tutorials and other programmer resources.

Object-Orientation Tips - A neat page with a ton of information about OOP

Guru of the Week - a regular series of C++ programming problems created and written by Herb Sutter.  (NOTE:  These are tough problems.)

TopCoder.com - If you're feeling particularly cocky about your coding skills, here's a site that offers programming contests where you can participate online and win prizes.

The Quines Page - A quine is a program that produces as its output its own source code. (I'll let you ponder that for a moment.) There is an ongoing, informal competition amongst alpha geeks (and would-be alpha geeks) to see in how many programming languages a quine can be written. Good-natured nerd fun.


Course-Related Links

C++ Links - A lot of resources.

The Object-Oriented Page - Another ton of links, not specific to C++ but about OOP

More C++ Links - A good page with tons of good links

Objective Viewpoint - An online magazine put out by the ACM (Association for Computing Machinery) with a lot of good articles on
OOP.

Game Development

Free Game Programming Libraries and Code - Just what it says.

DevMaster.net - Online source for game development

GameDev.net - Another online resource for game developers.

The Game AI Page - A good reference for building smarts into your games.

C++ Game Programming - A nice set of tutorials for learning C++ while coding games. Good examples of basic Allegro (a cross-platform GUI toolkit) coding.

Allegro Toolkit - The home page for the Allegro toolkit.

Using Allegro with Visual C++ Express 2005 - A nice, step-by-step description of how to set up Visual C++ Express to work with Allegro. The instructions can be easily adapted to Visual Studio.NET 2003.

The Allegro Wiki - A good source of information on Allegro, created by users.

Open Source Gaming

(One of the best ways to learn how to code is by reading someone else's code. This section is meant as a resource for a wide variety of games that have source code freely available.)

Bzflag - Think 'Capture the Flag' with tanks. This is a cross-platform, multiplayer networked game that has a very active community. It's available for free, complete with source code and documentation.

Cube - A basic First Person Shooter game, similar to Quake 3. What makes this useful is that the code is freely available so you can learn how to code a game like this yourself and even adapt the code for your own use.

Sauerbraten - Otherwise known as Cube 2. Nicer graphics, adds single-player missions.

Open Directory: Games - A page of links to open source games and game development projects.

Organizations/Projects

Mozilla - The Mozilla project is producing the next-generation Web platform.

OpenOffice - The OpenOffice project is producing a free, open-source competitor to Microsoft Office.

Virtual Network Computing - Remote desktop software similar to PC-Anywhere, except it runs on every platform you can name and it's free.

General Resources

ComputerWorld - If you want to see how computers are really used in real businesses, this is a good source. Essentially an offshoot of Computerworld magazine (available as a free subscription if you can convince them that you influence buying decisions where you work) , this site is pretty platform independent and has a decent career section, as well as a 'gossip' column where actual IT folk write in anonymously and describe the various ways that management can screw up the techies.

The O'Reilly Network - From one of the top publishers of computer books, this site has articles, tips and how-tos on a wide variety of computer topics.  Highly recommended.

Advogato - This is an interesting on-line discussion forum, mainly dealing with software development. Kind of geeky and fractious, but there are a few nuggets of gold here.

Artima - Another good source of technical information for developers, specifically object-oriented developers.

Dr. Dobb's Journal - This is the web site of the longest-running programming magazine in existence. Good essays, articles and programming resources.

SoftPro Books - This is an excellent source for computer and networking books. You can order online or go to one of their local stores. (They have one at Yosemite and Arapahoe in Englewood and another in Boulder.) You can usually get 10-20% off the list price and if you join their 'frequent shoppers' club (it's free) you can get additional savings. 

GoCertify - A nice site that has information on just about every technical certification you can get -- who offers it, what you need to get it, where you can get training and where/how you can take the test.

BrainBench - Another certification site, but this one does their own online certification exams in a wide variety of technical subjects.

Yahoo! Briefcase - 30 megabytes of free online storage.  Floppies are awkward and obsolete! (Requires free Yahoo! account)

Online References

Webopedia - Stuck trying to figure out an acronym or computer term? This is a good site to look it up. 

igrep - advertised as the first search engine for technical people.

FAQs Online - Here's the one-stop shop for looking up Internet FAQs (Frequently Asked Questions) and RFCs (Requests For Comments). 

Just for Fun

RiffTrax - From the folks who brought you Mystery Science Theater 3000, this site offers hilarious commentary tracks for popular (and some not-so-popular) movies.

Klingon Fairy Tales - Features such classics as "Goldilocks Dies With Honor at the Hands of the Three Bears"

Television Without Pity - Recaps, reviews and discussions of popular TV shows, sometimes very snarky and funny.

Computer Stupidities - This site collects actual dialogues between real users and real tech support folk. The range of misunderstandings and confusion is frequently hilarious.

Peter's Evil Overlord List - Thinking about a career as an Evil Overlord? Think you have what it takes to be the next Darth Vader? Check out this site for a collection of SuperVillain Do's and Don'ts including 'My ventilation shafts will be too small to crawl through'.

Stupid Plot Tricks - Expanding on the Evil Overlord lists, this contains lists of rules for henchman, good guys/gals, bad guys/gals and even sidekicks.  Very funny read.

Insultingly Stupid Movie Physics - This site examines many popular movies to see if the action is in line with real physical laws.  An interesting, entertaining and even educational read.

Movie-a-Minute - A very funny site, with brief summaries of many popular films. As a sample, here's their treatment of "The Matrix":

Keanu Reeves
Hey everybody, look! Look at me! I'm in a movie that doesn't suck!
Audience
GASP!
Keanu Reeves
Yes, it's true! Not only that, despite my total lack of acting ability, I very nearly didn't suck in this movie!
Audience
(faints)

THE END

Book-a-Minute - From the folks who brought you 'Movie-a-Minute'. Here's their treatment of Frank Herbert's "Dune":

Frank Herbert
I'm lots smarter than you are. I challenge you to understand even one of my paragraphs!
Reader
Gee, Frank Herbert is smart. I can't even find the plot.

THE END

 
Study Guides and Misc.
Source Code/Solutions
  • Final Scores

DISCLAIMER: The views expressed on this site are those of the author and are not necessarily those of his employer, Westwood Technical College or its affilliates. This material is intended to supplement the class lectures and text and is not required to complete the course.

You can e-mail me here