Don’t lose that command history

If you have ever run multiple terminal windows at the same time on a Linux system you have probably hit this problem. Only part of the command history seems to be saved for future sessions. This can be really irritating if you want to go back and re-sun some complex, finicky command.

“Cube Rick” has a suggestion to make sure that it all gets saved for later:

Cuberick: Update Bash History in Realtime

The Parable of the Two Programmers

I’d not seen this before, but it certainly has echoes of real life.

The Parable of the Two Programmers

Validating JVM Arguments in Code

I can’t think of any real uses for this right now, but I can think of lots of possible uses!

thekua.com@work » Validating JVM Arguments in Code

TDD and Test-Driven Refactoring

This is a neat observation. One equivalent to test-Driven Development (TDD) when working with an existing codebase might be “test-driven refactoring”. The idea seems to be that at any particular point in the lifecycle of a software system not all of the benefits of TDD are actually being used. So why not just do enough TDD to get the required benefits at the time.

In this case the need is to refactor some existing code in preparation for a change. Rather than either (a) stop to write tests for the whole system, or (b) throw up our hands and abandon TDD for this work, the suggestion is to write a passing test around the exact code being refactored, then use that test to ensure that the change preserved that behaviour. Then, in the TDD style, rinse and repeat for the following refactorings.

As this progresses the result should be a growing body of regression tests. concentrating around the areas which have actually changed, which seems good to me. It’s not as good as TDD from the start, but it’s better than no tests at all.

Agile Tips: Testing private methods, TDD and Test-Driven Refactoring

Less-bright applications and web sites save power

I’d not encountered this before, but it does kind of make sense. Showing a bright pixel consumes more energy on most display technologies. so choosing a black background for applications and web sites can help save both your own energy bills, and the planet!

ecoIron - All these whirring boxes.: The Full Story on Black Google, Blackle, etc.

Ubuntu Ibex key repeat problems

This is really irritating me, but I can’t find a solution so far. I use Synergy to control multiple computers from a single keyboard, but have found that Ubuntu Ibex does not completely work. Apart from the “@” symbol being translated to a capital omega (which I did find a fix for) there is still the problem that the “left arrow” and “down arrow” keys (the ones in the group between the alphabetic and numeric keypads) do not seem to repeat when held down. All the other keys (with the possible exception of “End”) seem to repeat normally.

Anyone know of a fix or work-around?

The mobile future is calling

The world of mobile systems and software is potentially a very exciting place to work, even if sometimes I am so close to the code that it seems just like every other piece of software I have ever worked on. Nice to note that the BBC see some crossover potential, too.

BBC News: The mobile future is calling

Comparing Amazon’s EC2, Google’s App Engine and Microsoft’s Azure

“Cloud computing” is still very high on my list of things I need to get up to speed on. One trouble is that innovation in this area seems to be coming faster than I have time to experiment. Still, this article seems a useful summary of the current state of play.

InfoQ: Comparing Amazon’s EC2, Google’s App Engine and Microsoft’s Azure

UK universities to lead global e-learning

Apparently there is to be a push to make the UK a world leader in on-line higher education. I’d love to see this happen, but I have my doubts.

As with so many other attempts at “e-learning”, the emphasis seems overwhelmingly on “learning and teaching resources”. But this is the easy part of the problem. The hard part is institutional change; moving away from the legacy idea of classes and courses to a new model which decouples learning from teaching, and both of those from assessment.

So far I have not found any indication that educational institutions in the UK are willing to step away from the traditional, everyone in one room, everyone being taught at the same time, lecturer as source of all wisdom approach to the distributed, asynchronous, collaborative, multi-sourced model needed for real “e-learning”.

Even the Open University, despite being centred in distance education, still has synchronized course start dates and assessment deadlines, for example. This is not only inflexible for students, but also places a much heavier load on tutors at certain times of the year. As far as I can tell, this sort of practice is done solely because, well, that’s the way it has always been done.

Educational institutions, please wake up. Successful on-line study and assessment should be available to everyone wherever and whenever needed.

UK universities to lead global e-learning : JISC

Second Life affair ends in divorce

It seems that some people just want attention, even in an on-line setting. For me. the last line in the article is the most revealing…

Second Life affair ends in divorce - CNN.com

Email picture messages to phones in the USA

A while ago I spent some time banging my head against the needless inconsistencies between US mobile carriers for a project which remained at the prototype stage. If we ever pick up such a project again, the following list of email-to-SMS/MMS addresses could well be useful.

How to Send Picture Mail via SMS / MMS on the iPhone at JAW Speak

Pragmatic Learning and Thinking: Book Review at Mark Needham

An excellent and detailed review of what looks to be a very interesting book. I definitely need to up my reviewing game if I want to keep up with the likes of Mark Needham.

Pragmatic Learning and Thinking: Book Review at Mark Needham

Stand up at a desk? Why not?

Not something I had ever thought of, but apparently it’s more healthy and productive to stand at desks rather than sit!

Evolving Excellence: Lessons from Japan - Stand for Action

Estimated Interest on Technical Debt

We are currently struggling with how to integrate work on refactoring/simplifying/cleaning our product codebase with existing streams of stories and bugs. One of the tricky aspects of this is how to estimate and prioritise the cleanup work: how much is it worth, and how much time should we spend on it this iteration?

Martin Fowler has written about extending the idea of “technical debt” by including the concept of “interest”. Extra time spent on completing any given task compared with the time which would/might have been spent implementing that outcome on a cleaner system is effectively an “interest payment” on the “technical debt”. Noting an estimate of such an amount along wi