re: To func, or not to func: that is the question. VIEW POST

FULL DISCUSSION
 

Not so sure if skip over Python so quickly.

You can implement functional programming with it.

Many of the things that Go has so does python. If you want something fast checkout Cython. Also large base of users and documentation everywhere. I hate the whitespace enforcement though.

Although Go sounds fun, and I've told around the idea of learning it. F# never appealed to me for some reason, I think mostly due to the fact it's not widely used.

Good luck on whatever you learn next.

 

If you hate whitespace, try bython. I think that's the point more than the recommendation, as far as I can tell python has an enormous following. It can do many things and be whatever you want it to be. This coming from someone who hasn't wrote a line of python but my sights are on it at the moment.

 

Thanks for the feedback Nick. Much appreciated!

I do see the value in Python for sure. It's a joy to write. But the fact that it's so difficult to do things asynchronously and make performant, has always turned me away.

By the sounds of your response, you have some experience with it? What's it been like for you at scale?

 

Couldn't agree more about the asynchronous limitations of Python. That's always been one of my dislikes about it as well.

We actually used a Windows service to kick off python tasks for doing large geoprocessing jobs. Spatial selection and queries and then an ETL of that data out to different formats. That was the workaround for doing things without worrying about doing things in an asynchronous fashion, we'd just kick off more tasks. On a server with 64 cores, this never seemed to be much of an issue. One thing though, that I noticed was that the loose or dynamic typing caused problems sometimes when a developer would work on something, and then their changes would break something down the subprocess. Python on large projects without testing is painful.

 

Go draws heavily from scripting languages for some of it's syntax (slices come to mind as a perfect example), so it's more like Go has a lot of the features of Python.

code of conduct - report abuse