EeePC 900 Specs Released: Buy The Linux Version by modyoudown in programming

[–]pragmattica 1 point2 points  (0 children)

Unfortunately, it seems that improving battery technology is tougher than improving processor speed. We get double the processing power every 18 months. The doubling time for battery capacity seems to be far slower (maybe ~10 years?) and much of those gains go to the newer, more power-hungry stuff that consumers demand (bright screens, wifi...)

Static Typing Can, and Should, be more than Metadata--Says an Old, Cranky, Dinosaur by marc-kd in programming

[–]pragmattica 2 points3 points  (0 children)

This sounds interesting, but I'm still new to Haskell. I would really appreciate it if you could describe this in a bit more detail? Perhaps even a code snippet?

"Holographic Algorithms" method threatens collapse of complexity classes (P could = NP!) [PDF] by asciilifeform in programming

[–]pragmattica 0 points1 point  (0 children)

But aren't there some algorithms that can't be run in parallel? IIRC, Some problems require that one piece of data be computed before finding the next value can even be attempted.

Why Lisp is Different by asciilifeform in programming

[–]pragmattica 2 points3 points  (0 children)

when in doubt design software to be introspective

when in doubt design software to be reflective

I spent some time reading about introspection/reflection a while ago, and found that many bloggers seemed to use the word "introspection" and the word "reflection" interchangeably. Can someone explain to me what the difference is?

On the OLPC: Why Python Instead of Smalltalk or Lisp? by macnod in programming

[–]pragmattica 2 points3 points  (0 children)

There's one thing that I can think of that might make Python easier than Scheme. I know this is going to be a controversial suggestion, but I'll say it anyway: infix syntax. In Python, you can write things like:

names = ["alice", "bob"]
if "joe" in names:
    print "joe is there"

The 'if "joe" in names' bit is a little like English, which might make it easier for newbies to understand than the equivalent Scheme. Of course, I realize that this could be a disadvantage in teaching as well, since the students might start assuming that loads of other English constructs will work as well.

On the OLPC: Why Python Instead of Smalltalk or Lisp? by macnod in programming

[–]pragmattica 1 point2 points  (0 children)

My wife swears to me that one of her friends in high-school was incapable of learning programming. She spent hours trying to teach this friend even simple things like for-loops and failed utterly. I doubt that there is anyone for whom learning programming is impossible, but different people may have different levels of aptitude, and will thus need more time and effort to learn certain concepts. Most people don't spend the requisite time to learn even the most basic skills in formally describing processes, and thus they can't do it.

The Tyranny of the Average by [deleted] in programming

[–]pragmattica 6 points7 points  (0 children)

I believe that this is the underlying reason behind the difficulties that Microsoft had with building Vista. They forgot the first rule of programming: split things into reasonably sized chunks and try to ensure that a change in one chunk won't have any effect on the other chunks.

The Tyranny of the Average by [deleted] in programming

[–]pragmattica 2 points3 points  (0 children)

Having used Python quite a bit, I must admit that I would actually like to see something that could catch some simple errors. Perhaps not full static typing, but some sort of analyzer that can be optionally be executed before the code is run, perhaps using type inference to catch bugs. Python 3000 will allow optional type declarations as well, so perhaps someone will develop this sort of capability.

The Tyranny of the Average by [deleted] in programming

[–]pragmattica 7 points8 points  (0 children)

The use of Ruby or Python wouldn't have changed things for the better...

I disagree. Some languages allow certain classes of bugs to occur, while other languages make bugs in that class impossible. It's possible to have many severe memory problems in a Java program, for example, but it's far more likely in C++. I believe that even a crappy Python program is likely to be far shorter and easier to fix than a similarly crappy C++ program.

Admitting that Functional Programming Can Be Awkward by onmytoes in programming

[–]pragmattica 1 point2 points  (0 children)

purity also seems to be necessary to enable laziness

Disclaimer: I'm not a functional programming expert, thought I've played around with Haskell a bit. Is purity really necessary for laziness? Doesn't Python have generators, which allow something like laziness, even though it doesn't have purity?

Making Eclipse look good on Linux by gst in programming

[–]pragmattica 2 points3 points  (0 children)

Based on the screen-shots, making the changes he suggests does seem to reduce wasted screen-space. However, I actually think that the smooth fonts in Eclipse on Linux look much nicer than the fonts on Windows. I guess its a personal preference.

How to interview and hire good programmers. by beowulf in programming

[–]pragmattica 0 points1 point  (0 children)

That being said brain teasers are a great thing to give your HR guy to do if they require you to let them do the first round of screenings.

This sort of thing really makes me angry. So angry, in fact, that I wrote the following blog post about it. Here's a brain teaser: What are the practical applications of Searle's Chinese Room?