Double-plus Google: finally, a mass market enterprise social network

June 28, 2011 | 1 comment

I’ll spare you the summary post for Google+; you can get that on TechCrunch, Mashable, the New York Times and in about a thousand other places. It’s a social sharing component that’s directly integrated into Google, enhancing everything they do. It puts privacy front and center using a long-rumored feature called Circles, which in my opinion mostly serves to make the user feel safe (after all, the data is still all stored on Google’s servers, so any appearance of deep privacy is an illusion). It learns from your social activity in order to recommend new content, thereby facilitating a kind of serendipity in content discovery that’s long been missing.

Although I haven’t used it first-hand yet, and Google often lets its ideas down with poor user experience, I think the concepts are brilliant: much-needed enhancements to the social networking paradigm that take it beyond the 2004-era profiles-friends-posts model. I can’t wait to try it out.

They’re not pushing this aspect too hard, but I think Google+ is going to be strongest in the area where Facebook is weakest: small to medium businesses. You’d have to be an idiot to try and use Facebook as an internal communication tool in any company, but by adding Circles, Google+ enables just that: you can share real-time content between just a small number of people. More than that, though, up to ten people can videoconference live, optionally while consuming that same content.

If Google have pulled this off, and if Google+ is properly integrated with Google Apps, they’ve instantly created the best business collaboration tool on the market – as well as a great tool for people who want to share in a much deeper, less trivial way than Facebook currently allows. If they then add an API layer, as they have with many of their other offerings, they’ve created a social layer for the web, just as Google Maps is for many people a location layer. It’s a really big deal.

Of course, it’s centralized on Google’s servers, and educational institutions, government organizations and anyone with a legal or ethical obligation to treat users’ data as being private should stay away. The decentralized web community is busy creating better tools for those use cases, and for anyone who cares deeply about privacy, as well as entirely new interface models. Circles itself is not a million miles away from Diaspora’s Facets, for example, and there’s still everything to play for. Nonetheless, Google have iterated social networking as a concept, and I’m fascinated to see how the web community in general responds.

Update: Google also announced Google Takeout today: a tool that allows you to export your Google data and take it with you. Google+ is very much in the mix here. Could this be the first mainstream social network to achieve real data portability? Given the number of decentralized social web advocates on the team, it wouldn’t be surprising.

Update 2: I took an export of my Google account via Takeout (you can do the same here) and although it’s impressive, I was left with questions. Why does Google Buzz export as a huge number of HTML files rather than an Activity Stream, for example? Where are my Google Docs files? It looks like the bundle wasn’t designed to import into other software, which I would have thought is kind of the point?

Java developers wanted

June 27, 2011 | Leave a comment

latakoo is looking for a Java developer. Interested? Get in touch.

Open source needs designers

Design is Not My Job 1It’s been a slow progression. First, I moved from Eclipse, for years my Integrated Development Environment of choice, to NetBeans, which I’ve been using for the last year or so. It’s faster, leaner, and less prone to bringing down my computer for no readily apparent reason. But now, slowly, I’m making my way to Coda. And it’s like a breath of fresh air. It just works.

It surely helps that Coda is a native code web development IDE, while the other two are optimized for (and built on) Java. For large applications, Java is a dog. But there’s something more to it: while NetBeans and Eclipse feel engineered, Coda feels designed. As well as checking that everything works, someone went through the trouble of checking how it feels to use. The emotional experience was an important part of the design.

Beyond programming languages and development methodologies, the most important skill a developer can have is empathy. To be useful, software needs to be built with a deep understanding of my needs as a user, which may be different to another user’s needs. I write both software and short stories, and I use the same approach for both: I’m writing for an audience. Open source often feels like it’s scratching an itch; rather than users, the software is often written for the developer. We know that over 80% of Linux kernel contributions are made by corporations, so it’s reasonable to infer that most open source software is built to feel an internal corporate need.

Consequently, interaction design is underrepresented in open source. Versions 0.1 through 0.9 of Elgg featured interfaces built by Dave Tosh and myself, reacting to reports of what users found difficult or confusing. They were usable, but although I’m proud of them, they were undeniably clunky. From version 1.0, we had Pete Harris on board, an actual UX designer, who made a world of difference to the project. I don’t think Elgg would be as popular as it is without him. (Now that he’s moved on – alongside the rest of the 1.0 core team – I’m interested to see how the interface develops.)

Open source is an important, valid methodology with many applications. I still completely stand behind it, but I’m not willing to use inferior software for ideology’s sake. So how can we improve the design ethic in open source?

Part of the problem is market. To be blunt, commercial software needs to sell, and usable interfaces are an integral part of that; open source projects don’t, and often sell support as a funding strategy. Making the software easier isn’t, therefore, always part of the dynamic. (You’ll notice that the best-designed open source projects - WordPress, StatusNet et al – all have a commercial version.) It’s also not necessarily part of the engineer’s agenda: I’ve too often heard software developers discuss design as a kind of fluffy afterthought that they don’t view as being as important. I try not to hire developers with this mindset; anyone who thinks they’re more important than anyone else in the development process is destructive.

Another problem, though, is designer attitude. Who wants to give away their hard work for free, after all? Designers already complain about their work being undervalued on marketplaces like 99designs. (Oddly, very few developers complain about their profession being undervalued on sites like oDesk, although I think it is.) While developers see having a Github repository as a kind of portfolio, and participation in an open source project as career-building, designers don’t have the same incentives. Although there are individual examples – Chris Messina’s involvement in Firefox undoubtedly boosted his career, for example – a designer’s participation in an open source community is not generally seen as being awesome. Yet.

Open source companies have an incentive here, and a responsibility to the community to promote this ethos. They should understand the importance of hiring designers, and they should give preference to designers who have contributed to open source projects. Most importantly, developers should understand that designers are engineers too: they just work with a different set of tools.

Illustration: Design Is Not My Job 1, by Andy Mangold, released under a Creative Commons license.

Agit props

June 13, 2011 | 1 comment

My talented friend Michael Goldrei designed the icon set for Agit, a Git client for Android by Roberto Tyley. Git has become the creative geek’s source control system of choice, and having a native Android client is a great thing. (Source control allows the source code for an application to be managed in a way that prevents developers from overwriting each other’s changes, or from making irreversible, catastrophic mistakes that destroy everything. It’s pretty much crucial in modern software development.)

If you’ve got an Android device, you can grab Agit from the Android Market over here.

Roberto actually fixed Android’s zlib implementation in the process; the patch he submitted is now running on some of the newer Honeycomb tablets. He’s also designed the app to share SSH connection information in a pool with other compatible apps – something that would be completely impossible on iOS. I’m looking forward to seeing more developer tools in this vein.

Next Page »