4 ms·
I have 3 tests I use: 1) did you pass linear algebra? 2) show me some code you have written and deployed 3) here's Learn Python the Hard Way, start reading a
by killjoywashere 9y ago
I have 3 tests I use:
1) did you pass linear algebra?
2) show me some code you have written and deployed
3) here's Learn Python the Hard Way, start reading and come back with questions.
In the modern era, I have not found anyone who can pass test 1 and doesn't know code (except for 1 mathematician who's like 70 and no one cares if he can write code, his ideas are so insanely good that other people write his code for him, despite their day jobs). These people execute and come back with challenging problems for me.
Anyone who passes test 2 seems to be able to pick up whatever task I give them. I'm not entirely sure they understand what they're doing all the way down, so there's more review, but they can generally execute. Questions go back and forth.
If I get to test 3, well, no one has come back with a question yet.
What this tells me is there is plenty of signal in the culture that math and programming ability are valued. The people don't, ain't never gunna.
- jessaustin 9y agoI didn't think I knew anything about ML, yet I seem to have passed all three tests... b^)
- edraferi 9y agoIf you know linear algebra, machine learning is not much further to go. You can understand pretty much all the models by looking under the hood at the math. At that point it’s just experience to learn the rules of thumb that guide practical implementations.
- vvanders 9y agoThat was my experience building a simple morse code decoder. Actually spent more time fighting the spectograph resolution than the ML part. I also learned real quick that I don't want to do ML. It's all about data generation/sanitation/management which just doesn't click for me.
- killjoywashere 9y agoBut, grasshopper, you have not passed the third test. Where is your question?
- jessaustin 9y agoHaha. I guess if I had to ask any question about python, it would be, "why on earth did they do that ridiculous unicode thing in version 3?" Most builtins should use bytes, and the few that can't should just use bytes annotated with an encoding.
- madhadron 9y agoThere speaks someone who hasn't spent significant time working with multilingual texts.
- PeterisP 9y agoMost builtins can't use bytes instead of string safely for all data, and the problem is that it propagates - in Python 2 you often have the case that library A uses library B that uses a builtin that treats a piece of text like a string of bytes, and so you can't use library A because it will give you broken results in certain conditions. We've spent time updating some third party open source libraries to support python 3, and that was well worth the time to avoid the waste of programmer time that'd come from working in python 2 due to lack of sane handling of unicode strings; and if you're working with user-facing software (as opposed to, say, scripts for system administration or physics calculations), pretty much every string you encounter nowadays is unicode string. Names of people, names of files, contents of files, results of http requests, results of database requests - all of those can be treated as streams of bytes only if you treat them as a single atomic token and don't look inside that stream in any way whatsoever. As soon as you make the first index operation, substring or split, you can't treat them as bytes anymore safely. However, you can simply think of it as syntactic sugar that manages the encoding annotations in the default case. Where is it creating problems for you? Is it some performance hit or something else?