| Subscribe via RSS

Dabbling With Ruby on Rails 2.0 + Other News

February 13th, 2009 | Comments Off | Posted in AmpliFeeder, Rails

I did a massive amount of Ruby on Rails development when the first wave of Rails hype hit about 4 years ago for a project that required it. I enjoyed working with the framework but to be honest it didn’t knock me out. I’ve been toying with learning Django recently and thought I’d check out how it compared with Rails. The interesting thing that came out of my investigations is how much Rails and it’s ecosystem has changed.
Rails 2.0 is quite a different beast to the original rails and the amount of plugins and gems now available is simply amazing. It looks so good that it’s put me off Django and I’m investing quite a bit of time picking up rails again. Windows Rails used to be rubbish, but now we have E-Text Editor, a perfect clone of the popular Mac only TextMate – the Rails dev weapon of choice. I’ve also invested in the PeepCode library and can recommend it highly.

I’ve not been blogging much as I’ve been working hard on my new application, AmpliFeeder that I’m going to release as open source in the coming weeks.

This blog is moving too. I’m getting rid of Mosso as a hosting provider as the exchange rate and reliability problems are just making it impossible to continue with them. Mosso is cool in principal but has always failed to live up to expectations in my opinion. I’m moving it to Clook a host that seems to be highly regarded in the Wordpress arena. I’ll let you know how it pans out.

5 Things I learned the hard way while setting up Hyper-V

January 16th, 2009 | Comments Off | Posted in Cloud

hyperv1. Hyper-V can only be turned on in 64 bit versions of Windows Server 2008. Don’t spend 4 hours downloading and installing the 32 bit version DVD from MSDN, realise the Hyper-V role doesn’t exist, and then another 4 hours downloading and installing the 64 bit version.

2. Make sure you RTFM and enable the hardware virtualisation in your BIOS or it just won’t work.

3. Make sure you download all automatic updates as Windows Server 2008 shipped without Hyper-V. It has to be downloaded as an update. Remember to turn auto updates on too.

4. If you want more than 4 virtual machines, you need Windows Server 2008 Data Centre edition.

5. Dell Poweredge 5110 take ages to boot up, and the installation of Windows Server 2008 needs many restarts. Hyper-V itself takes an age itself to install. Get a good book as you are going to be doing lots of sitting around.

On the up side, Hyper-V is a fantastic technology and I have managed to re-purpose a high spec server into 5 high spec VPSs making us thrifty in these hard economic times, and greener and friendlier to the planet by opting for virtualisation.

End of 2008 Roundup

January 1st, 2009 | 1 Comment | Posted in Uncategorized

photo Another year jars to a halt and without any pause for thought a new one appears.

Book of the Year
This may seem like an obvious one, but it’s the book that had the largest impact on my day to day work. Linq In Action is a great primer to get going with Linq and once you get going, it’s difficult to stop.

Non-Tech Book of the Year
The Jelly Effect by Andy Bounds which will redefine the way you present, network, sell and communicate. Highly recommended.

Album of the Year
A pretty grim year for music I thought. Highlights were Beck – Modern Guilt , Foals – Antidote and even thought it came out in late 2007, Municipal Waste’s The Art of Partying provided the cheapest of thrills this year. Hip-hop? Forget it, it’s long dead. The La’s only album also had a massive resurgence around my way and scored the most play time hands down.

Booze of the Year
A hard choice between Van WInkle 10 and Elijah Craig.

Next Year
Next year promises some very exciting projects for me, both with work and personally. I’m hoping to release quite a big open source application in the next few weeks and I have a few massive bank security two-factor authentication systems to architect and implement at Qire. We are planning some revolutionary innovations in terms of voice technology management information and visualization too. Enough to keep me off the streets anyway! Very exciting indeed!

The photo is of me and Kit on Boxing Day going for a stroll by the Mersey. She’s nearly two, endlessly entertaining and a constant source of awe and wonder.

That’s it! Have a happy new year!

TinyMCE – A Common Sense Configuration

December 30th, 2008 | Comments Off | Posted in JavaScript

