Click here to show or hide the menubar.
Feed last built: 4/26/2015; 2:00:37 PM.

Scripting News

Great "Blue Sky" platforms

The hairball

Our current platform is a mess:

  1. CSS.

  2. HTML.

  3. JavaScript.

  4. A server.

Think of how much you have to learn to become "full stack" in this world.

At least four different syntaxes, and a CSS preprocessor.

HTML is XML. JavaScript is like C or Pascal. The server could be written in any number of different languages. And JSON. None of them are going away.

I've been working in this world for many years, and right now would be at a loss to write a canonical "hello world" app.

What a Tower of Babel. What an opportunity to topple it, esp given all the people these days who want to program.

It grows when it's simple

The big strides in tech happen when the platform gets reduced to simplicity. Examples include:

  1. Unix with C.

  2. Apple II with UCSD P-System.

  3. MS-DOS with Turbo Pascal.

  4. The Web with a plain text editor.

I call these blue sky platforms

In all these systems, lifting the hood is child's play.

Typing and modifying "Hello World" is easy. From there, there are no huge cliffs in the way of becoming a master.

1995: "A platform must have potential, or open space. I call this blue sky."

Digging out of the mess

We can get back to blue sky any time we want.

I would start from Node.js and build out.

The web browser, as currently configured would have to be replaced by something that's thoughtfully designed. Or maybe a platform built on top of CSS+HTML+JavaScript, hiding it behind a factored interface? Not sure. But we'll never have great growth until we factor out the huge hairball sitting between ideas and implementation.

I would have hired Doug Engelbart

I've heard it said, and thought myself, that of course I wouldn't have hired a 50-something developer when I was running my 20-something startup.

But then I just realized that if Doug Engelbart had wanted to work for Living Videotext or UserLand I would have hired him in an instant. Can you imagine. To have the guy who pioneered the technology we were commercializing around to mentor me and my developers? I would have jumped at the opportunity.

So the answer is, it depends. If it was a random employee type who hadn't done much with his or her career, I probably wouldn't have been very interested. But if it was someone who had created the foundation we were working on, that would have been different.

Guy Kawasaki: "Good people hire people better than themselves."

Imagine all the people

My Apple Watch podcast

I've made a dozen or more visits to the Apple Store website hoping to buy an Apple Watch and each time coming up empty and as confused as ever.

This 12-minute podcast tells the story.

BTW, here's a screen shot of the Apple website, referred to in the podcast.

Should Boston bid on the Olympics?

When I was chatting with Chris earlier today, the subject of the Olympics and Boston came up. Should Boston bid?

My two cents

Boston should not try to host the Olympics, in fact no one should. With climate change, a new venue for the Olympics every four years is an extravagance we can't afford. Sure it's a drop in the bucket but it's an important and symbolic drop in the bucket.

Build one great Olympic facility, designed to be usable for 100 years. Hold all future Olympics there.

It's like the United Nations. We don't build a new skyscraper every four years. We built one really good one, and use it every time we need the UN.

5-minute podcast

I was talking with Chris Lydon about the idea of a 5-minute podcast.

Then Doc Searls asked a question that I thought could easily be answered in 5.

I was right, but I rambled too much and it turned into a 6.5-minute podcast.

Next time we'll do better!

The open tech of Podcatch.com

On Friday, as you may know, I made Podcatch.com public.

It's a quick way to find a great podcast to listen to, now. Without subscribing.

The list of feeds is curated, it originated from the feeds my Facebook friends liked the most. In that I think it's a prototype for how social networks can be used to create new flows that aren't complicated or hard to use or appreciate. I think, btw, this is the holy grail Twitter has been looking for.

The JavaScript environment

What I haven't talked about yet is all the great open technology it builds on. Stuff that's available to anyone to use to create new apps. One of the amazing things about developing in JavaScript in 2015, and hasn't been well-appreciated yet, is how deep and generous the developer community is, to itself. I've never seen anything like this.

Technologies we use

