Thursday, June 29, 2006

Digg requiring login for some articles

Digg now seems to be requiring logins for some articles. So far the categories "People Videos" and "Space" seem to do this. Try clicking on this link without being logged in to digg:

Caller goes insane over marketing call (NSFW)

Maybe I missed the memo, but this seems completely ridiculous!

Tuesday, April 18, 2006

The Blogger Interface Needs Help

I'm not sure who made the blogger web interface, but it clearly wasn't Google. The main page is nearly unusable on Firefox (the scrolling list of updated blogs slows it to a crawl). I'll probably start making posts from Konqueror since the javascript seems incompatible with it. In other news, Google Calendar was released a few days ago, and it can even sync with an iPod on Linux using gtkpod. I'll post a script and guide to that sometime next week (maybe sooner).

However, for now, my own personal message to Google: REWRITE BLOGGER.

Sunday, April 09, 2006

Google Bookmarks

I just discovered that Google Search History has bookmarks built in. This reminds me of the old days when I used Yahoo! Companion (now Yahoo! Toolbar, I no longer use it). Companion had a button for storing bookmarks so you could access them on any system you logged in to (there was a web interface as well as the companion). I would like to see a similar type of integration with Google Toolbar, or possibly an RSS feed of all your bookmarks, plus RSS feeds separated by labels, with the first item being an "Add Bookmark Here" link. This would allow Firefox users to use the "Live Bookmarks" feature put their google bookmarks on their bookmarks bar. Not quite as nice as what I'm sure they could add through Google Toolbar, but a thought. I might try creating a program to scrape my bookmarks in to that, in fact.

Tuesday, April 04, 2006

PHP Regular Expressions vs. JavaScript

I have been doing a little work with the WikiMedia wiki parser. I'm trying a direct translation to JavaScript, with a few modifications. So far a potential problem I've seen is the use of the s and x flags in the PHP regular expressions, there are no equivalents to these in JavaScript. x doesn't seem to be a problem, since it does something that can be done by just editing the source code. However, s causes the . character to match newlines. This could be a problem. With any luck it won't break too many pages.

Tuesday, March 28, 2006

Google Pages

I've started using Google Pages (took about a week and a half to get the invite once I put myself on the waiting list). It's nice for being so new, but it could definitely use some work. Especially in the area of speed, the editor is pretty slugish. I know that DHTML gets pretty slow when you try to do anything complex with it, but I am hoping the speed will get better. Maybe Google could make a plugin for Firefox that replaced the editor with a faster one using XUL. That would mean twice as much to maintain though.

Other than the speed, I like the service, I hope they will add some support for dynamic pages at some point. But for now it is at least good for those of us who are not HTML/CSS experts and certainly not designers. Sure, I know HTML and CSS, but I can't design a page, the template is way better than anything I could ever do. Take a look at my page (yes, this link is also on the side).

A few suggestions for Google Pages:
  • Speed up the editor
  • Use the same space for GMail and Google Pages (e.g. I have 2 gigs of GMail space + 100 MB of Pages space, combine them!)
  • Add an easy method of adding RSS feeds to the page (already looking into how to do this)
  • Not that I'm planning on using it, but maybe make it easy to add AdSense to the page
  • Doesn't google have a photos service? Integrate with that too.

I must congratulate the Google developers on another great DHTML app though.

Java 5 strangeness

I discovered this a few days ago, it seems Java 5 may have a small change in how it resolves methods. About a year and a half ago I wrote some code for Java 1.4 that looked like this:

public abstract class SuperClass extends Thread {
private LinkedList list;

public void run() {
Object o = list.removeFirst();
process(o);
}

public abstract void process(Object o);
}

public class SubClass extends SuperClass {
public void process(Object o) {
throw new RuntimeException("Unsupported Input!");
}

public void process(String s) {
}

public void process(Reader r) {
}
}

Obviously the code was more complex than this, but it demonstrates the difference. I was helping a friend with some code similar to this, and Java was calling the method that took Object even if there was a method that took a more specific type. I'm not sure what the difference in the bytecode is here. I know that usually Java mangles the name in these cases, but what does it call the method when it needs to be determined at runtime?

It still seems like this is a strange difference. Of course, there isn't a lot of code that uses this, and if the difference is the compiler then code compiled with the old compiler should still work on the Java 5 runtime. I still do wonder if there are any showstoppers in running full Java 1.4 applications on Java 5, has anyone found one?