3 ms·
You don't have to check baby's diaper to know they went number 2. Python ML code is a bit of a joke. If you're any kind of semi professional developer who sees
by lugg 8y ago
You don't have to check baby's diaper to know they went number 2.
Python ML code is a bit of a joke. If you're any kind of semi professional developer who sees deep learning code for the first time and doesn't say "what the fuck would you do it like that for", I simply don't know what to tell you.
Im not saying a new language will fix this problem but some new primitives and idiomatic options protecting people from themselves probably wouldn't hurt the industry.
Likewise, something more ergonomic might actually improve onboarding new developers into the space.
- mark_l_watson 8y agoI agree. Python is fine for short programs, but please give me a type safe language for developing more complex programs. BTW, as an unofficial library, some devs at Google do provide Haskell TensorFlow bindings. I am not a Swift developer but I have looked at Swift enough to know that I like it better than Python. Common Lisp is another interesting language: the SBCL compiler’s warnings will help you catch many errors early. So, maybe Python would be much better with MyPy type annotations and JIT compilation.
- ageofwant 8y agopoo-poo, people will insult your sensibilities using whatever language you choose, the "problem" is not them, or the language or its idioms, its you. If you write ML code for money, you are a pro, the end. Python is not perfect, but everything else is worse, far worse. What is the product that falls out of a ML pipeline ? ML pro-tip: its not hand-crafted artisanal code.
- lugg 8y agoMy complaints about ML prettiness were unclear but to clarify it's usually criticism aimed at library authors who often come from very academic backgrounds with very poor sense (lack of exp?) of just how lazy professional developers are. Case in point, you don't care if it comes out as poop because you're getting shit done. Hell it seems like you don't even care if you have to wade in it for another 5 years. Kudos, but what if i told you if the tooling authors could have ensured you never wrote poop but still got shit done?
- ubu7737 8y agoThe end product is a model. If you can't describe how that model makes its way into a product and is consumed, then you aren't a pro, the end. From the product's perspective, all you produce is a configuration file.
- bjourne 8y agoWhat do you find offensive about, for example, the following CNN written in Python? https://github.com/keras-team/keras/blob/master/examples/cifar10_cnn.py https://github.com/keras-team/keras/blob/master/examples/cif... "I simply don't know what to tell you." Please try! You can at least provide one example of the jokes you are referring to?
- ubu7737 8y agoThat code sets stack vars and calls out to the actual work. This is a perfect example of what's perplexing me about the "learning" industry. https://i.redd.it/00824ycw3hwy.jpg https://i.redd.it/00824ycw3hwy.jpg That code also uses pickle to serialize to disk, which is a gross, irritating pattern I've seen from Pythonistas: just pickle it to disk, it works on my laptop. Seems like Logo programming, to me.
- bjourne 8y agoThat criticism is surprising because Python doesn't have stack variables and the code serializes the model in h5-format.