http://www.perlmonks.org?node_id=560564


in reply to Re^4: Perl for big projects
in thread Perl for big projects

I have used several code management tools for Java, and VB and .NET. The common theme is that you cannot write your programs WITHOUT the tools!

I've written Java without any tools other than vi. An IDE would have made life easier, perhaps; that's the point of an IDE. I wish there were a decent IDE for Perl, but there isn't.

The language is designed to keep the programmer from thinking, being creative and you pervert this into good coding conventions( or GW Bush thinking, to protect our freedoms we have to give them up).

The point of programming isn't to "think creatively", or to excercise "linguistic freedoms". If you want those things, join a poetry group instead!

Programming isn't about creativity; programming is the art of documentation, reduced to terms so simple a machine can understand them.

If you have to be creative, or to "think", then you're not ready to program yet: you're still back at the design phase. First you need to develop the algorithm, then you need to prove it works, and then, once you actually know what you're doing, and how you will do it, you can code it.

But remember, the design and proof of new algorithms is already being done by the CS department at major universities, by people who are probably smarter than you will ever be, and what you're out to prove has probably already been done. There's not a lot of room for creativity; because "novel" is the opposite of "tried and true".

Code is supposed to be boring, and obvious. It's supposed to be obvious what code does; like a well written piece of tech writing, good code doesn't look hard to write -- the point of each line is obvious, and they fit together in a clear and cohesive manner to explain a concept in a clear and unambigous way.

It's not supposed to be fun, or challenging, or interesting. Programs are supposed to: (a)get the job done, and (b)to be understandable and maintainable (ie. as simple as possible)

That's it. That's all. No fuss. No drama. No chest-puffing, or whining about "power", or "freedom", or "creative expression", or other unrelated concepts: just code that works, and is correct and obvious.