Out of the things you listed, scientific computing & OSS libraries are things I want to explore more. I also don’t just want to learn Python—although I have chosen Python to be the language to try to get pretty good at—my goal is to get myself a proper CS education. I think it would be difficult to truly get good at a language without understanding how things work underneath.
The skills of ‘working on an existing project’ I mentioned above are not usually covered as part of a CS education, but complementary skills for most things you might want to do once you have one. I also agree entirely with gjm; you’ll learn a lot any time you get hands-on practice with close feedback from a mentor.
For OSS libraries, those pytest issues would be a great start. Scientific computing varies substantially by domain—largely with the associated data structures, being some combination of large arrays, sequences, or graphs. Tools like Numpy, Scipy, Dask, Pandas, or Xarray are close to universal though, and their developers are also very friendly.
Out of the things you listed, scientific computing & OSS libraries are things I want to explore more. I also don’t just want to learn Python—although I have chosen Python to be the language to try to get pretty good at—my goal is to get myself a proper CS education. I think it would be difficult to truly get good at a language without understanding how things work underneath.
Also, what gjm said.
The skills of ‘working on an existing project’ I mentioned above are not usually covered as part of a CS education, but complementary skills for most things you might want to do once you have one. I also agree entirely with gjm; you’ll learn a lot any time you get hands-on practice with close feedback from a mentor.
For OSS libraries, those pytest issues would be a great start. Scientific computing varies substantially by domain—largely with the associated data structures, being some combination of large arrays, sequences, or graphs. Tools like Numpy, Scipy, Dask, Pandas, or Xarray are close to universal though, and their developers are also very friendly.