Feb 27

Using Greasemonkeys instead of Save Web page

Tech 2 Comments »

Kevin Lynch kicked off the Adobe Engage event in SF this morning. In one of his demos he did something that I have been seeing more and more.

He was showing off an Apollo based eBay application that uses the eBay Web Service APIs.

One part shows a tweaked eBay web page, and in the past you would see people doing a ‘Save As’ in their browser to grab everything, and then editing it, and showing that page locally.

He had instead used good old GreaseMonkey to tweak the interface directly at ebay.com.

This makes for a really nice demo tool and it has the added benefit that you can share your script if there is something useful that others may want to do.

Feb 27

listid: foo@bar.com

Tech 14 Comments »

When you look at the filtering options in Gmail they may look a little simple compared to other options.

One frustration I had was that although there were options to search on To: and Cc: what about if someone Bcc:’d a list that I was on? I don’t want things to slip through the net!

Then I found that you could use listid: [the list] and it actually worked.

Feb 26

The case for twenty four hour time in web apps

Tech No Comments »

Ben was waiting at the rental counter in Oakland. He had to wait for me to pick him up as he lost his wallet at the airport (the one before he got on the flight).

Anyway, he saw people at the rental car desk running into problems as they had checked AM instead of PM on the website.

This is why 24 hour time could make sense in some way. 12 hour time can be good when you have the context of the time of day, but 24 hour time isn’t ambiguous.

Even in places where 24 time isn’t used, you could put that time in a subtle place on the interface and it could be enough to stop this issue.

Or, people could not be dumb. That won’t happen.

Feb 26

Yahoo! Pipes using Google Library Isn’t News

Tech 1 Comment »

Yahoo! Pipes uses the canvas in IE library that a Googler put out there on Google Code.

Also, a lot of the useful endpoints for Pipes are at Google, so there are links there too.

A few people have emailed saying that they are a little surprised by that.

I find it a shame that people are surprised. We are one web community, and I would be more surprised if a team Yahoo! reimplemented the IE canvas code. The same goes for seeing useful YUI code in something that Google did.

I sincerely hope that Google and Yahoo! work together where it makes sense, as they are both friends of the open web. We are down the road to each other too darn it so it is easy to meet up and chat.

Feb 25

Premature Optimization Again

Tech 4 Comments »

Route of all evil. Yup, it is bad, but in many ways.

I was watching a project recently where the poor user was biten by premature optimization.

The developers spent so much time on making the application elegant and beautiful and future proof that:

  • It took a lot longer to get it out there
  • The users had to jump through hoops to do their own work, and there was delays in getting fresh content out there
  • The iteration “make it easier for users” was always “just after the next thing”

If the user was considered first, someone usable would have been out there, and THEN the developers would have had to make it work with caching after the fact.

That being said, you obviously don’t want to be dumb with your architecture, making it hard to grow in the future. I have seen that happen too.

Feb 23

Virus found on the parking lot system

Tech 2 Comments »

I wish I had my camera on my at the SFO airport when I got my parking lot ticket.

On the screen there was a windows popup showing that Norton had found a virus.

Ouch.

Feb 22

The next plug and play: Enable/Disable of add-ons

Tech 3 Comments »

Firefox sometimes gets a wrap of being a memory hog. It isn’t perfect, but I normally find that the issue is to do with a add-on or three that I have installed.

If I start to complain about Firefox, I try to disable all plugins for awhile to make sure that I am not moaning about the wrong person.

I have been pushing the poor browser a long way recently. I don’t think that current browsers were quite designed for 4 windows of 20 tabs each containing rich applications such as Gmail, Pipes, and Picnik all going at once.

I found that over time my memory was slowly getting used, and Firefox would slow down to a crawl.

Firebug seemed to be one of the culprits in my case. When I had it disabled the memory footprint went down and has been stable.

Obviously, I can’t live without Firebug. There are a lot of add-ons that I do not need on all the time, but that I want available.

