Extremes

Imagine the best cake you’ve ever had, or could ever hope to have. I am talking about a really nice, moist, chocolate cake. How could you describe this cake? I don’t mean words that express opinion, like “delicious”, I mean, words that express fact. Could we say “brown”, for instance. That would be factually correct. We could say sweet, I am sure everyone would agree to that. Could we say “salty”? Could we say “bitter”? If this is the best cake you’ve ever had, you would likely not use those words. But the fact is, this cake has salt in it, which is salty. It has baking powder in it, too, and that is quite bitter. Why don’t we use “salty” and “bitter” to describe the cake? 

I am quite confident that if I made a cake and left out these undesirable ingredients, like salt and baking powder, you would certainly miss them. Your brain would say “the bad ingredients are gone”, but your mouth would probably want to spit out this cake. If “sweet” is our goal in making a great cake, why not double or triple the sugar that goes in? Wouldn’t that be sweeter than our best-ever, only “sweet” cake? Logically, creating the best cake would mean cranking up the positive qualities and eliminating the negative ones. So why does this super sweet cake taste so bad?

The truth in nearly ever situation is closer to the middle of the road than to the extremes. Everywhere we look today, we see extreme behaviour, extreme dress, extreme music, extreme entertainment, extreme media, extreme ideas and beliefs.  Adopting a stance at either end of a spectrum almost certainly always leads away from reality, whatever that might be. 

One of my least favorite examples of extremeness is in the media. Today, we have very few men and women of dignity and class to deliver facts to us, instead, we have “pundits”. And what exactly is a pundit? It’s a term from many years ago that means one who has membership in a scholarly field. But you would not understand that by watching TV or clips on YouTube. Today, the word pundit means one who talks louder than everyone else and has views that are extreme. Of course, these brash men and women on TV who talk over one another to pound an extreme point of view are entertaining, and that is because they belong to a realm of fantasy, not fact. No matter what your political viewpoint is, we love watching pundits, because they are easy to classify as heros and villains. Is Keith Olbermann arriving on his white horse to untie the girl helplessly tied to the train tracks by Glenn Beck and Bill O’Reilly?  Or maybe it’s your point of view that Ann Coulter is the voice of reason, while Jon Stewart preaches to the stoners. 

Whoever you cheer for, you are cheering for nothing more than a news channel version of the WWF.

Each one of these pundits has an agenda, and that agenda is not right-wing or left-wing, conservative or liberal. It is an agenda of extremes. That is the real battle. Glenn Beck compared Obama to Hitler during the 2008 election, that’s quite extreme, isn’t it? Keith Olbermann almost nightly called for the the arrest of Bush, using his well-worn thesaurus. It seemed extreme. 

You think, “no one actually gets the news from these people”. You could be right, but based on what I have seen, this is less and less the case. I don’t see too many Peter Mansbridge Facebook fan pages, but I’ve seen plenty of Internet love/hate for the pundits. ( Can you imagine Peter Mansbridge yelling at a guest or mocking them opening? Neither can I. )

Extremeness doesn’t end there, I only wish it did. Every single aspect of life has been touched by the absolute adoption of extreme points of view. From extreme views on religion to extreme views on healthcare, extreme views on parenting to extreme views on political issues, we all seem to be a slave to the pendulum that swings from “truth” to “truth”, and that pendulum can’t seem to fly fast enough through equilibrium.  

Religion is a fun battleground, where we can find extremes of every kind. Atheists want to put their stock into the “big bang theory” and quantum physics that is so abstract, it doesn’t resemble anything we are familiar with in the physical world at all, while looking down their noses at anyone who believes in “flying spaghetti monsters”. On the other side, we have extreme Christian groups who protest the funerals of soldiers, stating that the United States is being punished for the sins of the nation, turning solemn and private family mourning into a stage for extreme beliefs. Is it our of the realm of possibility that the truth of religious matters most likely lies somewhere between the extremes? 

