Showing posts with label web2. Show all posts
Showing posts with label web2. Show all posts

13 Jun 2009

Vancouver's Open Data, Open Standards, Open Source and the Vancouver Public Library

Vancouver has adopted a policy of Open Data, Open Standards, Open Source and I'm really excited about it. David Ascher presented on the topic at Open Web Vancouver 2009 and pointed out that if we don't engage the city and use this data it will go nowhere.

The Vancouver Public Library is one of my favourite places. I love libraries, I love books, but the library here in Vancouver is a really special library for me. So I've been thinking of ways that the library could share data so that I could build applications to make the library more interesting and more valuable to the people of the city.

Here's some data I'd like to have:
  • Books on order

    I'd like to know what new books are currently on order, but not available. I want a preview of coming attractions.

  • Most unpopular books

    What doesn't get checked out? What's likely to get sold in the next round of disposal, ahem, book sale?

  • Most popular books

    What's everybody reading?

  • Top 100 sites for library patrons

    What are the most popular sites browsed from the library? I'd like to be able to contrast this with the most popular sites according to Alexa. That should help tell the library what sorts of services patrons need.

These are things that I could mash up into interesting applications, such as presenting a unified view of new popular books on Amazon and which ones are in the library, or popular in the local community.

28 Oct 2008

Semantic web startup Twine hard to get wrapped up in

Twine is [yet another] site that offers recommendations for webpages, stories and information based on things that you've read. I've seen demos that are amazing, that pull together disparate threads of data in new and surprising ways. It is powered by some sort of fantastic semantic juju that allows it to create recommendations and connections that simpler probabilistic analyses cannot. Sounds good right?

The problem is that it is just too. damned. much. work. You start with nothing, and have to enter your links, from scratch, one at a time. You don't get any immediate satisfaction. Unlike FriendFeed or SocialMedian, it doesn't just figure stuff out based on your other activity elsewhere on the web. It doesn't even attempt to figure out what you already like. So all of the heavy lifting is left up to the user, and there's no immediate payoff. The new user is left wondering just what the hell this site is supposed to do for them.

So although it probably has good technology, so far it's a failure. If they don't realize that everybody's not suddenly going to start posting everything in their little walled garden with a promise of getting payoff, maybe, someday, they'll be left behind by other sites who have given a great experience out of the gate to new users. Other sites – Facebook, FriendFeed, etc. – can add this semantic hooey to their own sites at their leisure. Sometimes technology really doesn't matter.

23 Oct 2008

Central authentication is coming, and here's a good reason why

Some interesting reading today on OpenID, Facebook Connect, and the dog's breakfast of authentication standards in the market:
Facebook Connect and OpenID Relationship Status: “It’s Complicated” – John McCrea of Plaxo
The authentication landscape appears to be coalescing. I think a lot of vendors will still want to have a "walled garden" ID scheme, but I'm inclined to think their customers will drag them kicking and screaming into a federated identity world.

