Update: I've written a followup to this post.
This has been a strange year to live in Oakland. The FBI says violent crime is up, but the City doesn't publish statistics in a particularly friendly format. Inspired by Adrian Holovaty's Chicago Crime, I'm in the process of exploring how the new CrimeWatch II application can be bent into a more usable shape.
This post describes the first two steps in extracting information out of CrimeWatch II: downloading known maps, and extracting positions of crime markers from those maps.
Linked text files:
- Example HTTP transcript: oaklandnet-http-transcript-02.txt (19K)
- Map request shell script: map-download.txt (6K)
- Example icon: vandalism.png (0.3K)
- Final icon matching script: scan-image.py (10K)
Initially, I had expected this to be a simple screen-scraping project, but as it turns out the available data is published in JPEG form as a series of icons overlaid on simple city maps:
Before attempting to geolocate individual crimes, it would be necessary to pick them out of the map image. Because the CrimeWatch application uses frames, cookies, background-images, and other techniques, it was first necessary to log HTTP traffic and understand what requests and parameters generated each map.
GET /crimewatch/map.asp?mapfunction1=51… Host: gismaps.oaklandnet.com User-Agent: Mozilla/5.0 (Macintosh; U; … Accept: text/xml,application/xml,applic… Accept-Language: en-us,en;q=0.5 Accept-Encoding: gzip,deflate Accept-Charset: ISO-8859-1,utf-8;q=0.7,… Keep-Alive: 300 Connection: keep-alive Referer: http://gismaps.oaklandnet.com/… Cookie: OmegaCVCDisclaimer=yes; ASPSESS… HTTP/1.x 200 OK Date: Sat, 23 Dec 2006 22:35:36 GMT Server: Microsoft-IIS/6.0 Content-Length: 1763 Content-Type: text/html Cache-Control: private
Once the map image has been retrieved, it's necessary to pick through the returned image and identify the crime icons (see the right-hand legend in the screen shot). Because JPEG is a lossy-compression format and many icons occlude one another, it would not sufficient to search for exact pixel matches with the known set of icons. Instead, a more fuzzy, "best fit" method was needed.
I used Python with a combination of PIL and Numeric to extract icons from map images. I created average representations for each type of icon (e.g. "vandalism", PSD and PNG) based on maps with many instances of each.
Visual feature extraction is a two-step problem: quickly find a set of possible locations for icons, then check each in detail to determine if it's a match. The first step needs to eliminate as much background noise as possible for the more time-consuming second step to work quickly. I tried three different approaches before settling on one that seemed to work best.
A first, I tried to simply eliminate background pixels to cut down on the number of possible icon positions. It was easy to find representative colors for land, water, freeways, and parks, and eliminate about 70% of the total map pixels. With approximately 1-megapixel maps, this left about 300K pixels to check for icon matches, a prohibitively large number.
Next, I tried the opposite approach: find representative colors from each icon, and find likely locations based on the presence of those colors, rather than the absence of background colors. This means that I didn't spend a lot of time checking blue "simple assault" parts of the image for obviously-incorrect red "aggravated assault" icons. This was a major time savings, since most icons contain a representative color that appears little on the map. The exception to this rule is "robbery" and "burglary", two crimes that use black & white icons. Searches for these icons take dramatically longer than the others.
Finally, I expanded on the icon matches to better account for partially-occluded icons. When I encounter a possible match that's not strong enough to be included as a complete icon, but is still within about 50% of the threshold, I check the top, bottom, right, and left halves of the icon individually. If any of these result in an above-threshold match, I include them in the final results.
The final Python script takes about 2 minutes to convert the first linked image below into the second. Partially-occluded icons are marked with a light outline, fully-matched icons are marked with dark:
Although there are a few misses, the input image represents an unrealistic worst-case: two weeks' of data covering all possible crimes, with zip code boundaries visible. It is simple to request single-crime maps, with no boundaries, for one-day spans to cut down on the icon overlap.
There are two obvious next steps: use known addresses and intersections to geocode the matched icons (the CrimeWatch application promises only that they are placed at block-level accuracy), and make further HTTP requests for more detail about each crime, especially the time of day at which it was reported.
Also, it appears that the SFPD has recently switched to a crime mapping application developed by the same vendors, Omega Group and MoosePoint (!), so expanding this process to cover San Francisco should be easy.
Keep reading the followup to this post.
Oakland, one mile west of my house:
Two men were killed and four wounded in two shootings that happened a half-hour apart Wednesday night in East and West Oakland, police said. The shootings do not appear to be related, police said Thursday. At 8 p.m. Wednesday a gunman opened fire on a car driving in the 600 block of Apgar Street in West Oakland, killing driver Lord Addo, 21, and wounding his passenger.
Piedmont, one mile east of my house:
For weeks, Piedmont police were stumped by the Beanie Baby bandit. The popular stuffed animals were mysteriously showing up overnight on porches and in the yards of two homes on Rose Avenue. One of the families feared a stalker. Now, police in the tranquil East Bay city think they may have identified a suspect: Gertie, one of the family's cats, which was caught on a surveillance camera carrying the plush toys in its mouth. ... "The cat was caught on tape, but we don't know if it was moving the Beanie Babies from the location where somebody put them," police Capt. John Hunt said Thursday.
This is a quick followup on a previous post about specifying time. I've created a minimal Actionscript 2.0 library that parses and generates time ranges in that form: timespan.tar.gz, 2.5k. Combined with Kevin Lynch's technique for stateful linking in Flash, it should be easily possible to read, use, and update links of the form example.com/#2006-12-19T21:10:00Z/1D0:01:00, for linking to absolute times and timespans in Flash files.
Things currently open in my browser, that I want to read eventually, don't have the time for, and won't eject into the wasteland of Del.icio.us:
- New York Times Year In Ideas
- Indri: Language modeling meets inference networks.
- Jakob Verbeek
- Bray-Curtis Algorithm
- PennAspect PLSA
- PostDocs on InfoViz
- InfoViz Evaluation Papers
- Boot chart for Linux
- Dimitre's photos tagged with "spamart"
Same deal, in Preview:
- A Flat World, A Level Playing Field, a Small World After All, or None of the Above?, Review of Thomas L Friedman, The World is Flat, Edward E. Leamer
- Is There Science In Visualization?, associated slides
- Hofmann '99: Probablistic Latent Semantic Analysis
Ableton's Live music software has a great time navigation widget. It's a fairly standard interface for viewing slices of a sequenced composition, similar in spirit to Google Finance. They integrate zoom and pan into a single interface element, mapping vertical motion to zoom (up = zoom out, down = zoom in) and horizontal motion to pan left and right. The two don't occur together, so if you start moving horizontally you don't get to zoom until you make a sharp vertical motion. I suspect there's a cut-off at each 45 degree angle.
Anyway, here is a brief video showing how it works:
It's unfortunate that the mouse cursor has to disappear when dragging.
This old (new to me) video is out of control: Bike Messenger Race, New York City
What the hell is going on there? Seven minutes of P.O.V. stoplight-running and squeeezing between cabs and busses in the busy streets of Manhattan, that's what. Although I lack the cojones to do something like this myself (and suspect that the excitement is being pumped up a bit with a fisheye lens anyway), what a pleasure to watch. It's like the Star Wars trench run but more visceral, because you feel like one of these riders is going to eat it or get doored I.R.L. at any moment. They weave between pedestrians, shimmy out of the way of cross-traffic, and hold on to vehicles for an extra power-up.
The traffic moves are clearly deadly, but having just visited New York I can say that they're better drivers over there for being as aggressive as they are. Here in San Francisco, I get pissed off at drivers or pedestrians for being wishy-washy: go, no-go, hold on, on the phone, on the pot, etc. In New York everyone just goes, so you pretty much always know what to expect and how to behave. Then again, with asshole bikers like the guys in this video, you end up with something approaching this classic video of traffic in India.
Of course this is all academic for me at the moment, because I have a raging pinched nerve in my leg and it's making me an utter basket case. Can hardly sit or walk, and especially can't ride my bike.
Tom and I kicked around a few simple possibilities today:
- Point: 2006-12-01T06:12:01Z.
- Range, point-to-point: 2006-12-01T06:12:01Z/2006-12-02T06:12:01Z, a machine-friendly way to do ranges.
- Range, point-distance: 2006-12-01T06:12:01Z/1D00:00:00, a more human-readable way to do ranges like "one week".
Too limited, or appropriately limited?
5 minutes ago - Kati Kim and her two girls have been found, they are being helicoptered out to a hospital. James Kim went out on foot two days ago and the Search and Rescue team are now tracking him and hope to find him soon.
This is a lazyweb request for a math tutor. I know just enough linear algebra and matrix math to be curious, but not yet enough to be dangerous, and I'm looking for a tutor in Oakland, Berkeley, or San Francisco to help me fill in the gaps.
Ideally, I'd like to meet with a math student or professional for a half-dozen hour-long sessions that will help me understand terminology, notation, and concepts involved in linear algebra and (important!) how these apply to computer science domains such as data mining, search engines, document clustering, and other related topics. I'm particularly interested in being able to quickly understand and apply papers such as this or this.
I don't know how difficult this is for someone well-versed in the subject, so I can pay in food, beer, or US$. Amount negotiable. Write me at mike at stamen dot com.
I'd like to nominate him for The First Annual John C. Dvorak Award For Outstanding Achievement In The Field of Attention Journalism. The souvenir award statuette (or "trollie") is pictured below:
We automatically detect new buzz by crawling 50,000 of the very best web sites, blogs, and news sources. ... The moment we detect new buzz, it appears in a special terminal interface used by our editors. ... Finally we track the buzz as it spreads through word-of-mouth and blogs. Our trend pages link to the most interesting commentary, videos, news articles, and debate.
It's a new project from a bunch of our friends over at Eyebeam, and its worth to me was proven during my first pre-release peek, when I learned about New Rave. I'm mostly taken by the look of the thing, though. Dead-simple colors, dead-simple URL's, dead-simple typography, and a dead-simple logo that looks like it says "BuzzFeep" when you read it too quickly. The calendar-like archive view (below) is probably the coolest part. Buzzfeed performs basically the same function as Techmeme, but does it about 100x better through the intervention of a human editor choosing succint names, writing concise copy, and dispensing with the link-barf on a typical Techmeme page.
When I have a window open in Safari that contains an embedded YouTube clip, Safari's CPU usage shoots up to 20% - 50%. When I close the window, CPU usage drops to normal. What the hell is YouTube's flash player doing in there? I'm not playing the video, I've just got the player sitting there. It's not downloading the video, though it might be phoning home.
Oh, uh, we spoke at IDEA in Seattle last week. It totally rocked, I'll write about it soon.
I'm not entirely satisfied with the state of AWS access libraries out there so I wrote my own. Most of the ones that I have seen (e.g. boto) strive for completeness and object-orientedness. I mostly just need to push a few strings around, and dislike having a large collection of classes, custom errors, and super-documented API's to wade through when I need to get something else done. I'm aiming for the level of complexity found in python-memcached.
So these should be simple:
The gods, say the Sumerians, came to Earth by way of the 12th planet Nibiru, whose highly elliptical orbit brings it within the inner solar system only once every 3600 years. Whether this means that the gods came to Earth from Nibiru or that they came via Nibiru is still hotly debated, but the fact persists that the gods, also known as the Elohim or "Lofty Ones", the AN.UNNA.KI, the Nefilim or "Those Who from Heaven to Earth Came" were, in the Sumerians' eyes, a technologically advanced race of beings.
It's a riveting story about the early (and modern) religions of man that ties up millenia of atomized history into a coherent, attractive picture. It's not important whether it's believable, because it's a good yarn. I read it and felt a similar desire to live in that world as I felt after reading C.S. Lewis's Space Trilogy. It's the kind of story whose emotional logic and psychological interest weighs more than accuracy or truthiness.
Adam tipped me off to the fact that Ishkur gets much of his material from Erich von Daniken's Chariots of the Gods. So I bought the book and read it, and although it contains pretty much the same information, it's just an awful, awful piece of writing for a variety of interesting reasons. First, Daniken has written and advocacy piece, and it matters to him that his readers actually believe that aboriginal rock paintings depict beings in space helmets or that the ancient Egyptians were too dense to stack rocks into pyramids. He uses words like "undoubtedly" to support his unfalsifiable arguments ("...drawings undoubtedly meant as signals for a being floating in the air ... Undoubtedly the Ark was electrically charged!..."), which instantly puts me on the defensive. Second, he selects evidence carefully, showing only rock paintings or statues that bear a superficial resemblance to the NASA spacesuits in use when the book was written. Third, he seems insensitive to long timescales, attention spans, and reserves of manpower. It may be overwhelming to imagine building a pyramid here and now, but Pharoah had a few resources at his disposal that Daniken lacks.
His greatest sin is overlooking the value of telling a fun story, the reason I got a kick out of Ishkur's piece and picked up Chariots in the first place:
So great was ISH.KUR's anger that during this period the Egyptians called him Prince Resheph, god of pestilence. He openly came and ravaged the people of Egypt with a kind of biological warfare so devastating that his wish was granted, and his people set free, just to get him to stop. But when he led them out of Egypt he learned that during their captivity they had been assimilated into Egyptian culture, worshipping Egyptian gods (EN.KI's family). This was a common tendency of ancient cultures-to readily adopt and owe allegiance to whatever deity was most powerful, led by the strongest army. ISH.KUR, who never had a permanent city and people to call his own, was extremely upset to find his people worshipping other gods. He had to find a way to make his people worship him and only him, by eliminating all other divine influences. It was there, in the Sinai desert, over a forty year span (so as to lead a new generation of followers, untainted by the years of polytheistic captivity) that he sowed the seeds of a monotheistic form of worship.
So skip the book, and check out the article. Also, it looks like Ishkur is also working on a new edition of the Guide to Electronic Music.
I went to my first Critical Mass on Friday, and I definitely plan to go back next month. The event happens in cities around the world during evening commute hour on the last Friday of every month. SF's local version is probably one of the bigger ones I have heard about, with thousands of cyclists showing up and occupying a few linear blocks of traffic along a route that varies each month. This month's route circled around SOMA, with detours up into the Transbay Terminal and back north across Market.
I noticed a slow leak in my rear tire around Mile #2, so I left the ride when it returned to Embarcadero BART. I wish I had been more prepared, because it seems to have ended up in the Broadway tunnel near the end.
Apart from Amazon's baffling array of ID's, secret keys, user keys, certs, and other identifiers that need to be kept track of every few steps, EC2 is a winner. It does exactly what it promises, running virtual machine instances that can be instantiated and destroyed at will. The first one takes a few minutes to boot, and the process of making a machine snapshot is slightly laborious, but once the initial hurdles are clear, saved machine states start up almost instantaneously and are immediately available for use.
Combined with S3 for storage, this is a total winner. It's fortunate I just happen to be working on something that could benefit from 20 or so dedicated servers chugging away...
My costs so far: $0.31.
I've barely mentione iPods once in a few years of writing here, but this struck me as interesting. John Gruber has an article on Apple's pricing strategy in which he says:
The two Gartner researchers even lamented Apple's decision to discontinue the 1 GB nano, which they say could have been a nice mass-market item for around $99. Why not sell a 512 MB version, too? And what about 3 GB and 6 GB? And what about more colors?
...a 33 percent price reduction is not a small cut, and it would throw off their nice, even 2/4/8 GB for $150/200/250 pricing scheme.
I'm impressed that Apple designs their prices with the same attention to detail they use to design the rest of their stuff. I feel naturally more comfortable thinking about a price scale that looks as clean as "150/200/250" instead of one that requires a universe of useless choices. Apparently I'm not a rational economic actor.
The organizers asked me to design a flyer to hand out at the march. I took it as an opportunity to do something a little different from a typical flyer. ... The text is styled in the form of a redacted government document. It creates a parallel text that plays on themes of secrecy, coverup, and suppression of dissent, as well as seeing through the lies and reading what is erased.
I've been interested in calling cards for some reason, finding a bunch of cool material about them around the web: visiting cards etiquette, Crane's calling cards, and the famous scene from American Psycho.
Yesterday, Tom showed me a bunch of his new custom-printed cards from moo.com. Today they opened up their site with an offer of ten free, individualized cards based on your Flickr stream for all Pro account holders.
Who's an idiot for deleting his pro account now?
Next month, I'm going to be speaking in Seattle, at the IA Institute's IDEA2006. There have already been a few posts on the conference blog regarding my topic, and there are a bunch of other great speakers there, including Jake Barton, Alison Sant, Bruce Sterling, and Fernanda Viegas.
This weekend, the registration fee goes up.
I hit the tipping point with two pieces of technology today.
The first is subversion, a revision control package for software developers. I actually first heard about SVN approximately six years ago, at the same time I heard about CVS, my favorite until now. SVN was half-baked at the time, and I became an expert in CVS instead. I tried SVN a number of times over the years, but there was always something wrong enough with it (reliance on db, crappy merge support) to turn me off. This time, it's going to stick. The difference is that I'm experimenting with a project management tool called Trac, which is pretty much requires the use of SVN. The benefit is major enough that I'm finally convinced to switch entirely.
The physics and graphics are amazing, and I love that the designers chose to ignore the normally-baffling profusion of buttons on the controller in favor of just three, and focused instead on getting the interaction flow just right. My favorite aspect of the game is the malleability of the character, who can be split or merged into a variable number of smiling orange blobs. The big one can jump higher, the small ones can slip through crevices, and together they form the basis of simple strategy. Very cool.
I never mentioned it, but I finished Patrick O'Brian's Aubrey-Maturin series earlier this year. It's a collection of 20 historical novels set in the British Royal Navy during the Napoleonic Wars (early 19th century). Gem turned me on to the series after we saw Master and Commander, and the books are absolutely brilliant.
The most interesting thing about the books as a whole is the arc of the plot(s). Very few of the books begin and end a single story. Instead, there tend to be three scales of plot: the mission that gives each book its title typically provides only a loose framework for microplot elements (battles, shipwrecks, etc.) of which there are dozens per volume. The macroplot moves from book to book, and concerns friendships, legal troubles, courtships, and marriages. Taken as a whole, the series is one long story spanning as many as two decades.
They're very much worth reading, if you take the necessary six-to-eight months to do so. It also helps to have the right dictionary.
I returned from DC last night, where I spoke at Adaptive Path's excellent UX Week event. I gave a 45 minute talk (my first solo thing) on Information Visualization, delivering a show and tell of projects that I've worked on, been inspired by, or just found really worth sharing over the years.
I'm at Adaptive Path's UX Week in Washington DC right now. I'm noticing that Apple's Keynote software is leading to some excellent presentation visuals - it encourages big, simple slides with dark backgrounds. A lot of people are also using "one big image" slides, with full-bleed photographs or graphics. I like this. It's a great visual style for conference spaces, and really cuts down on the infoglut of your typical Powerpoint deck. So far, every session I've attended today uses this method.
On a tangent, DC's Metro subway is bizarro-world BART. The informational signs use Helvetica in exactly the same way, the ticket machines work almost identically, and the trains are similar as well. The two systems seem to be of the same vintage. Metro is predominantly "yellow-orange", BART is primarily "blue-silver". Both are great examples of Brady Bunch Futurism, a look that seemed outrageously advanced c. 1975, and now has a comfy, carpeted, conversation-pit vibe. I like this too.
(A brief record of products and services recently consumed)
Good bike: IRO Mark-V
I picked this up from Montano Velo yesterday, and I'm thrilled. It's been a long time coming since I first chose it, but I'm still really happy with the decision. It looks different from what I expected, in that the rims are much deeper and the wheels are completely black. It looks like a spider. So far, the ride is quite comfortable. The brake placement and toe clips are taking some time to get used to, but the gear feels right and the size of the frame (which is 3cm taller than what I initially wanted) is also good.
Good art: Listening Post
Good movie: Miami Vice
Pretty much the perfect Michael Mann flick. I loved Heat, Collateral, and The Insider, and this one fit right in. He's really getting the hang of digital filmmaking, and is definitely the first director I'm aware of to use digital to create a new epic look. Don't miss the scenes of private jets streaking between clouds, various go-fast boats, Freaky Chakra's Blacklight Fantasy on the soundtrack, and amazing nighttime shots of Miami.
Good show: Survival Research Labs
Part of the ZeroOne festival in San Jose. The big gold man sculpture (foily balls!) was a dud, and the show was without focus or point, but shit was loud, robots ate each other, 2x4's shattered, and everyone had a great time.
Good movie: Little Miss Sunshine
As funny as 40 Year Old Virgin. This is the kind of movie that I want to see do well, so I will check on weekend box office numbers from time to time.
I'm doing a Pyschology course and they had one of those charts that shows the number of sexual partners of average men and women. It never made sense to me that men could have more partners than women. I mean, who are they "partnering" with??? So I did a little data visualization, which makes things pretty clear. Don't worry, it's clean! 100 boys on the left. 100 girls on the right. Each gets assigned a number of partners based on a Kinsey survey. Then they...hook up.
Oooh, lower-right-hand corner, you skank!
Krtek is a 1950's/60's Czech cartoon that I remember rebroadcast on Nickelodeon's Pinwheel, a 1980's Sesame Street knockoff. Each episode is short, and enormously sweet. The cartoons are wordless:
The first episode of the cartoon was narrated, but Miler wanted the cartoon to be understood in every country of the world, so he decided to use his daughters as voice actors, reducing the speech to short non-figurative exclamations in order to express the mole's feelings and world perception.
There are six episodes to be found on YouTube:
After trying out a bunch of bikes last week, I decided on a completely different one:
Adam actually recommended this to me about a month ago, and I've been considering it while checking out other options. Pretty much everyone I talked to about it likes IRO a lot, or knows people who do. Adam hooked me up with a friend who let me try his, and I like it enough that I put down a deposit on one this morning at Montano Velo.
Mine will have some modifications: front and rear brakes, bullhorn handlebars, and a flip-flop hub so I can try riding fixed gear if I want.
Stay tuned for photos of my first injury!
Just saw this now:
I made that logo a little over ten years ago, shortly after subscribing to SFRaves with my first UC Berkeley e-mail account. It existed in a few variations, starting as a series of laminate designs for finding other list members at parties, to a run of 30 T-shirts I hand-screened for a July 1996 FnF event.
For a college freshman, SFR was an insanely great way to discover the richness of San Francisco and the east bay. It was like a private tour of the undersides and hidden structures of the area, visited and reimagined for eight hour stretches every weekend. Beaches, warehouses, new office spaces, former office spaces, dance studios, and roller rinks were all fair game. The dot-com surge of the late 90's brought this to a head, increasing the number of partygoer hopefuls while simultaneously taking favorite spots out of play. The cultural and economic shifts that made the SFLNC necessary eventually doomed the vitality and energy of raving into just another industry. Now that I've lived here long enough to have a longer view of the area and a basic understanding of how all the streets fit together, underground events provide less revelatory context than they once did. The only solution I can think of is to move someplace new and learn a new street grid, or carve out whatever piece of my frontal lobes is responsible for spatial reasoning so I get to rediscover everything all over again.
I haven't been subscribed to SFR for a long time now, but I still enjoy seeing stuff like this surface from time to time.
I'm buying a new bike, and I'm not sure what to get. I want it to be single speed road bike, flip-flop hub a plus. I'm a sucker for simple-looking things, and will usually choose things based on lack of ornamentation. Half of my desire for a single-speed is a direct result of wanting a simpler, cleaner looking bike than the incorrectly-sized mass of cables and doodads I ride currently.
Here are the four I tried today, and a fifth that's out of my reach:
Light. Frame feels very balloony: large, thin, sounds like a plastic kid-bat when tapped. Rides pretty well. Has this dopey "graf" design on the side that's kind of a turn-off, also 25% more money than the others.
Rides very, very well. Light, but solid in a way that the Capo was not. Strong favorite. Frame is painted like it's being marketed to skateboard kids, though the one on the Specialized site is a more tasteful black. Flip-flop hub is nice.
Bianchi San Jose
Feels heavy in comparison to the previous ones. Guy at the bike store says many of the employees own these, and that they're versatile and a great ride. Stylish in a 1980's tube sock sort of way, but I would probably buy narrower tires and clip pedals to replace the stock ones here.
Raleigh Rush Hour
Stylish dark grey. 57cm frame feels significantly smaller than the others - why? Pushing the pedals on this one makes me feel like I'm on point, instead of using the balls of my feet. Very uncomfortable, but if it's just the pedals this can be salvaged. Otherwise quite nice.
I don't know why I walked into this store. These bikes are hand-made by master craftsmen in Berkeley, and the frames they have hanging in the windows are masterpieces of simplicity and strength. Easily 4x more expensive than the rest of the bikes on this page, like I'd even know the difference.
Oakland's Mandela Parkway, seen in Google Maps. This is the former site of the Nimitz freeway, a raised double-decker road that collapsed in the 1989 Loma Prieta earthquake. At 24th street, the boundary between two satellite image sources simultaneously shows the park during construction and after construction (run-up title for this post: Schrodinger's Park). Hopefully, a hint of things to come if Google opens up layers of historical satellite images in Maps.
Unexpected results from camera phones that scan the image field line-by-line, when used to photograph quickly-moving objects:
(Photo by MaciekSz)
Reminds me of an old project page on building digital cameras out of unused flatbed scanners, which featured the following gem:
Underlying Moses' strikingly strict policing for cleanliness in his parks was, Frances Perkins realized with "shock," deep distaste for the public that was using them. "He doesn't love the people," she was to say. "It used to shock me because he was doing all these things for the welfare of the people. ... He'd denounce the common people terribly. To him they were lousy, dirty people, throwing bottles all over Jones Beach. 'I'll get them! I'll teach them!' ... He loves the public, but not as people. The public is just the public. It's a great amorphous mass to him; it needs to be bathed, it needs to be aired, it needs recreation, but not for personal reasons - just to make it a better public."
I'm reading this to fill in some backstory to Death And Life Of Great American Cities. Aside from being a dramatic account of urban renewal and destruction, the world of the 1920's and 1930's is a perfect context for similar "social architecture" taking place on the web, right now. Net Neutrality, User Generated Content, and Social Software all gain historical continuity from this story. Perkins's quote above throws an especially harsh light on the ink spilled over (Stamen client) Digg, which is one of a few examples used by writers like Nick Carr and Scott Karp to demean the quality of user-submitted Digg stories, MySpace profiles, and blog entries.
The interwar years are fast-becoming one of my favorite historical periods all-around, partially because so many of the lessons of that time are being forgotten as that generation passes on.
To paraphrase Malcolm McCullough, two things you don't say when you walk into a supermarket:
- "I can't make somethig with fish, that's already been done."
- "How am I going to fit all this stuff into my dinner?"
(Sketching wrap-up, on the topic of choice in hardware standards)
I'm becoming an increasingly excited fan of Jan Chipchase's site, Future Perfect.
As I understand it, Jan is an ethnographer and researcher for Nokia. He travels the world, mostly Asia, photographing and documenting local practices relevant to Nokia's business. The site is a travelogue of tight, observant photography and short conjectures, and makes me curious what kinds of brilliance can be found in his actual reports.
It's a bit of a mystery application, apparently written by a Japanese developer as a sort of browser swiss army knife, adding all kinds of navigation features to Safari. I've come across it before, but have stayed away because I generally prefer lean software. I've been able to ignore all of its features, except for site alteration:
We just bought an extra chair, and it wants to be filled:
Our busy San Francisco design and technology studio is ready to grow again. We're looking for a few people who can help us realize our vision: doing great work for the smartest people we know.
More info at stamen.com.
"I'm going to pay my $29.99 a month for access, and then I'm going to pay higher prices for consumer goods all across the economy because these Internet companies will charge more for online advertising."
Gem and I visited a mushroom farm last week for one of her classes. Each batch of mushrooms (shiitake, oyster, etc.) are cultivated in bagged blocks of sawdust and nutrients. Each plastic bag holds about a gallon of substrate, and has a small filter attached to it, allowing flow of air when the bag is sealed. These bags are single-use, and historically cost the farm 18 cents apiece. As a result of rising fuel costs (the bags are shipped from Texas), the price has gone up to 19½ cents apiece. Every day, they start 2,700 bags, so an extra $40 isn't going to break the bank. But I bet that extra cost is going to be passed on to the buyer, on top of all the other gas-price micropayments piling up across the rest of the items at the checkout counter.
I understand fuel costs—high demand, low supply, etc.—but these "preferred routing" fees proposed by AT+T's lawyersharks are purely artificial. They have no reason to exist, and they add no new capacity to the lines. As I understand it, performance across the board may actually drop, because of the additional overhead of looking at each packet to determine its priority instead of passing it off like a hot potato as quickly as possible.
We went to a party at the Oakland Columbarium last night. It's a warren of tiny rooms, connected by passages, each containing walls loaded with ashes of the deceased.
This photo was the best Google had to offer, by John Wiseman:
Our friend Kelly Porter was live-painting in the Meditation Chapel, and many other video projections, musical acts, and exhibitions were scattered throughout the space. The party was a little subdued overall. The space was gorgeous. We spent the first 20 minutes or so making our way up to the Garden Of Revelation, via Devotion, Bethel, and Rest. Each of the garden areas is vertically offset from the previous, which gives the entire space a stairstep feeling. These are connected by tiny staircases, and end in the Revelation, a tall open space with "cat walks" one story above ground level. I think the entire building is sunk into a hill, because we could see trees draped over the skylights in the uppermost rooms.
I felt as though we had seen it all, but looking at the floorplan afterwards it's obvious that a whole section of the building (centered around the Middle Chapel) remains unexplored.
This is an absolutely stunning building by Julia Morgan that deserves a return trip.
Update: Peter has a set of Columbarium photos on Flickr.
Very literal, readable comment stream display on Spreadshirt:
It's visually easy to separate comment text from attribution, and indiviudal commenters with a relationship to Spreadshirt (CEO, employee, etc.) are subtly called-out. The indentation on the left makes it possible to read down a series of comments without interruption by attribution slugs.
Jonah Peretti, interviewed by Stay Free:
STAY FREE!: The one site from your students that sticks with me most is WhatIsVictoriasSecret.com.
PERETTI: Yeah, it's number two when you search for Victoria's Secret on Google.
SF!: I love that Victoria's Secret couldn't go after them.
P: But they did
SF!: The lawyer told them to take down the direct links to the real Victoria's Secret site to make sure they didn't confuse users, right?
P: Yes, but initially they called and said to take the site down immediately. A guy who worked on the site got the call and took it down, but the women working with him put it back up. The Victoria's Secret lawyer called back begging, "Could you go after Calvin Klein or Frederick's of Hollywood instead?" But when they asked the lawyer to send a cease-and-desist, she refused to put anything in writing: "I don't want that showing up on the web." She didn't want the story to be about Victoria's Secret trying to shut down a site that girls created about body image. The site had already gotten some press and they didn't want it to get more.
Who's feeling the chilling effect now?
KRAKOW, Poland - Polish author Stanislaw Lem, one of the world's leading science-fiction writers, died on Monday in his home city of Krakow at the age of 84 after a battle with heart disease. (Yahoo)
- The Futurological Congress
- The Cyberiad
- Tales Of Pirx The Pilot
- Imaginary Magnitude
- Memoirs Found In A Bathtub
Not by Lem, but highly praised by Lem:
"It's a bad time to start a company" (Caterina Fake)
I've just arrived in Vancouver for the IA Summit, where I will be on a Sunday panel with Gene Smith, Dan Brown, and Michal Arrington (I will be the one running back and forth along the net, picking up wayward tennis balls). The topic of our conversation is Web 2.0, and what it means for information architects. This comes somewhat hot-on-the-heels of Peter Merholz calling out Web 2.0 poster-company 37Signals for their "shallow views and rhetoric", in response to a swipe at information architecture from the Getting Real PDF file, and I have been informed that a lot of information architects are worried about what Web 2.0 means for their employability. What skills will transfer, does user-created content mean no one needs to be told how to choose section titles, etc.
Caterina Fake's post detailing the reasons why it's a shitty time to start a new venture (everyone else is doing it, talent pool is finite) is a ray of hope for me, because one of the defining characteristics of Web 2.0 for me personally has been "Low Hanging Fruit". There are a million companies with similar-sounding names and logos all running a mile-a-minute trying to solve easy problems: calendars, word processing, drag and drop, time-and-milestone trackers. Web frameworks Rails, Django, and TurboGears are optimized for these tasks, and process dogma Getting Real assumes that anything which takes more than a week to dream up, prototype, and release may very well not be worth doing.
If all the coders and designers are exhausting themselves implementing known solutions to solved problems, who's paying attention to the big questions? This feels like the natural home for the IA Summit crowd: people comfortable imposing order on chaos and tackling big tasks. I say this more from a position of reverence than experience, because I'm definitely missing the experience of long-term, many-faceted projects at the moment. There's so much fast-turnaround, race-to-market work in the world right now it's making my head spin, and not in a good way.
It's an auspicious time to Go Big.
So it's been a while since I've gushed about something here, especially something from Google. Today's release of Google Finance is pretty damn cool, though. Not being a money guy, I can't speak to the accuracy or value of the information below the fold, but the chart and news panes at the top of each page are stunning.
Few things I'm noticing in my first ten minutes:
- News integration is cool. First thing I find myself doing when viewing any sort of time-series is attaching meaning to events. A good example of this is the famous George Bush ratings chart pegged to terror alerts, showing sharp upticks as a result of / caused by DHS terror alerts. Google has pulled in their News database to connect stories to price events. It's not clear to me whether they're searching for stories on days with higher-than-average price velocity (the msft charts seems to support this) or attaching the most written-about or linked-to stories without regrad to stock activity. The latter feels more intuitively interesting to me, since it opens the possibility that snowballing stories which take days or weeks to reach momentum would be represented, even if they don't cause sharp, obvious price discontinuities.
- The graph is fantastic. Speedy, implemented in Flash, granular, informative. It's easy to choose your time window, and they offer two separate views of price information. One is a low-detail five-year history, the other is a high-detail specific timeframe history with trading volume below.
- The current value is big and bold. It should be obvious from the style I've chosen for post dates on this site that I'm a fan of big, bold, short values set in Helvetica. Google's font for Finance is Arial, Helvetica and, and they made the current price big. And bold.
- No comparisons? Lame.
There's room for improvement, but those charts are insanely great.
We've been meaning to do a screencast of Reblog for some time, but haven't gotten around to it. Today, Matt Haughey beat us to the punch with a Lifehacker article detailing Reblog's installation and use. Matt provides a quick overview of the minimal steps required to get Reblog up and running on your own server, and details on how he uses his own copy in accordance with the gospel of GTD.
It's great to see Reblog getting a bit of attention, hopefully we'll see a wider install base to counteract the accumulation of centralized RSS services like Bloglines or Google Reader. Since absorbing some of the Google-Bad mojo from Root, I've come to believe that distributed installations of such information routing and aggregating programs on individually-controlled servers are needed to counteract the flood of software-as-a-service products which trade convenience for privacy, or worse.
I'd say this about sums it up:
- Cal's Flickr rundown.
- Ben and Matt's session on playsh.
- Jo's session on conference hacking - turns out it's just like planning a rave.
- Escaping on Wednesday with Mike, Seth and Jonas to get a tour of the Salk Institute in La Jolla.
- Loafing about on the hotel floor with geo-positive geeks.
- Zimbra's advertainment.
- Everything Technorati touches.
- Too many people, too many concurrent sessions.
- Spotty wi-fi.
I started using del.icio.us this week.
Well, not really. I've had an account since summer '04, but I've never used it for much besides testing API features. Before hearing about Del.icio.us, I rolled my own database of text and URL snippets and experimented with various ways of pushing content in: via bookmarklets, e-mail, drag and drop to "hot" folders on my desktop, and so on. I have high personal inertia so this simple, personal database is still in use running my snippets feed.
However, Reblog 2.0 now supports Del-like posting bookmarklets, republishing items from RSS feeds, and plug-ins. I modified the snippets database to accept input directly from a Reblog plug-in, and activated Reblog's Delicious_Post plug-in as well. Now, the public output of my attention span can be seen in three different places:
- Tecznotes snippets, with swanky looking posting activity chart. (RSS)
- Del.icio.us migurski, with social view of links I find interesting and antihelpfully-truncated descriptions. I don't use tags, sorry. (RSS)
- My Reblog, with attributions and OPML. This is technically the horse's mouth. (RSS, Atom)
David Hawk writes:
As Google and Yahoo like to proudly proclaim, a PPC advertisement on one of their networks reaches "98% of active Internet users" with well over half of that metric coming straight from a search engine. So . . . with such astounding success, there's no better time than to predict the inevitable demise of the search engine.
...immediately prior to predicting the inevitable death of search engines, because he believes they will be disintermediated like travel agents and classified ads (and bars, and the phone company ...huh?). He believes that they will be replaced by smart sites that learn about your own habits as you browse to give you a more personal experience, imagining that typing "Los Angeles travel" into a search box should yield personalized travel results for you. Aside from the obvious holes (who's in the best position to deliver this personalization besides Google or Yahoo?), I think Hawk has too much faith in the power of personalization algorithms, too little faith in the strength & cheapness of recommendations from other people, and not a lot of imagination to see the ways in which internet search makes agents and brokers more valuable.
Personalization algorithms are pretty terrible. Amazon is the classic example, because their "People Who Bought..." feature is actually good, but it's working with a strongly-controlled universe of information and is under little consumer pressure to kick ass. If Amazon's recommendations aren't exactly what I want, the worst-case scenario is that I move on to somthing else, while Amazon loses a sale. The majority of the cost is borne by the service, not the user. If my hypothetical search results for "Los Angeles travel" are bad, I'm going to be pissed because I was actually looking for some help. Imagine the misery if they proved worthless after recommended hotels and flights are booked. Imagine the annoyance if I'm not even looking to travel to Los Angeles. Leaving this up to machines will be like the Smart Tags debacle all over again:
As Paul Thurrott of Paul Thurrott's WinInfo found out, this sort of thing can get old in a hurry. While typing up his review of Office XP (using Word 2002, of course), Mr. Thurrott typed the word "nice." Up popped a smart tag offering to book a flight to Nice, France using Microsoft's Expedia website. When he typed the word "long," up popped a smart tag from ESPN offering more information on Oakland Athletics centerfielder Terrence Long. As Thurrott put it, "Folks, this is lame."
Besides, there are millions of people out there perfectly willing to lend a hand, give advice, throw in their two cents, or start a business selling expertise. When I need to something, I usually contact one of these people, because I know that they know what I don't know. This used to also work on a slightly less-personal level with e-mail lists, though there's apparently a website called "Craig's List" which hosts these kinds of conversations for local interests.
A lot of the early noise about Web 2.0 focused on how a new breed of web technologies helped to focus interpersonal relationships around shared interests or goals, and how there was a lot of value to be found providing forums where people could communicate with each other more easily. I don't know why the bandwagon took a wrong turn into a wasteland of frameworks, collaborative filtering algorithms, and ajax portals, but I'd very much like to see it return to the main road. If it's going to be necessary to spend weeks or months waiting for some PhD thesis project to assemble a mathematical model of my wants and needs so I can conduct searches online, why not focus on solving the much simpler problem of connecting people to other people who are born experts at this? The "stars" of Web 2.0 excel at this now. The common thread running through projects like Delicious, Flickr, Digg and others is that they focus on this need first and worry about the crazy math shit later.
- Four separate animated areas on the screen: an "IT guy" juggling windows logos at lower left, a blinking advertisement at upper right, marquee text at lower right, and video with audio set to auto-play at right.
- A full-screen pop-over ad executed in dynamic HTML to circumvent pop-up blockers.
- Two more ads below the fold.
- Tom Coates's name spelled "Coat".
- Tom Coates's Future of Web Apps warmed-over, served in a casserole dish.
- The claim that privacy is "really a 20th century notion anyway".
Hinchcliffe's articles are really starting to make me mad whenever I encounter them - why must they be linked from otherwise respectable sources?
This CS Monitor article, Control of creativity? Fashion's secret, is over two years old, but resurfaced recently into my field of awareness. It contains this gem:
For virtually all players in fashion, some form of derivation, recombination, imitation, revival of old styles, and outright knockoff is the norm. Few denounce, let alone sue, the appropriator for "creative theft." They're too busy trying to stay ahead of the competition through the sheer power of their design and marketing prowess.
There seem to be two factors that make the fashion industry impervious to the kinds of intellectual property rigamarole plaguing the content industries: high speed and discernment. For the fashion world, creative cycles are measured in months, and any designer spending time pursuing creative rip-offs by others is probably falling behind on their next season's line.
Fashion appreciation also seems to require a high degree of perceptual subtlety and historical awareness. You don't just waltz into the haute couture industry without a deep understanding of the effect of small decisions and the web of aesthetic influences among competing designers. The entire industry is founded on the idea that there is a crucial and fundamental difference between a dress you see on the runway and one you see at the TJ Maxx. The former gains credibility and distinction by the presence of a near-identical latter, the same way that quoting another musician or filmmaker confers status on the source of the gesture.
The saddest aspect of Big Content's lawsuit blitz is the complete banality of the material they are defending, its utter and complete worthlessness. The total creative bankruptcy of these industries makes a nitpicking IP-based lawsuit culture necessary, because there's nothing else of value to defend. I suspect that their zeal to squash any artisic form or distribution method which doesn't pay tribute to traditional cartel privileges results from a deep realization of how useless their industry is in the face of genuine culture and spontaneous creativity.
Banco De Gaia's album Last Train To Lhasa (1995) is a monumentally beautiful sound sculpture, especially track #7: 887 (Structure). Every time it comes up on shuffle, I have to stop whatever I'm doing and sit back for a few moments. It sounds like the city at night, from a distance.
"If the potato cannot survive out of the earth's sphere of influence, then I would be very, very cautious if I were concerned with the total problem of sending man out into outer space until I had found out what it was that the potato lacked in order to permit it to survive out there."
I'm not sure why I didn't post about this beforehand, but it's kind of a big deal. Rashmi invited me to speak and demo at the monthly BayCHI meeeting on information visualization. Eric and I went to PARC's auditorium to show a bit of our work among a group of other distinguished speakers.
Jock Mackinlay of Tableau Software was the main presenter, and spoke for an hour about his company's visualization software. It's sort of an Excel-for-visual-thinkers, and uses VizQL (a kind of visual analogue to SQL) to display and manipulate databases. Jock critiqued Excel's graphing features (simplistic, assume you already know what you want) and showed Tableau's possibilities for manipulating visual display of information and automagically assuming optimal displays for different collections of data. I was skeptical of the software's output when it was first described (How dare they replace the work of a competent designer!) but totally sold by the end of the demo.
Two reasons for this:
- Realistic goals. Tableau is a step above Excel, but not a huge one, and the information displays it supports are still within common visual expectations for normal people. This is advanced software for corporate Excel ninjas, not a generalized WattenbergBot.
- Deterministic results. Suggested graph styles are not arbitrary, and they have a deep set of rules for effective ways to display many kinds of information (categories, dates, numbers).
Jeff Heer followed with a ten-minute description of a force-directed graph of Friendster connections he produced using Prefuse, based on ethnographic research with Danah Boyd. Quote of the evening: "People played with the slider until the graph looked right, and then marvelled at how smart the algorithm was."
Josh On talked about TheyRule and other work, after doing a quick role-playing experiment with audience members. "Place your hand on the shoulder of the person in this group you've known the longest."
We finished out the evening, exceeding our alotted ten minutes by 50% because we didn't come to PARC to be succint, dammit! We showed five projects, breezing through Mappr, In The News, Root Markets, Cabspotting, and Backchannel.
The evening ended with a brief trip the British Bankers' Club in Menlo Park, and then home. Thanks Rashmi!
On February 7, 2006, Professor Lawrence Lessig appeared before the US Senate Committee on Commerce, Science and Transportation's hearing on Network Neutrality. A few excerpts from his testimony follow. Lessig is an amazing logician, and his writings on legal issues on-line are worth reading.
On the rational basis for his argument:
...there is something especially wrong with network owners telling content or service providers that they can't access a meaningful broadband network unless they pay an access- tax. I don't mean "wrong" in the sense of immoral, or even unfair. My argument is not about the social justice of Internet access. I mean "wrong" in the sense that such a policy will inevitably weaken application competition on the Internet, and that in turn will weaken Internet growth.
This diversity of innovators is no accident. By minimizing the control by the network itself, the "end-to-end" design maximizes the range of competitors who can innovate for the network. Rather than concentrating the right to innovate in a few network owners, the right to innovate is open to anyone, anywhere. That architecture, in turn, has created an astonishing range of important and economically valuable innovation.
On the history of current Internet behemoths:
For the first time, network owners would have a strategic capability, as well as incentive, to create barriers to entry for new innovators. We should remember that the current leaders in Internet innovation all began with essentially nothing. Google, eBay, Yahoo! and Amazon all started as simple websites providing limited, but fantastic, services. They had to pay no special access-tax to be on the Internet; there was no special channeling by Internet providers that disadvantage these competitors relative to any others. They succeeded because the product they offered was better than others. Competition on the merits thus drove this market.
Suggestions for Congress:
It is my view that any policy that weakens competition is a policy that will weaken the prospects for Internet and economic growth. I therefore urge this Committee to secure and supplement the work of Chairman Powell, by enacting legislation that protects the environment for Internet innovation and competition that the original Internet produced.
In a nutshell, Lessig is arguing that the current kerfuffle about network neutrality brought on by belligerent recommendations from At+T and others ("...what they would like to do is use my pipes free, but I ain't going to let them do that..." - Ed Whiteacre, SBC AT+T) is an attempt to create scarcity where none exists. It's the same fundamental response to the Internet we're seeing from the music and film industries, and there's no need for it.
A fresh update to Reblog 2.0 has been released. Be first on your block to install it from http://reblog.org/#download.
This release includes a raft of enhancements, including better documentation for plug-in developers, slightly modified tag behavior that makes it easier to navigate your extensive feed collection, experimental plug-ins for automatically publishing entries to WordPress, TypePad, Blogger and Del.icio.us accounts, and minor usability improvements too numerous to mention.
This BETA version has been extensively tested, and is recommended for most users.
Shocking, new evidence for global warming:
- ... "tens of thousands" of game players connecting at McDonalds restaurants. ... indicating that competition in the mobile platform space is heating up. ...
- "Competition in the online lending space is heating up, with a number of regional players working hard to make their web sites as good as the traditional ...
- ... companies vying to acquire the major players in the mobile games business. ... The mobile search investment space is heating up for sure: US publishing ...
- The mobile search investment space is heating up for sure: US publishing house ... Expect more such deals with other players to happen this year: Motorola ...
- As far as rumors go, the one about Google's move into the browser space is heating up. ... two key players in the development of the Firefox browser, ...
- I think it's great that the Internet consumer space is heating up again. ... Now we have talented, capable players on the margin who might as well be feral. ...
- ... to the medical device market with new players grabbing major market share, ... The remote monitoring space is heating up, what with companies like ADT, ...
- The behavioral targeting space is heating up, with competition between leading ... The players are jockeying for position in the still-nascent arena. ...
- Competition in the RNAi space is heating up as companies work toward developing ... Global Health Issues: New Money, New Players, New Opportunities ...
- The Web mail space is heating up and players such as Microsoft, Yahoo, and Google are trying to differentiate their respective services, an analyst says. ...
- Competition between vendors in the B2B space has been heating up, with SAP, Oracle and other ERP players taking on established exchange software and service ...
- In the second of a series of occasional interviews with key players in the entertainment industry, ... The darknet business space is heating up. ...
- The event space is heating up, with Upcoming.org and Whizspark with their ... On hiring and cycling: Looking to add new players to the team at all times. ...
- To say M&A activity in the storage space is heating up is a gross understatement, especially when the conversation involves EMC; ...
- It looks like the video space is heating up. Ars Techna noted a recent Variety ... to turn iPods into video players are now online at the above address. ...
- The Web mail space is heating up and players such as Microsoft, Yahoo Inc. and Google Inc. are trying to differentiate their respective services, ...
I’ve been doing a lot of grousing lately. And posting very short entries.
This post is an attempt to fix the damage.
I am the technical director at Stamen, which means that when I’m not crouched under the desks routing ethernet cables, I’m often goofing off online, looking for weird new technologies to play with and develop into experimental projects or client work. Over the past year, I’ve come across a range of new tools that really made my socks roll up and down, and I’d like to describe each one and why I think it’s so cool. Think of this short list as my own personal technical Oscars.
Five things that helped make my year:
It was necessary to overcome my strong aversion to syntactical whitespace, but Python turned out to be totally worthwhile. Mark Pilgrim’s book Dive Into Python was my entry point, and it explained the language in a way tuned for experienced programmers. List comprehensions are a dream. “Batteries Included” means I don’t have to look far for useful code. Python was my immediate replacement for Perl and command-line PHP, and I tend to use it wherever I need utility scripts or screen scrapers these days.
I had this same reaction when I first started reading Paul Graham on Lisp, but that language turned out to be almost completely devoid of a useful community and software libraries. I remembered a lot of Scheme from 61A, but it was a dead-end.
Python still has not replaced PHP for my web applications programming, but it’s replacing just about everything else. I’ve looked at a few of the currently-hot web frameworks such as Django and Turbogears, but each feels as helpful to me as Rails, which is to say: not very.
Blosxom (“The Zen of Blogging”)
I moved my own site from NanoBlogger to Blosxom just about a year ago. Blosxom dispenses with an editing interface, a database of posts, and a lot of other features of more typical blogging software. Posts are edited with a plain text editor such as vim, and consist of text files batched together into a list of stories, with a head at the top and a foot at the bottom:
(head) (story 1) (story 2) ... (story n) (foot)
Configuration is minimal, and almost all fat has been trimmed. The script itself is short, yet affords flexible URL’s (e.g. all posts in July or all posts in directory /foo) and various output formats triggered by request file extension, called flavours. These are demonstrated in a neat hack by Don Marti called “Blog To Congress.”
The joy of Blosxom comes in its sparseness: extra features such comments, calendars, or new input formats can be triggered by loading optional plug-ins, and there is a clean separation of core functionality and bonus functionality. Over time, I’ve added and removed a number of plug-ins, and I feel that I’m at an optimal balance of simplicity and power.
Atom was looking to be an nerd’s over-engineered answer to RSS when I first heard about it. I resolved to ignore the whole thing until hit 1.0 or fell into the abyss. It didn’t go away, and I love the end result.
I appreciate two things about this spec:
SOAP is bloated, and XML-RPC seems determined to re-implement XML in XML. Who needs that? Atom defines a small vocabulary and sticks to it.
Atom actually uses methods like PUT and DELETE, apparently in the way they were intended. It also requires that every entry has an associated URL, and uses this address when communicating changes.
I’m aware of some disagreements, but to be honest I don’t understand them.
The appeal of Drupal for me is similar to that of Blosxom. This is a super light-weight content management system for PHP & MySQL that seems have been worn down to a perfectly-shaped nub through careful development & use.
It’s a tremendously flexible piece of software that can do a lot of work without sacrificing elegance. The core does one job well: content management by multiple users with overlapping responsibilities. It ships with a bunch of modules that implement useful add-ons like blogging, menus, URL aliases, file uploads, and so on. Writing new modules seems to be a piece of cake. If I were to switch to a more advanced piece of blogging software, this would be the one. In the meanime, I’m using it for sites that need blog-like features plus a little bit more than what Blosxom is made to do.
I was turned on to Twisted three weeks ago when Rael Dornfest (coincidentally also responsible for Blosxom) showed me a bit of Peerkat. It’s as cool as Max/MSP & Jitter were when I first fell into that world five years ago, for many of the same reasons. Twisted is glue software: it implements a simple event-based network programming infrastructure, and includes a gob of protocol implementations for HTTP, IRC, IMAP, and many others. I’m excited because it opens the door to a world of net-mashing possibilities, the same way that Max and Jitter put me in a position to manipulate live media.
In my first week of messing with Twisted, I was able to put together a completely serviceable HTTP Attention Proxy. In my second week of messing with Twisted, I’m snarfing IRC data and emitting live visual interpretations (more on this later).
Twisted is an enabler.
As an ordinary human being, you may feel that there is nothing you can do in the fight against terrorism. You couldn't be more wrong. You see, terrorism directly targets ordinary people. You, an ordinary person, can deny terrorists their victory simply by refusing to be a victim. Believe it or not, you have a choice in the matter. This is because the victims of terrorism are not simply those who get blown up during the initial attack. It's the people who are scared to fly in airplanes or visit big cities afterwards. It's the people who get dragged into a war against an abstract concept. It's the people who get attacked in the street because they look like they might come from a hot country.
In retrospect, this form of victory through apathy was the obvious moral lesson of Iain M. Banks's The Algebraist.
The End of Business as Usual:
In my opinion, today things are out of balance. The commercial sphere has become the center of gravity, and the social and civic spheres are orbiting and shrinking around the commercial sphere. Marketers are the people most responsible for enabling that, by blurring the boundaries, by mixing the messages, by inuring people to the misuse and corruption of important ideas by making them part of a marketing message. "It's just marketing."
If you're not reading Dave, perhaps you should be?
There's an archived thread from PHP-DEV up that has Rasmus Lerdorf, Douglas Crockford and others discussing the sense in building JSON support right into the core of PHP, with JSON-formatted request accessible via a _JSON superglobal.
I inverted the color scheme on this site - hopefully I will still think this was a good idea in the morning.
In working for Root, I found that snooping on my own browsing history can be a fascinating, know-thyself activity. The only AT-approved recorder for this activity is a FireFox plug-in, which is a D-R-A-G because I prefer Safari. So, I wrote up a local HTTP proxy after talking through a few caveats with R0ml. I've been testing this for a few days, and I think it's ready to be tried out more widely.
This has been a great Twisted Python learning experiment.
If you're already using the Attention Trust FireFox extension, and you're on a mac, and your machine is used by you alone, and you're not afraid to twiddle with Python scripts or know someone like this, give AttentionProxy a whirl. Documentation is enclosed.
I have been called out, and I must accept the challenge under pain of social rejection.
Four Jobs I've Had
- Popcorn popper and floor cleaner, Capitol 16 Cinemas in San Jose
- Pagemaker jockey, TCI
- Gopher, U.C. Berkeley Moffett Library
- Technology director, Stamen Design
Four Movies I Can Watch Over And Over
- Master And Commander
- The Incredibles
Four Places I've Lived
- Wroclaw, PL
- New Haven, CT
- San Jose, CA
- Oakland, CA
Four TV Shows I Love
- The Simpsons
- Connections (James Burke)
- Daily Show
Four Places I've Vacationed
- Kazimierz Nad Wisla, PL
- Anacapri, IT
- Sec, CZ
- My own head, Casa Zimbabwe, Berkeley, CA
Four Of My Favorite Dishes
- Almost anything containing sausage from Munich, DE
- Two especial tacos (carnitas, carne asada) with refried beans and hot salsa, Pancho Villa
Four Sites I Visit Daily
Four Places I Would Rather Be Right Now
Four Bloggers I'm Tagging sorry!
But I assert that Ajax encourages, even enables, software creators down a path that is inherently disruptive to the greater software world. Here's why: 1) The End of Software Upgrades, Fixes, and Security Patches. 2) Software and Data Available Wherever You Go. 3) Isolated Software Can't Compete with Connected Software. 4) Deprecation of the Traditional Operating System. 5) Software That Is Invisible.
This is basically Andreessen's comment from 1995 that Netscape would "reduce Windows to a set of poorly debugged device drivers." This is clearly not a new argument, and Ajax isn't exactly the core of the change -- HTML was ten years ago, then Java, then Flash. I think it's significant that many of the same people making this claim (myself included) are also hardcore Mac fans, following Apple's developments on OS X closely. To me, this shows that a movement towards networked applications as Dion describes makes the local client software even more important, because it alone makes or breaks the networked software. For years, Microsoft exploited this by subtly breaking Explorer's capacity for internet applications, and is now finally getting their asses handed to them by the bastard child of Netscape that happens to offer a better user experience.
For me, Ajax is disruptive because it places non-monopoly browsers in a lead position, and returns Explorer to playing feature catch-up again.
I was wondering the same things as TechCrunch:
What happened to Ning? It was the perfect service at the perfect time. Mashups are hot right now. Really hot.
How many webservice permutations can there be? Do people even use mashups once the initial wow-factor rubs off? Does Ning's potential developer audience simply realize that the way to independence for a service is to control its own database, and rightly avoid the padded play area?
Two related posts on algorithms and infrastructure:
To be sure, Google's road map of evolving search services is being guided by algorithmic strategies that are foreign to the creative likes of publishing, filmmaking, television production, marketing and advertising. But a willingness to embrace the new math and science of connecting with and selling to consumers and advertisers will make artistic media's leap onto the digital broadband fast track quicker and more profitable.
This is the same point that I made with a client company last week in Florida. It's not enough to be a content company anymore, because it isn't the content that makes money in the old media world -- it's the infrastructure that produces the bundle within which the content is delivered. And that infrastructure is basically irrelevant now.
I don't want to zeldman all over this, but I've been under the impression that actual makers of films, music, articles, and stories are already on top of this shift towards unbundly creative works and basic economics of attention. The great misfortune of the content cartels is that they're still thinking in terms of "delivering" "content" to "consumers". It's a very mass-production way of looking at the world, and it's really poorly adapted to the internet.
Heaton is right that it will be necessary to understand the customs and tendencies of unbundled media to operate in that world, but he's wrong to use the word algorithm. An algorithm is bounded, defined, predictable and reproducible. Unbundled media is anything but - who could have foreseen the success of Crazy Frog (thanks Rael) or developed the pop-hit formula for Lazy Sunday? This stuff comes out of nowhere, and reaches furthest when detached from its source and reinterpreted.
From an earlier chat...
- me: sweet 404
- mf: people are so testy
- me: ?
- mf: the name of his site makes me wish i were gay
- me: "dive into mark" "don't mind if I do"
- mf: i'm sure you don't remember "heavy into jeff"
- me: I remember Kevin Nealon's hilarious review of it on SNL's Weekend Update
- me: maybe pilgrim should s/dive into/heavy into/g
- mf: yes!
- me: "Heavy Into Python"
- mf: noone else does!
- me: "Heavy Into Greasemonkey"
Joshua believes that information visualization is a trend to watch in 2006. I'm not sure it's a trend, so much as continued growth process. After all, information visualization was also one of Tim O'Reilly's trends to watch in 2005, and we didn't see any tectonic shifts in the area this year.
I think Information Visualization is similar to the recently funny-popular Bill Gates computer speech predictions. The wave keeps threatening to break, but never seems to quite gather the necessary momentum. Meanwhile, designers continue to do interesting work in the trenches, interfaces slowly grow new visual displays of information, and software users keep raising their expectations of charts, graphs and UI's. I think this is one trend that's never going to feel "huge" (in the way that one of Tim's other trendspottings, Ruby On Rails, did), even while continuing to expand dramatically.
My personal prediction for infoviz in 2006 is that there will be a shift from Tufte-style static information displays to live ones, that show data in flux or afford manipulation. Developments like AP's Measure Map date widget or open-source libraries for generating well-understood display styles will drive this change by helping non-designers get in on the action. It will be some time (2-3 years) before a designer or researcher blesses this shift with a book on dynamic information visualization that rivals Tufte's in elegance and reach.
Memories of fourth grade visits to the Apple II computer lab at Worthington Hooker Elementary are flooding back:
Reblogging is nothing more than fast blogging, so it's no coincidence that making your content friendlier for rebloggers has the pleasant side effect of making the user experience more pleasant for all of your readers. These observations come from the time I've spent on the Eyebeam reblog and designing and developing a new reblog (or 3) that should launch soon. The reblog tool is basically a newsreader in a browsers that's bound closely with your blogging platform. The output looks as much like a feed reader as it does a "regular" blog. The spirit of blogging is to blur the lines between reading and writing, and reblog is a tool which makes that blurring even more profound.
David Jacobs, Tips for Reblogging
Textmessage.cc ("free text messaging service") seems like a cool idea, but has three fatal flaws:
- "Please choose the receivers cell phone service provider". My phone never asks me to do this when I'm sending SMS from my handset, why should I do it here? I don't even know what providers many of my friends use, nor should I have to.
- Received messages contain "textmessage.cc" signature. Not really a fatal flaw, but still mildly annoying.
I still haven't found a reliable way to send SMS from my computer without knowing provider gateway e-mail addresses in advance, and these seems to periodically change for some providers.