Fishpool

To content | To menu | To search

Tag - predictions

Entries feed - Comments feed

Tuesday 1 January 2013

A review of 2012 and a look into the future

Happy New Year! I've done the traditional review and predictions thing here for the past few years, and it's that time again. This time around, it's really difficult for me to see the big trends, having been heads-down in start-up building for most of the year. On one hand, that's of course a problem; if I can't describe what's going on around us, how can I know where to head? Yet, most startup decisions really have very little to do with this level of thinking -- once a rough vision is in place, it's more about finding the right people to execute that vision with and not a lot about what are other people doing. So, I haven't really spent enough time putting these thoughts in order, but it'd be a shame to skip this chance.

On the recap side: I predicted that the Euro crisis would continue to play out, that governments would try to regulate Internet, that Facebook would continue to dominate but the "gatekeep net content" stuff would fail, that we'd see a lot of rise in enterpreneurship (would it be safe to call 2012 the year of Kickstarter?) and that we'd see a completely new class of social games, and I'm very happy to see good friends at Supercell emerge as the early leader there. Well, I was pretty vague a year ago, so it's easy to claim I'm a good prognosticator :). I can't make a call on the data-driven medical stuff, not having really followed developments there, though I suppose at least 23andme's massive new funding counts. From earlier stuff, motion controls are now on high-end televisions, though the applications are still pretty raw.

Then there's the personal recap that's far too close for me to summarize it well. 2012 has been a year of change, learning and growth. The chronological highlights: ending a good period at Sulake, using all that I learned there to help several very cool startup teams accelerate on their path to success, helping my spouse get her own startup movingfounding another startup with a great team and most importantly, witnessing and guiding our daughter learn new stuff every day over her second year.

What's in the future? I remain especially bullish on two very large, very disruptive trends - the custom healthcare I already wrote about earlier as well as custom manufacturing (whether 3D printed or otherwise). For sure, 3D printing is advancing really fast right now, and it's reasonable to expect some devices come out of hobbyist-tinkerer labs and prototype studios to regular homes and offices. However, it's not just 3D printing but all kinds of digitally driven manufacturing from custom shoes and jeans to customer-specified patterns or designs on everything. With laptop vinyl skins, tableware and lampshades done, what's next?.

While these deliver value in different ways, they're driven by the same trends powered by digital technology and data. Computing is no longer just computing. Ultimately, we're only a few short years away from Neal Stephenson's Diamond Age. Okay, perhaps not the nanotech, but most other stuff for sure.

Looking at my past predictions, I've been far more focused on the pure computing stuff before. On that note, we're still in the middle of the platform disruption. Though touch computing has clearly taken a leading position in application development, we're still missing a capable standard platform. iOS is capable but proprietary, HTML5 is still not fully here, Android is grabbing market share but at a massive fragmentation cost, and so on. I haven't seen this many new languages and frameworks pop up all over the place since the early 90's. What's going to be the Windows 95 and Visual Basic of this era?

Wednesday 12 December 2012

A marriage of NoSQL, reporting and analytics

Earlier today, I mentioned querymongo.com in a tweet that fired off a chat covering various database-related topics each worth a blog post of their own, some of which I've written about here before:

One response in particular stood out as something I want to cover in a bit more detail that will fit in a Tweet:

While it's fair to say I don't think MongoDB's query syntax is pretty in the best of circumstances, I do agree that at times, given the right kind of other tools your dev team is used to (such as, when you're developing in a JavaScript-heavy HTML5 + Node.js environment) and the application's context is one where objects are only semi-structured, it can be a very good fit as the online database solution. However, as I was alluding to in the original tweet and expounded on in its follow-ups, it's an absolute nightmare to try to use MongoDB as the source for any kind of reporting, and most applications need to provide reporting at some point. When you get there, you will have three choices:

  1. Drive yourselves crazy by trying to report from MongoDB, using Mongo's own query tools.
  2. Push off reporting to a 3rd party service (which can be a very, very good idea, but difficult to retrofit to contain all of your original data, too).
  3. Replicate the structured part of your database to another DBMS where you can do SQL or something very SQL-like, including reasonably accessible aggregations and joins.

The third option will unfortunately come with the cost of having to maintain two systems and making sure that all data and changes are replicated. If you do decide to go that route, please do yourself a favor and pick a system designed for reporting, instead of an OLTP system that can simply do reporting, when pushed to do so. Yes, that latter category includes both Postgres and MySQL - both quite capable as OLTP systems, but you already decided to do that using MongoDB, didn't you?

