So I Gave A Talk For The First Time

I was invited at Mohammad Ali Jinnah University for guest speaking for one of their courses involving Computer Graphics & Animation.

It is a privilege to begin with to be invited to speak at universities. Pakistan, although known for a lot of wrong reasons around the world, is an untapped territory as far as technology is concerned. There is a lot of talent here. Talent that needs guidance and experience. Knowledge that needs to be transferred. And this was me trying to do just that. (Nope, not trying to come across noble).

Who is this guy anyway?

Standing up and presenting is definitely not the easiest things on earth. I have always felt scared of it and I cannot tell you how many times I have successfully dodged this bullet. Convincing myself that I don’t ever need to face this terrifying situation, that I can code forever with my headphones on remaining oblivious to the rest of the world. No more.

This is something that has been in my mind for quite some time. That eventually I will have to do this, and express myself like this. That I will have to bite this bullet. Feels like natural progression to me anyway. So how did it go?

McDonald's 100 Moments
McDonald’s 100 Moments, developed by
A colorful folding doodle created by Hakim El Hattab.

Nervous Start

Nervous Start
Not looking very confident there, T?

As one would expect. I cannot tell you how nervous I was. Shaking like a leaf. Do you guys ever get that tingly feeling on your spine, or as if your structure is shaking from the inside?

My body was begging me to just run away. Part of me was just hoping that someone would come and tell me this session is not happening today.

Time Flies

Get Inspired
Awards’ websites that I follow.

But as it turns out, it felt easy as the time went by. And I think the major reason behind it was that the stuff I was presenting was something that I enjoy myself, something I feel strongly about.

I love animations. The EaseIns and EaseOuts (and EaseInOuts). I can look at “movements” whole day. I think this is the key.

Felt Like I Could Go On

Find Passion
Passion is the key.

And in no time, 45 minutes just flew past. Yes, 45 minutes it was. But by the end of it, I felt like I could’ve easily spent another 15-20 minutes staying on the last ‘Find Passion‘ slide. This slide is the crux of my whole thing anyway.

Passion is something that cannot be ignited from the outside. It has to be natural. It has to come from within (inception anyone? ;)). But I also believe exploration & experimentations help. That was the message.

Need Feedback Though

Curious eyes.

I can use some feedback. From students who attended. What mistakes I made and what are my areas of improvement? Was I too loud or too low? Did you get the whole thing? Overloaded or meh?

And I need feedback from industry experts too. How do you find my slides, bit too much to digest? too little? Did I miss anything important? Any tips?

I really need feedback.


I linked to a few examples from people I admire from around the world. Plus, to actually get students started, there are many options presented to them that I grew fond of over the years. I hope I didn’t offend anyone by linking to their work (or by not linking) as my sole intention is for the students to get inspired.

Slides can be found here. Hopefully more of those to come.


So I Gave A Talk For The First Time

On The Recent Mobile Website Redesign

No, not another opinion. Enough already. I am just keeping a record of them for future references. website went through a major update and it created a buzz. Here are the details:

1. 60 FPS On The Mobile Web: [Published: February 10, 2015]

The DOM is too slow.
It’s not just slow, it’s really slow. If you touch the DOM in any way during an animation you’ve already blown through your 16ms frame budget.

Link: [].

And the reactions:

2. Flipboard comes to the web, and it’s beautiful: [Published: February 10, 2015]

On the bigger screen, Flipboard is big, beautiful, and responsive. In moving to the desktop, Flipboard hopes to open up a big new avenue of distribution. But can a mobile app like Flipboard win millions of new fans on the web, or is the company building for the past?

Link: [].

3. How Flipboard Chose Form Over Function For Their Web Version: [Published: February 11, 2015]

I am dismayed that Accessibility was treated not even as a mere afterthought, but as something worth sacrificing completely for the sake of flashiness.

Link: [].

4. Flipboard – React Canvas Accessibility: [Published: February 11, 2015]

