Recently in Web Technology Category

Heavy Metal Umlaut

O'Reilly Network: Heavy Metal Umlaut: The Making of the Movie

Check out the movie, Heavy Metal Umlaut. Then go read the article O'Reilly Network: Heavy Metal Umlaut: The Making of the Movie.

There's a lot of food for thought here, both in the technology used, and in the analysis of the change log on that article. Fascinating stuff.

Ultimately, any user of any app built on the API has to be a user of Flickr as well. It also just introduces for a company at our stage a lot of headaches and risks, in that people are, excuse me, but shitty coders; they're not responsible in their use of the API or they write buggy code that hammers us. And that's happened a couple times. People can hammer you in other ways: they can scrape you, but they can hammer you a lot harder if you're exposing methods to the things that are most database- or CPU-intensive.

--Stewart Butterfield on Flickr

Browser as a platform

Over at Hyatt's Safari site, he has links to portions of a cross-blog conversation about XUL, XAML, and GUI markup languages in general. Check it out if those things are up your alley.

I find the topic of browser driven applications interesting. The ability to build an interface that is lightweight, easily customizable, and made up of such easily understood building blocks is very empowering. I've always enjoyed web-development because of the quickness with which one can build something and deploy it. Although more powerful (and probably because of this) languages like C++ are much more difficult to use and take much longer to create a working GUI based app. The ability to use free tools like text editors and my browser to deploy an internet aware and distributed application is great in my opinion.

Like a sponge

Over at SNE Bloggers I've been busy learning and implementing. Last night I started getting a handle on OPML so I could export our member list in a format that people could import into their favorite aggregator. I had some difficulty determining which portions of the spec different aggregators support. Today I tried to figure out the bookmark format. I ran into similar problems, but I'm relatively sure I found something that works there. I'm still not sure if my OPML file willl import.

After OPML, I got back to working on an aggregator. Using Mark Pilgrim's feedparser I got a python script up and running that grabbed RSS feeds and stored them in a mysql database. After thrity two rounds with my host I finally figured out how to rewrite my scripts so as to work with old versions of python. This after I wrote the whole thing in php first and then figured out that PHPs file handling routines were slow and kept timing out. I'm glad it's done, though.

I've always found that the satisfaction of learning something new and then getting it to work is worth all the trouble. I look forward to more development on the aggregator in the future. I won't look forward to the mess that is RSS, though.

Writing and Semantics

Jon Udell: Well-formed writing and information routing

Jon Udell writes about the way good semantics have allowed him to get more out of his writing. It's an interesting parallel point to the conversation occuring amonst such heavy-hitters as Kottke, Mark, and Zeldman. The discussion revolves around the correlation (or lack thereof) between valid markup and semantics.

I've always been a supporter of standards, merely because of the extra control things like CSS give us over the design and layout of our pages. Semantic clarity interests me on a geekier level, having seen demonstrations of its worth such as Mark's posts by citation.

If you look at an industry like publishing, it took a long time for standards to develop and solidify. Although we've benefited from the rapid changes in web development, it may take time for us to reach the stability of other media. In my opinion, web development was so easy in the beginning we created a world full of web developers. As the technology has gotten more complex, offering more options and tools, the weaker animals are being weeded out. Meanwhile, it's the cutting edge developers and visionaries such as those linked above who are pushing the boundaries and helping to define this new medium we know as the web.

I'm all for the fact that anyone can publish, but because I use electricity doesn't mean I can service a circuit panel. Maybe a little survival of the fittest is a good idea.

Better URLs

Article URLs week: Principles

I've been meaning to improve the URLs here for a while, but I haven't gotten around to it. Maybe once I read through these article, it'll inspire me.

September that never ended

| 2 Comments

Never having done the usenet thing, I didn't know what the phrase "September that never ended" meant. I know, I just lost my geek status... If I ever had one... Anyway, people are afraid the same thing will happen to blogs due to AOL's soon to be released blogging tools.

It will definitely be interesting to see how tools such as technorati scale into the new audience (I mention that one in particular because Dave Sifry stopped by once and left a comment and that will leave him forever on my list of excellent people... Never get too big to say hi to the little people!). As the population of the blogosphere swells, it will become more important for such tools to perform well, as without them we won't be able to handle the large amounts of information present, nevermind monitor our online social networks or follow the latest meme.

Another thing to watch will be how the existing more fully featured blog/cms packages take advantage of AOL's software as a way to get "newbies" ramped up and into more advanced uses of the technology. For example, will the upper echelon of AOL's bloggers become the target market for the pro version of TypePad? Mena hints that this might be the case, and since I know she, Ben, and Anil are not stupid people, they must be thinking about how to take advantage of such a large number of people being introduced to the blogosphere.

The bottom line: with Google buying Blogger, SixApart getting funding, AOL and others introducing their users to publishing, and new technologies such as camera equipped phones, we're about to see another mutation of the web as we know it. I for one am pretty excited. Are you?

Winer Watcher, round 2

That Mark Pilgrim, I heard that not only does he snap the arms of living babies to gnaw on, but he's a damn thief and a stalker too! Did you see him steal all of Dave Winer's posts? Sheesh. Dave, you better close your curtains, or Mark will be watching you poop next!

Here, here, here, and lots more places.

UPDATE: Mark has now password protected the Winer Watcher.

PHP 5.0

PHP 5.0 Beta 1 has been released (for a little while now). There's a ton of great content regarding the project's development over at Zend. For those of you not in the know, Zend is the company behind the PHP engine. You can find a todo list for Beta 2, comments on the Beta release, information on the additions to the PHP pcre functionality, and more.