So here's a partial list of technologies I'm using to make this work, all of which are open source and available to all, free of charge and on equal terms.

  1. Font-Awesome for the icons.

  2. Bootstrap Toolkit for the CSS framework.

  3. jQuery to make access to the DOM uniform across browsers.

  4. snap.js manages the sidebar in the app (new feature today).

  5. River4, manages subscriptions, river generation and browsing.

  6. Feedparser does all the feed parsing for River4.

  7. OPMLparser reads the subscription lists for River4.

  8. RSS is what podcasting is built on, of course.

  9. Node.js runs the custom back-end Podcatch software and River4.

  10. NPM supports the building of the backend bits.

  11. V8 which is the JavaScript interpreter in Node.js.

  12. HTML5 has an

  13. Google Fonts for Oswald and Ubuntu.

Thanks!

Thanks to all the generous developers (with a caveat that I am thanking myself for River4 and RSS, I know it's weird).

I'm sure this list will grow as I remember more bits of generosity that I'm building on.

This tech makes people rich

BTW, one of the reasons I listed the open tech that podcatch.com builds on is to increase the visibility of these essential components.

For entrepreneurs and VCs who have made billions from tech, you should know that this would not be possible without the generous work of people who mostly do it for love, with no expected remuneration.

If you think you support open tech and are not actively supporting this work, you're not. Sometimes you have to tell truth to power. This is one of the truths that has not been well-told.

The new WTC elevator

One of the things I love about NYC history is the layering and the continuity. It's how I think software should evolve too. We rip up our software cities too easily, because we don't like the arrangement of the streets, forgetting that there are real people living and working in our cities.

So I totally got off on the elevator movie that takes you to the 102nd floor observation deck in the new WTC tower. It shows you how the city evolved from nothing to a small Dutch settlement at the tip of Manhattan (south of the WTC site) to the huge metropolis it is today. You even get a look, briefly, at the ill-fated tower that came down on 9/11.

But there are mistakes, as has been observed, and one howler that as far as I know has not been reported yet. Here's the problem. They show the Brooklyn Bridge, clearly, in 1825. But it wasn't finished until 1883.

T-Mobile travails

I was taking an early morning walk in Manhattan this morning when the fourth wall popped with T-Mobile. I was dropped out of The Matrix and smack in the mire of post-millennial mobile access.

My recently-upgraded T-Mobile account was missing a vital feature. I found out about it just as I was getting ready to use a service that requires a net connection.

The 20-minute story in a podcast.

The future of journalism

There's a future-of-journalism conference in Austin. I'd like to insert a recipe, if I can, for the future of journalism.

  1. Start by solving problems. In all likelihood the geography you serve (if you are geography-based) has awful Internet connectivity. Before doing anything else, you must take ownership of that problem. If your readers have lousy Internet they will not be full participants in the world-wide news system. NYT, NYP, NYDN take note please.

  2. Work on your collective rolodex. That is the definition of who you are. The better it is the better you are. I'd be surprised if many current news orgs see it that way. But they will. (By the way you can start on this step before the previous step is complete. It might take years, even decades.)

  3. Make sure you have in your rolodex a field called "Feed" and in that field include the address of your source's RSS (or Atom I don't care) feed. You're going to need it in step 4.

  4. Make a river out of those feeds. Start watching that river. Tell your sources about the river, give them the address. About five minutes after that you will be jumping up and down with excitement. Five minutes after that it will be on your home page.

  5. Congratulations, you now have a future.

Introducing Podcatch.com

I was bored with my podcasts. I subscribed to a dozen different feeds, but was only listening to two shows. Sometimes I'd leave the house with nothing interesting on my phone. I muddled along, thinking this was the best I could do. Then came Serial, and all of sudden podcasting was exciting again. I looked forward to every week's installment the same way I look forward to a weekly Game of Thrones or Mad Men.

A fog of podcasts

What followed was an explosion of new podcasts, or so it seemed, but which were the good ones? I did what everyone does, I asked my friends. I saw my friends asking. I asked again. Sometimes I found something interesting to listen to, but usually not something I wanted to subscribe to. That got me thinking.

Subscribing may be the wrong way to look at it. When I want a podcast I don't want to subscribe. I want to listen. All the time between the want and the fulfillment seems like work. Why is this so hard.