I have a good reason to think so. People already use a dangerous form of single sign in: they use the same user ID and password across multiple sites. Some day soon an enterprising young script kiddie from Yemen is going to sit down and write a Distributed Identity Theft Attack that will plunder the databases of weak sites (like some forum that you don't even remember signing up for) to take possession of more valuable sites (like Facebook and LinkedIn) and then finally the holy grail (your email account, used to unlock everything else). Nobody, not even Bruce Schneier (by his own admission), has a different password for every site: at best, we have low, medium, and high-security passwords. But if you're using the same password everywhere, you're only as secure as the weakest site you visit, which means gold bars for the putative Yemeni banks.

Also, über-paranoid password complexity and periodic forced password change rules actually encourage people to use a password formula across different sites, and to change only the last character in a preset sequence. They're virtually assured to do so, because security training has taught people to never, under any circumstances, write down their passwords. So a dictionary attack will still work in most cases for the DITA outlined above – forty-seven variants isn't a lot to try, and most sites don't lock accounts for password failure.

So go change your online banking password right now, I'll wait. Don't forget PayPal, too. And Amazon, which holds your credit card info, as does iTunes.

So, we'll stumble along with our user ID (which is, often as not, the email address) and password (same everywhere) until the Russian Business Network strings together some Perl code and causes a smart-spam and bank fraud wave big enough to shake consumer confidence in the web. At the very least, consumers will learn not to trust websites with homegrown authentication. They'll pick one or two big-name vendors they trust.

12 Jul 2007

Hot AIR

I went to a promotional tour for Adobe AIR today. The logistics of the event were a disaster: held on the roof of a bar on one of the hottest days of the year, in a room far too small for the number of attendees (crammed in like sweaty pickled herrings), with a weak projector giving an invisible presentation. Why they encouraged people to bring their laptops to an event like that I have no idea... Anyhow, I can forgive a disastrous event, but in this case even the most lavish event wouldn't have turned my head.

AIR promises to finally deliver on the elusive goal of "write once, run everywhere." The approach is to use the ubiquity of the Flash plugin to turn the browser inside out and run the WebKit engine everywhere, so web developers can just target one browser engine. The engine will be able to access OS-specific APIs as well, which makes it not the same everywhere, but never mind that. It also includes SQLite for a local store (just like Google Gears). It is the converse of Google Web Toolkit which abstracts the differences, but runs everywhere; it is similar to Silverlight but with the advantages of hordes of existing Adobe fans.

It is telling that in this effort, like with Flash, their Linux support is an afterthought (just as is "accessibility"). This explains their target market. Modern, freely available web tools allow for effective cross-browser development already, and weaving together a site with Flash and dynamic HTML works for most. But just as a caged animal returns to the cage after being freed, the Adobe faithful will gladly accept their shackles again and pay for access to AIR that others breathe for free.

3 Jul 2007

Developers vote with their feet

Market share of developers working on Microsoft Windows is down twelve percent since last year, from 74% in a 2006 survey to 64.8% in a 2007 survey. Linux jumped 30% from 8.8% to 11.8%. That's a scary trendline for Microsoft and everyone who has their trailer hitched to their semi.

Use of the Ruby language is expected to grow 50% over the next year. Note that almost all Ruby on Rails development will target Linux (as per manufacturer recommendation), and there's no economic reason to run it on Windows. There is virtually no desktop software written in Ruby.

The shift to web-based application development is picking up serious steam. A tiny minority of Windows defectors might target Linux desktop software, but most of them are targeting Linux as a web hosting platform. For example, most people who work at Google target Linux servers and generic browser clients, although the Picasa and Google Earth teams include Windows alongside Mac and Linux in their target platforms.

These developers that are abandoning Microsoft are not switching teams: they're switching games.

12 May 2007

27 Apr 2007

Adobe Flex now open source

I hadn't paid much attention to Adobe's Flex, but the announcement that Adobe is releasing the Flex libraries under the Mozilla Public License caught my attention. Instead of being a boring proprietary play for developers to work on Flash, this is a rather arousing engagement of the open source world.

The promise of Flex, as part of the Apollo Project, is that it will be a platform-independent development platform for Web 2.0-style applications with rich UI, no installation footprint (for applications, obviously not for the Flash player) and, perhaps most interestingly, disconnected use scenarios.

Currently there's no way to make your AJAX applications work offline. Yes, you can get halfway there, but once you lose your browser state you lose your work. So if you disconnect you'd better not lose power until you connect again. This is a real barrier, as anyone who works in online applications knows. Browser developers and others are working on solutions for this, which is essentially the last mile for full Web 2.0 adoption.

So, the MPL is a fascinating choice of licenses. It gives Adobe the advantages of a weak copyleft to keep a commercial developer from stealing their cookies, but still allows software developers to ship their product without giving up their own code.

Before you go thinking that Adobe has gone all communist on us, they are not talking about open-sourcing the Flash player. That may not matter too much, as the Flash player is now available on the three top platforms (Windows, Mac, Linux) but it does keep it from spreading to unexpected platforms like Symbian or BSD or whatever. As far as a mixed licensing model goes, it's kind of the converse of what Sun did with Java (GPL runtime and compiler, proprietary libraries).

My guess is that Adobe plans to follow the gold rush business model and get rich on the tools, much as they did with Adobe Acrobat. It's a departure for them, as their core customer base has never been geeky Windows or Unix developers but instead tattooed and pierced cool kids who develop websites on their Macs. They're losing their grip on the PDF market, and I guess this is their way to strike out into a blue ocean. (Apologies for further propagating that cliché.)

25 Apr 2007

Web 2.0 platforms considered

So I've done some research (see posts below) and have come to the following conclusions:
  • .NET is slowly gaining market share
  • LAMP is slowly fading
  • Java is static
  • Ruby on Rails is growing exponentially
Based on that data, which one would you pick, and why?

16 Apr 2007

ASP.Net and the future

ASP.Net actually seems to be picking up steam and according to a friend-of-a-friend who does such research,
"Lamp still holds more market share, but ASP.NET has been making inroads and things are trending in that direction."
Netcraft shows IIS gaining ground.

But the picture isn't that clear. To make it fuzzier, I want to try to separate the web services from plain old web sites. Web services do not yet have deep penetration in the marketplace, and they might be a better indicator than what is now popular.

And, as a friend points out, there are plenty of examples of high-volume websites that run ASP.Net. MySpace does. As my friend also pointed out, scalability of a web application has more to do with whether it is stateless and how the database is laid out. However, ASP.Net and IIS set you up with convenient-but-deadly session variables and other cheats that refugee desktop developers will find irresistible.

Then, the cost question: how much do you have to shell out to Microsoft to run your ASP.Net application once you've built it? Without SQL Server it's not too bad, but you will wind up spending about $500 upfront plus $125/year for the rest of time just for standard Windows Server with Software Assurance. A friend notes that ASP.Net 1.1 is fully supported on Mono and is actually complete. So you could have your cake and eat it too -- as long as you don't want to try to debug that. Yikes.

Finally, fashion. Languages gain ascendancy for a variety of reasons, not the least of which is what happens in schools. Lots of schools still use Java to teach computer science; at one time it was Pascal. C++ had a brief heyday in the mid-90s. Whatever the kids are doing today, they're likely to keep doing as they get older. I'm going to get my face pierced and go hang out in the CS lounge at UBC and see what they're playing with. Polyester went out of fashion in the 80s despite its durability and ease-of-use, but then was rebranded Microfibre and is now quite popular again. I don't expect that to happen with C++.

Do CS students buy Macs like the rest of college students? Do they use Parallels? Do they have Visual Studio installed? Are they debating Linux distros? Are they hardcore gamers running XP?

13 Apr 2007

ASP.Net considered wasteful?

So, is ASP.Net really a pig? Is that why none of the big web apps use it? Is this correlation without causation? Let's explore some of the possible reasons.

It may be about cost. Start adding up how many processors it takes to serve those pages, how much the windows server licenses cost, divide by the number of users and revenue per customer, and in the end you'll keep a lot more money if you're running on an all-free LAMP stack.

Or it might be a more generational thing. The older generation of developers who cut their teeth on Windows naturally like the tools they're using and focus on them. They also live in fear and admiration of fearsome Uncle Bill, he who gives with one hand, takes with the other and makes the mountains tremble. So they listen to his oracular rumblings and lap 'em up. 80% of victims of family violence never escape their abusive situation.

The younger developers with the ostrich bone stuck through their eyebrow started out on web services and never considered Microsoft's opinion relevant. They never liked Windows anyhow, so why listen to that old fossil? Besides, this LAMP (or Ruby on Rails) stuff is new and shiny, and look, I can download it for free right now and use it immediately and write a promotional site for the keg party at Spencer's house on Saturday.

Or it might just be that ASP.Net is a windsucking pig that devours costly resources like 1980s metal bands consumed Bolivian marching powder, but without any speedy results. However, were this the case, I suspect that endless benchmarks would have shown this, which they did not. But are the benchmarks measuring the sort of applications that Windows developers of a certain age really write in ASP.Net (huge object-oriented confections with elaborately orchestrated design patterns swapping objects promiscuously like a 1978 key party) or a dumb Hello Web page hammered like mad (line-for-line translated simple I/O)? I don't know for sure. I have certain suspicions and recollections. LAMP applications are written very differently from ASP.Net applications, and it may not be the framework but instead the way the culture uses it.

Likely it is a combination of the three factors: price, performance, and fashion. One thing's for sure: of big web apps, there's nothing out there written in .Net. Unless somebody cares to enlighten me.

12 Apr 2007

The jig is up.

The desktop era is over, just as the DOS era ended when Windows 3.1 came out fifteen years ago. Suddenly the Windows monopoly is irrelevant. Nobody targets Windows, they target the web, and they probably target Mac as well if there's some software they have to install. Windows (and Office) are not being pushed aside primarily by Mac and Linux; no, that is a symptom. Instead Windows has been made irrelevant by web-based email and a cloud of little productivity tools that are now available (and growing fast). It's April on the web, December on the desktop. There's no reason to put up with tired Windows with the high cost and terrible quality (usability, speed, security – name your criteria) because you can get a Mac or install Linux and get all of the productivity tools you need – on the network, to which everybody has access everyplace they want to work. The days of emailing Word documents around to attempt to collaborate are over. The way that people work is changing, and today's desktop software gets in the way of collaboration. In two years nobody will be bothering with it anymore. And don't even get me started on Sharepoint and the rest of Microsoft's collaboration "tools" that they're tacking on to the outside of their old, brittle applications. The new services are organized around collaboration and can do much, much more of what people actually need to do. Game over.

Yes, Windows will still be around, as will Office. Today's 30+ population will continue to use it, and they might even upgrade one more time before they get pressured into switching platforms too. They'll get tired of sitting in support queues trying to install these packages on Windows, and at the same time be attracted by friends to services that have no such problems (and, usually free of charge, and carry no expectation of hand-holding telephone support). MS is defanged: they have to compete with Linux (free) and Mac (qualitatively better) to provide a stable, simple operating system that gets people online and lets them get their work done. Except Microsoft probably can't do that with Windows and maintain backwards compatibility. They are stuck.

Developers who are hooked on Microsoft tools will continue to maintain a wilting set of applications in a deteriorating Windows market. They'll try to use the Microsoft stack to build web services, but the licensing costs will squeeze them right out of business. Microsoft development tools are very sleek, very sexy: they are space shuttles built for architecture astronauts, when what most people need is a bus or a Hyundai (or if they're super rich/irresponsible, a Hummer) to get them to the office. You can't build a web-scalable application with that swollen, sluggish .NET framework for any money. (If so, name one. It's hard enough to find a really big site that runs Java.) Yes, these tools are a very satisfying environment to code in, and they debug like a dream, but they're built for desktop software (at most, client-server) and that game is played out.

