Got me an iPad!

It was only a matter of time, I suppose, considering where I work. I get a discount on the gadgets, and I sold it to myself as a way to be more productive. “I can read while I work out,” I said. Of course, I could have paid a fraction of the cost of an iPad for a Kindle and done the same thing.

But there’s something about this device. I’m not one to get tech envy; I don’t have to have the latest phone or the slickest TV or anything like that. But when I saw my coworkers with their iPads, I have to admit I turned a little green.

When it first came out I couldn’t decide whether it was too big or too small. Both, I decided. Too big for your pocket, too small for serious work. Then I started seeing the things in meetings where laptops used to rule. The executives who use my work are all-iPad. At least at Apple, it’s proven to be a serious business tool. Not too big. Not too small. A portable conduit to the Infoverse, with a screen big enough to interact with all that stuff out there.

So now I own one. I’ll still be taking the laptop to meetings. Most meetings, anyway. And I did work out today, and read while doing it.

1

Class A, Baby!

Usually I blame the Chinese for every shortage or surfeit, and while they are definitely participating in this particular drought, it would be difficult to pin the blame wholly on them. Much of the problem lies closer to home.

You see, the world is running out of IP addresses. An IP address is like a computer’s phone number on the Internet. When you type muddledramblings.com, you start a complicated series of interactions (“I don’t know where that is, but I know who to ask…”) out there in the Interwebs and eventually it is resolved that what you’re looking for is computer 173.245.60.121. You get the same answer for JersSoftwareHut.com and jerryseeger.com. (That’s actually an IP owned by CloudFlare, who sends things on to the actual IP of 66.116.108.197. But that’s not what matters here…)

At the time of this writing, jer.is-a-geek.com resolves to 98.210.116.58, the IP of my home router. The actual number may change, but there will always be an ip address used up by the router. (Don’t bother going there; there’s nothing to see unless you use ssh and already have a key installed on your computer. (The key file itself is locked with a password I may have forgotten.))

Anyway, the IP address is a finite number, and so there is a limit to the total number of computers connected directly to the Internet. This is a very, very big number, but when they came up with the number they didn’t think people’s toasters (and telephones, and cars) would be connected to the Internet. (In your house, most likely your computers and other gadgets go through a router or a modem. That router has to have a unique ID, but the rest of your network uses a special range of IP’s reserved for internal networks. So, your household only eats up one of the limited supply.)

We are starting to reach the limits of the IP system, just as in the US there was a shortage of telephone numbers. (Some of the reasons we ran out of phone numbers are similar as well, as I’ll mention in a bit.)

With phone numbers they split areas into smaller chunks, and created new area codes. While there was the inconvenience of people’s area codes changing, everything still worked.

The Techno-Wizards who run the Internet saw the IP problem coming some time ago, and set out to solve it. What they came up with was IPv6 (currently we are using IPv4). The only problem: the two systems are not compatible. So now a new network based on IPv6 is being deployed, and the people on it can’t look at Web sites that have IPv4 addresses without some sort of middleman. Sucks to be one of those guys. (Muddled Ramblings is now visible on the IPv6 network thanks to CloudFlare.)

Meanwhile, at work, my team needed an IP address for one of our servers. We were advised by a coworker to just go ahead and grab a block of 256 addresses, so we’d have them if we needed them. Really? When IP addresses are running out?

Yep. It turns out that long ago, organizations who were on the ball could buy up huge blocks of IP addresses on the cheap. MIT bought a Class A* block, as did Stanford (who has given it back, I believe), the Army National Guard, IBM, HP (they have DEC’s block now, too, I think), and Apple. Each Class A block has almost 17 million IP addresses, and represents a significant chunk of all the IP addresses available.

The US military has several blocks, and the British military has some as well.

Oh, and Amateur Radio Digital Communications has a Class A, along with Prudential Securities. Ford and Daimler. Three or four pharmaceutical companies. (I imagine Merck or whoever bought one, and their competitors followed suit out of habit.)

I think you might now be getting a glimpse of a core problem. The huge blocks of IP addresses were allotted to whoever asked for them, with no requirement that the organization actually show that they needed them or would not hoard them. Does Ely Lilly have a side business as a data center?