I tried an experiment

Standing on the street in Manhattan, with my iPhone 6 and a good net connection, how long would it take me to find something to listen to.

In other words, how long after having the idea "I want a podcast" did it take to fulfill it. Standing out there in the cold. Feeling like an idiot, fussing with my phone.

How long? A lot longer than it should.

An idea from Vox

Then I read an article in Vox that listed 26 podcasts I should be listening to. There's the answer. Almost. If they had a page that followed all these podcasts, I could go there, click a play button and be listening in an instant. Someone with good judgement chose these shows, and I bet one or two of them are good in any week. But that place didn't exist.

Another experiment

I asked my friends on Facebook to recommend their favorite podcasts. I figured if we were friends, or friends-of-friends, some of our interests would overlap. But I did more than ask, I engaged. And I didn't ask for feeds, I was willing to do the research to go from the title of the podcast to the RSS feed.

I set up a river, customized it so there was a player for each item, and linked it up with Facebook comments, so the resulting conversations would feed back into my relationships.

The product

As Apple says about their products, it has magic. It's simple, it's probably not what you expect, but it really works. When I go there, I find new ideas, feelings, perspectives, entertainment.

That's Podcatch.com.

And now it's public. You can use it too!

A picture of a slice of cheese cake.

It's their world we just live in it

Something funny happens when I put my iPhone 6 and my Nexus 6 together on my desk (charging them up).

The iPhone tries to pay the Nexus using ApplePay.

I just realized how funny this is. Why does the iPhone (Apple) think it owes the Nexus (Google) money?

Next time it happens I'm going to make note of how much money the iPhone thinks it owes the Nexus.

Software and free hardware

I just saw that JJ Abrams has an Apple Watch.

You know there was a time when I would have had that.

When Apple gave early access to hardware to developers who created software for their platform. I was, at one time, one of those people.

I used to have a motto back then: "Software is made of free hardware."

What was cool is that it worked the other way too. Hardware is made out of free software. But that was hard to say because of piracy, could be too easily misunderstood. Still, it's true.

And it makes me wonder if there isn't still a position for a company to do what Apple used to do, cultivate relationships with software-makers.

Pretty sure JJ doesn't write too much software.

This is a test...

For the next sixty seconds this station will conduct a test of the Emergency Podcasting System. Had this been an actual podcast you would have been instructed to do whatever it is you do when you listen to a podcast.

Podcasting 2.0

In 2001, when I designed the protocols for podcasting, we were using a different Internet:

  1. Net connections were so slow that the click-wait problem was interfering with people using big media objects, and

  2. The mobile devices that could play podcasts weren't able to communicate.

So we designed a protocol that would make it easy for your desktop computer to gather up the media objects and move them to your mobile device, probably something like an iPod, which, by the way, didn't exist yet.

We got ahead of where the technology actually was. But it turned out well. Today there's an explosion of podcast content, all of it formed around the blueprint we put out 14 years ago.

Today's net is better

But the world today is different, and as a result I believe we can make podcasting much easier and richer for the listener. We can remove steps, and provide more variety.

  1. The net we use today is fast. When you click to listen to a 40-minute podcast, it's downloaded in a few seconds. And it starts playing immediately. No click-wait.

  2. The net goes with us almost everywhere with inexpensive mobile devices.

Given that reality, one would design podcast listening software somewhat differently.

The problem is discovery

We're all looking for the next great podcast, not something to subscribe to necessarily, that's work -- rather something enjoyable, interesting, stimulating, thought-provoking and most important -- now!

The perfect podcast client

Here's how the perfect podcast client would work, imho.

  1. No preparation. When I'm leaving the house, I have lots of things on my mind. I spend time loading up my phone with fresh podcasts, when I have the time, but sometimes I'm in a rush and leave with nothing interesting on my phone.

  2. Lots of interesting shows. That's a key point. I'm less interested in subscribing to a series of shows than I am in listening to a single good episode.

  3. Social connection. I like to listen to the same shows my friends are listening to, because I love having someone to discuss these things with.

  4. Variety. I had gotten into a groove, listening to a few podcasts regularly because I could count on them being interesting to me. Mostly Planet Money and Fresh Air, with a very rare RadioLab, or a NYT Book Review podcast. But there's a lot more out there, I'm finding, now that I have easy access to more variety.

  5. Immediate. When I decide to listen I want to listen now. It should be as easy to start listening to an episode of a podcast as it is to start watching a different show on my cable TV set-top box.

  6. Ephemeral. You listen to a podcast once, and that's it. Yet the devices we use for playback are designed for music, which is not ephemeral.

