March 13, 2006

vim shmim

Religion isn’t the opiate of the masses anymore, Karl. IDEs are.

“The whitespace thing is simply that Python uses indentation to determine block nesting. It forces you to indent everything a certain way, and they do this so that everyone’s code will look the same. A surprising number of programmers hate this, because it feels to them like their freedom is being taken away; it feels as if Python is trampling their constitutional right to use shotgun formatting and obfuscated one-liners.”

The thing is, the forced indenting is one of the reasons I wanted to learn Python.  I don’t want work on code that was created by some crackhead programmer who thinks fitting his entire program into a single line will somehow reduce the number of bugs due to faulty statistical analysis.  Either way, it’s an enjoyable rant on what programming languages one should learn, by Stevey, whoever that is.

No Comments »

  1. TIME VORTEX! Red, you should never never post links like this without putting (the number of pages in parentheses, and an exclamation point if it’s a page turner!) Shawn was right. You must be destroyed.

    Comment by Kris Kowal — March 16, 2006 @ 12:32 pm

  2. If God uses an editor it’s vim. Lucifer uses emacs!

    Comment by Anonymous — March 16, 2006 @ 6:20 pm

  3. Have you honestly run into un-indented or inconsistently indented code, even once? I don’t know that Python was indeed designed to prevent such idiocy, but limiting lines to 80 columns sounds more useful to me.

    And what makes you think the statistical analysis is invalid?

    Comment by Casey — March 16, 2006 @ 10:54 pm

  4. Have you honestly run into un-indented or inconsistently indented code, even once? I don’t know that Python was indeed designed to prevent such idiocy, but limiting lines to 80 columns sounds more useful to me.

    Depends on how you define consistency. Of course most people manage to be consistent with themselves, but I want everyone to be consistent with me. Now, this isn’t very likely to happen any time soon in C/Java/C# etc… Python gave me the hope that any code I work on would have a consistent coding style, and I wouldn’t have to deal with both the GNU and K&R style being acceptable in the same language. Not that there’s an inherent problem with either GNU or K&R, I’d just rather I only had to deal with one. To sum up this paragraph:, I want consistent style because I’m anal.

    And what makes you think the statistical analysis is invalid?

    First of all, I haven’t seen any statistical analysis. This is my blog, not Popular Science, and I’ll talk out of my ass whenever I damn well feel like it.

    With that out of the way, here’s the deal: I’m willing to accept that better coders produce more concise code, and that there are fewer bugs in their code as a result of the fact that they are better coders. What I am not willing to accept is that if you take a coder and place limits on how long his code may be, there will somehow be fewer bugs.

    Comment by red — March 18, 2006 @ 7:58 am

  5. I’ve never bothered to try Python (only partially because I’m a little annoyed by languages trying to save me from myself), but I think Python only requires consistent indentation, not a certain style, e.g. tabs, 3-space, 4-space, etc. Is this much of an improvement?

    Here’s my understanding of the alleged correlation of between LOC and bugs. To write concise code requires a deep and clear understanding of the problem; coders with such an understanding introduce fewer bugs. Therefore, requiring concise code results in fewer bugs. It could be BS.

    Comment by Casey — March 18, 2006 @ 6:18 pm

  6. Dude, the comments on this posting are incredibly nerdy.

    Unbelieveable.

    Comment by Byron — March 19, 2006 @ 11:45 pm

  7. I’m with Byron on this. If it’s beyond html it’s beyond me…

    Comment by Alicia — March 21, 2006 @ 2:00 pm

  8. Welcome to the world of the CS major.

    Comment by Xenith — March 24, 2006 @ 11:07 pm

RSS feed for comments on this post. TrackBack URI

Leave a comment

Powered by WordPress