So, how am I not full of it? I'll give you three real-world examples.

First, my own case. Plain fact is, I can (and do) virtually all of my real work without using any desktop software other than the browser. I use Ubuntu Linux. I run Firefox, IM and Skype regularly, and that's about it. Maybe P2P software, and video players (which are all available cross-platform). Sometimes I use OpenOffice.org when I have to look at Office documents. In very rare cases, I have to pop open a windows virtual machine. There's nothing to keep me from using Linux or Mac, so I use Linux because I'm a crazy open-source pinko commie (what else is new). But what's scary for Microsoft is, I really can do all I need to do with free software.

Second, Adolfo. His laptop got old (battery, mouse, screen dying) and he needed a new one. I suggested a Mac, but he is familiar with Windows and wanted to stick with it. At the same time, his Windows XP install stopped booting (for the third time in 18 months) -- and while he shopped he still wanted to use his computer. I declined to spend the 36 hours (fact!) to reinstall and patch it, and instead installed, configured and patched Linux in 90 minutes (fact!). Adolfo didn't like Linux: he's not your early adopter to begin with (not thrilled with change) – and the software for IM he really didn't like. Yahoo! Messenger and Windows Live Messenger are much more sexy and feature-rich than Pidgin (f.k.a. GAIM), and even Skype is missing video conferencing in their Linux version. So he bought a new HP laptop with Vista on it. He didn't like that either: the change was too radical and not positive. It asks him a lot of questions he doesn't understand (that it gives no clue how to answer). It introduces installation hurdles to overcome the security holes inherent in the Windows architecture, not to mention the brick walls introduced by the antivirus software. The transparent windows make the interface cluttered and hard to use. There are too many options standing in the way of anything (insert a USB flash drive and just see how many decisions you now have to make. Oh, then try to eject it! That's great stuff.) He spent time with Windows Movie Maker, which has improved to the point where it doesn't crash every five minutes, but it was jerky, slow, and awkward. It has an Office 2007 trial installed, but he'd have to buy it all over again, and eventually he conceded that he really has no use for it. In the end, he said that next time he's going to get a Mac. The lesson here is that he has a painless choice.

