Archive | February, 2012

Why Javascript bores me

14 Jan

Now this is going to sound cocky (sorry) but I need to get it off my chest - the thing I hate about the Flash vs HTML(5)/JS/CSS(3) debacle is that clients now expect you to be able to do everything you could in Flash using HTML. They also expect that everything will magically work well on mobile devices such as iPads and cheap Android phones. This is after all the very promise that Steve Jobs and other cool guys have sold them. The problem is - it’s not like that at all.

It’s really hard work to solve browser incompatibilities and code around inefficiencies in mobile browsers. I don’t mind hard work but this really bores me - a lot. I hate patching something that really should have worked, but since somebody didn’t agree on how to solve it I’ll get to poke around half a day to look for an answer…? It’s much more fun to create stuff, isn’t it?

I don’t mind that Flash’s role is changing. It was inevitable and I too love to see cutting edge work done in HTML/JS/CSS like this brilliant site by Bret Victor or enfantsterrible by WeFail. I just don’t want to go 5 years back in time to the time before Flash Player 9 and Actionscript 3. I don’t mind doing Javascript, but it feels so totally inappropriate to try and build serious apps with it (like I do with Flash and Flex). I don’t want to work on projects where I constantly have to cut back on creativity just because something just isn’t possible (yet). Flash is a platform that does not limit what I can do, so to me this boils down to either having (what I think is) a boring job or finding something more enjoyable. Work takes up too much of my life for it to be boring…

AS3 is such a mature language and if you read up on the future of Javascript, you’ll find that JS5 will be the “patched but still untyped” version of JS. Future versions after that will become what ECMA 4 tried to be before Microsoft more or less killed the project. Flash’s programming language AS3 is what Javascript will become in the future. It probably won’t be exactly like, but it’ll be close. I think that I will look for other challenges while waiting for javascript to mature where working with it no longer bores me.

Others have taken a different route and gone with the flow to do with JS what they have already done with Flash and Flex. I have no need to do that. There’s so many other things to do than have a boring job. Today, João Saleiro posted a brilliant and thorough article that more or less sums up all of my frustrations with “the future” of web development. It’s lengthy, but it’s really worth it - especially if you come from the HTML/JS side. Most HTML5 “comment trolls” don’t know anything about Flash, Flex or AS3, so they have no clue what they are missing…

Sorry. HTML5/Javascript/CSS3 really bore me and I’m already used to Living in the future. I won’t spend time on learning the fancy “flavor of the month” JS-library that may be dead a couple months from now. Instead, I currently enjoy learning about electronics and microcomputers while coding in C - a language that is older than me and still just as valid. And if I ever “have to” to build something big with Javascript, I’ll certainly use something like Haxe that can remove the pain and add some fun.

Further reading?

The Increasing Cost of Interactive Production

The World of Pain that is HTML5 Video

The open web needs you now

PS: I do a lot of HTML, JS, CSS and have done so ever since I started in this business 15 years ago. I also do PHP and EE CMS on a almost daily basis. I just don’t see the excitement in fighting against technology to make it do what have been done already. If being on the bleeding edge requires daily pain and fighting inadequacies/inconsistencies/incompatibilities, I’ll rather look for things more fun to do?

Forgetting what’s important to the user

20 Jan

fameInflunce.jpgFound a great read today regarding Twitter and how the amount of followers does not translate into a similar influence. Implementing Social media support into apps is a requirement for most projects I do these days and it’s seen by PMs as one of the most important things to include. Several times lately, I’ve had developer friends tell me how their PMs want sharing implemented over way more important features. Yesterday I was reminded by a good example.

My wife showed me a nifty little iPhone recipe app published by the Norwegian council for fruit and vegetables. This app has the all important support for Facebook and Twitter, but isn’t it way more important to be able to tag a recipe as interesting so you can look it up while at the store? Adding support for saving favorites would be much more valuable to me than telling my friends what I might have for dinner. In the case of my wife - she uses Facebook and she has her second iPhone. However she dislikes pointless updates like “vacuuming my living room” and “having cucumbers for dinner”. Why do PMs think that boring your friends is more important than actually using the app they spent so much money developing?

Is it always worth adding Twitter and Facebook links to everything in place of other features? How about users that don’t use Twitter and Facebook?

How to shoot yourself in the foot

13 May

Twitter has become an important part of my day, but today it lost a lot of it’s value to me. By changing this ‘tiny’ setting, I no longer see the conversations that my friends have. I only see people twittering for themselves or directly mentioning me. I now get only 1/6th of the messages I used to get.

This is not how I use Twitter. I use Twitter to follow what my colleagues in the community and friends do and chat about. By removing this feature, the value of Twitter is now VERY reduced and I feel like quoting Eivind Ingebrigtsen that tweeted last week: “Assumption is the mother of all fuck ups. If you assume, you’ll make an ASS of U & ME”. By ASSuMing things like this - Twitter could easily kill itself… You’ll find some good commentary on this topic at the Ajax Blog as well.

assume.jpg

Just call me Mr TypeALot…

20 Aug

Incredible. The coating on my MacBook pro is pretty worn (where I hold my hands) but today the Command key broke in two? I sure use it a lot, but since MacBook Pro is a favorite with programmers, shouldn’t the keyboard handle our everyday usage?

IMG_2958_small.jpg

Update 1: 15 minutes to wait for Applecare support. Hmm…
Update 2: AppleCare says this is not covered. Suggests calling an authorized service partner
Update 3: Last 40 minutes I have tried both Eplehuset and Humac (the two suggested partners) and none of them answers the phone.
Update 4: Finally got through to Humac. They said I’d have to hand them my machine or they could send a service technician to my house. If that isn’t overkill I really don’t know what is…
Update 5: Eplehuset finally answered the phone and said “sure, no problem. we’ll fix that for you.” They’re officially my Apple Heroes!