Most reporting tasks are much better managed using a columnar, analytics-oriented database engine optimized for aggregations. Many have spawned in the last half a decade or so: Vertica, Greenplum, Infobright, ParAccel, and so on. It used to be that choosing to use one might be either complicated or expensive (though I'm on record saying Infobright's open source version is quite usable), but since last week's Amazon conference and its announcements, there's a new player on the field: Amazon Redshift, apparently built on top of ParAccel, priced at $1000/TB/year. Though I've yet to have a chance to participate in its beta program and put it through its paces, I think it's pretty safe to say it's a tectonic shift on the reporting databases market as big or bigger as the original Elastic Compute Cloud was to hosting solutions. Frankly, you'd be crazy not to use it.

Now, reporting is reporting, and many analytical questions businesses need to solve today really can't be expressed with any sort of database query language. My own start-up, Metrify.io is working on a few of those problems, providing cloud-based predictive tools to decide how to serve customers before there's hard data what kind of customers they are. We back this with a wide array of in-memory and on-disk tools which I hope to describe in more detail at a later stage. From a practical "what should you do" point of view though -- unless you're also working on an analytics solution, leave those questions to someone who's focused on that, turn to SaaS services and spend your own time on your business instead.

Sunday 1 January 2012

Dusting off the looking glass

It's that time again... to make a few statements I can feel ridiculous about later on. I did take an advance position back in October regarding Internet platforms, so no need to touch that topic again just yet (especially after the additional HTML5/Flash comments in November). As before though, let's take a look at what my hit rate is.

#1 Oracle's jostling on Java patents will hurt Java as a platform: yeah, although it's hard to notice, what with the chatter on cloud platforms instead. Still, you've got to write that cloud-hosted application in some language, and though evidence is sparse, it seems to me that more devs are picking other tools. Somewhat insanely, PHP still ranks well in those selections, which proves that these things don't follow any observable logic, though.

#2 Amazing natural motion control applications during 2011: well, not really, yet. XBox Kinect has supposedly continued to sell well, though Microsoft hasn't given any sales data since last March (when they announced 10 million units sold), but applications are rather lame. Some pretty amazing research stuff going on though, which will ultimately enable computers to truly augment live views into the real world.

#3 Flash and new computing devices: see the other posts, linked above. Progress is steady but impact will take several years. As for the long-term view; while my daughter already understands that tablets and phones are for looking at stuff and playing, and keyboards are for banging, I maintain hope that in the next couple of years, she will be able to interact with computers by speech as well as gestures. We'll still need to invent the new human-computer interface best practices for that age, though.

Facebook/Timeline did finally launch before end of 2011. What do you think of it? I haven't seen a reason to change my view since October, although the "social reader" apps like Washington Post's or Guardian's certainly are annoying. Don't know if I should expect media companies to learn how to interact with people, though.

Now, the predictions. This one's gonna be difficult. Not because the world would be ending this year, but because it seems like quite a few macro trends are converging. Lots to feel optimistic about: locally, the interest in growth entrepreneurship and globally, new forms of peaceful citizen democracy, and the ever-continuing development of technology (gene therapy and data-driven, preventative medical treatments are exciting). A few that I hope will turn out well, though it's going to be a bumpy road: the ongoing Arab Spring as well as the Russian pro-democracy movement, the Euro crisis, which could still lead to yet another banking collapse. And finally, some political and regulatory changes that are quite worrying, even if I've tried to avoid a position on politics, and especially politics outside the EU. Still, these bother me for both their privacy as well as anti-competitive aspects and lack of due process: ACTA, SOPA, NDAA. Still, these are hardly going to bring the Singularity around quite yet, dystopian though they seem.

However, I don't want to pretend I care about or follow politics closely enough to understand why these things always come years behind and over-reach, so I'd rather focus on something more tractable. In terms of professional interests, the trend toward hosted, multiplayer gaming is, by now, quite unstoppable. We're moving on from the Social Games 1.0 of Facebook Canvas, though, and the future is more for games where the players' actions impact each other. The challenge is, we need to learn to design these games so that while they truly have group interaction in their core, they still remains games; that is, masterable, repeatable and somewhat predictable experiences people can continue to enjoy, and a source of richness their lives might otherwise be lacking.

