(Note: This article is adapted from Jay’s new book, MySQL Weekend Crash Course look for it at a store near you. A book store! -Ed.)
MySQL has become the database of choice for many Web developers over the last few years and for good reason. It’s fast, free, easy to use, and has great community support.
But many experienced developers refused to touch MySQL because, they complained, the product didn’t implement features that were absolutely critical in an SQL server. MySQL’s most egregious omission, according to some, was its lack of transaction support. But thanks to recent developments in MySQL land, that’s no longer the case.
When it first hit the cyber-street, MySQL offered only one table type for data storage, the ISAM table now upgraded to the MyISAM type for all recent versions of MySQL. But MyISAM tables were limited. Very limited.
Then the folks from Sleepycat Software came into the picture. Sleepycat creates and sells a database storage engine which is used mostly with embedded devices. The storage engine comes with an API that allows developers to integrate Sleepycat’s data storage software into their products. And that’s just what the folks at MySQL did, they integrated the Berkeley DB (or BDB) table from Sleepycat. This was the first transactional table type included available to MySQL users.
Berkeley DB tables were followed shortly by two other transactional table types: InnoDB and Gemini. Gemini tables are adopted from another embedded storage mechanism; this one from NuSphere, a Progress Software property. InnoDB tables were designed specifically for MySQL.
But we’re getting ahead of ourselves here. Before we take a closer look at each of these different options, we need to start at square one: Why you want transaction support in the first place.
Continue Reading “Manage Transactions in MySQL – Lesson 1″ »
Digital cameras have become close to ubiquitous. They’ve gotten easier to use, they continue to come down in price, and they’ve grown to be more powerful than ever — we can capture 10 or 12 megapixel images using a device no bigger than a pack of cigarettes. Storage is faster and cheaper, too — both the memory cards within the cameras and the hard drives we use to store our images. As a result, there’s little reason not to use the highest quality settings your camera affords. Shooting at higher resolutions and bit depths gives you an advantage, because it lets you do more with your images once they’re on your computer.
Enter tools like Photoshop Lightroom, an image editor that’s made for processing high-quality RAW and JPG images and getting them web-ready in little more than an instant. Lightroom is Adobe’s version of Photoshop for the photographer on the go, and the software (and other apps like it, such as Apple’s Aperture) have taken off among bloggers, Flickrers and others who want to post their work quickly but still have it look professional, polished and stunning.
Lightroom 2.0, the latest release, has new features like better file browsing, more filters, a new graduated filters tool and the ability to mask and selectively edit portions of an image. But the new features also add more complexity and, as with its older sibling Photoshop, that complexity can be overwhelming at times. Powerful features and extra options can lie hidden or out of sight.
Here’s a collection of tips, tricks and slightly hidden features to help you get more out of Photoshop Lightroom 2.
Continue Reading “Get More Out of Photoshop Lightroom” »
In this tutorial, we’ll look at how Dijits work and how Dojo can help you write some powerful web applications.
Continue Reading “Get Started With Dojo” »
Welcome to Lesson 4 of our stylesheets tutorial. We’ve talked mostly about text thus far, and I think you’ll agree that it’s about time we introduce color and images into the mix. The CSS properties discussed in this lesson enable us to apply colors to elements and to place images behind elements. If you haven’t already been convinced that CSS is a good thing, you will be by the end of this lesson.
We’ll be covering these stylesheets properties:
Oh, and here’s the answer to the Bonus Question from Lesson 3.
Now, let’s dive right into color.
Continue Reading “Mulders Stylesheets Tutorial – Lesson 4″ »
Aside from making sure your code is moral, you also need to know how to cut and paste text and view source code. You got all that? OK then, let’s dig in, starting with script tags.