Thursday, February 16, 2012

World Radio Day highlights how a technology with a long past can also have a bright future

Monday of  this week was the officially declared by UNESCO to be  World Radio day. I was listening to the latest episode of the BBC click podcast which was devoted to this event while out jogging and I was struck by how the audio broadcasting technology has both a long glorious history and a bright future.

Here are a few facts worth thinking about:
  • Radio was effectively the first world wide web. Modern radio stations tend to broadcast at frequencies that have a relatively short range so that neighbouring radio stations won't interfere with each other, but in the early days of radio stations tended to use Long Wave transmission which had a much longer range. In fact the BBC World Service has been broadcasting globally since 1932 by using a network of transmission stations strategically placed throughout the globe that would re-transmit the programs originally transmitted from London (an architecture which is strikingly similar to that of the Internet). Of course they were assisted in the early days by the existence of the British Empire, but this network is still apparently reaching and audience of almost 200 million listeners every day.
  • Radio stations were probably the first  users of social media. As soon as telephones became widespread, many radio programs adapted the phone-in model whereby listeners could phone the radio station to contribute to the discussion happening in the studio. In recent years the technology has been updated to use Twitter and similar tools, but the basic idea has been popular for many years.
  • Radio technology is cheap and truly ubiquitous. While many people listen to radio programs on very sophisticated and hence expensive devices, cheap radio receivers are affordable for even the poorest of people. In fact their power consumption is also so low that batter powered models can be used in remote areas where no mains electricity supply is available. In fact it is even feasible to have devices whose battery can be recharged by manually winding a handle.
  • Audio broadcasts can reach people even when they are busy. For example, many people listen to the radio while preparing breakfast in the morning and almost all cars come equipped with a radio that you can use to stop yourself getting bored on long journeys. I know that some people might read blogs while driving, but this is definitely not to be recommended for safety reasons. However, listening to the radio while driving is perfectly safe.
  • Modern distribution techniques like podcasting complement rather than compete with radio. I follow may different podcasts and I notice many (but not all) of the best shows are radio programs that are simply recorded and turned into a podcast with minimal effort. The skills that radio broadcasters have learned over the years enable them to produce a very high quality product and for minimal extra effort they can transform their existing radio content into podcasts that can reach a much wider audience that are outside the reach of their transmitters. In fact I know that many colleagues who are not natives of Ireland really enjoy the fact that the Internet allows them to easily keep in touch with home by listening to the local radio station from their home town.
  • Audio broadcasting is a field that is open to both professionals and amateurs at the same time. While I was in secondary school, I had great fun working as a part-time DJ on our local pirate radio station. The technology we used was amazingly cheap and low-tech even by the standards of the time. The production standards were not very high and were not really capable of competing with the real professionals, but we did nevertheless manage to build up a loyal group of listeners. It is no surprise that there never was a pirate television station in the west of Ireland despite the fact that there was a clear demand for an alternative to the single station that was available at the time - the costs of setting up even a very basic television station would be several orders of magnitude higher.
When you consider all of these factors it is clear that audio broadcasting is a technology which will flourish in the years ahead even if the tools and techniques we use to produce the program and/or listen to the content will continue to evolve.

Monday, February 13, 2012

[xpost] Running stand-alone java programs that read and write Notes/Domino databases

[This post was originally posted to my IBM internal blog]

Most code which interfaces with Notes/Domino databases will run in the context of a running client or server e.g. a notes agent which runs on a schedule or in response to an event. However, there are times when you might want to run a stand-alone programs that will read and write Notes/Domino databases.

Bob Balaban (who wrote the definitive book on the Notes Java API) recommends that programmers should write agents in such a way that they can be run either as a stand-alone program or as a Notes agent because of the fact that it is so much easier to debug a Java program than to debug a Notes/Domino agent (he calls this the two headed beast). However, it is also often handy to distribute a program which modifies a Notes database in the form of a stand alone program e.g. I recently had to  write a program which tweaked the settings of a Sametime Community server - since many Sametime administrators don't even realize that they have a Domino server underneath I thought it would be easier to distribute the code in the form of a stand-alone program rather than as an agent and asking administrators to go through the complexity of installing and enabling a Notes agent.

One of the things that is complex about running a piece of Notes/Domino code is that you need a lot of context e.g what Notes ID etc. If you are running java agent on a machine which has Notes installed upon it then the environment variables will be already set up for you, but if your machine does not have Notes installed it can be tricky to figure out all of the paths and environmental variables that are needed. In particular I have often wasted a lot of time trying to get Java programs to run on Linux Domino servers.

