Wednesday, April 29, 2009

The Internet's Explorer

And so, here we are. The final browser we will be discussing is Microsoft's Internet Explorer.

It is hard to imagine, now, but there was a time before "IE" owned the world. Back then it was difficult to get on the internet, and there wasn't much to recommend trying, to be honest. You had to install a host of plug-in's, add-on's and doo-dad's and then get yourself a program called a "browser" to see and do anything. When Netscape took off, and everyone saw the future, Microsoft went after Spyglass to get into the game.

Spyglass was quickly rewritten and re-released as Internet Explorer and… nobody cared. I was working for Microsoft at the time and many of us were using Netscape back then, a browser we had actually paid for. People bought software, back then. Nobody knew any different.

But just as in the Old Testament, IE begat IE2 and IE3 and things got better with each release. There were point-releases, too, to fix a few bugs and we all got used to the Browser Wars, just as we did the battles for tennis shoes, cola drinks and long distance service.

These last two paragraphs are, to me, the heart of the old, dead, Microsoft-as-monopoly lawsuit. Yeah, Microsoft gave away their Web browser back then, and they still do. But nobody gave a damn, until it became a good Web browser.

IE (almost nobody actually says Internet Explorer if they can avoid it) became the browser to have on both PCs and Macintosh computers about this time. They were there at the beginning of CSS support and ultimately got more right than Netscape had at the time. Along the way they were very ambitious with new versions. IE4 became IE5 and then IE5.5 (where things stopped, on the Mac) and IE6. Each one better than the last, with more features and more features that worked better than anyone else had at the time.

But when Netscape crumbled, things ground to a halt in IE development. This is where a lot of us lost the respect and goodwill that Microsoft had built-up during the Browser Wars. Okay, things didn't grind to a halt, but they sure as Hell slowed down a ton. If you look at development since Microsoft bought Spyglass, the release of Windows95 and subsequent releases, we should be on about Internet Explorer 23, by now. That we went so many years with Internet Explorer 6 did seem like there were tumbleweeds blowing through the IE part of the Microsoft campus.

And then came the big fix. Microsoft was shamed by Firefox, Safari, Opera and the Web standards community into resuming development of good browsers. But they were about to change the way the world's favorite browser worked and acted and that would mean some sites might break. A lot of sites. Hundreds of thousands of sites. The Microsoft answer at first was that we who had been doing things right all along would have to change our ways of working, to accommodate the great many lazy folks who had designed for a specific browser. For a time, it looked like the Good Guys would have to add a tricky meta tag to their pages saying, essentially, "Look, I know this tag isn't actually a part of any standard or any training that anyone has had in the fifteen years we've been doing this, but by my placing this here I am indicating that I want you to treat this page like one that's been correctly marked-up". The echoes from the Web development community are just now reaching what we used to know as the planet Pluto.

Microsoft relented, the Internet did not break, and we have all managed to get along. Their new IE8, again only for Windows PCs, is by all marks a terrific Web browser, seems to have none of the stink associated with IE7 and is much closer to worthy of its assumed market share. So, there's that.

The biggest advantage IE has in the marketplace today is that it is Good Enough for a huge percentage of people who choose Windows computers. It comes preinstalled on more laptop and desktop computers than anything else and for most people it works well enough that they are not interesting in jumping through the various hoops to get some other browser installed and start re-learning everything they know about the Web.

As they say in the government specification business, "If the minimum wasn't good enough, it wouldn't be the minimum!"

Wednesday, April 22, 2009

A Night at the Opera

A continuing theme of Opera, in my life, is that it is something I have always wanted to know more about. Relative to the general population, there is a small community of people who rave about the musical theater and the Web browser, and I have always wondered what those people knew that I did not. But, as I wander through the course of a day, careening from inspiration to distraction, from obligation to moments of quiet nothing-to-do-ness, I never seem to find the time to really experience Opera in any meaningful sense in either of its incarnations.

You are probably like me. Your life is filled with the movie of the week, and situation comedies like My Name Is Earl and game shows like Who's Got An Elbow? Throw in a special or two on how the world would look a hundred years after Man's extinction and, of course, Shark Week, and who has time for Dvorak or Wagner? And you point, you click, you get information and it all seems to be working, so why take the time and trouble to learn a new Web browser?

Well, you would do it because the experience was rewarding. It enriches you, either emotionally or productivity-wise. Maybe you have been a perfect fit for years and just never known. I was like that with Lamb Korma.

Opera was there when nobody else was, in the darkest days of Internet Explorer. Opera began in the middle 1990s as an alternative to IE, and was made available on Linux, Macintosh and Windows PCs and eventually handhelds and other mobile devices. Starting around 2000, these were all made into more or less equivalent versions, the way Dreamweaver looks and acts the same on PCs and Macs. Opera was one of the first browsers to offer a tabbed interface. But what it was most famous for was its speed, and… its advertising.

