HNHacker News
TopNewBestAskShowJobs

greggraham

40 karma · joined January 23, 2009

submissionscomments
greggraham··on The MOS 6502 and the Best Layout Guy in the World
I was planning on buying a KIM-1 when my dad surprised me by buying an Apple II. I didn't end up writing anything in assembly on the Apple II, though. My first assembly language was IBM-370 in college. I wish now I had started with the KIM-1, though.
greggraham··on The first serious infowar is now engaged
Exactly! The existence of something like a reliable Internet depends on some form of physical civilization with laws and law enforcement, not to mention food production and distribution required to keep the netizens alive.

Will some aspects of life move from the physical to the virtual? Sure; they have and they will continue to some extent. However, there is a limit. Cyberspace cannot exist without physical space. If you want to ascend into some kind of purely spiritual existence, you need to look elsewhere than technology.

greggraham··on Why Johnny can't code
I learned to program in BASIC on an Apple II, and although it was my entry language, I don't see it as necessary now. The school I work at uses MIT Scratch with the 5th graders, and they love it. I'm teaching Java in a high school computer science elective because that's what is used on the AP Exam, and they're likely to start with in college. I think Python, Ruby, or Lua would be better choices, but Java is good enough.

However, I'm also exposing them to logic circuits, machine language, and assembly so that they have a better understanding of how the computer actually works. I want them to understand the basics of what the compiler and VM are doing so that Java is not completely abstract to them. As experienced developers know, these abstractions have leaks so it's helpful to know what's going on underneath. I see BASIC as a dead-end abstraction. I would rather use assembly to teach a low-level understanding, and then use modern languages at the higher level.

greggraham··on Why do Finland's schools get the best results?
Notice that technology is not a critical part of their success. I didn't see a lot of shots of kids in front of computers, but rather, teachers and students interacting with each other. I work at a private school that has a similar philosophy, which contrasts with the other private schools in the area with which we compete. We're not interested in 1-1 laptop programs because we don't want devices getting in the way of personal relationships. Of the upper tier private schools in the area, we have the highest scores and the lowest tuition, and very good acceptance rates in top colleges. We invest in teachers who are well educated (all at least masters, several PhDs) and are happy (very high retention rate).

I don't mean to boast, but as technology director at this school, I'm always being asked about laptops, SmartBoards, and other cool and popular education technology things that we have decided not to use. I think it's important to carefully consider how technology can best be used, and to know when to stay with low-tech methods that work well.

greggraham··on What are you reading?
I recently read _Cryptonomicon_ after having put it down last year. It was fun, and overall it was definitely worth it. I'm reading his _Snow Crash_ now. It was published in 1992, before the Web, and it predicts a time close to present day. It's interesting to see what he got right, and what he got wrong. It's also a fun read if you are generous with the disbelief suspension.
greggraham··on Gattaca - Hollywood Gets It Exactly Right
Gattaca is a well-done movie in general. My wife liked it, and she prefers art films and usually does not like science fiction.
greggraham··on Ask HN: Best code editor?
I use aquamacs at home on my Macintosh, and GNU emacs on Windows XP at work. I have switched back and forth between emacs and vi/vim over the last 25 years because they are both great editors and have various advantages and disadvantages. I had been using vim back when I was using Ubuntu at home because the fonts looked better on vim than on emacs. Now that I have a Macintosh and can run aquamacs, I switched back to the emacs world. I admit I'm a sucker for pretty text.
greggraham··on How high school students start thinking about code
Old versions of BASIC used LET for assignment, but Microsoft BASIC and other BASICs of that era dropped it as being unnecessary.
greggraham··on How Much Of Life Are You Actually Living?
It doesn't necessarily take any longer to live in the moment. It's a matter of where your mind is focused. In fact, if you are focused on what you are doing, you will likely be more efficient and make fewer mistakes. If the task ends up taking longer, it would only be because you did a better job. That is, you might be able to rush through washing the dishes with your mind on the future, but your dishes would still be dirty.
greggraham··on Ask HN: Why Python over Ruby?
I currently use Python and Django for the following reasons: 1) Coworker familiar with Python 2) I had an easier time understanding the mechanics of Django than I did Rails 3) Some libraries I needed were only in Python

However, from a language point of view, I have a slight preference towards Ruby. Here are some things I like: 1) More consistent commitment to object paradigm, e.g. all function calls are actually method calls on an object. In Python, everything is an object, but sometimes you use methods, and sometimes you don't, e.g. list.pop() vs. len(list). 2) I think blocks are very handy. 3) I like the more Perlish regex syntax. 4) There is a cleverness to Ruby that might not be the best thing for a corporate environment, but it makes it fun.

So, if I was writing code just for myself, I might choose Ruby over Python, assuming performance and library support were sufficient.

greggraham··on Please Unplug
Without the ability to communicate with people all over the world, you are forced to deal with the people in your own proximity, who might not be the people you would prefer. They might not share your same interests, or they may have annoying practices. However, learning to accept, live with, and even love these people is important for human development.

On the Internet, you can find an affinity group of people like yourself. You can find interesting people who may be much more knowledgable about the things you like than anyone you know locally. If you encounter someone who is annoying, you can unsubscribe or block them and find someone else more to your liking. You might even prefer the culture of another part of the world more than the one where you happen to be born.

