The Google vs Amazon Platform Rant – A Must-Read From Steve Yegge

Google logo

What does Amazon.com do so much better than Google? And why does Amazon do everything “wrong” while Google does everything “right”… yet offer a better platform? How should you construct a “platform” so that everyone can use it?

If you are a developer, IT manager, product manager, system architect, product marketer, CTO or even a CEO, you really need to take a bit to read this “Mother of all Reply-All failures” that was written by Googler Steve Yegge and accidentally posted publicly back on October 12th. Steve pulled down his own posting of the rant, but it was re-posted to Google+ by Rip Rowan and also posted over to Hacker News. The long rant – and the comments on both sites – are worth a read:

It’s a LONG piece that gives some fascinating insight into both Amazon and Google as companies, but also into what it takes to be a “platform”.

A bit later, on October 21st, Steve Yegge posted an update indicating that he did not get fired and in fact people actually listened within Google. He also dove a bit more into Amazon.com and Jeff Bezos. And just this week he wrote a lengthy piece describing how amazing it is to work at Google, explaining a bit more about what he meant in his rant about how Google “does everything right”.

The original platform rant, though, should definitely be on a “must-read” list for people thinking about how their services could really be a “platform”…

P.S. Are we connected on Google+? If not, you can find my Google+ profile and add me to a circle…

Vim is 20 Years Old Today!

Amazing to read via Ars Technica that Vim is 20 years old today! In the proverbial “vi vs emacs” religious war, I’ve always come down firmly on the side of vi/vim…. but mainly because I started using vi 25+ years ago back in the mid-1980s when vi represented a quantum leap forward from “ed” and “ex”! πŸ™‚

I climbed the steep learning curve for vi/vim many years ago, wrote my .vimrc macros and continue to use it extensively even today. Of course, today on my Mac and Linux systems I’m using vim vs. actual “vi”.

The Ars Technica article has a great history of Vim and is well worth a read for those who use vim as their editor-of-choice. (And even for those who don’t…)

Vim

All Mobile Apps Developers (iOS, Android, Windows, Blackberry, etc.) Need To Read Troy Hunt’s Post

As I mentioned on my Disruptive Telephony blog today, this post by Troy Hunt really should be mandatory reading for anyone developing applications for mobile platforms:

Secret iOS business; what you don’t know about your apps

Yes, his post is about Apple’s iOS, but I’m unfortunately rather confident that the results would be similar if someone were to do a similar analysis with a proxy server on apps on Android, Blackberry, Windows Phone 7, WebOS and any other mobile platform.

These are application design problems.

As programmers, we all take “short cuts” from time to time… I’m as guilty of that as anyone… but sometimes those shortcuts have grave consequences.

Mobile developers need to read Troy’s piece… and then look at their own apps and see how they can change. Actions like:

  1. Securing the transport of login credentials! (DUH!!!)
  2. Not stuffing giant images down onto mobile devices when those images are going to be restyled in HTML to be tiny.
  3. Being wary about what info is gathered by apps – and also disclosing that to customers (and perhaps offering a way to opt out).

The list can go on… Troy’s article has other ideas in it, too… but the point is that in the rush to get a mobile app out there, some of these security and privacy issues (and bandwidth costs!) really do need some attention!

R.I.P. Dennis Ritchie, half of the K&R Bible for C Programming

KandR CProgrammingLang

For those of us of a certain age, “The C Programming Language“, written by Brian W. Kernighan and Dennis M. Ritchie, was our “bible” as we learned to program in those very early days. Our copies of “K&R“, as many of us referred to it, got quite dog-eared and marked up as we used it to figure out this whole new world of “C”. It was an exciting time and a critical book to have.

Many of us, in fact, probably still have that book… the image accompanying this post is my copy that I pulled off of a bookshelf a few moments ago.

Today many of us learned that Dennis M. Ritchie, the co-author of that book and indeed the inventor of the C Language, passed away recently after a long illness.

While many of us stopped programming in C years ago (although many still do), it was the language that got many of us started in “serious” work… and also that formed the background of UNIX as well.

On that note, I had quite honestly forgotten over the years Dennis Ritchie’s role in the creation of UNIX, but as has been noted in many articles today it was he and Ken Thompson that started it all. Here’s a great video from the Bell Labs days showing both Thompson and Ritchie:

R.I.P. dmr!


UPDATE: A couple of other nice tributes:


Remember Perl? RWW Highlights the Future of Perl 5

Perl org

Remember perl? The “scripting language” that was the one of the first that many of us used on UNIX to automate system administration tasks? And then was later used in the 1990s for a ton of web CGI programming and so much more? And that we could have so much fun with created “obfuscated” programs that looked like gobbledegook but actually did something useful?

I don’t hear much at all about perl these days… and my perception is that many folks are like me in that they moved on from perl to other scripting languages like python, JavaScript, Ruby, PHP and more.

So when ReadWrite Web published article “A Look at the Future of Perl 5.16 and Beyond“, I had to look out of perhaps morbid curiosity… “you mean, people still use perl?”

The slide set from Jesse Vincent embedded in the RWW article is interesting in that it does show the good amount of work being done by the perl faithful to bring more stability and progress to the perl language.