If you want to keep your skills up to date, you better start reading. There are some big changes in the works involving everything from better object oriented functionality, to including more and better Java support. This is going to be a great release.

blogrolling dropdown

| 1 Comment

Ever wanted your blogroll in a dropdown menu? Well, now you can. I've written a small script in php that you can incorporate into any php aware page. The function takes a blogroll rpc address including your token as the first parameter and turns it into a dropdown of class dlistbroll so you can style it using CSS. Feel free to let me know if it works or doesn't work for you. Not being a user of blogrolling myself, I'm not sure what things you can change on the other end that may break it.

To see it in action, check out jasmeet.net and remember that you can use CSS to change the appearance to fit your own site.

Test suites

| 3 Comments

In his last two entries, here and here, Dave Hyatt discusses the test suites available for standards, specifically those used to test things like CSS 1, 2 and 3. His point is that because the test suites aren't there, charts showing browser support are not very useful because they don't give designers a good idea of the depth of support for a feature.

This is a great point and one that could be fixed. Can't the W3C make a list of things they need test cases for and then let the public claim them and write them? I wrote a system like this for links that were being reviewed. Anyone could add a link to the queue. Then anyone could reserve a link, write their review, and then come back and post a link to it. It seems like a similar system would be extremely useful. Instead of having a few people writing the suites, people could contribute thereby invoking the lazy web.

I read another article recently about using an iFrame to refresh portions of the current documents structure without refreshing the entire page. This led me to wonder: using this, couldn't you post the text of a 'currently being worked on' textarea, like the one I'm typing this entry into, to a server side spell checker, styling misspelled words as they're typed like the M$ Word spellchecker does? I think you could. Now as soon as I'm not so tired and have a little ambition, maybe I'll try it.

Zeldman on RSS

Zeldman: Unsyndicate

But most smokers would rather puff than inject nicotine, and most of us used to be as hungry to see a site as to read its words. RSS feeds may subtly discourage that impulse to seek, see, bookmark, and return.

Zeldman, always on top of things, on why he hasn't set up an RSS feed yet. As always, an excellent piece that provides a counter argument to the "Syndicate your site or die trying group".

I don't use an aggregator, but I do provide an RSS feed of excerpts for my entries. Unlike Mark, though, I let the system take care of creating the excerpt as opposed to doing it myself, making it not as useful as it could be. I've been asked to create a full-post feed, but I'm still not interested in doing that. I think the important thing to keep in mind is that RSS has gotten to the point where it's so easy to find a good template or decent examples that even people just getting started have the option to choose whether or not they want to syndicate. The tools available are giving people more opportunities than they've had before. That's the important thing.

Interesting...

I noticed something interesting today at Sam's site... He trackback's posts on his own blog.

I'm sure that's not what's really happening, as most of the technical side of Sam's site is way over my head. He's probably just merged categories and trackbacking in some fashion, so as to create a web of posts. By viewing on post and it's comments, you can find other similar posts that he's written that relate. It never occured to me that it might be worthwhile to trackback other posts on my own site... Hmm...

eyebees

sylloge: eyebees
Similar to Microsoft's MSN 8 surf with a buddy feature, from what I can tell, this is a way to surf with others. Definitely worth future perusal.

via :: sylloge

RE_INVIGORATE

RE_INVIGORATE
For Future Exploration.

The Google Dance

| 8 Comments

Google Dance
I love google. Do you love google? If so, check out this article, as it's got some great technical details about how the google index gets rolled out and refreshed month to month.

Is there a plum in the pi?

| 2 Comments

The Pi Search Page
This is great! The pessimist and cynic in me, though, thinks it would be just as easy to tell the user their string is at position (generate random number here) as opposed to searching an aribtrary piece of pi.

Morale-O-Meter

Erik Benson's Weblog: Morale-O-Meter
What a great little tool. Man. Why didn't I think of that?

Duncan on PageRank/Google

| 1 Comment

Duncan Wilcox: PageRank 2.0

Google's current relevance ranking should be called "popularity ranking", as Krishna Bharat once told me "if 1 million people say that that's IBM, for us that's IBM".

Many other interesting points here by Duncan. I think it's interesting to see what people think about Google's purchase of Pyra, merely because there's the obvious and then there's what will actually happen. The latter will probably be something quite different than what was expected and more exciting than we thought it would be. I mean, come on... Haven't you seen google labs?

Agent Frank

| 1 Comment

Main: AgentFrank
Agent Frank is a personal proxy. I'm downloading it as we speak.

If you've known me for a while or you've read my blog for any length of time, you know I like search engines. The way they find meaning in what they interpret as zeroes and ones compared to what we interpret as language, symbols, etc is interesting. I've looked at different sorting algorithms, different indexing techniques, and spidering technology. I've also experimented with AIML (artificial intelligence markup language) and some other weirdness that fits in as well.

When you put the personal web proxy in a bowl and stir in all of the other pieces, you get a pretty interesting product. You have a piece of software that can learn about you, teach you, answer our questions, and do things foryou/on your behalf. Having some company be in charge of this is scary. Having a program on my computer that does it for me sounds like fun.

What could it do you ask? I'm not really sure, but it seems to me that it could do a lot. From checking the weather to aggregating feeds to finding news that's important to you to checking stockquotes against your portfolio to remembering birthday's and anniversaries to remembering what sites you've visited and how you got there and how you can get back.

It seems to me that all of the pieces are around us and by assembling them we'll gain a lot. To me, it's just a question of when...

A gem from the referrer log