Twitter is technically wrong…

20 May

“Something is technically wrong” at Twitter, today and most every other day. I once read an article where the author claimed that “it does not matter WHAT technology you use. Worry about that WHEN your product is a success”. I guess Twitter is the continuing proof that this does not hold up?

Maybe he wasn’t all wrong though. IF you have a success AND you’re able to monetize it - you can use those money to fix any remaining technical issues, right? It’s all just a matter of scaling the hardware and you’re good to go? Looks like that if you build your software using Ruby on Rails, you’re bound to be screwed for a long time if you’re successful and refuse to change platform. After all - Twitter isn’t Rocket Science, it’s a server based app with rather limited capabilities that is written in a high level language.

I’m currently reading “Hackers and Painters” where Paul Graham (amongst other things) explore the ideal programming language. Given the condition that you have infinite computing power, high level languages are great according to Graham. The problem is that every level of ease for the programmer has a price. From machine-code, moving upwards through the various programming languages from machine code to C and eventually Lisp - every level of abstraction comes at the cost of slower execution. Twitter is running on Rails and it seems they just don’t have the required hardware.

Or is it just hardware? To scale as much as Twitter needs to, is incredibly hard when it all comes to hardware. Wouldn’t it be great if Ruby had some features that could help this? The developers of Ruby are really certain about themselves. It’s like they have found the Holy grail of computing and have developed the ultimate language that never needs extending. That’s kind of like Paul Grahams basic idea and I wonder if the Ruby devs have read Paul Grahams book? It’s a fun read that’ll provoke and entertain when it comes to nerds, computers and designing programming languages.

PS: I sure hope they fix Twitter soon. I’m really missing it and three months ago I didn’t even use it. Now THAT’s strange!

twitterWrong.jpg

Real 3D Flashmagazine logo

22 Feb

My new office has a cool mix of people, 3 architects, 2 product designers, 1 web designer and me. The product design guys just got a 3D printer (!) and I just had to try it out using the Flashmagazine logo!

IMG_2028.jpg

More pictures of the process on Flickr. It’s just insane. With a printer like this, you can make anything!

Windows at 91% and declining

04 Jan

Gizmondo quotes a new survey that claims that OSX now accounts for 7.31% of all OS’s. For now it looks as MS is still asleep dreaming of Vista. Odd, isn’t it? They really don’t see Apple as competition, do they?

PS: Two years ago, Gartner estimated that by now, Apple should have gained a 2.9% market share…

[OT] Holiday is doing something different

29 Dec

We’re spending this years holiday at the farm where my wife grew up and today, her brother (the farmer) had to go to a Christmas party in Oslo, several hours away. I thought I’d be nice and give him a hand so he could stay in town a little longer, so I volunteered to take care of his pigs…

Taking care of 420 pigs sure is a different experience than coding all day. Today I’ve been “whacking away” at loads of shit instead of a keyboard - one and a half hours of shoveling shit and spreading sawdust for the pigs to walk / sleep on. When I was only half done, my cap was soaking wet from sweat. I wasn’t exhausted, I just got really warm from shoveling (I guess I should exercise more). So, holidays are a time for doing something different. Farming sure is a lot more physical than what I usually do :D

PS: I’ve now showered for half an hour to get rid of the smell, but I suspect I’ll need another shower to loose it completely…

The OLPC starts shipping

13 Nov

OLPC.jpgI just saw Scott post about a project that I’ve followed with great interest, the OLPC. Originally dubbed the $100 laptop, the cost is currently about $200 per machine. I assume that the price will lower as the number of machines produced go up. To boost this process the people behind started a campaign where by giving one, you can also get one yourself. The basic idea is to offer low priced computers to developing countries. What I see as the single biggest thing coming out of this is Knowledge. The information available on the web is massive. These machines can really help giving under-developed places opportunities they’d never have and improve a lot of lives.

The OLPC website has very limited info, but for those interested, I recommend checking out the Google TechTalks video where the project was presented. It’s a little long, but this machine is totally cutting edge in all the ways it saves power and connects. Well worth checking out! Unfortunately, anyone outside the US/Canada cannot donate for now.

I also noticed something really cool, T-Mobile are giving away a full years hotspot access to anyone contributing! Really nice of them, even though it can be considered marketing. I spend maybe $50-$100 on random T-Mobile access per year, so it could actually reduce the price of giving in my case.

Using Google Adwords?

21 May

Do you know what you’re paying for? Check this article by my buddy Jarle Bergersen. Initially, the adsense /adwords system provided by Google was simply amazing. Since the text ads were displayed based on the contents of every page, they were always relevant and they usually showed up on the right sites.

Click-rates were astounding when I first implemented Google ads on Flashmagazine 4 years ago, somewhere between 3-4%. Numbers like these were pretty rare in the industry back then and they’ve been falling steadily ever since. Now the clickrate is about 1,5%  and it looks like the folks running adsense /adwords have gotten despearate to improve the situation. Using Google, you can’t really decide where your ads show up. Google will try to locate the best place for your ad and up until now they’ve done a decent job. With the introduction of Adsense for Domains, they are now allowing domain pirates and others that don’t provide value to get a bit of your advertising budget and there is no way you can prevent it (Norwegian version).

To me, it looks like Google is loosing it’s touch? Up until now, they’ve always done what is best for the end user/advertiser, but this time it’s apparently only about money?