Being a parent of soon to be two kids, I am constantly given parenting advice, and 99% of it is unsolicited. I have found the people who want to constantly give you advice are no different than news channel pundits. They are the loudest and have the most extreme opinions that fly to both ends of the spectrum. I’ve had people tell me how to do everything: eating, sleeping, playing, learning, dressing and so on. Couldn’t the truth of the situation be that every parent and child is different, and that the unique responsibility of parenting that unique child is the sole responsibility of the parent? No matter the intentions of friends, family, nurses and the general population, if you give me advice that seems extreme, you can be sure I will not heed it. 

Everyone needs to ultimately decide for themselves how they will live life, but next time you find yourself looking through a rack of clothes that look like they belong to Lady Gaga’s backup dancers, think of that cake made only with sugar. 

Monday, June 28, 2010 — 1 note   ()

The Web Sucks?

I kept seeing this link being passed around on twitter attached to phrases like “the death of the web” and “why web browsers suck”. I took the bait and read the post, and what I read was amazing, I’m just speechless. 

After posting a comment or 2 on the site, and even getting a rebuttal that only further confused me, I decided I have to write a proper response. 

Mostly what I want to say focusses on these 3 points:

  1. Browsers aren’t perfect, but they are certainly worth developing for. In fact, web development is probably one of the better environments for getting the most eyes on your idea. 
  2. Tools and techniques that developers use to build web applications are actually pretty good. The web is “rich” as far as I can use that term without feeling the sting of vomit in my throat. 
  3. The web is not dead. Browsers are not dead. Mobile applications are filling a niche, but they are not going to replace the web by even the wildest stretch of the imagination. Full disclosure: I am addicted to my iPhone.

So let’s begin…

The web as an application platform stinks, and I think this is even more apparent now as we see incredible iPad apps being released. Why are iPad apps, in their initial versions, so much better than websites that have existed for years?

When I started writing this post last week, it was going to declare the end of the web. I’m not quite ready to call it dead, but it’s on thin ice.

Nearly everything, with a few exceptions, that was ready to go on the iPad at launch could fit into one of two categories: Re-factored iPhone apps, and HTML5 websites, optimized for the iPad. To compare websites from years ago to the latest release of iPad apps is like comparing a 1980 BMW to one that just rolled off the factory floor. New techniques and frameworks are being developed for the web all the time. To say that today’s apps, mobile, web or otherwise, are better than apps from years ago sound like the work of Captain Obvious to me. Not only that, but to point out that they are “so much better” is just one opinion, and not even a very qualified one. Better how?

The next part of the post is probably the one I thought was the least thought out part of the post, this sounds like it was written by a non-developer:

The web is great as a generic platform for consuming flat, static content, but isn’t good for anything rich.

Seriously, what does that mean, “rich”?

  • AJAX is just a band-aid to make a platform that is based around page refreshes feel more interactive.

Oh AJAX, you are back from the buzzword graveyard. How have you been? 

To call AJAX a “band-aid” show’s a pretty basic misunderstanding of the HTTP protocol (yes, I know the ‘P’ is for protocol). To blame the browser for the protocol’s design is to blame fish for having gills. Sure, it would be better if they could just breathe air like the rest of us, but the fact that they live in the water is a problem. What one person calls a band-aid, another might call a solution or at least an alternative to page refreshing. Does it work? Yes. Is it hard to implement? No. Is it widely accepted as a standard? Yup. I mean, I would rather fly everywhere I went, but that doesn’t mean the my car is a “band-aid”.

  • Java and Flash are yet more band-aids to make the web feel fluid. But remember that feeling you get when you hit a page with Java on it? Gross.

Sure, no one likes a plugin. Like Steve says, they slow you down. They aren’t my personal favourite, but I am not hating them. They definitely had their place, maybe you’ve heard of YouTube, probably one of the biggest reasons every computer in the world has Flash installed. 

