By pmonday on Aug 14, 2006
There was a rumor on CNN today that Pluto is getting RIFd ("let go" if you aren't familiar with the acronym).[Read More]
To many of us, loading up a few words like "Participation" or "AJAX" simply isn't enough to understand what embodies Web 2.0 vs. Web 1.0. The best description, ever, of Web 2.0 is What is Web 2.0 written by Tim O'Reilly.
Perhaps the best quote from the article is "Like many important concepts, Web 2.0 doesn't have a hard boundary, but rather, a gravitational core." O'Reilly then goes on to a meme map (Ok, if you feel foolish and don't know what a meme map is, you are not alone...maybe its Web 2.0 , Wikipedia has a definition of Meme, I can only conclude that a meme map is really a me-me-map that has a map of me in the middle, as opposed to a Mimi Map, or a Mini-Me-Map). Still, the meme map is worth a look.
My friend Eric Olson and I collaborated (about 5 years ago) on a project that very much embodied the Web 2.0 characteristics, so I'm going to use it as an example since it was pre-AJAX and we won't get carried away with examples of Google, Flickr, and other off-the-shelf examples. I will present Stereo Beacon, then use O'Reilly's Web 2.0 "Patterns" to describe the 2.0-ness of Stereo Beacon as well as its weaknesses, thus hoping to illustrate the Web 2.0 patterns presented by O'Reilly.
First, a description of Stereo Beacon: Stereo Beacon is an MP3 player built with the Java Media Framework (JMF). But it wasn't a standard media player, it was fully networked, and fully peer to peer (without a centralized controller). As folks joined a channel, the metadata about their music (not the music itself) would be shared with all of people in the peer network. Anyone in the peer network could request that a song be played, regardless of the song location. The "requests" were queued up and people had votes that they could move a song up or down on the shared channel. As one song ended, a token would be passed to the machine that held the next song and that machine would kick off a multicast playing of the song (through JMF) that the entire peer network would hear in sync. Basically, a shared radio station based on music residing in each other's libraries. Because the files weren't passed around, we felt that we were helping protect digital content (though, there do appear to be rules governing the broadcast of music that could be applied here...still...).
I'll take some liberties with the implementation as I discuss Stereo Beacon and how it embodied Web 2.0 based on Tim O'Reilly's article. O'Reilly presents several principles or "patterns" that describe Web 2.0 characteristics. Stereo Beacon did not embody all of these, so let's talk about those it did:
Recalling that we were Web 2.0 before Web 2.0 existed, we did have some issues...we used a client-based graphics package that required an install. We weren't HTTP-based (we used socket-socket communications after we evaluated JINI/a still nascent JXTA/Jiro), and we didn't use XML heavily (remember, this was also just as the popular XML-standard interfaces were developing). Things we didn't do well were:
If I didn't have a couple of kids perpetually circling me in my off hours and Eric playing with alternate media streams (you would have to ask him...), the player could easily be rebuilt with substantial improvements in this brave-new Web 2.0 world, for example:
So, in a nutshell, read the Web 2.0 article by O'Reilly. Perhaps my FAVORITE of O'Reilly's patterns is: "Software Above the Level of a Single Device". Nicely done Mr. O'Reilly.
Updated with new service: WiFi for a fee.
I've spent quite a bit of time helping my neighbors with their computer in the past few days. We had a lightning strike in the back that fried their ethernet port, they are frustrated talking to the HP support folks, they need their new high-speed Internet. I ended up going over and putting in a new NIC for them and installing their virus software. All in all, about an hour of work.
Still, it really begs the question, how do I monetize this side-job. I mean, really, its non-traditional. Folks know they need work done on their computer stuff, but they often don't trust some random geek (I can use this term since I am one) they call off the street and some businesses prices are just too high. FURTHER, these folks are NOT getting the help they are promised from where they purchased their computer and they are nickel and dimed to death (most of these folks can get free virus software through their ISP yet the companies insist on charging them $60 for software).
So, I have a solution...we all trust the ice-cream truck and our kids are almost giddy when they hear that music.
Here's my plan. Should I ever get tired of working for Sun (or Sun gets tired of me working for them), I'm thinking I will
a) buy an ice-cream truck
b) rebrand the ice-cream truck with images and labels like "Getchyour Viruses Fixed Here" and "Is your WIFI secure" and "I can help with your Nano" and "I spy spyware" and, maybe if I want to penetrate the power user "Getchyour home grid from me in under 2 hours"
c) create an 8-track tape (I somehow doubt my MP3 CD would work in the ice-cream truck) with my favorite jack johnson tunes (adults love jack johnson...it makes them all happy and giddy like a kid).
d) drive around the neighborhood playing my tinny jack johnson 8-track and selling services (two models, they can run out with joy to my truck and their CPU tower and I will fix it in my ice-cre...err...virus truck or i will come in and fix their computer for an extra fee...have you ever seen an ice-cream vendor out of their truck?)
e) when business stagnates i will offer free ice-cream cones to the kids with any service
f) attach a wifi-gumball-like machine to the back of the truck where adults can run up and put in their spare change to wifi enable their neighborhood at $5 / 10 minutes (no guarantee of service remaining in range so I recommend you have a laptop and charged battery). Per the suggestion of a friend, each gumball will have an SSID and WEP password on the surface of the gumball, so jot them down before you eat your gum.
Ahhh...one can only dream.
What am I doing on my vacation day? Installing and playing with Flock 0.7 Beta, what else?
Flock is a Firefox-based browser that is, well, I suppose you could say "Community Enabled". Its also still a bit buggy, but then, its a beta. To be honest, it is in MUCH better shape that the last version I tried. This is a post from the built-in blogging tools. I had to experiment a bit, using the "Blogger API" for blogs.sun.com didn't work, so I started picking and choosing...if this posts without error, then the settings I used are:
API: WordPress Blog
API URI: http://blogs.sun.com/roller/xmlrpc
User ID: mine
The error path for using the "Blogger API" isn't right, so there was no error when you press "Next", it just stops with no error message. So, hit the "Back" button and try again.
I like the new look and feel, but that is just a Theme, nothing special there. There are a few VERY noticeable changes in Flock from Firefox:
- Built in RSS Aggregation - Basically, you can set up your RSS feeds in your side bar and they are displayed natively in your browser in a nicely layed out table. Really, its a great feature. You can automatically add to your "My News" page by clicking on the Live Bookmarks link that displays to the right of the URL in the address bar. It took me some clicking around before I realized this...in fact, I was just going to slam the lack of integration when I saw the icon ;-) Oops...now I think it is VERY cool. The only question I always have about all of these RSS feeds is whether I would rather surf the sites themselves or look at the RSS aggregation page. I'm still, personally, up in the air on it.
- Built in Community Sites - Well, actually, only Flickr and Photobucket are supported...but its a start. The photo support is interesting, basically, Flock has introduced a "Top Bar". When I installed Flock it prompted me for information about my Flickr account. Once you've added your photo account properly, you can drag and drop into the toolbar from anywhere (from the browser, from your explorer, from your desktop) and a Photo Upload appears where you can tag your photo appropriately. Once uploaded, the picture remains in your top navigation bar. Very cool indeed.
- Built in Blog Tools - Like this one...at this point, it doesn't seem "as feature rich" as something like w.bloggar, but there are some interesting options. For instance, if I want to blog about something I've surfed to, I can simply right click when I'm reading some content and choose the "Blog This" option. My blog (that I set up during configuration or after in the options) tool pops up and I can start blogging.
- Built in Web Snippets - If I don't want to blog immediately, I can save a location as a Web Snippet. Then, in the bottom corner of my browser window, I can see all of my snippets. A bottom navigation bar appears and I can see all of my snippets. I can then drag the snippet into the main browser pane to go back, or into my blog tool like this: Jonathan Schwartz's Weblog
So, here's what I'm doing...I'm temporarily done with Firefox. I'm moving to Flock for the time being. I'm giving it the "three crash test". When it crashes three times, I'm done. If you're interested, it has only crashed on me once in an hour...so...
At this point, I give Flock a B rating (stable, some new stuff, but its not compelling enough for me to risk uninstalling Firefox and IE on my Windows machine). There is potential...
And just for the heck of it, since everything is Web 2.0 ;-) I'll give it a 3.5\*(2.0) rating...basically, 7.0 on a 10.0 scale :-) It definitely advances Web 2.0 concepts through the community integration (one feature I didn't mention is the automatic integration to sites like del.icio.us and Shadows so I can move my bookmarks around. I'll reserve the right to move my 2.0 rating up or down as I play with it :-)
Blogged with Flock
Welcome to my blog...I'll tell you a little bit about myself...you decide if you want to drop back in once in a while. You can even drop a few comments and tell me I'm full of it...or not
Yes, I'm a software architect...no, I don't often subscribe to traditional definitions of an architect. I liked a definition in a book by Martin Fowler (geez...when was the last time I really had to sit and read????), it goes something like this: "architecture is the hard stuff". I like it, very simple. Unfortunately, I find that a lot of "architects" forget about the hard stuff and, worse yet, treat their architectures as infallible. If you don't face down "the hard stuff" (which often occurs late in the development cycle), the architecture is incomplete.
I'm fascinated by the whole architecture thing. Its C-L-E-A-R-L-Y neither a science nor a repeatable practice (when I say "repeatable", I do believe architecture is repeatable within a particular product/context, but its less repeatable if you move from position to position...applying Bredemeyer in two places will be difficult, unless you got lucky enough to start from scratch in both places...and how often does that happen in real life). What an architect is seems to be more in the context of the company and, even, the project that the architect exists on. You'll see my architecture views in later postings. Further, I think architecture and architects must be constantly evolving to address our unique challenges as leaders and creators.
Ahhh, the storage field. You know, I haven't always been in the storage field...my Master's from Washington State was in the area of Filesystems...but then I did database for a while (DB/400), object oriented infrastructure (SOM/400, a CORBA implementation), business infrastructure (SanFrancisco), storage software and hardware, business software again, business architecture, and BACK to storage.... The whole storage field is completely unique. It has network complexity (FC, IP, iSCSI, SCSI, etc...), challenges in processing power (do you have a service processor or not?), its a hardware-centric field where software is often dismissed yet critical to success, and more. Oh yeah, and then there are the politics, standards bodies, layers of protocols, and more.
My approach to the storage field is that of any application writer...adopt infrastructure, leverage open source, don't rebuild commodity parts, be humble in what is yours to invent and can be scrapped together from other places, focus on the CONTENT, leverage your company's strengths. That last one...wow, Sun has a billion strengths. Sometimes you look around inside of Sun and there's all of this energy, and it is neither fully tapped and what is tapped is not harnessed all in the same direction.
Is that enough? Obviously this was fairly open-ended, I'll get more focused in future posts. I look forward to discussions with anyone that may read, and please, feel free to jot me a note some time. Or, lurk away.