Archive for the ‘Software’ Category

Tagging

Wednesday, May 11th, 2005

My buzzword sensor has found enough occurrences of people using the term “tagging” to investigate further. Tagging is just classifying things, but in the way that most people see the world instead of how scientific taxonomies distinguish it. When you get a highly collaborative, self-organizing community like the Web to start tagging, then you have something interesting called a folksonomy. And it’s the latest rage for social network websites.

For example, del.icio.us is a social bookmarks manager where you store and categorize your collection of links. Because links are tagged, you can find links that other people tagged with categories that interest you. Of course, bloggers have been using tags all along, tagging their posts, photos, and links automatically, because most blog software uses RSS/Atom. To manually tag things like links, people are using a new attribute of rel=”tag”.

The current fad is to measure the use of tags and display a weighted list, also called a tag cloud. It’s a list of popular tags, with the most popular tags receiving a larger font size and weight. Some examples of tag clouds are at Technorati, Flickr, Craigslist, and 43 Things. Perhaps we have gotten a small step closer to the semantic web.

I want my MP3!

Wednesday, April 13th, 2005

Actually, I want my OGG, but that didn’t evoke the nostalgia of MTV’s catch-phrase from the 80’s. What I definitely don’t want is Fairplay or WMA with all its nasty DRM. But when you look around at the legit online music services, you’re gonna get DRM. Here’s my problem with the online services:

  • With savings on production, packaging, and distribution costs, it should cost less to download than buy a CD.
  • I’m getting encoded music with lesser quality than the orignal CDDA, so I should pay less for it.
  • I want to play music anywhere I choose, including my multi-codec player that abhors DRM.

I’ve found some answers to these problems, so click the link below to read my full thoughts.
(more…)

Google bomb

Wednesday, January 12th, 2005

I heard about Google bombs from reading Dean’s blog entry. A Google bomb is an attempt to influence the ranking of a site in Google’s search results. While Google’s algorithm for ranking is secret, people have figured out that a website is ranked higher if the sites that link to a page use consistent text.

One of the most famous Google bombs was a campaign by Adam Mathes to get the search results of “talentless hack” to list the website of his friend Andy Pressman. Adam got enough webloggers to link Andy’s site with the text “talentless hack” that Pressman’s site became the number result in a Google search.

The interesting thing about Google bombs is that once they become popular, people talk about them, and the bomb is knocked out of the top spot. Some people think there’s no reason to counter Google bombs because of this natural effect.

If you went and read the comments on Dean’s blog, then you know we tried a Google bomb of our own. We both linked to Gayle’s website using the text of “fishies for president“. And sure enough, as of right now, it’s the number one website listed for that search on Google.

Firefox in the NYT

Thursday, December 16th, 2004

nyt_firefox.pngIt’s getting hard to ignore the popularity of Firefox. With the release of Firefox 1.0 and 11 million downloads since November, the Spread Firefox team decided to broaden the campaign further by placing a two-page ad in the New York Times. Look closely at the background: there are 10,000 names of people listed from the community who contributed funds for the ad.

Of course I support Firefox because it is open-source, but I also think Firefox is a faster and more usable browser. I’ve been talking to friends at work, and I didn’t realize how badly people are afflicted with spyware and viruses. Firefox is better suited to security because it is written carefully and supported responsively by the community.

The statistics speak for themselves. Firefox has had 4 advisories in 2004, rated as moderate or low in criticality. That other browser has had 34 advisories in 2004, with over half of them rated as moderate to extremely critical. Even worse, half of the vulnerabilities for that other browser have no patches, some of which are highly critical. So, what are you waiting for?

Serverside Image Observing in Java

Wednesday, November 24th, 2004

I ran into the problem of needing to load a BufferedImage on the serverside of a Java web application. I’m manipulating images dynamically in code that are then served to the web browser. Java loads images asynchronously by default, and you can track progress using the ImageObserver interface, but it might not be as easy as you think.

(more…)

Little Buttons and Fonts

Thursday, November 18th, 2004

Rob Sable has a great post called Button Madness where he demystifies those cute little buttons everyone seems to have on their web pages. Of course I immediately used Button Maker to create my own “eBlog” button. :) The buttons use a short, skinny font called Silkscreen that was created by Jason Kottke and given away as a free TrueType font. It turns out this font is used everywhere, which I realized only after I saw it and started noticing it. As I type this into Moveable Type, I can see the font is used on the menu buttons.

