Is the Relational Database Doomed?

databases

Of course not, but finally thankfully people are starting to take serious stock of other types of Databases. I'm no Database expert but for ages I never understand why I was serialising XML into a relational database to pull it out a bit later in XML. So I started doing some digging and found out about XML databases and object stores. This was way back in 2001. Later in 2004, the suggestion of a XML database or any other database except MySQL, PostgreSQL or Oracle was a no go. How things have changed.

In BarCampLondon7 Simon Wilison gave a talk where he listed a range of different types of databases or datastores. There all listed on this Etherpad titled #bcl7 non-relational database BoF. A very impressive list indeed and there's much more. So will we finally see people moving away from the LAMP stacks? Maybe but I its going to take a while.

Comments [Comments]
Trackbacks [0]

Google specs worth checking out

Its been ages since I've written in my blog, so I'm hoping to try and make up for that with a series of blog posts over the weekend.

While at BarCampLondon7, I attended a couple of sessions about some very cool technologies which Google are behind. Like most of you I'm skeptical of anything any large company does, specially specs but its hard to pick any hole in any of these I would say. Adewale also did a excellent job of explaining them and there context for use.

oEmbedoEmbed is a format for allowing an embedded representation of a URL on third party sites. The simple API allows a website to display embedded content (such as photos or videos) when a user posts a link to that resource, without having to parse the resource directly. Its already being used on Youtube and many others. You request a resource and it gives you back xml or json for the resource instead of returning a nasty piece of html or javascript. Very neat.

Salmon ProtocalSalmon aims to define a standard protocol for comments and annotations to swim upstream to original update sources — and spawn more commentary in a virtuous cycle So from what I understand, its an attempt to standardise all these commenting systems like cocomment and disqus (which I use on this blog even). They shouldn't really feel threaten because they could support Salmon and add value to the basic concept.

Wave federation protocal – Well this goes without saying but I learned that its now very easy to setup a wave server. So I expect I'll be playing with that soon. There's also a lovely guide to Wave by Gina Trapani which will grow into something much more complete in time.

pubsubhubbub
A simple, open, server-to-server web-hook-based pubsub (publish/subscribe) protocol as an extension to Atom and RSS. Parties (servers) speaking the PubSubHubbub protocol can get near-instant notifications (via webhook callbacks) when a topic (feed URL) they're interested in is updated. This is a difficult one to explain but generally its a clever way to poll for updates without polling the server. Instead you submit a request and a status server alerts you to when the change has happened. It sounds complex but its actually not and its quite neat. Like most google things, its worth flicking through the presentations on the site.

Comments [Comments]
Trackbacks [0]

Google Wave slowing down your browser?

Maybe you need Waver 1.0. Waver is a Adobe Air app which simply takes Google wave in the Webkit browser and stips off all the browser chrome and runs in its own process. I say all this like its necessarily a bad thing. Its not bad, its actually quite snappy compared to running Google Wave in a browser with many other tabs. The only issues is its not really a new client for Google Wave, its more hybrid rip off of the iphone running wave in webkit. Luckily the whole thing is free and runs on Windows, Mac and Linux without too much bother.

Comments [Comments]
Trackbacks [0]

Storytlr, goodbye so soon?

I'm upset to hear storytlr is closing down, but not from lack of interest. I use storytlr to do my lifestreaming on www.ianforrester.org and was thinking about deploying it elsewhere.

we have decided to stop operating Storytlr in 10 weeks, on December 31st 2009. The reason is simple: our lives have moved on, kids were born, house were bought, new projects appeared and we don't have time anymore to operate this service properly.

We have spent the last months looking for alternatives, potential partners, and even thought about creating a startup around this project. Yet, in the end, nothing did really make sense for us and we have decided to pull the plug. It was a tough decision to make, it is a sad day, and we feel sorry for our passionate users who have put so much effort into their page and who have helped us improve the service through their many comments.

This is why we have also decided to open source the platform. Not today. It will involve first a major refactoring, since at the moment it looks more like a giant spaghetti than an easy to install package. We don't know when it will ready, but we will do our best to do it as soon as possible. Please get in touch if you want to help with this effort.

Open source it great. But my next thoughts are towards my data. Data Portability is always a worry when a service goes away or down. But they have done a excellent job of allowing data download into CSV files plus there will be a Zip file of any binary blobs like mp3's and pictures.

Nows a good time to find an alternative I guess…at least till the open source version is easily deployable. Sweetcron is looking more and more attractive.

Comments [Comments]
Trackbacks [0]

Adobe FXG, WTF?

Adobe FXG is so wrong in so many ways, its untrue. When Microsoft decided to do there own xml vector format I was shaking my head but now Adobe's also doing the same my head is in my hands.

FXG 1.0 describes an XML-based graphics interchange format for the Flash Platform. FXG contains high-level graphical and text primitives that can be used to create, group, transform and visually modify basic vector and bitmap shapes. The FXG rendering model follows very closely the Flash Player 10 rendering model and exposes all graphics capabilities of the Flash platform as well as offering expandable support to accommodate future capabilities of the Flash Player.

When initial work on an XML-based graphics interchange format began, the natural first thought was to use SVG. However, there are key differences between SVG and Flash Player's graphics capabilities. These include core differences in SVG and Flash's rendering model with regards to filters, transforms and text. Additionally, the interchange format needed to be able to support future Flash Player features, which would not necessarily map to SVG features. As such, the decision was made to go with a new interchange format, FXG, instead of having a non-standard implementation of SVG. FXG does borrow from SVG whenever possible.

