OpenWorld Tidbits
A couple items of note heading into OpenWorld.
Current students can get into JavaOne and Oracle Develop for free. There are a few qualifications:
You must be enrolled in an accredited nonprofit institutions of learning during the Fall semester/quarter of 2010, taking a minimum of six (6) units, and you must be at least 18 years old.
The free pass gets you:
Admission to any session in the Java Frontier track for students, JavaOne, Oracle Develop and OpenWorld keynotes, three Exhibition Halls and the Mason street tent (more info below). Space permitting, you can also attend any JavaOne and Oracle Develop technical sessions, Birds-of-a-Feather sessions (BOFs), and Hands-on-Lab (HOL) sessions.
Also noteworthy, the location of the OTN Lounge is moving from its place in Moscone West in previous years to the Mason Street tent. Yes, that’s inside the huge tent built *on the street* between Moscone South and Moscone North. Check the photo if you haven’t see it in prior years.
This is likely to be relevant for other reasons (free swag, and ahem, refreshments), but in years past, our little team has hunkered down in the OTN Lounge and used it as a base of operations.
I don’t expect this to change in 2010. So, if you’re looking for us during business hours and it’s not Tuesday the 22nd at 5 PM, a good bet would be to try the OTN Lounge. Or, if you just so happen to be there already, look for us and come say hello.
See you in San Francisco.
Gmail Voice Is about Future Search
This is a fascinating piece, albeit speculative, about Google’s recent foray into VoIP with GMail Voice.
Gmail Voice Is About Future Search, Not Free Calls
It seems very likely to be true, considering Google’s similar use of reCAPTCHA for digitizing print.
If true, do you care? Should Google’s T&C for GMail Voice make their intentions clear?
Find the comments.
How Do You Capture Ideas on the Go?
Quiet time often produces the best thinking because it helps thoughts bubble up to the top of your mind.
You know the places, in the shower, on the can, lying in bed. Don’t act all surprised.
I often get these moments when I’m alone in the car, especially if I’m driving on a highway. Even if the radio is playing, my mind will wander, and I frequently want to capture the thoughts.
There’s a huge, obvious problem though; I’m busy driving a car.
I used to dial up my work number and leave a voicemail, which worked really well because it could happen hands-free. Our universal inboxes deliver voicemail as an audio file, so my epiphanies would be waiting for me when I got back to my desk.
Lately though, voicemail has been cranky. It stops recording when I pause and asks me if I’m done. This means I either have to call back or rerecord, which means using the keypad. Not very hands-free anymore.
I found an Android app that can record and send audio, but again, it’s not as hands free as I’d like.
Do any of you have this problem? I can’t be the only one who thinks in the car.
I’m interested in a solution and also to know where you do your best thinking. Find the comments.
Building Smart Lists from an Inbox
Saw an interesting quote attributed to Mark Zuckerberg yesterday:
But guess what? Nobody wants to make lists.
A bit out of context, but Zuckerberg was expanding on the best way to share things with a network of people. He’s absolutely right about lists.
They are simultaneously the right way to share and too cumbersome to manage. Lists are a lot like email filters and folders and other methods for controlling information: easy to configure, tough to maintain.
Setting up lists isn’t terribly difficult, but as your network grows, they become a chore to manage, e.g. a new connection may not fit nicely into an existing list. Does the new person warrant a new list, or should s/he be crammed into an existing list? If the latter, are their other connections that should also be changed?
Curation is work. This is exactly my problem with organizing email.
Clayton (@cdonley) makes this very point about enterprises. LDAP stores are perfect for creating these lists, and IT manages them, making this a better solution. Inside the firewall, your relationships are known (and protected), and LDAP can use backoffice systems to create smart lists based on this information.
But what if you don’t have these benefits?
Paul (@ppedrazzi) and I had an ad hoc brainstorming session at SXSW about this. As with most software problems, the answer is an algorithm. In this case, the data source for the algorithm is your inbox.
Email is the standard for sharing things. You have to tell it with whom to share and at what level, e.g. to vs. cc vs. bcc. And email already has lists.
Indexing an inbox could tell an algorithm a lot about the relationship between the sender and recipient, which in turn, would help build smart lists.
Facebook already offers email and is rumored to be moving toward offering web mail, e.g. @facebook.com addresses. Google already indexes GMail and could easily add a smart list capability to their rumored Google Me network.
The major downside is the freaky factor, as with most algorithms. Mining someone’s inbox to create smart lists could easily feel like an invasion of privacy.
Anyway, there’s a lot of useful information locked away in an inbox that could be used to create lists, among other things. Once created, the network could maintain the lists in a relatively hands-off manner, or leave it to the user.
What do you think? Do you mind curating lists? How would you automate list creation and management?
Find the comments.
Don’t Miss the Blogger Meetup at OpenWorld
The guys at Pythian, specifically Alex Gorbachev (@alexgorbachev) will be continuing the grand tradition of hosting a blogger meetup at OpenWorld this year.
This meetup is a must attend because it’s the best opportunity all year long to meet your favorite Oracle bloggers and tweeters IRL and put a face with a digital identity.
Oh, and I’m pretty sure that blogging and/or tweeting are not requirements for attending. If you read Oracle blogs or follow Oracle people on Twitter, I’m pretty sure that’s enough. You might even get the nudge you need to make that jump.
Here’s the skinny:
When: Wednesday, September 22, 5:30 PM
Where: Lower Dining Room, Jillian’s Billiards in the Metreon, 101 Fourth Street, San Francisco, CA 94103.
If you don’t already know where Jillian’s is, you’ll know by Wednesday of OpenWorld week. It’s right in the middle of the show, across the street from Moscone West.
Make sure you drop a comment on Alex’s post, with a “count me in” so he can plan accordingly. See you there.
Bloggers Meetup Oracle OpenWorld 2010 The Pythian Blog
When Memes Collide
I love a good meme, not sure why, but I think it’s because of that moment when you can work a meme into everyday life. Awesome feeling, at least for me, but then again, I’m a giant dork.
Memes, of the internets variety, are a lot like geek speak, and I’m pondering the idea of giving an unconference session about memes at OpenWorld this year, much like the geek speak one I gave in 2008.
Knowing, if not understanding, memes helps demystify some of the jargon that permeates the internets, and basic knowledge goes a long way toward gaining some measure of credibility among your friendly, neighborhood geeks.
Plus, you might just find them fun.
IMO even more fun is the collision of memes, like the following munging of LOLcats and the double rainbow guy.
Incidentally, double rainbow guy, embedded for your enjoyment, is a great meme. Love that guy.
Another meme crash, Inception plus Yo Dawg and other Inception-themed memes.
I highly suggest Know Your Meme if you want to learn more, and no, it’s not a Rickroll.
Happy freakin’ Friday. Thoughts about meme-on-meme violence? Find the comments.
Firefox Panorama Looks Cool, But Speed Kills
The latest Firefox 4 beta build (beta 4) includes the Tab Candy feature, which has been named Panorama.
Firefox Panorama: Tab Candy Evolved « Aza on Design
I’m running this version on Ubuntu, but not as my primary browser. Panorama looks cool, and tab organization is a nice to have feature, albeit probably a power user feature.
The problem for me is that Chrome (and Chromium) are still faster than Firefox, primarily at Javascript rendering. No, I haven’t seen any tests with Firefox 4 vs. Chrome 6, but it’s going to take a major improvement in speed to switch me back to Firefox.
What about you? What’s your browser of choice and why? Do features like Panorama matter more than flat out speed?
Find the comments.
Geeks in Love
Luckily, I haven’t had to be this clever, but the bar has definitely been raised.
Found this via Gizmodo, seen in the wild on Hermosa Beach in Southern California. Of course, haters gonna hate, as the commenters prove, e.g. no opening tag, old picture. It does look like the opening tag might be on top of the barricade, possibly <GEEK LOVE POEM>.
Depending on the actual age of the photo, it could be lifted from ThinkGeek or vice versa.
Another one courtesty of Gizmodo, a poem created with song titles, with the same type of commentary. At least he stayed away from “Never Gonna Give You Up”.
Find the comments.
Captain Support to the Rescue
Friend of the ‘Lab, Tim Hall (@oraclebase) posted a quick note over the weekend that caught my eye.
More PC support… | The ORACLE-BASE Blog
For me, the interesting part part is his question: “How are normal folk meant to cope with this?”
This isn’t rhetorical either. It’s a serious issue with technology. Most of us likely don’t call tech support when we have issues, but that’s only partially influenced by our own ability.
For the most part, tech support is abysmal for consumer electronics, e.g. when I hit issues with the OTA update to Android 2.2, I made that mistake.
Support at Sprint and HTC both shrugged their shoulders and suggested a factory reset.
Anyway, Captain Support may be the reluctant (or not) alter ego many of us have, but what about all the other n00bs out there who don’t have family geeks?
Find the comments.
More OpenWorld Sessions of Interest
If you’re attending OpenWorld (@oracleopenworld) in September, you’re probably starting to plan your schedule.
Trust me, this isn’t something you want to leave for the plane ride or the first day. This year, OpenWorld, Develop and JavaOne are all happening at once, September 19-23, and sheer volume of content is enormous.
With all that good stuff, you’ll want to map out a game plan. So, first thing, plan on making our session, “Web 2.0 Versus Enterprise 2.0: Lost in Translation” S313346 on Tuesday at 5 PM at the Marriott Marquis, Salon 7.
It’s an Easter Egg surprise because we won’t be presenting what’s in the session guide; our new working title is “WebCenter: A Web Developer’s Playground”. If you read here, you know that already.
If you like dynamic languages, you should check out Christopher Jones’ list of PHP, Perl and Ruby sessions, and if you really love the Ruby, you’ll want to make time for Raimonds’ (@rsim) Rails sessions.
Side note, I’ve not actually checked to see if these sessions conflict. So, yeah, hoping they don’t.
Today, I got an email pointing me to a list of Enterprise 2.0 sessions (pdf), featuring many WebCenter sessions given by our colleagues, and a couple sessions from friends of the ‘Lab Billy Cripe (@billycripe) and Bex Huff (@bex).
Definitely check out that list if E 2.0 is your bag.
Among the many new and interesting topics at this year’s OpenWorld are Open Office and Cloud Office, which came to us via the Sun acquisition. Here are a couple Cloud Office sessions I plan to attend:
- Oracle Cloud Office: The Open Standard Office Suite for Web and Mobile, S317346: Monday, September 20, 2:00PM, Marriott Marquis, Golden Gate C2
- Oracle Office: The Complete Open Standard Office Productivity System, S317344: Monday, September 20, 12:30PM, Marriott Marquis, Golden Gate C2
Have any sessions you can’t miss and want to share? Anything in our wheelhouse that I’ve missed?
Find the comments.
Philadelphia Charging Bloggers a Fee
Not sure how the city can trace bloggers who should pay this, but assuming they have that magic figured out, does it make sense to charge bloggers a fee at all?
Philadelphia Bloggers’ License – $300 Fee | Geekosystem
The economics of this are quirky. The cost of identifying and notifying bloggers has to outweigh the revenue they’ll collect, right?
I wonder if this is for a given time period, and if they can tack in on to municipal taxes.
Weird. Anyway, just another reason to forgo ads on your blog. Very few bloggers actually drive enough traffic to make it worth the annoyance of ads anyway.
Thoughts?
Discontent Grows With Facebook Places
This was inevitable, and I think “grows” is a bit out-of-context. The feature launched last week so any growth measurement is premature.
Discontent Grows With Facebook Places’ Ability To Tag Without Users’ Express Permission
I did notice a few people in my News Feed were using Places, and frankly, I was a bit surprised with at least one, knowing him IRL. I’ve yet to follow up to see what value he sees in Places, but I’m definitely interested to hear his thoughts.
This quote from the Crunchgear post says a lot:
Never mind the fact the such information, to a random friend on a hopelessly large friend list, is pretty much useless: what good does it do me to know that my friend at [sic] pizza at 9:30pm somewhere in Queens? No good, exactly.
Agreed. The relevance of Places information is highly subjective and dependent on the relationship with the friend.
Have you started using Places? What about people in your circle of friends? Thoughts on it, location services in general?
Find the comments.
Two Web Design/Development Blogs for Your Consideration
Continuing a Friday tradition, today I’m sharing a couple web design blog that you’ll find useful, Smashing Magazine and 1stwebdesigner.
Smashing Magazine (@smashingmag)
First suggested to me by Rich (@rmanalan), Smashing has tons of resources for web designers/developers, ranging from operational stuff like how to work with clients to free-to-use fonts and icon packs to how-to tutorials.
Here are a couple sample posts I liked recently:
30 New Free High-Quality Fonts
Beautiful Examples of Transparent Screen Trick Photos
I especially appreciate that they publish entire posts (vs. excerpts) to their feed, especially since they do a lot of long posts with graphics, and the Related Posts are very useful if you find something that interests you.
1stwebdesigner (@1stwebdesigner)
Not sure how I found this one. Its focus is on tutorials (e.g. HTML, CSS, Javascript, Photoshop, WordPress, Flash) and resources (e.g. fonts, icons, photography) for web developers, including the occasional post on general software, business how-to or inspirational post.
Here are a few I liked recently:
JQuery for Complete Beginners: Part 1 (there have been four parts so far)
30+ Killer Web Development Screencasts to fine tune your skills
The Ultimate Roundup of 55+ CSS3 Tutorials
Getting Started: Learning to Code for the Web, Logically
Enjoy these two and if you’re feeling adventurous, check out these two data visualization blogs and these two design blogs.
Keeping a Journal with Checkins
Had an interesting epiphany today. I’ve been thinking a lot lately about documenting my life because I’ll soon be a father.
As I’ve gotten older, my memory and now, it seems more important (urgent even) to document it somehow in case my kid ever wants to see what a really dull man I am.
A while back, I had a discussion with Marshall Kirkpatrick (@marhsallk) of ReadWriteWeb fame, about GetGlue, a service that lets you checkin to stuff you’re doing, e.g. watching TV, listening to music, watching a movie, thinking about something, etc. Marshall is a fan, see here and here, and I wasn’t entirely sold.
Marshall’s a smart dude, and after listening to him, I made a mental note to try it sometime.
GetGlue has some easy benefits, e.g. it recommends content based on what you tell it, there’s a social element that exposes what your social circle is doing, it has bling and who doesn’t want bling.
As I do with most new stuff, I’ve made a conscientious effort to try it out for week or so to see if it sticks.
Back to the point.
I found myself running some errands and listening to the radio in the car. Since I’ve been testing GetGlue, I decided to checkin to what I’d heard (complying with the no-texting-while-driving laws, natch). I’m still avidly using foursquare, so I also was checking into venues. Of course, I threw in a tweet or two along the way as well.
It occurred to me that tying all these services together produces a journal of my life at a very granular (read, boring) level. For example:
- I listened to Pink Floyd and Metallica on the way to Fred Meyer to do some grocery shopping.
- I listened to Led Zeppelin, Neil Young and Pink Floyd again on the way to Steakadelphia.
- While waiting on my cheesesteak, I watched a little preseason NFL football on one TV.
- I tweeted a bit.
- Then I watched CNN on the other TV, where they were reporting that an American Airlines flight out of SFO was delayed by a tip about hijackers.
- I listened to Eric Clapton and Black Sabbath on the way home to eat my cheesesteak.
This is totally mundane crap, but then, we as people have a storied history of journaling our lives, whether in paper form, in weblogs or in status updates.
Why do we do it? It’s in our DNA.
I know very few people will care about my life in this level of detail, but for those that might, it’s a great way to document our lives accidentally.
Of course, one big issue is that it takes a handful of services to do this, making it difficult to get a complete picture.
Until Facebook sees value in it.
What do you think? Any interest in GetGlue or documenting your life?
Find the comments.
Facebook Places Signals a Tipping Point for Location Services
Yesterday afternoon brought the official announcement of Facebook Places, the giant network’s entry into geolocation services that had been rumored for months.
We’ve been bullish on location for a couple years (whatever happened to Fire Eagle), so this announcement is huge, even though I rarely use Facebook anymore and don’t plan to use Facebook Places.
Why?
Because, as with social networking, status publishing, social gaming, photo sharing and a host of other services, Facebook has become the place where the bell curve gets acquainted with new stuff. As people use X on Facebook, they become familiar and comfortable (or not) with X, and they begin to understand the value of X.
Where X is aforementioned new stuff.
This helps us immensely because it provides context when we start talking about X. Location services have huge value within the enterprise, and Facebook Places will only help us make the use cases more obvious.
Plus, Facebook Places will help iron out the lingering questions about location, e.g. will anyone use it, is it a security nightmare, where’s the value beyond personal meetups with friends, etc.
Foursquare has made significant inroads lately with location and brand/business tie-ins, and Facebook is pushing in this direction from the get-go. There’s a lot of money to be made rewarding the loyalty of customers, and Places is a natural extension of the overall Facebook presence that (it seems like) every business has now.
Am I alone in feeling like it’s AOL all over again when businesses advertise their website and their Facebook page with equal prominence? So don’t even bother with their websites anymore.
Why?
Because they know exactly who you are when you land on a Facebook page. Now, they could also know how often you’ve patronized their establishment. This is gold for advertisers.
And potentially lead for users, or not, depending on what the rewards are.
Anyway, I’m very interested to watch Facebook Places evolve. It’s not available everywhere yet, so we’ll have to wait a bit. An interesting tidbit from yesterday’s announcement was that 20% of foursquare’s users push their data to Facebook. That’s pretty astounding to me, even given the relatively small user base of foursquare.
Imagine if 20% of Facebook’s 500 million users eventually use Facebook Places.
Find the comments, this stuff is interesting to me, especially the naysaying.
Google Adds to Android’s Capabilities
Last week, you’ll recall I had a bit of an adventure upgrading my EVO to Android 2.2. The reason was to test drive a couple new features that Google announced last week, Chrome to Phone and Voice Actions.
Chrome to Phone is a Chrome extension that can send data from your browser to your phone. Aside from the obvious launching of links in the Android browser, there are several other useful features:
- Google Maps links launch the Google Maps application on Android.
- YouTube links launch the YouTube application on Android.
- Selecting a phone number will automatically launch the dialer with the number populated.
- Selecting text on a Web page will copy the clipboard to Android (long press a text box to paste on Android).
I tested these all successfully, and there’s definitely a lot of value, especially in the Google Maps integration. There are real use cases behind this, which isn’t surprising considering it was a 20% time project.
Check out the video.
Voice Actions adds a bunch of spoken commands to the Voice Search and search widgets, which are already quite useful on Android. Here’s the list:
- send text to [contact] [message]
- listen to [artist/song/album]
- call [business]
- call [contact]
- send email to [contact] [message]
- go to [website]
- note to self [note]
- navigate to [location/business name]
- directions to [location/business name]
- map of [location]
I don’t use voice much myself, first because Swype doesn’t surface voice input and second because I feel like a tool commanding my phone. This list is good enough to make me reconsider, although frankly, remembering to use these features is the biggest hurdle for me.
Anyway, here’s the video:
Features like this are really cool and useful, and they do a good job making the user’s experience with the phone better. But are they enough to get someone to switch from a rival smartphone or upgrade from a dumbphone?
I’m not sure. I think carrier choice and cost are still the factors there.
Thoughts? Find the comments.
Update: I should have made it more obvious, but as Mandy Waite (@tekgrrl) points out, these features are Android 2.2 only. But hey, why not root?
Weeplaces, an Awesome Foursquare Visualization
I’ve been playing foursquare for about a year now, and one of my primary reasons has always been to visualize my movement through the world.
Weeplaces provides the coolest foursquare checkin visualization I’ve seen so far.
HOW TO: Visualize All Your Foursquare Check-ins
Each city builds with traveling lines while time progresses across the bottom axis, so you get time-lapsed playback of your checkins around that city.
It’s really cool, especially if you travel, e.g. the playback of my checkins in San Francisco shows my movements around the city for various conferences including OpenWorld 2009, Chirp, and Google IO.
While we’re chatting about foursquare, another reason I’ve played is loyalty programs, which are beginning to take hold. The vision I have is an integrated loyalty program and foursquare checkin app, owned by foursquare, that will allow me to get rewards for my business.
I really wish foursquare would buy CardStar or a similar mobile app for scanning and storing all that loyalty card data I carry in my wallet. Update: I meant to dig up the post where I first heard this idea, but I got distracted and spaced. Sorry if you thought it was mine, but it’s not. It’s Scoble’s. See here. I do sometimes have original ideas, just not this time.
Anyway, geo location services are hot. Do you care?
Find the comments.
How to Install apk Files on Android
This is another one of those informational posts that’s as much for me as it is for you and Google.
Unlike the iPhone, which makes it very difficult to install non-approved apps on a jailed phone, installing non-Android Market apps on an Android phone is a breeze.
So, if someone sends you an apk to try out, you’ll have it running in a matter of minutes, assuming you remember these steps, or you can use Google.
As I mentioned previously, Anthony (@anthonyslai) is working on a WebCenter integration with Android, and so, when he sent me the apk, I went immediately to Google for instructions on how to install it.
There are two basic ways, either install a third party app installer or use the Android SDK. I chose the latter for a couple reasons. First, I already have the SDK installed to take screenshots. Second, I have trust issues with the Android Market.
Here are the details I found:
Installing Applications through the Android Market
- Copy the APK file to your phone’s memory card by connecting it to your computer or using an SD card reader.
- Download and install an application from the Android Market. AppsInstaller was recommended by several sites, but most file managers also have installing capabilities.
- Once installed, use the app you chose to find the apk file.
- Install the apk.
Installing Applications with the Android SDK
- Download and install the Android SDK.
- Modify your phone’s settings to allow the installation of applications from other sources by choosing Settings from a Home screen, then selecting Applications and enabling the Unknown Sources option.
- Connect your phone via USB and mount it as a disk drive.
- Open a terminal and navigate to the SDK directory.
- Execute: adb install filename.apk
- Unmount your phone .
So, not that bad and definitely less effort than the iPhone process. Just ask Clayton Donley (@cdonley), who built the Oracle People app.
There’s a Rub with Android
I love Android. I love my EVO. I’m grateful that Google opened my eyes.
But, there’s a rub with Android. It’s the same one with Linux.
They’re both too hard.
Let me qualify before you break out the flamethrower.
Obviously, they would be similar, since Android is based Linux kernel. When I talk about Linux, I specifically mean Ubuntu, which is the distro I run. Yes, the very same one that’s decried by uber-geeks as too easy.
It’s not too easy.
Case in point, I spent many hours this week bringing my laptop from 9.04 Jaunty to 10.04 Lucid. I decided to try to upgrade initially, but that died going from 9.10 to 10.04. I did get it all running on a clean install of 10.04, until a power management setting I tweaked caused it to fail on restart.
Ugh. All I was trying to do was set power management to turn off the monitor after a certain point of inactivity. The GUI accepted my settings, even though they borked up the configuration. Now it won’t start. Not exactly expected behavior.
So, I’ll need to invest a bunch more hours to get it back to normal.
What does this have to do with Android?
Today, I had a similar experience with my EVO. I decided to take the OTA that would upgrade my phone to Android 2.2 (Froyo) to get at all the goodness, especially the stuff announced yesterday. It downloaded just fine, but on the restart, it failed with a warning screen.
No message, no logs, just the Android guy and a big triangle-exclamation point.
Very helpful. Thanks for that.
Removing the battery and restarting brought it back to normal just fine, but on 2.1.
I tried a few times, then called Sprint technical support. They said something about ActiveSync being the issue. So, I tried removing Touchdown’s contact syncing, then the app entirely. No dice.
I called Sprint back, and they were officially stumped. So, they punted me to HTC technical support. They too were stumped and recommended a hard reset or trial/error removal of applications to see if any was causing the issue.
A hard reset means loss of data, and removing apps for giggles sounds like a great way to frustration land.
No thank you.
Luckily, my complaining via Twitter yielded a protip from Friend of the ‘Lab Bob Fraser (@bobfraser1), i.e. find the OTA in archive form, copy it to the SD card root, rename it update.zip, boot into recovery mode and install the new ROM.
This process was definitely a bit scary, but it worked like a champ. I found the OTA (bonus for a rooted version) and applied it, the radio update and the Wimax update all successfully.
My point is simple: Android (and Linux) need to be more forgiving in order to succeed with mainstream customers. I’m by no means a n00b, even though some of you reading this may think so.
People have busy lives. Most of us don’t want to throw hours or days geeking out to take an OTA or an upgrade. In this particular case, a less persistent person would have ended up with a factory reset phone, not a good experience at all.
The technical support problem is fodder for another post.
Linux suffers from the ivory tower nerd syndrom, i.e. if you can’t make it work, you’re not worthy. I’d hate to see Android go that route too. I suspect Google and its carrier partners won’t let it, but I’m not at all comforted after today’s adventures.
If they don’t make Android easier, then the Apple apologists win.
We can’t have that.
Find the comments.
This is Clever
So, yeah, it’s French hip-hop, and yeah, it features Facebook metaphors IRL, but it’s still clever.
Plus, it has a good beat, and I can dance to it.
H/t EUROPOPPED via TechCrunch.
EUROPOPPED observes the irony of the American imports featured, i.e. Facebook, iPhone and hip-hop, but don’t forget Venice Beach and tourism by association.
Anyway, it’s Friday. So, enjoy.