Information Recovery in Text-Only Discourse
After my post the other day about AIM's "Your Buddy has Entered Text" message, I started getting some hits from people searching for AIM related things, and I clicked through to a Yahoo results page from one of the searchers. Thre, I found a link to this paper. It's a decently long read, and I've only made it part way throguh so far, but it's interesting, in a communication geek type of way.

Starting with Clark's description of the structure of embedded join projects, this article attempts to examine the changes that occur in the structure of discourse when the only medium of interface is text. To do so, a modern on-line "instant messenger" (IM) system is used to provide transcripts of text-only conversations. A standard convention of IM conversation is the use of what I call recovery devices: textual utterances which are intended to provide information present in face-to-face conversations which is lacking in IM conversations. Using the ability of IM software to integrate a recovery device into the conversation interface (via a feature called Direct Connect), I find that the device makes a statistically significant improvement in IM conversation orderliness.

New developments in the MT realm

| 1 Comment

movabletype.org: News
Ben has posted, letting us know that they'll be making a nightly build of MT in order to create more stable version releases. I think this is a great idea. The one problem, in my opinion, is that it's a lot harder to set up MT than to, say, unzip and run the nightly build of phoenix. For people like Kottke who run a local and remote copy, this might work, barring any conflicts between versions.

I definitely have to say: Ben and Mena have a mean product in movable type.

Google bought Pyra!

| 1 Comment

Silicon Valley - Dan Gillmor's eJournal - Google Buys Pyra: Blogging Goes Big-Time

Wow! I'm really excited about this... Way interesting to see what comes of it, and extremely entertainging and though-provoking to watch what others are thinking this will mean for both google and blogs.

Reversible.org

What is Reversible?
Interesting concept, but as you can see in the about page, there are a lot of unanswered questions. Anytime you allow users to do whatever they want, you introduce crazy amounts of variability into the system, something that is hard to get back out. Very neat, and something to check out.

Oh, yeah, you want to know what it is: It takes referrers and categorizes them. You can create directories by creating a link, the site then takes that link and trates it like a category, showing people who have used the link to get there in the category. Weird, eh?

Little Ms. Muffet

I got a basic spider from the book I've been reading to compile and run against my site. In less than five minutes, it had downloaded 316 pages to my hard drive. I didn't even realize I *had* that many pages. Sheesh. The bot is currently downloading the files individually and storing them. However, with a little tweaking it will store them in a database. I'm pretty excited, because this means a day of running and I'll either a) have a pretty sweet data set to experiment with, or b) have a full harddrive.

Post to MT by xml-rpc

| 3 Comments

I've been working on writing a php app that will allow me to post to my blog by email. Tonight, I got all of the pieces nailed down. It's just a matter of putting them together.

One thing I learned. When placing an xml-rpc request, the MT docs talk about an appkey. I couldn't figure out what they were referring to until I looked at the blogger api. You need to fill out this form and you'll get a developers key to use with your app. If you were placing calls against blogger, different apps could be tracked. As of now, I don't think MT has a tracking system for xml-rpc requests.

As I get more of this worked out, I'll be posting links to the information I used, and maybe even opening a working system for others to use. We'll see.

Bayesian mail filtering

A Plan for Spam
Dave got this before me, but it's still an incredibly well written and interesting article. I've already read it twice.

So who else reads this nonsense?

| 1 Comment

So this morning I ranted a little about a post over at Manero.org. Tony said Mark needs a presentation layer so that he can markup his content any way he wants. After reading my response, he then very politely asked me to explain my comments, as he wasn't sure what it was that I disapproved of. I didn't think he'd ever come here and read my post... Hey Tony, how'd you find me?

It's my opinion that we have a misunderstanding here. Maybe it's just me, but maybe it's not. I don't think we all understand what Mark's problem is and how it relates to the different pieces of the standards/publishing puzzle.

Mark uses Movable Type. It lets him publish his page using templates that can translate his data into whatever form he likes. Mark makes an XHMTL 1.0 template and gets an XHTML page. He makes an XML template, and gets an XML page. Lather, rinse, repeat.

