Tuesday, October 31, 2006

Vacation in Utah: Capitol Reef, Bryce, and Zion national parks

Carol and I met up with friends Tom and Cheryl in Capital Reef Park in Utah last week and we have been enjoying three great national parks. Here are some pictures.

Tuesday, October 24, 2006

VAR agreement with Franz

I do a lot of Common Lisp development for my commercial products. I like to develop in Lisp, start selling products compiled with Lisp, then if it makes sense, do a Java port and sell that also. I now have a VAR agreement with Franz to use Allegro Common Lisp for development and for shipping applications.

Saturday, October 21, 2006

Very good: Democracy - Internet TV Platform

A very good start: check it out.

My favorites so far are Sarah McLachlan's "World on Fire" and an Aikido training video. I like this idea: using Bit Torrent, the nonprofit Participatory Culture Foundation helps publishers distribute their content inexpensively. I keep wondering why more TV material (with commercials for profit) are also not published this way. I would like to see more Indy SciFi movies and TV shows, and Bit Torrent distribution with embedded advertisements would greatly reduce costs over traditional broadcasting.

The client software is written in Python and C and is GPLed.

Wednesday, October 18, 2006

More on personal information management

Public APIs for web portals like del.icio.us, "Google Office", Google Reader (references on the web but I have not seen it available yet), Flickr, etc. offer something special to computer scientists that are not available to computer users: the ability to "re-purpose" your own data and meta-data that happens to live on public web portals.

While there are very good systems like Piggy Bank for creating your own meta-data store (in RDF) for web sites that you visit, this requires extra work. The sweet-spot for automating the collection and use of our own meta-data and data is being able to automatically use information that you may already have for your own del.iciu.us tags, tags you have applied to RSS feed items in Google Reader, etc. Most of us use public web portals as part of our work flow, but there are definitely unexplored possibilities for customizing our own knowledge management environments.

Tuesday, October 17, 2006

Be willing to pay a small price for freedom

I just made a small donation to the EFF for helping to monitor the electronic voting machines in the upcoming election:

http://secure.eff.org/friends2006

I urge you to do the same. The Electronic Frontier Foundation is a great group that I have been supporting for years.

Be you a Democrat or Republican, I hope that we can all agree that fair elections with one person, one vote is the cornerstone of our society and government.

Monday, October 16, 2006

And the winner is...Linux Desktop!

I know that I have been harping on Operating System issues lately but due to working requirements of VPN clients, special development licenses for 3rd party tools, etc., I have been spreading my time fairly evenly between Ubuntu (Gnome desktop), Mac OS X, and Windows XP. For my work flow, Linux is just simply better except for:
  • Windows: TortoiseSVN (love it!)
  • OS X: OmniGraffle drawing program (love it even more!!) and the TexShop Latex wrapper
While OS X is very nice, I simply find myself not using stuff like SpotLight, etc. very often. I am probably a bit biased (using X Windows since 1988) towards Linux and Gnome (I also find KDE to be very good). The good thing (for me!) is that I hope that most people do keep using Windows: a honey pot for virus writers and I get a professional advantage over developers who code on Windows:-)

Thursday, October 12, 2006

More on web based office tools: Gliffy.com

Thanks to reader Marco who read my "Google Office" blog and pointed me towards Gliffy.com - a very cool online drawing program implemented with Lazlo. The interactivity of this web application is surprisingly good and the UML diagram that I made looked good both exported as PNG and as SVG. Good job!

Wednesday, October 11, 2006

"Google Office"

I have a Writely.com account and when I went there today I was redirected to what is now "Google Office": Writely and Google Spreadsheet are combined on one "web desktop". It is convenient. What I would really like to see is a good online drawing program (like Dia for X Windows or OmniGraffle for the Mac :-) I often need simple drawing embedded in my writing and I would bet that I will not have to wait too long for a web based figure/drawing functionality.

Tuesday, October 10, 2006

Human minds, programming, and the "caching problem"

When writing large software systems, rapid access to data is often important: what can be kept in memory or more slowly: processes on the same local network and on disk. In software development, we see the same effect: maximum speed and efficiently if a single person can understand the architecture and comprehend the entire system. Moving from a single developer to a very small team adds a little overhead: design notes and pencil and paper drawings turn into casual but more explicit short documents and conversation. The optimisation is minimising cost between two people talking and sharing information vs. maintaining documentation and reading time. Talking is almost always better because communication is a two way street, but if you have N developers, O(N^2) "talking overhead" is too expensive with a large N, so back to the one way street of documentation.

