headphono.us

Avatar

Pras Sarkar blogs about web technology, music, social networks, digital identities and other random things.

Hack: Shorten links from the location bar

Bit.ly is super simple for shortening links (especially using their bookmarklet). But if you're like me, you hardly leave your keyboard so it might be really helpful to shorten the link from the location bar itself. Lately, I've been using a very simple hack to do exactly that. Most modern browsers support adding keywords for searching right from the location bar. For example, in Firefox you can bookmark a ...

HTML5 Primer and Comprehensive List of Features

It's hard to escape the recent chatter about HTML5 all over the development blogs. But it's also hard to keep up with all the changes in HTML5. That's where @edr's amazingly concise and comprehensive list of HTML5 features comes in handy. If you've ever asked the question "What is HTML5?" or ever wanted to gain an overall understanding of HTML5 and what the changes mean for developers, this ...

Adobe Flash loophole for iPhone apps?

Hot on the tails of the recent unearthing of the despicable banning of meta platforms like Adobe Flash in the Apple App Store, it looks like there might be a loophole to getting apps through. According to the video above, in the upcoming Adobe Flash CS5, there is a way to export Flash to HTML5 canvas. If this is possible for the entirety of a Flash application, it could ...

Plea to Apple from an iPhone developer

Earlier today, John Gruber broke the news that using meta frameworks like Adobe's Flash-to-iPhone compiler and others like MonoTouch will be disallowed for apps that want to get through the App Store process: 3.3.1 — Applications may only use Documented APIs in the manner prescribed by Apple and must not use or call any private APIs. Applications must be originally written in Objective-C, C, C++, or JavaScript as executed ...

Firebug console bug/erratic behavior

This bug happens quite often and is very hard to pin down. It usually manifests itself as some piece of functionality in your app not working until you open the Firebug console window. If you're using console.log anywhere in your code-base, this error occurs since the Firebug console window isn't defined unless it is open and usable. Luckily, the fix is quite easy. Just surround your console.log() with a ...

We need smarter “real-time” search engines

There was an interesting article in the Guardian recently highlighting a study that claims that users mostly ignore "real-time" search results in Google. If you're not familiar with the real time results, it's those search results from twitter, facebook, etc. right at the very top before the web results. The article goes on to say that it might be due to the fact that not much information is contained ...

A neat trick to expose PHP objects’ private properties

If you've ever needed to write up a PHPUnit test that requires you to check the value of a private property, you can try accessing the private member variables like so: Or PHP 5.3+ using Reflections: Great tip from Derick Rethans.

Having fun with for loops

I love for loops. I use them in ways they probably shouldn't be used for. Here are some few fun ways of using for loops with the caveat that not all these should be used since they are unorthodox and may not be easily readable to others in your team. For loops for concise conditional logic Have you ever come across a pattern where you need to set a ...

When IT negatively affects brand equity

Caution: Semi-long rant, but a valuable message at the end. I've had my fair share of troubles with poorly implemented online systems (I'm looking at you Citibank), but my experience today with Comcast takes the cake. This is an example of how digitizing traditional processes with state-of-the-art online payment systems might reduce costs for large corporations, but if not implemented correctly can backfire by deteriorating the brand image. After ...

Introduction to Message Queues and RabbitMQ

Incase you're not familiar with the advantages of message queues in web applications, they allow you to (among other things) offload tasks and processes that may be initiated by users interacting with your application but the results of which need not return back to the user synchronously. E.g. a user submits an e-commerce order, the application captures the order and returns a confirmation to the user. As an ...

Next,

My Lifestream

My shenanigans around the web