Google Wave update is live – still invite only

September 30, 2009 by Oliver · Comments Off
Filed under: Computers, Google, Programming, Technology, Web Programming 

Google Wave went live yesterday but it still invite only. It seems the people with access are the people who previously had sandbox access (everyone who went to Google I/O and a few others), another 100,000 people who applied early on and select paying Google Apps users.

That number will grow slowly however as they also revealed that existing users will be able to invite others (similar to when GMail launched).

So if anyone has an invite… :P

Paving the way for Wave

September 23, 2009 by Oliver · Comments Off
Filed under: Computers, Programming, Technology, Web Programming 

Google released a new plugin for Internet Explorer today called Google Chrome Frame. It’s a simple but clever idea to bring the latest HTML 5 technologies to IE by simply embedding the Webkit based Google Chrome rendering engine.

It’s opt-in per site. You have to add a specific meta tag to your pages to make it take advantage of the plugin if it’s installed. There is also a Javascript way of detecting if the plugin is installed and inviting users to install it if isn’t.

They aren’t just doing this to help IE users out however. Google Wave makes use of HTML 5 stuff that doesn’t work in IE and the beta will go public on September 30th. And however good Google Wave may be, if IE users can’t use it, it won’t be a success…

Silverlight is pretty cool

April 6, 2008 by Oliver · 1 Comment
Filed under: Computers, Languages, Programming, Technology, Web Programming 

More than two months since my last post. Which means I suddenly have a lot to say. Beware, rambling may follow…

Nearly five months ago I claimed to be making “rapid progress with language learning”. Well obviously not rapid enough to actually reveal anything. Well that might be at an end soon.

One of the problems of writing the app using things like LINQ means most people will have other things to install to use the app (.NET 3.5 specifically – and possibly .NET 3.0 for non Vista users) and even then it’s limited to Windows users as Mono support for Windows Presentation Foundation will be a long way off (if they do it all). Since Silverlight 2.0 is supposed to be really cool and now supports a big chunk of the widgets from standard WPF (and has has quickly developing Moonlight support), why not write the app in that?

So that’s what I’ve been doing.

And it was a lot easier than I thought. The first piece of easiness I found was that I oly had to make like three changes to my non-UI code to make it compile as a Silverlight DLL. Unfortunately I can’t persuade Visual Studio to compile it as a Silverlight DLL and a normal DLL in one go, so I’ve currently got the same code added as two different projects and I copy the code between them (not ideal). The only real work I had to do was reimplement my data provider. When I started, I cunningly made sure that all resources (lessons, media, user progress) was grabbed from a data class. I wrote a new class that fetches it from a RESTful server (more on that in another post).

So hopefully, a nice Silverlight version of the app will be public soon…

About Silverlight
For those that don’t know, Silverlight is Microsofts answer to Flash. Apparently. I’m not sure if it’s that a good analogy really. Silverlight 1.0 basically gave you access to a nice environment to draw things in the browser and then manipulate it with Javascript. Or something. To be honest I didn’t really care about version 1.0 since writing complicated things in Javascript doesn’t sound like fun. Silverlight 2.0 (formerly Silverlight 1.1) on the other hand gives you that same environment but the ability to manipulate the things with compiled .NET assemblies written in any CLR language and comes with implementations of a lot of the widgets in the WPF.

Google Docs rule – if you use them right

January 4, 2008 by Oliver · 2 Comments
Filed under: Computers, Google, Languages, Programming, Technology 

I’ve been vaguely using Google Docs (specifically Spreadsheets) since it came out but never to do anything actually important. Most of the time I just had a list I need sorting, or if I was feeling sophisticated I’d use it to decide on what was best value for money (how much £/GB a range of hard drives were for instance).

Recently I started using it to plan lessons for the language learning app. The ability to use it from work (or any other computer I might be on – including viewing it on my Nokia 770) was useful, but in the end I was only really writing a list with it. Until now.

I now have a nifty little C# app that generates modules directly from a Google Spreadsheet which is definitely a Good Thing. I’ve been thinking of writing an app for module editing for a while since writing them by hand is tiresome and error prone. Google Spreadsheets does half the work for me by providing the user interface for generating a table and then provides access as simple XML.

Which brings me to the matter of actually accessing the data. Google provide a client library in C# for accessing quite a lot of their API. I tried using it but found it a little confusing. Luckily since I was just wanting to query data, I discovered that raw access was actually easier. You simply make a GET request to
http://spreadsheets.google.com/feeds/worksheets/key/public/values (where key is provided to you when you “publish” a spreadsheet – access to unpublished spreadsheets requires authorization which is more complicated). This gives you an Atom feed of URLs to the individual worksheets which them contain Atom feeds of either rows or columns (your choice).

The query power of LINQ (along with XElement, XAttribute etc.) make transforming the feeds into modules really easy. In fact the code that does the hard work (takes a spreadsheet key and generates the XML) is only 102 lines long, and that’s including unnecessary spacing to make the LINQ more readable (the main LINQ query is 35 lines).

Rapid progress with language learning

November 20, 2007 by Oliver · 1 Comment
Filed under: Computers, Languages, Programming, Technology 

Thought I’d offer a quick status update regarding the language learning app. After a short break I’m back at it. Appart from enough Finnish content to generate ten 15-minute lessons the biggest progress is outputting MP3 files. My original plan was just to output M3U playlists but it seems iTunes and therefore iPods don’t support M3U files (as far as I can tell iTunes can only create playlists of files in it’s library – who wants hundres of files in their library consisting of a few words each?).

The sample MP3s should be available “soon”…

Next Page »