R.I.P. Opera

While there had been rumors of an Apple-branded web browser for a while, Safari‘s introduction at this most recent MacWorld took a lot of people by surprise, and watching the reaction has been quite interesting. Yesterday, Opera Software (makers of the Opera webbrowser) announced that they may stop development on the Mac version of their browser.

I’d say bummer — except that every time I tried Opera on my Mac, I was severely unimpressed.

The C|Net article, however, made me raise my eyebrows quite a few times as I read it over.

Specifically, [Opera CEO] Tetzchner said that he had asked Apple whether it would be willing to license Opera either to replace KHTML, or to supplement the current Safari version, which Apple said is a stripped-down affair with a minimalist interface and limited feature set.

“We have contacted Apple and asked them if they want a third-party browser, and we’ll see what the answer is,” Tetzchner said. “They could say we want to use Opera as the core engine. If they want KHTML as a simple little browser, and also something more advanced, we would be happy to provide it. Obviously, if we don’t get any positive signs from Apple, then we have to think about it.”

You’re kidding, right? After Apple has taken the time to create Safari, which has been getting good reviews all across the web, does Opera really think that they’ll suddenly decide to reverse direction, tear Safari down and rebuild it with an entirely different rendering engine? One that isn’t open source, and isn’t nearly as solid as the KHTML engine that Safari is currently using? I just don’t see that happening. And, apparently Apple doesn’t either:

“We think Safari is one of the best and most innovative browsers in the world, and it seems our customers do too,” the Mac maker said in a statement. “No one is making Mac users choose Safari over Opera — they’re doing it of their own free will — and Opera’s trashing of Safari sounds like sour grapes to us.”

Later in the article, C|Net gives us this:

Last quarter the online music service MusicMatch decided to drop its service for the Mac, following Apple’s release of the competing iTunes application.

At the time, MusicMatch reasoned that with Apple directly competing with it for an already small pool of users, maintaining development on a Mac version no longer made business sense.

Now, the PC version of the iPod uses a custom version of MusicMatch Jukebox on the PC for all the features that iTunes provides on the Mac! Sounds to me like even if MusicMatch did decide to drop their native Mac support, they didn’t exactly end up entirely on the losing end of the deal. While quite possibly a technically correct few sentences in the article, C|Net sure makes it sound like Apple did MusicMatch far worse than is actually the case. Anyway…

“It’s not a platform where we’ve earned a lot of money,” said Tetzchner. “It’s a business decision. We have been putting a lot of resources into the Apple version and think we have a much better product, but it’s still a question whether it’s worth it.”

Well, y’know, if you’d made a better browser, maybe you would have fared better. The times I tried Opera, it was slow, kludgy, had some very odd rendering issues, and had a huge, obnoxious ad banner embedded into the free version. When there are other free browsers available, even pre-Safari, that were smaller, faster, more accurate, and less intrusive, why would I choose Opera? Sour grapes, indeed.

(Via Safari developer Dave Hyatt)

I need a drool cup

Oh my lord.

Apple just revamped their desktop line and dropped prices — severely — on their monitors.

Their Power Mac G4 line is now available in single-1Ghz, dual-1.25Ghz, or dual-1.42Ghz models, and the mid-range dual-1.25Ghz model starts at \$1999.

Prices on their LCD monitors have dropped precipitously. The 17\” model dropped \$300, from \$999 to \$699, they introduced a new 20\” model at \$1299, and their top-of-the-line 23\” model dropped \$1500, from \$3499 to \$1999!

I really need to get my money saved up….

This is a test

This is only a test.

If this were a real post, there would be some actual content worth mentioning.

Thank you for your patience.

Deathwish

Another test: View image.

MT upgrades

I’ve just added a new plug-in to MovableType — SmartyPants. It’s a relatively minor thing, but one that’s nice to have — it automatically converts common characters into their typographically-correct versions. Quotation marks display using ‘curly’ quotes rather than ‘straight’ quotes, a series of three periods will be transformed into the ellipsis character ( … ), and two dashes surrounded by spaces ( —- ) will be converted into an ’em dash’ ( — ).

It’s purely for looks and presentation, but I like it better this way. So there.

I’ve also altered the code for my individual entry pages using a trick from Burningbird and Phil so that in addition to displaying any TrackBack pings I get on the pages, those pages are also rebuilt at the time of the ping. Previously I’d been using a PHP include to put the TrackBack information in, but that resulted in a slowdown when people requested pages, as the server had to process the CGI script that listed the TrackBack pings every time a page was served. This way, TrackBack pings will take a bit longer when they happen, but pulling individual pages from my server goes much faster (half a second as opposed to 2 to 3 seconds on average).

Over my head

I’m having a hell of a time getting Image::Magick (a command-line set of Unix tools for manipulating graphics) installed and working on my system so that MovableType can see it. Been banging my head against this for most of the last two days, without much success so far.

On the off chance a more-knowlegable-than-me Mac OS X/Unix guru stops by here…anyone want to give me some help?

[A plea for help has been issued on the MT support forums. Hopefully that’ll help.]{.underline}

Jobs for everyone

I doubt this is very serious (or likely), but apparently someone has set up a grassroots movement to elect Apple CEO Steve Jobs president!

The site, unfortunately, is currently slashdotted, but there’s some great comments in the /. thread

well, the mac community is probably larger than the perot community. ;)

rojo\^

“I hereby declare that The White House will no longer be boring”beige”, it shall be painted”Lickable Blueberry\”.

