Building muCommander for OSX Mountain Lion

When I upgraded from a 2010 MacBook Pro to a MacBook Pro retina with OSX Mountain Lion, I was unhappy that I couldn’t install muCommander. muCommander is a dual pane file manager, very much like Norton Commander and Total Commander. The problem with Mountain Lion is that it does not allow execution of applications downloaded from the Internet, if they are not signed using a sort of developer certificate. So, I decided to build the app myself, which proved a bit trickier than I expected.

Read the rest of this entry


Git With Dropbox

These are my notes on setting up Git with Dropbox. I’m going to cover my view of a flexible Git-based workflow should be. Currently, my workflow includes tools like Subversion, Redmine, Trac and Hudson. So, my goal is to be able to migrate seamlessly and reach a sustainable state using git at the end of the day. Let’s set my requirements for the final solution:

Read the rest of this entry

Getting started with CPPUnit

Unit testing is beneficial for every software project, even randomized algorithms like metaheuristics and genetic algorithms. I want to just stress one benefit, unit testing encourages developers to write code with minimal dependencies, just because otherwise tests are hard to write. The fact that slows development velocity in terms of features per time unit is the increase in interactions between various features. The n+1 feature added may interact with n already available features in many ways. These n+1 features have n2 possible interactions. When dependencies are limited, possible feature interactions are also limited and the project complexity stays under control. Read the rest of this entry

Mac OSX SSH based SOCKS proxy configuration

This post is about setting up and configuring automatically an SSH based SOCKS proxy configuration on Mac OSX. I need it to be configured automatically, since scientific publications are accessible only from an academic institution IP address. Since I spend a lot of time on the console, it is more convenient to have a bash script for that. Also, I have access to plenty of Linux servers at my institution, thus it is very easy to use one of them as SOCKS proxy.
Read the rest of this entry

Setting up OpenCL using an Nvidia device on Ubuntu

In this post, I’m trying to figure out basics of OpenCL. In fact, this is not a tutorial about OpenCL, but about creating and building OpenCL applications on Ubuntu. The tutorial is actually describing my exploration around the libraries. I already have NVidia drivers installed, CUDA library and CUDA SDK installed on my machine.

Read the rest of this entry

OpenMP tutorial

This is an introductory tutorial for OpenMP using GCC. The tutorial runs on Linux and has been checked on Ubuntu. The tutorial was created to present OpenMP to final year students of the Electrical & Computer Engineering Department of University of Patras, during the course Parallel and Distributed Processing and Applications.
The accompanying code is available under GPL from google code, here.
Read the rest of this entry

Linear Algebra with BLAS/CBLAS

I’m intending to learn some basics about basic linear algebra operations using BLAS and CUDA BLAS (CuBLAS). As usual, the post is actually my notes as I read various articles and experimenting. Read the rest of this entry

Genetic Algorithms, Using JGAP, for the Examinations Timetabling Problem

Hello again,

Today I want to test JGAP, so I need a relatively simple optimization problem. The University of Toronto Examination Timetabling Problem (ETP) is an interesting benchmark problem that is fairly simple to implement in code, based on real universities examination problem instances. Read the rest of this entry

Android Simple Application, continued

After setting up the environment in the previous post, let’s create at last a simple application. the application will have a set of 4-5 screens and each screen will have buttons to move from one screen to the other. Also, if this proves to be easy, next step will be to have some shared state between the screens, say an object with 4-5 properties. Each screen will be able to set some property and display some other, or something like that. Read the rest of this entry

Android simple application

Hello again,

After having Android SDK installed, as described in a previous post, now let’s create a simple application. I want to focus on Android system rather than the language. Either way, the language shouldn’t be a problem. The scenario would be like have 3-4 screens and have a couple of buttons to move around these screens. Nothing fancy.
Read the rest of this entry