Author Archives: Mikael Ståldal

Don’t use large BLOBs in MySQL from Java

The MySQL database can store large chunks of binary data (up to 1 GB) using the BLOB data types. However, this does not work well if you access the MySQL database from Java (or any other JVM based language) using … Continue reading

Posted in database, Java | 3 Comments

Don’t use PipedOutputStream on Android

I was using in an Android app. The app performed horribly bad. After doing some profiling, it turned out that the call to PipedOutputStream.write(byte[]) that was really slow. After digging into the Android source code, I discovered that PipedOutputStream.write(byte[]) … Continue reading

Posted in Android, Java | 2 Comments

Running Adobe Lightroom 4.4 in Linux

I use Adobe Lightroom 4.4 for photo editing. There is one very annoying aspect of this program, it is not available for Linux (only for Windows and Max OS X). In order to run Lightroom on my computer, I had … Continue reading

Posted in Linux, Ubuntu | 16 Comments

Using an embedded SQL database in Java web application

You have a Java web application needing a relational SQL database. According to JavaEE conventions, you declare the DataSource in web.xml: <resource-ref> <res-ref-name>jdbc/DS</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> </resource-ref> and then fetch it in code with (DataSource)new InitialContext().lookup(“java:comp/env/jdbc/DS”). Using Maven, Jetty and HSQLDB, … Continue reading

Posted in Java, JavaEE, web | 3 Comments

GIMP 2.8 in Ubuntu 12.04

This is no longer relevant, since the PPA have updated to GIMP 2.8.10, which has fixed the bug. If you use Ubuntu 12.04 LTS, you only have access to the old GIMP 2.6 in the standard repositories. This is unfortunate … Continue reading

Posted in Linux, Ubuntu | Tagged | 2 Comments

Using AAC music files in Android

If you have an file with .aac extension, it is AAC encoded audio in an ADTS container. If you want to play such file on an Android device, you have problems. Android 2.x does not support this file format at … Continue reading

Posted in Android, Linux | 1 Comment

How to design a RESTful protocol

What is REST? In most cases, it is sufficient say that REST is a way to design a network protocol based on HTTP. I perfer to call it a RESTful protocol, but it can also be called RESTful API or … Continue reading

Posted in web | Leave a comment

How to add password protection to GRUB2

These instructions are tested with Ubuntu desktop 12.04, but will probably be useful in other Linux distros with GRUB2 as well. The goal is to block everything except booting the default system. In paricular, it should not be possible for … Continue reading

Posted in Linux, security, Ubuntu | 2 Comments

Bachata Linux

Based on what I have desscribed in the two previous posts, I have now made a Linux distribution with an install CD. It is called Bachata Linux, check it out here.

Posted in Linux | 6 Comments

How to roll your own bootable Linux CD-ROM

When booting a regular Linux system, it just mounts some partition with a nice file system (such as ext4) on your HDD on / read/write and there you go. When booting from a CD-ROM, it’s not that simple. The CD-ROM … Continue reading

Posted in Linux | Leave a comment