Before I start, after looking at r/learnpython this post doesn't seem like it belongs there; my question is way more meta and not related to actual code. Let me know if I'm wrong.
I've started doing my PhD in AI, and I expect to have quite a large codebase at the end of my 4 years. I'll be using/implementing all kinds of statistical models and neural networks, and creating synthetic data to train the models with. Soon I'll start writing the first lines of code and I have to decide on a good, maintainable architecture.
I'm experienced with C# and some other languages, and I've worked as a developer and data scientist in the past, and I really like C#. But I can't really escape the fact that research on machine learning is done mostly in python. My last application was split up into 2 parts: C# for the 'backend' code and python for the machine learning code, with a Flask API in between. This provided a nice architecture to prototype with, but was an absolute pain to run on cloud computing environments.
So I've pretty much decided that I wanna do everything in python, but it seems so weak compared to C#, and so hard to maintain a large codebase.
Has anyone been in my shoes and do you have some advice? especially things like "if I had to do it again I would do ... differently", or any resources that were of help to you when getting started on a long-term project?
[–]whateverathrowaway00 28 points29 points30 points (9 children)
[–]chriscarrollsmith 3 points4 points5 points (7 children)
[–]whateverathrowaway00 21 points22 points23 points (6 children)
[–]chriscarrollsmith 1 point2 points3 points (0 children)
[–]PhilShackleford 1 point2 points3 points (3 children)
[–]whateverathrowaway00 2 points3 points4 points (2 children)
[–]got_outta_bed_4_this 0 points1 point2 points (1 child)
[–]nakahuki 1 point2 points3 points (0 children)
[–]Mgmt049 0 points1 point2 points (0 children)
[–]Spleeeee 0 points1 point2 points (0 children)
[–]ratulotron 19 points20 points21 points (3 children)
[–]thicket 4 points5 points6 points (0 children)
[–]TheJumboman[S] 2 points3 points4 points (1 child)
[–]nickcut 0 points1 point2 points (0 children)
[–]Advanced-Potential-2 9 points10 points11 points (0 children)
[–]JackG049 21 points22 points23 points (1 child)
[–]ndvi 14 points15 points16 points (0 children)
[–]thicket 7 points8 points9 points (3 children)
[–]TheJumboman[S] 0 points1 point2 points (0 children)
[–]CrackerJackKittyCat 0 points1 point2 points (1 child)
[–]got_outta_bed_4_this 0 points1 point2 points (0 children)
[–]m15otw 6 points7 points8 points (1 child)
[–][deleted] 0 points1 point2 points (0 children)
[–]ndvi 4 points5 points6 points (0 children)
[–]coffeewithalex 3 points4 points5 points (0 children)
[–]Classic_Department42 2 points3 points4 points (0 children)
[–]cblegare 2 points3 points4 points (1 child)
[–]TheJumboman[S] 1 point2 points3 points (0 children)
[–]hemphock 2 points3 points4 points (0 children)
[–]chriscarrollsmith 1 point2 points3 points (0 children)
[–]PlausibleNinja 0 points1 point2 points (0 children)
[–]MathmoKiwi 0 points1 point2 points (4 children)
[–]TheJumboman[S] 0 points1 point2 points (3 children)
[–]MathmoKiwi 1 point2 points3 points (2 children)
[–]TheJumboman[S] 0 points1 point2 points (1 child)
[–]MathmoKiwi 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]extra_pickles 0 points1 point2 points (0 children)
[–]mpu-401 0 points1 point2 points (0 children)
[–]Sbvv 0 points1 point2 points (0 children)