I’ve been coding javascript for a few years now. Primarily I’ve experimented with it for fun or done some basic essential form validation scripts, but nothing to really test the power of the language (and it is a beautifully flexible language) until I was required to do some page interactivity for a job. I did what many people do and turned to jQuery because frankly there are some effects in jQuery that are too time consuming to do traditionally. If you know javascript and haven’t tried jQuery, you’re living under a rock and have some catching up to do. Don’t worry though, the reason everyone loves jQuery is because it’s so damned easy.
Anyway, jQuery has some magic under the hood that does all sorts of things for you. It’s a crutch, and other than using it I haven’t expanded on my javascript skills in ages. That’s why this tutorial by Nathan Whitehead on javascript closures was like a holy grail to me. It was quick, fun to do, and most importantly it taught me something new about the language. Actually it taught me several new things, many of them about style and how to view functions in more abstract terms. I already knew functions, classes, and everything else in javascript were objects, but I never played with them or saw much use for it.
Continuation passing and closure were both completely new. I thought I had passed the point when a tutorial would be useful for me, but Nathan found something worth teaching and props to him for sharing his knowledge in such an accessible way.
Archive for July, 2011
Javascript Closures and Continuation Processing
Wednesday, July 27th, 2011Google+ Impressions and What’s Wrong with Facebook
Thursday, July 21st, 2011It’s been a few weeks now since the explosive (among tech geeks anyway) debut of Google+. It seems people fall into one of 4 categories: those who don’t see anything wrong with Facebook, those who are beholden to Facebook because of their friends, those who flocked to Google+ as soon as possible, and those who don’t care because they don’t use social networking.
The latter group is a dwindling minority among people online because “social networking” has gone from a cute way to augment one’s social identity and perhaps substitute a genuine social life to a general concept that is far more practical. Rather than being merely a social identity, it augments email, texting, an address book, and even (with Google voice and now Skype on Facebook) voice communication. It’s less about showing off and goofing off, and more about pragmatic ways to communicate with people.
This is where Google+ has an advantage over Facebook. Facebook has abysmal user satisfaction which is blamed on “privacy concerns, frequent changes to the Web site, and commercialization and advertising” and which I blame on a scatterbrained interface and outdated design choices. Facebook feels immature and unprofessional, and observing their changes and “enhancements” over the years has been like watching a confused animal flail around in its cage. Or, more accurately, watching a company with poor organization and interface design standards attempt to retain users through gimmicks and monetization schemes. Using Facebook requires practice at figuring out what little icons mean and what obscure settings page contains the menu options for particular features. Photo albums are difficult to reorganize, different pages duplicate nearly the same content, and features get added with a disregard for usability (viewing photos in their new lightbox-style viewer makes right-clicking to get the URL impossible). On top of this they have reorganized everything more than once without making anything easier to find – it’s more like a game of hide and seek.
The only thing Facebook makes it easy to do is talk to people on their walls, poke people, and generally goof around. Many people accept this because this is all they expect to be able to do. It is often said among circles I talk to that they use Facebook because that’s where the girls are (implying that girls are less tech savvy – something I won’t debate here). Some of us, however, see potential for much more.
Facebook relies on its critical mass of users to keep its momentum going and until now nobody has issued a significant challenge to them. It does not, however, cater to professionals or power users, or people who appreciate a clean interface and simplicity. It’s a toy, not a tool.

4 columns, about 50 thumbnail sized images, 2 navigation menus with sub-menus... What the hell am I supposed to be looking at here?
As I see it, Google+ is gearing up to be more of a tool. The first and most obvious aspect of this is that in Google+ you can control who sees what you post. There are too many nightmarish stories about companies investigating people’s Facebook habits and not hiring, or even firing them over a post intended for friends. There is no fine grained control over who you’re talking to (actually there is some control buried in their ‘groups’ which most people don’t use because it’s confusing and tedious) nor is there any control over who can view photos you post. You can forget posting pictures about your drunken antics or ranting about how you hate kittens if you have anyone important on your friends list. Google+ has “circles” to give you at least some ability to segregate your social circles. You can have conversations with a group of people you trust while excluding those you don’t.
Sharing photos is leagues beyond Facebook’s clunky interface for managing albums. Anyone who takes their photography seriously will find this appealing, especially if they routinely have to upload lots of pictures and want to share them with people outside of Facebook. Picasa is a tool for sharing photos in general, not a toy relegated to showing other Facebook friends what you’re up to.
The chat functions for both clients are almost the same for exchanging text (though Google has a leg up by integrating it with Android and Gmail) but Google’s voice chat is very well integrated and battle tested while Facebook only recently acquired Skype and is in the process of integrating it with theirs. Google+ hangouts can be used for conference calling and if Google realizes this and adds more video conferencing options such as the ability to show your desktop to others this could be a professional tool. For face-to-face talking with friends, though, it’s already better than Skype.
Beyond this is the possibility for integration with other Google technologies (such as Google docs) that have been geared towards businesses and that have not been traditionally part of “social networking” (read: Facebook). If Google takes advantage of their strengths in this area, they will have a product that is simply more practical than Facebook for many people.
Finally I have one last point to make regarding the difference between the two: the social crowds in each of them is different. The kinds of people one finds in each site are already well defined, and this is going to continue for some time. Despite Google+ being more of a “tool”, it’s still a way to define your identity, like driving a certain type of car. I don’t want to be seen in a Facebook (a sparkly blue Honda civic with an over-sized spoiler) when I could be cruising around in a Google+ (a Prius?). I expect to see more tech savvy people in Google+, but less “hot chicks” spamming photos of their night club activities. I’m actually OK with that.