Testing the Flipboard site on a mobile device such as an iPhone, quickly reveals that the content is not available to screen reader users. This is because the content is painted onto a canvas element using React Canvas. The words, structure and UI are all visual, there is nothing but pixels.

Link: [].

5. On and Idealism vs. Pragmatism: [Published: February 13, 2015]

The obsession with 60fps has lead Flipboard to completely reimplement the DOM, but without any of the things that the DOM is good for, reintroducing many of the problems that we fought against for many years in the form of Flash.

Link: [].

6. Flipboard And The “Mobile Web” Dream…: [Published: February 15, 2015]

What this post told me most of all is that it isn’t solving an issue of the web.

Link: [].

7. Accessibility vs User Experience: 60 FPS, Flipboard, And The High Road To The GPU: [Published: February 15, 2015]

TLDR Has the pursuit of jank elimination has come at the cost of accessibility? Yes, for now, but in the end we will look back on these techniques as hacks to get around subpar browser rendering performance.

Link: [].

8. 60 Frames Per Second And The Web: [Published: February 15, 2015]

60 frames per second is not “would be nice”. It’s “must have”. And the DOM doesn’t have it.

Link: [].

9. Radical Statements about the Mobile Web: [Published: February 20, 2015]

There are land mines in browser JavaScript that kill performance: DOM APIs. All of them are synchronous. If you touch the DOM, the entire JS engine may block for a while.

Link: [].

10. React Is A Terrible Idea: [Published: March 11, 2015]

A good framework supports separation of concerns. Web components do not impose a way of representing views or attaching event handlers or rendering to the DOM. A bad framework couples those things together so that you can’t use one without the others. That’s what React does.

Link: [].


On The Recent Mobile Website Redesign

Code Tip: parse variables response from backend into as3

Just a quick code bit I wanted to share, for those interested. Example below assumes that a response from backend is in this format:


Here is how I parse it. If someone knows a better & faster way; please let me know.

function onResponseComplete(e:Event):void

var nameValuePairs:Array = unescape(‘&’);
var id:String;
var status:String;
var message:String;
var i:int = 0;
var length:int = nameValuePairs.length;
var nameValuePair:String;
var variable:String;
var value:String;

for (i = 0; i < length; ++i)

nameValuePair = nameValuePairs[i] as String;
variable = nameValuePair.substring(0, nameValuePair.indexOf(‘=’));
value = nameValuePair.substring(nameValuePair.indexOf(‘=’) + 1, nameValuePair.length);

if (variable == ‘id’) id = value;
if (variable == ‘status’) id = value;
if (variable == ‘message’) id = value;



Code Tip: parse variables response from backend into as3

Long time no post

Wow! I have been out of blogging scene for a while now.

Things have changed for me a little. I said good bye to Dubai, moved to Singapore but remained within the same network, i.e. OgilvyOne. It has been four months already here and so far I like it; both the workplace and the city. Lots of things learned but still lots more to go. Anyway, I will try to be regular now and keep posting about new stuff happening in my life. Ciao!

Long time no post

Busy days ..

Things have been pretty busy for me which is why I have been ignoring this blog. Worked on an interesting Twitter banner for a newspaper and currently working on a Facebook Flash game for a soft drink company. Both will be shared later.

More to come. Happy coding.

Success usually comes to those who are too busy to be looking for it. ~ Henry David Thoreau

Busy days ..

Offtopic: Game – Batman Arkham Asylum

Don’t want to do another commentary on this game as you can find plenty over the internet but I just have to say this, it is the best game I ever played. Check those videos out below and see if you can get excited too:

Official Launch Trailer
Joker Trailer
Villains Trailer
Freeflow Combat Trailer


Kevin Conroy (Batman’s voice)
Mark Hamill (Joker’s voice)

Now I am just waiting for Batman Arkham Asylum 2 i.e. Batman Arkham City (which is to be released sometime in 2011).

Offtopic: Game – Batman Arkham Asylum