Mark's complaint, as I understand it, is not with his ability to transfer his content into any given format, his issue is with the semantics available to him in a particular format: XHTML 2.0. Now to be fair, he can change to a differnt mark up langauge, and he did choosing HTML. Did you hear him complain that his content management system couldn't handle the conversion? That his data was poisoned and it was sooo tough to take all that text and mark it up differently? Nope. You heard him say (and I'm paraphrasing) that it sucked that XHTML 2.0 dropped the semantic pieces he liked using.

I don't think there's a problem with the CMS, I think there's a problem with semantics, what we do with them, and what we expect from them. If you add them to your text, it becomes very easy to change them from format to format with a quick search and replace. The question is what you should be adding in the first place. Mark has mentioned the difficulty surrounding semantic markup in the past. One that he missed is conveying the actual purpose and meaning behind creating semantic pages. That's where the problem is.

I guess I lashed out at Tony unfairly, but this is the second time someone responded to a comment Mark made by claiming he should throw a different content management system at his troubles and they'd go away. I don't think that's the case. At all.

Think before you open your mouth...

| 1 Comment

Or at least explain to me where my thinking is wrong. Is that so much to ask?

Why do people say this kind of stuff?

Presentation Layer: Layer 6. This layer responds to service requests from the Application Layer and issues service requests to the Session Layer. The Presentation Layer relieves the Application Layer of concern regarding syntactical differences in data representation within the end-user systems. Note: An example of a presentation service would be the conversion of an EBCDIC-coded text file to an ASCII-coded file.

My understanding is that a presentation layer is an abstraction of the data, ie a database to the code that pulls and displays the content in the database. Mark has that. He uses Movable Type, a weblog content management system that stores the text in a database. Can you embed html in the text? Yes. Can you just as easily use a search and replace to remove or change that markup? Yes. What is the alternative? For Mark to create his own alternative markup language representing quotes, blockquotes, citations, links, etc. and then to translate that on the fly or at build time into HTML / XHTML / XML / RSS. Why not just use HTML or XHTML to begin with? Oh, that's right, that's what he's doing. Am I missing something here?

More on khtml vs Safari

Mozilla Project Hurt by Apple's Decision to use KH

I've linked to a specific portion of the discussion at slashdot, a portion that I found the most interesting. It supposedly came form hyatt's website over the weekend and was taken down, and details very specifically, in his mind, why one engine was chosen over another. Quite entertainging read, even if the possibility exists that he didn't write it.

Standards of the future

Recently, Mark posted about the XHTML 2.0 spec being worked on by the W3C. Mark's conclusion? He was none too impressed. Today, Jeffrey Zeldman responded.

I've been reading Zeldman's site since I was in high school. For those of you keeping score, that's about seven years now. I've always had a lot of respect for him. He's smart, well-spoken, and has a great sense of humor (if you dig that dry, witty, sarcastic stuff). Send him an email and you'll usually get a response, even if it's just a few quick words of support. He knows a lot, because he's been there, and he's happy to share.

I've been reading Mark's site for a lot less time, but what kept me coming back was that he was doing interesting things, explaining them all the while. Lots of people got caught up in the neatness of it all, and Mark gained a sizable audience. He was implementing new ideas and he was showing us how to come aong for the ride. Mark showed us why standards mattered.

In Mark's post, and Zeldman's response, there's a sense of father/son. Zeldman, one of the people who fought so ardently for standards, and Mark a user who feels frustrated and betrayed.

It's upsetting to see such a reaction to new standards from someone who's been such a strong supporter. It's encouraging, though, to hear someone like Zeldman, someone who's been around for a while, say that it's going to be ok, that the web's not going anywhere, and that we'll be alright in the end.

Shaver on Safari and Gecko

If I had to write a new browser, and I was going to have to touch the layout code in a serious way, I would think about Mozilla alternatives. I think it's awesome that they pretty much have to compare Safari to Chimera and Netscape/Mozilla, because it shows how far we've come from the universal acceptance of IE's hegemony. I think it's fantastic that they chose to include "Gecko" in their user-agent, so that they could get standards-compliant content, because it means that our evangelism efforts in support of such content have been working. I'm thrilled that they're going to be another IE-alternative browser, which will try some techniques Mozilla decided against, because we can see if it really works or not. And I really really hope that Mozilla will learn from Safari/KHTML, because they've done a lot of great work in about a tenth of the code. Kudos, guys, and welcome to the web.
via :: shaver

Stupid computers

I spent the majority of my weekend trying to get a modem to work under linux (still unsuccessfully) and trying to write a mailbot in php. After much reading and frolicking, I got an email to forward to my script and then to be logged in a file. This is a huge success, as I'm working within the confines of my hosts CPanel setup with no shell access. More on this as I get things together.

So it turns out that Hyatt is part of the Safari team at Apple. This is excellent news for Safari, as Hyatt was a major player in the development of Chimera. It does, however, make me wonder even more why gecko wasn't chosen as the rendering engine. Having stolen Dave away from Mozilla, did Apple not want to rock the boat even more by having him continue to work on Moz? Is it an issue with the licenses the two projects work with? Is it really just technically based (one engine is smaller than the other)?

No matter what the deal is, there are two things of interest here: 1) Hyatt's site will become a good place to get up to date information about the browser and 2) his previous work on Mozilla will lead to speculation about Safari. In any case, I like Hyatt, and I look forward to hearing even more about Safari from him now that he's graduated from having to gaurd the balcony, that is...

I downloaded both Chimera and Safari. Chimera is almost 5mb larger (unexpanded and uninstalled). This leads me to wonder, the other major browser designed by an operating system company is heavily integrated into the operating system. Does Safari benefit from using system components which allow it to be smaller? I don't have a mac to find out, so I guess I'll never know. Or, maybe, when Dave gets back, he can tell me.

Yesterday I signed up at Boston online's blog listing which I found by registering at geourl.org as mentioned by Mark. It's a neat idea and a great solution to the problem of finding locations for things. It may even be possible to write a script that searches pages for their address, finds their geographic info, and adds them to the database, thereby increasing the usefulness of the tool.

Note: it seems geourl is currently down, probably due to the slashdotting it received.

Last week or the week before, Mark created a listing of posts by citation using the cite tag. Suddenly many people realized that there were a lot of neat things left to explore in the (X)HTML standards and many interesting discussions were started. Normally, in these discussions, I play the role of one of the unlearned heathens, keeping my mouth closed, my ears open, and my notepad handy as I try to learn from people who understand all of these things a lot better than me. However, after reading this at monokromatik, I had to put my two cents in.

I've always had some trouble understanding the differences between separating content from style using CSS and doing it through databasing. Some well-written scripts can pull content from a database, format it, add images and navigation, and either send it straight to the client or build static pages for client use. By using includes and scripting, your content remains separate from your design and you can then re-purpose that content easily.

The more I read about the semantic web, though, the more I figure out that it's not how you seperate your content from your design, it's the meta data you add in the process. The blockquote tag is a good example of this. When repurposing content without using it, determining which pieces are quotes and which aren't becomes more difficult.

Brian claims that by adding html to your content, you're "poisoning" it. If I understand correctly, it's his opinion that instead of using the blockquote tag, we should instead have a database table called quotes with a field for the article the quote is used in, and with another field for the quote. Repeat this for all the different types of content a post could conntain. Subheaders? Make a table. Lists? Make a table. Anywhere you'd use html, Brian implies you should break this content out and categorize it on the CMS side of things.