Aka, we see the need for a xml vector language but svg is already developed and we can't be bothered to change our flash engine to support it. Instead we want to write a spec around our already written code base and make you all adopt it. Well geez thanks Adobe. I really hope no one uses FXG, hopefully the lesson will get back to Adobe that they can't just stick opensource on a manipulated web standard and expect people to use it unless you make them do it in your own proprietary world (*cough* Actionscript). Thank goodness at least Google is backing open standards like SVG.

Comments [Comments]
Trackbacks [0]

Software ahead of the curve: Google Wave

Google Wave, is the hottest thing on the web at this current moment. And to be frank marks the start of Google's rise in my estimations and there commitment to the web as the platform. When I first saw the Google IO video was impressed and seeked out my wave invite I would have got if I had gone to the London event. So I've been using/on Google wave for a while now, but since the public beta I've started to really use it for conversations.

So I've noticed Google wave has been getting a bashing from some high profile bloggers in the industry such as Scoble who thinks it will crash on the beach of overhype (what ever that means?). So what do I think? Well I think its amazing and most of my thoughts after watching the video still hold. So I'm going to start with the things I'd like to see changed or I think are not quite right.

Web-like – Wave is on the web but still not part of the web enough. For example why is it I can't send a link to someone directly to a wave or even better using the querystring to a section within a certain wave? Ideally you could do it with Xpointer or Xpath. I know there's wave robots/plugins which can push things out of the wave environment but linking and anchoring should be built in at the basic level.

Groupware – Wave is as far as I can tell a groupware system and although this is great for the enterprise, its also got enough usefulness for much smaller adhoc groups like us arranging events over basecamp, etc. So because of this, it needs plugins for time management, spending, calendaring as soon as possible. Heck I'd like to see a basecamp plugin for Wave but thats for another blog post. I did say ages ago that Lotus, Novell, Microsoft should be worried. There big bulky collaboration systems are under threat by the wave protocal. If they were smart they would quickly launch some skunk work clients or conversion transports using wave. Steve Rubel talks a lot about how Wave doesn't solve a consumer problem and therefore it will die. but I don't it has to, in the same way basecamp doesn't solve a consumer problem. No this is groupware for everyone but someone will adapt it for more clever things.

Client – Wave is crying out for some enterprising developers to create clients for it. I'm not knocking Google's Web Toolkit (GWT), google have done a great job with Google Wave's client but its not quite there yet. Its heavy on my browsers resources. I know there's a version for webkit browsers and the command line, but wheres the XUL, AIR, GTK+, QT heck even a Flash version. The API has been done and theres already reference versions to learn from, so whats taking so long? I can't be the only one thinking this? Anil Dashes excellent blog post talks about the complexity of Wave but never seems to mention how much better wave could be with a different client. Actually this would also solve a lot of the issues Steve Rubel is talking about with Wave.

So i'm still impressed but can't help people are writing it off at the first fence. Give it time to mature and grow before writing it off now. Wave is a hot but not ready for the consumers yet. Oh by the way I've run out of invites sorry.

Comments [Comments]
Trackbacks [0]

Google urges Web adoption of SVG

SVG logo

Thanks Brendan for the pointer to this post about SVG.

Some seeds for overhauling Web browser graphics were planted more than a decade ago, and Google believes now is the time for them to bear fruit.

The company is hosting the SVG Open 2009 conference that begins Friday to dig into a standard called Scalable Vector Graphics (SVG) that can bring the technology to the Web. With growing support from browser makers, an appetite for vector graphics among Web programmers, and new work under way to make SVG a routine part of the Web, the technology has its best chance in years at becoming mainstream.

Good stuff, I still think SVG is amazing and deserves to be taken seriously. This might be just the boost it needs to move forward and become fruitful. The benefits to google must be quite clear and i'm sure svg will make it into chrome if it doesn't already have it? It would also make sense to include SVG or even SVG tiny into the Android stack too. And lets not forget Google needs to have a answer to Adobe's Flash and Microsoft's Silverlight. Well between SVG, HTML5, JS, CSS and there recent spend on On2's video codecs who knows what could be built.

Ages ago Antoine Quint gave a presentation at Xtech which showed the total stack of Joost's media player application. The stack included SVG, alongside XHTML, CSS, JS, RDF, XUL. The biggest problem they had was with video playback which integrated and was controlable via dom scripting. Well now with that problem almost solved without the aid of Flash/Silverlight. Its should be easy to complete the web stack, and without bigging up Google again, there doing and thinking the right way again.

Comments [Comments]
Trackbacks [0]

Google Wave? Let Pulp Fiction show you why

I know I've been promising to put my thoughts about google wave up for ages but I wasn't actually sure the EULA allowed public reviews when I was on the sandbox server. However now its somewhat more public, I'm seeing stuff popping up all over the place, so its certainly time to write something. Till then, here's some great use of wave found via a public wave.

Comments [Comments]
Trackbacks [0]

Tunekit is just HTML

HTML with Tunekit

As a lot of people know, I'm not the biggest fan of Apple or what Apple does but I'm happy that the more I look into iTunesLP and iTunes Extras, the more I'm liking it. its seems its all underpined in a new thing called Tunekit, which seems to be related to a new framework which some people are calling Cocoa for the web, SproutCore. So generally its all just HTML, CSS and Javascript. So hopefully if all goes well who know where it might go. It certainly beats some nasty things your seeing on Bluray discs. And even better we're back to the internet has won type territory, aka goodbye to disc technology, good stuff Apple.

I certainly think HTML5, CSS and Javascript on the TV screen is a killer move. I can't even imagine what's possible once Canvas and Canvas3D get mixed up in all this too. Adobe should be worried, their open screen project is interesting but being built around extending Flash is a big mistake. In the same category Silverlight scares most people. Nope HTML is good enough. It certainly seems Apple will lead the pack on this one.

Comments [Comments]
Trackbacks [0]