A possibly-apocryphal story I was told the other day: Back when IPs were up for grabs, someone at Apple proposed that they snag a Class A. The powers that be decided against the move, so he got the purchase of the block wedged into the budget for something completely unrelated. It turns out to have been a pretty savvy move. Now every IP address that starts 17. belongs to Apple.

Of the companies on that list, I’d certainly say Apple has more business owning a Class A block than many of the others. Whether the US Military really needs all those huge blocks I’m not qualified to argue. But the fact remains that while we would be running out of IP addresses eventually anyway, the careless and haphazard way they were originally handed out exacerbated the problem mightily.

I mean, does the Department of Social Security in the UK really need 16.7 million IP addresses? Really?

* The term ‘Class A’ is a little out of date, but reads better than ‘/8 block’

Note 1: I got my information here and there on the Internet, then found it all here.

Note 2: This episode contains a lot of parenthetical comments, part of my crusade to address the global overabundance of parentheses. I encourage you to use a few extras as well, until supply is back in balance with demand. (As usual, I blame the Chinese for the surfeit.)

The Smart Phone that’s (Almost) Smart Enough

I’m told a lot of people were disappointed by the announcement of the iPhone 4S, and I guess I can see why. The hardware sports a much faster processor, but it’s not 4G! My current 3G phone is plenty fast enough for what I do, and that has included tethering it to my computer for Web access where there’s no WiFi. So, 4G doesn’t really seem that important to me.

Tethering the phone to my computer, now that’s a big deal, and something that iPhones can’t (or at least couldn’t) do without cracking them first. So I don’t currently have an iPhone.

The 4S is the one that finally has me tempted, however. To understand why, let me tell you what I wish my current smart phone could do.

1) I wish I could pick it up without looking, push a button, say ‘navigate home’, set it back down, and have the GPS system take me to my current address. Naturally I want this function when I’ve taken a wrong turn and I don’t want to mess with a damn phone, I just want to get out of there. I don’t have any spare attention to work through menus or wait while the phone processes ‘navigate’ and I can then tell it my address (which includes a street name that the voice recognition never gets right).

2) Again I’m driving. I want to pick up the phone, say, “I’m in traffic” and have the phone notify my boss that I’m running late, and send a message to anyone I might have an appointment with in the next 30 minutes. This would lower my stress immeasurably and remove a temptation (which I never succumb to) to make a phone call while driving.

Enter Siri, your humble personal assistant, and the real thing that’s exciting about the 4S.

Here’s a story an Apple board member told today at Steve’s memorial service. He related that on the day Steve came before the board to resign as CEO, he stuck around for the rest of the meeting. It was the day Siri was demonstrated to the board, and after a few minutes Steve said “let me see that thing.” The presenter hesitated, saying the phone had been calibrated to his voice, but really he knew that Steve was going to throw something unexpected at the device to see how it handled it. You never said no to Steve at a time like that. Steve started by asking the phone a couple of typical questions, then said, “Are you a man or a woman?”

Siri responded, “I have not been assigned a gender.” Steve, I believe, was pleased.

Al Gore, also a board member, told another Siri story. Al’s theme was that people genuinely love Apple’s products (there is, apparently, neurological evidence supporting this). He pointed out, however, that technology really doesn’t love you back. To illustrate the point he told of a friend (daughter, maybe? I’m a bit sketchy on the specifics) who asked Siri, “do you love me?”

Siri said, “I respect you.”

Oh, yeah, you can also say “Siri, text Katherine and say I’ll be late,” and it will. “Katherine says no problem,” Siri might say a few minutes later. Not as fun, but a lot more useful. I’m confident that with a little fiddling Siri can actually do my two use-cases above.

If Siri is as good as it seems, it will be remembered long after people stop putting ‘i’ at the front of everything. Our robot overlords will remember Siri as a turning point. It is the next user interface, the hands-free, eyes-free, give-me-what-I-need-without-interrupting-my-current-task interface. The one from Star Trek and Galaxy Quest, only, unlike in the latter, anyone can talk to it.

Siri says, “I am your humble personal assistant.”

The Rise and Fall of Adobe Flash

A long, long time ago, I wanted to make lava lamp buttons for my Web site. I wanted the shape of the lava blobs to be random and mathematically controlled, and it had to be done with vector graphics – animated gifs would have been huge to provide something that even remotely felt random, and back in those days most people connected with dialup modems.