As always, comments welcome. This year this post was quite hard to focus on anything in particular, and maybe you have better insight. Let me know. In any case, Happy New Year! Whatever you do, make 2012 matter.

Monday 14 November 2011

Flash is dead? What changed?

So, Adobe finally did the inevitable, and announced that they've given up trying to make Flash relevant on mobile devices. Plenty has been written already about what lead to this situation, and the "tech" blogosphere certainly has proved their lack of insight in matters of development again, so maybe I won't go there. Flash plugin has a bad rap, and HTML5 will share that status as soon as adware crap starts to be made with it. It's not the tech, but its application.

So, lets focus on the developer angle. Richard Davey of Aardman and PhotonStorm is offering a developer-focused review into the alternatives. TL;DR; Flash is what's there now, but learn HTML5 too. Yeah, for web, I would agree.

However, that misses the big picture as well. Choosing any tech today for the purpose of building games for Web is deciding a future course by the back-view mirror. Web, as it is today, is about a 500M connected, actively used devices market. Sure, more PCs have been sold, and about that many are sold both this and next year, but the total number of devices sold doesn't matter - the number of people using them for anything resembling your product (here, games) does. So, I'll put a stake in the ground at 500M.

In comparison - iPad and other tablets reach about 100M devices this year, and projections look like about as much more next year. I would argue that most of them will be used for casual entertainment, at least some of their active time. That makes tablet-class devices (large touchscreen, no keyboard, used on a couch or other gaming-friendly situations) a significant fraction of the Web market already, and that will only be growing going forward.

Mobiles are a class of their own. Several billion devices already, maybe about a billion of them smart phones, some projections claim another billion smart phone-class devices to be sold next year. Just by limiting the market to only those devices which sport installable apps, touch screens, significant processing power (think iPhone and Android devices, possibly excluding lowest-end Android and the iPhone 1.0 and 3G), you're still looking at a potential market of 1 billion devices or so. Now, phones are not in my book very gaming-friendly - the screen is small, touch controls obscure parts of it, play sessions are very short, the device spends most time in a pocket and rarely gets focused attention, and play can be interrupted by many, many things. Still, as we've seen, great games and great commercial success can be created on the platform.

However, lets not pretend that a Web game could ever have worked on either a tablet or a phone without significant effort, both technical and conceptual. The platforms' underlying assumptions simply are too different.

So, how would you go about choosing a technology for creating a game for the future, instead of the past?

The choices are:

  • Native, writing for iOS only. Decent tools, except when they don't work, one platform, though a relatively large one with customer base proven to be happy to spend on apps.
  • Native, writing for iOS and Android. Perhaps for Windows Phone too, if that takes off. Welcome to niche markets or fragmentation hell.
  • Native, but with a cross-platform middleware that makes porting easier. Still, you're probably dealing with low-level crap on a daily basis.
  • HTML5, if you're willing to endure an unstable, changing platform, more fragmentation, dubious performance, and frankly, bad tools. Things will be different in a couple of year's time, I'm sure, but today, that's what it's really like. I would do HTML5 for apps, but not for games, because that way you'll get to leverage the best parts of web and skip on the hairiest client-side issues. In theory you'll also get Web covered, but in practice, making anything "advanced" work on even one platform is hard work.
  • AIR, if you continue to have faith that Adobe will deliver. In theory, this is great: a very cross-platform tech, you can apply some of the same stuff on Web too, get access to most features on most platforms on almost-native level, performance is not bad at all, and so on. Except in practice HW-accelerated 3D actually isn't available on mobile platforms, its cousin Flash was managed to oblivion, and perhaps most crucially, Adobe's business is serving ad/marketing/content customers, not developers. I keep hoping, but the facts aren't encouraging. For now though, you'd base your tech on a great Web platform with a reasonable conversion path to a mobile application, caveats in mind.
  • Unity, if you're happy with the 3D object-oriented platform and tools. You'll get to create installable games on all platforms, but lets face it: you will give up Web, because Unity's plugin doesn't have a useful reach. Here, the success case makes you almost entirely tables/mobile, with PC distribution (in the form of an installable app, not a Web game) less than a rounding error. This is probably what you'd be looking for in just a few years time anyway, even if today it looks like a painful drawback.