Where from here

For a while I evangelized editorial organizations to create this product, but they either didn't understand the need, or didn't think there was an opportunity? More likely they don't think like a software developer. When I see an opportunity to make things work better, I want it to happen right now. Even if I don't have time to do the work myself.

Well, I finally got tired of waiting. I've made the software. I'm using it now, as are a few friends. We're smoothing things out and should have something for everyone to use soon.

We're going to start with the shows my friends recommended, when I asked them, on Facebook. If it proves useful to others, we may branch out to including shows your friends like. And on and on. I think this is the way podcasting was meant to evolve, starting in 2015.

Update

The product is Podcatch.com.

A blog post explaining how the product came to be.

HBO should release all of G-O-T

This is one of those moments when you look back 10 years later and say this is the point where HBO should have crushed the competition before it can get too big. The competition being Netflix and Amazon who are changing the way HBO-like series are viewed. Like Game of Thrones. Which officially starts its fifth season tonight with one episode.

Maybe last night's leak was HBO testing the waters, to see what would happen with viewership tonight. I have a funny feeling it will just increase it. Game of Thrones, of which I am a devotee, requires two and sometimes three viewings to absorb all the delicious viscousness, depravity, betrayal, lust and insanity.

Last month Microsoft admitted it might open source Windows. Today that seems like a whimper rather than the audacious hellacious move it would have been 10 or 15 years ago. Today who cares. The action is elsewhere. The time to be bold is when you're at your peak. Unfortunately so many in business wait till it's too late.

I'm sure Stannis Baratheon, Cersei Lannister or Jon Snow wouldn't hesitate.

A picture of a slice of cheese cake.

Registrars are our natural ally

In the Get-Scoble-On-The-Web thread on Facebook we tripped across something that's worth noting on the blog.

  1. First Joseph Rooks pointed to a program Namecheap is running to encourage students to create more web content. Makes sense. More content, more names.

  2. I said: "Joseph you make a really good point I hadn't thought of. Our natural allies in this are the domain registrars. Their fate and that of the open web are one and the same."

  3. Out here in developer-land we're creating tools that make the open web a richer writing environment. Things that need names.

There might be other natural allies of the open web. Have to think about it. And thanks to Joseph for the interesting tangent.

A new job description

I started pushing links to followers shortly after I started blogging. First there was the Frontier News page, then that migrated to the home page of scripting.com, then we came up with RSS, and aggregators, and made the jump to Twitter and Facebook.

All along I've been aware that there's an art to this. There are chances to insert humor and mystery into the flow. Why did he point to that? And you could comment. I put short little one or two-word phrases after posts, sometimes even in a different voice, all meant to provoke a response inside the reader. A personal one, different for each reader.

Anyway, as Twitter and Facebook turn more to news, and hopefully at some point other news orgs will invest in their own infrastructure for this, let's think about how to better develop this art. Some way to discuss it. If you do this, do a blog post with your ideas.

Users can be project managers

In the Facebook discussion Scoble said he's just a user. I guess he meant that as a user, how could he contribute to an open development project. I hope he didn't mean that users just suck energy from product development and never put it back.

Fact: We need users to help drive the process of development.

Here's a great example.

I was so focused on writing code that I missed that MyWord Editor still needed a way to do a home page. A user (who happens also to be a programmer) called me on Skype and said we needed to look at this. D'oh! Of course.

So I did some work and threw it back over the fence to the users in the form of some working code and ideas. If the feature is going to happen it needs to be driven by users. An ambitious developer can only go so far.

