Hotspots: Admin Pages | Turn-in Site |
Current Links: Cases Final Project Summer 2007
Just like any other class, to learn something new and interesting (and to make a good grade). This semester we were given the task to design and build a financial application in Squeak a la Quicken. "What is Squeak?" you ask. It is a version of Smalltalk, one of the first object-oriented languages, that you will either hate from the moment you start using it until the moment you get out of the class, or you will hate for the first few weeks and then become somewhat fond of it. With Squeak, you will find a great deal of power that other languages lack, as well as a rather intuitive method of programming, once you get used to it :). No matter what your final opinion of Squeak, you are stuck with it for a semester and we hope that the following pages will help you make the most of your time with the mouse.
There were seven basic milestones involved in this semester's project. Of these seven milestones only the last five were specifically intended for group completion. Our job in this project was to create a financial program in the Squeak environment.
In order to get us familiarized with the basics of squeak, M1 and M2 were individual and comparatively simple. After M2, we formed groups and then had to decide whether to redo M1 and M2 or to use one of the member's existing code. We decided to use a members' existing work.
My suggestion to all the future Squeakers in this class is: don't slack off on these first two milestones. Start them early and expect problems as you familiarize yourself with the environment. Remember that it is very easy to make major changes to the whole Squeak environment and if something seems to be wrong without any obvious cause, you may have accidentally declared something global.
Anyway, in the following pages we will attempt to guide you through some of our design and development process in the hopes that our successes and failures will aid you during your trip through the world of Squeak. The milestones for Spring 2003 are linked at the bottom of this page for your convenience.
If you want a pretty good tutorial for Squeak, go here http://coweb.cc.gatech.edu/cs2340/531.
What you came for... code to ste, er, um... 'borrow'
Final Thoughts, or perhaps just more ranting
I can't speak for the rest of my team, but I ended up liking Squeak. Don't let its quirks frustrate you, instead attempt to fix them yourself. That way you'll learn a lot and help improve Squeak for future generations. While this class doesn't emphasize team-building very much, start looking for a team early. The earlier you get a team, the better off you'll be. Anyway, the slackers tend to wait until the last minute to get a team, so you'll avoid them and possibly get a group of really good teammates. TAs are your best friends. Not only do they grade your projects, they are also quite helpful, which might surprise you after knowing the TAs in other classes. One thing that our team did that I think really helped was demoing every single milestone. You are only required to demo the last milestone, but if you demo them all, you are able to guide the TA through your program and even gloss over minor errors. On occasion, you are able to fix bugs quickly without being penalized. Another important, and often overlooked, tool is lecture attendance. Many times our lecturer spelled out solutions to common problems, as well as exams questions. Despite this, the average attendance was around 12. It really is worth going, but I doubt I will convince anyone. Finally, rejoice in the fact that this isn't cs2335.
(Editor's note: I'm not kidding about the average attendance of 12 thing, it's true. Oh, and Queries Galore!)
(Editor's note 2: See Graphs Anyone? to understand the preceding note.)
I hope you find these pages useful and I wish you good luck in your projects.
Remember, don't let yourself hate Squeak; if you do, the semester is going to be long and hard.
The Class Milestone Specifications:
Links to this Page