I searched high and low for a vector animation tool and couldn’t find one. There was Macromedia Director, which I used extensively back then, which put out files for Web play in a format called Shockwave, but it wasn’t a true vector-based program. Not the right tool for lava lamp buttons, that was for sure. I’d started playing with a java applet to draw my buttons, but it seemed like vector animation was something the Web really needed. I mentioned this to a friend of mine, and he said, “Oh I know some guys with the tool you’re looking for.” At the time it was called FutureSplash.

I mentioned FutureSplash to my boss. It was going to be huge, I predicted. His response: “Maybe we should buy them.” (Ah, those dot-com boom days, how I miss them.) Three days later Macromedia announced that they had bought FutureSplash (for a lot more than we could have paid) and contracted the name to Flash.

The rest is history — until the present.

There was even a time when I imagined that a lot of the Web would end up as Flash. Or at least it should. Flash had a lot of things right that HTML had managed to screw up. You could do a lot more, and with Flash the Web experience began to approach the quality of experience people had in other parts of their computing lives.

Macromedia and later Adobe seemed to go out of their way to prevent Flash from taking over the Web. Creating Flash became ever more complex and ever more expensive. Nowhere was the simple “baby Flash” that Joe Amateur could use to build a nice site without first getting extensive training and shelling out a few hundred bucks for tools.

Meanwhile, Flash designers didn’t help in those early years, either. So much Flash became “look what I can do” rather than “look how I can make your visit to my Web site better” that Jane Surfer started resenting Flash. “I waited 60 seconds to download this?” A good example of that sort of waste is at the top of this page, in fact. There are a couple of fun things in the banner, but they don’t enhance the Muddled Experience very much.

Now, the world is shifting again. If you’re reading this site from your iPad, you don’t see the banner at all. No Flash in iOS. This is something the other tablet manufacturers have made a big deal of—but maybe not for very much longer. Microsoft’s next tablet OS won’t support Flash, either.

HTML, the platform I get paid to dislike, is becoming HTML, the platform I get paid to deal with. HTML5, CSS3, full SVG support, and robust JavaScript libraries make possible just about everything Flash can do, without Flash. That’s a lot of things to learn and manage to get a job done, however. Before, a designer could just master Flash and be confident that their work would look right wherever the Flash plugin was installed.

What’s needed is a tool like Flash that, after you’re done designing, outputs your masterpiece in Web-standard format, with HTML, CSS, and JavaScript. When something like that comes out, the handwriting will be on the wall for Flash.

And here it is. Adobe, makers of Flash, have announced Edge, the animation tool that will eventually replace Flash. It looks pretty good. It doesn’t do anything remotely close to what Flash does (no mention of audio that I’ve found, for instance, so my banner would have to forego the theme song, and interactivity will have to be handled outside the tool as well, as far as my first glance tells me), but it does a great deal, and when you’re done the product will work in all modern browsers, including mobile ones. Adobe has applied their long, long experience making animation tools to make the user interface slick and clean (though you will want a really big monitor).

Flash will be around a long, long time yet; it still lets a developer build Web-based user interfaces that would be a pain in the butt to create from HTML and the rest of the alphabet soup. That gap is narrowing, however, and as Edge gains in features (and, alas, complexity), the marginalization of Flash will accelerate. I’m impressed that Adobe said, “If Flash dies, we’ll be the ones to kill it.” They really are the right people for the job. Now all we need is “baby Edge.”

Seven? Really?

A few days ago the Firefox team let forth a new major release. 7.0.1. Seven. That’s a lot of progress since earlier this year when they floated Firefox 4.

Most software companies would have labeled this release 4.3. The Firefox team has eschewed the first dot and has decided to make any release with a feature change a new major release. There is no n.1; the first decimal digit is entirely vestigial. There was no 4.1. There was no 5.1 or 6.1 There will be no 7.1, just 7.0.1. This might sound stupid, unless you have Inside Information. Which I have, thanks to Wikipedia.

The Internet Explorer team at Microsoft, sworn rivals of Firefox, are nonetheless ok guys who want to make this whole Web thing work. Back in the day when the Firefox team kicked the ass of the web world and released a browser that not only defined standards but provided the tools to help Web developers code to those standards, team FF were the guys to beat. On the release of FF3, the boys at Microsoft sent the team a cake. Firefox 4 was similarly honored. And FF5. And so on.

