CS280 - Notes and Resources

Text: "Java Network Programming" by Elliote Rusty Harold


General Hacker Stuff

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

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

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.

Doug Engelbart Demo - If you want a glimpse of the time when the future was born, this is it.  Doug Engelbart was the inventor of a lot of stuff modern computer users take for granted, like the mouse, cut-and-paste and groupware.  This is a series of short films taken from the original demonstration of these tools at Xerox PARC.  A fascinating glimpse into the birth of a technological generation.

TechInterview.org - Kind of a nifty site where folks post questions (mostly puzzles) that they've gotten in technical interviews.  I know that prospective programmers get asked these kinds of questions a lot.  Not so much to test their coding ability but to see how they approach a problem.

More Tech Interview Riddles - Just what it says.

How to Write Unmaintainable Code - In the great hacker tradition of "ha-ha, only serious", this Java-centric essay takes a humorous look at bad coding practice and points to ways we can improve the quality of our code.

RoboCode - Build a robotic battle tank in Java and then pit it against other competitors online in this fun and educational project sponsored by IBM.  

Joel on Software - An online journal by Joel Spolsky, owner of Fog Creek Software.  I don't agree with everything he says, but occasionally I find something interesting.

Problem-Solving Strategies - An excellent discussion of a variety of good ways to approach solving a technical problem whether it's figuring out why Windows won't connect on the network to debugging your code.

Java Game Programming Tutorial - A tutorial on coding little online games using Java applets

How To Be A Programmer - This links to a very good essay (40 pgs. in PDF format) about some of the stuff that the author wishes they had told him about in college

Course-Related Links

Java Network Programming - The home page for our text book. Includes updates, errata and the source for all the example code.

Java Networking Enhancements - An essay at IBM's DeveloperWorks detailing the many improvements Java 2 Standard Edition 1.4 brings to the networking front.

Free Java Books - Part of an online project offering free books for a variety of technical subjects.  The books are downloadable in plain text, PDF or HTML format.  They're adding new books all the time so this is a good place to start building your reference library on the cheap.

Java Home Page - The mothership, Sun Microsystems Java home.

Jgoodies.com - A source for Java-based tools

IBM Java Tutorials - A series of Java tutorials hosted by IBM's DeveloperWorks site.

Java Tutorials and FAQs - Just what it says.

Java Tutorial home page - Straight from Sun Microsystems

An Introduction to Swing - A nice introductory look at Swing, the Java GUI toolkit.

Eclipse - The homepage for the Eclipse platform project.  You can find lots good stuff here -- Code samples, tutorials, plug-ins, etc.

Eclipse Plug-ins - As the name indicates, this site tracks the 200+ plug-ins available for the Eclipse platform.  Some cool stuff here!

Java Certification - Sun Microsystem's Java certification page -- Everything you want to know about getting Java-certified.  Well, with Sun, anyway.

Cryptography and Security - A collection of links. A little dry and academic but these were collected by Ronald Rivest, the 'R' in RSA encryption so they're probably pretty definitive.

Cryptography - Another collection of links, including a more in-depth explanation about the workings of public-key encryption.

GNUPG - The home page of the GNU Privacy Guard software package - free, open-source public-key encryption software.

Security and Encryption Links - Another set of links to crypto and security resources.

Cryptogram - An electronic newsletter, put out by Bruce Schneier, one of the major 'go-to' guys when it comes to security and cryptography. Very readable and you can subscribe for free.

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.

NetBeans home - Home of the NetBeans project, a free Java IDE.

Out-Of-The-Box - From EJB Solutions, this package installs, tests and configures over fifty open source software packages for a complete Java development environment.  The Linux Community Edition is free but even the Enterprise Edition is less than sixty bucks so it's worth a look in any case.


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.

CPUniverse - If you were thinking of going into contracting or consulting, this is a great site. Affiliated with Contract Professional magazine (not a free subscription but well worth the cost) this site has tips on the hottest skill areas, what it's like to work in different parts of the country and even how to negotiate a contract and handle your tax situation. There's even a free weekly e-mail newsletter.

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)

Samizdat Press - A site "devoted to the free distribution of books, lecture notes and software." Mostly techy stuff but definitely worth browsing.

Online References

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

Google - THE best search engine out there for the technically inclined. 

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

Just for Fun

Ubersoft - A funny comic strip about a mythical software/OS vendor located somewhere in the Pacific Northwest....

User Friendly - Yet another comic strip that looks at the funny side of computing.

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'.

The Voice Actor Page - Want to know who does the voice of Larry 3000 on Time Squad?  Find the answer to this and many more questions about the men and women who do the talking for your favorite cartoon characters.  Search alphabetically by show title or actor name.  (By the way, Larry is voiced by none other than Mark Hamill.) 

Villian Supplies - Planning an evil scheme to take over the world, but need parts for your death ray?  This hilarious site has entries for everything from henchman to hidden volcano lairs.

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.

The Invisible Library - Dedicated to books that don't exist but should.

Movie-a-Minute - Hilarious summaries of movie plots. Example from Return of the Jedi:
Darth Vader
Luke, come to the dark side.
Luke
No.
Darth Vader
Your goodness has redeemed me. Die, emperor scum.
Brunching Shuttlecocks - Words cannot adequately describe this site.

 
Notes Study Guides and Misc.
Source Code/Solutions
 

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