Yeah, probably the biggest reason you haven't been absorbed into the Operaverse is that for many years, development was funded in part by advertising which appeared within the otherwise free browser environment. So everyone could click on a link to your blog and there would be a photo of your kitty. And you could click on a link to your blog in Opera and there would be a photo of your kitty, and above everything on the page an ad for ibuprofen or some vacation Web site. If you sent a tiny pile of money to Opera, they would then send you back a key that would turn off the ads. But yeah, it was fast.

I feel like we all owe Opera a debt of gratitude for hanging in there, even though it never has managed to capture the imagination the way, say, Firefox has. The powers that be, behind the Opera browser, are the same minds that brought us so much of the baked-in goodness of CSS, and one of the first good CSS books, too.

Opera was always different. We didn't realize how important that alone was, back in the day. Lately, it hasn't just been different for difference sake, but innovative. Opera features a QuickFind functionality now that not only remembers what Web pages you have surfed to recently—every browser does that, now—but also remembers the content on that page. So if you are shopping for Hawaiian shirts now that the weather is nice and remember that the place you liked the most was actually in Colorado [!] you could search within Opera and find the page you visited.

Opera offers all of the standard features most people take for granted in any third-millennium browser, history, synching, search engine customization and so on, and a few that we may come to expect in the years ahead, like Mouse Gestures, where certain mouse movements will trigger certain behaviors in the browser, such as moving you forward or backward through a site.

I am really happy with Marc Cohn and Rickie Lee Jones. And I am really happy with Firefox and Safari, too. But I understand why people are impressed with Aida, too. And maybe one day I'll be one of them….

Wednesday, April 15, 2009

Apple's Safari Browser

So, we're talking Web browsers. Let's talk about Apple's….

There once was a day when your shiny new Apple Macintosh shipped with Microsoft's Internet Explorer browser. There was a day before that one when the browser you got came from Netscape. But Microsoft won the day and then sort of abandoned Internet Explorer development on the Macintosh. Microsoft famously puts little effort into the Mac world, beyond their Office suite, today, and so it was with Internet Explorer. The Mac version always lagged behind the PC version. But at least it was there.

But Apple, then Apple Computer, is always mindful of their Mac baby and didn't like the buzz that "Mac browsers aren't as good as PC browsers. So they set about remedying the situation. There seemed to be no way to interest Microsoft in committing to developing IE to the same standards the rest of the world enjoyed, so they decided, in early 2003, to go it alone. As soon as Apple announced their new browser, Microsoft announced they were abandoning IE for the Mac.

Apple's Safari is becoming a terrific Web experience. It was the first browser to pass the Acid2 tests. It featured tabbed browsing, an extension-ready interface, and was remarkably fast right out of the gate. Being primarily a Macintosh browser, development of add-on's has lagged what's available on Firefox, but just as when comparing Mac software titles to PC software titles, it's easy to notice that numbers alone do not mean quality, and easy to see that Safari has all of the important bases covered, with more gadgets and doo-dad's being released all the time. Still, there are a lot more customizations you can do to Safari than, say, Internet Explorer on the PC.

Over the years, Safari has been updated, re-thought, updated again and deployed on other platforms. There is now a Safari for Windows users, and it's scrappy enough to be earning new adherents every week. And of course Safari is the Web browser for the Apple iPhone. The iPhone version isn't quite as complete as the Windows and Mac versions, in part owing to the differences in using a machine with a mouse versus with your fingertip. But it's very good, and getting better.

The Webkit engine used to render pages in Safari is incorporated in the new Adobe CS4 suite. So, Dreamweaver's new Design View is how your pages look and work in a real browser. This allows you to see things like fly-out menues and other JavaScript tricks without having to load your page in a real browser, which saves a lot of time.

I love looking into new browsers from time to time. It's interesting to jolt your expectations from time to time about how things are supposed to work. There is a lot to like, in Safari. And I expect it will be around, and will continue to improve, for a long time to come.

Wednesday, April 8, 2009

The Browser Market

It's becoming fashionable to kick Microsoft's Internet Explorer, if you're a Web professional. There is a certain kind of pack-behavior that on some level frightens me, and there's an element of that in this. But yeah, if this was a 1930s horror movie, we would be seeing The Villagers massing with pitchforks and torches, about now.

The problem with IE6 is the same as the problem with Netscape's Navigator 4: It got too popular and then it stopped growing and evolving.

Way back in the Dark Ages of Web work, Netscape and Microsoft were locked in a brutal duel, with each one it seemed releasing new Web browsers on a more or less annual basis, about six months apart. So the Red Browser appeared with New Feature X, and then a few months later, the Blue Browser appeared, with New Feature X and New Feature Z. Lather, rinse, repeat. Oh, and throw in a few tags like <blink> and <marquee>. ::Shudder!:: See? I told you it was like a 1930's horror movie. ::Thunder and Lightning!::