And now we see the real reason behind the accelerated numbering. Each major release gets a cake. If I was in charge, there’d be a new major version every Thursday.

* The firefox team joked about sending a cake to Microsoft to honor IE 8 (or 7 or 9 and you shouldn’t ask me to remember shit like that), but they would send the cake along with the recipe. Open-source cake. But (as far as history records) they didn’t. Would’a been funny. There’s talk and there’s action, and seriously you don’t want to be on the losing side of that with Microsoft.

3

Wore My Black Turtleneck Today

It was my quiet way of marking the passing of a great man.

Ask yourself this: at the company where you work, would they offer grief counseling if your former CEO died? You’ve probably read plenty about Steve Jobs’ accomplishments in the last 24. I hesitate to add to that, but I think a lot of pundits and journalists are missing the mark on what made Steve great.

Steve didn’t invent personal computers. He didn’t invent the Graphical User Interface. He didn’t invent smart phones or tablet computers or mp3 players. His genius was making all those things useful. He’s been called a visionary, and I’m not going to argue that, but his vision was “If this stuff was intuitive to use, it would be a hell of a lot better. And I can fix that.” Macintosh was “the computer for the rest of us.” It was the first personal computer with a GUI, with point-and-click and drag-and-drop, the first computer that made an effort to make tasks you accomplish with technology more similar to things you do in the physical world.

He stole that idea (with permission) from Xerox. Xerox had, to paraphrase some pundit whose name I can’t recall, spent huge amounts of money to see the future. Then they gave Steve a tour of their facility, and he went and made their ideas useful. Steve himself has regrets about that fateful day; he was so blown away by the GUI that he didn’t appreciate the network and the new approach to programming Xerox had developed.

Xerox gave Steve Jobs a peek at the future of computing, and he was just the guy to take that glimpse and revolutionize the way humans and machines interacted, and just the guy to bend a successful company to his vision.

Almost immediately after the Mac was introduced, Steve was wedged out of Apple. The two events were probably related; to say that Steve was brutal on the development team would be an understatement (“Insanely Great” was his mantra; his unwillingness to compromise on the little details his curse), and he was neglecting the very successful Apple II. But the Apple II was the past. Computing the way it used to be done. Mac was a world-changer. Steve knew that. The board of directors wasn’t so sure.

After his departure Apple continued to refine and improve on his vision, and try with increasing futility to protect those inventions from imitators. To this day, Apple is ready to throw down a lawsuit at a moment’s notice, but the biggie, the one that got away, was the one against Microsoft for copying the windowed operating system. Losing that one almost killed Apple.

Then Steve came back. FiRST step: quit refining the OS and overhaul it. The competition was improving quickly. Next step: follow the power. The computing power, I mean, which was moving into smaller and smaller packages. I was pretty excited about Mac OS X, but I was dead stoked when I heard the phrase “A thousand songs in your pocket.” I bought one of those first iPods, and on airplanes and in bars people would ask me about it. The thing was, in a word, awesome. (“Insanely Great” has long been retired. The phrase is kind of like the Great Wall in China, I think – much more fun for people who don’t remember the cost.)

I’m pretty sure that wasn’t the first digital music player, but when it came out, something fundamental changed. This was the first player that was useful, that carried enough music, that you could fill up almost thoughtlessly, that was simple to use, often without looking. All the details were right, the little things that others compromised on. That was Steve’s genius. Do it right. He had the unwavering belief that he knew what right was, even if no one else did. Do it right, and people will agree with you in retrospect. I cringed when Apple got into the phone business. Don’t they know what a cutthroat, small-margin business that is? They did it right, and I stand corrected (provisionally).

I think this is why I enjoy working at Apple so much. Most of you out there will never see the fruits of my labors (except perhaps as a microscopic price reduction in Apple products), but always I strive to put that little bit of extra rightness into everything I make. It’s noticed here. The spirit of Steve, his uncompromising attitude, is still alive.

God: Welcome, Steve. Did you enjoy the heavenly choir?
Steve: They were awesome! Really stirring. But…
God: But what?
Steve: What if everyone could hear their own music? I mean, not music they wrote, but music that was perfect for them, right at that moment.
God: That’s kind of what we do…
Steve: Let me handle this.