The Apple hoardes debate among themselves whether the country is now just “insanely” better, or “miraculously” better.

Reality Master 101

The White House will remain white, but all the plaster will be replaced with translucent white plastic.

The capitol dome will be redone in anodized aluminum. It will also have firewire.

protein folder

[This is illegal…] Due to the seperation of church and state.

Steve cannot be both God and President without violating some part of the constitution.

Of course, given recent events, that ‘problem’ can probably be remiedied.

asparagus

Must've been a fluke

I'm number 16!

Looks like I was popular today — probably for all of about two minutes, but hey, I’ll take what I can get.

I stopped by the Wander-Lust homepage a bit ago, skimmed over the ‘Popular Destinations’ sidebar, and realized that I was number 16! I have no idea how I managed to pull that off, but it must have been a fluke — as I write this now, I’m number 47. Heck, I’m rather surprised to be on their top-50 list as it is, 47’s impressive enough. But 16?

People must have been really bored this morning. ;)

Okay, now I’m number 4. Bizarre. Cool — but bizarre. I’m guessing I’ll be in my rightful spot completely off the list by morning, but this is fun for the moment!

MT: Easy comment and entry editing

Responding to Dave Winer expounding upon the virtues of Manilla (the CMS Dave creates), Morbus offers this tip for MovableType users:

The “Edit This Page” button may not be a default item in the Movable Type templates, but it is certainly possible — I’ve been using it on the individual archives of Gamegrene.com for quite a long time (it’s there, but is an invisible pixel gif at the bottom of the page). Add the following to your templates and, assuming you’re cookied into the MT adminterface, you’ve got your “Edit This Page” equivalent (broken across multiple lines for ease of reading):

<a href="/cgi-bin/mt/mt.cgi?__mode=view&_type=entry& blog_id=1&id=<MTEntryID>">Edit This Page with Movable Type</a>`

I use a similar technique here, only one that allows me to not have to worry about the blog ID number, and I have ‘edit’ links both for each individual entry, and for any comments that are left on my site. As a bonus, the edit links are hidden, so unless you’re me (or you read this post), you’ll never know that they’re there!

I use a combination of HTML, JavaScript, CSS, and MT tags in the “Posted by…” link on every post and comment to allow me to jump directly into editing mode if I need (either due to a typo or revision on my part, or to clean up or delete any unneccessary comments left by visitors), yet keep it hidden from casual prying eyes.

First off, the code for the “edit post” links as it resides in my MT templates (all one line in the template, broken here for readability):

Post<a href="<MTCGIPath>mt.cgi?__mode=view&amp;_type=entry&amp; id=<MTEntryID>&amp;blog_id=<MTBlogID>" target="_blank" onmouseover=“window.status=’’; return true;” class=“hidelink”>ed</a> by <MTEntryAuthor>`

By using the <MTBlogID> MT tag rather than just typing in “blog_id=X“, we avoid any problems with having the wrong blog ID chosen if you’ve moved the code from one template to another, or don’t know the ID number of the blog you’re working with.

The onmouseover="window.status=’‘; return true;" bit of JavaScript ensures that the status bar of the browser does not change when someone mouses over the link — one of the visual clues to the existence of a hyperlink. Note that there are actually two single quotation marks with nothing between them after the window.status= declaration — if you type them as double-quotes, you’ll break the code by closing out the onmouseover function too early. The’return true;‘ declaration is just there to ensure that the link will get passed to the browser correctly when clicked on.

The last special bit to the tag is the class=“hidelink” declaration. This is calling on a class I have set up in my CSS stylesheet that looks like this:

a.hidelink:link, a.hidelink:visited, a.hidelink:hover, a.hidelink:active {
    text-decoration: none;
    color: #7f7f4d;
    cursor: text;
    }

This set of CSS rules ensures that any HTML anchor with the class ‘hidelink’ will have no text decoration (under- or over-lining or anything else), will be the same color as the surrounding text, and the cursor will not change to the standard ‘pointy’ cursor as it moves over the link. Between this CSS and the JavaScript code in the link, the end result is a working, active link that is entirely hidden from most browsers (and even if someone does find the link, they’ll still need to know your MT login and password to be able to make any changes).

The same trick can be used on comments, to jump you directly to the comment editing screen. Here’s the code I used in the “Posted by…” line for comments on this site (again, as one line in the template):

On <a name=“<$MTCommentID pad="1"&gt;"&gt;&lt;$MTCommentDate$&gt;&lt;/a&gt;, &lt;$MTCommentAuthorLink spam_protect=”1“$&gt; post&lt;a href="&lt;$MTCGIPath$&gt;mt.cgi?__mode=view&amp;amp;_type=comment&amp;amp; id=&lt;$MTCommentID$&gt;&amp;amp;blog_id=&lt;$MTBlogID$>” target="_blank" onmouseover=“window.status=’’; return true;” class=“hidelink”>ed</a>:`

More color/code tweaking

I’m getting closer to settling down with my design fidgeting again. For a bit, at least. I’m pretty happy with the blue-tone scheme I’ve got right now.

I’ve also managed to get the hide/show smileys function when leaving comments working, thanks to a new Scriptygoddess script (that I even helped debug — go me!), and I think (though feel free to correct me on this) that I’ve got the ‘Remember Me’ function when leaving comments fixed too. Just so all five (actually, I might be up to eight!) of my regular visitors won’t have to keep entering their information into the form. ;)