Starting in 1996, Alexa Internet has been donating their crawl data to the Internet Archive. Flowing in every day, these data are added to the Wayback Machine after an embargo period.
Google Finance says the wonderful version of their graphs are only available if you have Flash installed.
How do I know? Well I'm an iPad user.
I was interested to see that San Francisco is shutting down the Transbay Terminal today, getting ready to demolish it and replace it with a wonderful new commuter center, right on Interstate 80. I would have loved to have seen the interactive rendering of the new terminal but I couldn't. I was using my iPad and they did it with Flash.
Maybe they didn't get the memo.
Or maybe they don't care.
I think pretty soon Apple has to scare off all the Flash content or the users are going to be asking why there all these holes in their iPad browsing experience.
I have my own industry-insider reasons for despising what Apple is doing with Flash, even though I'm not a big fan of Flash. I despise it because they're using the users as pawns in a business chess match. Using us because they could have written a Flash emulator. That would have been the user-loving thing to do. I don't like to be seen as a tool to win a victory that I don't understand and I don't care to understand. That's me wearing my user hat. I'd just like to see the spiffy graphs and learn about the plans for the new Transbay Terminal.
8/6/2010; 3:14:05 PM. .
Scripting News needs a curator or curators
Here's the problem.
I always get requests from people who remember a piece I wrote about this or that, but can't find the piece in Google.
I know how they feel, because this happens to me all the time.
For example, I wrote a piece once that explains how engineers inside big companies feel about "outside" developers. Can't find it.
Someone asked for a pointer to a piece I wrote about eliminating clutter. I think I wrote it just in the last few months. Can't find it either.
The inverse also happens. Someone posts a link to a piece on this site, but I don't have any memory of writing it. After reading it, it all comes back -- yeah -- I put a lot of time into thinking about that and writing about it.
Basically this stuff needs to be organized and categorized and cross-related.
I have great tools for that, and where they're lacking I don't mind writing more tools. That's what I love to do. But sifting through all the back issues of this site -- well I know I have to do it, but somehow I never have the time.
If you're the kind of person who loves to organize written work, and have been reading this site for a while, let me know, and let's see if we can get something going. Obviously whatever we learn here can be applied to other bases of writing.
8/6/2010; 8:36:53 AM. .
S3 is missing one feature for web hosting
Om Malik has an interesting piece today about Amazon web hosting.
I'd love to see them do it, then I could move my archived static sites up to S3 and forget about them.
But they're missing a key feature for web hosting -- index files.
Suppose I put a website on S3 and map a domain to it:
All Amazon has to do is make the first URL work, which is how web servers work by default, and boom they're in the web hosting business.
Without it, all we can use it for is to store images, MP3s, JavaScript snippets, archives.
8/6/2010; 7:56:01 AM. .
OMG Twitter is down arrrgh helllp whimper sob
We are so pathetic, addicted to Twitter, yet helpless to do anything about it when it goes down. This is what the Internet comes to.
Make a movie about it. "Great acting, unbelievable plot," writes AO Scott in the NY Times. The human race goes down in flames. When aliens discover the ruins of our civilization it turns out Twitter went down and never came back. All the iconography in our churches replaced with images of whales and cute blue birds.
We had sauerkraut and mushroom perogies (boiled), borscht, ice tea and I had a curry chicken salad. It was all delicious esp the perogies!
We also went on a ride on the Staten Island Ferry, and pretended it was the ferry between Helsingor, Denmark and Helsingborg, Sweden.
It's always great to see NJ, after a few minutes of clowning around it's like I see her every day, which unfortunately I don't.
Here's something really funny. I took a picture in the ferry terminal in Halsingbord, Sweden in 2007, and posted it as "Here's one for Naked Jen." The mind works in funny ways. Insanely funny. She even commented on one of the pictures I took.
PS: If you ever meet NakedJen the first thing you'll notice is how short she is. She has a huuuuuge personality, that's why it's so surprising that she's so tiny.
PPS: Science bloggers take note. Pepsico is one of BlogHer's sponsors. Last year she got kicked out of the conference because she gave them a hard time for the ways they're screwing up the planet. To BlogHer's credit, she's back this year as their "green" adviser.
My legs never stopped hurting the whole trip, so I think tomorrow is a day of rest. But I already feel big changes in my body. My pants are looser, I feel much stronger, I'm looking for more fruit and less fat in my diet. These things just happen automatically even just as you're starting to work out.
Also each trip gives me something new to find out about. There are concerts on Pier 1, it's in a beautiful spot. Also cruise ships dock in the 50s or 60s (not sure). They are huge. Today there were people returning from a long cruise (based on the amount of luggage they were carrying).
I'm still learning how to ride in NYC. Going the wrong way in bike lanes is not a great idea. Pedestrians don't watch for bikes and when you say Watch Out they get angry at least sometimes.
8/5/2010; 10:29:43 AM. .
Better recommendations from Twitter
This morning they turned back on recommendations and instead of just getting the usual Suggested Users List fare, now they're recommending some interesting people.
I imagine they're not just looking at who I follow but also looking at the content of my tweets. I tend to post links to stories about BitTorrent, because I'm very interested in the protocol.
8/5/2010; 10:14:47 AM. .
How to boot a federated social network, now
The thing we've always needed and didn't have is a place to get a user id and password that wasn't owned by a big company and was still as simple for the user as the ones operated by the big companies.
Ponder that for a moment, and imagine what would happen in the app space if each developer could count on say 10MB per user of storage, enough for a lot of pointers into space managed elsewhere. Sort of like what Twitter was planning with annotations, but not owned by Twitter.
And stop there. Identity with a small amount of storage. The API should be DNS. We need to make it easy for people to get their own domain for life. We could even come up with a new TLD for it, somthing like dot-id. davewiner.id. That would be me.
It is too hard to get a domain these days through GoDaddy et al, so let's make it easier. There's no reason you can't make getting a domain as easy as getting a Facebook or Twitter account.
If we want to get some help from Verisign, I know some people there. Did a deal with them a few years ago. I like them, a lot.
As far as the format for the streams -- that's simple too. It's going to be any of the variants of RSS that people want to use: 0.91, 1.0, 2.0 or Atom 1.0. People who say it has to be one and not the others are dreaming. If we need to add some info, come up with a namespace. You tell me what you want to do and I'll do it.
Now we need to get some money to operate the DNS and storage for this network. For that we're going to look to the VCs. We need to raise an endowment of $25 million which we'll entrust to a consortium of five universities. I'd like to see NYU be one of them, of course. The universities will operate this name and storage system, forever. The consortium will charge users a fee, the same way Verisign does, and thus the identity system will be funded for the indefinite future.
Why universities? Well, we need what they have: Neutrality and longevity. Also, there's a tradition of university consortia doing good work of this kind. The Internet itself was founded in this way. We also need youth and education. If this is created by the generation that's in school now, when they come out in a few years, they'll be ready to kick ass. They'll have something to be proud of.
Now we have created a commons that makes it possible for a million flowers to bloom. And it gives the BigCo's a field on which to do their battles without doing any lasting damage to the ecosystem.
I've argued with my VC friends for a long time that they need to put back to replace what they take out of the pool of innovation. Now is their chance to do that. The PR will be very good of course, but even better are the opportunities this system will create for new startups. Put it another way, ask some of your entrepreneurs how much innovation is waiting for such a system to exist. I'm sure they will tell you it's enormous.
8/5/2010; 8:12:39 AM. .
Why didn't Google Wave boot up?
I specialize in the kind of software that Google Wave is. Blogging is an example. So is RSS and podcasting -- those were the successes. I also started a BBS in the early 80s that worked.
For all that success, there have been many more failures. For example I've been trying to boot up a network based on Instant Outlining for almost a decade. Longer, if you count work I did going back to the 80s at Living Videotext. So far, it hasn't gained traction. Still hunting for the magic formula.
So there's no shame, as far as I'm concerned, in trying to launch a network of computer users, and having it not boot up.
Here's the problem -- when I signed on to Wave, I didn't see anything interesting. It was up to me, the user, to figure out how to sell it. But I didn't understand what it was, or what its capabilities were, and I was busy, always. Even so I would have put the time in if it looked interesting, but it didn't.
However, it had another problem. Even if there were incentives to put time into it, and even if I understood how it worked or even what it did, it still wouldn't have booted up because of the invite-only thing. It's the same problem every Twitter-would-be or Facebook-like thing has. My friends aren't here, so who do I communicate with? But with Wave it was even worse because even if I loved Wave and wanted everyone to use it, it was invite-only. So the best evangelist would still have to plead with Google to add all of his workgroup members to the invite list. The larger your workgroup the more begging you have to do. This is exactly the opposite of how you want it to work if you're in Google's shoes.
I assume they were worried about how the system would perform if they got too many users. It's as if, starting a baseball season, you worry about where you're going to put the World Series trophy. It's not something you need to worry about. You might even say you jinx your prospects for success if you put that in the front of your mind.
Anyway, Google Wave was tilted in the wrong direction.
1. Hard to understand.
2. Nothing happening.
3. My friends aren't there.
4. Even if they wanted to come, I'd have to get them invites. (I did have a certain number of invites to give to my friends, but not enough to let me broadcast about it on my blog.)
5. Why should I bother?
When I started using Twitter, it was:
1. Easy to understand.
2. There was stuff already happening.
3. Most of my friends weren't there, but some were. (Notably Ross Mayfield, who was pushing hard for people to join.)
4. Anyone could join, you didn't need an invite.
5. No reason for me to bother, as with Wave, I was just a user. But I couldn't help but write about what I was doing, I'm a NBB, that's what I do.
Moral of the story...
1. Before you roll out a community-based product, use it yourself to inform a modest community of users. Hopefully a small one, that loves you and the product, so they'll keep coming back even if they don't get what it does. Until you gain traction at that level, don't go any further.
2. Something is happening (see step 1), make sure every new user sees it. Every step before seeing the action is a chance for them not to get it, so get them there right away.
3. Their friends probably aren't there. Fact of life, nothing to be done about that.
So even if everything is right, the net might not boot up. That's way these things go. Try again, if you still think there's something there. It could the time isn't right. It took three or four launches before podcasting booted up. There were lots of community blogging sites before Blogger took off. Sometimes it's just the timing.
BTW, to see what users are willing to do to get an invite, check out this video
Considering that this trail runs through the largest city in the US -- it's amazingly free from traffic and hazards. The pavement is near-perfect. People generally respect the rules.
Better biking than I had in Calif where I rode along Junipero Serra Blvd some days and up Sand Hill Road others. Those were good routes, but you had to share the road with cars.
Here, the trail is just for bikes. Verrra nice!
Another major difference is -- no hills!
PS: The other thing, if I keep this up, and totally intend to -- it's going to be an awesome year for skiing. The two sports are pretty closely related muscle-wise.
8/4/2010; 1:14:54 PM. .
Google vs iPhone and Facebook
I use both an iPhone and an Android phone.
Neither is what I want. I knew what I wanted when the iPhone was announced, after years of speculation, and I was disappointed that the iPhone wasn't it. I wanted a phone that ran Mac software. I more or less wanted the same thing from Android. (I would have been slightly less happy with a phone that ran Windows software, but I don't think Microsoft makes one, and I don't think they plan to. This would be a late-but-interesting zig to Apple's zag, esp if (shudder) they open sourced Windows. Don't worry, it'll never happen.)
People are boasting on Google's behalf of their prowess in being able to catch Apple in market share. It is impressive, but not as much as you might think. Apple has never tried to lock-out their competitors, they've never designed their product strategies for market share. Jobs said that in a recent interview (I think it was at the D conference). Google has been able to do to Apple in mobile devices what Microsoft did to Apple in PCs, because Apple would rather control their share of the market and have a single target defined by both hardware and software than have multiple manufacturers making a disorderly and hard-to-target market. Apple has the freedom to move the iPhone platform where ever they want. That's always been their advantage, since the Apple II and Macintosh. But they threw the captain of the ship into a rowboat for a number of years, that's why it looked like a lose-lose strategy for a while, and pundits were walking all over Apple saying they were stupid not to license cloners. It wasn't that, it's just that the people running Apple didn't understand how to drive the ship that Jobs designed. Evidence is in how well Apple is doing, even with a shrinking share of the market they defined. Share has never been what Apple is about.
Meanwhile, my Android phone is humdrum. Not as flashy as the iPhone 4. It was supposed to get all this software that the iPhone didn't because it's an open platform, but if it exists, I haven't heard about it yet. I don't think it does. The closed controlled platform, Apple's, is kicking Google's ass in apps, and will continue to, again because share isn't what it's about. Maybe Google's easy-to-use application development tool will change that. Could happen.
But Google has OEMs that are hard to corral. As long as Jobs stays at the helm of Apple, or his successors understand and use his playbook, they will never win the battle. Apple will always have a better shinier product with cooler features. Android, like Windows, will have trouble delivering a benefit to users for the hugeness of its market share.
TechCrunch has a piece today comparing Google's Vic Gundotra to a US general in its upcoming war with Facebook. It's a good, probably accurate analogy but the wrong way for Google to approach the market. It's the loop that keeps repeating. Right now we're replaying the Microsoft battle to the death with Netscape, one which, in the end, they both lost. As they do in every iteration of the loop.
Gundotra comes from Microsoft, and I'm sure remembers the amassing of all of Microsoft's power at the ragtag garage band that Netscape was. All of Microsoft's products would become web-enabled. ActiveX would bring Microsoft-only code to the web, that'll show em -- can't run that stuff in Netscape! Then their sales team bought badges on all the top sites that said "Works better in MSIE." It was really something. But the inroads they achieved had nothing to do with the might of the company. Word, PowerPoint and Excel as web tools were a flop. ActiveX was a great way to write viruses, right from the start. A Microsoft engineer admitted to me privately a year after they shipped it that it was a huge mistake (it was). Microsoft gained market share because they made a better tool for browsing the web. In hindsight the gimmicks probably hurt them more than they helped, although the pundits sure were impressed.
It'll work that way for Google too. Google Me is a brilliant name. But based on what I can see that Google engineers are promoting, it's going to have the same problems Microsoft's attack had. They're opening too many fronts and fighting too many irrelevant battles. And too many strategy taxes. It's as if Google, not knowing who is winning the war, is fighting it everywhere, just in case it turns out that's where the true enemy is hiding. That's how big rich companies that are scared compete. Everyone needs to get a piece of the battle.
I bet Google doesn't appreciate how different things are now from when they went after Alta Vista and then Yahoo and Microsoft in search a decade ago. Scrappy upstarts have huge advantages that established leaders don't. And none of these guys study history well enough to understand the stages of technology markets and companies, so none of them know what to do when it's their turn to be displaced as the scrappy upstart. Microsoft didn't know what to do (apparently the message still hasn't made its way to their CEO, but it doesn't matter). IBM before them didn't know. And now Google doesn't know. They probably should be hunkering down. Let Facebook become what they are going to become, because there's nothing they can do to stop it. Become more efficient at delivering the services that people depend on them for. If this means laying off engineers, so be it. Or turn them into consultants and help other companies build on your infrastructure. And then either start paying dividends to the shareholders, or find other avenues to invest the cash you generate.
After IBM gave up being the platform vendor, that's basically what they did -- they became a consultancy and investment banker. Microsoft will eventually move there as their investors get fed up with quarter after quarter of flat growth. Google will get there as well, but first they have to get this tidal wave of fear out of their system, and unfortunately for all of us Facebook is going to bear the brunt of it. But they're in much better position to take it than Netscape was when Microsoft attacked. And Netscape did more to erase themselves than Microsoft did, and even so -- the browser they jettisoned lived to fight another day in the form of Firefox.
Anyhow...
If I were advising Facebook, here's what I would tell them to do.
Google is going to make the issue how "open" you are. They're going to do it by not really being open themselves, they'll have patents to cut off their competitors and upstarts, to control whatever markets they manage to get share in.
Facebook can stay steadily on its evolutionary path, or they can anticipate Google's moves and counteract them, by open sourcing huge amounts of their code, making it possible for companies and startups to launch their own Facebooks that interoperate with Facebook's.
That will leave Google with exactly nowhere to go. From there on, it's your market to do with as you please.
8/4/2010; 8:14:38 AM. .
The first outing on my new bike
I had a wonderful bike ride today.
New bike. And my old legs complained terribly at first, screaming in agony.
How dare you! They said. We were taking it easy for the last 15 years. Now you want us to work again! Fuck you.
When I got to the southern terminus of the island of Manhattan, I took a ten-minute break and took in the scenery. A fire boat went by. The Staten Island Ferry. A police boat. Mothers and nannies rolling babies in their carriages. The sea air. The cool breeze. It was an overcast summer day. I took a bunch of deep breaths, and re-mounted the bike, heading north.
BTW, I cropped the header I'm using on scripting.com from a picture of a fireboat and the Statue of Liberty.
This time my legs were looking to open up, let's get some speed, but for the first section of the trip we shared the road with walkers and runners, so that meant slow going. Finally, I turned a corner, now we had our own path, just for bikes, so I opened up. There's the speed! My legs said Okay Dave we remember how to do this! Let's go! Let's Go!! Let's GO!!!
And we went.
Finally as I approached Christopher St, the major bike path into the Village, I could see the light was flashing red on West St. Rather than wait, I gunned it, and made it across the street. I cruised up the hill, and at the first red light I collapsed. My legs said "Ohhhh kaaaaay, let's go slow from here." And we did.
But when I got back home after 40 minutes of riding, I felt the endorphins flowing through my veins. Ahhh this feels familiar. This feels goood.
No broken bones, it was a pretty nice first outing.
Tomorrow we, my legs and I, go north and see if we can make it to Central Park.
8/3/2010; 5:44:18 PM. .
A revelation: What I think matters
When you're having a discussion, does it occur to you that your opinion matters? That the discussion can focus, at least in part, on whether you agree or not?
There are some people for whom this comes naturally. They sit with their hands folded and wait for you to convince them. You can talk and talk, wave your hands, raise your voice, and after you're finished they say very quietly, "I'm not sure." Or they just repeat the silly or hurtful thing they said at the outset. There's no way of knowing whether they were any paying attention at all while you carefully explained your point of view.
These people aren't built like I am. I will never understand them.
There were people in my family growing up who were like that. They annoyed the hell out of me. Because we had the same genes, and I've seen evidence of their intelligence in other contexts, I believe they knew they were being annoyingly illogical. I think that was the point. They got some kind of pleasure out of winding me up and spinning me around.
I don't know and I never will.
So this is the tweak in perspective that I've discovered: What I think matters.
Believe me, for a person like me, this is a huge leap.
I don't have to convince anyone that I'm right or they're not. It could just as easily be their job to convince me that they're right and I'm not.
I've learned that sometimes the best thing is to fold my hands and listen and see what comes back, and see if it changes my mind. I know that I am really listening, and am open to changing my mind. That way there's a point in having the conversation.
Ideally the balance, between every pair of people, should be right smack in the middle. We care just as much about what they think as they care about what we think. Or approximately in the middle. If it appears out of whack, or getting out of whack, that's a good moment to take a deep breath, and step outside the immediate situation, and make a decision -- is this conversation worth continuing?
I always like to remind myself that there are 6 billion people on the planet, you can't be friends with everyone.
And sometimes, in some situations, it's more fun to be alone.
Update: Paul Krugman is like me, that's why I like him. He's always trying to convince everyone of the errors of their ways. Appealing to their better nature. "Wake up!" says Krugman, "opportunity is slipping away from you!" He believes people are smart, but doesn't understand why they act so stupidly. I think most people (but not me) are chuckling. Someone needs to say to Krugman -- you're a Nobel Laureate. You're off-the-charts smart. You teach at Princeton and have a column in the NY Times. Let them convince you for a change.
Update #2: Glenn Greenwald is another tireless convincer. He pays attention to things people say and do, and remembers them, and can play them back in different contexts. If you appreciate this kind of rhetoric (I do!!) he's capable of masterpieces. But he never convinces the people he's talking about, most of whom are smart enough to understand what he's saying, to care enough to do anything about it.
Update #3: People like me make shitty investors. We always see things from the other guy's point of view. But if you're a smart entrepreneur you want to have a few of us around. Paradox. But we make excellent marketers and evangelists. Not sales people though, their magic is different.
8/3/2010; 8:19:45 AM. .
Time-Warner wideband upgrade verdict is in
I thought I was getting pretty good service from Time-Warner with the regular $34.95 per month plan, so I upgraded to the $99 wideband plan, thinking it would be even better. Not so. The new service is much worse.
It takes a minute for pages to load sometimes. Other times the Internet is just out completely, with no service at all. The DNS is unreliable.
A few minutes ago it waited a minute before failing to locate psychologytoday.com.
Sites like Google and WNYC, usually very quick to load, take minutes. I've resorted at times to using my Verizon Mifi to access the Internet.
It can take a minute to upload a 30K image.
Sometimes when I search for something on Google, they can't find it (i.e. they can't find Google), so instead they take me to a helpful page on Roadrunner that can help me look up something, you know, like Google does. :-(
In other words, the "upgrade" is actually a disgusting awful downgrade.
It. Doesn't. Fucking. Work.
One of my neighbors has Optimum on a wifi router without a password so I tried using that a few times instead. It's pretty zippy. Should I have them install service here? Can I get out of the Time-Warner deal without a penalty?
Net-net: A huge honking thumbs-down on Time-Warner "wideband."
Note: My theory is that far more of my neighbors have made this upgrade and that I was virtually alone on the cheap circuit. Regardless, the net-effect is much worse service for almost three times the money. A shitty deal.
Update: Someone from Time-Warner got in touch via email. Totally beats going in through voicemail. I'll let you know how it goes.
8/2/2010; 2:49:09 PM. .
Moving on for the last time
Life is a series of comings and goings, moving on, letting go, graduating, commencing, marrying, separating. If we're not in the act of moving on, we're thinking about the last time we did, or planning on the next one.
But what about the last time you move on?
They asked nurses if they would prefer to go quickly, or have a few months to prepare for the end. Think about it for a moment, before reading on. I was surprised to learn they would choose to go slowly. They know something many of us don't, that medicine has become good at making the last weeks of life comfortable. I'm sure there are exceptions, and this is mostly an exercise, most of us don't get to make this choice.
The New Yorker has an excellent article in the current issue about the choices we make and how they determine the quality of our last days. Too many people choose to fight, when there's no chance of survival, and as a result spend their last days in agony, and never get to say a proper goodbye to those they are close to. As far away as you might think this is, it's probably a good idea to read this piece. You may be called on to help a friend or family member make this transition. It's better in this one case not to rely on on-the-job training. It's one of the things you don't get to do twice.
When I was 47, being prepared to go for heart surgery, I got a visit from a social worker who wanted to discuss end of life issues with me. About me! I politely told her it wasn't my time yet, although in retrospect, knowing what I know now, it would probably have been smart to have the talk anyway.
All this is prologue to some news I got this weekend about a former colleague, Chris Gulker. We never officially worked together, but in an unofficial capacity we got some amazing stuff done, back in the very early days of blogging, although we didn't know at that time that's what it would turn out to be.
Chris was the systems guy at the San Francisco Examiner, and a user of my Frontier software. For a few years he had used it in prepress work, to automate layouts of the news in Quark XPress. I watched this from a distance, with interest -- but without participating myself. I didn't have any applications for such high quality publishing work. He shared what he learned with the community at Seybold, led by another friend, Craig Cline.
Chris's work led to a project we did together in the fall of 1994, when the San Francisco newspapers went on strike. I saw this as an opportunity to get hands-on experience with the web. I signed up to work on the strike paper. Chris was on the other side of the picket line, he was doing the website for the management paper. Didn't matter that we were opponents, we shared what we were learning, and the pace of learning was, at that time, incredibly rapid.
I wrote about the work we did together in DaveNet, a blog-like website I did before starting Scripting News.
Chris went on to work at Apple and is a prolific blogger, but on a personal level, we lost touch over the years.
This weekend I got an email pointing to Chris's website where he posted in mid-July that he has been dealing with an incurable form of cancer that has now moved to its final stages. He has, at best, a few months to live.
I read his subsequent posts, and based on what I learned with my father's final struggles, last year at this time, that Chris is, imho, approaching this exactly as I would. And as the New Yorker author recommends. There comes a time when the odds are so stacked against a recovery, your chances are so slim, that it's better to give up on the miracle cure, and instead try to get the most out of the time you have remaining. There's nothing easy about giving up, about preparing for the final move-on. I imagine you feel not ready to give up on living, but you're ready to give up fighting to live. Or almost ready. Or so close to ready you might as well take a deep breath and get ready.
I don't know the answers. And I don't know what I can do to help -- other than tell this little story about a very small slice of Chris's life from my point of view. He did some great work, that yielded great results. He can be proud of that, and I for one am grateful that he was part of my life. There are lots of other people who believe that sharing what you have, as Chris did so easily, is a foolish thing to do, but Chris chose to lead instead and we all benefited.
Beyond that, I can say that I'll see you soon enough. And until we meet again, I'm going to keep pushing on the dream we both shared so many years ago.
8/2/2010; 7:32:04 AM. .
Debugging 101
I love that David Weinberger is narrating his fumbling programming work on his blog. It's great for a lot of reasons.
Everyone goes through what he's going through.
You never stop going through it, even if you've been programming for 37 years, as I have. You'd think after all this time I would remember the basic lessons I learned the hard way when I was in my early 20s. But nope, I often forget them.
It's very useful for me to read his narrative. I'm going to teach this stuff, and I have to remember that what seems second-nature to me now, once didn't.
One of the things I talk about with everyone I meet at NYU if they're willing to listen is that we're not teaching programming and we should be. I think every person who graduates with a bachelor's degree should have one semester of programming, just as they should have one semester of journalism.
If I ever get my book together, there will be a chapter on programming in it, where we'll cover the basics. Logic, looping, variables. I seriously think we can get political science students to experience a teeny bit of the magic of programming. It'll be a challenge for sure.
But it's a serious situation because there aren't enough students taking up computer science. New York wants to become a tech center, but it'll never happen as long as there are so few programmers graduating from our universities. Another way of saying this is that every student graduating with a compsci degree is much sought-after. They have their choice of jobs. This, in a major recession.
Now, my advice for David, and anyone else who is staring at code wondering how it could possibly be behaving as badly as it is.
Of course you're going to think it's the system that's screwing up. We all do. But that is so rarely the cause of the problem that it pays to put the theory aside and get the computer to reveal its logic to you. It's coming up with what you think is the wrong answer, but when you finally figure it out, you'll see why it's the right answer. You can't move on until you see this.
So step through it in the debugger, and watch what it does with your data. Eventually you will see it do something that isn't what you expected. Now figure out why and change the code, and test again.
I once stared at some code that was supposed to return the value 26 but it was returning 251. Must be a bug in the math processing code, because how could 25 plus 1 yield 251. But it did, ever damned time the code ran. Until I realized that the 1 was a string and the 25 was a number and the language coerced the number to a string so it could concatenate them. What was imperfect was not the machine, but my understanding of the machine.
BTW, I can only remember one time that a problem turned out to be a bug in the system. I spent a week chasing a bug in IBM's Pascal compiler in the early IBM PC. Of course there was no way to file a bug report, so once I understood what it was (I had to look into the code it was generating) I just worked around it.
Another time, there was some bad memory in my system. This was in the very early days of PCs, when there was no memory management. So I put a comment around the bad memory in my source, and was very careful not to add any code above it -- in all my source files.
Very early in my career as a programmer, I had an office in the Empire State Building, on the 39th Floor, with windows that open. I was there late one night, trying in vain to figure out which of the computers that was running my code had the bug. My problem was I had no idea how to approach the problem. That's 98 percent of the battle, clearing your mind, rolling up your sleeves, accepting the responsibility that it's your bug not some programmer in New Jersey, or the guy who wrote the operating system. I remember thinking, staring out into the NYC night that they shouldn't put young programmers in skyscrapers with windows that open.
8/1/2010; 11:57:56 AM. .
Flipboard 1.0 not so great
I finally have been admitted to Flipboard, and have had a chance to try it out.
First the conclusion -- eh -- not so great. But maybe if they move forward in an interesting way, this version can be the foundation for something that leads the market in an interesting direction. But right now, I don't plan to use it, and I don't think very many people will use it, after the initial rush has died down.
Caveat: I could be wrong and I know it. My first reaction to Twitter was much the same, but I ended up being a devotee. I also initially misread desktop publishing. I didn't think anyone would want to do it. I've been wrong many times. So don't take this as a pronouncement, rather it's an opinion.
Basically, Flipboard is a client for Twitter and Facebook. It doesn't show you all the posts, it has an algorithm that somehow ranks them and mixes up the order.
They appear to have two ways to display a tweet.
1. If it contains a link, they load the page it points to, run it through Readability to get the core content, extract a picture or two, and lay it out in an attractive way. They only show the first few paragraphs, then link to the full story.
2. Otherwise they show the tweet in a full-screen mode, much the way Twitter shows it when it's displaying a tweet on its own page.
Since it only runs on the iPad, at least now, it has to compete with my current means for reading Twitter on the iPad, which is (I know it's boring) twitter.com in Safari. It works pretty well. I don't see why I should launch Flipboard to read articles I could just as easily read by clicking on a link.
If Flipboard, in a future version, allows me to push content into it via RSS, without going through Twitter or Facebook, then I've got an incentive to use it, and I probably will. This is something neither Twitter or Facebook does. Also, as a developer, and freedom-loving user, I am willing to invest alongside any company that's willing to help me be free of big companies. But this could just as easily be one of the other client developers. No special reason to look to Flipboard for this. Maybe they'll do it, but given the inbred nature of Silicon Valley, they probably won't.
The other hope is that Flipboard offers publishers a way to use a higher-level rendering capability to make their collections more useful to readers. We're waiting for someone to do this. Again it could be Flipboard, but it could just as easily be someone else.
What they've done is captured a lot of attention. That may be a good thing, or as Rex Hammock points out, it may just alienate the publishers, who ultimately they need cooperation from.
8/1/2010; 9:53:48 AM. .
Last update: Friday, August 06, 2010 at 3:23 PM Eastern.
About the author
Dave Winer, 55, is a visiting scholar at NYU's Arthur L. Carter Journalism Institute. He pioneered the development of weblogs, syndication (RSS), podcasting, outlining, and web content management software; former contributing editor at Wired Magazine, research fellow at Harvard Law School, entrepreneur, and investor in web media companies. A native New Yorker, he received a Master's in Computer Science from the University of Wisconsin, a Bachelor's in Mathematics from Tulane University and currently lives in New York City.
"RSS was born in 1997 out of the confluence of Dave Winer's 'Really Simple Syndication' technology, used to push out blog updates, and Netscape's 'Rich Site Summary', which allowed users to create custom Netscape home pages with regularly updated data flows." - Tim O'Reilly.