I just read over at peerfeer.org that the US patent office has finally got a clue and has reversed the phony browser patent plugin held by Eolas Technologies. In case you missed this debacle, Eolas pulled one over on the patent office to claim ownership of the "technology" for using browser plugins, in violation of Title 35, Chapter 10, Section 103, paragraph (a) of US patent law.
A patent may not be obtained the invention is not identically disclosed or described as set forth in section 102 of this title, if the differences between the subject matter sought to be patented and the prior art are such that the subject matter as a whole would have been obvious at the time the invention was made to a person having ordinary skill in the art to which said subject matter pertains. Patentability shall not be negatived by the manner in which the invention was made.
There was plenty of prior art for browser plugins, and it was arguably an obvious solution to the problem of having to pack every kind of file viewer into the browser. Eolas used their counterfeit patent to try to muscle Microsoft out of distributing their browser, which I wouldn't have missed anyway. However, the patent had dangerous ramifications for all web browsers everywhere. So have a beer tonight in honor of the overturned patent. The web is a better place without fictitious claims to "intellectual property".
Technology is wonderful. It really is. It is the one thing in my life I can always count on to bring new possibilities of emergency situations. Year after year, with a robotic certainty, I wind up with some heretofore unknown catastrophic failure of some bit of technology. What other human institution can do the same for your life?
When Ford invented the automobile, within years I'm sure we discovered its cousin, the automobile accident. Yep, you could end your life in an all new, grisly way. (Don't get me started on Ford just yet. I've got beef with him and I'll have to let him have it shortly—I don't need it anyway, as I'm a vegetarian.) Then, when the Wright brothers took their pioneering flight, they probably only narrowly avoided the previously unknown airplane crash. With each new technology, the human race learned about a new way for it to go all kinds of wrong.
And, dear readers, I apologize, as I am the victim of the technological failure of created by the age of bloggers—the website emergency.
Looks like the admin of Freeshell decided to push through the PHP changes, leaving my entire website down and misbehaving. I just got home from visiting my girlfriend, late Sunday night, and before I even put away my groceries (still haven't), I noticed my my website had taken a nose-dive. Broken scripts galore.
After a about 40 minutes of recovery, I have my front page working. None of the links into /blog, /section, or /gallery, work. As of 8:16pm CST, I am about to set up a small (working, hopefully) script to redirect all of these links to the frontpage, so everyone can read this explanation. Sorry for the outage, folks.
As of 8:53pm CST, things seem to be actually somewhat working. A bit of digging through the suphp source turned up a bit of apache magic to save the day. (I hope.) More on this later.
Seems like everyone has had their chance make predictions for 2004 except me. The predictions range from dramatic events in the blogosphere to world events, and from personal goals to hip hop forecasts. I'm not much of a prognosticator, but I've got a prediction of my own.
Bloggers will continue making predictions for at least another week or two, yielding enough of a pool where at least a few of them will prove to be true. The predictions will slowly die down, people will forget about them, and in the end, the bulk of them will turn out to be bogus.
Thank you.
Pursuant to the recent CGI changes at Freeshell, I'm slowly moving the backend of this site to CGI powered by PHP, instead of PHP scripts running inside mod_php. For most people, this is the exact opposite of what they want.
However, at Freeshell, the admin recently enabled the usage of suexec, letting us run our CGI scripts under our normal user accounts. This opens up all kind of goodies, like secure file writing, not needing to mark all files readable by the nobody user, etc. However, suexec doesn't work for PHP scripts running in mod_php.
So everything here must be converted to CGI scripts—running PHP. For the most part that works nicely, except one small bit that gave me trouble. I use a technique with Apache to fake the appearance of directories inside URLs. It uses some mime magic to force the webserver to execute a script that does not have a file extension. That let's me execute the script 'search' in an URL like http://foo.bar/search/apache to search for articles related to Apache (foo.bar is not a real site, of course).
Well, mime magic doesn't work for CGI scripts. So you can use this bit of Apache magic in your .htaccess file.
<Files search> SetHandler cgi-script</Files>
And it's like, wa-lah! Instant fix for crappy URLs. Just check
the $_SERVER["REQUEST_URI"] variable in PHP, which will return to you everything
after the hostname in the URL, to determine what content to display.
For more fun, read up on Apache Handlers.
Check out Instant Gratification, the best idea I've come across in a while. It can be set up to notify you via IM (AIM) when someone visits your blog. Seems like a useful tool, as I've caught some jokers visiting LAB-Y recently. (Link via Kuro5hin.)
As you can probably see if you have javascript turned on, I've added support for the free blog comment service from Squawkbox.tv. I know, I know, this is a fucking lame way to provide facilities to comment on blog entries but until I get my own coded up, this will have to suffice.
Since nobody reads this blog, hey, what the hell? Eventually this Squawkbox shit will be removed from my site when I host my own comments. At that point losing only piddly a comment or two isn't a big deal.
I also put up a calendar index into my blog entries. Credits to zend.com for their fantastic article on building a calendar blog index with PHP. The code was simple, elegant, understandable, and easily adaptable to LAB-Y. If you notice any problems with it, please drop a note my way as it is still experimental.
There won't be any more updates here at LAB-Y for a while. I'm holding off on any improvements, new content, or new blog entries until I've finished reworking a majority of the code. Much of it is too hardwired for certain settings and it is in need of some janitorial work. When this is done, I'm going to take it offline for a short period of time to move in the new code.
In the meantime, to everyone here in the US anyway, enjoy the long weekend. I'm taking off the Tuesday after Labor day to have some more car maintenance done—the damn "Service Engine Soon" is on again for the third time in a few months. I suspect I may be having sensor problems. Anyway, enjoy the weekend.
Damn it has been a busy day and I've been up to quite a bit. You'll probably notice that all of the blog entries at LAB-Y now have category links. Follow any of them to search for entries that fall under the specified category. Just a smidgen of PHP and another feature falls out of the sky.
I went ahead and ordered my Sanyo SCP-4900 to eventually have wireless internet access under Linux from anywhere. It only set me back $170 (which included tax and an inflated shipping cost, fsck websites charging tax) and it is on its way.
To get this setup tested, I finally got around to getting USB working on my workstation. I've had the capability for quite some time but I've never used the kernel modules, partially because I don't have any USB devices. The only exception to that is a keyboard PS/2 to USB adapter that I have for use with my Playstation 2. It works great with any PS/2 keyboard I can dig up on the PS2 so I used it for testing USB under Linux.
I already had all of the appropriate modules compiled and installed, they just never got inserted into the kernel. A few insmod's later, I was up and running with a USB keyboard, no sweat. Now I'm waiting for the phone to get it activated. Then I'll buy the data cable and I should be good to go.
Every blog entry here at LAB-Y now comes with its own, shiny Permalink. Everyone thank PHP for bringing better things to life (I'll probably get sued for saying that). Coming soon: categories!
Simon has a new article up about quality news site URLs. I've been doing a lot of work here to convert URLs to something readable, including section links, gallery links, and other miscellanea. I've used a trick I picked up over at evolt.org that uses Apache and PHP to clean up my links. Makes things a lot cleaner. If you have access to Apache and PHP, I suggest using it to make your URLs that are really CGI requests look like simple, readable, memorable directories.
The news is spreading like wildfire around the Internet that Netscape has been killed by its parent company, AOL. Maybe Netscape was just in the right place in the right time, maybe they were lucky, but they certainly succeeded in changing the way we communicate. Because of Netscape, the World Wide Web has incorrectly become synonymous in the public mind with the Internet and everywhere we go, we are bombarded by the ubiquitous URI for everything from personal to corporate websites.
It's the end of the world as we know it
Sadly, with the death of Netscape, AOL also fired all of the Mozilla developers they had employed. So we are left to wonder, what will become of our shiny, new web browser, the David that was to take on Goliath and win the battle for real standards conformance? Will Mozilla gasp its dying breath and sputter out? Will those of us who disdain proprietary operating systems and value real conformance to established open standards on the Web be forced to use Konqueror? Or will the World Wide Web sink back into the dark ages of standards divergence?
Here -- he says he's not dead!
Thankfully, Mozilla lives on with the Mozilla Foundation, and because the source to Mozilla was open anyway, it will always be around. Ultimately, the death of Netscape can't stop the movement for real open standards on the Web. It all hinges on the content producers out there--the choice is ours. We can continue our push for true interoperability, accessibility, and usability. Alternatively, if we lose site of our goal, we can let control slide back into the hands of corporations to proprietize and polute real standards. The choice is clear. If we fail, we have no one to blame but ourselves.
This site relies heavily on CSS2 instead of using tables for layout, so make sure to use a good browser. Internet Explorer 5.x users may experience some rendering faults because IE5.x misimplements the CSS2 box model. Upgrading to IE6 should help solve this problem.
If your browser supports Javascript, click here to have style sheets for this page removed (thanks to Jesse's Bookmarklets site for this trick). Hit reload to refresh the style sheet.
You can use a similar trick to view the style sheets associated with this page by clicking here. Feel free to borrow any techniques used here (or to suggest improvements); this page has been tested in Mozilla 1.0 Linux, Mozilla 1.3 Win32, and IE5.5 Win32.