Are these frameworks past their prime? Who knows. I don’t develop for them, but that doesn’t mean anything about the people who do. Flash was (and sort of still is) the way to get sound and video into your website. You can do a lot of cool stuff in flash, and maybe iPad and iPhone users won’t be able to see that stuff, but a lot of other people will. Think of all of the iPad apps that Linux users will never see. Oh, hello there, paradox!

  • Web applications don’t have threading, GPU acceleration, drag and drop, copy and paste of rich media, true offline access, or persistence. Are you kidding me? Gmail only recently added inline images (and it’s super buggy).

I think this point is my favourite, because it’s also the most absurd. 

I wonder if the average user out there knows what threading is. Do you demand threading in all of your applications? Threading, to the average person, means, if part of your application starts acting funny, you can close that without closing the entire thing. It also means, you can do more than one thing at a time. Wouldn’t a browser tab then qualify as threading? If a website is acting funny in a tab, I can close it. Also, I can load something in one tab without affecting the other tab. Those browsers ain’t so bad after all. 

GPU acceleration is not a web problem. It’s a hardware problem. If it doesn’t come with your device, you don’t have it. So to say a web app doesn’t have GPU acceleration is like saying my car doesn’t have a banana plantation, it wasn’t even an option from the dealer. Sometimes a guy just wants a fresh banana while driving, you know? 

Drag & drop? We’ve had that for a while now on the web, I was experimenting with dragable div’s in the 90s. We don’t see them that often in webapps, why, I don’t know… but go open Gmail and try dragging and dropping some emails around. 

Copy and paste of rich media, which I assume means video and audio. Go here http://www.indabamusic.com/ and check that out. Amazing. 

True offline access? I think he’s right, we only have the fake offline access. I have the same problem with my lamp though, I want true offline electricity, but the dang thing demands to be plugged in to work. Besides this being absurd, anyone with a smartphone will tell you, if they don’t have connectivity it’s because they don’t want it. Between the iPad 3G, iPhone, iPhone tethering, MiFi, all sorts of wireless carrier cards, rocket sticks and the like, we can be on the internet whenever we want. If you can’t get on, you’d better check the news because there was probably a disaster in your area. 

  • Web based email broke the mailto, one of the most basic commands for creating an email message.

How dare they! The mailto link was my favourite source for gathering address for my spam lists! Besides, it’s not even entirely true

  • Developer tools for native apps are better than web tools. XCode and Interface Builder are phenomenal. So is Visual Studio on the PC. On the web, people still use plain text editors.

Totally. Only nerds use text editors! Real developers like pre-built widgets that make your app look like every other single app out there. Also, I find that machine generated code so easy to work with. 

I actually have no idea what the point of this is. There are a lot of great tools out there for building and debugging web apps. Even if you have never seen one, you have to believe that people are using something because look at how many web apps there are. Are they all written by people in basements who never see the sun and argue VI versus EMACS? Yup, some of them. But not all of them. Tools are totally the preference of the developer, and I only judge an app by the end result. I know what I use, and I’ve never felt limited by my tools. 

And then suddenly, the post took a left turn…

People are using apps more because the experience is much better. We will see a decline in web traffic and search in the coming years.

Oh. So browsers suck, the web sucks, and now search is dead? Man, this is turning out to be a bummer of a day.

  • People use web search today because they don’t know how else to find high quality information. The web is a mess of content with no organization. On an iPhone, I launch the appropriate app.

Imagine that! People using search to find things they don’t know how to find any other way! Who are these idiots? Of course, I just open the iTunes App Store and download whatever is on the top of the list. That way, I am always the most knowledgeable person in any situation I find myself in. 

I could re-write this guys sentence and make it sound like apps are dead, watch:

