
About Being a Polyglot Software Engineer - sap1enz
http://sap1ens.com/blog/2017/05/03/about-being-a-polyglot-software-engineer/
======
collyw
I am of the opposite opinion these days.

I know Python well. I know Django well. Those cover 90% of my needs as a
programmer and the libraries are usually of a decent quality (compared to my
experiences in JavaScript for example) so why would I introduce a new
language? I will write better quality Python/ Django code because I know the
idioms, and best practices, I know how to write clean code. If I switch to
another language, sure I will be able to write the same, but the quality of my
code will not be as high and it will take me longer.

I don't think knowing more languages is a bad thing, but adding new languages
to a project for the sake of it can be.

~~~
sap1enz
Here's an example: functional programming. I think you agree that functional
programming in general helps us write very concise, but at the same time,
still readable code. It also can eliminate some bugs because of the
immutability, laziness, etc.

Python does support functional programming, but it's not a primary way of
doing things. By learning one of the Lisp-like languages you can better
understand all the idioms you would use in Python to apply functional
programming concepts better.

You don't need to necessarily add it to you projects at work, it can be as
simple as doing an online course.

~~~
collyw
I am not disagreeing with you, and I use the functional aspects of Python a
fair bit. As I said I don't think learning new languages is a bad thing. But I
do see some devs that collect languages / frameworks like football stickers.
If you are learning a new one every second month you won't have much depth to
your knowledge in any of them.

~~~
sap1enz
True! :)

