My name is Daniel Weinreb. My resume briefly goes:
1/20-06 ITA Software, Inc.
Title: "Hacker" I am working on building a new airline reservation system. The initial customer will be Air Canada. I'm working on the "core" part of the "server" part. The server is written in Common Lisp.10/20/02 - 1/20/06 BEA Systems, Inc.
Title: "Technical Director" BEA Systems makes infrastucture software; its best-known product, the WebLogic Server, is a J2EE (Java 2 Enterprise Edition) application server. I am the "Platform OA&M Architect". "OA&M" means operations, administration, and management.7/1/02 - 9/3/02 Smartleaf, Inc.
Title: "Lead Architect" Smartleaf does financial portfolio management and optimization, to be used as part of an integrated wealth management system that is particularly useful for managing large numbers of individually/separately managed accounts. I was hired on a three-month trial basis; if they liked me, I'd become Chief Technology Officer. The president, Jerry Michael, fired me after two months for reasons that remain unclear.8/1/88 - 7/1/02 Object Design Inc, later renamed eXcelon Corp.
Title: "Distinguished Engineer", co-founder Participated in team that designed and developed and maintained the ObjectStore object-oriented DBMS, then and now the best-selling OODBMS worldwide. ObjectStore is written in C++ and was originally designed to be used from C++; it can also be used from Java and Microsoft ActiveX. Co-holder (with Sam Haradhvala) of the company's only patent (5,649,139) issued 7/15/97 (don't worry, it's pretty narrow, and since Rel 6.0 ObjectStore doesn't even do half the stuff that's in the patent). I then participated in a team that designed, developed, and maintained "PSE Pro for Java" (Personal Storage Engine), a low-end single-user language-transparent Java DBMS with real atomicity, consistency, and durability (but no isolation, it's single-user), with a very small runtime footprint. I then went back to ObjectStore for a year, writing a fancy asynchronous B-tree in support of Dave Moon's extensive revisions of the ObjectStore server for Rel 6.0 (Houdini). For my last few years I participated in a team that designed, etc, etc what was originally called the "Business-to-Business Integration Server" and later the "Business Process Manager", written in Java, a product sort of competing with Microsoft BizTalk Server and IBM's Process Integrator and BEA's one and HP's one, which sort of made it hard to sell despite its technical virtues. However, since then, eXcelon has been bought by Progress Software, and I'm happy to see that they intend to continue to develop and market this product. I am very hopeful that Progress will do a better job of marketing than eXcelon did and I wish my friends who are now at Progress the best of luck.2/1/81 - 8/1/88 Symbolics, Inc.
Title: "Technical Director", co-founder We licensed the Lisp Machine technology from MIT. (Please note that the decision that the technology should be proprietary was made by MIT, not Symbollcs. Symbolics paid substantial royalties to MIT.) We marketed our hardware and software principally to ArtificialIntelligence researchers and practitioners. I was sometimes an individual-contributor software developer, and sometimes a manager (Director of System Software); I turned out to be better at the former than the latter. I worked on so many aspects of the software that it would be tedious to try to list them here. Participated in the design of Common Lisp (one of the five main codifiers, I was one of the co-authors of "Common Lisp: The Language", with Guy Steele, Richard Gabriel, David Moon, and Scott Fahlman). Led a team that designed and developed a first-generation object-oriented DBMS called Statice (with Dan Gerson, Charlie Lamb, Neal Feinberg, and Sonya Keene), which was ready to ship (Rel 1.0) when Charlie and I left, with Sam Haradhvala, to go join in co-founding Object Design.8/1/80 - 2/1/81 MIT Artificial Intelligence Lab
Wrote the "Lisp Machine Manual" and several other pieces of technical documentation, particularly the Flavors object-oriented language extension to Lisp; did various software development on the Lisp Machine.2/15/79 - 8/1/80 Lawrence Livermore National Labs
Member of O Group, run by Lowell Wood. Designed, developed, and began to implement paging, virtual memory, segmentation, and file system for the Amber timesharing system for the S-1 Mark II supercomputer then being developed at Livermore.2/15/76 - 2/15/79 MIT Artificial Intelligence Lab
Undergraduate Research Opportunties Program Hired by and supervised by Richard Greenblatt, mentored primarily by David Moon, also TK, GJS, RMS, GLS, KLH. I mainly did system programming for the Lab's Lisp Machine project. I wrote an Emacs (CategoryEmacs) called EINE/ZWEI/Zmacs, the second Emacs ever written, entirely in Lisp. I also wrote a debugger, a local-area network control program, and various utilities, all in Lisp, all of which were implemented, debugged, optimized, and used by real users for years.I learned to program computers when I was 13 years old (1972) using a Model 33 teletype connected to DTSS (Dartmouth Time Sharing System).
Recently (October 2000) I have read KentBeck's "Extreme Programming Explained" and have gotten very interested in the topic. My group at eXcelon looked into the practices of Extreme Programming and considered what we might do along those lines. While researching XP on the web I came across this Wiki site. Our group adopted XP practices to certain extents and were extremely pleased with the results.
Recently (Fall 2002) I was on the Program Committee of the second Lightweight Languages Workshop given at MIT (see ll2.ai.mit.edu for more info). This was a lot of fun and, in my humble opinion, a great success.
For trivia fans, it has come to light that Dan is "the MIT guy" in WorseIsBetter. The New Jersey Guy is BillJoy. (Source: http://www.ai.mit.edu/~gregs/ll1-discuss-archive-html/msg01821.html)
I had always recognized the other guy as Bill Joy, that was clear, but that the other participant was you/Dan I hadn't figured out. What was the context of the conversation? A conference or something?
No, we were just talking, with nobody else present, in the U.C. Berkeley computer science building. I had recently been studying the ITS timesharing system, and one of the most interesting things was the PCLSR concept (see http://www.linearity.org/bawden/ftp/pclsr.memo.gz). I was wondering how the new Unix operating system dealt with these issues, so I asked Bill Joy, after some back-and-forth to explain what I was asking. The answer was that for "short" waits you just can't PCSLR, and for "long" waits, you return from the system call with a stupid error code. I have since come around to the opinion that this is not nearly as evil as I had originally thought, particularly since direct access to system calls is usually hidden by a library these days.
Dan sadly passed away on September 7th, 2012.