WorldChanging: Another World Is Here: Islamophone: “When it comes to information technology, the United States is something of an outlier. For a variety of reasons, Americans are far more likely than residents of much of the rest of the world to rely on computers as their primary information devices. In most other places, the mobile phone is the main platform for info services. While this has both advantages (mobility) and disadvantages (editing documents), the ubiquity of the mobile telephone as information appliance has led to some novel regional variants.”

PHP 5 is finally out. I am starting a new service these days, and I’m still using PHP 4. I’ll probably switch to PHP5 in 2005, once some of the classes & libraries I like to use have been updated. (The services I start only need to run on my machines so I can control the environment.)

Ever wondered how to set up username.domain.com when a lot of users are signing up for your service? Apache module mod_vhost_alias is the answer.

In httpd.conf in the virtual host container, add “UseCanonicalName Off”. And instead of “DocumentRoot” you write “VirtualDocumentRoot”. The following code: “/dev/account_htdocs/%1.1/%1”, given “http://peter.domain.com”, resolves to “/dev/account_htdocs/p/peter”.

%0 means give me the whole name: peter.domain.com
%1 means give me the first part of the name: peter
%3 means give me the third part: com
%1.1 means give me the first letter of the first part: p

Using the /p/ subdirectory helps when I get 1000s of users because most Oss get slow when a directory has 1000s of subdirectories. This approach spreads it out a bit.

Today was the first day of “work” since I quit my job and decided to start working for myself.

I spend the morning evaluating PHP classes for use in a project I’m starting up – no point in re-inventing the wheel. I found a user authentication class I like (although it lacks a “remember me” feature – I’ll just program that in myself) and I may have decided on a simple templating class I want to use (Smarty’s not good for this site). In the afternoon I did some design work in Dreamweaver for the admin section of this project (it’s a web-based service).

Working for myself is a LOT of fun. I think it’ll last. I can decide what I feel like working on (I have a long to-do list). And I feel I actually made some progress today.

countless stories: “Countless Stories is a dynamic documentary that combines RTSP video streaming with database technologies to create stories that assemble themselves based on input from the audience.”

Cafe usability testing: go to a bar/coffee shop, set up your computer and a sign for free beer/coffee, and test with users. I will definitely try this out. Sounds like the cheapest way to get participants to usability test.

Using the XML HTTP Request object: “Internet Explorer on Windows, Safari on Mac OS-X and Mozilla on all platforms provide a method for client side javascript to make HTTP requests. This allows you to make HEAD requests to see when a resource was last modified, or to see if it even exists. It makes your scripting options more flexible allowing for POST requests without having the page change, and opens up the possibility of using PUT, DELETE etc.”

By the way, in NYC, did the Chinese takeout places decide en-masse to stop adding fortune cookies?

This is a very long videoblogging post. It’s really an interview I did with Jay a while back, when we started thinking about this videoblogging stuff. 20 minutes, 20 Megs. I am putting it out here in part as an experiment to see how it affects my bandwdith (it only downloads after you click “Click to Play”). Enjoy.
Continue reading

License question: can I take software under the GNU GPL license, modify it to fit my needs and offer access to use it as part of a hosted service? Say I take a GNU GPL licensed discussion board software, modify it and then charge people $5 to access my site where they discuss things. Is that ok? (It looks like it is to me, but I just wanted to check…)