After a brief hiatus, I'm ready to get back into being productive, but with some more reflection on the purpose of my projects.
2019 January 5, Saturday
Today, I was feeling sick, so I spent most of my time at home. I felt like trying an experiment with Rust to see if I could interface with a game controller. Using a pretty straightforward wrapper around SDL2 from Crates.io (package here), I was able to make the controller rumble, then with a bit more work, I was able to read in values inside a game loop. Along the way, I'm learning how numbers and math work in Rust, and getting more familiar with the language. I feel like I understand the spirit and idea of most of what I'm seeing, but I need to get more familiar with patterns, idiomatic usage, and syntax. The Rust Language Server works pretty good, with some shortcomings, like the lack of auto-complete on a variable with an inferred type from a math expression, and the lack of hopping around "Go to definition" from library code. Hopefully these things get fixed soon, because the errors, warnings, and suggestions, as well as a "cargo watch" project makes the development loop very painless. I'm loving this language so far, and hope to use it more in the future!
2019 January 17
My Family Tree project is on a brief hold while I press with mad fury to try to re-implement a chunk of code at work in Rust. The learning curve is present, but I can see myself ascending it at a satisfactory rate. I love how much work has been put into making this a usable language - a linter, a language completion server, an excellent package manager, lots of documentation, well-thought-out language features, and an ecosystem management tool that allows for fast iterations and updates. I hope this language has a bright future, and I hope that we can take advantage of a tool that makes it easier to do what we need to do. I'm doing this work nearly all in the evening, making sure that I have chances to take breaks. It's currently pretty late as well, so I should retire.