TinyMCE is an open source WYSIWYG editor that is pretty popular, and used in many applications including being the editor installed into Wordpress. It’s small and gets the job done. The only downside is that it’s a pig to configure and the documentation is of a chocolate fireguard caliber. So here, if anyone wants it, is a TinyMCE configuration block I knocked together that contains all the stuff you need to act as a web based content entry text area. In fact, it’s an exact clone of the Wordpress editor.

    <script type=”text/javascript”>
        tinyMCE.init({
            mode: “textareas”,
            theme: “advanced”,
            theme_advanced_toolbar_location: “top”,
            theme_advanced_toolbar_align: “left”,
            theme_advanced_buttons2 : “”,
            theme_advanced_buttons3: “”,
            plugins : “inlinepopups”,
            dialog_type : “modal”,
            theme_advanced_buttons1_add: “bullist,numlist,blockquote,image,link,unlink,code  “,
            theme_advanced_disable: “formatselect, fontselect, fontsizeselect, styleselect, justifyfull  ”

        });
</script>

JQuery Pager Plugin

December 22nd, 2008 | 1 Comment | Posted in JQuery, JavaScript

jquerypager I’ve just knocked together a JavaScript pager for use in an application I’m working on and thought it may be of use to other people. I’ve therefore converted it to a jQuery plugin and released it under joint MIT and GPL licenses and it is entirely free for you to use or mess about with.

You can see a demonstration of it in action at http://jonpauldavies.github.com/JQuery/Pager/PagerDemo.html and visit my GitHub repository at http://github.com/jonpauldavies/jquery-pager-plugin/tree/master to download it.

Usage is very simple indeed. You just give it the number of pages to view, the current page, and a callback method to fire when the pager gets clicked.

Amazon.Com Addiction Continues Unabated….

December 10th, 2008 | 1 Comment | Posted in JQuery, JavaScript

photo

I pay a quick visit to Amazon to get Kitty a few books and before you know it I’ve dropped an extra 70 quid on 3 JavaScript / JQuery books….

I have not had time to review them fully, but JQuery in Action is a thorough trawl through the functionality and use cases of this continually impressive library. I’ve got a pretty firm grasp of JQuery but my entire knowledge is built from blog posts so felt I needed something a bit more solid and this seems to fit the bill.

The JQuery Reference is very thin for a technical book and has yet to prove it’s worth now that we have decent JQuery intellisense in Visual Studio. I’ll have to wait and see how it pans out.

Lastly, Pro JavaScript Techniques is an overview of the ‘modern’ uses of the language, and how it has adopted several OOP paradigms as true client side development has matured in recent years.
If you are thinking of putting any of these on your Christmas list, I’d order them JQuery in Action, Pro JavaScript Techniques and The JQuery Reference – in order of usefulness.

Twollo – Long Tail Twitter Search

December 9th, 2008 | 1 Comment | Posted in MicroBlog, Web 2.0

twollo

Twollo.com is the new Twitter application knocked together in super quick time by my mate Paul Kinlan, and even though it’s written with Google App Engine ( blech! ) it’s a cracking little solution.

A simple twist on the Twitter search, it auto follows people that match your search terms and is remarkably good at finding cool people. It works best with targeted search terms, searching for ‘Internet’ is asking for trouble! I searched for JQuery and it instantly found me 40 fellow JQuery fans all happy to chat and offer advice.

It’s way better than Mr Tweet, as that only serves up super high profile tweeters like Scoble et al. Twollo really digs out long-tail users that are better matched to your interests. A great service that is only going to improve and offers functionality that Twitter itself is sadly missing.

Microsoft SQL Data Services – Database as a Service

November 5th, 2008 | Comments Off | Posted in SDS

sqlservices

SQL Data Services is one of the handful of new data storage technologies to come out of last months PDC conference and differs significantly from the ‘Core OS’ storage mechanisms offered by the central Azure platform in that it approaches a traditional relational model.

The service is built on top of a modified SQL Server 2008 platform and essentially extends SQL to the cloud at scale with additional advances made to reduce provisioning times and TCO. It’s been tweaked to scale over thousands of servers and the current beta level distribution stands at around 1200 servers geographically spread over 5 data centres; enough provision to cope with the CTP process!

One of the really interesting facets of the service is it’s health and performance monitoring systems. Individual servers can re-start failing processes, be rebooted or even be re-imaged  all by the health monitoring system without any human intervention. If an entire machine fails for some reason it is marked as failed and it’s workload re-distributed elsewhere in the cloud. An engineer turns up a couple of weeks later, pulls the machine, powders the harddrive and replaces it with a new server that automatically starts taking it’s share of the workload. Pretty snazzy I’m sure you agree.

