18 MAY 2017 by ideonexus

 Programming as a Way of Thinking

Running programs is the whole point of programming, of course, but there is more to it. The ability to execute code makes programming a tool for thinking and exploring. When we express ideas as programs, we make them testable; when we debug programs, we are also debugging our brains.
Folksonomies: programming thought
Folksonomies: programming thought
  1  notes
 
21 APR 2017 by ideonexus

 Code is Not Literature

Code is not literature and we are not readers. Rather, interesting pieces of code are specimens and we are naturalists. So instead of trying to pick out a piece of code and reading it and then discussing it like a bunch of Comp Lit. grad students, I think a better model is for one of us to play the role of a 19th century naturalist returning from a trip to some exotic island to present to the local scientific society a discussion of the crazy beetles they found: “Look at the antenna on this...
Folksonomies: programming coding hacking
Folksonomies: programming coding hacking
  1  notes

Seibel's observation that reading code is less like literature and more like science is dead on. No matter how readable the code is, when I'm confronted with 10,000 lines of it spread across numerous encapsulated functions, I must tackle it very differently from how I read prose. With a complex literary text, I can just read it in linear fashion with occasional segueing to look up words and concepts, with well-engineered code I must follow numerous cases into different flows of logic. These aren't the same at all.

I appreciate that he's trying to dispel the idea that we "read" code as we read for pleasure, I learn from code by experimenting with it. I open up the debugger and step through it, watch the variables change and see where it goes when I execute it. Most of all, I learn by changing that code and trying to build on it. I have enhanced my javascript skills immensely in recent years by cloning various projects on github and trying to expand on them or adopt them to my own purposes. I don't recommend opening up a code base and just reading it, actively engage it, break it, and enhance it.

06 FEB 2015 by ideonexus

 A Worm's Mind in a Lego Robot Body

The nematode worm Caenorhabditis elegans (C. elegans) is tiny and only has 302 neurons. These have been completely mapped and the OpenWorm project is working to build a complete simulation of the worm in software. One of the founders of the OpenWorm project, Timothy Busbice, has taken the connectome and implemented an object oriented neuron program. The model is accurate in its connections and makes use of UDP packets to fire neurons. If two neurons have three synaptic connections then when ...
  1  notes
 
12 JAN 2012 by ideonexus

 State of Mind in a Marathon Coding Session

The peak hour itself was tremendously intense, but during the hours before, and even during the hours afterward, a hacker attained a state of pure concentration. When you programmed a computer, you had to be aware of where all the thousands of bits of information were going from one instruction to the next, and be able to predict—and exploit—the effect of all that movement. When you had all that information glued to your cerebral being, it was almost as if your own mind had merged into th...
Folksonomies: programming coding hacker
Folksonomies: programming coding hacker
 1  1  notes

There is a point where you have the whole program in your head at once, one with it, and you don't want to let it go, so you keep working in a marathon burst of energy.

28 AUG 2011 by ideonexus

 Programmers Get Better with Age

This kind of data is hard to come by, but thanks to almighty Stackoverflow ands their wise decision (thanks Joel), to make this data publicly available we can mine this data to our collective benefit. With a simple bash script to download the data, a small Java program to extract the stats and Google Docs to make the graphs, I was able to produce some interesting stats. I pulled in data of about 70.000 developers whose Stackoverflow reputation is over 100. On average 53% of them have their ...
  1  notes

An ingenious conclusion arrived at by mining data on Stack Overflow finds that developers answer more questions as they get older and contribute more to the community.

21 APR 2011 by ideonexus

 Jamie Zawinski on Different Kinds of Programming

There's obviously different kinds of programming. Without people who are not like me none of this would exist. But I've always seen much more in common with writing prose than math. It feels like you're writing a story and you're trying to express a concept to a very dumb person-the computer—who has a limited vocabulary. You've got this concept you want to express and limited tools to express it with. What words do you use and what does your I thing.
  1  notes

Programming has much in common with prose.

21 APR 2011 by ideonexus

 Douglas Crockford on Reading Code

One of the things I've been pushing is reading. I think that is the most useful thing that a community of programmers can do for each other—spend time on a regular basis reading each other's code. Then are's a tendency in project management just to let the programmers go off independently and then we have the big merge and if it builds then we ship it and we're done and we forget about it.
  1  notes

An important exercise for programmers is to read each other's code.

21 APR 2011 by ideonexus

 Guy Steele: Computers are Too Complex to Know it All

I guess to me the biggest change is that nowadays you can't possibly know everything that's going on in the computer. There are things that are absolutely out of your control because it's impossible to know everything about all the software. Back in the '7Os a computer had only 4,000 words of memory. It was possible to do a core dump and inspect every word to see if it was what you expected. It was reasonable to read the source listings of tine operating system and see how that worked. And I ...
  1  notes

It was once possible to know all aspects of the computer, but the system has grown too large and complex for that now.

21 APR 2011 by ideonexus

 Brad Fitzpatrick on What Makes a Great Programmer

Seibel: What do you think is the most important skill for a programmer to have? Fitzpatrick: Thinking like a scientist; changing one thing at a time. Patience and trying to understand the root cause of things. Especially when you're debugging something or designing something that's not quite working. I've seen young programmers say, "Oh, shit, it doesn't work," and then rewrite it all. Stop. Try to figure out what's going on. Learn how to write things incrementally so that at each stage you...
  1  notes

A programmer must think like a scientist.

21 APR 2011 by ideonexus

 Fran Allen Sees Computer Science as Science

Seibel: Do you think of yourself as a scientist, an engineer, an artist, or a draftsman? Allen: I think of myself as a computer scientist I was involved in my corner of the field in helping it develop. And those were interesting times—the emergence of computer science—because there was a Ic lot of question about, "Is this a science? Anything that has to have science in its name n't a science." And it was certainly unclear to me what it meant. But compilers were a very old field—olde...
 1  1  notes

Allen started out as a programmer, but became a scientist to perform her job well.