It has been awhile

May 8, 2007

I have been swamped with writing code for an OCR/Scanning system for my employer and being a team leader for 14 people (10 developers). Haven’t had too much time to continue Lisp development.

Recently, I had to do quarterly reviews and gave as an objective that each developer should learn a new language over the course of the next year.Each person was to choose a language they did not know and that would, hopefully, be mind expanding for them.

Most of the people on my team will be learning Python. One developer chose Erlang, though. Three others, including me, chose Haskell. No one chose Lisp or Scheme. Sad. The reasoning for Erlang and Haskell had to mainly do with wanting to learn a functional programming language that promised to be able to take advantage of the coming concurrency revolution through multiple cores.

Lisp was viewed as too old and having horrible syntax. I personally find it elegant and still far ahead of it’s time– although, I am afraid that the “ahead of it’s time” mantra is causing a lot of the community to rest on their laurels instead of pushing into the future.

I will be releasing some updates for trivial-freeimage in the upcoming weeks as well as a wrapper for the ocr engine TOCR. This little engine has outstanding character accuracy and is cheap– 40$ for the standard version and 86$ for the Euro version.


Portable Graphical Widgets

January 20, 2007

Recently, I was advocating using Lisp at work for some utility apps when a co-worker claimed that we should use Java because we needed true cross-platform capabilities. We went back and forth on this for several minutes and I could tell he thought he had me when he brought up that they would need to have GUI’s. We have to have the ability to run our apps on Windows as well as Linux. So, enter wxcl. I think I may be on the way to converting another Java guy…..

A New World

December 8, 2006

You see, what we’re after is to remind ourselves that we didn’t come to Anarres for safety, but for freedom. If we must all agree, all work together, we’re no better than a machine. If an individual can’t work in solidarity with his fellows, it’s his duty to work alone. His duty and his right. We have been denying people that right. We’ve been saying, more and more often, you must work with the others, you must accept the rule of the majority. But any rule is tyranny. The duty of the individual is to accept no rule, to be the initiator of his own acts, to be responsible. Only if he does so will the society live, and change, and adapt, and survive. We are not subjects of a State founded upon law, but members of a society formed upon revolution. Revolution is our obligation: our hope of evolution. The Revolution is in the individual spirit, or it is nowhere. It is for all, or it is nothing. If it is seen as having any end, it will never truly begin. We can’t stop here. We must go on. We must take the risks.

—Shevek, page 296

The above quote is from the book “The Dispossessed” by Ursula LeGuin. I think it sums up my view about the responsibility that each individual has in society to do things they believe in regardless of the masses and to be responsible for having done such things. I think those of us in the Lisp community need to continue down this path– some of us need to get back on it. Lisp should continue to lead innovation– other languages/technologies should always be playing catch-up– that should be our goal. We will have moments of porting ideas and technologies to Lisp to keep it attractive– I have ported several image libraries to Lisp that I will be releasing to the wild by January. Let’s not stay to focused on that, though; let’s make sure we continue to be innovative with Lisp itself and not just applications. More advocacy to come, in many ways….