Archive for the ‘books’ Category

Phantastes by George MacDonald

Wednesday, June 20th, 2007


Tim Barnes: read this book (You’ll love it).

This book is awesome. I give it a 4 of 5. It’s a journey where one man goes seeking to gain glory, but learns it is more desire-able to discard your flaws, and that only by rejecting your flaws will you ever earn glory.

It kind of reminds me of a quote that we read in men’s group about asceticism, but I can’t remember it now…

Now, the book is not at all spiritual and preachy. It is a subtly allegorical fairy tale. It is a story about a man who journeys into “fairy land” (no, not San Fransisco, think of the old meaning of fairy…) and has all of these adventures and pines after maidens, converses with knights, battles with demons and giants, and is haunted by his own shadow (who finds him early in the book when he heeds not a warning and opens the door to the land of twilight). The book reads like a dream, moving fluidly (and sometimes confusedly) from place to place and never returning to whence it came. Plus he writes in a modern old-english style (it was written in the middle 1800s after all) that makes you wont to wax poetic in your writings for days to come.

Though shouldest readeth it directly! Make straightway to yon bookstore, so that thine may graspeth it in thine hands, and tarry over it ever and anon! Or shouldest though so desire, thine may readest betwixt it’s fair pages upon the “google” which doth rule the globe…

Oh, and in case you didn’t know, this was an author who inspired both J.R.R. Tolkien and C.S. Lewis, and you can definitely tell.

Posted in books | No Comments »

The Hacker Ethic

Thursday, April 19th, 2007

I took this book off of my reading list.

I started to read it (read the intro, and then maybe two chapters). Linus Torvalds intro was entertaining. The author was just dry and really “academic”. It wasn’t really about computers so much as just “work ethic” and the difference between hackers and other people. Maybe I’m just burnt out on hacker theory for the moment… I might return to it someday, but I don’t really recommend it at all.

Now on to “Dealers of Lightning”…

The Cathedral and the Bazaar

Thursday, April 19th, 2007

This book was awesome. I give it 5 of 5.

Two years ago I stumbled upon a little essay entitled “How to Become a Hacker“. I was enthralled.

I’ll be honest and say that I read that essay hoping to learn how to become a cracker. I had booted my company laptop, let it go to sleep, and then closed the lid and forgot about it for a few months, and when I came back could not remember the password. It would not let me reinstall windows, it would not let me install linux, I could not format the hard drive, it was LOCKED.

I got pissed. Here I was, a “geek”, and I couldn’t get around a stupid M$ password??? Couldn’t all the awesome computer people on tv and movies slice through passwords like warm butter? Where could I learn to control my computer instead of letting my computer control me? I was sick and tired of being told what I could and couldn’t do, and how I could do it by my computer. I should be ordering it around. I should be the master of my machine.

So I went to Google and entered the words that would change my life: “How to be a hacker”.

I clicked on the first thing that came up on the screen, and spent the next few hours reading and re-reading the essay. I had found what I wanted to do. I wanted to be a hacker. Not a cracker, (I didn’t even care about the stupid laptop anymore, and in fact, I think it got tossed after no one could crack it) no, I wanted to be a hacker.

hacker emblemSo away I went to learn. Almost immediately I talked with one of my teachers (Andy Harris) about what I had read. His response was something along the lines of “Some random guy on the internet can’t tell you how to be a hacker, or even what a hacker is. You have to find that for yourself.” or something like that. I think what he meant was, “You can’t just learn a few languages, and then expect to be called a hacker” (which wasn’t what the essay was saying, but I must have explained it really poorly. I think his main beef was with the hacker emblem for some reason). But still, I liked the whole concept, and so I signed up for the CS certificate (it was too late to switch to the bachelors).

I had a lot going on in my life, and almost completely forgot about the essay in my obsessive grind to hackerdom. To start I honed my HTML skills, and soon got a job as a PHP programmer for IUPUI. Then I got a job programming Java. Time went by and I forgot more and more about the essay.

Then, one day I picked up “The Cathedral and the Bazaar” in Half Price Books. I had just finished “Dreaming in Code” (which I just now realized I forgot to review. It’s worth the read, but fizzles towards the end) and I recognized the title (of The Cathedra and the Bazaar) from references Scott Rosenberg (Dreaming in Code) had made to it throughout the book. It looked interesting so I thought I’d check it out.

