|
|
|
|
|
by danhoc01
4566 days ago
|
|
Nothing is wrong with culture. I love the culture. It's just that there is an emphasis on doing things in clever ways, not necessarily readable or maintainable ways. The average thread on PerlMonks (at least when I was a heavy reader) eventually turns to code golf. The language and culture both encourage that. I had a lot of fun writing clever code, and it really helped me understand data structures and efficiency at a deep level. Trying to force that culture of expression and code gymnastics to write a maintainable codebase just isn't worth it in my opinion. A language with more constraints and less magic will benefit a team trying to come together to build a product. I see Python as being somewhere between Perl (express yourself in clever ways) and Ruby (I know it's attributed to Rails, but omakase) in terms of culture. That's why I love Python. |
|
That might not be representative of the Perl community as a whole really ... Perl is used in corporate environments where "code golf" or "super clever" solutions will get you odd looks, Perl isn't an excuse for writing unmaintainable code, even if it's straight from PerlMonks. Books like "Modern Perl" by chromatic and software like Perl::Critic have moved the focus from writing "clever" to writing maintainable code in the last couple of years. In my opinion, it was too little and too late though and lacking supporting changes in Perl's implementation to reverse the trend (i.e. losing users).
For people who have touched saner languages (like Go) in the mean time, it's just hopeless to keep messing about with Perl, no matter how disciplined people are and how supporting the toolchain is (I run Perl::Critic and perl -MO=Lint -c before every commit and it takes longer than "go build", which checks code much more thoroughly).