Blogs (22)

Crafting an Effective Writer

2014-08-22 — Article of 1200 words MOOC Coursera Writing

A MOOC on writing from Mt. San Jacinto College

From June to July 2014, I followed Crafting an Effective Writer a MOOC from Mt. San Jacinto College. The course goal is “to become an effective builder of sentences using the basic tools of grammar, punctuation, and writing”. It is designed for American high school and college students, but even for global community members. I recommend it to anyone who wants to become a better writer. A new session will be available in September 2014.

Read more...

Improve your jazz listening skills

2014-04-16 — Article of 900 words MOCC edX Music Jazz

A MOOC on Jazz from University of Texas at Austin

From January to March 2014, I followed Jazz Appreciation a MOOC from University of Texas at Austin. The course goals were to enhance “enjoyment of jazz by developing an informed understanding and deep appreciation of the art”. I greatly enjoyed following the course and I recommend it to anyone interested in jazz. A new session will be probably available in early 2015.

Read more...

Personal backup strategy

2013-02-08 — Article of 800 words Programming Git Unison mr Robocopy TrueCrypt Backup

The problem

I use a Windows desktop at work, another one at home, and a Linux laptop during commuting. The laptop is for personal projects and the home desktop is for photo management and retouching. Many of the files are shared, so I have to synchronize them among computers. Moreover I want to have an up-to-date copy of the files in my home NAS, from where I can make a backup.

Read more...

Trying out Shake library

2012-05-18 — Article of 700 words Programming Haskell

I had a little repetitive task to automate in my mt-euler project: creating a pdf from a series of Literate Haskell files using lhs2TeX and xelatex.

Looking for something like make or rake, but written in Haskell, I found Shake.

I used it and I was well pleased with the result.

Read more...

Project Euler in Haskell #4

2012-04-20 — Article of 700 words Programming Haskell Project Euler

Problem Description

Link to Project Euler problem 4

A palindromic number reads the same both ways. The largest palindrome made from the product of two 2-digit numbers is \(9009=91\times99\).

Find the largest palindrome made from the product of two 3-digit numbers.

WARNING Solution ahead. Don't read more if you want to enjoy the benefits of Project Euler and you haven't already solved the problem.

Read more...

Project Euler in Haskell #2

2012-04-10 — Article of 200 words Programming Haskell Project Euler

Problem Description

Link to Project Euler problem 2

Each new term in the Fibonacci sequence is generated by adding the previous two terms. By starting with 1 and 2, the first 10 terms will be: 1,2,3,5,8,13,21,34,55,89, …

By considering the terms in the Fibonacci sequence whose values do not exceed four million, find the sum of the even-valued terms.

WARNING Solution ahead. Don’t read more if you want to enjoy the benefits of Project Euler and you haven’t already solved the problem.

Read more...

Of all the barriers to change...

2011-10-24 — Quote Quote Writing

Of all the barriers to change – and to realizing the benefits of plain language – none is greater than the myth that clarity has to be sacrificed for precision, especially with complex subjects. Don’t believe it. The murkiness that plagues so much official and legal prose is usually generated by the writer, not by the substance. It comes more from bad style than from the inherent difficulty of the subject. And that’s when the need for “precision” becomes a lame excuse for writing.

And no, I am not hypocritically...

2011-10-20 — Quote Quote Business

And no, I am not hypocritically tilting at my own “disturbing new trend”. In 1777 David Hume wrote, “The humour of blaming the present, and admiring the past, is strongly rooted in human nature”. A century before him, Thomas Hobbes identified its source: “Competition of praise inclineth to a reverence of antiquity. For men contend with the living, not with the dead”. People also blame the present out of historical ignorance and statistical illiteracy, and because they mistake changes in themselves—the responsibilities of adulthood, the vigilance of parenthood, the diminishments of ageing—with changes in the world.

What if you want to learn the way of the analyst...

2011-10-18 — Quote Quote Programming

What if you want to learn the way of the analyst, anyway? Remember, a skilled analyst is not an expert in a specific domain (although he tends to grow into an expert in several domains). He’s not the person you pay to get answers. He’s the person you pay to get better questions (and so, indirectly, better answers). The skilled analyst will ask different questions, explore different avenues, and find out different facts. So the essential skills would be observation, knowledge of large class of problems, classification, and description.

The irony of our fixation on artificially created crises...

2011-06-28 — Quote Quote Programming

The irony of our fixation on artificially created crises is that deep, long-term problems – which arguably should be considered crises – are ignored. The most important of these surely relates to security — too much of our software is susceptible to attack, and too few users understand how to use software in a way that minimises security risks.

Researchers have shown it takes about ten years...

2011-04-30 — Quote Quote Learning Programming

Researchers have shown it takes about ten years to develop expertise in any of a wide variety of areas, including chess playing, music composition, telegraph operation, painting, piano playing, swimming, tennis, and research in neuropsychology and topology. The key is deliberative practice: not just doing it again and again, but challenging yourself with a task that is just beyond your current ability, trying it, analyzing your performance while and after doing it, and correcting any mistakes. Then repeat. And repeat again.

In my experience, people...

2011-04-29 — Quote Quote Management

In my experience, people get far more excited about doing something as well as it can be done than about doing something adequately. If they are working in an environment where excellence is expected, then they will do excellent work without anything but self-motivation. I’m talking about an environment in which excellence is noticed and respected and is in the culture. If you have that, you don’t have to tell people to do excellent work. They understand it from their surroundings.