It was awesome. It reminded me of something I had read what seemed like ‘a long time ago, in a galaxy far far away’ before I became serious about being a “Computer Scientist” (as I had come to call it). Then I came to the end of the book, and saw that ‘Appendix A’ was entitled “How to Become a Hacker”. Wait a minute… I’ve read that before…

So I read it again. This time with the knowledge that it wasn’t written by “some random guy on the internet” as my teacher had put it, but by someone almost as well known (in the hacker community) as Linus Torvalds. Sweet.

It was almost exactly two years ago that I read the essay for the first time, although it seems like at least five years have gone by.

On the coding requirement part of it, I now know two languages decently well (PHP and Java), which leaves me with Python (I was ’supposed’ to learn that first, but didn’t, should be a breeze at this point), C/C++, and Lisp (I get the impression that PHP has replaced Perl). I’m thrilled at the prospect at learning these languages over the next few years.

I am also psyched about joining/starting an OS project now that I have something substantial to contribute. I’m either going to make an OS Python version of my (incomplete) Flash TD game, or I’m going to join the Chandler project. Knowing me, I’ll do both.

Now, back to the book.

It answers tons of questions about Open Source that I have had (Like: ‘How do you make money if you give everything away?’). It is a great read, and actually fun at some parts (like when the author tells about the time he led a march on Microsoft dressed as Obi-won with a giant penguin behind him that shouted the words “Let the source be with you!”). It describes the differences between developing closed source projects (the cathedral) and open source projects (the bazaar) and why closed source takes way longer, and has fewer features most of the time. You can read most of the book on the author’s website since it is just a bunch of continually updated essays.

The more I learn about hackers and OS, the more I see parallels between Lord of the Rings and the history of computers. Microsoft reminds me a lot of Morgath, who wanted to bend and hoard all of creation to himself rather than create and share creation cooperatively like the other Valar.

For clarification, in case I didn’t make it clear, a hacker is not a criminal. Hackers make things, crackers break them. When the media refers to “hackers hacking into government databases” or stuff like that, what they mean is “crackers cracking into government databases”. Crackers love to call themselves hackers, but they are not. The term hacker was invented back in the 1970s (I think) by computer experts who wanted to give themselves a label, and then misappropriated by the media in the late 80s early 90s…

Why I love Python already

Sunday, April 15th, 2007

I just began learning Python.

I bought “Python Programming, Second Edition” brand new at Half Price Books for $14.98 and I am on page 12, but already I love it.

Why? The “interactive window”. It’s like a scratch pad where you can test a line of code out. With Java, if you want to test out a little chunk of code, you have to create a new document, write the code, save it, compile it, run it. Then while you are refining it, every little change requires a new save compile run. Tedious. With Python (it appears) you can just jot it out, and hit enter and it will run it right there in front of you.

Now, this could prove to just be a little useless “wow, cool!” in the long run, but at first glance, it’s unique, and pretty sweet.

People Of The Lie

Sunday, April 15th, 2007


Finished this book a few days ago. It was pretty interesting. A good read, especially for anyone who “doesn’t believe in evil”.

He explores varying levels of evil, from people who are “on their way” to becoming evil, individuals who are themselves evil, married people who are together evil, to group evil. All of the stories in the book are based upon real patients the author had in his clinic throughout his life. This makes the book all the more fascinating, since it is true.

He postulates that the mother of evil is narcissism (pride) and laziness. Evil people refuse to believe there is anything wrong with themselves, and they also do not truly “see” other people as even being real people. The entire world revolves around them, and they have no real category of another persons feelings/wants/needs as even being valid. It also explores why it is that often you will find evil people as avid church-goers and even preachers. Evil people have no true love for anyone else, and as they are so narcissistic they don’t really even understand the concept of love.

It begins with an obsessive compulsive man who attempts to make a “pact with the devil” to rid himself of his compulsions. This man was on his way to becoming “evil”, as he was willing to cause the death of his son to rid himself of his own flaws.

It moves on to children whose parents are evil. One whose parents gave him the very gun his brother used to commit suicide as a Christmas present. These parents do not see their children (or even eachother) as being people, and have no real love or care for them.