“People use the iTunes App Store today because it’s a proprietary delivery channel that both developers and users are locked into. The store is a mess of content with no organization, where the apps seem to be approved and rejected on a whim, where improving on the functionality of native apps is totally disapproved. On the web, I Google what I want and pick what works best.”

 Man, I sound so smart!

  • When talking about iAds on April 12, Steve Jobs said, “Search is not where it’s at, people are not searching on a mobile device like they do on the desktop.” I actually think the issue here isn’t desktop vs mobile, but web vs apps.

Well, if Steve said it…

Steve also said they wouldn’t bother with a netbook competitor, and that no one wants to play games or watch movies on their phone or iPod. I am glad that is backed up with data like “Steve said so”. I use mobile search all the time. So do my friends. What Steve said was meant to get advertisers saying “Hmm, well, Steve said no one uses search, so we better move our ad budget to iAds”. This statement has nothing to do with search not being “where it’s at” or web apps vs. native apps. If that’s what you got, then you are twisting even the most vague reference to mobile vs. desktop to fit your premise. 

  • Full six years ago I blogged about people’s over dependence on search. I felt Google’s search results weren’t as good as visiting the specific site with the information needed. Instead of blaming Google, I should have blamed the web as a whole.

You are right. It’s the webs fault for not getting URLs out to people to type into their browser. I think we should put together a huge book, like a phone book, and you can just look up URLs that way. People use Google as a starting point to find the information they need, not as the source of the information itself. Man, it’s like you are from a different planet or something!

  • Many iPad apps are simply a different view on data that is already available on a website. And every single time, the iPad app beats the web experience that has been around for years. NYTimes, Netflix, Zillow, and others.

Wait a minute, is this blog post an elaborate iPad advertisement? Netflx is also available on my Xbox, so I can, you know, watch shows and movies on my TV. This just in: The web is dead! Long live the Xbox! 

So what you are saying is, developers tweaked out their websites for iPad specific experiences? What does this have to do with the death of the web? Good for people who made great iPad sites and apps. Not so good for people who don’t own the iPad. 

  • To single one out, try the ABC app on iPad. Much credit to ABC, but I doubt they have the best iPad developers out there. Yet their version one application is awesome, and a much better experience than their website.

Once again, a great app or site for one device doesn’t mean and entire platform is dead. It means, those developers are going to have to work on the website next. You don’t think getting some Apple.com front page exposure was probably one of the big reasons ABC invested in the new iPad app? It doesn’t have as much to do with what’s better as it does with what’s getting the focus now. 

  • Thanks to better developer tools, a richer SDK, and simply higher quality standards, developers are making apps that consumers are using to interact with data in a richer way then ever before.

Yes, I too would like to thank jQuery, YUI and the rest of those great javascript frameworks that make doing amazing things so simple for developers to write software for many platforms… that’s who we’re talking about, right?

Browsers aren’t innovating. They are just trying to comply with standards and fix bugs and performance.

Psh, stupid browsers! Do better! Yeah, they have never come out with anything worthwhile at all. 

  • Right now browser updates fix bugs and add application features, but can’t enhance the functionality of the web. This is only done by standards boards.

Yes, a standards board that your beloved Apple is a part of. Am I wrong, but isn’t Steve’s latest hit all about “open standards”? So would you rather have all of these browsers fragment and do their own thing? Ah, it’s the 90’s all over again. What a time to be a web developer. The fact is, the greatest innovation comes about as a result of these standards. 

  • Browsers are forced to implement every “standard” that is agreed on, even if it’s not the best decision for the platform. 

Ha, what browsers are you using? No one is forcing anyone to do anything. The fact is, developers like standards because it makes the code portable to be used by the most people, wether they are Microsoft users or Linux users or Apple users. You will not talk to a single developer who is against standards in favour of the “platform”. The standard IS the platform, man. (Whoa, I am deep!)

  • Browsers don’t add functionality outside of standards because developers wouldn’t utilize them. This means they can’t innovate.