Ideally, I would be able to dynamically load and unload add-ons. It would even be nice to customize windows so window one is “pure simple browsing” and has nothing on. Window two is dev window and has everything tricked out.

As we push more and more into the browser, it will become more of a container that I need to plug items in and out of on demand.

Feb 21

The definition of pain…

Tech 5 Comments »

pain noun, /peɪn/:

  1. Watching a friend install a user friendly linux on a Macbook Pro

Still a long way to go.

Beryl is definitely interesting though. I just with there were MORE choices for a window manager in linux.

Feb 21

Philz Coffee and Google Maps

Tech 5 Comments »

I visited a friend in the city and he took me to Philz Coffee which felt a little like the soup nazi of Java.

You don’t put your own milk in. They do. They know best. They are experts.

Each cup is made individually. There isn’t a huge pot of coffee brewing that gets sloshed into your cup and throw over to you.

It shows too, as it tastes fantastic. I felt like i hadn’t tasted coffee before!

In honour of the new coffee shop that I just found, I whipped up a Google Map using the new version 2 API.

I wanted to play around, so I first setup the map, adding the controls for zooming and views (satellite, hybrid, just map):

var map = new GMap2(document.getElementById("map"));
var point = new GLatLng(37.761194, -122.430728);

map.addControl(new GMapTypeControl());
map.addControl(new GLargeMapControl());
map.addControl(new GScaleControl());

map.setCenter(point, 16);

Then I created a new icon using Philz logo:

// Create our "coffee" marker icon
var icon = new GIcon();
icon.image = "http://almaer.com/philzgmap/philmarker.png";
icon.iconSize = new GSize(26, 41);
icon.iconAnchor = new GPoint(30, -10);
icon.infoWindowAnchor = new GPoint(5, 1);

I setup the array of tabs to use on the marker:

// Our info window content
var infoTabs = [
new GInfoWindowTab("About Philz", "<div style='float: left; padding: 10px;'><a href='http://www.philzcoffee.com/'><img src='http://almaer.com/philzgmap/phillogo.png' border='0' /></a></div><>Philz Coffee in San Francisco has developed a devoted following, and for good reason.</p><p>The ten blends that are now available by the pound are the result of 25 years of coffee alchemy and invention.</p>"),
new GInfoWindowTab("Locations", "<div align='center' style='padding: 10px;'><a href='http://www.philzcoffee.com/'><img src='http://almaer.com/philzgmap/phillogo.png' border='0' /></a></div><div style='float: left'><b>Mission District</b><br/>3101 24th St. at Folsom St.<br/>Cafe: 415.282.9155</div><div style='float: right'><b>Castro District</b><br/>3901 18th St. at Sanchez<br/>Cafe: 415.552-8378</div>")
];

I wanted the usual click handling to show and hide the info box, and also wanted to turn it on by default so I forced it:

var marker = new GMarker(point, icon);
GEvent.addListener(marker, "click", function() {
marker.openInfoWindowTabsHtml(infoTabs, {maxWidth: 400} );
});

map.addOverlay(marker);

marker.openInfoWindowTabsHtml(infoTabs, {maxWidth: 400} );

Nice and simple. If Philz gives me some free coffee then I would be willing to create a nice map widget for their locations for them to put on their about page

Feb 20

“I don’t know the difference between them”

Tech 3 Comments »

I was watching my wife using her Macbook this weekend and she happened to have a couple of windows open, one with Firefox, one with Safari.

I asked her why she had both going, and she replied that:

  • She didn’t even know that she had both running
  • She didn’t know which window was from which program
  • “I have never understood where there is more than one browser. Aren’t they all the same?

This hit home that for non-techies browsers really ARE pretty darn similar these days. I can rail of reasons why I need to run Firefox for extension X, Y, Z, but I like to run Safari for speed on the mac, and then I download WebKit nightly …. blah blah.

For someone like my wife, the browsers look all the same to her. This shows that for the next versions of our favourite browsers, I hope that there is some really interesting innovation that my wife can look at and see how that helps her out as she tries to traverse the web.