Conclusion: Working on tools? HTML5. Web game for the next 2 years? Flash 11. Mobile game? Unity, if its 3D model fits your concept. AIR if not, though you'll take a risk that Adobe further fumbles with the platform and never gets AIR 3 with Stage3D enabled on mobile devices out the door. Going native is a choice, of course, but one that exceeds my personal taste for masochism.

On the upside, Unity is actively doing something to expand their market, including trying to make Unity games run on top of Flash 11 on PC/Mac, so in theory you might be getting the Web distribution as a bonus. Making code written for Mono (.NET/C#/whatever you want to call it) run on the AS3/AVM Flash runtime is not an easy task though, so consider it a bonus, not a given.

Thursday 13 October 2011

Where the chips fall - platform dominator for 2012

It's been about a year since I put my prognosis skills on the line and tried to predict where technology and consumer products are heading. Since today is National Fail Day in Finland, perhaps it's time to try again. Lets see how right or wrong I end up being.

Last year I noted a couple of things about mobile platforms and of the software environments best suited for creating apps on them. While this year has seen a lot of development on those fronts, little of it has been in surprising directions. HTML5 is coming, but not here yet. If WebGL and Intel's River Trail project were supported by the Big Three (IE, Firefox and WebKit, ie Safari/Chrome), that'd make an amazing game platform - but at least the latter is research-only at this point, and IE9 isn't going to support either. In the meantime, Adobe finished Flash 11, which now has hardware-accelerated 3D in addition to a pretty good software runtime, and, after only 10 days out, already has 42% reach for consumer browsers (at least judging by stats on habbo.com). Like I've said a long time, Flash gets a lot of undeserved crap due to the adware content created on it. We won't get rid of that by changing tech, and platforms should be judged by their capabilities in the hands of good developers, not by mediocrity. And, as far as mobile goes, the trend continues -- iPhone and Android battle it out, now also in courts as well as in consumer markets, while everything else falls under the wagon. If you're creating an app -- do it either with a cross-platform native toolchain, or with HTML5. If you're doing a game, do it with Unity or Flash, and build a native app out of it for mobile.

The interesting thing, to me, is playing out on the Internet. Google+ came out as a very nice product with well-balanced feature set, but (fairly predicably, though I was rooting for it) failed to catch the early adopter fancy for long enough to displace Facebook in any niche. Facebook, on the other hand, scared (or is going to scare) 40% of their audience by announcing Timeline (eek, privacy invasion!). Brilliant move -- you can't succeed today without taking such leaps that nearly half of your audience will be opposed to them, at least initially. Smaller changes simply aren't meaningful enough.

So, I'm betting on Facebook. I'd also guess that once they get Facebook Credits working outside of the Canvas, they're going to demand that any app using Facebook Connect log-ins will accept Credits for payment. I'd hazard a guess they're even going to demand FB Credits exclusivity. They'll fail the latter demand, but that won't stop them from trying it. Having your app's/game's social publishing automatically done by Facebook simply by feeding them events, and not having to think about which ones are useful to publish, is just such a big time saver for a developer, no one will want to miss out on it.

Not even Zynga. They're doing this destination-site, we're-not-gonna-play-inside-Facebook-anymore strategy, but continue to use Facebook Connect for log-ins. That's not because FB Connect is so much more convenient than own username and password (though it is), but because even they can't afford to let go of the "free" access to people's social network. That's the power of Timeline and the new, extended Graph API.

The chips are still in the air. When they fall, I think Facebook will be stronger than ever, but strong enough to displace the "rest of the Internet"? No. As a developer, I want to push Facebook the data for in-game activities, because that saves me time doing the same thing myself. As a publisher, I'm unsure I want Facebook to have all that info, exploiting them for their purposes, risking my own ability to run a business. As a consumer, it makes me uneasy that they have all that info about me, and while I can access and control quite a lot of it, I can't know what they're using it for. I don't think that unease will be enough to stop me or most other consumers from feeding them even more data of our lives, likes and activities. Still, they're only successful doing this as long as they don't try to become a gatekeeper to the net - nor do they need to do that, since they get the data they want without exerting control over my behavior. Trying to fight against that trend is going to be a losing strategy for most of us - possibly even for Google. Apple and Microsoft won't need to fight it, because they're happy enough, for now at least, to simply work with Facebook.

Thursday 13 January 2011

A last look at 2010... and what's in sight?

For a few years, I've tried to recap here some events I've found notable over the past year and offering some guesses on what might be ahead of us. I'm somewhat late on these things this year, due to being busy with other stuff, but I didn't want to break the tradition, no matter how silly my wrong guesses might seem later. And again, others have covered generals, so I'll try to focus on specifics, in particular as they relate to what I do. For a look at what we achieved for Habbo, see my recap post on the Sulake blog.

This time last year Oracle still had not successfully completed the Sun acquisition due to some EC silliness, but that finally happened over the 2010. It seems to be playing about how I expected it to - MySQL releases have started to appear (instead of just being announced, which was mostly what MySQL AB and Sun were doing), and they actually are improvements. Most things are good on that front. On the other hand, Oracle is exerting license force on the Java front, and hurting Java's long-term prospects in the process, just at a time when things like Ruby and Node.js should put the Java community on the move to improve the platform. Instead, it looks like people are beginning to jump ship, and I can't blame them.

A couple of things surprised me in 2010. Nokia finally hired a non-Finn as a CEO, and Microsoft's Kinect actually works. I did mention camera-based gesture UIs in my big predictions post, but frankly I wasn't expecting it to actually happen during 2010. Okay, despite the 8 million units, computer vision UIs aren't a general-purpose mass market thing yet, but the real kicker here is how easy Kinect is to use for homebrew software. We're going to see some amazing prototypes and one or two actual products this year, I'm sure.

In terms of other software platform stuff, much hot air has been moved around iOS, Android, JavaScript and Flash. I haven't seen much that would have made me think it'd be time to reposition yet. Native applications are on their way out (never mind Mac App Store, it's a last-hurrah thing for apps which don't have an Internet service behind them), and browser-based stuff is on its way in. Flash is still the best browser-side applications platform for really rich stuff, and while JavaScript/HTML5/Canvas is coming, it's not here yet. For more, see this thread on Quora where I commented on the same. Much of the world seems to think that HTML5 Video tag, h.264 and VP8 equate to the capabilities of Flash, that's quite off-base.

On the other hand, tablets are very much the thing. I very much expect that my Galaxy Tab will be outdated by next month, and am looking forward to the dual-core versions which probably will be good for much, much more than email, calendar, web and the occasional game. Not that I'm not already happy about what's possible on the current tablets -- I carry a laptop around much less already. An in terms of what it means for software -- UI's are ripe for a radical evolution. 

The combination of direct touch on handheld devices and camera-read gestures on living-room devices is already here, and I expect both to shift on to the desktop as well. Not by replacing keyboards, nor necessarily mouses, but I'm looking forward to soon having a desktop made out of a large near-horizontal touchscreen for arranging stuff replacing the desk itself, a couple of large vertical displays for presenting information, a camera vision for helping the computer read my intentions and focus on stuff, and keeping the keyboard around for rapid data entry. One has to remember that things for which fingers are enough are much more efficiently done with fingers than by waving the entire hand around.. 

Will I have such a desk this year? Probably not. At the workplace, I move around so much that a tablet is more useful, and at home, time in front of a desktop computer grew rather more infrequent with the arrival of our little baby girl a few weeks ago.. But those are what I want "a computer" to mean to her, not these clunky limited things my generation is used to.

Friday 10 September 2010

Fall 2010 consumer technology commentary

I know, no one probably cares or even will find out what I think of the technology scene, but hey, I have to keep notes for myself, so here's a copy for the benefit of you, my 700 monthly visitors, too. Hope you'll find it at least marginally useful :)

