Sunday, March 22, 2009

ADODB Working and Interfaces

First and foremost, I was finally able to get ADODB working. Now I can connect to my database using adodb and access my database tables using adodb ActiveRecord. This is important because it abstracts away the messy and database-specific SQL code and allows me to use object-oriented programing. I've run multiple test scripts that add, edit, and remove items from tables using ActiveRecord, and they are all functioning properly.

After getting over this hump, I shifted
my focus to the other side of things...the interface. The first step in interface design is to layout a skeleton design for the critical web pages users will see. Thus far I've laid out the interface for the user dashboard and salon (manager) dashboard. In designing these interfaces, I came up with the idea of having a Facebook-style "newsfeed" for salons and users that will write relevant updates and news to the feed by pulling information out of the database based on date. I believe this feature will give my users a more rich, personalized experience. Also, the top navigation bar will feature mouse-over pull down menus so that the interface will be clean and minimal until a user seeks more information. Otherwise the interface will look cluttered. The other major interfaces will be the scheduling interface for the salon and for the user. For the salon, I will use the Google Calendars interface as well as their database functionality to present the full spectrum of calendar viewing and editing. For user scheduling, I will have a form that asks for the user to specify the neighborhood, date, time, service, and salon/stylist if applicable when searching for an appointment. I will display the results with my own interface rather than Google Calendars for this part. It will simply show the available salon(s) and the time(s) available at and near the requested time. One of the main purposes of designing the interfaces was to make sure that my database would be capturing all of the information my interface would need. Once I designed these skeleton interfaces, I realized I would need a "Promotions" table that kept track of new deals and sales salons decide to offer. This information would be needed for the news feed, which could then pull these deals out of the database based on relevance (location, dates, etc) and serve them to users on the news feed. Thus, I created a new table in my salonbook database to support this information.

2 comments:

  1. Josh have you done anything with the calendar aspect yet?

    ReplyDelete
  2. Josh, thought of your project when I read this: http://www.readwriteweb.com/archives/setster_lets_clients_pick_their_own_appointment_ti.php

    ReplyDelete