I commend them all for the work… it looks like really good things are happening. Is it enough to make me personally return to working with perl? Probably not, to be honest… but for the sake of all those people who still work with perl… and for people looking for a great multi-purpose programming language with deep roots and a huge base of documentation and usage… it’s good to see the language evolving again!

How To Create Github-style “Fork Me” Ribbons Using Only CSS

Githubribbons

Can you create a “Fork Me On Github” ribbon using only CSS? And have it say some other message?

That was the question I asked myself while working on a new website (for the new job). You see, the new website is going to go online in a “preview” mode and I wanted some way to very clearly indicate to visitors that the site is still in development. I’ve seen the Github ribbons on many project sites and thought this might be a great way to do the kind of marking that I want to do.

The problem is that the “official” Github Ribbons are simply images that are overlaid on your site using absolute positioning in CSS.

With an image, of course, I can’t modify the text to have my own message. And while the PSD files are available for the ribbons, I didn’t want to get into modifying images.

I figured with the modern browsers we have I ought to somehow be able to do this using plain old text and Cascading Style Sheets.

Thankfully, I found out that Daniel Perez Alvarez had already done this with a wonderful walk-through:

He steps right through the process showing you exactly what you need to do in CSS to approximate the images.

John Balogh from Mozilla wrote a similar post a bit earlier with a slightly different recipe:

Both posts were helpful to me in learning more about how you can manipulate text using CSS.

Of course, the question is…

WILL THIS WORK IN MANY BROWSERS?

Daniel Perez Alvarez includes a table at the end of his post showing which browsers would support this technique as of when he wrote the post in October 2009. I’d like to hope that two years later more browsers will support these techniques… but then again, there are still people out there using IE6 so we can’t expect newer browsers to be widely deployed.

Still, for the target audience for my new website I’m going to expect many of the users will be using newer browsers – and I’m going to see what I can do to make it degrade gracefully (as in, not appear) for older browsers.

My ribbon looks great… and no, I can’t show it to you yet. πŸ˜‰

Thanks to both Daniel Perez Alvarez and John Balogh for posting their tutorials online.

Amusing Video Tutorial: Let’s Suck at Github Together

If you want to learn more about using git and Github, or are a fan/user of git/Github (as I am) and want to pass along a video tutorial for others to see, you may enjoy this episode from Chris Coyier entitled “CSS-Tricks #101: Let’s Suck at GitHub Together“. As you can tell from the title, Chris doesn’t mind poking some fun at his own abilities – and his own aversion to the command-line and preference for GUI utilities.

For me personally, I’m rather “old skool” and typically prefer the command-line, but I appreciate that many people don’t… and I enjoyed Chris’ entertaining episode. Sure, as some commenters noted, there were a few minor inaccuracies/faults… but overall it did the job well in helping introduce people to what git and Github together can do. I can’t embed the video here, but if you click on the image below you’ll be taken to his site where you can view the episode…

Csstricks github video

And if you are over on Github, you can follow me there as github.com/danyork.

Want To Help Guide Git’s Development? Take the 2011 Git Users’s Survey!

Git logoDo you use the git version control system? If so, do you wish it worked a bit differently? Or did you find it hard to use in some way? If you don’t, did you try to start using it and found it difficult to understand?

If you are a git user in any way (or are trying to be), the Git community is LOOKING FOR YOUR INPUT in the Git User’s Survey 2011 at the address:

http://tinyurl.com/GitSurvey2011

As the main page of the Git community wiki asks:

Please devote a few minutes of your time to fill out the simple questionnaire; it’ll help the Git community understand your needs, what you like about Git (and what you don’t), and overall help us improve it.

The survey runs from now through October 3rd and the results will be posted on the Git wiki.

Being a git fan and user I did complete the survey which, true to the notice, did only take a few minutes to complete. As more of a “casual” user of git in that I use it for a variety of projects but don’t live in it as a full-time developer might, I actually found the survey quite educational in that I found names of a whole number of projects I want to explore.

If you do use git and have a few minutes, the folks behind Git would love your input!

oXygen’s Excellent Example of a Release Timeline / ChangeLog Page

As I was recently downloading a new version of the excellent oXygen XML editor (which I used to write my “Migrating Apps to IPv6” book for O’Reilly), I was struck by how great their Release Timeline” page is. It’s truly a thing of beauty. You can easily see release dates for every major release going back to the beginning of the product (well, okay, they’ve collapsed some of the early 1.x, 2.x, 3.x, etc. releases) and with a single click on the release number can see the release notes for that particular version.

OXygenreleasetimeline

Kudos to the oXygen team for making it so easy to get to this kind of information!

Node.js Knockout Contest Coming Up August 27 – Will You Compete?

NodejsknockoutDo you know Node.js? If so, have you thought about joining the Node.js Knockout contest starting on August 27th?

It’s basically a 48-hour contest to see which team can create the most awesome Node.js application, as decided by a panel of judges. The contest rules explain all the details and as I write this post there are 321 teams entered in this year’s event. Teams can be virtual – and some are gathering in various locations around the world to hack in the same physical place. There is apparently still room to sign up, although it’s closing soon (8/20).

While I’m not personally joining this year, I’m looking forward to seeing what these teams come up with. It should be fun to see!

P.S. In full disclosure, I should note that Tropo.com, one of the services of my employer, Voxeo, is one of the sponsors of the Node.js Knockout.