When I talk with startups I try to emphasize this. You need good users at the beginning to help you see how the product works for them. Communicating with them, listening and feeding back is the way you get from version 1 to a polished powerful product.

Scoble, re-join the open web!

I got into a long conversation with Robert Scoble on Facebook earlier today. I asked him, as I always do when I get a chance, to put some of his writing on the open web. Not all, just some. Start a WordPress or Tumblr blog for example.

Not sure why he won't do this, but I'll tell you why I want him to.

If he did, we'd see the weakness in the model, very clearly. But using the Facebook and Twitter APIs, we might be able to fix it. We could make it so that the open web gets a chance to distribute his ideas, as well as Facebook or some other commercial service (he seems to use many of them).

Not sure what direct benefit would be for Scoble, other than to know that he gave back a little of the flow that the web has given him. A bit of the attention. Maybe developers can do something with this. But if the people that other people read, like Scoble, don't do this, there's little chance we'll have an open ecosystem for ideas much longer.

This is what we, as adults, do. We pay a little more than we have to, to help good rise above other kinds of human nature. When you go out for a meal, you don't have to tip, but we do anyway (at least in the US, different traditions elsewhere). We all try to give to charity when we can, and help out people, again when we can. Why? Because it feels good. This is one of the things human beings do.

We need the people who the web has made rich and/or famous to step up and do their part to make sure there is an open web for years, decades, for generations to come.

I liken the VC-based tech industry, which Scoble is very much a part of, to the coal industry before we became aware of the damage that fossil fuel does to the climate. In tech, we're early on this, but now is the time to catch the problem before it's much more expensive and takes more time to fix. I said this to Bill Gates as he was amassing his fortune, that a little kindness to the ecosystem now will go much further than all the philanthropy you promise later. I say it to Zuckerberg, and Jeff Bezos, and to Robert Scoble. Be a leader. Show people that freedom matters. Show the tech industry too. Eventually they're going to want more open formats and protocols to build on. How are we going to make them without users like Scoble helping out. We can't create in a vacuum, without users.

Obviously I posted this on my blog. I could have put it on Facebook. I ask Scoble, if he has a response, to do the same. Put your response on a new blog you start, on Tumblr if you like, it's part of the Silicon Valley ecosystem, or WordPress, another company that's raised huge VC. Let's accentuate the good that tech does, by supporting it. Thanks for listening.

PS: Robert is already helping the open web by letting me use him as a foil for this discussion. Whether or not he does it, people understand the idea of a Scoble pitching in to help the web that helped him so much. Now they know how important it is that they follow the leadership that Scoble could be providing.

PPS: I ask Tim Berners-Lee to join me in asking Scoble to come back.

Twitter's advertising model

This has happened a few times for me.

  1. I follow a company.

  2. They start advertising on Twitter.

  3. Now, every time I go to Twitter, their ad is at the top of the page. The same message. I've read it a dozen times. I do not want to keep reading it.

  4. I have a choice, I can get rid of the ad by unfollowing them. I do it with regret, because there was a reason I chose to follow them. I am interested, and I want to keep up on what they're doing. So maybe I don't unfollow at first, or the second or third time. But eventually it seems I always do. I keep meaning to write this post to make sure Twitter and the advertisers understand this.

  5. Because of this I am reluctant to advertise. I was thinking about doing it when I come out with a new product. I think Twitter could be part of my promotion, but...

Node.js programming question

I've got a bit of node.js code that downloads an MP3 podcast, saves it to a file.

However, none of the MP3 players I have will do anything with it. So somehow in the process of downloading and saving, it's losing some data.

In the code below, url points to this file.

<%includeOutliner ("https://dl.dropboxusercontent.com/u/36518280/misc/requestMp3Example.opml")%>

Update

Thanks to Kyle Davis in a comment below, we have the solution.

News à la carte?

Doc Searls has a simple idea.

When he travels he buys newspapers. He can read any paper without buying a subscription. Why didn't this decades-old tradition make it to the web? Maybe it should?

My thoughts

It's always interesting to consider new ideas. But this one is too late.

What people want is articles now. Linked into a river somewhere.

  1. Facebook is a river.

  2. Twitter is a river.

