Any pronouns. 33.

Professional developer and amateur gardener located near Atlanta, GA in the USA.

I’m using a new phone keyboard, please forgive typos.

  • 60 Posts
  • 2.84K Comments
Joined 3 years ago
cake
Cake day: June 13th, 2023

help-circle

  • Disclaimer: I am not a rust developer, but I am a professional developer with over ten years experience.

    I think folks telling you things like “you should learn X language before Y language” are not giving you the best advice. I often understand their arguments. The advice is typically “don’t learn X high level language before Y low level one.” But if we need to start lower, where would that advice end? Must someone really understand transistors before writing hello world in Python? No! Absolutely not.

    Learning any programming language will make you better at all programming languages. There is no perfect starting place. There is no bad starting place.

    Think about it like this. Someone tells you before learning to drive a car with automatic transmission you should learn manual. They say it’ll make you appreciate the automatic transmission more and that it’s easier to go from manual to automatic than from automatic to manual. Well, a more relevant question is do you plan to ever drive a manual on a normal basis. If the answer is no, you don’t plan on ever using it apart from learning how to, why bother? If you ever need to learn it, you can learn it. You’ll be better at driving by then and can focus on shifting gears without having to struggle to also focus on all the rest of the driving things you do (like staying in the lane, going the right speed not hitting people, etc.)

    If you only want to learn C just so you better appreciate things in other languages, don’t bother. Learn the language you want to use. If you want to use C, go for it! There’s nothing wrong with it. A lot of folks want to learn both Rust and C because they want to learn both and stick their toes in everything. That’s fine too! Just don’t feel obligated because you think it’s the best way forward.




  • It’s hard to paint it in broad strokes, but yeah that was part of it. The one that really comes to mind for me is this thing called ilog which tried to map phrases in English to code (sort of like Gherkin does for tests, but I actually like Gherkin). It effectively hid very important logic for how the system worked in this really weird layer that you had to use a special IDE for that was super difficult to get working properly. I remember that seeing the text descriptions was sort of easy but seeing what actually happened was really difficult. There was a view that would actually give you something that was like code but it was just too difficult to get to. Even then, it was something generated, not something you could edit.

    I’ve sort of thought about this a lot because it’s fascinating to me. I think the best option for stuff like this if you want to really pursue it is to use “beginner friendly” languages (Python comes to mind, despite me hating it lol) with some sort of easy web interface to upload and download them. Maybe use JavaScript since it works nice in the browser and can be run right there for tests or whatever. Make some sort of sandbox to limit what can be done or just have devs more actively review it (maybe a PR process). Maybe even have the webtool just be a front end for a tool that interacts with git (or some forge like GitHub specifically if it needs to do stuff like opening pull requests).