Listen in Your Browser
Play this episode directly in your browser — just click the orange “play” button below:
Download This Episode
You can also download this episode as a standalone MP3 file. Here’s the link:
- SitePoint Podcast #104: Free as in Podcast (MP3, 59.2MB, 1:01:40)
Subscribe to the Podcast
Here are the topics covered in this episode:
- IE9 is Released. Does it measure up?
- Mozilla demos the new features in Firefox 4 with the Web O'(pen) Wonder.
- AirPlay in iOS 4.3
- Twitter tells developers to scrap their apps?
- Stories from the trenches at Pinboard.in
Browse the full list of links referenced in the show at http://delicious.com/sitepointpodcast/104.
Kevin: And welcome to another episode of the SitePoint Podcast. Louis Simoneau joins me this week; we’re holding down the fort here at SitePoint Headquarters, hi Louis.
Kevin: It seems like everyone’s gone to South by Southwest.
Louis: That appears to be the case, at least that’s what Twitter has been telling me.
Kevin: I know Stephan is on a family vacation and will be missing South by Southwest as well, but our other two regular co-hosts Brad and Patrick are lost in the maelstrom that is South by Southwest, they said something about hopefully recording something while they were there, we’ll see if that happens; I know it is party town and getting a quiet place to make a recording is virtually impossible in Austin this time of year.
Louis: So I hear.
Kevin: But Louis, nice enough to join me, we’ve been hearing a fair bit of Louis’ voice on the Podcast over the past few weeks, you’ve been recording some interviews, thanks for doing that Louis.
Louis: No worries, it’s been a pleasure; we had a chance to interview some very interesting people, so it’s good.
Kevin: Yeah, look forward to more of the same. So we have quickly sort of amassed the week’s news in web development and design and we’ve got a few things to chat about; it just feels weird doing a news story sitting in the same room. But I suppose the big story this week is —
Louis: IE 9.
Kevin: Yeah, IE 9.
Louis: I think that’s the one.
Kevin: (Laughs) is it sad?
Louis: It is a little bit depressing but that’s alright.
Kevin: Louis and I often disagree on things, but I suspect we’re not gonna disagree on much when it comes to Internet Explorer. Let me start with the bright side of this which is by all reports Internet Explorer 9, which has now been released to the general public, is an amazing browser; it’s a huge improvement over IE 8, it is standards compliant in ways that we would have had no right to expect, they’ve implemented experimental features like the “don’t track me” option that Firefox pioneered. So, if we had had our wish of everything that Microsoft could implement in the time they had available I don’t think we could’ve picked it any differently, could we?
Louis: I guess not. I mean it’s interesting to see some of the things that they’ve omitted, and they provide justification so there’s some HTML5 and CSS 3 that isn’t in there.
Kevin: Yeah, at least they’re not ignoring things anymore, they’re explaining.
Louis: Right, I mean they’ve sort of said well this stuff is still experimental, the syntaxes are changing, even fairly recently the gradients syntax was changed in WebKit and they had an earlier implementation that they changed to reflect what Mozilla and Opera were doing. So they’ve provided justification for the reason they haven’t included these other features, and it counts as a real browser, we can at least say that.
Kevin: Which is a first in a decade (Laughs).
Louis: (Laughs) which is a first in the history of Internet Explorer is that it’s actually a browser. Yeah, I mean it’s crazy fast, you got to give them that, and that’s driving I think the market.
Louis: Yeah, and if you look at the graphics rendering as well with their ability to tie in, I guess it helps that they focus only on one platform.
Kevin: Just one operating system.
Louis: So they have ostensibly three times less development to do in these hardware areas than other developers have, so it allows them to really focus on getting those performance enhancements done.
Kevin: That’s why you see browsers like Safari 5 adding hardware support as well. Oh, what am I saying, Safari 5 is on Windows these days. Is Internet Explorer the only browser that is —
Kevin: It is operating system specific.
Louis: Other than obviously the mobile browsers, but other than that, yes, it’s the only one that —
Kevin: Most of which are built on WebKit anyway.
Louis: Most of them are just WebKit with whatever native wrappers are required to get them to work in an environment.
Kevin: Right. So, Internet Explorer 9, have you tried it yet?
Louis: I played around with it a little bit in the betas, I haven’t actually played with the full —
Kevin: Yeah, I’m the same, when the first beta came out, out of curiosity I downloaded it, I wanted to see what this thing was, I was impressed by the standard support, the user interface left me lukewarm but then it’s the default browser on an OS, I don’t think they can really break that much ground with the UI.
Louis: Yeah, I mean obviously I don’t use Windows, so part of the reason for that is that I don’t really dig the Windows UI, so obviously if a browser is built to those defaults I’m not gonna be a huge fan of it.
Kevin: They’re even pushing the Windows UI though; they’ve done the tabs on top sort of stuff that other browsers are doing.
Louis: Yeah, they’ve done what everyone is doing now I guess, that’s more of a trend thing, I don’t particularly —
Kevin: It seems like the browsers have more in common than the browsers have in common with what you’d expect on any given platform these days.
Louis: Yeah, that’s probably true.
Kevin: Yeah, browsers are their own thing. But I find it interesting that you and I as web geeks haven’t really tried Internet Explorer 9 since the beta.
Louis: Well, for me it’s just a hassle, I don’t have a Windows machine and my Windows 7 VM is an enterprise to start up (laughs).
Kevin: Right. And more and more I think the majority of web developers are in the same boat, which is really interesting that the majority browser among regular users, quote/unquote regular users, I’m doing my air quotes here.
Louis: Let the record state that there were air quotes.
Kevin: (Laughs) but, yeah, the most popular browser in use is the most inconvenient browser for your typical power web developer to break out and actually try.
Kevin: And is this a divide that is harmful to the Web that we are targeting essentially a platform that we never really use.
Louis: Well, I think one of the good things about Internet Explorer 9 is that it does bridge some of that divide. You know I’ve been doing some testing for an upcoming SitePoint book using quite a bit of HTML5 and CSS 3, and I’ll develop on the browsers that I have available which is Firefox, Opera, Safari and Chrome, make sure everything’s in there, and when I jump over to test in IE 9 nothing really looks broken, I mean there are missing features like so you don’t get the CSS 3 columns, for example, which is one thing we’re using that’s not there, and some of the form features are missing, but those are even missing from other browsers as well, I don’t have the forms in Firefox.
Kevin: It’s not a shock is what you’re saying. It used to be a shock when you opened your —
Louis: It was like Oh My God, nothing works (Laughter).
Kevin: My labor of love has exploded on my screen (Laughter).
Louis: Yeah, and now it’s just like okay I’m missing a couple of things, and those are things that I’m missing in other browsers anyway, like I said, you don’t have forms, some of the new form controls in Firefox, you don’t have columns in Opera, so if you take a mishmash of what’s missing from other browsers you open it in IE and everything’s there, and the video works.
Kevin: So thank goodness for Web Standards I suppose. If Web Standards hadn’t had the rise they did throughout the last decade we’d be in real trouble right now because we’d constantly have to run a Windows VM in order to do real web development.
Louis: Yeah, and because it doesn’t run in XP which is the only Windows VM you can run in a reasonable amount of RAM.
Kevin: I think there are still people hoping that they’re gonna back port it to XP.
Louis: It’s not gonna happen.
Kevin: Not gonna happen.
Louis: To be honest I think there was an interesting; it was on one of the SitePoint blogs, I can’t remember if it was Craig who wrote the blog post who was making this argument.
Kevin: I think it was Craig; it was like his wish list for the year or something like that.
Louis: But I think it was one of the comments maybe that was saying that if you really look at how old XP is, and they’ve been trying to shut it down and they’ve said well we’re not supporting it anymore, it’s a defunct operating system; so for them to invest development resources in having a browser work on an operating system they’re not even supporting I think is a little bit unreasonable to ask, especially when there’s a lot of features that they want to be able to use, there’d be a lot of code forking in there because if you look at things like the site pinning that you couldn’t do on IE because, on XP sorry, because the task bar is completely different or things like hardware acceleration.
Kevin: Yeah, it would have to be like a pale imitation of IE 9, “IE 9 lite”.
Louis: (Laughs) yeah, I mean on one hand it would be interesting what you could reasonably hope for I guess, it’s not gonna happen, but what might be not unreasonable is to get an incremental IE 8, like IE 8.2, that takes some of the standard support from the IE 9 rendering engine without any of the chrome or UI features.
Kevin: Yeah, they brought the development features for like the web developer platform features forward like the web developer platform features forward, I don’t think they could bring the performance forward because so much of it hinges on tying into Windows Vista graphics acceleration API’s that just aren’t present in XP, but maybe they could at least get pages rendering the same.
Louis: Yeah. You’d hope so but I don’t think it’s gonna happen.
Kevin: No, it’s not gonna happen (Laughter). It’s a fantasy, get over it.
Louis: So Pipedreams Weekly is our new podcast title. Right, so IE 9, is there anything else? I mean obviously their site pinning stuff is interesting because you were talking about web standards as being one of the reasons why we can now look at a site in IE 9 and not be totally shocked, but then on the other hand some of these additions like site pinning and all the features that you can build into that are platform dependent. I mean they’re not trying to create a standard for —
Kevin: Aren’t they? It seems like every time Internet Explorer introduces one of these funky features now they do release it as a spec that is, and they say we’re not gonna patent this, feel free; I don’t think many people take them up on it.
Louis: I can’t see them having done that with this because it’s Windows specific functionality.
Kevin: Explain it.
Kevin: Well, yeah, if Safari or Chrome were to implement that. That’s why I think it probably is likely that Microsoft has opened these things up as standards that are freely implementable by other companies; I don’t know if they will actually get any other browser vendors to do it, but I think it’s in Microsoft’s interest that they do because then —
Louis: Web developers might have more incentive to take on. They had some sites that sort of joined them on the launch, I guess it would have been a sponsored thing, but if you look for example the Huffington Post was one of the ones that had some of these features implemented before the IE 9 launch so that straight away when you go there those features are available, but I guess it’ll be a matter of time in seeing whether there’s a lot of update for this. I personally don’t expect that there will be just because you know as a web developer if I can spend my time building a feature that benefits everyone or I can build a feature that benefits say the 20 or 30% of users that are gonna be using IE 9 on Windows 7, I’m gonna spend my time on something that all my users can see.
Kevin: Yep. So let’s talk practicality, right now I have two Windows VM’s on my machine for testing, one’s got XP and Internet Explorer 6 on it; actually I’ve got three, one’s got Vista and Internet Explorer 8 and one’s got Windows 7 with, sorry, Vista has Internet Explorer 7 on it, and my Windows 7 VM has Internet Explorer 8 on it. Am I gonna need a fourth VM now or are there any of these Internet Explorer versions we can start ignoring?
Louis: Six, yeah.
Kevin: Six, okay.
Kevin: Six is out. Can we throw away 7 is what I’m wondering.
Louis: No. Well, it’s interesting, 7 I think will dwindle probably pretty quickly because there’s an upgrade path for everyone, right, and they pushed out 8 pretty aggressively because of some of the security features in it.
Kevin: I’m thinking 8 will dwindle because 7 will be the one that the default installs of Vista will continue running for a long time. All of those companies installed Vista, wait a minute, what am I thinking of, there’s no companies that installed Vista (laughter), but if they did and they just locked it down and turned off auto updates 7 is what they’d be stuck on for a while.
Louis: Yeah, but again those updates, I don’t know, for a lot of home users those updates were pushed like it comes up as this is an important security update, it’s not like oh you might want to get the new IE. And someone was saying, I can’t remember where this was, it was on Twitter I think a couple of months back, but that IE 8 is gonna be the new IE 6.
Kevin: Right. Yeah, I think we covered that on the show.
Louis: You know if you look five years down the line we’ve got all these XP installs sitting around.
Kevin: Alright, so I’ll throw away my IE 6 one to make room for my IE 9 one.
Louis: There we go (laughter). You got a spare XP license that you can use IE 8 on.
Kevin: Yep. Speaking of browser releases, we got Firefox 4 just around the corner.
Louis: It’s coming up. I get a feeling Microsoft might have pushed a little bit hard to try and beat them to the punch on this one because it was initially they were both announced very, very close together.
Kevin: Yeah, and Firefox 4 slipped a little. And to be honest IE 9 came out earlier than I expected.
Louis: Yeah, I think for me anyway for my maybe slightly conspiracy theorist point of view I think they probably pushed it to try and beat Firefox 4’s release date. So, yeah, I’ve been running the Firefox 4 betas as my primary browser for quite some time, and they do keep getting better, they’re much faster than previous versions, gorgeous browsers.
Kevin: Yeah, I’m looking forward to giving it another try. I have to admit though I haven’t been following it as closely, like I didn’t check it out the moment the first beta release came out the way I did with IE 9.
Louis: Right. No, I definitely did, I mean Firefox is still my primary browser though, so I guess that’s the difference, you’re a Chrome user, right, or Safari?
Louis: Safari, right. So, yeah, I mean it’ll be interesting to see what the uptake of Firefox 4 is. They’ve put out I think fairly recently a page of demos, kind of I guess attempting to rival Microsoft’s sort of Beauty of the Web demo page; Mozilla’s put out something they call The Web O Wonder, except they’ve got a stupid pun in it because it’s The Web O-pen Wonder, so they’ve got this kind of Open Web pun in there which is really, really terrible. Anyway, it’s got this kind of old-timey carnival look to it. The one thing that’s interesting though is some of the demos are actually really, really good; the whole thing feels a little bit contrived and feels like they’re trying to me too, me too IE.
Kevin: Yeah. But everyone’s doing this, even Apple put out their HTML5 gallery before Safari 5 came out, and there was a controversy because most of the demos only worked in Safari 5.
Louis: Right, yeah.
Kevin: Or they put a browser check in front of it to say best experience with Safari 5 which kind of defeated the whole point.
Louis: One of the ones I saw just this morning as we were preparing for the show, so I guess these demos are being added gradually, the one that’s currently on the —
Kevin: This is the good thing about being in the same room I can actually see what Louis’ showing me on his screen here.
Louis: Yeah, the one that’s currently on the front page is something called The Letterheads.
Louis: Yeah. And the one that really impressed me this morning is this one which is called The Letter-Heads. So it’s got this sort of font.
Kevin: Oh, the light is following your mouse.
Louis: The light follows the mouse.
Kevin: I haven’t seen something follow your mouse since 1997.
Louis: (Laughs) so it’s got this text, “the letter-heads,” which is at the top and it’s rendered in some random font and you can see it’s selectable, so each of those letters has an independent —
Kevin: Man, there’s a lot of CSS behind that.
Louis: — CSS transform that’s rotating them slightly. But the really, really impressive bit is when you click on one of these two guys, all those letters rotate down and they use the text shadow to create like a silhouette of a person.
Kevin: A person.
Louis: Like a profile of a person’s head.
Kevin: His face just moved, now what the hell is that?
Louis: Aligning all of these —
Kevin: That’s not even a face, there’s something wrong with that guy’s nose.
Louis: It’s glasses and there’s a guy with a hat.
Kevin: Oh, that’s awesome!
Louis: And it’s all done with just these letters and like a very deep text shadow.
Kevin: You know, I’m beginning to think someone on the Mozilla team just spent the entire development cycle of Firefox 4 trying to figure out how to fit letters together to make faces.
Louis: (Laughs) this is why the browser’s late is because somebody spent the entire —
Kevin: We don’t have the demos! So click the lady, I want to see the lady faces.
Louis: It is very fascinating that they’ve managed —
Kevin: Oh, it made a sound.
Kevin: Okay, I need to try something here, I want to zoom in. Oh, wow, it even works zoomed in. I bet if you change the font size it would mess it up though (laughs).
Louis: Maybe. That’s one of the things that’s interesting is that with almost all browsers doing full page zooming I don’t even know where the option to change the font size is anymore.
Kevin: Yeah, exactly. Zoom text only, there we go, I’m gonna completely mess up Louis’ browser here. Alright, oh, the head’s getting bigger and the letters are falling out of the box, so that breaks.
Louis: There we go. You found a breaking point, congratulations Kev; I look forward to seeing the thread on Bugzilla associated with that bug.
Kevin: So this is cool.
Louis: Again, just a bunch of goofy demos.
Kevin: So in summary you think the idea of a gallery is a bit ‘me too’ but they’ve done well with their actual demos?
Louis: I think yeah, I think some of the demos are very impressive, I haven’t seen all of them; I saw the original ones that were posted when they first brought it out and there were only two or three there. There’s an interesting one here with some CSS, I don’t even know how this one works so I don’t even want to talk about it, but I can briefly show it to you; it’s doing some I’m assuming Canvas work on a video where it’s taking certain patterns in a video and replacing them with WebGL 3D elements, so you see there’s this video with this little thing.
Kevin: Oh, it’s augmented reality.
Louis: Yeah, and it’s putting in sort of a bouncing 3D ball.
Kevin: So it’s a video of someone pushing a piece of paper around a table with a pattern printed on it, but the browser is dynamically recognizing that pattern and making a basketball bounce now between the two pieces of paper in the video.
Louis: In 3D, that’s all rendered by the browser.
Kevin: That’s amazing.
Louis: And I think this is one of the things that’s interesting about browsers now, and this is gonna be more and more what we’re gonna see is browsers really starting to push the performance envelope up. This is fairly sophisticated 3D rendering happening in the browser at fairly high performance, it’s going to be really interesting to see what kind of web apps get built now that we have this kind of potential.
Kevin: What strikes me about this group of demos is that there’s a lot of creativity behind them; if I went back and looked at Apple’s HTML5 gallery that they put together for Safari 5, for example, it really was just about more or less showing off the technology, you know, they showed off 3D transforms by just putting up a wall of photos and letting you navigate that wall in 3D, and that to me would be perhaps the most obvious application of that feature that you could think of, whereas here they’ve obviously gone out of their way and gone what can we do with this new technology that will make people’s jaws drop in really unexpected ways.
Louis: But I think that might be just a consequence of the different — the way the platform works, right, I mean both Safari and IE 9 are corporate browsers, they’re put out by a company and these engineers are gonna be like alright let’s just put together a demo.
Kevin: So they’re doing it for the love you reckon.
Louis: Mozilla’s dealing with a much wider community, so as they’re working on it people will be like oh there’s new stuff in Mozilla, and because it’s such a big community that’s all working on the browser there’s bound to be these kind of crazy ideas come out of it.
Kevin: I love a crazy idea or two in my browser.
Louis: Absolutely. So, yeah, demos.mozilla.org, check it out if you want to see some of the browsers, and give the new Firefox beta a spin; I know Firefox gets a lot of hate these days from web developers who’ve all jumped ship to Chrome, but remember the early days, Firefox was there faithfully by your side providing web standard support when no one else did.
Kevin: I think I’ll check it out again. If it’s fast I’ll check it out.
Louis: Now everyone’s turned their back, it’s like where’s the love.
Kevin: Where is the love? From a desktop browser to a mobile browser, all of the iPhone and iPad users in the audience will know that they got IOS 4.3 in the past week, and the biggest new feature in this update, actually there’s a bunch of features, but for web developers the most interesting new feature is the addition of airplay video support to Mobile Safari. So the idea here is that if there is a video on a web page and you have an Apple TV at home you can open the web page on your phone or your iPad and go I want to play that video on my TV, and over your network it streams that video to your Apple TV and it shows up on the TV, real nice. The problem is there’s some confusion as to whether this feature is enabled by default or not on a video tag. So you put an HTML 5 video tag in the page, should that by default be airplay-able to your Apple TV, yes or no Louis?
Louis: So a quick disclaimer, I am not an iOS user nor am I an Apple —
Kevin: This is one of the places where Louis and I disagree.
Louis: I’m not an Apple TV user either; I have a Mac, that’s as far as I go into that realm.
Kevin: Let’s just say for example that you had a phone that worked well (laughter).
Louis: I have a phone that works well, it works really well.
Kevin: And it paired with your TV in a smooth and usable way.
Louis: Right, mine does that. I use VLC remote on my phone to control VLC on my computer which is my TV, but let’s put ourselves in this fantasy universe where I was an Apple user.
Kevin: Yeah, would you expect to be able to play videos on your TV by default?
Louis: I would say that yes I would. I have to say that that seems like —
Kevin: Do you think it’s right to even allow websites to block it?
Louis: Um, to block it. So I’m viewing a video on my phone but I don’t want someone to be able to view it on their television.
Kevin: Yeah, yeah, yeah.
Louis: Um, okay, alright, okay you could maybe let people block it; I mean I think it’s one of those things that any type of content protection or limitation is only going to hurt the content creator. So if some people want this and it’s what’s going to encourage them to use HTML5 video then that’s fine, go ahead do it, and then eventually you’ll break down because you’ll realize that there’s other competing sites that do a lot of this and that’s where people are gonna go.
Kevin: Maybe. My guess here is that Apple was influenced by what happened with Google TV where Google announced Google TV and said look it’ll be able to search and find all of the web video, you know, the clips of The Daily Show and the Comedy Central website, it’ll be able to find those and play them on your TV, and everyone was like this is awesome, I can’t wait to buy this! And by the time the device was actually released all of these sites that owned video content and were putting them on their website thinking, oh, well people will have to be sitting at their computer to watch this so they’ll still pay for cable, they’ll still watch the ads on their TV. They went oh crap we can’t have Google TV streaming our web videos so we’re gonna block it, and so all of the big video content providers in the U.S. had blocked Google TV by the time this device came out, and if Apple hadn’t provided this block mechanism —
Louis: So just providing me some background, have they provided a block mechanism or have they disabled it by default?
Kevin: This is the question. So in the betas of iOS 4.3 it was quite clearly blocked by default. You as a web developer had to tag your video as airplay-able with this proprietary attribute —
Louis: That is ridiculous and I’m never gonna do that.
x-webkit-airplay="allow". And some smarty pants web developer whose blog I’m on right now so I should really credit him, he’s @mathias on Twitter.
Louis: Oh, yeah alright, I follow him on Twitter.
Kevin: Yeah, he figured out that this attribute doesn’t actually have to be on the video tag when the page loads, he could just write a bookmarklet that dynamically adds that attribute to every video tag in the page and suddenly they become airplay-able. So he wrote this little bookmarklet and now he’s updated his post to say in the final released version of IOS 4.3 it seems to be on allowed by default. But if I go to the Apple documentation for this stuff it still says it’s disabled by default, so I would love to hear from an iPhone user who’s updated to IOS 4.3 who also has an Apple TV if they can test this for us I’d be much obliged. I’m very close, I’ve got everything but I’m not upgrading my iPhone to IOS 4.3 yet.
Louis: Right, right, right. So, it’s interesting to bring back the question about Google TV because it seems like that’s the kind of thing that how can I say this —
Kevin: It had such promise.
Louis: Well, okay, so what surprises me is from the content providers, right; so they’re sitting there being like okay people are watching our videos on the Net and we’re gonna put some ads on that and I’m happy with this content distribution model, right, I am making X dollars for X cost of bandwidth and that is satisfactory to my business model.
Kevin: Yes, as long as it doesn’t cannibalize our cable viewers (Laughs).
Louis: Well that’s ridiculous. That’s like you’re trying to prevent yourself from competing with yourself to find a better business model for your own business.
Kevin: Welcome to the high stakes world of 21st century media moguls. Yeah, it doesn’t make sense.
Louis: (Laughs) I can’t even grasp that.
Kevin: This is the logic that comes out of big companies that have different departments that compete with each other; even though it doesn’t matter which of those departments win as far as the company’s bottom line is concerned, in order to keep all their employees from fighting in the halls they’ve got to put these blocks in place. It really sucks for customers. Apple is always called, especially lately, they’ve been called repeatedly on the fact that they have made decisions in their platforms that harm the content providers, the developers; you know the tough review guidelines for the App Store, the sudden imposition of 30% fees on subscriptions being offered through the App Store. All these things are defended on the notion that Apple favors anything that benefits the users over anything else, and if it actually makes extra money for Apple in the meantime so much the better, but Apple always seems to take the sides of the users, so for them to switch this off by default seems counter to Apple’s character.
Louis: Right. I would tend to agree, I don’t think switching or making it disabled by default really makes any sense because that requires so much participation on behalf of a lot of content providers, and it’s not something where providing an app on an app store or finding music through iTunes is a clear revenue streams, so I’ll go the Apple route for that. But if all this is is providing the ability to play some of my content in a different format for some of my users who are using certain combinations of devices —
Kevin: Pay up buddy, that’s value right there, that’s value.
Louis: Yeah it seems like that’s device functionality it’s not website functionality.
Kevin: Alright. So we’re on a roll of segues here because we were just talking about —
Louis: We were just talking about platforms.
Kevin: — platforms. And Twitter is dismantling their platform it seems like.
Louis: Well, there’s debate about this. So, initially what they said, and I’m sure a lot of people are following this, there’s been a lot of discussion on Twitter, there was a blog post on sitepoint.com fairly recently by Craig Buckler saying that basically Twitter said they don’t recommend that people develop Twitter apps basically.
Louis: (Laughs) I mean it’s a pretty big bomb to drop on something for a platform that is essentially grown on the back of —
Kevin: I was talking to Alex Payne, the ex-API lead at Twitter on our #100 podcast, if you haven’t listened to it do check it out, but I was musing to him about the theories, the private theories I’d had about why he chose to leave Twitter; I think we’ve just found it because if I worked in the API team and I had put blood, sweat and tears into making Twitter something that existed beyond the company’s ability to create useful front-ends for it I’d be really upset by that.
Louis: Yeah, absolutely.
Kevin: But it’s not as bad as we think it is?
Louis: Well, see they’re waffling a little bit, so I think maybe somehow they didn’t expect the blowback, but basically their initial announcement was they don’t think developers should develop new Twitter clients.
Kevin: We’ve got all the fart apps, I’m sorry, we’ve got all the Twitter clients we need.
Louis: (Laughs) yeah, and then there’s been some back and forth conversation where he sort of says, one, is that they’re mainly concerned with the user experience, so this is kind of coming back to what you were talking about Apple is that they want a consistent user experience where everything has the same names, so if they say we’re favoriting a Tweet we don’t want someone else saying they’re starring it or bookmarking it, re-tweets don’t work consistently across clients, for example; that’s something that could be seen as —
Kevin: Whose fault is that? Twitter’s official client was one of the last clients to implement official re-tweets I have to say.
Louis: Anyway, let’s maybe not get into that can of worms.
Louis: So, and then basically Ryan Sarver, one of the guys from Twitter, comes back on Twitter and just said, posting on Twitter, some things like well we’re not saying that you can’t build Twitter apps, we’re not saying that —
Kevin: We’re just saying that we don’t want you to, go away.
Louis: (Laughs) no, actually what his exact words were we are just giving guidance that it’s not a good business.
Kevin: Oh, good long-term business.
Kevin: Golly. So that doesn’t make it a lot better.
Louis: It doesn’t make you hugely confident. And, again, they’ve waffled on a couple points of saying we’re talking about consumer clients, we’re not talking about like enterprise trend-watching things like Hootsuite or Seesmic where you’re kind of trying to get a general gist of the feedback about your company, they’re really talking about the straight up client apps; they’ve moved into that space and I guess I mean coming from it you can obviously see that what they’re thinking about here is we’re gonna need to monetize this at some point, that’s gonna mean we need to push ads, and the only way we can do that is by to some extent controlling the experience.
Kevin: So in my mind this, you know, the ticker has started counting down to the first feature that’s only available in quote/unquote official clients. That’s the writing on the wall that I read between the lines here, if I can mix my metaphors.
Louis: (Laughs) read between the lines of the writing on the wall.
Kevin: (Laughs) that’s what I’m sensing here is they’re saying here is you’re right, this is we’re going to need to make some changes in order to monetize this, and those changes are only gonna be able to happen in the official clients, at some point the unofficial clients, the API users, are gonna be left out in the cold. That will be a milestone day in the history of Twitter I think.
Louis: I think so. So there’s been, again, like a lot of follow-up on this, and in one sense it’s interesting, I mean Twitter has gone to quite a lot of effort lately to actually develop a series of native clients, whereas before they didn’t have any at all, now they’ve got — so their web app is pretty full-featured, got native clients on Mac, on Android, and on iOS.
Kevin: All of which they’ve bought.
Louis: Yeah, so I think they bought from Tweetie the whole entire thing.
Kevin: Man, if you zoom out and look at this from a very cynical 10,000 foot perspective, it looks diabolical (laughter); they released this free API platform and went go, go, it’s a free platform, create your products and you can earn a living, and they let the independent developers fight it out.
Louis: They bought the best one.
Kevin: Yeah, it was like a gladiator arena kind of situation and the winner they picked them out, they gave them the thumbs up, acquired them, said okay we’ve got all the clients we need now, thanks guys. Man!
Louis: (Laughs) but it’s I mean, again, to come back I just want to circle this back around because it’s interesting you say they created this free and open platform, but it does bring to the forefront the idea that there is no free and open platform on a permanent basis, right, none of these things can continue to exist.
Kevin: They’re just things waiting to be monetized.
Louis: They’re just, well, either that and if you look at for example the 37signals guys have said this for a long time, they say listen if you’re starting a web service that’s providing value to people, charge for it, and that’s don’t try and do this thing of providing a free service because you’re eventually gonna run into a wall where you’ll either need to turn away a lot of your users or just change your business model entirely. And if you look at I mean Delicious is one that’s come out very recently as Yahoo’s created some shockwaves there by creating a new verb they said they were gonna ‘sunset’ Delicious. And it really does raise the question of how much can you depend on these platforms, whether you’re an app developer building a paid Twitter app for iOS or Android, for example, or whether you’re a business or a blog and you’re posting all your links on Delicious or all your status updates on Twitter. You know a lot of people have started saying I’m gonna try and develop a hosted service to publish my own bookmarks and my own status updates and then just syndicate those out to these other services which exist as social networks but not necessarily as primary content publishing platforms; that stuff doesn’t really exist yet, it doesn’t exist in the way that WordPress kind of sort of I guess changed the blogging sphere from people doing it all on Blogger which was a controlled platform to something which you could just pop on your own server and then, oops, I got my own database, everything’s under my control. But I think it would be interesting; there’s been some talk about someone coming up with systems like that for bookmarking and for status updates.
Kevin: So is this a reminder of the power, the true meaning of Open Source that Twitter despite the fact that they call themselves open or they perpetuated that impression of being an open and free platform are now, you know, gradually step by step having to take those freedoms away, but if Twitter had been an Open Source with capital letters product where the code was published in the wild from day one we wouldn’t have these worries; if they wanted to do something with their business model that people didn’t like the community would fork it and move on. So this is why we don’t worry about this happening with WordPress because WordPress is Open Source.
Louis: Even if WordPress.com and Automattic decide to change their business model and up their prices or change their guidelines, even if they stop developing WordPress we’ve still got the community one that we can all use; I still own my data that’s in my database on my server. And I think it might be time for a lot of web developers to start looking at alternatives for these other things as well, we’ve started relying a lot on things like Twitter, and I think if you’re — I mean a lot of businesses are using Twitter as their, part of their voice, and it wouldn’t hurt to just publish those on your own status server on your own website and then just syndicate those out to Twitter, that doesn’t stop you from using a Twitter client to monitor replies, it doesn’t stop you from interacting with people on Twitter, but it does give you the ability to instantly move to a different platform if that time comes.
Kevin: Yeah, so a timely reminder of the difference between free as in beer, which is what Twitter is, versus free as in freedom which is what Open Source software like Firefox, like WordPress are. Because, yeah you’re right, all these sites that are using Twitter as their sign-up mechanisms; create an account using your Twitter login, create an account using your Facebook login, these are all ties into things that are free as in beer, for now.
Louis: Yeah. And so this brings us down to let’s continue segueing here, so if the choice, if free as in beer is not sustainable you know these services are eventually gonna need to either charge or go out of business or just change their business model.
Kevin: Ah, I see where you’re going with this. This is Delicious we’re talking about again.
Louis: Yeah, you have the option of either using your own Open Source free as in freedom software, or you can find a service that has a business model and just pay for software as a service; software as a service isn’t broken, like I mean using a non-free platform for project management like if you’re using Basecamp no one would say that’s a great risk because these people are a profitable business and you’re paying for the service.
Kevin: Exactly, and on the day that it was rumored that Delicious was going under I remember we covered that here on the Podcast, a business that was profitable though modest in size suddenly got a little bigger, a lot bigger in fact, and we’re talking about Pinboard, so yeah, what was the date here, December 16th Yahoo had their all-hands meeting and the slides from that meeting leaked out onto the Web and included in those slides was mentioned that the Delicious service among others would be ‘sunseted’ meaning quietly let out to pasture, don’t come back now, there’s no food for you here.
Louis: Be old-yeller-ed, I’d love to see that be the next verb for — (Laughter).
Kevin: And as we discussed it here on the show there were several sort of heir apparents, and one of them was Diigo which SitePoint Podcast co-host Patrick O’Keefe is quite familiar with and enjoys, but if all you really wanted, like Diigo is quite a feature-ful thing, if all you really wanted was a place to store your bookmarks in a trusted place online, with tags but not necessarily all of these social networking features that you get with the other services, the one that people were moving to was Pinboard which advertises itself as anti-social bookmarking, it’s at Pinboard.in, so Pinboard in, and all of the web geeks the first thing they did when they read the news about Delicious potentially going under was they went over to Pinboard and created a paid account. The reason the created a paid account is there is no other kind at Pinboard, Pinboard is a paid for service; we discussed it on the show before but their model is they charge a little more for every additional user, so their first user account was one cent, their 100th user account was two cents, and so on, so I think it is every hundred users they increase their price. But it’s all on the blog there to read, it’s really interesting, and it’s kind of a self-throttling thing that the more users they have to support the more money they’re making for each additional user because it’s harder to support every additional user.
Louis: The scalability issues are sort of built into the pricing model, right.
Kevin: And at the same time it’s an incentive to get in there quick and get a cheap account. So this new blog post that just came out this week on the Pinboard blog is kind of a post mortem, although I’m not sure that’s the right term because the service actually survived the spike quite well, but of the spike that came as a result of that there’s this massive graph showing them the week before the Delicious announcement they’re having quite low-levels, looks like about 100 on the scale there, and then on the day of the announcement their traffic spiked to over 2,500; I don’t know if that’s page use or active visitors or what but it gives you an idea of scale there. And it was massive and it lasted for most of the rest of that week as people quickly moved over there. I remember having been involved in that, they had to, I think they had to shut down sign-ups for a brief period, but this post mortem sort of covers everything that was going on behind the scenes. First of all the two guys that run this it’s a hobby, they did it in their spare time, so they were just arriving at work when it hit, and they talk about the fact their Twitter streams were moving quicker than they could read and their email inboxes, the beeps about new emails blended into a single continuous tone.
Louis: (Laughs) right.
Kevin: But they had some good luck which was that the Pinboard site was hosted on a collection of servers that was also hosting a site called Bedbug Registry that they put together a few years earlier to talk about bedbug infestations in major U.S. cities, and there had been a similar size spike when all of the CNN’s were covering that as their news story of the week a couple years before. They talk about how this actually turned out to be a great dress rehearsal for the near-sinking of Pinboard this year, and they were actually pretty well set up to weather the storm; they had really beefy servers, he says they were over-provisioned on hardware mainly because they were too lazy after solving the problems of the summer of the bug, they call it, they never got around to reducing their hardware again after that, so they were paying for big servers they didn’t need until that day when they did.
Louis: That’s how you know you live in an era of cheap hardware (laughs); people just leave it running because they can’t be bothered shutting it down or re-architecting.
Kevin: So he goes on to talk about the one problem they had though came with MySQL writes, so there’s a big MySQL database behind the scenes that is keeping track of everyone’s bookmarks, and the bad news is he says, I’m quoting here, “It had never occurred to me to test the database under write load,” so he pictured a lot of people coming reading the site, but coming and filling it with your bookmarks which is exactly what happens when tens of thousands of people show up wanting to import their Delicious accounts.
Louis: They have an import option.
Kevin: They did.
Louis: So we’re talking big writes here.
Kevin: Big writes. So I remember, now as I’m reading this I remember exactly what happened, they were able to continue taking sign-ups to their paid account the whole time, they never had to as he puts it, “We never had to get in the way of people giving us money,” but their import feature they had to take offline for several periods, so when you went you signed in, you create your account, then you went to the I want to import my Delicious account and it said we’re overwhelmed (Laughs), you can put in your Delicious account name here but it might be a week before we get around to spidering it, and that’s what happened, they ended up having to throttle it.
Louis: I think that’s one of those situations that’s always gonna be kind of hard to deal with because write is comparatively slow no matter what system you’re dealing with, and just having a system that can scale to that much writing is it’ll be able to handle ten times that much reading which you don’t need.
Kevin: In most cases I’d say that’s true, but if your service is anti-social bookmarking what do you do more create bookmarks or use bookmarks?
Louis: Fair enough. Is it something that, okay, so here’s an interesting thought, so when they say anti-social bookmarking does that mean that you can’t see other people’s bookmarks?
Kevin: Initially that was the case. It means that those social features are not their development priority; they’ve been gradually adding them as people demanded them, but yeah, it’s interesting. I’d say the majority of people at least before this day who were using Pinboard probably didn’t share their bookmarks with anyone.
Louis: But I guess there’s also a difference between sort of adding one bookmark at a time which is a fairly quick operation and importing a massive list of bookmarks which will be inserting a ton of records simultaneously, it’s gonna be a much different question in terms of load.
Kevin: Yep. So it’s a great story, if you’re one of those people like me who loves reading stories from the trenches, you know, the worst nightmares of web developers come true, the things where you can sit there and go I’m glad it wasn’t me, this is a great story like that; there’s lots of pretty graphs, there’s a graph here of the over time the average delay that people had to wait for their bookmarks to be imported.
Louis: Does that graph go up to 600 minutes; is that what I’m seeing?
Kevin: 600 minutes. So in a worse case scenario you had to wait 600 minutes for your stuff to be imported.
Louis: That’s pretty serious.
Kevin: 600 minutes, that’s what?
Louis: Come on, you need a calculator for that (laughs)?
Kevin: That’s ten hours, ten hours, not bad.
Louis: Kev breaks out the calculator to divide 600 by 60, a clear indication that we’ve come to rely far too much on our electronic devices (laughter).
Kevin: So how did we get into this? We were talking about paid versus unpaid.
Louis: Yeah, so to me it seems like if you’re willing to pay for a service, great, if you’re not willing to pay for a service you shouldn’t rely on a free service.
Kevin: Or you shouldn’t expect to be able to rely on them indefinitely, yeah.
Louis: Indefinitely, yeah. If you’ve got contingency plans and you know that you can get your data out and you’re making backups and you’ve got a contingency plan to go to something else, but yeah, personally as far as I’m concerned my Delicious backup what I’m going to do when I get around to it is I’m gonna use WordPress, I’m gonna create a category, a custom post type, in WordPress that will be bookmarks, and I’ll create a page that displays them and just use the WordPress bookmarklet.
Kevin: And you can mark them as private if you don’t want to share them.
Kevin: Oh Louis, you’re a do-it-yourself-er true and true.
Louis: And, again, I’m gonna look into coming up with a similar solution for status updates.
Kevin: May I recommend our next SitePoint book, the practical example that is tackled in it, be a Delicious clone.
Louis: Maybe we’ll do that, yeah. We don’t have any kind of — although we will have a developery book towards I guess the end of this year, so —
Kevin: Shh, it’s a secret.
Louis: It’s a secret, I know we’re not telling anyone, but I didn’t say anything more than developery, I don’t think anyone will give me a hard time about that. Alright.
Kevin: Alright, so that’s a show, plenty of news but I think we dug into it nice and deep, thanks for that Louis.
Louis: No worries.
Kevin: It’s time for our host spotlights, so Louis this is your first host spotlight if I’m not mistaken.
Louis: I know; it’s a great challenge.
Louis: The pressure has weighed heavy on my shoulders thinking of a host spotlight, but I came up with something actually that I blogged about last week on the SitePoint.com blog.
Kevin: Alright, nice and fresh.
Kevin: Yeah, a friend of the show.
Louis: Exactly. And that can be very useful in terms of performance, as we were talking about, but it can also be useful in terms of conditionally loading scripts, and this is one of the things that YepNope is particularly good at, it’s even in the name YepNope; the way it works is you just call this function yepnope(), you give it a test which will return true or false, and then you’ve got a yep property which will be what it will load if that test is true, and a nope property which is what it will load if that test is false.
Kevin: So to preload a bunch of images for your rounded corners.
Kevin: That’s wicked.
Louis: Which is great.
Louis: Exactly. And that can be a — if you’re talking about polyfilling something fairly complicated like range or CSS 3 columns or date pickers for example.
Louis: So rather than writing for example a special class on the input that you want to be a date picker you just use the date picker, you use
Kevin: Seems like there’s always a better way to do everything on the Web, it’s what makes it so exciting to work on the Web is everyday you can wake up and everything you know is obsolete (laughter).
Kevin: Yeah, that’s an important point.
Kevin: Yep. I should say YepNope.
Louis: (Laughs) so people should go to yepnopejs.com for that, and if you want to see it integrated into Modernizr if you go to the Modernizr website the current download doesn’t have it, but what you have to do is click through to the custom Modernizr build, so the bottom of that sidebar, create a custom Modernizr build and that’s the preview of the beta and it includes YepNope and it aliases it to Modernizr.load, so if you’re not comfortable using this kind of cheeky —
Kevin: Hacksor speak.
Louis: — YepNope you can just call Modernizr.load and it will call exactly the same function.
Kevin: Alright. That was a pretty good first spotlight, went a little long I have to say. Let me show you how it’s done: my spotlight this week is Open Source Ampersands, which is at opensourceampersands.com, this is a little site put together by Mark Pilgrim whose name you might know from his dive into Python and dive into HTML 5 free online books. Well this is a little site with a whole bunch of ampersands on it, and he’s gone out and tried to find as many different ampersands, if you don’t know what an ampersand is it’s what you get when you hold down shift and hit 7 on a U.S. keyboard; it’s that symbol that means ‘and’, and you use it if you want to be trendy in your titles, so Louis & Kev, you might use an ampersand instead of spelling out ‘and’. Well, there’s this popular style guide that was written that said what you should do is use the best available ampersand whenever you’re designing stuff, so you might’ve picked the font to use in all of the titles on your site, but if you really want to go the extra mile with your design you should check what its ampersand looks like, because probably it looks like bum (laughter).
Louis: A lot of web fonts have admittedly pretty terrible looking ampersands.
Kevin: A lot of fonts have really bad ampersands, and especially —
Louis: And there are really, really nice well designed ones out there.
Kevin: And often they are hidden in the italic version of the font, this is what I was telling you about, you might have straight titles but the italic version of that same font has a really beautifully designed frilly ampersand, and if you want to be an elite designer what you should do is detect the ampersand in your title and style it specifically as italic so you get that beautiful ampersand. So this was the advice back in 2008, so now here in 2011 we have web fonts, and the idea is you don’t have to just worry about the ampersands that are built in to your browser’s base set of fonts, you can go out there and pick from all the different ampersands in all the different freely available web fonts, and that’s what Mark Pilgrim has amassed here; he’s found all the free web fonts he could find and pulled out just the ampersand and created single character font files.
Louis: Right, so those would be pretty small.
Kevin: These are tiny font files, they’re compatible with all the current browsers that can embed fonts, and all you have to do is come on to opensourceampersands.com and decide which ampersand best fits your site or the title that you’re trying to style and you pick out that one character, download that font and use it in your style sheet, and you can get some really amazing results.
Louis: I have to say some of these do look really impressive, I mean going beyond the standard design of an ampersand and you can frill it up a little bit, but then some of these have gone really, really above and beyond; there’s one near the top there, the first one on the second row.
Kevin: Oh, yeah, it’s pretty.
Louis: I really like it’s got a lot of extra detail thrown in there.
Kevin: Very Celtic.
Louis: And there’s ones that look more like what you would do hand drawn because no one can draw an ampersand by hand (laughter), so a lot of people just do the little like scribbly E with lines above it.
Kevin: It almost looks like a treble clef like you’d get in a musical notation. Very nice.
Louis: So there are some really gorgeous ones, and again, the files required can be really small because it’s just a one-character font, so no harm.
Kevin: Yep. Well, that’s it for the SitePoint Podcast this week. Looking forward to hearing from our long lost co-hosts, I hope they make it through South by Southwest unscathed.
Louis: So far so good, by the time anyone listens to this it’ll be over I think.
Kevin: Done and dusted.
Louis: But you notice as South by Southwest goes by the first few days your Twitter stream is completely flooded with South by tweets, and then it gradually drops off; I don’t know if it’s people’s phones are dying, people forget to charge their devices.
Kevin: Yeah, it drops off, and then about a day later you get people regaining consciousness going oh what happened (laughter).
Louis: So it’s interesting, we’ve kind of lost touch with half of the Web world, but it’ll be good to have them all back.
Kevin: Alright. So Louis is the head technical editor here at SitePoint, you can follow him on Twitter @rssaddict, and I am Kevin Yank, you can follow me on Twitter @sentience, you can follow SitePoint on Twitter @sitepointdotcom, that’s SitePoint d o t c o m. Visit us at Sitepoint.com/podcast to leave comments on this show and to subscribe to receive every show automatically. The SitePoint Podcast this week is produced by Carl Longnecker, bye, bye!
Theme music by Mike Mella.
Thanks for listening! Feel free to let us know how we’re doing, or to continue the discussion, using the comments field below.