NCrunch

Executes unit tests automatically in the background. It is about $160 for a license so its pricey.
Keep your eyes peeled and I might have a review of it coming up.

Mighty Moose

Not only does this plug-in have a great awesome name, it also provides you with juicy
continuous testing for a very low price. (Free). Review coming up.

A shell for Java

November 15, 2012

Someone has made a great interactive shell for the JVM.

WordPress to static sites

November 12, 2012

Herei s a Word Press Plug In that allows you to export your site to static html files.

Static websites are cool again

November 12, 2012

Cruising around the net today I came across several posts about the increasing (re) interest in fully static websites. As often is the case with the IT world, we appear to have come full circle and are now back where it all began. Static html pages.

The virtues of going static are usually stated as:

Scalability

If a site comes under heavy traffic a purely static site can withstand the traffic much better because it does not rely on executing code nor a database.

It is also dead easy to convert/move/take advantage of content delivery networks to make you blog super speedy and resilient.

To be fair though, for 90% and more of all blogs out there, this is not a major concern. They are lucky to get a hundred or a thousand visitors a day.

Security

Using purely static content, means that the attack surface that your blog exposes is significantly lowered. Ever heard of a sql injection attack on a static blog?

There are still issues surrounding the web server, appropriate permissions etc, so your not bulletproof. However a static blog is also incredibly fast to restore and backup.

Ease of use

It is all HTML pages and maybe a little bit of javascript. No complicated products to learn or things to get in your way. No need to worry about heaps of code you have no idea what does and how it might effect that latest stylesheet you added.

Git

Yes, for the developers and cool kids today you can actually host and version your static blog with Git. Writing your blog can follow the same path as writing your code. This is very powerful. Access from almost anywhere, easily revert to previous versions, collaborate with a few thousand of your closest friends.

In fairness you do not have to stick with Git, you can use Subversion or almost any other versioning software out there but Git is just the latest and coolest according to the hipsters.

Price

The more complicated setup is needed for your site the more you will have to pay. Its not really that easy, but lets keep it simple. To serve static pages you don’t need a database, or even compatibility with PHP v x.y.z or Python x.y with Django x.y.z, if it has a file system and if its got an http server you are good to go.

You should be able to find a host for very little money even free. In addition there are ways to serve your files from some of your favorite tools like DropBox and Amazon S3. Neat huh.

How to accomplish modern behavior on a static site

Site search

Most of your users probably do not care one way or another about the technology you are running your site on, unless you are writing a blog about what your blog runs on.

Still users have gotten spoiled and expects a certain set of features. Like search. Now static pages do support this. All the user has to do is load every page and use the browsers find feature.

In my scientific polling I have learned that most users do not like that idea, thus we need to find another idea.

There are two main ways of dealing with it. Use an application or script to generate an index to help the user find things or use an external service to search enable your site. Like Google or Bing. Those guys are really pretty good at search.

Comments

Sometimes users feel they can contribute to your blog by adding content or spam. Often users seem to feel that your blog posts need more spam.

In a purely static site there is no for a user to add comments because there is no code and no storage mechanism, so again we have to turn to other service and outsource the commenting.

Intense Debate and Disqus both offer good products in this segment that you can attempt to integrate with your blog.

Ads

The major ad providers all provide pieces of script you can put on in your html to show ads. The scripts here all run in the browser so no need for pesky server side code which would eat resources to run.

Drawbacks

History

Back when I started playing around with the web, around 1992, 1993 static web pages was the latest, the greatest and the coolest. Shortly afterwards we got SSI, and CGI and several other server side goodies but in the beginning HTML was where it was at.

Now being fast, secure and scalable why would we ever change? What would make perfectly reasonable IT people start cluttering things up?

Maintnance for one. Maintaining a few thousand, or a few million static html pages is a nightmare. Switching from that headache to a nice CMS (content management system) probably saved the sanity of many a content contributor.

Interactivity is another one. While we can now rely on 3rd party services to do the heavy lifting on comments, ads and search. Back then you had to run things locally.

Being able to re-use content across multiple pages, have multiple different languages represented etc is a lot easier with a coded backend than without.

Theming

If you really know what you are doing and take care to do it right this point is a bit moot.

Lets say your blog is orange and black and then you decide that pink and gray is the thing and you want to change your logo and .. etc.

Making that update on all the html pages is like booring. Not to mention you have to add the latest marquee blinking text.

A content management system, or a blogging system allows you to “re-theme” your site easily. The content nuggets reside comfortably in a database somewhere and layout, look and feel, order, removals etc can be accomplished in minutes rather than hours.

Now most of this can be done today with scripting and css. If you know your way around that well, you can probably re-theme a static site in minutes as well.

Tools:

Static blog scripts

Hyde, Cactus, Jekyll

Static blog tools

Rapid Weaver (os/x)

References

Hosting your static site on Amazon CloudFront and or S3

* http://www.allthingsdistributed.com/2011/02/weblog_in_amazon_s3.html

* http://docs.amazonwebservices.com/AmazonS3/latest/dev/WebsiteHosting.html