• 0 Posts
  • 744 Comments
Joined 1 year ago
cake
Cake day: June 22nd, 2023

help-circle





  • Part of it might be that I’m often having similar arguments with the team I run about introducing dependencies.

    Engineers have a tendency to want to use the perfect tool for a job at the expense of other concerns. It could be ease of maintenance, availability of the skill-set, user experience, or whatever. If there’s pushback it’s normally that they are putting their own priorities above other people’s equally valid concerns.

    Often I’m telling people to step-back. Stop pushing, listen to the resistance and learn from it. Maybe I’m on a bit of a crusade when I see similar situations in open-source.




  • I think for python tooling the choice is Python Vs Rust. C isn’t in the mix either.

    people like and want to program in rust

    I think there’s a survivor bias going on here. Those that have tried rust and stuck with it, they also like it. Far more people in the python community haven’t tried it, or have and not stuck with it. I like and want to program Haskell. I’m not going to write python tools in it because the community won’t appreciate it.

    Tools should be maintained by those that use them. Python doesn’t want to rely on the portion of the venn diagram that are rust and python users because that pool of people is much smaller.


  • Those languages bring different things though:

    • Python is the language the tool is for

    • C is the implementation language of Python and is always going to be there.

    • Cython is a very similar language to Python and designed to be very familiar to Python writers.

    • Fortran is the language that BLAS and similar libraries were historically implemented in since the 70s. Nobody in the python community has to write Fortran today. Those libraries are wrapped.

    • Rust is none of the above. Bringing it into the mix adds a new barrier.






  • I’m trying to understand Git, but it’s a giant conceptual leap.

    To start with, start with just using git locally. Don’t worry about GitHub or similar. Then git and SVN will work very similarly. The main difference is that you need to git add files with changes inside before you commit them.

    Once you’re comfortable with using it by yourself, then I suggest running something like forgejo locally to be your own code server. Then you can play and learn how the two parts work together.

    Generally, you need to give yourself a little time. You need to do the work. Be efficient…sure, but don’t try to force it to be quicker than the time you need to learn.