4

Mmm… Honey

I just installed a honey pot on this site. The idea of a honey pot (or honey trap) is to create a tempting target that attracts wrongdoers, but once they put their hand in the honey pot they leave sticky fingerprints everywhere they go.

In Internet terms, the honey is a seemingly-innocent email address placed on a Web site, invisible to humans but easy for robots to find. When the spam harvesters scrape the email address off the site and use it, both the harvester and the spammer are caught and blacklisted, which reduces their ability to run robots and get their mail through.

The more people who participate, the more trouble spammers have spotting the honey pots. How can you help? Even if you don’t have control of your site or run a blog through one of the major services, you can pitch in. Go to Project Honey Pot and sign up. You can provide invisible-to-humans links to honey pots on other sites, if nothing else, and it doesn’t cost you diddley-doo.

If you click on the “swag” link in the header, you will see that they could also use a graphic designer. I imagine a spam-bear with his head stuck in a honey pot. How you communicate that it’s a spam-bear and not an ordinary bear I leave as an exercise for the visually talented.

Once Project Honey Pot compiles its list of villains and ne’er-do-wells, what happens next? Many major services use the list, and I also use a program called Bad Behavior which blocks blacklisted bots and spammers from reaching my site. Recently I added another layer called CloudFlare which is awesome enough for me to devote a separate episode to it. So, you have that to look forward to.

In the meantime, I encourage you to join the crusade to make life more difficult for those who want to use the Internet for evil.

1

Impressions of Lion

So just to be clear, even though I work for Apple I have no special access to the plans of the hardware and OS guys. If I did have access, I wouldn’t be able to post speculations like these. All this is the same guesswork you can do if you stop and look at your operating system as it evolves.

Last night I installed the latest Mac operating system (‘Lion’) on my work machine. We’ll see how that goes before I put it on anything more important. A couple of things struck me immediately, however, that I think may be indicators of where Apple is heading.

1) No scroll bars. Well, barely. There’s something scrollbar-like that appears when you move stuff around, but there’s a fundamental shift in the UI going on here. In the past you worked the thumb on the scrollbar to move the content in its window. When you worked the scroll wheel on your mouse, you were in your mind moving the scrollbar thumb. Now, in your head you grab the content of the window and move it around – which goes in the opposite direction as the scroller thumb. So the wheel on your mouse works ‘backwards’ in Lion; before you were moving the scroll thumb down, now you’re moving the content down, which moves the thumb up.

Opinion: I’m ok with this overall, but there are times when there is no indication that you can scroll. There are also cases where there’s no indication that the corner of a window can be dragged to resize the window. I’m not comfortable with designs that presuppose you know stuff.

2) Bold prediction: the magic mouse is Apple’s last major mouse. It’s a mouse/touchpad hybrid, bringing people closer to the touchpad replacement. The company that brought the mouse to the consumer will also be the first to take it away. Interestingly, the company that only put one button on its mouse will be hanging its hat on a very complicated set of finger gestures and combinations. They can do a hell of a lot, and they’re intuitive, if you already know them. (I just accidentally discovered the gesture for switching tabs in my browser — only, shit! It’s not switching tabs, it’s like using the back arrow. And there’s a bug! I almost lost this entire episode!)

Opinion: with the iPad and whatnot, multiple-finger user interfaces are here. I should have applied for a patent fifteen-plus years ago when I thought about making touch screen interfaces with actual knobs to turn and stuff like that. If I’d had this blog back then it would have shown up in the Get-Poor-Quick pages. But I didn’t, and now that invention belongs to other people. Because they built it, and I only talked about it.

Darn that Science

I’m in a bar right now, trying to get the blog mojo working. On the TV I just saw a commercial that featured some sort of record-breaking car jump. I just couldn’t get excited.

Back in the ’70s the guys doing jumps just put a big motor in their cars, set up a ramp, and took a shot at the other side. Sure there were some estimates of how far they would fly if they were going a certain speed at the top of the ramp, but there was still a seat-of-the-pants feel to it. You started small, you jumped farther and farther, and learned to land on your wheels.

Now, I see a specially-modified car sail through the air and all I see is math. The driver has only to hit the ramp at the right speed and keep level and Bob’s your uncle. [This has always been the case, but ‘the right speed’ was not as exactly-known as it is now, nor was it so easy to hit that speed back in the day. I contend. And now that I think of it, some ramps back then might have doomed the driver no matter the speed.]

