"The minute you have the means to take responsibility for your own dreams and can be held accountable for whether they come true or not, life is a lot tougher. It's easy to have wonderful thoughts when the chance to implement them is remote. When you've gotten to a place where you at least have a chance of implementing your ideas, there's a lot more responsibility in that."-- Steve Jobs in Playboy (Feb 1985)
Friday, November 19, 2010
Sunday, November 07, 2010
It happened again yesterday while I was wondering around downtown San Francisco. I had my MacBook with me, but no cable. Thinking that an iPhone cable can't cost more than $4.95, I walked into the Apple Store on Market Street. Hello, sticker shock: iPhone cables cost $19.00.
Amazon, on the other hand, has off-label iPhone cables for $1.25. Likely not as nice as the original. Still, I can't imagine the original cables cost much more make and ship than the retail price of the cheapo cables. Somewhere along the way, Apple seems to create enough value for a whopping 1520% percent markup.
Cables, coffee, greeting cards. The holy trinity of high margins. If only I could create a retail store that sells only these three items.
"If you try to argue Starbucks pricing by talking about costs you don't get basic economics." -- Chris Dixon
- Until around the 3rd Ave exit (Exit 416), drive in the leftmost lane. At the 3rd, start slowly switching lanes into the rightmost lane.
- The rightmost lane will start moving fastest because a lot of people will be switching to 92.
- Ride the rightmost lane until after the 92 exit. There will be a blue sign that says "Call Box". At the sign, start immediately switching to the leftmost or 2nd-to-leftmost lane. Note that in California, you are required to go at least 3 car lengths between lane changes.
- A lot of drivers will be entering from 92 onto 101S, causing the rightmost lanes to slow to a crawl. Meanwhile you will be cruising on the left-hand lanes.
This will easily shave 5 minutes off your morning commute.
(Originally posted on Quora)
Monday, September 06, 2010
Except, of course, I didn't buy a lot of books.
My go-to place for books has been Amazon. And more recently, I've been buying most books on my iPad in iBooks or the Kindle app. My bookshelf at home is full - why buy more physical books if I can have all my books in my hand?
This the problem confronting bookstores and music shops today: People come for the experience of browsing and socializing. Yet Borders and Barnes and Noble can only charge for books and coffee. Even the high margins on foamed milk and espresso can't make up for the costs of stocking 200,000 titles, and trucking them around the country. At the same time, consumers are moving to consume digital media instead of piling on more dead trees at home.
Here's my radical proposal.
Get rid of the physical books and CDs. Only sell goods with 90% margins: Lattes and greeting cards. Rent smaller spaces but build them with beautiful architecture and interior design, comfortable couches, display advertising for the latest digital content, and beautiful, high-resolution e-readers that will let users browse any book in the world, and headphones to listen to any song on the planet. Invite local authors for frequent readings that will let them interact with the audience and the audience interact with them. Staff the store with fewer, but more knowledgeable staff who can recommend books and music, and help people use the fancy electronics.
Want to finish reading a book at home? Swipe your card through the reader and it will be instantly available on your Android phone, your iPad, and your computer. The bookstore takes a cut.
Stepping into a bookstore is an emotional experience: You feel ready to browse and discover. Here's way to create that feeling without stocking dead trees and having to rent real estate measured in city blocks.
Saturday, August 28, 2010
I guess it's all email now. I can't remember when I last printed out a document at my job.
-- from this BusinessWeek article on Lexmark
Thursday, August 26, 2010
-- via Quora
Tuesday, August 17, 2010
Last night I had an epiphany. I checked my router settings, and it seems like D-Link routers are preconfigured to use "Super-G with Dynamic Turbo" which in turn forces the router to Wifi channel 6.
My apartment complex is so heavily populated with techie types, and all of them have Wifi. A large percentage of Wifi routers is made by D-Link. Yeah, all of the D-Link routers in my neighborhood were probably fighting each other for airtime on Channel 6.
I logged into my router's admin console (usually at http://192.168.0.1) and chose a different channel . My Wifi has been speeding along ever since.
 Humans are bad at randomly selecting Wifi channels. Open up python on your console and type:
>>> import random; random.sample([1,2,3,4,5,7,8,9,10,11],1)
Despite the doomsayers, the concept has succeeded. So how much revenue does each Apple Store bring in today?
One Quora question and a friendly pointer later, I was reading this Bloomberg article which estimates Apple's flagship Fifth Avenue store to be grossing $350 million dollars a year. That’s the equivalent of selling one Mercedes-Benz C300 sedan per square foot each year. Impressive.
But the 5th Avenue Apple Store is hardly average. What about the average Apple Store location?
This article on AllThingsD puts Apple's total revenue from Apple Stores at $2.58 billion per quarter. That would mean that all Apple Stores make a total of $10.3 billion per year .
Scouring through the location list on Apple's website, I counted 301 Apple Stores worldwide . That would put average revenue at $34 million per store. While that's only one-tenth of their flagship location in Manhattan, this kind of revenue should easily cover the rent.
 While Q2 is traditionally a weak quarter compared to Q4, Apple released both the iPad and iPhone 4 in Q2 of 2010. That's why I'm relying on Q2 as the indicator for the average across the rest of the year.
 Not that Apple boasts with "200 stores worldwide" on that page, but at a closer look has already surpassed the 300 store mark.