Now maybe that's wrong. Maybe instead, he's implying we should write our own markup and use it on our posts, allowing us to then use our CMS system to translate that into html or whatever we need. Doesn't XML solve that problem? That's what publishing companies are using it for. Create your own DTD specifying your tag sets and go to town.

In either case, it seems to me that xHtml does the job more simply without the overhead, and in such a way that later it's easy to change. Isn't that what things like regular expressions are for? The qualification, here, is that you need to do a good job with your markup. Mark wouldn't have been able to pull all of his posts if he hadn't been marking them up consistently.

Brian says "If it sounds a hell of a lot nicer than having to parse each and every article/post looking for CITE elements, then that's because it *is*." I don't understand how a quick regex expression looking for cite tags is any different from a sql query for quote attributes in a database. However, if you degree with this, feel free to argue.

Blogging (r)evolution

| 1 Comment

Ever since reading about moblogging over at v-2 Organisation , I've been extremly interested. The idea of being able to access blog entries by date, time, category, and now possibly location is extremely interesting (note: gps based posting systems were discussed on slashdot at one point, but I'm too lazy to look up a link). It's pretty boring if you think about one blogger; I don't go too many places and when I do, I post infrequently about them (part of this is due to the fact that I have to remember what I want to post about until I get home). However, if location was a bit of metadata about a post that could easily be captured, and you could collect links to posts as well as the location they refer to into a repository, you'd have a really neat system (Example). When trying to decide what movie to see out of what's playing at a given theater, you could hit the system from your cell and see what other bloggers liked or didn't. You could get restaurant reviews. You could get traffic advice ("I know a shortcut from here..."). You could follow a historic trail, post by post, just like being with a tour-guide.

