Archive for the ‘books’ Category
One of the two parallel tracks in my 2009 Programming Language Plan begins with the Standard ML programming language, so it’s time to get started.
Standard ML Resources
- Standard ML of New Jersey is highly recommended and comes with a REPL.
- Moscow ML
- MLton is a Standard ML compiler with excellent performance. However, as far as I know, it doesn’t have a REPL, which makes it less than ideal for learning.
Since I was unfamiliar with the Standard ML programming language, I was surprised to find there are a number of good books about the language. Following are just some of them:
Other Educational Materials
Programming in Standard ML – excellent online book by Robert Harper of Carnegie Mellon University. Since I don’t know if Standard ML will simply be a stepping stone to Haskell (which in turn may not be a primary language for me) or a language I invest a lot of time in, I’m going to restrict myself from my normal method of purchasing a book or two when learning a new language. Instead, I’ll be going through Harper’s online book initially.
There are a number of great compilers for Standard ML (listed above), but I only need one to get started, so I chose Standard ML of New Jersey despite the funky name. It’s a popular version, and it has a REPL, so it’s good enough for me for now.
I develop software on Mac OSX and deploy on Ubuntu Linux. On my Ubuntu server, installing SML/NJ was as simple as:
sudo apt-get install smlnj
On Mac OSX, there are a couple of options listed on this page. I could use a pre-built system or the generic Unix install, so naturally I chose the generic Unix install which installed easily according to the simple directions.
# Download config.tgz tar xzf config.tgz config/install.sh # Wait for install to complete ~/software/smlnj$ rlwrap bin/sml Standard ML of New Jersey v110.69 [built: Sat May 2 12:04:08 2009] - print "hello, worldn"; hello, world val it = () : unit -
Great, looks like everything is working fine. Note, I use the rlwrap utility to provide a nicer REPL experience, but it’s not required.
I’ll continue with a series of posts with notes from working through “Programming in Standard ML”.
Peter Seibel is working on a book, “Coders at Work”, that will “contain interviews with around sixteen of the most interesting computer programmers alive today”. He has a page that lists 284 programmers, with links to more info on each one, that I think is worth perusing:
Peter is the author of Practical Common Lisp which I highly recommend.
Also see his Google Talk on Common Lisp.
Robert Scoble has created three video interviews with Tom Rolander (and a few other folks) dealing with early PC industry history. Who is Tom Rolander? He’s the guy who was flying with Gary Kildall when IBM came calling. The end of the story is that Microsoft got the OS deal with IBM. The video series fills in some of the blanks 🙂 Aren’t familiar with this story? You should read: Hard Drive
Here’s Peter Seibel’s “Practical Common Lisp” talk at Google (about an hour):
I first noticed the covers of the “Head First” book series from O’Reilly a while ago, and I thought they looked unprofessional and simplistic, so I never really looked into them. Interestingly, I try to be careful about not being biased by nice book covers, but I think I’m more susceptible to dismissing books with “bad” covers.
I researched HTML books recently to help my aesthetically gifted wife get started designing web pages and the Head First HTML with CSS & XHTML title got great reviews on Amazon, so she picked up a copy.
I thought I’d flip through the book, and I ended up reading the entire thing 🙂 I really wish this book was available years ago when I started coding HTML; it’s an incredibly well written tutorial. It has a very unique style which the authors spend quite a few pages explaining:
Based on the latest research in cognitive science, neurobiology, and educational psychology, learning takes a lot more than text on a page. We know what turns your brain on.
After reading the book, I tend to agree with their approach. It was a very fun and informative read. Most of the book was review for me since I’ve spent years learning this stuff the hard way, but there were a handful of excellent points I learned from the book, and I understand a lot of the foundational aspects of XHTML & CSS much better than I did before. Expecting a newbie to get through a typical HTML reference book is unrealistic IMO.
For anyone wanting to learn the basics of (X)HTML & CSS, or would like a good review, I highly recommend this book. I don’t know if the other books in the “Head First” series are as good, but I’ll certainly consider them in the future based on my experience with this one.
UPDATE: I have found one thing to criticize about the book. The index leaves a lot to be desired. This is a particularly grievous deficiency with this book since it is organized as a tutorial as opposed to a reference book.
About five years ago, in an effort to organize my library and be able to share titles of interest with other people, I created a simple XML file to catalog my books. Using an XML file allowed me to easily transform the data to be displayed on a web page, but it was time consuming since I had to type everything in by hand, and over the years it stagnated and I stopped updating it. I recently thought I’d update the file, but before I got around to doing it, a friend of mine (Chip H.), mentioned LibraryThing.com, so I checked it out.
It was incredibly easy to use – just type in the ISBN (or other info such as title), and LibraryThing will grab the rest of the data from Amazon or the Library of Congress. Alternatively, you can buy an inexpensive bar code scanner and scan the bar code on a book to save a little typing. The price is free for 200 books or less, but I found it so useful, I signed up for a lifetime membership for $19. They say the lifetime membership is $25, but when you go to pay you’re given a choice of amounts, so I naturally picked the lowest one.
You can see a partial tag cloud of my books below. I haven’t spent much time tagging, but it will give you somewhat of an idea of the type of books I have. Click on one of the tags to see a list of my books with that tag:
The full tag cloud is: here
You can also rate & review books. I found it fascinating to see which of my books were most/least in common with other people on the site. They have over 170,000 users and 11 million books in the system, so you can get some pretty good statistics. I have 48 titles that no one else on the site has (or possibly wants 🙂 ).
They provide an export capability so you can obtain a tab-delimited text file or csv file, and there are a lot of other features that I haven’t tried out, but just the ability to import book data by typing an ISBN number was enough to get me hooked.
UPDATE: the site is listed as ‘beta’, but I haven’t experienced any issues until today. Andrea just gave me a list of 130 ISBN numbers, so I used the import facility to import them all. It worked fine, and Andrea was able to tag most of the imported books, but I just discovered that the public can’t view any of the imported books. I emailed LT; I’ll be interested in seeing how long it takes them to fix this bug.
As I was typing this update, I was notified of an email response from Tim (the owner) who stated he’d take a look at it tomorrow 🙂
UPDATE: Tim has fixed the problem I had with imported books not being visible. Now there is a minor problem with tags containing & characters. I expect that will be fixed shortly.