Yesterday's big news first, Apple backtracks on their ban of third-party developer tools, ie Flash, on the iOS platform. The timing is interesting, I certainly wasn't expecting it just at this moment, but in the long run it was always coming - Apple wasn't enforcing the rules against Unity and others, so they were just playing time, trying to convince developers to target native iOS instead of cross-platform tools. Well, that part of the game is over, and they handed out quite a lot of mindshare for Android. Now, consumers and developers alike are going to benefit from a pretty even game between several mobile and tablet device platforms with great apps on each. So, good news, all around.

The other drama unfolding over the year, at least from this Nordic perspective, has been Nokia's failure to respond to the competition. N900 was a disappoinment, N8 is late, Meego devices are slipping further (apparently not to be introduced in next week's Nokia World either), and so on. Then you get these brilliant analyses explaining Nokia won't use Android because that would mean loss of control. I'm sorry, what control? First Meego devices have been spotted, but not with a Nokia logo on them. No one else is doing anything interesting with Symbian, but that's not because of Nokia's control -- Symbian just isn't interesting. No, Nokia hasn't been in control of the only thing that matters, timely, focused development, ever since they hitched onto to the Symbian horse. Their process isn't one of software developers, and until they learn that, don't expect anything breathtaking out of Espoo. Sorry, guys, I would love to see you succeed.