So how would this system work? Well, Joi Ito is blogging by email. Someone else is blogging by instant messenger (sorry, can't find the link). The system needs to support as wide a range of options as possible so as to support the largest number of devices. Devices in my opinion will be the biggest restraint, due to the difficulty in creating a post useing them. An audio based, system, however, would be extremely neat. I've been thinking about audio blogging a lot lately. There are already apps that can answer your phone and take a message like an answering machine, so it's possible to have them answer the phone, record the message, dial your ISP, FTP the audio to your server, and finally to link it in your blog. As more phones support different media, it could be possible to listen to these audio clips on your phone. The final bit that needs to be done is some way of converting the post to text easily so that it can be searched.

Actually, that's probably not the final bit, but it sounds nice. In reality, there are lots of things that I'm overlooking, I'm sure, but the important thing is that these types of projects are getting closer and closer to becoming reality, which in my opinion is pretty damn cool.

Sweetness

Textism
What a great application. This would make a great piece for web services. You could write html email on the web, post to your blog on the web, post to bulletin board forums, or just to your website. I wonder if maybe he'll release it... That would be cool.

ndscrape for download

| 2 TrackBacks

I've packaged up my New Door screen scraper for download.Please let me know if you use it or if you have questions. It's in php, it's just a function, and it's not glorious or anything, it just gets the job done. Hope you like it.

New Door results

dive into mark/Recommended Reading
In the left hand sidebar, I've added a new feature: My New Door recommendations. The script caches my recommended reading once a day. I've tried to clean up the results by adding links I read and links I'm not interested in, so you shouldn't see duplicate links that appear both there and in the Without section. However, because my New Door recommendations vary as do the links on my page at any given point in time, I can't make any promises that there won't ever be some redundancy.

As I did this, I noticed that depending on what links you include and exclude you can really change your results. Merely by including my results my list changed completely. Other fluctuations may be due to changes in the ecosystem data. In any case, because I haven't taken the time to see exactly how Mark's code works, I'm not exactly sure where the differences come from.

I'll be making the code available for download as soon as possible (the backend changes on my host aren't yet complete and this could affect some things, ie when the dns changes take effect I'll have two versions of all my files). Please keep in mind: since this is a screen scraper, any time Mark makes changes, there's a good chance this will break as well.

PGP encryption and comment systems

onfocus.com : free to the public
One of the things I've been meaning to do: look into pgp encryption. I've always thought about it mostly for email, and when I make my credit card payments online (because if there's a better place for encryption than when you move money from your checking acount to your credit card company, I can't think of one). I never thought about using it in a commenting system, however it makes a lot of sense. When you think of it like that, why isn't it worked into instant messenging, bulletin boards, etc? This is a good way to keep spammers out of your stuff too. Not authenticating yourself? I don't want your email then. I know it's kind of like whitelisting in a way, and there's a barrier for non-technical users, but it's definitely a topic that warrants discussion in my opinion.

Custom error pages

Mark's been doing a lot of work on his site lately, and one of the things he did was create a custom error page that allows people to use shortcuts in the url bar to access his content. He based this on the functionality of the PHP site, which allows you to search for the documentation of a function by appending it to the url. A while ago, I saw Razmus Lerdorf give a presentation about how they accomplished this on the php site. You can see his slides here. The part about the error pages starts around slide 44.

Yup. I'm honestly jealous.

With this, Mark has quite honestly become the coolest person in my world. What a neat thing to think of, and then to just go and do it. I sit for good portions of my day trying to think up cool things to do, and I never come up with anything except stuff like this.

You may not be a geek, and you may not understand half the things Mark writes about, but you'll definitely like the stuff he does. Go find out who you should be reading, then come tell me if you like it or not.

Cheap cheap

Moveable Type Stylesheet Generator
Interesting idea, but will people pay for it? As a matter of fact, I wonder what the ratio of paying MT users to non-paying MT users is. Not that Mena and Ben (Mena, I'm trying to help you out here) don't deserve to get paid, and I'm saving my change so I can cash it in and make my donation, but I would guess that most people use it for free. It's an interesting topic: at what level of adoption can you take a free product like MT and change it to a licensed product? Can you even do it? Or can you only get away with making any new features cost? I don't know what the answer is.

Inline commenting

| 2 Comments

joehewitt.com
This commenting system is absolutely geekily great. I haven't had time to look at how it works, but I'm definitely impressed.

Mozilla and window.getSelection

Link with Mozilla's window.getSelection() Method
Maybe I'll find the answer to my javascript question from the other day within this article (requires free registration) detailing the use of the window.getSelection method of Mozilla based browsers. Stay tuned.

Word files = XML files?

Blog data and the blogosphere

The Weblog MetaData Initiative
This is an interesting project. I came across it a while back, meant to participate, and forgot about it with work and everything else going on. Then I found it again (via algorhythm) and they had actually started to do some things, so I checked it out, and started to skim the forums.

It looks interesting, with as far as I can tell three main goals: create a spec for data about a blog, create a spec for sharing that data, and creating a reference server to store, retrieve, collect, and hand out the data.

Couple of things I noticed: this seems to overlap some things that Mark has been discussing, such as the changing forms of syndication, the costs involved (read bandwidth usage and user understanding), FOAF, etc. I almost ownder if the WMDI crowd isn't overlooking some important parallel projects and recreating the wheel.

I agree that this is a project that would be reall interesting, and one that I'd like to help with, but I haven't gotten involved yet, so I can't complain. I think it's great that people are doing things and trying things. That's the only way they get done. I think it would be cool, though, if some of you would peruse the stuff they've done so far and leave me some comments about what you think. You guys are smart and you all have different backgrounds, and therefore different vantage points. Don't be scared of the technology, some of it is a little foggy to me, too. Concentrate on the theory: sharing data about a blog and its author, and let me know what you think.

RSS, content, and the new world order

Mark has some comments about the bandwidth being taken up on his site by people using aggregators to collect his RSS feeds. He also has some insightful commentary about "everything old [being] new".

When you look at that, and then add in this article about a microcontent client the web seems to be a different place, and I don't know if I like it. I mean, I appreciate the niceties of being able to have everyone else's content the way I want it in my own little aggregator and all, but I check out magazines for their smelly, glossy pages, and I appreciate the way a site's design influences the way you feel about the author and the site. I mean, by rights, writing should stand for itself, but that's traditional writing. On the web, links, images, and graphics as well as audio and eventually video all play a part, and I don't see that being included with RSS feeds, or with the microcontent client.

Maybe I missed something, I'm not paying close enough attention or whatever. That happens. I like the web for each individual site, though. I tried ampheta desk and didn't really see the point. I guess I'm just weird.

WTF? You bastards.

| 1 Comment

MSDN Magazine Article on XML-Based GUIs
What complete bullshit. I can't believe they get away with this shit. You're right Dave. Now I'm pissed too.

stupid cross-browser javascript

| 2 Comments

Today's lesson: just when you think you know, you find out you just don't know.

I started trying to write some javascript that adds bold and italic tags to a selection in a textarea. If you check out the comments section at a place like kottke's site, you'll see what I'm looking for. Problem is that there, and in Movable Type, it only works in versions of IE. Now from what I've read, it should be possible to do using a combination of window.getSelection and the selection attributes, but I'm a little confused as to how to access the attributes of a selection. Documentation seems to be sketchy, consisting of some documented interface code with no examples and some pages claiming that the getRange functions are broken in Mozilla. If anyone has any suggestions, let me know.

Help
Anyone know why the Radio Community Server puts two entries in my referrer page when I make a new post? I'd be curious to know.

Want to build a web server?

Hardware Analysis - Building a High-Performance Web Server -
This article goes into depth about the concerns involved in building a server for a database driven site. Very in-depth, but doesn't really cover alternative configurations for other tasks.

Sweet

I managed to binarytoybox.com today using my kyocera 2235 cell phone with mobile web access by Verizon. I tried to post, but the Movable Type interface was a little too advanced for my phone to figure out. If I can find a decent way of obtaing one, I'll try to post a screenshot/picture soon.

I guessed right. Did you?

Future Reading

I haven't finished reading this, but I'm posting it so I'll remember to: The Secret Life of Markup.

WYSIWYG text area editing

mozdev.org - composite

When upgrading to the latest version of Movable Type, I filled out a survey about what things I'd like to see in future versions. I mentioned having bold, italic, and link buttons in the post entry forms for quicker editing and insertion of url's. Today I came across this extension for Mozilla which allows you to click in a textarea, hit control-e on your keyboard, and then have a small composer window that you can edit in. For those of you out of the loop, it's like being able to write your posts in Dreamweaver. Then, today at the library I brought up Movable Type in IE only to find those little buttons I had asked for already there. Made me jealous, but not enough to use IE.

*I* want a DV camera so I can play too

announcing weeklyDV.com

This looks like it could be a bunch of fun. I wish I had a DV camera so I could try it. That has to be the biggest drawback to not being a student: lack of access to free equipment. Oh well. If you enjoy working with digital video, you should check this out. If not, you should at least view the final projects on Thursday.

You said Flash? What the...

Phoenix

Phoenix Project Page

Once again I mention Phoenix, a mozilla based browser (or would that be gecko based? ah well...). Containing a much more simplified interface and smaller download as well as a customizable toolbar configuration, easier preferences and the gecko layout engine and standard compatibility, it's a good place to look if you need a light and powerful browser.

OS 10.2 / Jaguar

Studio Log: Articles:

Ok. So with every article I read about the newest version of the Mac OS, I come closer and closer to either A) selling my PC and buying a Mac, or B) selling a kidney/lung/chunk of my liver and buying a Mac.

