« Posts by Inderpreet

Game on in HTML5, but not so fast

I was at the HTML5 session at GDC on Monday last week, and was impressed by the sheer number of sessions on HTML5. This was a big contrast to last year, and it speaks volumes about HTML5 is picking up as a platform. However despite the gaining momentum, the dream of “Develop once, deploy everywhere” is still a long way to go. A very long way. I say this from the game development perspective, but its still true for almost all serious apps that want to compete with Native platform apps.

Before I begin, let me clarify that in no way do I want to undermine HTML5, as a platform. On the contrary I have very strong hopes from it. I think its on the right track, but has a long way to go. There is a lot to be done before it is ready for prime time, especially when it comes to the Game development community. There are many reasons why I say this, but the foremost of them is the setup cost. When you see people talking about how they took 6 months to write wrappers to make stuff work, you already know its not a viable platform of choice. Most startup these days can not really afford to wait for two quarters to get the tools ready to their development (unless you are developing the tools themselves). This seems to be the case with almost any one working in HTML5 (especially gaming). Once you start moving your app over to HTML5 the rate at which complexity increases is phenomenal. This means while simple apps are much faster, even slight bit of game play, and you are already being taken for a ride. Try drawing simple lines on the canvas, and you have already started thinking about optimization just to get it working. Basically you spend more time getting it to work across browsers, and keep up an acceptable level of performance.

To further add to the frustration is the fact that things dont work out of the box. In a utopian world we would have consistent feature set and implementation across all browsers, but then again, we dont live in a utopian world. What this means is either you develop for the “lowest common denominator” or face the ire of users who think it is ok to use IE (any version) or Chrome from 2 weeks back. With browsers like Chrome releasing every 6 weeks, we are getting more and more features in, but we are also distancing the gap between browsers. One can argue that you can target only a specific browser, but wouldn’t that defeat the original purpose? Coming back to the point, this “Lowest common denominator” approach has its own set of problems. First off the features at your disposal start shrinking rapidly, and at the same time complexity increases very rapidly. Moreover fragmentation can no longer just be a factor of resolutions and browsers (and their versions). We are now also fragmented on actual display size, available processing powers (CPU and GPU), battery power, connectivity etc, amongst other things. This means that way more thought needs to go in when designing an app.

One of my gripes with HTML5 platform has always been the slow rate of standards, and even slower rate of adoption. At one of the talks by Rachel Blum, she highlighted how it took a couple of years for Audio to make it into the standards and then finally to actually get adopted by browsers. What is worse is that for any kind of serious game development, you still have to do enough “wrapping” before the audio actually becomes usable. However this is changing, but a lot of it has to do with the optimizations and improved hardwares. I am very hopeful this is will no longer be the case. As more and more serious development starts happening in HTML5, I am sure we will see the pressure for quick adoption and standardization. Right now there are not many pure cross-platform HTML5 games available (at least professional ones). However there are enough people who are experimenting with the platform. Almost everyone is waiting for that break through to happen to jump on the bandwagon.

You should always be in control…

Except when we choose not to.

Path should be private

As pointed out by a friend, the above is from Path’s website (From the About page, at the time of writing). Everything on Path is private and you are always in control. Except when the “industry norm” is to steal your data, then everything is justifiable.

I am certain that Path had the best of the intentions when they were doing this, and I strongly believe they were not going to misuse the data. However the problem is that this never crossed their mind, that what they were doing was wrong, irrespective of the industry norms, or developer guidelines. Perhaps its our attitude to build products first, and privacy later? Or perhaps our casualness on the data we share?

Freedom.txt

A lot of people thought that adding a freedom.txt to your domain was a cool idea. So I made a small landing page, where people can read about it. You can also send me suggestions by emailing at freedom.txt [at] wastedcode [dot] com

Support an Open Internet, create your own freedom.txt

Today I came across http://fr.anc.is/freedom.txt and that resulted in http://isingh.info/freedom.txt

This is not to protest against any bill, but in general show support for a free and uncensored internet. We may have defeated SOPA, but there will be many more such bills. It’s high time we show that we will not let the freedom of the internet be taken for a ride. Furthermore I will add links to any freedom.txt I come across. I hope that the next time when somewhere searches for freedom, they damn sure see all these results!

