Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I was a fan of LeCun back in the early 2000's when his review papers showed me the way to build industrial text classifiers.

That said, in 1999 I rage quit Python because somebody retabbed a file and sent it back to me and spent a while debugging a logic problem caused by a spacing change that was invisible in my text editor. I got dragged back into Python in the mid 2010's because there was so much ML and science work that people wanted me to do. That's how Python survived the near death experience of the 2 -> 3 transition, it found a new community of users who could start working in Python 3 and who often didn't have the usual industrial concerns about backwards compatibility.

If you were going to bitch about Python today though it would be (1) generic brokenness in environments because of (a) the site local directory, (b) misconfigured charsets, (c) other misconfigurations and also (2) pip not correctly resolving complex projects, and (3) distractions like conda that claim to make things better but actually make them slightly worse.

I worked at a place that was developing ML models in Python that struggled with all of the above, by the time I really understood the problems the company had decided to move away from Python. It was worse back then because we were running models in different versions of Tensorflow that required different versions of CUDA. If you installed software the way NVIDIA tells you to do that would involve a lot of logging in, click, click, clicking and watching progress bars crawl slowly, but I did figure out how to package CUDA libs in conda although conda drove me nuts because it uses bzip2 compression that had me looking at progress bars crawl slowly all the time.

Today there has been a lot of reform and it is not so bad as it was but there is still the insanity that the best Python libs can do is code like

   from sentence_transformers import SentenceTransformer
   model = SentenceTransformer('all-MiniLM-L6-v2')
see https://sbert.net/

where it really should be more like

   pip install all-MiniLM-L6-v2
and it is just unacceptable to me in an industrial environment to have the script itself download a 400MB model as opposed to managing models in the deployment system. (Somehow schemes like the above wind up downloading the model 20 times when you only need to download it 1, stash 20 copies of the model in different files, corrupt the files, etc.)


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: