If you follow me on twitter, you'll probably have noticed I've been playing around with Amazon EC2 lately. My blog is currently hosted on Google App Engine for two real reasons. Firstly, cost. Google App Engine works out free for my blog. Secondly, it seemed like something cool to learn and play with. Knowledge is power :-)
I'm a C# coder by trade, so when I came to update my blog a year ago, I naturally looked at Microsoft Azure, but it just worked out way too expensive to consider for something so small. I didn't really look into Amazon EC2 because it also looked too expensive, and I wanted to avoid having to manage the server!
Fast forward a year. I've spent a large part of the last 10 months working on an iPhone application. That means using a Mac, Xcode and Objective-C. These aren't really my tools of choice. I'm so comfortable with C# and Visual Studio that coding on the Mac in Objective-C is frankly, frustrating. The OS is different, the IDE and shortcuts are all different, I have to clean up my variables (WTF?), and I'm generally quite slow at it!
Now, I'm playing around with XNA again. I'm working on a Windows Phone 7 game, Badger Quest. The coding in Objective-C has really made me appreciate what Visual Studio and C# bring. It's good to be back! :-) Amazon have also recently launched "Micro" instances, for only 3 cents/hour, which makes running .NET on a reputable host a reasonable price.
So, I'm hoping to start blogging (about programming-related stuff) a little more. For any WP7 games I create, I'll need to code a reusable high score system, which would make an interesting topic. I was going to put this on Google App Engine, but I hear voices in my head telling me to use C#.
However, the overhead and cost in setting up some .NET hosting is quite high for something so small. I also need to set up a "website" for a family member anyway, so it makes sense to put all this stuff, along with my blog, in one place, on one platform.
So, what do I do? I love that Google App Engine would be free and scalable. However, I don't like the lock-in, or not being able to use .NET. The cost of EC2 is starting to look reasonable, though Azure is still way too expensive (though I hope Microsoft are taking note of Amazon's micro instances!)
Do I migrate to Amazon EC2 and write everything in .NET (which I can deploy anywhere, if circumstances change), or stick with Google, king of free, being tied in, and using a language I'm not a huge fan of to avoid spending a few quid?