
SICP optimized for Kindle - ique
https://github.com/jonathanpatt/sicp-kindle
======
pavpanchekha
I read SICP in high school, and it really changed how I thought about
programming. Before that, the languages I knew were Python, Java, C++. Ooh,
ooh, and TI-BASIC. It seemed to my naive like languages were done. I'd written
a language of my own, and looking at it now, the changes I'd made look so
shallow nowadays...

SICP changed that. SICP didn't talk about classes/objects by introducing the
syntax, it gave a problem where polymorphism was a perfect solution, and built
up an object system from scratch. SICP didn't talk about mutation as just
something you do --- SICP discussed how it solved a specific problem. Not
claiming that SICP is the be-all end-all of textbooks; but if you're motivated
and already know how to program, it is an a brilliant excursion into the
fundamentals of programming. In any case, after SICP I realized that language
theory is a branch of computer science itself; a branch I soon fell in love
with.

There's a continuation to this story --- the summer after high school, I wrote
a compiler and started reading lambda the ultimate. Learned type theory,
started writing Haskell and Common Lisp, and quickly produced several dozen
interpreters... And now I'm doing research under Sussman himself!

And so for this Kindle-optimized SICP, thank you! I'm sure it will get at
least one more young hacker into language theory...

~~~
bluekeybox
> I read SICP in high school

In my alternative life I would have done the same. Good luck to you with your
endeavours.

~~~
WalterGR
_In my alternative life I would have done the same._

I, too, wouldn't have minded getting a head start.

But keep in mind there's less than a year's time between being a senior in
highschool and UCB CS61A, (the former) MIT 6.001, Stanford CS107, etc.

------
roxtar
The sad part about this is that it shows how much Kindle's current PDF
conversion service needs to improve. I have tried sending PDFs to the email
conversion service and more often than not it screws up diagrams, figures and
equations. Even text documents, which you don't need to pass through the
conversion, don't always render well (try transferring any RFC to your Kindle
and see how it comes out).

~~~
obiterdictum
PDF conversion is a difficult problem. To my rudimentary understanding of the
format, PDF documents aren't really plain text, they have no semantic
information, they are just individual glyphs and figures mapped to absolute
coordinates on a fixed-size page. This format is really meant to be as a
portable printer-friendly document format, not ereader-friendly dynamically
resizable format.

I can't comment on the RFC part of your comment.

~~~
Someone
PDF started as a pure (100% ASCII!) page description language, but it later
was transformed to a binary format, and even later, accessibility support made
it easier to retrieve the text from a PDF document (before that, all you would
have were the glyphs. For English text, these often mapped 1:1 to characters,
but they did not need to) and some support for reflowing documents was bolted
on (<http://www.adobe.com/uk/epaper/tips/acr5reflow/>).

Both accessibility and this reflowing do require participation by the creator
of the file, though.

------
Luyt
I did something similar for Project Gutenberg texts: a set of scripts to
download them in bulk, do some textual reformatting and file renaming on them,
all geared toward making them better looking and more accessible for my ebook
reader (which is not a Kindle, but the texts might me more palatable on a
Kindle too...). Without this preprocessing the Gutenberg texts were almost
unreadable on the ebook reader.

I describe it at [http://www.michielovertoom.com/python/gutenberg-ebook-
scrapi...](http://www.michielovertoom.com/python/gutenberg-ebook-scraping/)
and the source is on Github, too.

------
njharman
JIT. After hours, my workmates and I just started watching SICP vids/"taking"
the MIT opencourseware.

[http://ocw.mit.edu/courses/electrical-engineering-and-
comput...](http://ocw.mit.edu/courses/electrical-engineering-and-computer-
science/6-001-structure-and-interpretation-of-computer-programs-spring-2005/)

------
chanux
OK HN, what's the super power you have? This is like the 10th time you
delivered something I wanted in less than 24 hours of just thinking of it.

Thanks a lot.

------
amjith
Any help on how to get this on to the kindle. I've cloned the repo but I'm not
sure how to transfer it to my kindle.

~~~
shedd
It looks like, though, that the sicp.mobi file is from the original repo
(revision date of Jan 10) and the fork that this post points to includes a
series of improvements to the text (revision date of Sept 18) that the .mobi
hasn't been updated to take advantage of. Thus, it looks like the .mobi needs
to be recompiled to include the improvements that @jonathanpatt has committed.
There is also a pull request on the original repo that should likely be
included in any revision, too: <https://github.com/twcamper/sicp-
kindle/pull/5>

------
jaredsohn
Post from six months ago for getting epub version of SICP (with a user's link
to another Kindle version and links to ways to convert epub to mobi)
<http://news.ycombinator.com/item?id=2419516>

~~~
xtracto
I did something similar but for the AI Foundations of Computational Science
(<http://artint.info/html/ArtInt.html>) by scrapping the HTML, stripping the
heading/footer sections and creating an epub book.

Unfortunately my ebook Reader (PRS 950) does not seem to like it as it resets
while loading the ebook. I wish I could share the results but the book is
under CC "no derivatives" license.

------
grigy
I'm reading the Amazon converted version now which is not perfect. Thank you
for this gift.

------
dvdhsu
This is really great. I was thinking about buying a TouchPad for all my
textbooks, but I greatly prefer the e-ink display of the Kindle. With this, I
no longer have an excuse for the TouchPad.

Thanks!

------
marcamillion
Anyone care to do this for Introduction to Algorithms?

Been meaning to read it, but the PDF version on my Kindle is a chore to get
through.

~~~
mncaudill
SICP is under some sort of Creative Commons license but I'm pretty sure Intro
to Algorithms isn't.

------
fanboy123
Thank you to the poster and the author of this document.

Trying to read SICP on the new kindle in PDF format was impossible!

~~~
qohen
A friend tells me that for PDFs, the way to go is a Nook Color, which can be
rooted to run Android, which has a good PDF reader. New it's $250 (which is
what he has), refurbs are available for $180 from Barnes & Noble:

[http://www.barnesandnoble.com/u/certified-pre-owned-
nookcolo...](http://www.barnesandnoble.com/u/certified-pre-owned-
nookcolor/379002680/)

~~~
cema
Or, if you want an eink reader, you could get a PocketBook (probably model 902
or 903; see <http://www.pocketbook-int.com>). From the site:

    
    
      formats: PDF, RTF, FB2, Docx, TXT, 
      HTML, DJVU, CHM, PRC, EPUB, DOC, TCR, 
      including DRM .epub
    

I have just bought it, so far pdf looks good on it. Of course, it has only
been a few days.

------
shuaib
Anyone has any idea if I can load this book onto my Kindle app for iPad?

~~~
shuaib
Ok I just discovered a way to do so. Kindle for iPad/iPhone doesn't allow an
official way of loading your personal documents to be loaded onto your app. So
a nifty trick is to use the iPhoneExplorer app on your Mac and open your
iPad/iPhone in it. Then just drop the .mobi book onto
Apps>Kindle>Library>eBooks. That's it.

~~~
StavrosK
Hmm, I'm fairly sure I loaded books on the Kindle app for the iPad by just
mounting it, the app shows up as a folder. Or maybe that was iBooks...

------
jevinskie
I have an Android tablet. Is the HTML version still my best bet?

~~~
pasbesoin
There's also an epub conversion floating around. It's been mentioned on HN
and, IIRC, is also hosted on Github.

~~~
cycojesus
there: <https://github.com/ieure/sicp>

~~~
pasbesoin
I hadn't noticed the problem with the remaining GIF's to be converted to SVG.
Seems like potrace or similar would make short work of that.