Another interesting point is that the system has been designed to scale both ways; up and down. An important feature in regard to TCO and means you don’t have unused resource lying around when demand decreases.

The API is accessible via REST and currently follows a schema-free approach; it doesn’t follow traditional SQL structures like tables. Instead it follows a model of Authorities, Containers and Entities. These can be loosely mapped to the concepts of servers, databases and rows. Entities have no type checking built in right now and act more like a property bag style container. Different ‘kinds’ of entities of the same type can even have entirely different properties and property types.

This kind of abstraction allows the SDS team to slowly leak functionality from the underlying SQL Server 2008 platform in a controlled and considered manner. Right now the API is missing basics like support for stored procedures and %LIKE% based queries, something that Google App Engine is also missing ( I wonder why this is so difficult to pull off. There must be a reason why it’s not available on both platforms ).

There are still plenty of unanswered questions right now concerning security, pricing and data distribution but from a purely developer orientated point of view the API is as easy to use and manage as you would like. If SDS continues down the same path as laid out at PDC we can expect seamless scalability for data-centric solutions to be achieved with much less investment in time, resource and commitment.

Microsoft Azure Vs Google App Engine

November 3rd, 2008 | 14 Comments | Posted in ASP.NET, Cloud

cloud 
As you all know by now, Windows Azure is Microsoft’s brand new platform as a service offering and I thought it would be an interesting exercise to compare it side by side with the Google’s popular PAAS product – Google App Engine.

Language Support:
Straight out of the gate Azure allows you to leverage the power of C# and VB, and there is no reason why the other .Net savvy languages can’t join the party too. Look forward to IronPython, F# and Iron Ruby being a consideration in the not too distant future. Meanwhile GAE only gives Python as an option and further language support is not on the roadmap. .Net services is being designed from the ground up as language agnostic with Java & Ruby SDKs being readily available http://jdotnetservices.com/ http://www.dotnetservicesruby.com/
Result: SUPER BODY SLAM BY AZURE!!

Application Types
Azure offers two different kinds of application model; Web Roles and Worker Roles. Both can be utilised in your Azure applications. Web roles are your typical request/response HTTP paradigm similar to GAE’s request based model. More interesting is the Worker role that adds processing and logic that does not need to be triggered via a web request. Think Windows Service and you are on the right track. This gives you the ability to run background tasks and opens up a whole raft of application possibilities that GAE just cant offer right now. Looking at the roadmap, it’s not going to arrive any time soon either. There’s no chance of chron-like capability or long running processes with GAE.
Result: CHOKE HOLD BY AZURE!

Scalability
Microsoft Azure is as yet unproven in this area but there are plenty of indicators around the web that GAE would not hold up against traffic of a serious or sustained nature. Concerns with CPU and storage limitations, caching, database immutability plus one way in and out ( via the Google API ). App Engine’s 1MB file limit would seriously hinder the kind of audio-heavy enterprise applications we write at Qire. Of course we will have to wait and see how Azure stacks up in this regard, so it’s pretty impossible to compare both technologies at this time.
Result: Break!

Storage
Azure offers a few different storage options including Table Storage that leverages the killer ADO.NET Data Services Framework to get the job done. Add to this the more familiar SQL Data Services platform and you have more than enough flexibility to achieve all you need. GAE follows the ‘one big table’ approach and there is nothing wrong with that but the range of storage options provided by Azure gives it more of an edge.
Result: Knockout!

It’s plain to me that the Microsoft offering is way more advanced than anything else out there, an opinion that is echoed on many GAE forums and messageboards too.

PDC2008 Keynote Live Stream

October 27th, 2008 | Comments Off | Posted in ASP.NET, Cloud, Webcast

9guy_blogbling_240X320

Via Steve Clayton:

Monday, October 27 3:30pm – 5:30pm
Click here to watch the 300k stream live

Tuesday, October 28 3:30pm – 5:30pm
 Click here to watch the 300k stream live

  • Cloud

    Ajax AmpliFeeder ASP.NET Blabnote C# Cloud Design EntityFramework Framework JavaScript JQuery LINQ Live Mesh MicroBlog Mix07 Mobile Productivity Rails Remix08 SDS Silverlight2 SQL SSDS TDD Telecommunications Uncategorized VOIP WCF Web 2.0 Webcast

  • @jonpauldavies