Clarifying my position on ASP.net

May 27, 2011 by Oliver · Comments Off
Filed under: Computers, Programming, Ruby on Rails, Technology, Web Programming 

One of my most read (and most commented on) posts was the one claiming “ASP.NET sucks”, which only goes to show being a little offensive goes dissapointingly far on the internet. Since it has now been five years since I posted that, I thought a quick follow-up was in order.

I stand by most of what I said my initial post, but with a little specificity. It’s not ASP.net that’s the problem but Webforms. Unfortunately at the time Webforms was all you ever saw. There are alternatives around today (and may have been back then but none were especially high profile and none were by Microsoft).

These days of course Webforms are very much out of fashion. Following on from the success of Rails (and then many) Microsoft realised that Webforms weren’t an idea that could keep up with modern web development. A quick glance at the ASP.net home page today shows four out of five articles talking solely about ASP.net MVC and one article talking about both MVC and Webforms (of course that will vary by day I but I doubt the result will be very different).

So taking into account a minor title change (ASP.net Webforms suck!) I’d say my original point stands…

Moved to Amazon EC2

December 8, 2010 by Oliver · Comments Off
Filed under: Computers, PHP, Programming, Technology, Web Programming 

I’ve just moved the blog over to Amazon EC2 and so far everything seems to be going well.

I’d been considering the move for a while and a new feature (well I’m not sure how new it is but I only just noticed it) is a new smaller instance type. The virtual servers Amazon offer used to come in three sizes, small medium and large starting at $0.10*. Pretty quickly they added some bigger sizes (going all the way up to $2.00 per hour for quadruple extra large) as well as some more specialized types like GPU clusters. But it still meant the minimum price per month for a server always on was about $74/month which is expensive for simple web hosting.

Now however, their new micro instances are available at a pretty cool $0.02/hour (about $15 a month). For the performance you’re likely to get it’s still probably not the most cost effective solution for plain web hosting, but for having complete access to a server with high availability (and the extra features hosting on Amazon’s infrastructure provides like being able to clone a whole server with one click) it’s pretty good.

One final note is to remember that these numbers are not the final costs you’ll have to pay. You still pay for storage and data transfer which in my case look like they’ll be about an extra 10% extra.

* Since then the price of the small instance has come down to $0.085/hour or about $63/month.

Gravitas in Silverlight

December 6, 2010 by Oliver · Comments Off
Filed under: Computers, Entertainment, Games, Programming, Technology, Video Games, Web Programming 

A version of Gravitas available to play right in your browser using Silverlight is now available.

Open Graph protocol seems pretty cool

April 29, 2010 by Oliver · Comments Off
Filed under: Computers, Entertainment, Programming, Technology, Web Programming 

A few days ago Facebook announced their new Open Graph Protocol. It’s basically a way for people to interact with pages on the internet (in theory pages representing real world items, but it will be hard to moderate) in basically the same way as they do with existing Facebook pages.

For a page to be eligible all you need to do is add a few meta tags to it specifying it’s  name and type (film, book, actor, product, game etc.). To actually do anything useful, you then add a Facebook “like” button. Once some people have liked it, it appears in their Facebook news feed like any other item (with the data you added in the meta tags). One of the optional meta tags you can add specifies user IDs of Facebook users who can administrate the page. If you do, you can get access to the same sort of admin page you get with any traditional Facebook page.

Conveniently I just developed a use for this sort of thing so I added support to my blog. A few edits to the theme and cunning use of WordPress’s custom fields and now any page or post on my site can support Open Graph. Currently the only support is on the Gravitas page.

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.

FreeNAS

July 15, 2007 by Oliver · 1 Comment
Filed under: Computers, PHP, Programming, Technology, Web Programming 

In an effort to get more storage to share between the three computers at home (two Windows and one MythTV) I setup yet another machine running FreeNAS.

FreeNAS is a small (about 30MB) operating system based on FreeBSD designed just to be a NAS (Network Attached Storage). You add hard drives to it and it makes them (optionally) available in several different ways, including:

  • CIFS/Samba
  • NFS
  • rsync
  • HTTP
  • FTP

After a few minor problems setting it up (like a power cable breaking and installing from an old CD-ROM drive that didn’t work) it works great. Copying a large (~40GB) chunk of files to it at once took a while but writing to and reading from it at more sensible levels isn’t noticeably slower than using local files (on a gigabit network).

Transcoding DVDs

January 17, 2007 by Oliver · 2 Comments
Filed under: Computers, Entertainment, PHP, Programming, Technology 

Following my post about ripping DVDs, here is a method for transcoding the DVDs into something more manageable. I should point out that is probably for the more technical amongst you – there are certainly easier ways to do it but this has the advantage of being very automatable.

Since MythTV (and Linux in general) seems to like ffmpeg for video encoding/decoding, I figured I’d use that. You can get a binary version for Windows and read the documentation.

The actual command line I use to transcode is:
ffmpeg -i $in_file -vcodec xvid -qscale 5 -acodec copy $out_file

That means to use $in_file as input (a VOB file in my case), use the Xvid codec for the video, set the “quality” to 5, copy the audio straight from the original and save as $out_file. The quality in this case is just simplification of lots of other settings that are available. 1 is perfect and 31 is the worst. 5 results in files that are about 500MB per hour with MPEG artifacts that are visible when I’m sat at y desk but not when I sit on my bed six feet away which is where I normally watch video from. It may be worth transcoding a short clip with a few different settings to see which your happy with.

I made the whole process semi-automatic by writing a CLI PHP script that checks for VOB files in a specifc folder and transcodes the ones it finds. That way I can have the transcoding going on in the background while I rip the DVDs (and then leave it running it overnight to finish). I could make it available to anyone who wants it, but a batch files doing the same thing would probably be more useful for people…

There is one last caveat. I originally encoded the movies with MP3 audio and then half way though decided I want to keep the 5.1 audio (which the above method does). However the version of ffmpeg I used at first had a problem such that AVIs with AC3 audio played back with no sound. If you have a similar problem make sure you have the latest version of ffmpeg you can get.

Nokia 770

November 12, 2006 by Oliver · 3 Comments
Filed under: Computers, Entertainment, Ruby on Rails, Technology 

My recently ordered Nokia 770 has arrived :o ) For those that don’t know, it isn’t a phone – Nokia market it as an “Internet Tablet”. Basically it’s a PDA running Linux with WLAN, Bluetooth and an 800×480 touchscreen display. There’s too much about it that’s cool for me to go into right now, so I’ll leave you with the picture :)

Apparently the term “UMPC” is being used by a few people to describe the 770 (and similar devices) – “Ultra Mobile PC”.

Next Page »