The only question as far as I’m concerned if The Rest of Us get a river.

A picture of a slice of cheese cake.

How I got my first iPhone

I posted this on Facebook last year, and forgot about it until someone Liked it yesterday. Since today is the day all the journalist reviews of the Apple Watch come out, I thought it would be interesting to present this from a user/developer who has to buy his own Apple hardware. And wait.

It was June 29, 2007. I was a happy Blackberry user. And I was pissed at Apple for creating such a closed phone. I wanted their phone to run Mac software so I could put Frontier on it, and write apps in my scripting language with its object database and great TCP stack. Instead, they said no apps, just make web pages (turns out this was a Jobsian deflection, otherwise known as a lie).

So I decided to sit this one out. Then I got a call from Scoble. He and Patrick, who was still a cute little kid, had waited overnight and were the first people in line at the Palo Alto Apple store. I was in Berkeley. Scoble said if I came with the cash, he would get me an iPhone. I sighed. OK, I guess this is it. So I went to the bank, got the cash, drove down to the valley, and was in the middle of the incredible media frenzy when Scoble and Patrick came out of the store, to the applause of the Apple people. He threw me my phone, while he did TV interviews. I felt a little churlish, but the first thing I did was go across the street to a coffee shop, and set it up.

I never used the Blackberry again.

The Apple Watch reviews

Reading the reviews of the Apple Watch makes me want to hate the product. I don't like the reporters getting the first shot. I know who they are. They are the people who applaud and cheer at Apple press events. And who won't write anything too real for fear of not getting a review unit next time.

If Apple blacklisted the WSJ reviewer, for example, how long could he keep his job? You can't do good journalism that way. Gotta wonder why there isn't a Columbia Journalism School investigation of that? In this case it isn't just Rolling Stone, it's a whole industry that is being covered with conflicted ethics.

The system reeks. Apple should ship the products and let everyone have a chance to review them at the same time. Including people who don't get invited to their press events.

And any reporter or news org with a sliver of self-respect should return the invites to Apple press events.

PS: I own a fair amount of Apple stock.

Talking about our mistakes

Well the Badgers lost last night, and it was a heart-breaker. But it was also a great basketball game. So much to learn, even in a loss. Which leads me to another interesting topic.

In tech, we seem to never talk about our mistakes. But we should. Not only because we keep making them, but we keep making them worse and worse.

A really interesting tweet from Rob Beschizza this morning. "Dijkstra might have been wrong about BASIC, but telling beginner coders to learn HTML and CSS is like telling chess players to eat wood."

What if...

I wonder what would have happened if tech had evolved differently. What if instead of Apple adopting Hypercard as the future though it ignored almost everything that was good about the Mac, what if they had embraced something radically different, like Turbo Pascal. And what if networking on the Mac platform had been as easy as HTTP, five years before. We could have had both graphic operating systems and networking emanating from the same place of simplicity. Then a novice programmer would be presented a development environment where Hello World was as simple as typing writeline ("hello world") instead of the mess that of today's stack..

CSS, HTML, JavaScript

Today a beginning coder has to deal with a programming environment with three different incompatible languages with very different styles. Why? No one really thought about it. We didn't use the best ingredients we had at the time, for some reason. Why isn't QuickDraw part of the full-stack developers toolkit? Why did we throw that know-how out? And can we avoid doing that in the future?

We never get dug in on a platform for long enough to actually fix the annoyances. Before that happens the pavement has been ripped up and the streets run in different places and directions, and the buildings we were using to store our data are cut off from the grid.

We don't talk about our mistakes

Back to basketball, it's as every class of one and done freshmen were running the NCAA instead of 40-year coaches. We in tech, in an art that matters from an economic and societal standpoint, it's everything we build around, we throw out what we've learned every decade or so. And start over. That's a scandal. We don't talk about it because.. why??

Probably because no one cares as long as we're creating a few billionaires every year, it must all be working, right?

Hah. No it's not.

PS: You see this happening today as some podcasts forget to publish RSS feeds with enclosures. Most still do. We should encourage them to stick with it, because this is a good thing from stacks-of-the-past.

XML