Home

Archive for the ‘Web Development’ Category

Commenting on news articles

Thursday, April 26th, 2007

Without getting into the exact details of why I’ve been debating this point, this article about “U.S. newspapers debate unfettered online reader comment(ing)” has been a sticking point in my efforts to bring commenting to a news organization’s website.

Faced with declining circulation, many U.S. newspapers are trying to engage readers by allowing them to respond to news stories online. But the anonymity of the Internet lets readers post obscenities and racist hate speech that would never be allowed in the printed paper.

For commenting to succeed, it has to be an honest exchange of ideas. Moderating out everything controversial betrays the contributors, and the spirit of discussion. A news organizations’ biggest mistake can be their lack of interest and/or fear in what the public actually thinks. The public’s views may be upsetting, but giving others a place to dispute them is why the web is so powerful.

Windows Server 2003 Running on Amazon Elastic Computing Cloud

Wednesday, April 18th, 2007

WARNING: This blog entry is super geeky. Proceed only if you know what an “elastic computing cloud” is :)

This article is a little older, but I was blown away when I saw it. The Enomaly Open Source Consulting group has been able to get Windows Server 2003 running on the Amazon Elastic Computing Cloud. I hadn’t heard of the Amazon Elastic Compute Cloud (“EC2″) until the other day, but it’s almost as amazing as their S3 storage offering.

Amazon Elastic Compute Cloud (Amazon EC2) is a web service that provides resizable compute capacity in the cloud. It is designed to make web-scale computing easier for developers.

Just as Amazon Simple Storage Service (Amazon S3) enables storage in the cloud, Amazon EC2 enables “compute” in the cloud. Amazon EC2’s simple web service interface allows you to obtain and configure capacity with minimal friction.

Supporting only *nix operating-systems initially, it was a challenge for EC2 to support Windows Server. However, Enomaly was able to run Windows Server via the processor emulator QEMU. They then packaged the image into an AIM (a EC2 computing image) running the Windows Server 2003 trial. From there, you can put your own Windows license onto the server, Remote Desktop in, and away you go!

Some nights, I’m just blown away by what some developers are able to achieve. Elastic computing clouds, attached to unlimited bandwidth, provides a massively scalable architecture on which to build complex web applications that scale effortlessly. Akamai’s content delivery network is about to look very antiquated ;)

Community translation

Sunday, April 15th, 2007

As I mentioned yesterday, I’m a big fan of the feature-set being developed by the people at Mojiti. I’ve started following their blog, and today they added another innovative feature: community translation. They’ve provided an interface for users to translate all the text on the site (1117 phrases) from English to one of 31 languages. Once all the translations are made for a particular language, they roll it out on the site.

For an international site like Mojiti (who doesn’t love watching guys being hit in the groan with footballs in any language ;) ), this sounds like a great way to grow your traffic and attract a much broader audience. ASP.NET makes displaying multiple languages pretty straight forward with built-in globalization features using resource files.

Once again, nice job Mojiiti! I translated some French for you ;)

Community translation

Uploading files with progress bar without server-side callbacks

Wednesday, March 21st, 2007

I’ve been looking for an easy way to add uploading to WhyYouShould for a while now. My main problem is that I built the site completely in ASP.NET, and without buying some expensive Control (or spending months writing it myself ;) ), it’s hard to do uploading with a progress bar. Also, it seemed next to impossible to get away from the ugly “Browse…” button.

I came across SWFUpload on Ajaxian today. The author has solved this problem (for all frameworks, not just ASP.NET) by combining the easy-of-use of Flash 8 for image uploading, with some tie-ins to Javascript. When you click your “browse” button (which can be skinned however you like), Javascript launches the file browser built into a hidden Flash file to select a file (or multiple files at once). Then, when you are ready, the hidden Flash file starts the upload and displays the upload progress. The file upload itself is done via a POST, so it will work for any web framework.

Pretty slick, eh! I know Jay is going to say, “Yah, Flash is awesome for file uploading. Didn’t you know that?” ;)

SWFUpload

SWFUpload

My ‘Dynamic Web-Browser’ = Apollo

Monday, March 19th, 2007

A while back I posted my manifesto for a “dynamic web-browser”, a custom operating-system application for web-applications. Apparently Adobe heard me (or rather, they already had this under development years ago) because today they launched an alpha of their new Apollo runtime. They even promoed an Ebay application that works very much like my fictional Amazon application.

The alpha SDK is really rough around the edges (I’m staring at the unpacked files wondering what the hell I’m supposed to do with them — PLEASE, someone post a nice tutorial :) ), but there’s a lot of promise there. Especially if it gives web-developers a more natural foray into the operating-system.

Still though, I think they ripped me off :)

Adobe Labs – Apollo

Apollo is the code name for the much hyped Adobe cross-operating system. It allows developers to build RIA (Rich Internet Applications) for the desktop, using the development platform of their choice. A key value proposition of the new technology, according to Adobe, is the ability for developers to create desktop applications in a fraction of the time they’re used to. Using Apollo developers can build applications using HTML, JavaScript, Flash, Flex and Ajax. Adobe’s goal is to redefine the Internet application and how it interacts with the browser – and vice-versa. (source)

Apollo

Zipcar upgrades their website

Monday, March 12th, 2007

I’m been using the Zipcar car-sharing service for almost a year now and still love it. It’s great for someone like me that lives downtown, doesn’t own a car, and needs a car every-now-and-again to run out to Ikea or somewhere. Not to mention, it’s great to show a history of car insurance so my rates are lower when I do get a car ;)

