Books/Resources on web databases?
Having focused on front end development up until now, I'm finally getting round to my ambition to delve into a back end language, probably PHP, although the frameworks for Ruby/Python seem appealing too.
I've already got a pretty decent handle on Python, and jumped into the (official) Django tutorial but got stumped pretty quick by the talk of databases. Same applied when I had a quick look at the Rails tutorial. It quickly struck me that the problem I'm having is that I know nothing about databases.
With that said, it seems I might be better off starting with PHP with a view to learning MySQL in conjunction with it. Are there any recommended books/websites/guides that offer a good solid foundation on both PHP and SQL, or failing that, a decent (comprehensive) primer on SQL?
Most of my database knowledge has come over many years of accretion, as opposed to any single book or other source. I have seen "PHP and MySQL Web Development" by Welling and Thomson mentioned in several places over the past few years, so it might be a decent place to start.
Also, it probably would not be a bad idea to search for tutorials on "database normalization", as understanding the gist of this can take you a long way toward developing good, scalable data designs.
Ok, I'll do a bit of digging. I tend to learn best by using a hands-on approach so I'll try to build something along with my learning.
I don't know if this will help, but here's what I found when I was looking a few months ago:
Dreamweaver: Creating a Data-Driven Website:
Building a Database-Driven Web Site (Adobe):
Building your first dynamic website:
I wish there was more information on dynamic website development using Dreamweaver, PHP, and (MySQL) databases out there. It doesn't seem to be covered in books or classes or YouTube videos.
I need to know how to display 16 cities and 19 vendor types (cameras, audio, food, cards, etc) on the website using Dreamweaver, PHP, and MySQL. I designed the databases using MySQL Workbench, which produces the data model (columns, Primary Keys, & secondary indexes), and using MAMP, created the databases and loaded the data into the tables.
It's the programming in the website to display the data that's tricky to me.
I forgot to add, for a data normalization book, one of the most readable I came across in my Database Admin days was "Database Design for Mere Mortals" by Michael J. Hernandez. Go for a used copy which is better priced.
Remember, every piece of data has it's place. That's what normalization is. Typically, Third Normal Form (3NF) will do fine on operational data.
Great, thanks for the links. I've never used Dreamweaver, but there's plenty of info there.
I must admit I had no idea learning databases was going to be such an involved process on the path to learning to build web apps.
The most frustrating thing is that most of the big tutorials only lightly brush databases as if it's common knowledge. It's most certainly not!
I'm at the point now where the first thing I think about in detail when starting a new project (after nailing down the essential business requirements) is the database design. If I get that part right, the rest is relatively easy (for some undefined value of "easy").
Yeah I hear you.
I'm surprised at just how little they are covered in a lot of the guides I mentioned. Does this mean that a lot of the "I learned to code and built a startup in 5 minutes with Rails" style apps have skimped on the DB front? Or is it just common knowledge among proper devs?
Or just a lot of sub-optimal sites?
Most of the stuff we'll use is not rocket science, and doesn't really need to take a long time to learn. I'm at the point now where I'm trying to learn for my day job some of the more esoteric stuff you need to optimize performance as things scale up really big and somewhat complex, and finding I still have a lot to learn.
Users Browsing this Thread
There are currently 1 users browsing this thread. (0 members and 1 guests)