So, at some point the weight of all of the "improvement" and the crush of internal politics and the tyranny of the installed base and the hassle of dealing with legacy code caused Netscape's Navigator 5 to essentially implode. And while we were waiting, Microsoft took the lead it hasn't given back since. By the time Netscape 6 came along, nobody much cared but in the mean time, a lot of people had developed internal systems that required Netscape Navigator 4, even though it was in many serious ways broken.

For years, we had to struggle with NN4 and it's peculiar set of problems. And today, the browser shoe is on the other foot. We are coming out of a time when Microsoft back-burnered support and development for Internet Explorer 6, which lived for more than five years as the browser. When it came out, it was good. It was an improvement over almost anything else available at the time. But Microsoft abandoned it, and for years we had to deal with workarounds and hacks because as bad as it was, it was the browser nine out of ten people used.

As Firefox continued to grow and improve, and as Safari continued to grow and improve, and especially with the first rumors of what was to become Google's Chrome browser, Microsoft went back to work on Internet Explorer. And feeling responsible for what they had (not) done and not wanting to "break the Web" for everyone by fixing everything all at once, they set about the task of improving Internet Explorer in stages, while disrupting the dozens of millions of Web sites built essentially for IE6 the least. And, being Microsoft, they got it wrong.

There are published standards that explain what a browser should do when it encounters, say, an H1 tag, or a Paragraph tag. Microsoft has always taken these more as suggestions, and we've ended up in a world where every other browser developer gets it right and Microsoft, with all of the market share, remember, gets it wrong. They could release a standards-compliant browser, sure. But doing so would make a lot of sites look weird if they were coded for IE6's peculiar shortcomings. So, Microsoft said, we'll create a new IE7 and teach it to look for a particular line of markup that every developer would add to their pages from now on, explaining how to work out the page design. Let me say that again: Every Web developer in the world must now revisit every Web page they have built in the last six years and, even though they had followed all of the rules, they must now include a special tag in order for their pages to render correctly. Otherwise, IE7 would act just like IE6 had for all of these years and all of their work would be for naught. Cheeky, huh?

Microsoft was finally convinced of the error of their ways, and Internet Explorer 7 looks like it will be a good browser, today. And there is evidence of an upcoming IE8, as well, with further enhanced support for the standards everyone else met years ago. But all of this has frustrated a lot of people who are shopping around for other browser options.

In the weeks ahead, we'll look over some of these and explore the plusses and minuses involved.

Wednesday, April 1, 2009

You Can't Learn It All (Today).

I think we did ourselves a disservice a few years back, with a series of How-To book titles like of Learn HTML in a Week! and Build Web Pages in 24 Hours! and so on. The gimmick here was that "everything" you would need to know was presented in little bite-sized packages.

This was well and good, but it did kind of trivialize the process. Geeze, why should we throw bags of money at you for knowing this stuff when any idjit can learn it all in a week, or in twenty-four hours?

But this really is the best way to go about learning the craft. Pick an area where you recognize you are a little weak. Maybe it's HTML, or CSS or some aspect of Dreamweaver you need work on. Okay, start there.

Then, divide and conquer. There is no way you can learn all of this stuff in a single day, but yeah, you can pick up quite a bit in twenty-four hours, if you go about the task in a systematic way.

How to decide to proceed, then, is really up to you. Maybe you will want to learn everything in the File menu, first, then move through the other menus. Maybe you will want to learn as many keyboard shortcuts as you can, first. Maybe you want to pick up everything you can regarding text, type and fonts—the words on the pages, how they get there and how they are formatted and so on.

Some chunks of Web work lend themselves to this approach quite readily. CSS in particular seems well suited to learning all of the text and graphics, first, and then the positioning stuff. It may take only a short while to get your brain around font-size: .9em; but quite a bit more mental calories to digest position: absolute;.

In just a short time you should find yourself knowing a good deal more about whatever area you were focused on. And then a marvelous thing starts to happen—you start to gain confidence in your abilities. Not only your ability to control the size of text on a page, but quickly in your ability to learn everything else you don't already know about text. And when you ultimately know all there is to know about formatting text, and move on, you start to develop that terrific Web developer swagger that drives the chicks wild. You know what I'm talking about.

You can't sit down and write a novel. But you can string a few words together and build a sentence. And you can make another sentence and another and build a paragraph, a page, a chapter and, ultimately, a whole book.

Learning to build Web pages is the same way. Start small, and make a goal of learning two-dozen HTML tags, and then move on to CSS or whatever else you need help with.

You can't really learn everything in a day. But you can learn an awful lot in just a single hour, and you can apply that to what you already know and, ultimately learn it all. Even if you make a vow to only learn a single new thing every day, at the end of a year, you'd be three hundred and sixty-five things smarter than you are, now.

Let's get started, huh?