cs350 Applications of Databases
Sec 1: TTh 9:30-10:45 Monroe 240
Sec 2: TTh 12:30-1:45 Trinkle B6
Instructor: Dr. Ron Zacharski, Trinkle B20
gmail & googletalk: ron.zacharski
Mon/Wed/Fri: 12-1pm / TTh 11-12:20
This course provides an introduction to databases and their application. We will also examine database integration into web applications. The course covers both SQL, an industry standard database model, and more cutting edge approaches such as Facebook’s Cassandra database system, Google’s BigTable, Apache CouchDB, and Amazon’s Dynamo–all designed to handle petabytes of data.
Hands-on nature of course
Here is a nutshell description of the course.
Textbook. The textbook is Head First SQL by Lynn Beighley. This book is structured as a workbook. There are pages where you are meant to pencil in your answers. The answers are then given on the next page. So you have a choice. You can read through the chapter without fully engaging your head skipping the fill-in-the-blanks part and just reading the answers. Or you can use this book to actively learn the material. The price of the book is only $30 at Amazon so writing in the book isn’t that financially painful.
A few years back, I read How to Become a Straight-A Student: The Unconventional Strategies Real College Students Use to Score High While Studying Less by Cal Newport (his blog Study Hacks is worth checking out). In his book he recommends an approach to reading assignments where you skim the assigned reading instead of reading comprehensively since the instructor will lecture on the material. While I think this advice is great for many classes it is not an approach that will be effective in this class. When I give a reading assignment I will assume you know the material and worked through the examples in the text.
Class time. I am trying to avoid lecturing on the same material covered in the textbook. The lecturing I will do will center on the model-view-controller software pattern and Python programming. The majority of class time will be devoted to working through problems, clearing up any confusions, and working hands-on with a database. To that end you will need to bring a laptop to class.