Code Quality: Code Coverage

I was reading this article about code coverage and found it quite interesting. I have certainly seen the water cooler back patting attitude and have heard a few people worried about that attitude.

In pursuit of code quality: Don’t be fooled by the coverage report

The main thing that I will take out of this article is that code coverage shows you what you are not covering. It won’t tell you how well you are covering.

Maven on Mac OSX

I was reading these different articles on how to install Maven on Mac OSX and I had to create the /usr/local directory, check the md5sum, untar and then modify my profile.

All this to realize that Maven is already installed on my Mac by default. It is version 2.2.0 and not the latest 2.2.1 but for the book I am reading this is perfect.

A little bit of testing before starting to do all sort of crazy things would have simplified my life.

I installed the m2eclipse plugin in my Eclipse so I can get ready to see how it simplifies my life by not having to write the pom.xml.
http://m2eclipse.sonatype.org/installing-m2eclipse.html

Synergy+ not ready for prime time

When you look at the synergy+ page it does say that it is beta and mostly stable in most cases so all the warnings are there to inform you that it may not work perfectly. I have no problem with them but I do with CentOS 5. When I did the upgrades this morning it upgraded my synergy to synergy+ and caused me all sorts of issue for most of the morning. CentOS on the workstation in question is installed to be a stable system and not a system that installs beta software. If I want cutting and bleeding edge I will play with Fedora.

After reverting everything back to synergy I am back to a productive environment.

New career as a programmer

I read this blog post this morning and taught that it was giving good advices:

Five tips for starting a programming career
http://blogs.techrepublic.com.com/programming-and-development/?p=2231&tag=nl.e055

The tip to work on more projects and getting involved with an existing project are ones I will put in practice in the coming days. I am expecting that it will make life a bit harder but I am certainly ready to learn a lot from this.

Article about Functional Programming

I had heard about functional programming and I was curious about understanding a bit more than just a few “features” of it. This article explains some basic concepts and I was surprised to learn that the functional programming concept can be applied in common programming language.

http://www.geeksaresexy.net/2009/02/06/an-introduction-to-functional-programming/

Installing a new Apache with PHP

I was tasked with installing a new Apache and PHP on an existing and working RHEL4 servers. The new install had to be separate from the current one so to not disrupt the current work.

Apache 2.2

Apache was somewhat easy to install but here are my steps anyway.

I downloaded the source code from apache.org and untarred in my home directory.

As myself I then configured it with these parameters:

./configure –prefix=/opt/apache22 –exec-prefix=/opt/apache22 –datadir=/opt/apache22 –enable-mods-shared=all

Built it as myself with:

make

and as root installed it with:

make install

I had to modify the /opt/apache22/conf/httpd.conf for a few things. After the ServerRoot line I added these 2 lines:

PidFile “/opt/apache22/httpd.pid”
LockFile “/opt/apache22/access.lock”

These allow many version of Apache to run on the same server without stepping on each other files. There is more to it but these were the 2 lines that took me a while to figure out because I was not reading the comment in the configuration file properly.

I also modified these lines to match what I wanted to do:

Listen 8000
User apache
Group apache
DocumentRoot “/var/www/html_php5”
<Directory “/var/www/html_php5”>
ScriptAlias /cgi-bin/ “/var/www/cgi-bin/”
<Directory “/var/www/cgi-bin”>

Listening on an other port is the option I took to make sure I could run 2 Apache without stepping on each other toes. The user and group are the ones in RHEL4/5 so I simply re-used. The document root is a directory I created to be different than the default one (/var/www/html) used in RHEL4/5.

So it was quite simple for the Apache portion

PHP 5.2

Intelligent Phones

I have a Palm Treo 680 and it is time to consider a replacement. I love the Palm software but Palm is going nowhere so I can’t avoid a change forever.

I have looked at some options but I am quite puzzled about which one is the best choice.

iPhone is the rage but I have heard too many stories about the battery not lasting that I don’t really want such a phone. The virtual keyboard is also quite a turn off for me. I have an iPod Touch and I can’t type quickly on a screen. So that option is out of the race.

Windows Mobile options are numerous but I feel a bit the same about it as I do about sticking to the Palm. They seem to be doing nothing and going nowhere. All you hear about Microsoft is that they keep delaying the next version.

Blackberries are attractive to some extent. I have one because of work and I want to get my own so that they can push me the emails and I will not have to carry 2 units on me. Keyboard is good on most units and the battery life is actually very impressive on the one I have.

My concerns with all these different phone is that important tasks to get me organized always seem to be an after taught. A good tasks manager is important for me and on the BlackBerry it is a bit basic for me. Can’t seem to find a good application to organize notes on it either. Very basic applications. I can do advanced organization on my Palm and it helps me a lot. I am not looking for an entertaining device to play music and videos and connect me to the Internet all the time. I am looking for very useful “disconnected” applications.

I will have to dig more to find all the functionality that I want in that gadget.