Ditching mySQL

As a java/OO developer first (web later), I got my start with databases by setting up a couple wordpress blogs, mostly simple UI stuff, but configuration and a few other cases got me into phpMyAdmin and MySQL. I wouldn't be surprised if this was the case for hundreds, or thousands of others. I don't -- or didn't -- mind MySQL so much because honestly it got the job done for those simple blogs and it was easy to get going. However I will say that now that I am surrounded by "production-level" projects, i.e. projects at work that affect millions of users and backends for my own mobile apps, I am extremely concerned about the performance, consistency, (over)complexity, and maintenance of my databases. I've gotten familiar with postgres, and while not fully understanding all its benefits over MySQL, it works great, feels sexy, and posts like this have pushed me to make the move.

Also, using frameworks like Ruby on Rails I feel abstracted far enough from the database level that the change really wasn't too difficult. It makes me wish I hadn't used MySQL in the first place, and started with SQLite because of its support on mobile devices, or Postgres.

Getting Started Project as a "Web Specialist"

Starting my new job as a web specialist for the BYU Law School this week.  The getting started project is as below... super stoked. Create a page using php, mysql and html where users can login or sign up and fill in forms about themselves (first name, last name, age, email address). Provide a spot for them to upload a document of type pdf, reject other types of uploads. Also, create a field that uses CKeditor to get a quick "user blurb" or description of themselves. After they are logged in, have a page in which all users are listed and linked to their profiles which will appear in a Colorbox when clicked upon. Be sure to style everything using CSS. Things you will need to know to do this:

    • How to create a form and use php post variables
    • How to upload and check uploaded documents
    • Session variables in php
    • How to create and use a correctly structured MYSQL database
    • How to use Colorbox
    • How to use CKeditor
    • How to do CSS styling

Tip: We highly recommeded thoroughly completing Lynda.com's PHP with MySQL Essential Training course to assist in preparing for the training exercise.


Dec 2011 update: See my mini content management system - still a work in progress.