What many people don't realize is that Domino Linux servers come with a very handy startup script in /opt/ibm/lotus/notes/latest/linux. that can do all of the hard work for you. To use this program you should invoke your program with the script, like:
/opt/ibm/lotus/notes/latest/linux/startup /LOCATION/MYTOOL
where LOCATION is the path to your tool and MYTOOL is the name of your tool. Then your tool will get invoked with all of the necessary environmental variables defined properly.

This startup script  is really handy, I am not sure why it is not more widely documented.

Saturday, February 4, 2012

Remmina is the best Linux application for working with remote computers

As many people know, I have Ubuntu installed on my work laptop. However, this does not mean the bulk of my development and testing is done on this platform. The software that IBM develops runs on many different platforms and so I need to do most of my work on remote servers which are running various different operating systems.

Ubuntu comes with Vinagre pre-installed - it appears as "Remote Desktop Connect" in the system menu. This tool can connect via the RDP protocol to Windows type systems and it also speaks VNC to most other platforms. While it works, it is not exactly a joy to use so I sometimes use Tsclient to connect to Windows servers and TightVNC to connect to VNC servers. Neither of these tools is perfect either so I decided to look to to see what alternatives are available. After a bit of experimentation I hit upon Remmina as the best overall tool that can be used to connect over either VNC or RDP to remote desktops.

The main features that I like about Remmina are
  • It has a lot of flexibility about resolution. As well as allowing you type in any arbitrary screen resolution you can also ask Remmina to pick a resolution that is optimized to the screen you are using.
  • There are a number of Hot keys that can be used to quickly access common features e.g. change the window size to match the current resolution or visa-versa.
  • It integrates the local and remote clipboard so you can easily copy text from a local application to a remote one.
  • It is easy to get files to or from a Linux machine, but configuring shared drives on windows can be much more tricky. Therefore Remmina helps you by configuring your local home folder (or any other directory you specify) as a shared folder via Samba and then automatically connects to that shared folder from the remote session it establishes on a windows machine.
  • It has a handy applet which integrates with the system tray and allows you to quickly connect to any of your configured servers.
However, Remmina is not perfect. The main problem is the almost total lack of documentation. The project website has the FAQ about where to find documentation "Remmina was designed to be hopefully work for most people without the aid of any documentation". Although this is not really a grammatical sentence it is close to being true, but here are a few things that it would be useful to know before you start using Remmina:

  • Most UI elements in Remmina can also be accessed by a combination of keys on the keyboard. When you hover over a control in the UI with the mouse the equivalent key combination will pop-up.
  • All of the hot key combinations are accessed by first pressing the ctrl key on the right of your keyboard  For example when you hover over the "Full Screen button" in the UI you are told that the keyboard equivalent is "Control_R+F". I initially thought that this meant that I should press the ctrl R and F keys at the same time, but it actually means that you need to press the right hand ctrl button and the F key at the same time.
  • Because the right hand ctrl key is used by Remmina, you will often need to use the left hand ctrl key to use the applications on the remote machine. For example, most editors use the ctrl key combined with the right or left arrows to navigate through the document a word at a time. If you are editing a document in a remote window that you opened via Remmina, you need to use the left ctrl key for this type of navigation because if you use the right crtl key Remmina will interpret your ctrl arrow key presses as instructions to switch to a different active remote connection.

Thursday, February 2, 2012

Fighting for our musical freedom

I listen to a lot of radio shows as podcasts on my phone. One thing that I notice is that most of the talks shows that include occasional music when broadcast live have the music cut out when posted as a podcast. I assume that the reason for this is because the radio station is worried that they don't have the rights to post the music on line.

One of the shows that I like to listen to is the Miriam Meets series on RTE. It is ironic that even when she is interviewing the performer and composer of a song on the program they still cut out the music because they don't have the rights to their own music - presumably the reason they agreed to the interview is t promote their music, so cutting the music form the show doesn't serve anyone well. On the other hand, I was particularly pleased to hear a recent episode when she interviewed singer/songwriters Paddy Casey and Declan O Rourke. They were proud of the fact that they are not signed up with a record label because of the freedom it offers them. They were even wiling to perform some of their compositions live on the radio. I think more musicians should value their freedom in this way.

