Not a single-person company but I worked on projects and in roles where I was the single person making decisions. Here is my small overview of the ML (machine learning) and DS (data science) world. Hope you find it useful
> What is your tech stack?
The choices are python, scala, julia, matlab and R. Of these python takes at least 90% of the market. I am using python and will do so for the forseable future. Don't like it but it's super practical thing to do. Fingers crossed Julia hits mainstream in the next few years.
Since I am mostly in the computer vision world my stack is torch, torchvision, pytorch-lighting, opencv, scikit-image, scipy and numpy. From time to time i call upon numba when it is impossible to avoid a loop (python loops are sloooooow, numba JIT compiles). Very rarely i coded stuff in C++ and used cython to link it to rest of python. Most of the stuff is already there. For model inference serving i use fast api.
> Why did you choose it?
I chose python because there is no real choice here. It's a monopoly. Winner with most ready to use packages takes all. I am rooting for Julia to eventually win over python as using python as the (big) data language is contradictory given how slow the interpreter is. Also it is not a GPU native language.
Torch was more of a personal choice as I really hated tensorflow 1.X versions and the compute graph. It was hard to debug and follow what is going on. Tensorflow 2.X moved to same mode of computation like torch but it was already too late for me.
> Do you think your choices had any impact on your success?
I think going with tensorflow would have worked as well. Lot more annoying but good base. Using language other than python would have been a bad idea. Practical ML is a lot like JavaScript WebDev. Get a bunch of stuff from 3rd party packages and write some glue code.
> What is your tech stack?
The choices are python, scala, julia, matlab and R. Of these python takes at least 90% of the market. I am using python and will do so for the forseable future. Don't like it but it's super practical thing to do. Fingers crossed Julia hits mainstream in the next few years.
Since I am mostly in the computer vision world my stack is torch, torchvision, pytorch-lighting, opencv, scikit-image, scipy and numpy. From time to time i call upon numba when it is impossible to avoid a loop (python loops are sloooooow, numba JIT compiles). Very rarely i coded stuff in C++ and used cython to link it to rest of python. Most of the stuff is already there. For model inference serving i use fast api.
> Why did you choose it?
I chose python because there is no real choice here. It's a monopoly. Winner with most ready to use packages takes all. I am rooting for Julia to eventually win over python as using python as the (big) data language is contradictory given how slow the interpreter is. Also it is not a GPU native language.
Torch was more of a personal choice as I really hated tensorflow 1.X versions and the compute graph. It was hard to debug and follow what is going on. Tensorflow 2.X moved to same mode of computation like torch but it was already too late for me.
> Do you think your choices had any impact on your success?
I think going with tensorflow would have worked as well. Lot more annoying but good base. Using language other than python would have been a bad idea. Practical ML is a lot like JavaScript WebDev. Get a bunch of stuff from 3rd party packages and write some glue code.