You know, I think developers are on these standards boards, too. Browser innovate all the time. Firefox was an innovation over IE, and Safari and Chrome each innovate in there own way, too. Developers can write plugins for some of these browsers, to innovate them even more. It’s pretty much wide open. 

Besides, one minute you said “Browsers are forced to implement a standard” and then you said “Browsers don’t add functionality outside of the standard because developers wouldn’t use them”. So which is it? Who are we blaming here? Standards, developers or browsers? This is very confusing logic here, like a snake eating itself. 

  • Browsers don’t even comply with standards well. Developing for the web is a disaster because every browser has its own quirks and issues. They can’t even do one thing right.

Wait a minute, I though they are forced to implement a standard? So… they aren’t? Man, these browsers really can’t do anything right, can they? Not even one thing. 

  • The only way the web can survive is to reinvent itself, to refocus. Each browser should focus on innovation, not parity

But I thought the web was dead. I thought the apps killed it. I mean, search is out, the browsers can’t do anything right, the standards are either too rigid or not rigid enough. Are you saying there is hope?

  • Why do all browsers have to support the same standards? This only limits their innovation, and limits web developers

You answered that question, I thought. Aren’t they forced to? and aren’t the developers the one stopping innovation, because, after all, they won’t use it anyways.

  • Browsers should innovate as fast as possible, adding additional functionality without concern about the other browsers out there.

Even though all of these bullet points are under a similar heading, they don’t seem to be tied together by much thought, do they? I mean, sure they share common words and phrases, but it really is incoherent, isn’t it? What happened to the forced standards, the lazy developers? This was a big deal like 4 or 5 points ago.

  • Web developers can choose which platform they want to develop for. Does your app run best using Chrome’s non standard SDK? Go for it.

Ha, sure. That will go over awesome. “This app only works on Opera”. See how many investors that web start-up gets. The web is the ultimate “write once, run anywhere” platform. I am pretty sure Ebay wants there site to work for everyone, as does Flickr and Facebook. 

  • Each browser can choose to mimic features that have been added by other browsers if they find they are losing developers or users.

It will be the 90s all over again. Developers, developers, developers, developers!

Ultimately this will result in:

  1. Greater innovation in browsers and the web platform as a whole.
  2. Each browser will become its own platform, with varying application support.
  3. Users will choose browsers that run the applications they care about. Browsers with poor application support will die.
  4. Developers will no longer worry about running on every browser. The goal will be to create the best experience on one browser.

You are forgetting:

5. User’s will be forced to run 5 different browsers at the same time, a system that is sure to not confuse your Grandma.

6. Developers WILL worry about being able to run in every browser, because more browsers supported = more hits/users/subscriptions = more money. And I think that’s what developers really want.

Developing for the web has always been a tradeoff: gaining a larger user base but sacrificing quality. The web has been improving steadily, but at a much slower pace than it should.

When GMail launched in 2004, it took one step forward and 10 steps backwards from the mail application I was using. Even today, the major features GMail is releasing are simply trying to match the features I’ve had on the desktop for years.

I think this is the tipping point for the web. The modern web had over 10 years to reach parity with desktop applications, and it couldn’t even hit that. Now it faces extinction as innovation in native applications accelerates.

Tipping point! I’ve got a buzzword bingo here! 

Too bad the internet is going extinct, I feel like we just got it the other day. 

Guess what? You are wrong. There is a reason Microsoft is working on their cloud office app, why Google invested money into Google Docs and Gmail. Because the web brings sharing and storage like a desktop app can’t. And sure, there are a few niche features that are missing, but that hardly means it’s dead. Any who are you to set the pace or declare it’s death? Aren’t you the CEO and co-founder of a web app?

Saturday, May 8, 2010   ()

I love Rube Goldberg Machines

()

Don’t Click Banner Ads