Daredeviling, like tennis, has suffered from the advance of technology.

WWEKD?

2

Say What?

My hearing isn’t what it used to be. In ideal circumstances it’s still plenty good enough; I tend to like the TV volume a bit lower than my sweetie, for instance.

Add background noise and that changes in a hurry. My ability to filter noise from signal was never that good, I think (recalling people having conversations with bursts of static on their CB radios), but thirty-five years of rock and roll and twenty-five years of highway driving with the top down have taken their toll. Now when my sweetie is by the sink with the tap running I’m lucky if I can tell she’s speaking at all. Forget about understanding her words.

Recently I was on an airplane and every time I tried to speak with the attendant I had to repeat myself. I could understand her, but she couldn’t understand me. The difference? I was wearing noise-canceling headphones. Even with the big cans over my ears I could hear her much more easily, and so naturally I responded in a lower voice than necessary. A nice reversal of the person-with-headpohones-on-talking-loudly joke.

If I wore those big-ass headphones around the house, I’d probably miss fewer things that my sweetie said. I’d hear more while driving as well, though wearing those things would undoubtedly get me pulled over.

What I need, then, are nice little inserts like a hearing aid, but while hearing aids amplify the signal, these would simply reduce the noise. My hearing without noise is plenty good enough, thank you.

I mentioned in an episode a while back that if I ran an airline, I’d have all my on-aircraft personnel fitted for items like this, both for their health and for more efficient service on-plane. So this isn’t a brand-spanking-new idea. I just can’t find a product that actually does this. I don’t even think this is a get-poor-quick scheme. I suspect the pattern of my hearing degradation is pretty dang typical, and all the technology already exists to make these things. The market could potentially be huge.

So, someone make me my earplugs already!

2

Carts and Horses

We discovered the other night that the battery backup for our digital phone service is not working. I’d fiddled with it, without success, so I resorted to reading the instructions. Crazy, huh?

The last instruction was to unplug the unit while doing all the previous steps. That was followed by: “If you do not have a dial tone, please call us at…”

Nice.

3

Party Rats

I am typing this with plastic rats on my fingers. They click together now and then, but they do add a certain special something to the night-blogging experience, just like the packaging said they would.

Actually, the package said they would be “perfect for raves and night blogging.” There are few things that can claim to be even tolerable in both those situations, but here we have the Finger Rats. There are five rats, five colors, each beaming a different color of light out its nose.

I don’t know how I ever got by without them.

Party Rats

Party Rats in Action

6

Drupal and WordPress

There is a lot of talk at Drupalcon about how they stack up against the competition. We are in the weeding-out phase of the Web Content Management System market, when most of the myriad contenders will fall by the wayside. Those who make a living building and using Drupal naturally want their platform to be among the survivors.

Drupal, according to their own assessment, powers about 1% of the Work Wide Web. The Drupalistas estimate that WordPress accounts for just north of 8%. There is another system called Joomla that is roughly even with Drupal. These three look to be the survivors in the Great-Web-site-in-a-box sweepstakes.

Honestly, I was a little surprised that Drupal considered WordPress to be a competitor. Sure, they both want to be used for more and more of the Web, but does Lego consider Tonka to be a competitor? Here’s the deal: Drupal says WordPress is the most popular Content Management System (CMS). I say WordPress is not a CMS at all.

That’s not to say WordPress isn’t a fine tool, in fact, this blog uses WordPress. But would I use WordPress for my current paying gig? No. Honestly I dread the day when WordPress becomes a big, fancy CMS like Drupal. That’s not what it’s for. There is a reason WordPress is the big dog, and it’s not because you can build sophisticated Web applications with it, it’s because you can install WordPress, find a nice skin, and get your stuff on the Web in an attractive and intuitive way. WordPress is a publishing platform, and a pretty good one at that.

Drupal, on the other hand, begins to shine at the next level up in terms of sophistication. It is the Lego to WordPress’ Tonka. There is considerably more design up front, and much critical functionality must be added as external modules that don’t come with the main (“core”) code. (Some of these things will be added to core in Drupal 7.) Maintenance of a Drupal site is more labor-intensive as well, as updating the parts is more complicated than with WordPress.