I was recently experimenting with some music technology and since I am not a big Apple fan I was looking for a Linux alternative to GarageBand. A friend pointed me at the Linux Multimedia Studio. Not only is this excellent software that is easy to use, but there is also an excellent collection of sample projects available. Viewing these sample projects I am reminded of when I first encountered open source software. In much the same way that having access to the source code allows you to study how a program works and even tweak it to better meet your needs, having access to the LMMS project file allows you to study the individual  instruments used in a recording and tweak the recording so that it is more suited to your personal taste.

Imagine how cool it would be to have the "source file" for some of your favourite songs. Not only could you sing Karaoke, but you could even hear exactly how you would sound like if you played some of the drum solos along with your favourite celebrity hard rock band!

My friend Speedie, recently posted about the need to encourage coding skills among young people  ensure that they don't lose their creative skills in the digital age. While I agree with him, I also think that we have the same issue with music. Many young people think that the only way to create music is to download a track that someone else created and they never even think of creating their own musical compositions.

Modern music creation tools have become so easy to use  that there is no excuse not to express your musical creativity. Perhaps we ought to launch a MusicDojo series of events to complement the CoderDojos. I don't have much musical skills, but if any musical types want to start such a series I am more than happy to help with the technology part.

Wednesday, February 1, 2012

[xpost] Scribefire and Lotus Connections

[This article was originally posted to my IBM internal blog]