XML in 10 points

XML in 10 points

Good quick read that summarizes XML.

Kartoo the Search engine

kartoo is a pretty sweet visual search engine. Not as fast as Google, but definitely more complex. Check it out.

So we're sitting here blogging away...

Mark Pasc has some comments about what he thinks a super aggregator would do. For a few days now I've been tossing around the idea of writing something that logs when people update their blogs. Personally, I tend to post late at night between the 11 pm and 2am hours. Other people who have faster connections at work might post more often during the day. In itself this is not very useful, merely a neat statistic about the blogosphere and when it's most active. My theory would be that blogging would be pretty steady throughout all hours as the active time (defined by me as the time that any given timezone would be active) moves around the world.

This gets more interesting though when you look at Pasc's comments. He would like his aggregator to check new feeds based on their likelyhood of being updated. I think this would be best implemented as a service: I would have a bot that collects info from pages and tracks their update pattern. The aggregator at start up hits my service, to find out whose sites should be updated for a block of time (maybe 5 hours into the future), stores that info, and rechecks feeds accordingly. This saves it the trouble of having to do all that work on its own as well as having to store the data. I'm trying to work through Dive into Python by Mark Pilgrim to learn Python. Maybe I'll try doing this with Python... I need a few more questions answered first, though.

mySQL rocks

Bloomberg.com : Technology News

"They're really very low-end products,'' Oracle Senior Vice President Andy Mendelsohn said at an investor conference this week. "I'm not too concerned about them being a viable competitor as yet.''

This stuff cracks me up. They are not low end products, they are products for a differnt niche. mySQL is geared towards smaller applications, places where you need to be able to customize the database, and they do their thing extremely well. If you don't need bloatware, its a perfect choice, and as it gets better (read: adds even more load balancing, backup, and other such features) it will continue to gain ground on the larger companies. That's what happens when you make *good* software.

Screw you Microsoft!

All Consuming

All Consuming

This is really neat. It checks recently updated weblogs and then scans them for links to amazon. It then combines them and lists books that are currently being talked about.

I think this is pretty sweet. It shows the power of giving people access to API's. You get all kinds of neat uses. This benefits the community by sharing knowledge and gets Amazon some more publicity and traffic. Bravo!

DBD::mysql is hard to install...

| 1 Comment

Well, I figured out how to install DBI myself and did it. However, I can't install DBD::mysql. I get a whole list of errors that spew out so fast I can't even read them. I'm still trying, but I'd appreciate any help anyone could offer. I'm pretty sure its a linking problem. I'm installing in a hosted environment without root privileges, which I've read is possible, but I'm not sure how. I also think the problems are related to the linker... Feel free to let me know if you can help.

Mozilla and Soap

Working with Javascript - Mozilla SOAP API

Excellent tutorial by Scott Andrew. I highly recommend signing up for a Google API key, because it lets your try this kind of stuff out. Personally, my SOAP knowledge is limited, however,after learning that Microsoft's TerraServer database (a collection of high-res satellite imagery) is SOAP-able (I made that word up), I will definitely need to look into this some more. For a list of web services available, check out xmethods.

Ode to Netscape 4.x

scottandrew.com


"clients are well pleased
 looks just like the brochure now
 except in netscape"

XHTML 2.0

The Web Standards Project

The XHTML spec has been published. It, unlike its predeccessors, will not be backward compliant with HTML and the XHTML 1.0 specs. Just when you thought you had it all figured out, something else to learn in order to be the cool kid on the block.

And the great big tech wheel in the sky keeps on turning...

A helping hand

Asa's Blog

I got to help Asa out with his new site design so as to make it more usable in other browsers than Moz. Asa helped me get started with learning XUL, so I figured I'd return the favor. Part of his problem was because IE requires setting the top attribute when using a position: relative statement as well as the fast that IE doesn't support the position:fixed attributes.

In any case, he's got a new layout. He's a major contributor to the Mozilla project and his blog is an interesting read if you use Moz as well as a way to check out some of the other Mozilla developers' blogs.

PHP + Mozilla?

| 3 Comments

Ok. Someone keeps finding me by searching for PHP and Mozilla. Now I know I have plenty of randow posting about both things, but my guess is you're looking for something specific? What is it? Maybe I can help you? Leave a message if you want...

Dive into Mark

So Mark linked to me today... As I discovered that, the following thoughts popped into my head:
1. Did he do it, or is that part of his blog automated?
2. I better finish applying all of the tips from his Accessibility series to my site before he notices...

In any case, now that I know there's a SQL plugin for Movable Type, maybe I will move my stuff over to that instead of using the text-based system... The only question is whether or not the DBI package is installed for Perl at my host. I'll have to check it out. And while I'm at it, maybe I'll whip up a full text search and compare the speed to the other MT search tool. And then I'll implement categories... And then...

Perl, perl, perl

Object Oriented Programming in Perl

The top two links there are an excellent jumping in spot if you want to learn how to write object oriented code in Perl. I have some oop experience from C++ and Java, which I then improved upon by writing some object in PHP. As I said, I'm trying to create a radix sorter to create an index to create a search plugin for Movable Type. Since MT is written in Perl, I figured I should learn it. I bought the Llama book from O'Reilly, cruised through the first few chapters, made the switch to online, and busted through the quick primer listed above. Tomorrow I'll try to get to the UMass library to look for some more algorithm analysis stuff, and maybe by tomorrow night I'll have some workable code.