Software Triangle

Saturday, September 18th, 2004

I was searching on images.google.com for diagrams about iterative software development, and I found this image. It’s a triangle with the vertices labeled as “schedule,” “functionality,” and “budget.” On each edge, a project meets its goals for two components, but lacks in the third one. It’s kind of like the Bermuda triangle of software development.

I think an agile development process would try to avoid this triangle, but would prefer to land on the edge of “on schedule and on budget, but reduced functionality.” The triangle misses another factor of software, which is quality. A project could deliver a full system on time at the right price, but be pretty buggy in production. I think quality is the worst sacrifice to make because it’s very frustrating to people when they aren’t given a chance to perform at levels that satisfy them. And it leaves developers with a code base that is expensive and painful to maintain. In other words, it reduces developers’ morale and costs more money in the long run when quality is sacrificed.

Spam Bots that Blog

Saturday, September 4th, 2004

I’ve been getting some interesting comments to the entries on this blog. Here is one of them:

One declaims endlessly against the passions; one imputes all of man’s suffering to them. One forgets that they are also the source of all his pleasures.

Not exactly on-topic, and it sounds more like a quote from some old philospher. These quotes have been popping up in the comments across entries, and each one is from the same poster who conveniently leaves a link to their website — an online casino.

mt-scode.cgi.pngObviously, it’s a scripted spam bot that knows how to blog. I tried to block its IP address, but it uses a different one each time. Finally I blocked the website name from the comments. I searched around and found lots of people have these problems on their blogs. This entry called Concerning Spam is a good summary of the measures to protect against spammers. The Security Code hack is my favorite. It puts an image like the one to the right on the comments page that the poster has to type it. Hopefully I won’t have to install that, but maybe I’ll do it just for fun.

JavaServer Faces

Friday, July 16th, 2004

I went to a brown bag lunch today to hear about JavaServer Faces, a UI framework for web apps. Apparently, the brown bag was inspired by a talk at JavaOne given by Craig McClanahan. Craig is a contributor to Struts who now works for Sun as the lead for JSR-127, JavaServer Faces. JSF is interesting, but from the short presentation I couldn’t grok how it was an improvement over Stuts and struts-html tags. You wonder if Sun is just trying to embrace and extend a successful open-source project, make their spec a “standard”, and place their reference under their stinky SCSL terms. (JDO versus OJB, NetBeans versus Eclipse, hm …)

At the end of the talk, the presenter posed a programming problem for us to ponder. In the following Java program, what could make it print out “not equal”?


if (x == x) {
System.out.println("equal");
}
else {
System.out.println("not equal");
}

It took me back to my certification days.

Shifting to Stream Ripping

Wednesday, April 21st, 2004

Is there a shift occurring from file sharing to stream ripping? Listening to streaming radio stations like those on Shoutcast doesn’t give you control over which songs you hear, but you can choose a genre and a high quality bitrate. And the RIAA doesn’t know if you are just listening or ripping the mp3 stream. Links from an article on Slashdot on the topic have people discussing the software they use and how the RIAA might respond.

I’ve been using Streamripper, which uses the ID3 data in the stream to write mp3 files with the right ID3 tags. Sometimes, the ID3 data arrives too early or late, and the files are not cut up cleanly, especially when the broadcaster is using cross-fading. Sometimes the stream hangs up after a while with certain stations, which surprised me over broadband. Are some broadcasters doing this on purpose to foil rippers?

Recording radio with a computer is protected by the Home Recording Act of 1992. Because computers are general purpose machines and not digital audio recording devices, they are not required to comply with Serial Copy Management System requirement (no copies of copies). However, Real Networks sued Streambox using the Digital Millennium Copyright Act to prevent them from saving streams from Real audio format. But if there is no copyright protection on the stream format (straight mp3), then is there no circumvention?

Another interesting idea is XM Radio. They sell a nifty USB-based device called XM Radio PCR that lets you listen to satellite radio on your computer, which means you can save the audio easily. It works using a line-in to your sound card, so the signal is analog. However, the PCR has already been hacked, and you can either buy a kit or a modified PCR to get digital optical outputs. Of course, there is XMPCR Linux software available, based on a Perl module, that makes ripping the stream and tagging the artist information easy to do. :)