Third, my Mom. She doesn't use any desktop productivity software, ever: she has stopped writing letters and no longer uses Word. She just uses web-based email and surfs the web, and sometimes uses IM (but not the advanced features). She doesn't know about configuration and doesn't want to pay just to keep her machine from stabbing her in the back. So why does she need Windows? She doesn't, and her next computer will probably be a Mac. Or it might be a Linux appliance that updates itself and requires no configuration, like Google is rumoured to be producing.

Nobody can say that this is pie-in-the-sky, Henny-Penny, pass-the-bong bullshit, not anymore. This is the actual state of affairs. Pundits agree. Wall Street agrees. Startups are all focused on web applications. The last new category of desktop applications, P2P, came out eight years ago. The reality is that the desktop is already irrelevant, therefore Microsoft is vulnerable, as the real battle is being joined elsewhere. Microsoft has everything to lose.

Now we look back at 1992 and say that was when the DOS era ended, and that's not controversial. It was very controversial in 1992 to people whose livelihoods depended on DOS applications, and denial is a powerful force. Today I got an email invitation for Excel training. Why not classes about shorthand and how to operate a Dictaphone? In three years that won't be a joke anymore.

29 Dec 2006

Web 2.0 valuations

If you saw my post about LinkedIn, you saw how I thought it was taking off. Yes, but is anybody paying for its services?

By the way, the combined cash flow of Spot Runner, LinkedIn and Facebook is less than that of one Costco store. -- Carl Bialik, WSJ.

10 Dec 2006

LinkedIn

LinkedIn
This was recommended to me today, and I was somewhat dubious. Ah, another Friendster clone, I thought. Well, yes, in fact, it is -- but built for business. This is the sort of thing that, if done right, could wipe out ACT! and take over the contact management market. Hell, if it synced to my cell phones I'd even shell out actual money for it. What really surprised me was that in my first pass through my address book 34 people I knew were already members. Some of them actually even seem to have used it (though there were only about 8 of them with more than 2 contacts). An old friend even found me, though he has ~400 contacts and probably takes it pretty seriously.