It then explores a grown child whose parents are evil who are on their way to becoming evil themselves. They are enveloped in their own reality, and use others to fill empty holes in their life, but have no real care for them, they are simply disposable tools to fill their needs.

Then it explores the case of a woman who is evil, but seeks therapy. She was so imersed in her own world that she remade the entire world in her image in her mind. It became quickly apparent that the only reason she came to therapy week after week was in an attempt to seduce Dr. Peck (which she never succeeded at).

Finally it explores group evil in the Vietnam war and America in general. This was a point in which I had to grit my teeth a few times, since this guy is a liberal, and I am conservative. We disagreed on a few points, but as it was only one rather short chapter, it did not “ruin” the book, and he actually did have some valid points.

All in all, this book wasn’t as dramatically engaging as “Glimpses of the Devil” was, but it is still a fascinating read. I found his first book “The Road Less Traveled” at half price books for $1 today, and am looking forward to reading it. I think it focuses more on being good than examining evil…

Glimpses of the Devil

Monday, April 9th, 2007

Just finished “Glimpses of the Devil” over the weekend. It is about a Christian Pyschiatrist who at the beginning is 95% sure the Devil does not exist, but by the end succeeds in performing not one, but two exorcisms, of what he believed to be satan itself.

Do I believe what he wrote? I believe that he did not lie in anything that he said, whether he is right or wrong, I believe him to be truthful. However, I’m not sure I believe him to be completely ‘correct’ about all of it either, as no human can ever be 100% correct about anything as complex as this.

Do I believe he performed two exorcisms in which the subject was indeed possessed? You betcha. However, I’m not sure I believe them to have been possessed by THE devil. It seemed to me they were possessed rather by lesser demons (albeit, very powerful ones).

******************SPOILERS (kind of)*******************
There are two cases in this book. The first is a successful, somewhat well executed exorcism of a young girl who was possessed by 5 demons (the last of which being a demon who claimed to be ‘jesus’ whom Peck identifies as ‘the ati-christ’ as well as simultaneously being ’satan’).

The second was an exorcism full of mistakes, which ultimately was too much for Peck, and while it does succeed, it only lasts for 21 days, after which the girl is repossessed, and eventually dies. Oops. He regrets ever having attempted this one.
******************END SPOILERS**********************

It’s very well written and engaging.

It always amazes me when people will believe in God, possibly even believe in angels, but absolutely refuse to believe in the devil. I have no clue how they can justify that. Many people who do not believe in the devil simply say he is a metaphor for evil, and evil tendencies for humans. They justify Jesus’ supposed “exorcisms” as simply healing some sort of mental illness (like epilepsy). But how could the healing of a mental illness be the cause of an entire herd of swine killing themselves? What, did Jesus “cast the mental illness out of the men and into the swine, which then caused them to kill themselves by drowning themselves”? That doesn’t even really make sense. If that were the case, why hadn’t the men drowned themselves? And if it were cast out of the one and into the other, then it was indeed something and not just a glitch in their neuro-pathways. So now you are just accepting “mental illnesses” as being some sort of spirit all on it’s own rather than a glitch, and you are in essence believing in demons and just calling them something else.

It is also very clear that you can’t just be walking down the street and “OH NO!” Out jumps a demon and, “oh crap I’m possessed”. It takes a long time of cooperating with the demonic to result in possession. Your body is a shell, and your soul as residing in that shell (with room to spare). Cooperating with the demonic is slowly opening little holes in the shell through which they can come into the shell, and slowly over very very long periods of time and cooperation on your part utterly replace you in that shell (eventually leaving nothing of you in it at all).

Another interesting point is that the exorcist really doesn’t do a whole lot towards exercising the demon. Rather, what the exorcist does is to bring the possessed to the place where they are able to choose to cast the demon out of themselves. In the end no matter what the exorcist does, the demon will never leave unless the person decides to stop cooperating with and to reject the demon.

On an interesting aside, part of the Orthodox rite of baptism is an exorcism. You, along with the church, reject satan (or if you are an infant, the church just does it for you). This is not to say that that is the purpose of the baptism, just that it is a result of the baptism. If you were possessed, but for some reason willingly sought baptism and took an active cognizant role in your baptism, your demon would be expelled as a result of that, since no demon could live in you while you were indwelt by the Holy Spirit which is what baptism is all about.