Update: oh, this was a surprise: Nokia gets a new CEO from Microsoft, Olli-Pekka Kallasvuo is out in a week. Nokia World just got interesting.

Still, as an application developer, Nokia remains interesting as long as they offer a compatible platform, thanks to their wide reach on the market. Unfortunately it seems even they have given up on supporting any older generation device, and have not heard the cries for less fragmentation, so my advice: for new software, S60 is as good as dead, and on Symbian^3, don't even look at Qt. Web applications are the way to go, and I keep hoping Nokia will pay up for Adobe to put AIR also on their devices. Having the same Flash-based, touch-enabled rich API and runtime on Android, Nokia, Palm, Apple and Blackberry would be the dream come true.

On the consumer side, tablets are coming even faster than I was expecting back in the beginning of the year. That'll be the hot electronics product for this Christmas, for sure. Homes were rapidly shifting from desktops to laptops for convenience of living room use when netbooks came along, but netbooks were in this uncomfortable corner between computer shape and mobile performance. Tablets are a MUCH better fit - convenient, one-piece construction, easy to pass around. Long battery life, enabling a full afternoon of entertainment. A UI perfect for casual interaction. Even easier to take along on a trip than a netbook. Plus, thanks to the simpler construction and mobile-inherited technology, they can even be cheaper than the folding/keyboard netbook form factor. Who doesn't want to have one? I'm even anticipating shifting my professional computing onto one (with all heavy lifting on a data center-hosted virtual desktop, of course).

Well, that's it for this morning - meetings call. Feel free to leave feedback!

Thursday 14 January 2010

Technology factors to watch during 2010

Last week I posted a brief review of 2009 here, but didn't go much into predictions for 2010. I won't try to predict anything detailed now either, but here's a few things I think will be interesting to monitor over the year. And no, tablet computing isn't on the list. For fairly obvious reasons, this is focused on areas impacting social games. As a further assist, I've underlined the parts most resembling conclusions or predictions.

 

Social networks and virtual worlds interoperability

As more and more business transforms to use Internet as a core function, the customers of these businesses are faced with a proliferation of proprietary identification mechanisms that has already gotten out of hand. It is not uncommon today to have to manage 20-30 different userid/password pairs that are in regular use, from banks to e-commerce to social networks. At the same time, identity theft is a growing problem, no doubt in large part because of the minimum-security methods of identification.

Social networks today are a significant contributor to this problem. Each collects and presents information about its users that contribute to the rise of identity theft while having their own authorization mechanisms in a silo of low-trustworthy identification methods. The users, on the other hand, perceive little incentive to manage their passwords in a secure fashion. Account hijacking and impersonation is a major problem area to each vendor. The low trust level of individual account data also leads to a low relative value of owning a large user database.

A technology solution, OpenID is emerging and taking hold in a form of an industry-accepted standard for exchanging identity data between an ID provider and a vendor in need of a verified id for their customer. A few of current backers of the standard in the picture on the right. However, changing the practices of the largest businesses has barely begun and no consumer shift can yet be seen – as is typical for such “undercurrent” trends.

OpenID will allow consumers to use fewer, higher-security ids over the universe of their preferred services, which in turn will allow these services a new level of transparent interoperability in combining data from each other in near-automatic, personalized mash-ups via the APIs each vendor can expose to trusted users with less fear of opening holes for account hijacking.

 

Browsers vs desktops: what's the target for entertainment software?

Here's a rough sketch of competing technology streams in terms of two primary factors – ease of access versus the rich experience of high-performance software. “Browser wars” are starting again, and with the improved engines behind Safari 4, Firefox 4, IE 8 and Google Chrome, a lot of the kind of functionalitywe're used to thinking belongs to native software or at best browser plugins like Flash, Java or Silverlight will be available straight in the browser. This for sure includes high-performance application code, rich 2D vector and pixel graphics, video streams and access to new information like location-sensing. The plugins will most likely be stronger at 3D graphics and synchronized audio and at advanced input mechanisms like using webcams for gesture-based control. Invariably, especially the new input capabilities will also bring with them new security and privacy concerns which will not be fully resolved within the next 2-3 years.

