TechnoSophos

Feb 4 2009

TechnoSophos is the blog of Matt Butcher, a software developer and author living in Chicago.

My main interests are software development, content management systems, search engines, XML technologies, and open source tools. I have written books on Java, JavaScript, PHP, jQuery, Drupal, OpenLDAP, and OpenCms. I have written production code in Java, PHP, JavaScript, Python, Perl, C, C++, Ruby, and other languages. I learned UNIX (1995) before Windows (Um...), and have consequently always lived a pleasurable on-line life. My first web venture was a massive pure HTML intranet for Colorado Springs Utilities back in the mid-90's. Later I graduated to shell script-based CGI's, then (gasp) Netscape's Server-Side JavaScript.

These days, my pet projects are:

  • QueryPath (http://querypath.org): A PHP library for manipulating XML and HTML. It's basically jQuery plus database tools (populate XML form the database... or vice versa).
  • Rhizome (http://code.google.com/p/sinciput/): A Java-based document repository. It provides very fast, very robust searching of the repository, relationships of arbitrary complexity, and a pattern-based controller model that makes it very easy to create custom web applications very quickly.
  • Sinciput/LanternNotes: Sinciput and LanternNotes are two names for the same system: A web-based application for academic note taking and research. The platform is very powerful, and provides an interface with the Library of Congress and other such sources.
  • Pilaster: PHP and Python libraries implement what is essentially the core of Rhizome. Using Lucene, Berkeley DB, and other embedded systems, Pilaster can be used as a powerful document database for your apps. Oh, and of course it has a search engine built in.

Building on these tools, I tend to create things like Twitterpated (my iPhone Twitter app), Seriatim (my Rhizome-based time tracking system), and other such doodads.

The term TechnoSophos is a neologism, combining the Greek Techne and Sophos, roughly translated 'art' and 'wisdom', though Techne has a more nuanced reading. If I recall correctly, Aristotle used the term to denote that which is done with skill, a term more like artisanship than artistry.

For brief historical background, I ran the company Aleph-Null, Inc from 1999 to late 2008. During my time there, I consulted or did contract work for WebMD, Agilent, Global Mapping, HCorp, L7, Tuxia, Development Associates International, and many others. While there, I registered the name TechnoSophos as an alternative name for Aleph-Null. I use it on many occasions. For example, the Rhizome and Sinciput projects, two Java applications, use the com.technosophos classpath. My twitter stream is at http://twitter.com/technosophos, too.

I have written several books on technology. For the full list, see my author profile at Packt Publishing. I've also written numerous articles in both technology and philosophy.

Currently, I am a Senior Developer at ConsumerSearch.com, one of the top 5 most trafficed Drupal sites in the world. ConsumerSearch is an awesome place to work, and the challenges we deal with are stimulating and engaging.

ConsumerSearch is part of the New York Times Company/About.com. This is my personal blog, and nothing I say here reflects the opinions, etc. of NYT, About.Com, or ConsumerSearch.

I have dozens of Open Source projects that I work on. My current pet project is QueryPath. This tools is a jQuery-like library for PHP applications. In addition to providing some serious DOM/HTML/XML manipulation tools, it provides database and templating tools. It is both componentized and extensible, meaning that you can use certain parts of it (like the CSS parser) in isolation from the rest, and you can add your own extensions to QueryPath. In coming weeks, I will probably post a great deal about QueryPath here.

Related websites: