4 ms·
Increased readability and code clarity are well worth the price of admission.
by brodie 17y ago
Increased readability and code clarity are well worth the price of admission.
- jacquesm 17y agoReadability is a subjective thing. I find C dead easy to read, that's because I've read lots and lots of it. Any other language is harder for me. edit: on another note, in a delimited language the indentation can be created fully automatic, in python it can not, placing most of the burden of making sure the indentation is correct on the human. This lack of 'redundancy' has bitten me several times already.
- brodie 17y agoRight, it is subjective, but requiring indentation imposes a higher baseline level of readability: what you see is what you get. This is important when you're working with more than just your own code. It's like a forced style guideline, and it gets even better when everyone conforms to Python's other optional style guidelines. It reduces friction.
- jacquesm 17y ago> It reduces friction. Between python programmers, yes. But it increases friction between those that are 'in' and those that are not (yet). And even some of those that are 'in' have their reservations. I completely understand the reasoning behind it, but the number of times that I've run in to practical problems because of having some kind of delimiter is 0, the number of times that I've run into some kind of trouble with python because of not having delimiters is starting to add up. This may be a factor of inexperience, time will tell. But it is definitely a new 'source' of bugs, and sources of bugs are in my opinion things that you avoid like the plague when designing a programming language. Even in 'C' (or C++, or anything that derived it's syntax from those languages) I always found it both wrong and inconsistent to be able to say: if (a) b++; To me that's asking for misery, you could remove that whole if(a) line and the whole thing would remain syntactically correct. I think of the { } just like I think of guardrails on the highway. They don't make stuff prettier, sometimes you can't look across, but they certainly keep you safer.
- jbellis 17y ago> Between python programmers, yes. Optimizing for any other audience would be ... strange, especially at this point in python's lifecycle.
- jacquesm 17y agoTrue, it is absolutely beyond that. But I think that it would have helped significantly in an earlier stage, I even think that PHP would have been run into the ground. In the long run that may still happen, there definitely is shift happening.
- shabda 17y ago>in python it can not, placing most of the burden of making sure the indentation is correct on the human. Surely you mean "On the Ide" > Especially when programming using tabs you'd better be very careful not to hit a delete by accident Not if you are using any sane editor.
- jacquesm 17y agoThat's probably an issue, I'm very - very - old fashioned when it comes to editors, I switch systems all the time so I've come to rely on a minimal subset (vi, without any fancy plug ins) to do my work. This is probably a limiting factor. For years I thought of IDEs as training wheels, I'm beginning to see that in some cases IDEs are more than that. But I'll never be comfortable with them. My idea of building an application is to log on to the server, create an svn directory and start hacking away at it. That's probably not the most productive way to get things done these days. The only language that I work in where I made the concession to use an IDE is Java, simply because there are too many syntactic gotchas that I can't seem to predict ahead of time and the ECT cycle is ridiculously long on the project that I'm working on. So that's where (at least to me) the IDE seems to be worth the fact that I can only work on that stuff when sitting in front of a serious machine. I'd hate to run intellij on a laptop screen, forget about a netbook.
- tetha 17y agoI think there is a distinction between, say, ed or eclipse (to put it into the extremes). I also dislike IDEs like Eclipse and such (for various reasons, part being a lot of annoyance to get it to run properly on this box, part being slowness, part being a vim-user for a long time), but on the other hand, a vim with some plugins and the regular syntax highlighting and indenting for various langauges is very helpful, without really getting in your way.