Anyhow, today Zipcar emailed all their customers with a link to a demo of their new interface that launches tomorrow. Firstly, I’m really impressed that they are organized enough to put together a whole walkthrough of their new interface (though I’m sure it’ll probably find its way onto the new site somewhere). But secondly, I think the interface is a substantial upgrade to an interface that was already “okay,” and miles above their competition.

Old interface:
The old interface was basically just a calendar “scrubber”/timeline that showed you when the cars in your area were free, after which you would use somewhat-annoying drop-down boxes to select the specific time you would like to book.
Old Zipcar interface

New interface:
The new interface is built around a search that let’s you browse a map of the cars in your area during the time you specify, then reserve the car right from inside the (Google) map.
New Zipcar map interface

You can also browse the listings of all the cars available, with the time you specified highlighted (the green bar in the screenshot below). Then, you can drag the time-window forward-and-back, and expand it to cover more time, via an Ajaxy scrubber that displays how much the trip will cost.
New Zipcar interface

The improvements they’ve made look great, and I wish them luck in their roll-out :) This is a great example of how to roll out a major upgrade. Let your customers know ahead of time, make them excited about it, and convince them that it’s an improvement. It’s also a sign of how “Web 2.0″ can significantly improve the online user-experience with very simple enhancements. You have to wonder if Zipcar is growing faster than Hertz and Enterprise precisely because their online interface is so much better ;)

Hummingbird RedDot Summit 2007

Saturday, February 10th, 2007

Next week I’ll be presenting at the RedDot Content Management System Summit 2007 in Huntington Beach, CA with my colleague, Andre. We’ll be presenting “Broadband Video News Powered by RedDot” Tuesday morning at 8:30am. I’m going to be showing off a bunch of our RQLing (RedDot Query Language), and we’ll lift the covers on our CityNews.ca site. I’ll also be blogging from the event Monday and Tuesday, and contributing to the RedDot User Group (I’m TheJonathan if you haven’t figured that out yet ;) ).

If you happen to be there, come check out our session! I’m trying to leave lots of time for questions at the end, so bring your RQL questions. See you there!

Hummingbird Summit 2007

Log-in to my blog with your Yahoo! account

Saturday, February 10th, 2007

Feel like logging into my blog with your Yahoo! account for no particular reason? Then please feel free to login here: https://login.yahoo.com/config/login?&.done=http://www.keebler.net. Don’t worry, I’m not stealing your password or anything; you’re using the real Yahoo!.

I’m been noticing lately how much information web developers applications are giving away in the query string. In this case I can’t really do anything besides redirect to my site, but holes like these make it really easy for phishers to look legit, and trick people into giving them personal information (or worse).

For example, what if you went to a URL starting with https://login.yahoo.com, entered your correct username/password, then we taken to another fake page, that looks just like the “Incorrect password” screen from Yahoo!, where you are asked for your username/password again. Would you really be sure to check the URL again? I think 99% of people would offer up their username/password to the hacker.

Anyhow, you get my point ;) Security good. Phishing bad. Yahoo! vulnerable. *grunt*

Yahoo Login Window

Digg vs. Slashdot

Friday, February 2nd, 2007

Wow, I kinda suspected that Digg was killing Slashdot lately, but check out the comparative graph of “People” from Compete:

The number of people in the U.S. estimated to have visited a domain. People counts are also known as unique visitors – they only count a person once no matter how many times they visit a site in a given month.

I guess all the media attention Digg has gotten lately, combined with the fact that it’s more than just technology news, is driving all this traffic. Still though, that’s a pretty huge divide! :)

(Thanks for the Compete hat-tip fuzzz)

Dynamic Web-Browser

Tuesday, January 16th, 2007

We got into a (2 1/2 hour) discussion at work today about the direction of our next project. While thinking about how we can push the boundaries of what a website can do, it really struck me how limiting working within a traditional web-browser is. The web-browser really is a compromise. You can build whatever application you want, style it however you want, show whatever content you want, as long as you are happy to stay within the square-box of the browser window.

Well, I’m tired of working within the square-box! Maybe Joost-like software isn’t such a crazy idea. It’s a “web” application (in this case, a video player that streams videos off the web) that has all the benefits of a Windows application: faster response times, dynamic interfaces that Ajax could only dream of, and a window that they can skin and control 100%.

Whereas, web-applications like “broadband video players” try their best to simulate a window (small “w” — could be on a Mac or Linux) program, they are constrained by the square-box and can never match the single-task-ness of a window application.

However, the beauty of the web-browser is the flow between websites using hyperlinks. “Surfing the web” is a flow through many webpages on many websites. While the interfaces for the individual websites may change, you can still navigate easily between them.

So here is what I propose: keep the hyperlinks, keep the “flow”, ditch the square-box. Instead of having a web-browser wrap around the interfaces of each website, let the websites skin the browser itself. I’m talking about more than merely switching themes and colours. What if the web-browser application could be turned into a custom application for each website? When you go to Google, your web-browser takes on the shape and configuration that makes it easiest to search. When you follow a link to Amazon, your web-browser morphes into a shopping configuration. Going to office.microsoft.com could turn your web-browser into Word, or Powerpoint, or Excel. Existing websites, without these dynamic skins, could even revert to the square-box configuration for backwards-compatibility.

A dynamic web-browser like this would break-down the lines between websites and (installed) applications. With all the power of the web for sharing and communicating, and all the power of an application for speed and interface, it would bring together the windowed environment, with the online world in new an exciting ways.

Because of the nature of the web, I’m sure someone is already working on this application. If anyone wants to give me some VC, I’ll build it myself :) Just a thought ;-)