Do add your own freedom.txt to your domains. If possible send me a link, and I will add it to my freedom.txt.

Update: I have set up a small landing page for this. http://wastedcode.com/freedom/. Let me know if you have any suggestions or want to add some content!

Have a profile pic, lets black it out this week?

Stop SOPA

If you have a public profile pic, this, might be a good time to change it.

Fly in the night!

Let’s take those words, and fly in the night
Feel the love in your heart, coming alive tonight
Come dance and make it alright,
’cause I know those people are by your side.
Close your eyes, and fly in the night
Tomorrow will bring much more love, than you can see tonight.

This is for my very dear friend Arvind Suresh as we all wish him a very happy birthday.

I am not much of a creative type, but I thought why not give it a shot. As always, it was technology to the rescue. With the help of some insomnia and Python, I whipped up a small script to measure common words used by Frank Sinatra in his songs. Arvind is a big fan of Sinatra, so it was only justified to do this analysis. Based on his top 25 songs (or what most people on the internet said were his top 25 songs), I did a simple frequency analysis.

Once the analysis was done, I tried to remove the common words like ‘I’,  ’the’, ‘am’ etc. Surprisingly I did similar analysis for Fugazi and found out that Sinatra uses way too much ‘I’ in his songs. More on that sometime later though. Anyhow thanks to more insomnia, I finally wrote this shoddy poem, using the most used Sinatra words. I will post a detailed analysis later, but till that time lets wish Arvind a very happy birthday and a great year ahead!

Stop or I will add you on Facebook!

Michael Arrington recently posted this neat article on his blog. While I don’t disagree with him, do you really think it is possible to delete 400 out of your 600 “friends”? I think the problem comes from the fact that Facebook is a collection of people we know, but we want it to be a network of friends. It’s a very cool way of socially organizing all your contacts, but this comes at the cost of watering your true “social network”.

Facebook is the equivalent of meeting someone and giving them your business card, except now the business card contains the access code to your house. So there are basically the following options:

  • Stop handing out business cards to most people.
  • Hand out cards to almost everyone, and complain about how too many people are up in your business.
  • Complain that the business card maker needs to have some easy way to choose who gets what.

This is basically what is happening right now. Now lets take case 1. You meet someone at a conference. You chat for 5 minutes. Do you tell them that they are not close enough to get your business card? Probably not, right? A very good example is Path. You are sitting with a colleague and chatting about technology. Now they add you on Path as you show them this cool new app. Do you tell them, this is restricted to your friends/family? There is no real way of declining this socially. What we need is circles much like we have in real life (and no I am not saying that Google+ circles are the right way or anything like that). In real life you call a bunch of friends to chill. Not every time you invite everyone. But that doesn’t mean they don’t belong in your network.

A contrast to that is twitter, which is completely public (and I actually consider my website/blog + Twitter as my business card). You can either have a completely closed network, or a completely public one. You can not have a semi private network like Facebook, and then tell people they are do not belong in it. Rather much like real life, give me control on what goes where. In real life I use my cell phone to call everyone, but I don’t need to tell everyone the exact same thing, when I call them.

I hope our social networks will get smarter, and realize that not everyone is equal to us. At the same time, I don’t wanna use 50 different networks for different types of people/activities.

Looking from the top of Sentinel Dome!

Sentinel Dome, Yosemite, CABeautiful panoramic view from the top of Sentinel Dome. It’s a very short hike from Glacier Point, but very rewarding. You can see El Capitan in the west to Half Dome on the right! Although there was almost no snow, the beautiful winter sun made up for it.

Yosemite is always too much of a hassle to visit during the summers. It offers some of the most rewarding views, but at the same time it is too crowded to feel at one with the nature. This trip kind of offered a great balance, since the place was empty, but at the same time you could hike around easily due to the lack of snow. However that did mean that we did not get to snowboard. Lets wait for the winter season to kick in!

Road Tripper!

image?

Finally came today! Time for some planning. This time I wanna do the trip on a motorcycle instead!

Around the city in Bernal Heights

One of my favorite parks. Very beautiful views, and nice walk. So many unpaved trails add to the fun. Or you can sit and watch the dogs play!

Panorama of San Francisco shot at Bernal Heights Park

Panorama of San Francisco shot at Bernal Heights Park