Classic Gil Scott Heron song: The Revolution Will not be Televised.
I’ve written and talked about hybrid apps before. For instance, in the spring of 2007 I wrote about the end of desktop vs. web apps.
When I last wrote about this subject there was no iPhone and no iPhone SDK and no 40,000 apps.
And now it seems that hybrid apps are so common, and so expected, that there doesn’t need to be a name for it anymore. They’re just apps.
That’s the world I’ve wanted to get to since I started doing this stuff in mid ’90s. And we’re there.
I’ve seen people write silly things like “web data always belongs in a web browser.” Or, “why would I ever run code on my computer?” It’s easy to knock stuff like this down, but responding to it with words never changes any minds.
Responding with applications — thousands of them! — does change minds.
I’d bet those people are now running Twitter clients on their iPhones.
I like the liberty and looseness of not being stuck with two hard categories of apps. We’re all free to get to the same place, the place where we delight users with cool stuff, by combining different technologies in different ways.
This way the web isn’t just this thing on the side that only appears in browsers. It’s everywhere. It’s the oxygen of modern computing.
Here’s the scoop: both versions are in extremely active development. I’m currently working on NetNewsWire 3.2 and 4.0 for Mac and NetNewsWire 2.0 for iPhone.
I recently set up Twitter accounts for them: NetNewsWire/Mac and NetNewsWire/iPhone. I haven’t posted much yet, but I will. (You can also follow my personal account, but I often post things that have nothing to do with NetNewsWire. And I can’t do support via Twitter via any of the accounts.)
I don’t have time estimates — any guesses would be completely wrong. But nobody’s more impatient than I am.
You may have seen the FeedDemon beta with Google Reader syncing.
The plan is to add Google Reader syncing to NetNewsWire 3.2/Mac and NetNewsWire 2.0/iPhone also. I can’t promise for sure for-sure, but I’m 95% sure.
More about NetNewsWire 3.2/Mac
This version, as the number suggests, isn’t a huge upgrade — the main thing is Google Reader syncing. (Plus a couple small features and some bug fixes.) It will be a transitional release — it drops a bunch of stuff, gets leaner, and moves some of the data storage over to the format 4.0 will use.
Here’s what it drops: Tiger support is gone — it will require 10.5 or greater. The DotMac/FTP syncing and Bloglines syncing are gone. Some little features like the Send Email to Author command are gone.
My favorite part is under-the-hood — dropping code I don’t need for Tiger support, mostly. Switching to ObjC 2.0 properties, especially.
More about NetNewsWire 4.0/Mac
Work on 4.0 is in parallel with other work — but it’s farther behind. It will also be a bigger upgrade.
I’d talk about what’s going to be in it, but it’s too soon.
Well, I can talk some technical stuff: I plan to move storage completely over to Core Data and I’d like to turn on garbage collection.
More about NetNewsWire 2.0/iPhone
It’s a race — I don’t know which will ship first, NetNewsWire 2.0/iPhone or NetNewsWire 3.2/Mac.
I’ve spent the last six months or so mostly in iPhone-land, working on the foundation for NetNewsWire 2.0. Along the way we discovered it was generalizable and that there’s a business doing private-label apps based on the same foundation that will power NetNewsWire 2.0. The highest-profile example is All Things Digital — if you use it, you are in a way using an early version of NetNewsWire 2.0.
It turns out that learning how to do good news readers on iPhone is harder than I expected. Almost the entire ballgame is about performance.
Think of all that a Twitter client has to do — then imagine running 100 Twitter clients at once. I think I’ve spent about 3 man-months just in Shark and Instruments, figuring out how to scale and perform well on the iPhone, which is for real a new platform, even though we still get to write in Cocoa.
Anyway, the plan is to add Google Reader syncing for NetNewsWire 2.0 — and a few other things, which I don’t have time to write about now.
But it’s all new — taken apart, scrapped, put back together, taken apart again, written anew, etc.
So, if you see me at WWDC, tell me how your stuff is going. I’m interested. And now you already know how it’s going with NetNewsWire. :)
The single most important thing to remember at WWDC: drink plenty of water! You’re not at your usual places, and you’ll forget.
When you check in, set up your iPhone charger first thing. If you go out Sunday night (and you should) you don’t want to remember to set it up when you return to your room. It has to be ready. Otherwise you’re screwed Monday.
You also should get some supplies for your room:
Water! More than you think you need.
Pretzels or some kind of snack you like.
The biggest danger after dehydration is simply not getting enough food in your stomach. You’ll be busy and you won’t take time to eat.
Either right before or right after, go register and get your badge — don’t wait for Monday morning.
Write down and put in your wallet your hotel room number. You might forget.
It’s well-known that the food at Moscone is awful. Don’t even bother.
I find that I need protein more than anything, so I often eat lunch at the Buckhorn grill in the Metreon. It’s right across the street. I also like the Mexican place there.
After protein the priority is carbs: fries, mashed potatoes, pasta, whatever. Vegetables come last — you can go without for a meal or two, but don’t go too long.
For dinner there are lots of good places. I always like to eat at Annabelle’s at least once. Usually hit Mel’s too for a hamburger. I like the food at Rickenbacker’s. Many people like the Thirsty Bear, but I always feel hungry an hour later. Do not under any circumstances go to Bucca di Beppo, even though it’s right across the street.
For late-night there’s just the Denny’s. It’s not really food, but you’ll find that it’s similar enough.
Don’t be afraid to jump out of a session and switch to another one if the one you’re in is not what you thought it would be. You paid; you’re there to learn; it’s your responsibility.
Don’t get paralyzed when choosing. Remember that there will be videos and documentation.
These days you have to line up early to get in sometimes. If you think a given session will be packed, you’re probably right. If you don’t think it will be packed, you’re probably wrong.
The staff there will treat you like you’re a weird type of cow. Don’t take it personally.
There’s never coffee when you really, really need it. Luckily there’s a Starbucks a block away — it’s Starbucks, sure, but don’t turn up your nose: it’s caffeinated, and staying awake is the issue. (Especially during any OpenGL stuff.) (Okay, maybe that’s just me.)
If you’re new to WWDC, you should take some time to walk around the interior, find out where everything is.
See Brandon “Quazie” Kwaselow’s party list.
You can’t get to every party, and there are always impromptu and smaller things. Play by ear.
Twitter is great for coordination and for finding out what’s going on.
Some standard hang-outs: Rickenbacker’s, Chieftain, Tempest, House of Shields.
Don’t wait for introductions — nobody can remember who knows who, so you won’t always get introduced. Say hello. Everybody is nice. Shy geeks sometimes, but still nice.
If you’re new to WWDC, and this is your first time meeting your heroes like Cabel and Wil and Gus, a few things to remember: don’t monopolize, don’t report bugs in person, and don’t push a demo on anybody. And everybody likes flattery. (Except for Gus.)
Finally: watch out for Kevin Ballard, who’s completely mad.
The best thing about WWDC
Imagine it’s 100 years ago and you’re a serious, hard-working craftsman — you’re the toy-maker to the king. Imagine that 5,000 of the best toy-makers come from around the world to gather in one place.
Just because it’s 2009 and we get to do this every year doesn’t make it less cool or any less to be savored.
Did I mention water?
Drink plenty of water!
And get at least some sleep.