That is, after I finish some online testing modules I'm writing for a client, finsh stripping a bench I'm re-finishing, and check the ceiling fan in my aunts house to make sure the bracket's not loose. Ah, what a wonderful life.

In other news, as recommended by Asa, I'm in the process of cheking out Shareaza. So far, it seems pretty sweet.

And while I'm doing the "by the way thing", I'm still not sure what caused the outage this morning... I'm waiting to hear from my provider. It if bothered anyone, I'm sorry.

Real Media = Open Source?

Slashdot | Open Source, Real Media Mega-player?

I've used Real Media a lot in the past, and its great to see them go Open Source. I'm interested in their business model, though. How do they plan on making money?

O'Reilly on Amazon's API

O'Reilly Network: Amazon Web Services API [July 21, 2002]

As soon as I get a good idea, I'm going to try to do something with this (I know, I said that when google released theirs, but I mean it this time).

My mom owns a used bookstore, and she uses a program that tracks all the books a certain customer has read. I think it'd be really neat to include the Amazon recommendation functionality into that program. To do it, though, I'd have to get in touch with the guy who writes the software my mom uses, and my guess is he won't want me messing with his program. Based on what my mom paid, he's doing plenty ok all by himself.

XML: using it

A List Apart: Using XML

An excellent article by David Eisenberg discussing many uses of XML with some very clear explanations. Highly recommended.

As a side note, I've been reading ALA for years now, and I find many of the articles there to be very useful. If you have a chance, cruise through the archives for some wonderfully helpful info.

Google Search:

Sweet. I've been working on a project that will benefit from this. My question is: Does this also work in IE, or is this a benefit of Moz that the "other browser" doesn't have?

Spider programming

So I've been cruising through the book Programming Spiders, Bots, and Aggregators in Java by Jeff Heaton, published by Sybex. I complained the other day about the author's writing style. Today, though, I come to tell you that the content is good.

So far, I've been learning about the http protocol, the way headers are sent and received, how to parse html, how to hadnle sockets, and more. I'm getting ready to bust into the section on building a high-volume spider using jdbc or odbc and threading. Maybe I'll even start running something relatively soon. The only problem is that I don't know what I'll do with the data yet.

As an aidse, all of this Java code means I need to brush up on my Java programming abilities... Better go get my Java book out...

Amazon API

With a bold move, Amazon has taken another step towards the future. They released an Amazon API, which will allow people to write programs that can obtain and manipulate data from the Amazon product database. Google recently did the same thing. Having recently come from academia, I think this is great. These are two huge groups of information that we all have access to. My mom runs a used bookstore. She could use an application that combines the two to find author information for customers, find out what the latest paperback books are and search google for used copies, etc etc.

One of the things I'm dying to try is to combine the power of AIML with the Google API. AIML is the Artificial Intelligence Markup Language developed by Dr. Richard Wallace. You can speak to an Alice bot at alicefoundation.org to test her out. AIML is based on XML and basically breaks language down into a series of words. These words are then matched against known words in Alice's database and then appropriate answers are spit out. Now, don't get the wrong impression: Alice can't learn from conversation (per se), she can only spit out what has been stored for her. However, Dr. Wallace based her speech patterns on a principle that claims that all of human speech is comprised of a small amount of words used repeatedly. Based on this, Alice can have some decently intelligent conversations and has done well in numerous AI contests.

My thoughts go like this: What if an Alice interpretter was written i such a way so as to use the google index as her knowledge base? I.E., what if she could take your question, break it down, and then search google, grab the most relevant info, and spit it back at you? What about the same with Amazon? All of a suddent, Alice knows what the top selling books are. Alice can find the wishlist for your computer wiz nephew. Alice becomes a rather intelligent agent.

This line of thought interests me a lot. Easire navigation of quality information pools. I'm down with that.

CSS, PHP, and XUL

A note on CSS: Just let me point out that because the layout of this site is done with CSS, I was able to "re-design" it by merely changing the contents of the stylesheet. Now that's the way the web is supposed to work.

A note on PHP: A new news group has been created: comp.lang.php. I've been hanging around there and doing my best to help out. I'm a firm believer in the power of open source projects, hence my support of Mozilla. I can program, but I'm not a *really* good programmer so the best thing I can do to help is give support to other people. Do what you can, right?

Finally, a note on XUL. I'm working through the tutorial on XUL editing at xulplanet.com. Very helpful as well as a good way to improve one's knowledge of XML, RDF, etc.

XML, PHP, and Mozilla...

Update: I had to cut the actual working code from this post because it kept throwing fits. Look for it to become a side bar eventually, as I stated below...

Yup, yup. I got my site back up. It turns out that I did break it when trying to fix movable type. However, I couldn't fix it because of a problem on my host's side of things.

Oh well. In any case, I finished a little project I started the other day. A long time ago, I wrote an XML parser in PHP that took a moreover XML feed and dumped it into nice output for a dynamically updated page. Well I learned recently that LiveJournal started RSS-ifying (how's that for a word?) their users' journal entries, and I just happen to have a friend that uses LJ. So, I modified my moreover script to pull his journal entries. And, in their full glory, here they are:

Look for this to become a side bar, along with some other RSS feeds that I think are nifty.

In other news, I've been using Moz 1.0 for a few days now, and its rock solid. For an interesting read, check out how to use the DOM Inspector. It lets you do some really neat things, including edit the page while you view it. I'm absolutely in love with Moz... If they only made little red lizard stuffed animals...