While 3D as a technology will be available to browser-based applications, this doesn't mean the web will turn to represent everything as a virtual copy of the physical world. Instead, it's best use will be as a tool for accelerating and enhancing other UI and presentation concepts – think iTunes CoverFlow. For social interaction experiences, a 3-degrees-freedom pure 3D representation will remain a confusing solution, and other presentations such as axonometric “camera in the corner” concepts will remain more accessible. Naturally, they can (but don't necessarily need to) be rendered using 3D tech.

 

Increased computing capabilities will change economies of scale

The history of the “computer revolution” has been about automation changing economies of scale to enable entirely new types of business. Lately we've seen this eg by Google AdWords enabling small businesses to advertise and/or publish ads without marketing departments or involvement of agencies.

The same trend is continuing in the form of computing capacity becoming a utility in Cloud Computing, extreme amounts of storage becoming available in costs which allow terabytes of storage to organizations of almost any size and budget, and most importantly, developing data mining, search and discovery algorithms that enable organizations to utilize data which used to be impossible to analyze as automated business practices. Unfortunately, the same capabilities are available for criminals as well.

Areas in which this is happening as we speak:

  • further types and spread of self-service advertising, better targeting, availability of media
  • automated heuristics-based detection of risky customers, automated moderation
  • computer-vision based user interfaces which require nothing more than a webcam
  • ever increasing size of botnets, and the use of them for game exploits, money laundering, identity theft and surveillance

The escalation of large-scale threats have raised the need for industry-wide groups for exchanging information and best practices between organizations regarding the security relevant information such as new threats, customer risk rating, identification of targeted and organized crime.

 

Software development, efficiencies, bottlenecks, resources

Commercial software development tools and methods experience a significant shift roughly once every decade. The last such shift was the mainstreaming of RAD/IDE-based, virtual-machine oriented tools and the rise of Web and open source in the 90s, and now those two rising themes are increasingly mainstream while “convergent”, cross-platform applications which depend on the availability of always-on Internet are emerging. As before, it's not driven by technological possibility, but by the richness and availability of high-quality development tools with which more than just the “rocket-scientist” superstars can create new applications.

The skills which are going to be in short supply are those for designing applications which can smoothly interface to the rest of the cloud of applications in this emerging category. Web-accessible APIs, the security design of those APIs, efficient utilization of services from non-associated, even competing companies, and friction-free interfaces for end users of these web-native applications is the challenge.

In this world, the traditional IT outsourcing houses won't be able to serve as a safety valve for resources as they're necessarily still focused on serving the last and current mainstream. In their place, we must consider the availability of open source solutions not just as a method for reducing licensing cost, but as the “extra developer” used to reduce time-to-market. And as with any such relationship, it must be nurtured. In the case of open source, that requires participation and contribution back to the further development of that enabling infrastructure as the cost of outsourcing the majority of the work to the community.


Mobile internet

With the launch of iPhone, the use of Web content and 3rd party applications on mobile devices has multiplied compared to previous smart phone generations. This is due to two factors: the familiarity and productivity of Apple's developer tools for the iPhone, and the straightforward App Store for the end-users. Moreover, the wide base of the applications is primarily because of the former, as proven by the wide availability of unauthorized applications already before the launch of iPhone 2.0 and the App Store. Nokia's failure to create such an applications market despite the functionality available on S60 phones for years before the iPhone launch proves this – it was not the features of the device, but the development tools and application distribution platform were the primary factor.

The launch of Google's Android will further accelerate this development. Current Android-based devices lack the polish of iPhone, and the stability gained from years of experience of Nokia devices, yet the availability of development tools will supercharge this market, and the next couple of years will see accelerated development and polish cycle from all parties. At the moment, it's impossible to call the winner on this race, though.

Monday 4 January 2010

Happy 2010 - it's review time

I was happily snowboarding and skiing (the latter for the first time in two decades) last week, so here comes the year-end review a week late. Last year, I harped on Facebook's closed nature, and over the the year they've tried to open more of the users' data over to the Internet. Still, there are no decent APIs for a user to pull out everything they've posted to Facebook to have their own copy, though. That doesn't seem to stop them from dominating the Internet for the time being, though, so good for them.

I'm trying to think of what would have surprised me over the year, but given I failed to make many accurate predictions myself, things just seemed to happen in pretty natural direction. Oracle's Sun acquisition over in April was a bit of a surprise at the time, but since then, I've grown to appreciate how it might make sense for Oracle. However, what still baffles me is that EC is going along with Monty's campaign of blocking the completion of that acquisition. Look, guys - the entire world does not need to agree on a commercial transaction in order for one to go through! MySQL is not the important thing here overall, Java is.

We managed to complete a few of major transitions for Habbo, most notably replacing the Shockwave client which was getting a bit long in the tooth with an all-new Flash-based Habbo Hotel and integrating Habbo with Facebook and other social networks. I didn't write about either of those launches here at the time, but these are pretty huge things for us because they make approaching Habbo much easier for a new user, and enable us to create all kinds of interesting features that would not have made sense previously.

So, what do I expect from 2010? Well, did the mobile Internet already happen? If not, at least it has a fighting chance this year. I'm having a hard time identifying any people close to me who're not using some Internet services on their phone by now, and some seem to be doing that almost exclusively on a phone. That must mean the rest of the world is close on their heels. As for more predictions, others have taken care of them by now.

One promise I can make is to try to do my part in making the Internet more fun and more social. At least now that even newspapers are beginning to think that asking their readers for money is not just a utopia, we can focus on the apps themselves, not whether they're ad-supportable.

Have a great year MMX!

Sunday 28 December 2008

A year-end review

2008 is nearly over, and it's time to take a look at what happened over the year, as well as to take a peek at the the coming 2009. A year ago I made a guess that social networking services would open up and start sharing their profiles – well, practically everyone but Facebook are doing some of that, and Facebook is trying to get everyone to depend on them – not that “create dependency” isn't a part of Google's and MySpace's plan, too. Unfortunately, we haven't yet found a meaningful way for Habbo to participate in this festival, due to differences in demographies, interest areas, and the priority of running a profitable business, instead. Still looking for that solution, though.

I also guessed that productivity applications would seriously move to the cloud – and was a bit too optimistic on that one. Sure, the applications are there, but I don't really see any of them having replaced the desktop-based counterparts – nor do I see that happening next year, either. People are, rightly so, focused somewhere else, and while over the long run moving off to the cloud will make sense from both productivity and cost standpoint, it's still too much of a jump, and too expensive to make.

The increasing popularity of netbooks, Internet access via 3G networks, etc, will have an impact on that, though. Perhaps we'll all move out to the net in a completely different way: not via our old productivity apps, but via entirely new class of applications. Something else than Facebook and Twitter though, I hope.

What else? MySQL was acquired by Sun, and we're all still waiting for the next step. The Register (I can't believe I keep reading it) has somehow gotten the impression that Sun has slowed MySQL down – nah, it's been this slow for at least three times that long. Fortunately, the acquisition may have been a catalyst for the MySQL developer community to start doing something else instead of waiting, and I'm really looking forward to the improvements Percona and Drizzle are making to keep MySQL competitive. As for Sun – time to stop confusing a good thing with dubious business models and bad release engineering before you lose all your customers, I'd say. At the same time, I'm also super-interested in the stuff Sun is doing on the hardware side of database storage with SSD-optimized solutions. Can't say I paid much attention to Sun there for a while, but they're making what seems like an unlikely comeback.

For Habbo, we've continued making progress on the track chosen late 2007 – revolutionary changes made incrementally. Biggest one this year, the free second currency of Pixels, was just launched a month ago. Several improvements are coming up for that, of course, and a whole lot of other stuff is in the works, or at least being thought of. We're trying not to hold anything longer than it absolutely needs to, so everything radically new continues to be launched sort-of unfinished and get improved along the way. It just ends up being so much better that way, as the feedback makes a significant contribution to the overall design.

This a weird time. The world is reeling from what indeed may be the worst economic crisis in 75 years (though I'm not well versed enough in history to be able to tell myself), and still (or because of it?), opportunities lie all around, ignored by most. It's never easy to tell which direction is most promising, but now I'm finding it incredibly hard to choose and prioritize between the possible things to focus on. Still, 2009 is definitely going to be a year to really focus on even fewer things than usual, and really kick ass on those.

If you made it this far, thanks for reading. I wish you a great year 2009, whatever it is you're doing.

- page 1 of 2