Man is God cool… He’s like, ‘Hey guys, want me to live inside you? Yeah, I know I’m like GOD and all, but I just love you THAT MUCH that I want to be a part of you, while still allowing you to have full control and free will over yourself.’ Essentially our bodies are a car and God asks to get in the passenger seat. But if we are smart, we’ll let him hold the map and guide us. Because what truly bad thing could happen while God was co-piloting (Even if we may have to drive through hell and back to get where we are going)? Sorry, I know this is a very overly simplistic metaphor, but it was too fun to resist making…

I guess the whole point is that there is a passenger seat next to your soul, and if you don’t fill it with God, something else might just hop on in if you let it…

The Joel Test

Wednesday, April 4th, 2007


So I’m reading this awesome book, “Dreaming In Code” (Scott Rosenberg). I’m about 3/4 the way done with it now, and it is fascinating. I would highly recommend it.

On page 257 there is a list of 12 questions asked by software “expert” Joel Spolsky to act as a quick and dirty test to determine if a development organization has it’s act together.

The questions are:

1. Do you use source control?
2. Can you make a build in one step?
3. Do you make daily builds?
4. Do you have a bug database?
5. Do you fix bugs before writing new code?
6. Do you have an up-to-date schedule?
7. Do you have a spec?
8. Do programmers have quiet working conditions?
9. Do you use the best tools money can buy?
10. Do you have testers?
11. Do new candidates write code during their interview?
12. Do you do hallway usability testing?

A score of 12 is perfect, 11 is tolerable, 10 or lower and you’ve got serious problems. Most organizations are running with a score of 2 or 3. Microsoft runs at 12 full time.

Now, when I read that I was kind of shocked. My Bachelors degree was indeed worth something. I guess I didn’t really realize how much I had actually learned at college until I read that short bit right there.

In the past year since I started at PSI, I have almost single handedly took our company from fulfilling… well… basically none of these requirements, to fulfilling nine of them. With the remaining 3 being either irrelevant or unfeasible (9, 10 and 11). Well, I guess we do fulfill 9 because I brought in my home computer until they buy me a really good one. I am the sole full-time developer and we don’t have money/need for hiring testers so my wife and brother fill that role. We don’t hire new people, so there is no reason to have them write code during hiring.

Now admittedly, we could do better in several of these areas. For instance, #4 is kind of only halfway fulfilled. We do have a bug database, but it doesn’t really get used all that much because I fix most bugs as soon as I find them, and the rest get put on a “to do” list that I pin to my cubicle wall. We do use Bugzilla, but the server that hosts it is down for the next week. Once it gets back up we will begin to use more regularly.

Number 8 is debatable. I have sound-canceling headphones that I pipe music into my brain through all day long. But I am betting that what he means by that is that programmers don’t have to also function as tech support for inept computer users around the office who CONSTANTLY manage to screw up their machines even though they only use WORD AND EXCEL!!!!!! I got interrupted two times today, and one time yesterday for little crisis people around the office where having. So I guess we only mostly fulfill number 8.

I am particularly proud of numbers 1, 2, 3, 6 and 12 though. After our part timer (Jeff) pointed me in the direction of it, I implemented subversion with tortoise (source control management) which has been a life saver on several occasions. I refined our build process from a HORRIBLE 15 minute 8 step monstrosity, down to a 30 second one click deal. No one understood why I was doing it, and people (our part time coder Jeff, and our network admin Mike) complained while I was doing, but it is awesome now that it is done. I learned MS Project, and how to use it so that it accurately tracked time AND duration (our network admin swore up and down it could only do one or the other), and finally I got my managers to read “Don’t Make Me Think” so that they would understand the importance of Usability Testing.

So it was nice to have a little “validation” on what I have been doing here, and really cool to step back and see how far I have come since I started. If I were to add one more thing to this guy’s list it would be: 13. documentation. I think documentation is very important and I have probably made more advances in that area than any other since I started. When I got here there was almost no documentation to speak of whatsoever. Now everything is documented fairly well (although it could definitely be better).

This makes me happy.