Thursday, August 12, 2010
“Scholars have discovered that one way consumers combat hedonic adaptation is to buy many small pleasures instead of one big one. Instead of a new Jaguar, Professor Lyubomirsky advises, buy a massage once a week, have lots of fresh flowers delivered and make phone calls to friends in Europe. Instead of a two-week long vacation, take a few three-day weekends.
“We do adapt to the little things,” she says, “but because there’s so many, it will take longer.”
Before credit cards and cellphones enabled consumers to have almost anything they wanted at any time, the experience of shopping was richer, says Ms. Liebmann of WSL Strategic Retail. “You saved for it, you anticipated it,” she says.
In other words, waiting for something and working hard to get it made it feel more valuable and more stimulating.
In fact, scholars have found that anticipation increases happiness. Considering buying an iPad? You might want to think about it as long as possible before taking one home. Likewise about a Caribbean escape: you’ll get more pleasure if you book a flight in advance than if you book it at the last minute.”
Coding is hard. procrastination is easy. How do squeeze the most productivity out of the time you spend coding?
The techniques I use are all for minimizing distraction and for making getting back into flow easier:
- Block off as much uninterrupted time as possible
- Keep a list of TODOs in a Google Spreadsheet with mini-tasks (as small as reasonably possible) so I can glance at it when returning from a break. I always keep the cursor on the current task I'm working on.
- When doing backend work, I try to scope all tasks so I can see the effect in the UI. The ability to visualize the intended result makes long-winded work bearable.
- Test-driven development: Write unit tests first, then try to make them green. A clear goal keeps the mind on track.
There is no grand theory behind this. If you're subscribed to this blog, you're likely interested in stuff I like and write about. To write something, I have to come up with both a topic and the contents. On Quora, the questions are provided, so I need to only write up the answers. I'm not exactly sure where this will lead, or how long it will last.
Thursday, July 01, 2010
"Of course, the tensions around immigration are not new. On the one hand, we’ve always defined ourselves as a nation of immigrants -- a nation that welcomes those willing to embrace America’s precepts. Indeed, it is this constant flow of immigrants that helped to make America what it is. The scientific breakthroughs of Albert Einstein, the inventions of Nikola Tesla, the great ventures of Andrew Carnegie’s U.S. Steel and Sergey Brin’s Google, Inc. -– all this was possible because of immigrants.
So this steady stream of hardworking and talented people has made America the engine of the global economy and a beacon of hope around the world. And it’s allowed us to adapt and thrive in the face of technological and societal change. To this day, America reaps incredible economic rewards because we remain a magnet for the best and brightest from across the globe. Folks travel here in the hopes of being a part of a culture of entrepreneurship and ingenuity, and by doing so they strengthen and enrich that culture. Immigration also means we have a younger workforce -– and a faster-growing economy -- than many of our competitors. And in an increasingly interconnected world, the diversity of our country is a powerful advantage in global competition."
-- from the Remarks by the President on Comprehensive Immigration Reform
Sunday, June 27, 2010
Not Quite Enough
I spent some time investigating this and found this paper: "The Trouble with Lithium". It argues that while there is enough lithium in the earth's crust to make all cars run on lithium ion batteries, not enough of it is extractable:
- The world automotive fleet is 1 billion vehicles worldwide.
- A battery electric vehicle needs at least a 30 kWh battery to be usable (30 kWh will go for 120 miles or around 190 kilometers).
- A lithium-ion battery requires between 1.4 and 1.5kg of lithium carbonate (Li2CO3) per kWh of capacity. That's between 42 or 45 kg of lithium carbonate per car.
- To equip all cars in the world with lithium batteries, we will need (conservatively) 42 billion kg of lithium carbonate. That's 42 megatons ("MT") of Li2CO3.
- The paper estimates the global reserve base - the total amount of known lithium in the earth's crust - of lithium carbonate to be 58 MT, which would cover it.
- Of these 58 MT of Li2CO3, we currently know how to extract about 27 MT. That's not enough to turn all cars into all-electric vehicles.
Thursday, June 03, 2010
Sunday, May 30, 2010
Is there anything well designed today that inspires you?
Design is not limited to fancy new gadgets. Our family just bought a new washing machine and dryer. We didn't have a very good one so we spent a little time looking at them. It turns out that the Americans make washers and dryers all wrong. The Europeans make them much better - but they take twice as long to do clothes! It turns out that they wash them with about a quarter as much water and your clothes end up with a lot less detergent on them. Most important, they don't trash your clothes. They use a lot less soap, a lot less water, but they come out much cleaner, much softer, and they last a lot longer.
We spent some time in our family talking about what's the trade-off we want to make. We ended up talking a lot about design, but also about the values of our family. Did we care most about getting our wash done in an hour versus an hour and a half? Or did we care most about our clothes feeling really soft and lasting longer? Did we care about using a quarter of the water? We spent about two weeks talking about this every night at the dinner table. We'd get around to that old washer-dryer discussion. And the talk was about design.
We ended up opting for these Miele appliances, made in Germany. They're too expensive, but that's just because nobody buys them in this country. They are really wonderfully made and one of the few products we've bought over the last few years that we're all really happy about. These guys really thought the process through. They did such a great job designing these washers and dryers. I got more thrill out of them than I have out of any piece of high tech in years.
-- Steve Jobs in Wired in February 1996
Thursday, May 27, 2010
Although today's poster only asked, "What do I do with my money?", there's a second, related question that's also very important, "What do I do with my life?" In both cases, I think the right answer is, "start slow, and avoid making any big decisions now", though as always, there are exceptions.
Monday, May 17, 2010
Wednesday, May 12, 2010
"Companies start out as hopes and dreams and stay there for at least a little while. Even after the product has been launched and users are jumping aboard, the company is still in hopes and dreams mode.
There is a big chasm between hopes and dreams and the real thing. Companies need to grow up and go through the ugly adolescent phase. They start to doubt themselves, they start to churn employees, they may even go through a management change or two. Getting across this chasm is hard, it takes tenacity, both from the entrepreneur and team and from the investors. Everyone has to stay the course, buy into the plan, and execute it.
Crossing the chasm to the real thing is not nearly as fun as the hopes and dreams phase. It is hard work and it happens after the gushing media has left your company for the shiny new thing. Your company will take a morale hit and you will have to lead it through this phase.
But getting to the other side is worth all of it. There is nothing as satisfying in entrepreneur land than having a profitable growing sustainable business that doesn't need another dime of anyone else's capital. I have watched entrepreneurs stand up in front of their teams and tell them that they've reached that point. I get chills every time I see it."
-- Fred Wilson
Tuesday, May 11, 2010
That is, until I realized that I had misconfigured my MX records in the move. But SMTP is a surprisingly resilient protocol: Minutes after I fixed my MX records, emails started streaming in. I'm hoping I have everything now.
Monday, May 10, 2010
You get coins for farming, but if you want to buy that fancy tractor, you have to pay in Farmville cash ("FVs"), which in turn is about $0.05 per FV. This Hot Rod tractor costs 55 Farmville cash, which in turn is about US$ 10.00:
I realize I'm not the target audience to purchase FarmVille cash (or Hot Rod Tractors). I guesstimate that's only about 2% of the userbase. But in comparison, I'm happy to shell out US$5.00 for high quality iPhone games. But why?
First, I'm offended by the fact that Zynga and its competitors have trivialized making money on PNGs. It used to be that your dollars would get you a whole new game experience. You would spend $50 but get a whole new episode of Monkey Island, a masterpiece of vision and sound. Today you spend $2 and all you get is essentially a PNG file. The creative value per dollar spent is at new lows.
Second, I'm annoyed that these currencies are essentially like airline miles: Zynga is the central bank. If they decide there needs to be inflation, there is inflation. This cash doesn't really store value.
I'm hoping that as more and more gamers realize this, there will be a race to the top. Games are going to deliver more creative value. The people who play them are going to stop playing the games that take them for a ride.
The iPhone OS completely removes the concept of a “file." It promotes apps to being the primary level of user interaction, and it stores related things inside databases that are content-specific. When you pick up your iPhone and want to view photos, you open the Photos app, which connects to the photos database and shows you all of your photos. When you want to listen to music, you open the iPod app, which connects to the music database. Everything on the iPhone is task-centric, not file-centric. The “file” part of completing tasks is completely insulated from the user.
-- Dustin Curtis, The Death of Files
Update your bookmarks to http://www.gaborcselle.com/ (the old location was http://www.gaborcselle.com/blog/, but that's no longer supported by Blogger).
More posts to come soon ...
Saturday, May 01, 2010
I'm in the process of moving this blog to a new home. It'll end up either at www.gaborcselle.com or blog.gaborcselle.com. I'm not sure about the destination yet. For SEO purposes, I'll also need to set up all the right redirects in all the right places. Sounds like work.
Since gaborcselle.com is on a budget hosting service whose DNS config interface predates modern civilization, and a process that might involve faxing them stuff (if you can believe it), this page will likely be static for a few days until I complete the move.
Until then, you can check out my other blog here on Posterous.
Friday, April 30, 2010
No more. I just discovered that a lot of my favorite library code from Google's internal source tree has recently been open sourced as Google Core Libraries for Java 1.5 aka Guava.
Bidirectional maps (bimaps), hash multisets, multimaps, String operations, compact preconditions, a beautiful Splitter class, utility functions for value types - it's all in there!
Somehow, I missed the announcement because I was spending time in C#, Python, and Objective-C land. I'm happy this internal Google magic is now available to all. If you write Java code, you should probably just add Guava to your project. I promise you will find it very useful, very quickly.
Thursday, April 22, 2010
I think it's hard for most users will shell out 5 to 10 dollars based on a plaintext description and some pretty pictures. This is a model that holds for very early adopters (the types that are buying the iPad right now), but long-term I think publishers should switch to a try-then-buy model. This switched worked well for reMail: Initially priced at $4.99, I switched to a free app for Gmail which upsells you to IMAP support - download numbers increased along with revenue.
Adding an in-app store to sell features and levels is surprisingly hard - Apple provides docs but no sample implementation. If you want to add a store into your app, I suggest you download the reMail open source code and check out the Store* classes. They're fairly generic and should be easy to adapt for your purposes.
Monday, April 05, 2010
One secret of this blog is that it's actually hosted on a server in East Germany and is published via Blogger's FTP feature. Unfortunately, the ability to publish blogs via FTP is getting turned off in May 2010.
What should I do?
- Migrate to blog.gaborcselle.com, host on Blogger, and set up some redirects.
- Migrate to Google App Engine and use this open source blog app I once wrote and used for reMail.
- Start a new Posterous blog and pay a virtual assistant to copy over all the old content to it.
- Start a new Tumblr blog and pay a virtual assistant to copy over all the old content to it.
The final two options have the advantage that I'd likely post more often. On the other hand, I wouldn't be using a Google product and Siobhan (Blogger PM) might get mad at me. Also, I'm wondering if I could lose all my PageRank.
Thoughts on this? Let me know what you've decided if you're in a similar situation.
Friday, April 02, 2010
Here's a random factoid for y'all: Divvyshot and reMail were both subletting the same office space at 589 Howard Street. There was even a Divvyshot/reMail ski trip to Tahoe at one point. One company went to Google, the other Facebook. In the same office: Ninite and Disqus - let's see what happens to those guys.
Thursday, April 01, 2010
In 1988, Joseph Tainter wrote a chilling book called The Collapse of Complex Societies. Tainter looked at several societies that gradually arrived at a level of remarkable sophistication then suddenly collapsed: the Romans, the Lowlands Maya, the inhabitants of Chaco canyon. Every one of those groups had rich traditions, complex social structures, advanced technology, but despite their sophistication, they collapsed, impoverishing and scattering their citizens and leaving little but future archeological sites as evidence of previous greatness. Tainter asked himself whether there was some explanation common to these sudden dissolutions.
The answer he arrived at was that they hadn’t collapsed despite their cultural sophistication, they’d collapsed because of it. Subject to violent compression, Tainter’s story goes like this: a group of people, though a combination of social organization and environmental luck, finds itself with a surplus of resources. Managing this surplus makes society more complex—agriculture rewards mathematical skill, granaries require new forms of construction, and so on.
Early on, the marginal value of this complexity is positive—each additional bit of complexity more than pays for itself in improved output—but over time, the law of diminishing returns reduces the marginal value, until it disappears completely. At this point, any additional complexity is pure cost.
Tainter’s thesis is that when society’s elite members add one layer of bureaucracy or demand one tribute too many, they end up extracting all the value from their environment it is possible to extract and then some.
The ‘and them some’ is what causes the trouble. Complex societies collapse because, when some stress comes, those societies have become too inflexible to respond. In retrospect, this can seem mystifying. Why didn’t these societies just re-tool in less complex ways? The answer Tainter gives is the simplest one: When societies fail to respond to reduced circumstances through orderly downsizing, it isn’t because they don’t want to, it’s because they can’t.
Monday, March 29, 2010
In the past few days, I've heard of a two reMail-like apps getting approved on the App Store: OneMail and fwdMail. Both are $0.99 (reMail used to be free, but you had to spend $4.98 via in-app purchases for the functionality that's in the open source release).
fwdMail ($0.99) is most like reMail: While some artwork has been changed, it looks like the code wasn't.
OneMail ($0.99 intro pricing) seems to have put in a lot more work: reMail was completely re-themed, and the navigation flow was cleaned up. There are still some minor issued with the new navbar on my iPhone 3G, but overall OneMail is nice. In particular, the developer added landscape viewing of emails, which was a much-requested feature.
If you're a developer that's doing something interesting with reMail, please reach out to me and let me know.
This is not an endorsement of OneMail or fwdMail by myself or my employer, just some information for my readers.
Tuesday, March 23, 2010
If you see someone every day, you'll see how those ideas are generated step by step. It's easier to look insightful in intervals.
-- Thanks to Immad for pointing this out
Friday, March 19, 2010
One of the best talks was by Clay Shirky, who I have a huge braincrush on.
His best point was that abundance breaks more things than scarcity. Humans have been trained for tens of thousands of years to deal with scarcity: We put on a price on scarce items, we manage their distribution, and if they're necessary for life or safety, we've established political systems to make sure they're provided.
But now we're overwhelmed. Yes, atoms are getting cheaper and we all own much more stuff than we used to. But the real flood comes in bits and bytes. Our brains were just not made to handle all of it. I wonder if humans will evolve first, or technologies to manage the overload.
Thursday, March 18, 2010
Friday, March 05, 2010
Last month, we announced reMail's acquisition by Google. Since we'll be focusing on other projects at Google, we also decided to remove reMail from the App Store. Existing users were able to keep using it because reMail is a client-only application. Our announcement caused a lot of interest in reMail's product, and we looked at a number of options to make it available in some form. We decided that the best option was to open source the code, which is now available on Google Code as remail-iphone under the Apache 2.0 License.
As someone who is passionate about mobile email, my hope is that developers interested in making email-related apps can use reMail code as a starting point. Part of the reason email apps are hard is because you have to pay the tax of figuring out how to download email via IMAP, parse MIME messages, handle attachments, and store data. reMail has already solved these problems. If you have a great mobile email idea, I hope you will find reMail's source code helpful in your quest.
I put some effort into documenting the source code so you can get started on your ideas quickly. If you like reMail and want to improve it, I have also listed some potential projects with implementation tips. Most of these projects are features that users have requested in the past. I encourage you to contribute improvements back to the project. I've also created the group remail-iphone on Google Groups, which is a great place to ask questions. Best of luck with your projects!
As someone who is passionate about mobile email, my hope is that developers interested in making email-related apps can use reMail code as a starting point. Good luck with your projects!
Google Code: remail-iphone
Sunday, February 28, 2010
"The more value you create in your job, the fewer clock minutes you actually spend creating that value. In other words, more of the time, you're not being brilliant. Most of the time, you do the stuff that ordinary people could do.
A brilliant author or businesswoman or senator or software engineer is brilliant only in tiny bursts. The rest of the time, they're doing work that most any trained person could do.
It might take a lot of tinkering or low-level work or domain knowledge for that brilliance to be evoked, but from the outside, it appears that art is created in a moment, not in tiny increments."
So true. The time you spend building the element of a product that's truly game changing is often just a small fraction of the total. Most time is spent on mundane tasks, vanilla code, and things everyone else has already done.
Tuesday, February 23, 2010
"Why isn't there an app that tells me question types for various positions and then lets me benchmark answers in relative and absolute terms?
It could propose simple to hard verbal math problems for engineers and biz people to test problem solving. It could let me time responses."
(via Marc Pincus)
Interviewing people is hard. Making sure you're consistent with previous decisions is even harder. If marketed well to tech companies, this app could be quite a money maker. If someone's already made this app, let me know. I'd love to try it out.
Sunday, February 21, 2010
"Angel investing is easy. There are plenty of smaller exits, and anyone who's smart can achieve a decent outcome. You just need to find the people who won't give up."Of course, picking those people is the hard part. A portfolio of companies that don't give up will probably outperform the stockmarket over any time period.
Thursday, February 18, 2010
If you're not a Googler, don't worry: I'll keep updating this blog regularly. I have a bunch of stuff I've been meaning to write about but haven't gotten around to.
Wednesday, February 17, 2010
Gmail is where my obsession with email started as an engineering intern back in 2004, and I'm thrilled to be coming back to a place with so many familiar faces. reMail's goal was reimagine mobile email, and I'm proud we have built a product that so many users find useful. Still, I feel like we've only seen the beginning of what's possible. Google is the best place in the world to improve the status quo on how people communicate and share information. If you have what it takes to make these changes happen, I encourage you to reach out and come join me.
You might be wondering what will happen with reMail's product. Google and reMail have decided to discontinue reMail's iPhone application, and we have removed it from the App Store. reMail is an application on your phone. If you already have reMail, it will continue to work. We'll even provide support for you until the end of March, and we've enabled all paid reMail features for you: You can activate these by clicking "Restore Purchases" inside the app. reMail downloads email directly from your email provider to your phone, and your personal information, passwords, and email are never sent to or stored on our servers.
I want to take this opportunity to thank the people that helped make reMail a success. Fabian Siegel, Einar Vollset, Sridhar Srinivasan, Paul Bohm, Marissa Coughlin, Erol Koc, Matt Ronge, and Stefano Barbato have all contributed to building a great product. Our investors saw the potential in improving mobile email and took a bet on reMail in the darkest days of the recession. I couldn't be more grateful to YCombinator: Paul Graham, Jessica Livingston, Kate Courteau, and Trevor Blackwell all have provided invaluable guidance. Paul Buchheit and Sanjeev Singh endured my slide deck on our multi-step plan for global email domination, and pointed out that instead I should build something small, simple, and useful. It worked.
Sunday, February 07, 2010
When you start to build something new, think about the what could be, the what may be, and the what will be. Don't settle, don't give up, don't get stuck in a box built by other people's misguided interaction paradigms. The internet is open and free, and that means there are no rules.
-- Dustin Curtis, The Manifesto
Friday, February 05, 2010
We would meet sometime around the SXSW Interactive festival in Austin, Texas (March 12-16). Exact time is still unclear, but Joshua has kindly offered up his company's offices, which are just a few blocks from the event.
One frequent point made about my proposal is that IMAP already has a number of extensions that do things I suggested, such as the THREADS, SEARCH, and IDLE commands for conversations, search, and long polling ("push").
Commenter Bron (who works on a popular IMAP server) writes:
Also, IMAP plus a random mix of extentions becomes a HUGE compatibility matrix, and you have to offer fallback from all the nice stuff to really shitty workarounds just in case the server doesn't support a feature that makes your life bearable.
So - I'd love to see a decent competitor to IMAP as a protocol. If nothing else because it would reduce the compatibility matrix. Alternatively, I'd be happy for an IMAP5 to be defined which included all the good extentions - so anything which advertised support for IMAP5 had to support them.
Defining an IMAP5 standard might be a good alternative than something like reMAP, and adoption might be much faster. However, a potential IMAP5 would still remain a protocol inaccessible to many developers so it might not unleash the storm of creativity I'm hoping for.
Keep those comments coming.
Tuesday, February 02, 2010
Design OutlineOne of these days, I'll write up a spec for the mail access protocol of my dreams. I'm planning to call it the "reimagined Mail Access Protocol" (short: reMAP) which is handy because reMail already owns the domain name.
I would aim for a RESTful design with the following properties:
- All communication over HTTP / HTTPS: Pure TCP connections are great, but for transferring large amounts of email, HTTP is the way to go. Problems like security, parallel downloads, persistent connections, caching, compression, download continuation via ranges, and so on have already been solved. There is no reason to solve them again.
- Stateless: There's no reason to introduce state like IMAP does with its selected mailboxes. All you need is a HTTP session cookie used for authentication purposes. Session cookies also allow for things like OAuth. OAuth would let third parties get your permission to access your email without having to give them your username and password.
- JSON and UTF-8: All data that's ever sent to or received from the server would be in JSON format. JSON is much more human-readable than XML. UTF-8 would be the only encoding allowed, since it is able to represent any character in the Unicode standard.
- Conversations as first-order objects: Gmail, the iPhone SMS app, and Facebook's messaging system have shown the value of viewing messages not individually but in the context of conversations. In reMAP, the server would be responsible for grouping together messages. While you could still access individual emails, the first-order unit of data would be a conversation.
- Labels, not folders: Labels are much for flexible than folders. Each conversation should have multiple labels, and the labels would be included when you request the message, rather than having to scan all folders for the message via IMAP.
- Stable and unique IDs: IMAP has a UID for each message, but it changes the moment you move the message into a different folder. An IMAP server can also declare all UIDs to be invalid at any moment throughout the session. No more! reMAP would have stable and unique IDs for all conversations, emails, and attachments.
- The beginning of the end for MIME: Yes, you could still get the MIME representation of each message that is sent. But MIME is a messy and complex beast. Instead of requesting the MIME-encoded message parts, you could just ask the server to give you the message as represented in plain text or HTML. Attachments can be downloaded in separate HTTP calls.
- Push built in: The two prevailing methods for implementing push email are the IMAP IDLE command (not widely available in IMAP servers) and Microsoft's ActiveSync, which requires developers to purchase a license from Microsoft. In reMap, clients could just call an HTTP endpoint on the server which returns as soon as new messages are arrive.
- Full-text index on the server: reMAP servers would need to maintain a full-text index of the contents of all messages. There's no reason clients should be required to download and index everything in order to do an exhaustive full-text search of your email.
Enormous PotentialI believe that one of the reasons for the lack of innovation in the email space is the lack of a simple yet powerful email access protocol. Every developer that wants to try something with email needs to first jump through the hoops of IMAP and MIME, or worse, the Outlook Object Model and MAPI. A new protocol like reMAP would lift this burden off their shoulders. We've seen what open, simple standards can do for innovation with Twitter's and Flickr's API. Now imagine unleashing the same sort of creativity to the vast ocean of data that is email. Let me know what you think. My goal with this post was to encourage a discussion about this topic, and your comments are much appreciated. If you liked this, consider following me on Twitter where I often tweet about email-related topics!
"Gmail proved that, despite the apparently high switching costs, a new webmail client can quickly get a lot of traction. There’s room now to do to Gmail what Gmail did to everything else. The replacement should have some concept of workflow (”archive, but remind me to respond tomorrow”, “send, and alert me if I don’t get a response within a few days”), some concept of teams and colleagues (allow threads to be shared as a first-class object, rather than flailing around with forwards and CC lines), be some way smart about mining the semi-structured mails going through the system (flight booking emails should be automatically annotated with .ics files), know something about prioritization (I like Twitter DMs because of the assumption that they’ll go to a mobile device. If I’ve sent more than 20 emails to someone, they should have the option of copying their mail to me as an SMS).
Potentially most powerfully of all, developers should be able create their own plug-ins that run on the server. There should be an agreement between plug-in developers and the webmail provider that creating a plug-in automatically grants a royalty-free perpetual irrevocable worldwide (etc.) license to the provider, and that the source code to any plug-in may be merged into the main product. Though plug-ins have niche appeal, this could be a good source of new features, and a strong competitive advantage. I’d just fix Gmail if I could.
I’d happily pay for any service that got this stuff right."
Some good ideas in here. Server plug-ins could work in a manner similar to Google App Engine. A lot has been tried around better triage and data mining, with no clear winners yet. Also, there's a danger of feature overload somewhere in here. I'm not sure if we should replace one variant of feature overload (Microsoft Outlook) with another (integrated SMS / Twitter / Facebook / email). Maybe SMS, Twitter, Facebook, and email should instead all just be replaced with one thing that is the combination of all lessons learned with those protocols.
Two possible improvements:
Two possible improvements:
Rich MediaAll ads you see today on your phone are static text or images. Brand advertising works by playing to emotions, and to do that, you need animations and sound. I know you dislike those Flash ads on websites, but they're how the content gets paid for.
Those ads are static for a reason: iPhone doesn't support Flash, and the ads need to be small in size due to limited bandwidth. I'm sure one of the players in this space is already working on building technology to show great-looking, animated, interactive ads - whether with proprietary technology or some sort of browser plugin. Rich ads, rich CPMs. Even the bandwidth problem can be solved: There are plenty of ways to preload ads and cache them for later display.
Better TargetingIf you've tried putting up an AdMob ad, you know that the targeting options are pretty limited: You can narrow down by country, device (iPod Touch / iPhone), and connectivity (Wifi/3G).
There's one type of ads that could unleash dramatic growth in mobile advertising: Imagine you're on the way to lunch at Pete's Burgers, and your iPhone shows you a coupon for Joe's Burger Shack. You go to Joe's and show them the coupon you just clicked on. The ad just generated a verifiable lead, and the advertising network just made a bunch of money.
For this type of application to work, targeting needs to get better: We need street-block level targeting, time of day ("only run this ad at lunchtime"), and likely user activity ("user likely walking to lunch").
I imagine that local ads like that could be bigger than the $20 billion / year search advertising business (e.g. Google AdWords), which makes money by generating leads for people to buy stuff online. The number of real-world transactions and the amounts I spend on them are much higher than what I spend online. Done right, mobile advertising could be much bigger than that.
Monday, February 01, 2010
Just post it or nurse it to quality? That is here the question.
[*] And by Hank Moody, I'm referring to writer's block, not bad parenting or tooling around in a Porsche.
Friday, January 29, 2010
"Every product will have positive and negative criticism. It's fallacious to then leverage one [piece] of commentary to suggest a completely unrelated product 10 years later will be successful because people were saying negative things and that was wrong before."
Nicely put by Anthony Licari on Garry Tan's blog.
Wednesday, January 27, 2010
For games, this is true. People will buy and enjoy games on the big screen. But what about other apps?
Excluding reMail, the apps I use most on my iPhone are the New York Times app, Foursquare, Facebook, Tweetie, Yelp, Kayak, Skype, Snow Report, and AT&T myWireless. Almost all of these are there to display content and do social networking.
But why do I use the New York Times app instead of the website?
- The NYT app lets me get to the news faster: On my iPhone 3G on Wifi, Safari loads nytimes.com in 55 seconds. The NYT starts up and shows me the latest news in 18 seconds.
- The NYT app is optimized for the small screen - the web version isn't.
The iPad loads nytimes.com instantly. Daring Fireball says the iPad is "fast, fast, fast". That makes it much more attractive to skip writing an app and just use HTML 5:
- Web apps are an order of magnitude easier to develop than iPad apps.
- Apps are substantially slower to update given the iPhone approval process and waiting for users to get the update. [*]
- It's easy to make a version of the page optimized for iPad's screen and the size of your finger.
- HTML 5 will let you offer offline functionality.
Sounds familiar? Yes, Google's Vic Gundotra has been saying that web apps are the way:
"We believe the web has won and over the next several years, the browser, for economic reasons almost, will become the platform that matters and certainly that’s where Google is investing."
For the iPhone, this hasn't come true yet. But the iPhone's browser are too slow. On the iPad this might change - instead of native apps, we might see a thousand web apps bloom.
[*] Thanks to commenter Tom Pickney for pointing this out.
More on iPad: What the iPad means for Developers
"The last time there was this much excitement about a tablet, it had some commandments written on it." - Wall Street Journal.
In the days before the iPad release, a bunch of app developers will be rushing to make their apps iPad-compatible. In the iPad promo video, Scott Forstall predicts a whole new gold rush.
What do most non-game apps have in common? A main list view and a detail view. Whether it's the New York Times app, Facebook, Snow Report, they all follow the main view - detail view pattern.
This is the natural organization scheme for iPhone apps: UINavigationController and UITableViewController make this easy, and there is no shortage of documentation on how to build apps like this.
We've all seen the screenshots of the new iPad email app. List on side, main view on the other. Portrait mode switches the navigation view on the left to a button on the top left that pops over the content.
All those main view - detail view apps? They'll be redone in this style. It looks like we'll all be spending quality time with the new UISplitViewController, which manages the presentation of the side-by-side panes:
The NYT and Facebook apps should be available in this style on iPad launch day. But they might be separate from their respective iPhone apps: Apple has also announced support for "Universal Applications" that run on both iPhone and iPad, but this is not yet in the 3.2 SDK - I guess until then, there be a separate part of the App Store with "Made for iPad" applications.
Tuesday, January 26, 2010
"Population [of development team]: 32. [...] Whole team maintains 5.5 million lines of code. [...] 20,000 computer systems, 1.3 petabytes, more than 4600 people. Operating an online game requires more than just game development!"
Discovered on Sanjeev's FriendFeed.
Thursday, January 21, 2010
"After a few pitches, entrepreneurs realize that the distant future is safer territory than the immediate."
There's a great discussion about the perceived benefits of sticking with the founders or firing them from the board's / VCs perspective:
"Looking at the abrupt change in skills needed in the transition [from early stage to large company], it’s tempting for a board to say: Maybe it’s time to get more experienced executives. If the founders and early executives leave, that’s OK; we don’t need them anymore. The learning and discovery phase is over. Founders are too individualistic and cantankerous, and the company would be much easier to run and calmer without them. All of this is often true." [...]
"Time after time, startups that have grown into adolescence stumble and succumb to voracious competitors large and small because they have lost the corporate DNA for innovation and learning and discovery. The reason? The new management team brought in to build the company into a profitable business could not see the value of founders who kept talking about the next new thing and could not adapt to a process-driven organization. So they tossed them out and paid the price later."
Wednesday, January 20, 2010
I mentioned this to my brother in Germany. He walked into a VW dealership and found out that given your VIN, any dealer in Germany can track down the exact specs of your US-equipped VW. I found the global trackability of my car pretty surprising. As a Christmas present, I got this:
See how the curved glass lets you see my hand with the camera? Having aspheric rear view mirrors decreases the size of your blind spot, as illustrated here:
Someone mentioned to me aspheric rear view mirrors are illegal in the US, but I haven't been able to confirm this. It wouldn't make sense: The US must be the country with the highest number of lane changes per capita per year. I haven't been able to find a vendor of these mirrors in the US, but next time you fly to Europe remember to bring your car's VIN.
Tuesday, January 19, 2010
You'd think that the Top 25 free Games would be high quality, high production value, immersive, made with love. Things like the airplane fighting game Skies of Glory:
Or how about Skater Nation, where you get to skateboard, grind, and jump like the pros?
You'd think these games would be the winners. But you'd be wrong. It turns out the games in the Top 25 is mostly simple, OK quality stuff. FallDown (at number 9), makes you move the ball down the screen faster than it scrolls the background. A great iPhone developer could write this game in a few days:
Another incredibly simple game in the Top 25 (at number 20) is Traffic Rush. All you need to do is keep cars from crashing on an intersection. Once again, super easy to write - a good programmer and a decent graphic designer could crank this out in half a week.
So why is it that these simple games win, and the high-dollar productions lose, at least in terms of number of downloads? I believe it's the iPhone audience and how these devices are used:
- iPhone users are casual gamers: this is no PSP Portable. They just want to waste some time on a subway ride, and don't care for learning the ins and outs of an airplane fighter game.
- Anything that takes more than 30 seconds to learn falls by the wayside.
- Each level should take no longer than a subway ride. Gameplay that develops over blocks of 10 minutes and longer is a non-starter.
- Startup time is a huge issue: It easily takes 20 seconds just to load Skies of Glory. Unacceptable to most users, since they know that their gameplay could be interrupted at any time by a call or text message.
The take-away? Simplicity wins. Dumb it down, make it load fast, gratify immediately, keep the gameplay fast-paced, keep each level short. And they will come, download, and play.
Tuesday, January 12, 2010
I'm sure in the next days we'll see a lot of speculation. Google has already been accused of doing this for business reasons, not noble intentions. Yet, any way you slice it, this is as hard a stance on free speech as a company could possibly take. I'm happy to see that Google decided to put its foot down. Very proud of my former employer right now.
Monday, January 04, 2010
I feel like the last year was a lot of work, and very little fun, but my travel map proves otherwise: I went on trips to Tahoe, LA, Las Vegas, Utah, Alaska, Istanbul, and Rome, not to mention seeing my parents in Switzerland. Not quite like 2008's trip around the world, but certainly not the celibate life I remember living.
At reMail, we built reMail 1.0, which was a failure, but a taught me many lessons, including: (1) Users won't give a startup their email credentials, and (2) we should've launched even earlier. While waiting for the App Store approval, I built reBoxed, a project that was fun to build but wasn't ultimately useful enough. I then built reMail 2.0 with some contractors, and it was a success. I spent the rest of 2009 refining it, releasing a new version of the software every 2-3 weeks.
When Paul Graham asked me about surprises I encountered building a YC startup, I said that the biggest lesson learned was "Fast iteration is the key to success." I think that sentence was my theme for 2009.
Sunday, January 03, 2010
I visited the Walt Disney Family Museum in the Presidio yesterday. The museum recounts Walt Disney's life and how he built the Disney empire.
One thing that really stood out is just how many failures he had to endure. Before the Disney Company, Walt had started another business, Laugh-O-Gram. It went bankrupt. In the late 1920s, Disney's hit character was Oswald the Rabbit. But the rights to the character were owned by Universal, not Disney, and they lost the rights to their money maker. After losing Oswald, Disney had to come up with something new and ended up creating a character called Mickey Mouse. Similarly, Disneyland's opening day was a huge disaster. Disney's story is a story of how persistence pays off.