In exchange for the added complexity, you get a lot more flexibility. That’s not to say that WordPress can’t be used to make sophisticated Web sites, but generally speaking WordPress is optimized in putting a defined sort of information (like blog posts) on the screen in a very flexible way. There are hundreds of ways to add other pre-defined data types (for instance, there are shopping cart plugins), and all that works really well and most people are going to be happy with that.

Drupal is the tool you use when the data types in WordPress won’t do it for you. In Drupal you are building a Web application, where with WordPress you are using a Web application. Step one in building a site with Drupal is designing the data and the relationships between the various data types. Drupal allows you to design your data without having to design your database. Some of the ways Drupal implements your data design are pretty hokey, but it works. You can create pretty sophisticated data models without knowing a thing about how a database works – or even what kind of database you’re using. (In fact, you’re better off not knowing how the data is structured, because things can move unexpectedly as you tweak your design.) You are also presented with an almost dizzying set of options to decide who is allowed to see, edit, or create each little piece of each data type you define.

Once you get your content types defined, then you can move on to how to get actual content into the system (handled pretty much automatically), and how to present specific subsets of your data on the screen. To get at the data one often uses views, which are built using a tool that generates (frustratingly limited) database queries and then processes the results with a gratifying set of options tailored to each data type.

Then it comes time to put stuff on the screen. To control where things go and when, there are regions, blocks, panels, panes, pages, and so forth in a nonintuitive overlapping of roles. Blocks and regions and pages are built in, but the profusion of other options is a testament to the limited way they work together. For all the flexibility of Drupal, GUI building is still clumsy, though getting better (I’m told).

At last we come to the task of making the output pretty. For this purpose Drupal uses a maze of performance-sucking php template files that are invoked using a system of names that allows one to set up the display of information at just about any level of granularity. Many of these templates go hand-in-hand with specially-named preprocessor functions that allow you to customize how data is prepared for presentation.

Drupal separated the preparation of data and the presentation of data to allow people with different skill sets to do the different tasks. The template files can be done with only a minimal amount of php, while the preprocessors are where the real logic is implemented, unencumbered by HTML and CSS. This also has the effect of putting the risky code out of reach of those who aren’t expert in Web security. All good things.

I used the phrase “performance-sucking” above, and I meant it. The designers of Drupal made a conscious decision to emphasize good architecture and flexibility over fast execution. This was the same decision Google faced a few years back, as they developed ever-more-sophisticated pattern matching algorithms. While competitors kept things simple to reduce server load, the folks at Google decided that the cost of processing cycles and storage was tending toward free, and chose to emphasize the quality of the information they provided instead. Similarly, Drupal has decided to make things in a structurally sound way and spend the processor cycles and disk reads necessary to support that.

Drupal 7 will be even slower, but will be more scalable (they say). What that means is that although the software is not as fast as it could be, its behavior is predictable as demand increases, and it is easer to scale up your site as things go huge. Good structure pays greater and greater dividends as things get bigger.

All that stuff Drupal has makes it a more complicated to get up and running, and for a simple site (or even one of moderate complexity but with a relatively straightforward data model), WordPress is going to get you to the promised land with a lot less pain.

I am led to believe that the WordPress community feels it needs to compete with Drupal just as much as Drupal thinks they need to compete with WordPress. Toward this end WordPress 3.0 will have new features that answer some of Drupal’s flexibility advantages. All I can say is “PLEASE, WordPress, don’t try to be everything Drupal is.” That WordPress is not everything Drupal is constitutes its greatest advantage. Stay with your market, WordPress!

Drupalcon Day 1 – notes from the floor

I’m working on a project right now that is based on a Web development platform called Drupal. I have a long editorial episode building in my head concerning Drupal and competing platforms for Web development, but today I’m going to write this episode assuming you already know what Drupal is and how it works. (This is also how the documentation for Drupal is written.)

Once I arrived and registered, I looked over the program to decide which seminars I would attend. I looked down the list and realized I already knew what most of the seminars were discussing. Some of the seminars, I could have been the presenter. I realized that the cross-section of stuff I know about Drupal probably qualifies me as a Drupal expert now.

Still, there’s always new stuff to learn. I decided to dedicate my day to security. There are a lot of ways to break a Web site these days.

