Hacker News new | past | comments | ask | show | jobs | submit login
SICP in ePub format on Github (github.com/ieure)
157 points by logic on April 7, 2011 | hide | past | favorite | 32 comments



Funny coincidence!

I started doing something similar a couple weeks back -- trying to recreate the SICP LaTeX files so that I could generate my own beautiful PDFs, instead of using the slightly wonky HTML edition.

I even sent an email to Hal Abelson asking after the original TeX files, figuring it was a shot in the dark. I was blown away when he sent me a response... in less than an hour! He told me that he didn't think they even had a copy of it anymore, and that he didn't think it would be very useful in any case, but it was still really cool to get an email from a programming legend who has touched so many lives.

Too bad I forgot to ask for an autograph! ;)


When I got really in to LaTeX some time back, I manually typeset a 220 page programming book from an HTML edition available for free on the web.

It took me about 100 hours to do. SICP is about twice as long, so I'd guess manually typesetting it should take about 200 hours.


The biggest problem for me is not the actual text, but the graphics, it would be great to convert them to some vector and MathML format


I just took a browse through my copy of SICP and see that the graphics are just diagrams. Crisp and clear diagrams.

They are perfect for conversion to vector format using Inkscape's "Trace Bitmap" feature. Doing this should take you less than a minute per diagram.


I wonder what format MIT Press has the book in - if it's a ps file or similar it should be possible to at least convert that into a PDF that looks exactly like the printed book.


True that would make it easy to produce a PDF but ePub is more flexible (and enjoyable) on the iPad than a PDF. Which is why the original author (from GitHub) created it.


Also, in case anyone hasn't seen it, here's the MIT URL with the HTML edition (along with sample assignments, instructors' manual, etc):

http://mitpress.mit.edu/sicp/


This is what I started from to create the ePub. If you look all the way back in the repo history, the first commit is a mirror of those files.


It's probably worth running the HTML through tidy to get cleaner XHTML and then spending a little while trying to get http://code.google.com/p/epubcheck/ to be a bit happier. In general, EPUBs that "pass" epubcheck have a better chance of working interoperably in a lot of EPUB readers.


There's also a Texinfo version:

http://www.neilvandyke.org/sicp-texi/

It's really useful if you want to work the exercises in emacs alongside the text.


of which I make a .SlackBuild available @ https://github.com/cycojesus/slackbuilds/tree/master/doc/sic...


There's Scheme environment for iPad

http://itunes.apple.com/us/app/pixie-scheme-iii/id401023057?...

Doing SICP exercise's on iPad could be actually a fun combo to try and see how well tablets work for programming.


Quick links for others who may not know what "SICP" is:

Structure and Interpretation of Computer Programs, Second Edition

http://mitpress.mit.edu/sicp/

http://en.wikipedia.org/wiki/Structure_and_Interpretation_of...


I found this one the other day: SICP in Clojure (https://github.com/deobald/sicp-clojure). It's sadly not done, but looks promising.


I pointed this out in another SICP thread, but it's worth restating for anyone who might be interested in Clojure but not want to invest in Scheme for SICP: The subset of Scheme that SICP uses is so small and simple, it doesn't take much effort to use that to do the exercises in the books. Doing everything in Clojure would likely distract from the core concepts, many of which are related to Clojure's philosophies.

I would be sad if anyone waited for one of these SICP-in-Clojure projects to be finished before even starting to read SICP.


Kindle(mobi) format anyone ?


There's a free, official tool to convert EPUB into Kindle-optimized MOBI format.

http://www.amazon.com/gp/feature.html?ie=UTF8&docId=1000...



It looks great; thank you! It will be nice to be able to put this on my Kindle and have it next to my MacBook as I work through examples. Flipping between the book and dev environment on a laptop screen is not as good.


Use calibre (http://calibre-ebook.com/) to convert epub to mobi.


Calibre is amazing for text only fiction book. It's completely useless for books with tables,graphs,equations...


Here's a .mobi version converted with calibre: http://db.tt/oUWW03o


Calibre's nice but it always messes up the formatting / paragraphing even for text-only files


Would be interested in getting this into my kindle app on my android phone, too. Found some instructions about converting to mobi format, but not sure how to sync to Android Kindle then.


> not sure how to sync to Android Kindle

Here's how I did it.

I connected my Android phone to my Ubuntu PC using the USB cable. The phone's SD card was mounted as /media/XXXX-XXXX folder, which has a kindle subfolder. I copied sicp.mobi to the folder. That's it.


Aldiko (http://www.aldiko.com) is a great Android ebook viewer for epub, pdf, etc.


FBReader (http://www.fbreader.org/) is an open source ebook viewer for Android with wider format support (though it doesn't do PDF), greater configurability and a somewhat more no-nonsense UI approach. A particular highlight is the brilliant integration with ColorDict and other dictionary apps.


A little off topic: What's a good way to convert epub (or other ebook format) into HTML? Not all in one page like pdftohtml does but as tree nodes and a table of contents and all that.


Slightly off topic but I do not want to post another Ask HN question: what implementation of Scheme would you guys recommend/use? Working smoothly would emacs would be appreciated


MIT Scheme (http://www.gnu.org/software/mit-scheme/) includes a version of EMACS that runs in the same Scheme address space and is therefore well integrated. It's entirely sufficient for doing SICP.


Further update: 6.184 is being taught by the best of the last batch of 6.001 TAs, some of whom taught it 6 or 7 times. Their recommendation of Racket is therefore likely to be well informed.





Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: