Sat Jul 11 2009Weblog softwareI tried Wordpress for a little while on this weblog since I wanted to have comments. And last night I switched off Wordpress, back to my homegrown static-rendering system. For comments I’m trying out Disqus. The cool thing is that it works via Javascript includes, so I can still have a static-rendered site. Why I switched back
But I had some problems with it: performance problems and caching problems. For instance, I had to manually delete the supercache folder every time I posted. Even assuming I could have fixed the problems, it still didn’t suit my temperament, which is, I admit, twisted by an advanced hatred of the overly-complicated. Theory about details
With software you’re always one typo away from an app that doesn’t build — or, worse, crashes. I have the tolerance, patience, and gumption to deal with all that complexity because it’s the thing I do. But blogging — like Twittering, emailing, IMing, keeping track of to-do lists, and so on — is a secondary thing. And I want those secondary things to be as simple and frictionless as possible. I insist on it. The self-hosted versions of Wordpress — and Movable Type too, to be fair — appears to be for people for whom publishing on the web is their main thing. That’s fine: there’s absolutely nothing wrong with that. It’s just that my main thing is something else. So I’ve gone back to my simple 50K weblog rendering script over the heavy megabytes of a Wordpress or Movable Type installation. My theory is that everybody has, or should have, one main thing where they can submerge themselves: everything else needs to be simpler. The ancient history of weblog software
But people wanted titles. And comments. Trackbacks. Themes. Search. Categories. Keywords. Tags. Pings. Text filters. Custom fields. And when they got those things, the people did rejoice. Until a simpler weblog system came along. Then the people said, “Oh, Old Thing is so bloated now. I’m going to switch to the New Thing.” And the people did ask that the New Thing add titles, comments, trackbacks, themes, search, categories, keywords, tags, pings, text filters, and custom fields. And then they also asked for tag clouds, widgets, a plugin architecture, and distributed comment-spam filtering. Which the New Thing did add, and the people did rejoice. Until the New New Thing appeared, which was simple and clean and delightful, and they liked it better than the New Thing. But the people did ask if it would add just a few features... And so on. Until Twitter. Twitter is proof that people like writing for the webIt’s an easy analogy to make: IM is to email as Twitter is to blogging. Look how much people hate email — and how much they like IM. But, sadly, if you list these by increasing complexity it goes like this: Twitter That’s just plain tragic, when blogging is harder than email.
This, for me, is what the web is all about: seeing the world through your eyes. Room for a new system?I like what’s going on over at Tumblr. I’m considering switching, but it’s a big job because I have almost ten years of content here, including images and some downloads, that wouldn’t be easy to move over. What I’d really like is a self-hosted system that comes as close as possible to the Twitter (and early Blogger) ideal: a little text box and a submit button. Make it super-easy; make it fun. Remember that it’s not my main thing. (And, okay, maybe add a few more features...) Fri Jul 10 2009News Diet
I probably shouldn’t agree — but I do. I probably shouldn’t tell you to unsubscribe from some of your feeds. But you should. Look: you’re going to get the news. A bunch comes in through your news reader. But you also get news from people via email, IM, irc, Twitter, Facebook, and whatever else. If it’s cool or interesting, you won’t miss it. Even with fewer feeds. (I’m down to 74 myself.) Wed Jul 08 2009carpeaqua on iPhone tab barsJustin Williams: Die You Damn, Dirty Tab Bar: “Despite my frustrations with the control, I am seeing it pop up in more and more applications.” I totally see Justin’s points, and agree most ways, most of the time. (Note that NetNewsWire doesn’t have a tab bar, and NetNewsWire 2.0 probably won’t either.) But I’ve also found that people who aren’t professional iPhone developers like tab bars. My experience is just mine, of course, and it’s mostly to do with news/photo/video apps. My theory is that, for some people, a tab bar makes an app feel richer, more generous, more professional, more serious. But that’s just theory, and it may only be applicable to a certain type of app, and I haven’t done a scientific poll or anything. If I had to give advice, I’d suggest thinking pretty hard about whether or not a tab bar is a good idea. Do some sketches or mockups both ways. Think about room for controls and content. Think about the first-run experience and think about how well the app will wear over time. Sat Jul 04 2009brentsdevdiary on Twitter
But be warned — it’s entirely possible that it’s extremely boring. It’s also possible I won’t keep up with it. But so far so good. To make this work I actually run a Twitter client on my development machine, so it’s super-easy to post a couple sentences now and then (I don’t even have to turn my chair to my laptop). I like doing it. It feels pretty natural, as if I’ve been doing it a long time. (Years ago I was an early user of Instant Outliner, which was like a Twitter dev diary. Credit goes to Dave Winer for this and so much else.) Note that, if I keep up with this, there will be times when, for any one of various reasons, I won’t be able to disclose what I’m working on, or I’ll have to talk in very general terms. You understand, I hope. Possible benefitsI’ve always loved working in public as much as possible. I don’t mean working in cafés — I mean the internet public. I’m enough of an exhibitionist (I confess!) to like the idea of programming as performance. But lately I’ve been super-busy and have had little time for blogging. I love being engaged with the people who use my software, and this is a great way to do that. Twitter is two-way, after all. (I also have private mailing lists for beta testers, which are hugely important to my development process.) There are a few other things that interest me about this... How silence is perceivedWhen I’m very quiet — little to no blogging, nothing work-related on my main Twitter account — people start to think that my software is going away. “He’s been so quiet, he must not be working on it anymore.” There’s no logic to it, but it’s a very human reaction and I understand it. But of course the opposite is usually the truth. Quiet just means busy. So I think this is a way to not be quiet, since updates are so easy, since I can do them as I work without interrupting my flow or taking much time. How software is madeI’ve long been interested in trying to give a sense to non-programmers how software is made. We all use and rely on a ton of software, but, if you’re not a developer, it probably seems more like magic than it should. Our reliance on softare will only grow, and a basic understanding of what goes into making software should be part of every adult’s mental toolchain. It’s good citizenship in the digital age. How an experienced developer worksI’ve written before in Advice for indies that you “have to sit in the chair and stay seated. And sleep and come back to the chair. You need to wear out that chair and then buy a new one and then wear out that one.” I can say that, but there’s nothing like actually showing that. About the avatarIt’s a picture of my cat Papa in my office chair, lit by the office skylight. Sometimes you have to give up the chair to the cat. Especially since he’s so cute and he loves the sun. Other dev diariesI’d love to see more dev diaries. If you do one, do an @brentsdevdiary with the account name so I can see it. Thanks! Mon Jun 15 2009The Revolution will not make you look five pounds thinnerClassic Gil Scott Heron song: The Revolution Will not be Televised. Mon Jun 08 2009The age of hybrid appsI’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. Maximum looseness
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. Sat Jun 06 2009Where I am with NetNewsWire
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. What’s comingYou 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/MacThis 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/MacWork 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/iPhoneIt’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. WWDCSo, 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. :) Brent’s WWDC Tips
Hotel tipsWhen 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:
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.
Food tipsIt’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. Session tipsDon’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.
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. Moscone tipsThe 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. After-hours tipsSee 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.
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
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. Water!Did I mention water? Drink plenty of water! And get at least some sleep. Wed Jun 03 2009CrackhouseisqatsiTime-lapse video of a house getting demolished in my neighborhood. (Down near Market St.) Mon May 18 2009All Things Digital for iPhone
It’s their app, of course, but I don’t mind saying that we helped build it. And that I’m proud of it. As Kara alluded to her in her post, part of the fun was watching it roll out to different App Stores last night. We found it first in Latvia. It reminds me of the old joke from college days — every indie band claimed to be big in Europe. Always. (And there was no web, so we couldn’t actually check.) So I wanted “We’re Big in Europe” T-shirts printed up. But it appeared in the US App Store before long, and the joke would have been lost on everybody who wasn't me, anyway. :) Here’s the iTunes App Store link. (The app is free.) © 1995-2009 Brent Simmons
|

