Before the security sessions there was the keynote address by the guy who invented Drupal in his dorm room in Antwerp ten years ago. He is still holder of the vision for the project, and hearing him speak I have to say that the project is in good hands. He knows there are challenges ahead, and he was an excellent cheerleader for open source, and for encouraging everyone who uses Drupal to give back to the community. Currently they are trying to release the next major upgrade, something they absolutely must have, and soon (more on that in a bit). “There are 114 critical bugs to fix,” he said (or something like this), “If we break into teams right now we can have them fixed by the end of the day. So, we’re locking the doors…”

There was a laugh, but his point was a good one. Rather than wait eagerly for the release, the Drupal community should be actively making it happen.

He also mentioned that 1% of the Web is now powered by Drupal. That’s pretty dang impressive (until you compare it to WordPress). It’s difficult to call his methods for estimating that 1% as scientific, but whatever that number is, I can tell you that it could be a lot higher except for one thing: This software induces more WTF? moments than any other development platform I’ve ever used. Novices who come to the platform install the software, stare blankly at the screen, click things, and give up and move on to a more intuitive product. It would be impossible to measure how many adoptions they have lost because of that initial Now What? moment, but it’s significant I promise you.

On a related note, employment opportunities for Drupal experts is on the rise. People who have worked their way through the WTF to where they can be productive with the platform are in demand. I can now navigate and decode the documentation (I think some of the writers of the documentation are so steeped in the Drupal Way that they don’t even realize they are writing in code), and that puts me in good position to find work. When the out-of-box experience is improved (a major thrust of Drupal 7), my “expert” status will be less lucrative.

Speaking of the Drupal Way: At the risk of being overly general, these guys are more sensitive than even Mac people when it comes to hearing criticism about their platform. Also, there were easily more Macs in evidence than Windows laptops. Perhaps that is because we are on Apple’s home turf here, but I think that Mac, with its handy Unix underpinnings, is finding a sweet spot in the Web design world, with cachet among the designers as well as unix (the os of the Web) for the übergeeks. (The only apple I brought to the convention, I ate. I have Ol’ Pokey charging up, however, to see if it’s game for one last field trip before its ten-year-old video system gives up entirely.)

Back to the keynote: Mr. Buytaert, while talking about the future of Drupal, mentioned that as they got bigger, there would be people for whom using Drupal would be a day job! They wouldn’t be using it just for the love of it, they would think of it as just another tool to get their job done. Mr. Buytaert, welcome to 2008. Those people are now your market, if you want to meet your stated goals for growth.

One thing I’ll say for the guy, he really seems driven by the simple desire to make Drupal the best. He’s probably wealthy now, but commercial success just doesn’t seem to be what motivates him. He wants to make his baby better and better and world domination is simply a way to measure how well he’s doing. It’s refreshing to hear from someone like that.

As for the security sessions, I think this best sums it up (this link was given in one of the seminars):

xkcd 327

A note of explanation for the less-geeky (which you can skip): When a programmer is careless, people can put a string in any field on a site and cause database commands to be executed. In the comic, the name “Robert’); DROP TABLE Students;–” will cause the database the table named ‘Students’, obliterating their records. The ‘); tells the database that the command to add the name is finished, then the rest of the text is treated as a new command. Aren’t you glad you asked?

I also learned just what a risk it is to link to an image the way I just did. The owner of that site can now attack my blog. Ah, the irony.

I did learn some useful stuff in the seminars, and just in time, too. I’m really glad I went.

1

Making Fun of Microsoft

While Apple ads are smug and annoying, Microsoft ads are downright fun. There’s one in heavy rotation right now, featuring a young woman sitting with her laptop at a French sidewalk cafe, talking (in French) about how Microsoft incorporated her revolutionary idea into their new operating system. What was this great innovation that apparently never occurred to the boys in Redmond before?

She thought it would be great if her computer didn’t crash so often.

Wow! Hold the phone, there, Sparky! Not Crashing? That’s some out-of-the-box thinking right there! At least, it’s innovative thinking for Microsoft, apparently.

I suppose if it takes some French chick to point that out for them, well, I’m glad she took the time. My copy of Windows 7 arrived two days ago and is now installed on my Mac. Hasn’t crashed once in the half-hour I’ve run it.