A while ago I wrote up a description of how to configure the Scribefire blog publishing tool to work with Lotus Connections. At that time it was necessary to manually specify the service URL and the API type, but in the meantime Lotus Connections has fixed the way that it identifies itself to tools like Scribefire so that now you simply need to provide the URL of your blog (if you are using the IBM internal deployment be sure to use the https:// version of the blog URL) and your username/password - all other parameters will automatically default to the correct values.

However, there is another issue that people will find when using Scribefire with Lotus Connections. It is not really a bug as such, but it is very annoying nevertheless.

When I configure Scribefire to publish to a blog hosted on wordpress.com, the tool automatically configures all of the blogs that I have write access to on this platform. This is actually quite a convenient feature and in any case it only takes me a few moments to delete the small number of blogs that I don't actively contribute to. However, in Lotus Connections, newly created communities get a blog by default and by default all members of the community have write access to the blog. I am a member of a huge number of communities on the IBM internal deployment of Lotus Connections (I am sure this is quite typical for most employees, especially since you can be added to the membership of a community without having to even give your proposal). As a result when I tried to add my personal blog to my scribefire configuration, I ended up with several pages of blogs added to my list of blogs on Scribefire and I had to scroll down 6 times to find the one blog that I was likely to want to publish to.

I have tried removing the blogs that I don't use from my Scribefire configuration, but this is a tedious task since I need to remove them one by one and Scribefire asks me for confirmation each time. I wonder if anyone knows an easy way to remove several blogs from my configuration?

Tuesday, January 31, 2012

Scanning the wireless activity in my neighbourhood

In a previous post I reported that when I did a survey of wireless access points near where I live about 2.5 years ago, I found that 7% of wireless access points were unencrypted. Recently I needed to check what wifi signals were active in my house in order to diagnose some signal interference problems and while I was at it I decided to do a quick check to see if the wireless landscape of my neighbourhood had changed significantly in the last few years.

This time, I did my survey using the wigle.net application on Android (2.5 years ago I was using a Symbian based Nokia phone - which is itself and indication of how things have changed in the meantime). I didn't walk quite as far this time, so the survey was less complete, but I was dissapointed to find that the percentage of unencrypted wireless access points in the most recent survey dropped down to 2.7% of the total. I looked at the data to see what had happened to the open wifi points and they were broken down into 3 roughly equal groups:
  • The access point was still active and open
  • The access point was still active, but was now secured with some form of encryption
  • The access point was no longer active
I am not sure why people are becoming less willing to leave their wifi access point unencrypted, but from chatting to friends I think that people are not really concerned by the impact that casual users might have upon their own internet browsing. In fact they are more concerned about the fact that they could get into trouble if a passer-by used their wireless access point to engage in some illegal activity on the internet.

In the previous survey, well over half of the access points had a SSID of the form eircom_XXXX which is probably a clue that they got their wireless access point from eircom and never bothered to change the default SSID. Since eircom was originally the monopoly supplier in Ireland this showed me how many people like to stick with the default choice.

However, in the more recent survey I noticed that SSIDs of the form UPCXXXXX seemed to becoming more popular which probably indicates that many people are opting to switch to the cable modem service from UPC - although it also indicates that many still don't bother changing the default settings on their router. The following chart shows that based upon my totally unscientific survey UPC seem to have overtaken Eircom in my local market. Most of the people in the "other" category will have changed their SSID from it's default, so I can't guess what internet provider they might be using.

Saturday, January 28, 2012

Is the unrestricted distribution of music on the internet really a threat to the music industry?

The recent controversy about the Stop Online Piracy Act (SOPA) in the United States and its close equivalent in Ireland has largely been represented in the media as a battle between the rights of music consumers (who want to be free to do anything they want to) and the music industry (who want to be able to exert as much control over online activity so that they can protect their livelihood). While there is some accuracy in this portrayal, the reality is much more subtle.

The people working in the music industry can broadly be divided into two groups:

  1. The musicians who are involved in composing and/or performing music.
  2. People who are involved in facilitating the distribution of music e.g. people working for record companies or working in a music venue.
I think that the later group of people might have a reason to fear that the unrestricted distribution of music might threaten their jobs, because the internet makes music distribution so easy that they are not needed as much as before. However, I don't think that the musicians have anything to fear. On the contrary, modern technology means that the current generation of youngsters find that it is easier than ever before to create music and to distribute it to music lovers all over the world. Similarly, people are listening to more music than ever on their various different devices. Hence I think that the future of the music industry is very secure.

In recent years the number of professional recordings made by formal record labels has been actually  increasing. The number of home made recordings is increasing at an even more dramatic rate, because the cost of the equipment required is dropping and the equipment is becoming easier for non-experts to use. Of course, the record industry is not happy with their reduced profits because they are selling fewer copies of each recording. However, there is very little sign that the music industry is in decline and consumers have no reason to fear that the range of music available will decline.

Friday, January 27, 2012

Dublin's public transport leaps forward into the information age

Users of public transport in Dublin will have been delighted to see that Dublin bus have recently been putting display signs on some of their busier bus stops to tell potential travelers how long they will need to wait for the arrival of the next bus on each of the routes service this particular stop. These display systems are connected to GPS sensors on their buses so apparently the predictions for the bus arrival time is very accurate.

Unfortunately it is not feasible to put one of these fancy displays on all bus stops. However, this does not mean that people who are not lucky enough to have a display on their local bus stop cannot benefit from the GPS data because the data behind the system is also published in the form of a feed to. There are several smartphone applications that use this data, but my favorite is Next Dublin Bus, which allows you to see the expected arrival times of the next buses on each of the routes serving your favorite stops.  You don't even have to know the stop numbers when you are out and about because it uses the GPS sensor in your phone to help it draw a map of stops near to where you are at the moment. This application could be very handy if the weather turns nasty, because it will allow people go to the bus stop at the last possible moment instead of waiting for a long time in the cold and rain.

We also benefited from the recent launch of the LeapCard system which allows us to pay for our journey on any of the forms of public transport in the city with a single electronic card. I know that several cities have had this for years (e.g. London's Oyster card), but is exciting for us poor Dubliners to finally have this system which was long promised. As far as I understand, the factors delaying the launch were not technical issues, but political in-fighting between the various transport providers. In any case, I am glad that it is finally operational and seems to work very smoothly.

These technology updates are highly appropriate for Dublin, now that it has been officially declared European City of Science for 2012.

Sunday, January 22, 2012

My personal highlights from the BTYSTE exhibition

While at the BT Young Scientist and Technology Exhibition last week, I had an informal wander around the exhibition hall and this is some of the exhibits that stood out for me. I did not have time to visit all projects so it possible that I missed some wonderful projects. I won't cover the Primary Science fair because I reviewed it earlier.
  • I spoke briefly with one of the students behind the overall winning project and I was very impressed with how pleasant and down to earth he was. He managed to explain a complex project in simple and easy to understand terms. He also told me about his career plans and those of his partner - I have no doubt that they will achieve all of them.
  • The project which impressed me most, was done by a student from Avondale Community School which was entitled "Safe driving with the ice device". This project was clearly inspired by the cold weather around the time of last years exhibition. The student had developed a novel system to deal with the problem of windscreen de-icing during cold weather. The problem he spotted was the fact that water used for washing the windscreen will often be frozen and so he built a simple simple electric heater which could melt it. Then if the windscreen begins to re-freeze, the driver can simply spray some hot water onto the windscreen which will unfreeze it as well as washing it. He even took into account the fact that often the water in the pipes leading to the window washer and/or the nozzles can be blocked with frozen water and so he added a compressed air system to assist with unblocking it.
    I think this is an idea with a lot of potential and the student involved was very eloquent and well able to explain the merits of his system. Here he is pictured with his model car demonstrating the system.
  • Two young second year students from Desmond College in Limerick won the overall group runner-up prize for their project "InVigil8 -A Personal Portable Security System" which combined 8 different devices to help with personal protection. I don't want to seem dismissive of their achievements, but I was surprised to see that in most cases they had not actually developed any of the devices from scratch, but had instead adapted an existing device/alarm to a new usage pattern. However, what really did impress me (and presumably the judges) was the confident way that they could demonstrate their project. I think that these young students have a bright future in business even if they decide not to pursue a scientific career.
  • Another project which was inspired by last years unusually cold weather was "Smart Pipe – An Automated Water Circulation Anti-Freezing System". This project implemented a system to stop pipes bursting during periods of freezing weather. The system they built had a motor to circulate the water within the houses plumbing system, this motor was automatically turned on when the temperature dropped below freezing point and this was effectively a less wasteful version of the old trick of leaving a tap running when freezing weather is expected. This trick is only effective when the water is slightly below its freezing point and so when the temperature dropped further the system automatically diverted water from the hot water tank into the cold water system. Since the cold water was already circulating the small amount of hot water added was dispersed and brought the overall temperature of the water only slightly above freezing.
  • The winners of the IBM award were two students from Tipperary who had developed a database of recordings of health and diseased horse hearts. They combined their database with an existing pattern recognition system so that vets can now submit a sample heartbeat recording from one of the horses under care and the application will tell them what heart disease (if any) the horse is suffering from. Read more about their project here.
  • The project "iCollapse:A mobile phone application for assisting those who are liable to collapse" should have won the prize for the most catchy project name is one was being given out. It also had a very clever and useful application - it uses the accelerometer and sensors in someone's iPhone to detect when the person had collapsed and then it will automatically contact a carer to come check on them. This is clearly an idea with great potential and I hope the student involves goes on to make it generally available.
  • Another ambitious technology project was the student who developed the FreeFlowApp web site combining formal traffic reports with people tweeting about traffic issues on the twitter platform. I know from experience that this is a simple concept, but very difficult to implement in practice. At the exhibition the student had a working version of the web site - not only could I see him demonstrate it himself, but I was also able to access it myself on my phone. Unfortunately the site does not seem to be active anymore.
As well as the student exhibitors, there were also a number of exhibits run by professional science and technology organizations. Naturally I thought that the IBM stand was the best, but I was also particularly impressed by the stand run by Institute of Structural engineers. Their stand was not very complex, but they managed to get visitors actively involved in the real issues dealt with by structural engineers by getting them to build complex structures out of paper discs. As you can see from the picture some of the resulting structures were very complex and I think people seemed to be spending hours at their stand.

Saturday, January 21, 2012

Upgrading my home internet connection speed

As I reported before, the download speed of the connection between my house and the ISP is typically not the factor that the determines the overall responsiveness on most web sites. However, I recently decided to sign up with one of the broadband/TV/phone packages with UPC and I was tempted to upgrade my internet connection speed from 25Mbs to 50Mbs at the same time because the cost difference was minimal (€5 per month). I must compliment the UPC staff for how helpful they were in making the upgrade process as simple as possible.

Result screen from SpeedTest.netThe first thing I did after installing the new router was to test the connection speed using the SpeedTest.net service. The download speed when connecting from my desktop computer (which was connected to the router by an ethernet cable with a nominal speed of 100 Mbs) was a very impressive  47.5Mbs

Next I tried running the test from a laptop which was connected by wifi link with a nominal speed of 56 Mbs (I was sitting right beside the router so the signal would have been very strong). Unfortunately, I  could only achieve ~20 Mbs download speed. Since I was using the same test service and the same ISP link, it is clear that it was the link bertween the laptop and the WiFi router that was causing the bottlekneck.

I tried connecting via Android phone I could only achieve a download speed of about 10Mbs, but when I disabled encryption on my WiFi router the speed of the connection from my phone increased to 20 Mbs (the same as the laptop connection). Clearly the CPU load on my phone to encrypt the packets was limiting the transfer speed. As a result I decided to disable encryption on my router in common with my policy of allowing casual sharing of my network link with anyone nearby.

I was quite pleased to see that the upload speed had increased from the 1 Mbs I was getting with the 25Mbs package to 4.6-4.7 Mbs with the 50 Mbs. The upload speed did not seem to vary much from measurement to measurement which incicates that the connection between my house and the ISP was indeed the limiting factor in the overall performance. I think that this increase in upload speed alone will justify the extra €5 per month that they charge for the faster service.