I am sure, like me, you think of yourself as “smarter than average”. You would never fall for a phishing scam or give your bank account number to Nigerian royalty. But the fact is, everyone has their weakness, and someone has found a way to exploit you. Perhaps you’ve been called and told you’ve won a prize and that got you excited. Or maybe you were told about a club discount you could receive, but only by paying huge membership fees. Maybe you’ve fallen for a few of these things. You might still be smarter than average, but even above average people have below average moments.

Mine came in the form of a banner ad. I was told I could buy a Macbook for under $100. I clicked it only because I wanted to know what the scam was this time. The scam was an auction site. I should have clicked ‘back’ right away, but I kept reading. I saw usernames of people who seemed real (and probably are real) winning auctions for big-ticket items like laptops and flat-screen TVs for only a tenth of the retail price.

And that was my weak spot. The idea that this site buys so much stock that they can sell for low prices somehow made sense to the little person inside me who wanted a 50” LCD TV for $150 bucks. The longer I was on the site, the more I felt like I had stumbled upon a gold mine. How did I not know about this place before?

That’s the moment the warning bells should go off. If someone makes you an offer that you can’t wait to tell your friends about, then you are being scammed. As the adage goes, if it seems too good to be true, it is.

I got myself a username and thought it was time to start winning some TV’s and laptops. This was going to be the best Christmas ever. I tried to register a bid, when I was hit by the catch: you had to pay to bid.

Pay to bid? Seemed a little strange. But, hey, each bid was only like 10 cents, so what’s the harm? I’ll pay for a few bids, snipe one of these auctions right before it ends, and I will bringing home some luxury items. So I payed for some bids and began. “Yeah, $60 worth of bids… that’s like 6,000 bids, that’s going to last me a lifetime on this site”.

I started bidding on a Macbook. The bidding started at $0.02. I threw my bid down. Now it was at $0.04 with 20 hours to go. 20 hour until I win my $100 laptop with free shipping!

But why wait 20 hours? Why not go snipe an auction that’s almost ending? There was a TV auction ending in 30 seconds. I entered the room. 3. 2. 1. BID! Yes, I am the high bidder. I WON! Oh wait, the auction has 30 more seconds, how did that happen? Did I read that time wrong? Nope… now the auction has 2 minutes, now 5, now 20. What is going on?

Well, every time you bid, it adds 10 seconds to the auction. In order to win, you need to be the high bidder and stay the high bidder for 10 seconds. But with each auction being watched by 100 other suckers, um, I mean, people of above average intelligence, the auction was never going to end. Once the clock hits 3 seconds, the whole room would bid, pushing the price up another $2 and adding another 10 to 30 minutes to the auction time.

This is going to take forever, I thought, I need to go to bed. The owners of the site had foreseen this problem and created a solution for me. I could buy blocks of bids. I could setup a “bid butler” to bid for me while I dreamed of my new TV. Well, do the math, how long do you think those 6,000 bids I bought lasted? Not very long. Oh, and guess what I won? That’s right, nothing. $60 down the drain.

I started thinking about how much this site was selling these laptops for, in reality. Let’s say the auction ended finally at $200, which for a Macbook would be an amazing deal. 100 people bidding at $0.10 a bid, each time moving the price up only $0.02.

$200 / $0.02 = 10,000 (number of bids)
10,000 bids * $0.10 = $1000 on bidding alone
$1,000 + $200 = $1,200

So, these guys sold that laptop for $200. And out of those 10,000 bids, what are the chances yours will be the winner? Very slim.

Also, $200 as a winning price is a very conservative price. Some were as high as $600, still an outstanding deal. But a $600 final price means the site made $3,600 on that laptop. Sure, a few went for $90, and those are the ones mentioned on the banner ads to get you there. The only way to guarantee a win is to pay 3 times the retail price.

Wow, do I feel stupid. Not only am I down $60, but I was beaten by 6th grade math. Don’t click banner ads.

Tuesday, March 2, 2010   ()

If ease of use were the only requirement, we would all be riding tricycles

Douglas Engelbart
()