This is an old human tendancy. In the old days, if you wanted something different, you could escape with a book, but to have a dialog with different people you had to travel or immigrate, which was expensive. Even then you still had to deal with a group of neighbors and work associates that you couldn't hand pick.

With the Internet, though, it is so easy and tempting to hang out with the cool people in cyberspace and avoid the difficulties of local life that it is easy to become unbalanced. The Internet is wonderful for connecting us with different cultures, the experts in any field, and distant friends and family, but I think it is important to build relationships with the people close by. They will be the ones that will help you when the power goes out.

greggraham··on Ask HN: I can't stand PHP anymore. What else can I choose?
I spent a year writing C# in Visual Studio and ReSharper, and it is nice, but I'm happier now doing Python with Emacs and the command line.
greggraham··on Ask HN: I can't stand PHP anymore. What else can I choose?
I know that PHP brings a lot of good things to the web development arena, but I'm glad I've never had to use it for anything of significance. I've been able to use Python/Django and Python with Google App Engine, and they are delightful to work in. I know I produced a better product for my clients with Python than I could have with PHP. Someone else might have done better with PHP, and that's great for them.
greggraham··on Young and unplugged
I think people like this help balance the population. They provide an example that a good life is possible without all of these things that some of think we can't live without. They also point out what we are missing out on by not have time to read books as much, for example. However, just because they do it does not mean that everyone must go as far as they do. I think the reasonable reaction to a story like this is to reevaluate one's life and possibly make some adjustments, but for most people it would not mean giving it all up.
greggraham··on 1 Million Google Android Phones sold by T-Mobile
I've heard complaints about the poor battery life on the G1. How is that working for you?
greggraham··on Global Warming Delusions
The article agrees with you, "many of the actions we would take to reduce greenhouse-gas production and mitigate global-warming effects are beneficial anyway, most particularly a movement away from fossil fuels to alternative solar and wind energy." He is not saying we shouldn't take action, but that we shouldn't cause a panic by exaggerating the facts.
greggraham··on Why it is so hard to stay focused these days—and what to do about it
I have the same problem, so I've had to do things to cope with it. Fortunately, I have an office with a door at my work now, and that helps tremendously. At home I have a room to work in where I can shut the door and not hear the TV. When I need to concentrate, I shut down the Twitter, E-mail, and IM clients, and any other things on my computer that might be distracting. I only run programs related to the task at hand.

I have also found that a daily time of quiet prayer and meditation is helpful. If you don't believe in prayer, some other kind of meditation will probably help, too. Lately I've been incorporating MP3s from pray-as-you-go.org, which are very well done short sessions of Ignatian guided meditation incorporating beautiful music.

greggraham··on Conversation with Arthur Whitney, programming language designer
I really enjoyed reading that. As russell said, it is far outside my experience, but it is more like I wished my experience would have been.

I read an article on APL back in the early 80s and it sounded wonderful, but I never had an occasion to learn or use it. The closest thing for me now are list operations in Python and the collection functions I'm learning in Clojure right now.

greggraham··on An Interview with Brian Kernighan: Breeding Little Languages
I gave up on awk when Perl became available, and after that, Python. However, after reading this interview, I think I should relearn it.
greggraham··on COBOL MOVEs 50 to AGE
When I used to ride the train to work, I sat next to a young man who was looking over a printout of what I recognized as COBOL code. I talked to him, and he was debugging a problem that came up the night before in the back-end of a gas pump point-of-sale system. He was very cheerful and seemed to love his work. After that I thought about that one nice thing about being a COBOL programmer was that you didn't have to keep up with all of the latest frameworks and standards.
greggraham··on COBOL MOVEs 50 to AGE
I searched and found products to convert to C (http://www.mpsinc.com/cob2c.html) and to Java (http://www.jazillian.com/howCOBOL.html). However, it is probably easier to maintain the code in the language it was designed in. Also, as the article said, COBOL is very good at what it does.
greggraham··on Mending the Bitter Absence of Reasoned Technical Discussion
So all that has happened is that the Internet has allowed schoolgirl gossip and yelling in bars to be broadcast on an international scope and compete with professional journalism and scientific discourse. I suppose that cannot be helped with the democratization of the media. Still, if the common man is going to have that kind of power, should we not urge everyone to use it responsibly, and to try to raise the level of discussion, especially in what is supposed to be a professional context such as software development. Of course, that is what Hacker News is attempting to do; I'm hoping it will work.
greggraham··on Elements - a Scratch-like Smalltalk
Scratch has been used with great success in the 5th grade computer class at our school. Last year they were slogging through Logo with little motivation. When we switched to Scratch, they loved it.
greggraham··on After the newspapers die, who will watch the police?
Unfortunately, people are often short-sighted when it comes to the use of their money. In earlier days, there were influences of culture and religion that were stronger than economic forces, and provided stability for a civilization. Today, these influences are mostly ignored in favor of money.
greggraham··on Facebook reverts Terms of Use
Ah, the power of social networking.
greggraham··on Add "pwn" before youtube in the url of any youtube video to download it
I've been using Applian Media Catcher http://www.applian.com/replay-media-catcher/ to capture videos for teachers at my school for a while now. It's not free, but it works with a lot of sites besides YouTube.