Tuesday, 21 May 2013

Installing Ruby 2.0.0 on an Amazon Linux AMI

Earlier we already explained how to get Ruby 1.9.3 running on an Amazon AMI.  This is just a quick update to get version 2.0.0 up. We used the current 64 bits Amazon AMI (2013.03.1).
Note that the complete procedure might take a few hours on a Amazon Micro instance. Deleting the old version of Ruby also removes the package aws-amitools-ec2. As long as you don’t need to create your own AMIs with this instance, you will be fine.
Here is the procedure, as usual log in as ec2-user and perform the following from the shell:
sudo su -
yum remove ruby
yum groupinstall 'Development Tools'
yum groupinstall development-libs
yum install libffi-devel
yum install libyaml-devel
yum update
wget ftp://ftp.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0-p195.tar.gz
tar xzvf ruby-2.0.0-p195.tar.gz
cd ruby-2.0.0-p195
make install
make clean
gem update –system
ruby --version (this should give you the newly installed version)

I did not get any errors related to Doxygen this time (the dreaded "make: *** [doc/capi/.timestamp] Killed"). If you do, please refer to our earlier post on how to fix this by installing the latest version of Doxygen from source.

That’s it! Have fun with Ruby!


2013/05/21 Initial version.

Monday, 20 May 2013

3 Tips to Create a Responsive HTML5 Website

I miss the excitement, wonder and awe that was part of the early web. I try to hide my feelings but I fondly remember those wonderful sites with “Under Construction“ signs and flashing text to make certain you did not miss the important stuff. Annoying pop-ups and unstoppable music play came later.
Progress has now brought us unstoppable video-ads, banks using spamming techniques such as Flash pop-ups to circumvent your pop-up blocker, sites pushing for Facebook sign-on to steal your friends data, unimportant sites that requires registration in order to better track and monitor you. And then scientists wonder why people use weak passwords …
The push for applications to move into browser-land is also heavily driven by the same companies that create those browsers. If the browser has access to everything, those companies will have access too, don’t they?    
The above has nothing to do with this blog.  I just started the process to update our venerable old public web-site and was a bit carried away. Sorry about that.
Since I like to create the website myself, it was time to dig into the thinking processes, technologies, designs and tools that are used in modern websites. After all I am hopeless with design so I have to steal from the best. I liked our previous website better then the current one, so back to the drawing board.


I had some very basic and simple requirements for the website:
  • Content is our corporate information;
  • Content is static;
  • Look must be contemporary;
  • Readable on all devices and support for screen-readers;
  • It must be in HTML5 ( I know, requirements should not be based on but drive the technology choice, but hey, rules are there to be broken).
I received one complaint that there is too much text on the site now. I kind of disagree, but let’s see if something can be done about it, maybe using principles of the Visual Understanding Environment, but that might be overkill.


This is what I came up with.
Tell me what you think? Did I make the wrong choices? Did I miss anything? I will probably develop with the Brackets Open-Source Code Editor.


Give me a few weeks to bring everything together and then have a look at the new Astyran website.

Wednesday, 15 May 2013

Installing Octopress on Cygwin

Octopress is a blogging framework for hackers and is great fun.
This blog is currently hosted at Google, which makes it difficult for my friends in China to follow it. Therefor I am doing some research into self-hosting, especially since I am not really happy with the currently popular blog platforms. They are way overkill for a simple blog, yet at the same time some of my basic requirements are not supported.
Octopress can be installed in a number of ways on Windows, in fact there is no real need to use Cygwin but that is what fits my environment best.  My l33t hacker friends always kindly suggest that I should at least use a virtual machine with Linux but it pleases me to make them cringe when I use command line tools centralised under Cygwin


The following instructions were carried out on  the latest version of  Cygwin (currently 1.7.18-1).
Installing Cygwin is quite straightforward. To enable support for Octopress, choose to install the following additional packages:
  • from “Devel”: git, make, gcc4, openssl-devel
  • from “Net”: openssl
  • from “Python”: python 
  • from “Ruby”: ruby, ruby-rake
  • from “Utils”: gnupg
Some packages (such as gnupg, python, openssh) are in fact not needed by Octopress but I included them anyway, since you’ll need them if you want to run to blog on Amazon S3.
Select install and accept all required packages to resolve dependencies.


We are just going to perform a standard installation of Octopress. Open up a Cygwin shell and type the following:
gem update --system
gem install rdoc-data; rdoc-data --install
gem update
gem install rake-compiler
git clone git://github.com/rtomayko/posix-spawn.git
cd posix-spawn
rake gem
gem install pkg/posix-spawn-0.3.6.gem

That’s it! you can now start hacking on Octopress!

Installing on S3

This is one of the options I am investigating. For Cygwin users, the most important issue is that you need to have a copy of “s3cmd”. This can be achieved as follows:

git clone git://github.com/s3tools/s3cmd.git
cd s3cmd
python setup.py install
s3cmd --configure

The last command will ask for your credentials at Amazon and set some other options.


Some references I found very useful or that will be very useful when I decide where to host my blog: