posted on 2008-06-30 03:34:06
So, where the hell have I been? I mean, I haven't posted in almost two weeks? What's worse is that I've promised posts on education, governance, my attempt to nail down my own philosophical views and more programming stuff. All of them are at different stages of completion.
The fact that nothing has made it's way up here makes me feel lazy though and the fact is I've been working quite hard but on different things. As I've noted here, the real world does suck it out of you. Part of that is that my job of late has drained me rather than energized me. I'm looking to rectify that. Thankfully the 4th of July is coming up. Those long weekends are always nice.
Things are about the same at the house as they have been. I feel like I'm learning a decent amount by being on my own though and I'm constantly reminded of how wonderful the people in my life are and how much I love them. Hopefully, I'll get more time to work hard, be productive and be incredible in my own right.
Also, Wall-e is fantastic and one of the best movies I've seen in a long time. It's just beautiful so go see it. Remember to love.
posted on 2008-06-19 03:36:05
Things have been really crazy lately. I've been trying to do so much and it really is hard. The real world finds ways to eat most of the time you have. It makes you small. It's gotten to the point where it's hard to find time to do anything other than maintain a few precious friendships and keep the bills paid and the house clean.
That said, I'm trying to push forward. I've gotten in touch with some professors at Northeastern University where I'd very much like to study Computer Science in Fall of 2010, ideally. I also wrote code today for the first time in three weeks. It's hard to find the time, man!
More immediately I'm looking for a new job and have an interview tomorrow morning. For a variety of reasons I'm just not pleased with my current job and I think I can grow more and be happier elsewhere. Cross your fingers for me.
Finally,
Jonathan Zittrain was on
The Colbert Report tonight talking about his book,
The Future of the Internet and How to Stop It. I heard about it in advance and was very excited to see him speak. Unfortunately, I feel that he really botched the interview and I got into a long discussion with Ben about it. I'm pretty disappointed because there are important political issues about technology but they're rarely communicated to the public coherently and concisely and I'm no good at it myself.
I'll probably try to think of a good way to present it and give a fuller update in the next few days though. If I don't get bogged down with the promised education post or the emerging philosophy post or the big easy posts that is. Or hell, SICP 2.1. Yeah, right.
posted on 2008-06-09 18:52:59
In the style of my former post on a
Math Undergraduate Education, this post proposes a list of texts suitable for a rigorous and well-rounded foundation in Undergraduate Computer Science. A future post will cover the philosophical details and practical implementation of such an approach.
This list skews towards theory rather than practicality (or Computer Science as opposed to Programming, if you prefer) but tries to maintain a suitable balance. Consequently, outside study of particular languages (e.g. ruby, php, html, css, javascript, erlang or haskell, python or lua) is assumed. It is advised to work on practical projects (setting up source code repositories and servers, open source software contribution, web development, etc) as applicable since these subjects are covered at best loosely during the course of study.
This list of 24 texts costs about 900 dollars when bought used off of Amazon.com. Click on the book's title to get forwarded to it's Amazon.com page. The ordering of the list loosely conforms to increasing difficulty but it is not a recommendation as to structure. I will probably delve into those details in the aforementioned future post.
How To Design Programs by Matthias Felleisen, Matthew Flatt, Robert Findler and Shriram KrishnamurthiStructure and Interpretation of Computer Programs by Harold Abelson and Gerald SussmanParadigms of Artificial Intelligence Programming by Peter NorvigAlgorithms by Sanjoy Dasgupta, Christos Papadimitriou and Umesh VaziraniIntroduction to Algorithms by Thomas Cormen, Charles Leiserson, Ronald Rivest and Clifford SteinComputer Networks by Andrew TanenbaumProgramming Language Pragmatics by Michael ScottComputer Organization and Design by David Patterson and John HennessyIntroduction to Computing Systems by Yale Patt and Sanjay PatelOperating System Concepts by Abraham Silberschatz, Greg Gagne and Peter GalvinOperating Systems: Design and Implementation by Andrew Tanenbaum and Albert WoodhullThe Humane Interface by Jef RaskinCode Complete by Steve McConnellReal-Time Rendering by Tomas M'OllerArtificial Intelligence by Stuart Russell and Peter NorvigIntroduction to the Theory of Computation by Michael SipserModern Cryptography: Theory and Practice by Wenbo MaoHacker's Delight by Henry WarrenPurely Functional Data Structures by Chris OkasakiCompilers: Principles, Techniques, and Tools by Alfred Aho, Monica Lam, Ravi Sethi and Jeffrey UllmanLisp In Small Pieces by Christian QueinnecProgramming Languages: Application and Interpretation by Sriram KrishnamurthiTypes and Programming Languages by Benjamin PierceConcepts, Techniques, and Models of Computer Programming by Peter Van Roy and Seif HaridiThere are a few caveats to this list that should be noted.
1) As mentioned it does not presume to teach language-specific or platform-specific knowledge. It is slanted towards theory and books on how to write C or HTML, do Linux Kernel Development or learn the Win32 API, or work with OpenGL or TCP/IP should be purchased separately.
2) Since it does not deal heavily with specific languages, it does not make any prescriptions about what languages one should know. Generally, I believe it's good to know a language which epitomizes each of the major programming paradigms whether these paradigms are valid or not (as Krishnamurthi posits in PLAI). This means at least one OO language, one stack-based language, one functional language, and one logic/constraint language. I'd recommend Smalltalk for Object Orientation, Forth for a stack language, Erlang or Haskell for a functional language, and Prolog for a constraint language. Beyond that it would probably be reasonable to learn C as a good representation of the von Neumann architecture and "for culture" and hypothetically python, perl, or ruby to learn a web/glue/scripting language.
3) The list could certainly be shorter. It leans towards functional programming, lisp, and programming languages due to my own personal interests and some material could be omitted from those areas correspondingly. Notably, Distributed Systems and Databases are conspicuous absences from my list. This is because I have yet to find any sort of consensus about quality books on either subject. I'm not interested in Databases but I'm certainly interested in Distributed Systems. Computer Networks is about as close as this list gets.
The beauty of this list, if there is one, is that the basis is strong enough that one could jump off in any direction after it's completion. If you were interested in video games get more books on rendering and physics, if you're interested in cryptography and security get more books on that, etc, but the foundation should be strong enough for any direction you'd like to go in. This list may get updated in the future. It's far from perfect but it does seem to me like a pretty reasonable place to start.
posted on 2008-06-09 14:22:25
I haven't posted, read or written much poetry in a while. I've been focused on other things and while I'm happy about how I've chosen to focus my energies I miss poetry. With that in mind, I stumbled across a Rilke poem this morning
thanks to Tim O'Reilly and decided to reproduce it here.
Archaic Torso of Apollo
We have no idea what his fantastic head
was like, where the eyeballs were slowly swelling. But
his body now is glowing like a lamp
whose inner eyes, only turned down a little,
hold their flame, shine. If there weren't light, the curve
of the breast wouldn't blind you, and in the swerve
of the thighs a smile wouldn't keep on going
toward the place where the seeds are.
If there weren't light, this stone would look cut off
where it drops so clearly from the shoulders,
its skin wouldn't gleam like the fur of a wild animal,
and the body wouldn't send out light from every edge
as a star does...for there is no place at all
that isn't looking at you. You must change your life.
posted on 2008-06-04 19:36:53
Well, I've been talking about doing this for a while but I'm just now getting the time to sit down and do it. For reasons of security, this will not be a full photo tour of the house. Only a few photos of the interior and exterior. If you want to
know where I live (the address to drop by or what have you), do feel free to ask. Particularly, It's easier to get me to tell you if I already know you somehow.
So, living in the house is really nice. I like my roommates, I like the location, I like the price, I like the Static IP from my ISP that keeps this website up. I'm in the basement of the house and I think that's awesome. One reason is that it stays pretty cold down there and I like it relatively cold. Another is that the downstairs is just a bedroom, bathroom, and a combination kitchen/living room with a washer/dryer room off to the side. I think of it almost like a studio apartment separate from the upstairs and that's perfect for me. We also have newer appliances than the upstairs folks. The biggest problem is just keeping it clean, mostly because my roommate Ben has some...deficiencies when it comes to taking care of himself (cooking + cleaning, frankly). I knew that from rooming with him at Oglethorpe though so it hasn't been a surprise. Any messiness in these photos beyond the floors needing to be mopped I attribute to him. :-)
Beyond here there be dragons...or something like that. Click for the photo tour.
posted on 2008-06-03 18:06:47
If (hierarchy ==
) { //then...
;}
I actually like my job a good deal. I've been meaning to post this for a while though. I just felt like you could do conditional statements with the
gapingvoid comics. It's frightening stuff and I've never been quite sure what to make of it.
This blog covers 2015, Books, Butler, C, Dad, Discrete Math, Displays, Education, Erlang, Essay, Gaming, Gapingvoid, HTDP, Hardware, IP Law, LISP, Lecture, Lessig, Linkpost, Linux, Lists, MPAA, Milosz, Music, Neruda, Open Source, Operating Systems, Personal, Pics, Poetry, Programming, Programming Languages, Project Euler, Quotes, Reddit, SICP, Self-Learning, Uncategorized, Webcomic, XKCD, Xmas, \"Real World\", adulthood, apple, career, careers, choices, clones, coleslaw, consumption, creation, emulation, fqa, games, goals, haltandcatchfire, heroes, injustice, ironyard, linux, lisp, lists, math, melee, metapost, milosz, music, pandemic, personal, poetry, productivity, professional, programming, ragequit, recreation, reflection, research, rip, strangeloop, vacation, work, year-in-review
View content from 2024-09, 2024-06, 2024-03, 2024-01, 2023-12, 2023-07, 2023-02, 2022-12, 2022-06, 2022-04, 2022-03, 2022-01, 2021-12, 2021-08, 2021-03, 2020-04, 2020-02, 2020-01, 2018-08, 2018-07, 2017-09, 2017-07, 2015-09, 2015-05, 2015-03, 2015-02, 2015-01, 2014-11, 2014-09, 2014-07, 2014-05, 2014-01, 2013-10, 2013-09, 2013-07, 2013-06, 2013-05, 2013-04, 2013-03, 2013-01, 2012-12, 2012-10, 2012-09, 2012-08, 2012-06, 2012-05, 2012-04, 2012-03, 2012-01, 2011-10, 2011-09, 2011-08, 2011-07, 2011-06, 2011-05, 2011-04, 2011-02, 2011-01, 2010-11, 2010-10, 2010-09, 2010-08, 2010-07, 2010-05, 2010-04, 2010-03, 2010-02, 2010-01, 2009-12, 2009-11, 2009-10, 2009-09, 2009-08, 2009-07, 2009-06, 2009-05, 2009-04, 2009-03, 2009-02, 2009-01, 2008-12, 2008-11, 2008-10, 2008-09, 2008-08, 2008-07, 2008-06, 2008-05, 2008-04, 2008-03, 2008-02, 2008-01, 2007-12, 2007-11, 2007-10, 2007-09, 2007-08, 2007-07, 2007-06, 2007-05