I like to view programming languages in terms of how they allow me to deal with complexity, keeping as much stuff in my head at once:
  • Lisp: great for building up the language from the bottom and extending towards an application domain. The new application "programming language" is higher level and the remaining part of a system is more concise code and easier to keep track of.
  • Ruby: concise, so programs are much shorter and easier to understand.
  • Java: the language does little for me as far as reducing complexity, but great IDEs like IntelliJ at least allow rapid code browsing, "who calls this" queries, etc.

Quicktime movies playing on Ubuntu Linux that do not play on Windows XP

This is odd: I installed the latest Windows XP Quicktime from Apple and hi-res movies that I exported from iMovie on my Mac will not play, but play fine on Ubuntu (I did run "Alacarte" when I first installed to get some 3rd party multimedia support). I have a shared FAT32 partition, so I was running against the same files on Windows XP and Ubuntu.

Monday, October 09, 2006

Praise for older software

I like this :-) I added the underlined emphasis:
Now that the old days are long gone and word processors come preinstalled with every machine, why should we care about this remnant of history? The answer is that remarkably LaTeX is much better suited for composing and distributing most types of documents than any other modern word processor on the market that I am aware of. Just like programming languages tend to converge towards Lisp because it got things right the first time around, so do the Word Processors tend to converge towards LaTeX.
In the last few months almost all of my writing has been done using LaTex and most of my development in Common Lisp (using another old program: Emacs). I love to experiment with new technology, but I use whatever is best for a job to support my family.

I blogged a few years ago about this: in the distant future, I wonder if people will be using ancient software that has been thoroughly tested over the centuries, is bug free, and seems 'just right' feature-wise.

North Korea. Economies of Japan vs. USA

Long term, it is bad news that North Korea has had a successful nuclear test. Short term I am more concerned about the unstable government in Pakistan with their existing nuclear weapons (General Musharraf took control 8 years ago in a military coup, has never faced an election, and is unpopular in his own country - a country with few natural resources, increasing population pressures, etc. - who gets these nuclear weapons if the Musharraf government falls?) Also, many people in the Middle East and Europe are concerned with Israel's nuclear weapons. I believe that it is time for our government to start one-on-one negotiations with countries like Iran, Syria, and North Korea. Public "negotiations" are seldom effective - we need closed door sessions with top level diplomats (private, so egos do not get in the way).

On happier news: Japan is "officially" recovered from its severe 15 year economic slump. Less happy is a comparison between the assets that Japan had to survive economic hard times that we in the USA do not have (and make no mistake, a severe economic downturn will hit us in the future):
  • Personal savings: citizens in Japan had relatively large personal savings that they could rely on for living expenses (consumer savings in the USA is close to zero, considering people who increase their debt with second loans on their homes, etc.)
  • Japan had low defense costs (the USA spends as much money on defense than the next 24 countries in the world combined)
  • Japan had healthy industrial infrastructure with modern factory equipment (the USA is way behind the curve in updating basic infrastructure like factory equipment and our road and highway systems)
  • The government of Japan did not have the huge deficits that the government in the USA has.
  • The government of Japan did not have the huge foreign debts that the government in the USA has.

Saturday, October 07, 2006

Java + AJAX : IntelliJ 6 + GWT a great combination

I plan on doing a major overhaul to our "knowledge intensive" cooking and recipes web portal including AJAX support and a better artificial intelligence recipe wizard. The portal is written in Java using JSPs and custom tag libraries.

I have actually considered re-writing the whole thing in Ruby Rails, partially for the AJAX support and partially because Rails is easier to develop with. However, after spending a few hours experimenting with the IntelliJ 6 Google Web Toolkit (GWT) plugin and wizard support, a lot of the advantage of Rail's excellent AJAX support is minimized. Both free developers from most Javascript hassles of using AJAX.

The is a short flash demo that is worthwhile watching if you are considering using GWT.

Tuesday, October 03, 2006

A bit of history, the Slackware 11 release, and software power

I downloaded parts of Slackware over a 2400 baud modem connection in 1993 - my start using Linux. So, I noticed the announcement of Slackware 11 with some nostalgia. I very much appreciate the fine work of Patrick Volkerding. (Even if I am now an Ubuntu user :-)

Software power: for me, Linux + other open source = Power

I am not talking about client side Linux, rather being able to build services using Linux and quality infrastructure software from the Apache Foundation, the PostgreSQL group, etc.

In the 'new economic era' of globalization and driving costs towards zero, Linux and open source play a huge role in staying competitive.