We do it as an extreme form of access control. Our workstations cannot reach any of our systems. Thus if a laptop is stolen, nothing if real value is lost.
We do it as an extreme form of access control. Our workstations cannot reach any of our systems. Thus if a laptop is stolen, nothing if real value is lost.
Being good at your own work makes you useful.
However being strategic, thinking about the bigger picture, AND being able to effectively communicate that while navigating the complex social interactions of your leadership team, that makes you valued and will lead to a path to leadership (managerial or technical).
So many of is have poor social skills. It pays to focus on them and not just the skills relevant to your tasks at hand.
Also librarians are some of the most overeducated and underpaid people out there. Thank you for what you do.
The important ideas here are that each state is moved in to the method that transitions to the next state. This way you're "giving away" your ownership of the data. This is great for preventing errors. You cannot retain access to stale state.
And by using the From trait to implement transitions, you ensure that improper transitions are impossible to represent.
It's a great pattern and has only grown in use since this was written.
I believe you use colon as a path separator. At least that's what I remember from working with CW back in the 90s.
I thought long long was 64bit on CW 4 on m68k. Was it not?
I also have caterscts that have made screen time progressively less fun for long periods of time. It's time that I took care of them.
There's somebody in the registrar's office whose job is to be responsible for the production process of registration. They are minimally staffed and given just enough resources to run that process. Likely at some point their leadership told them they had to make an API so that they could integrate with other systems. Due to poor funding and lack of skills, just doing that is a full time/major job.
Then some student comes along and says "hey look if I scrape this API, I can make an app that helps users! That's what APIs are for, right!?" The student is likely quite smart and probably built something that is useful.
But students aren't full time software engineers. They lack knowledge and context about how to build production systems that handle the load during the registration crush and also don't cause undue load on the backend API servers.
So when the dean comes to the head of IT for Registration, and says "wait, this student just did something that you were supposed to do, and it looked really easy", you just made the IT person's life much harder but didn't actually necessarily solve the problem. Now the IT person has to defend what they have done, while looking bad... and is not getting any further resources to fix the issue.
I think this is a variant of the "why don't you just..." and chesterton's fence. That is, if you're inexperienced, it's often easy to come up with a naive solution without understanding the context, that kind of works but that actually makes things overall worse. For example, what if your app crashed the registration backends during the middle of registration. Are you, the clever student, on call during registration (24/7) for your app, and in contact with the folks who run the registration backends?
It's easy to criticize the IT folks at Colleges but they are not resourced to handle things like this.
This is spot on and way more likely than my contrived example. The point holds this is political as all things are in University environments.
Another interesting observation I made from my time working at a University is that it was one of the most toxic and political work environments I've ever had the displeasure to work in.
I've realized most of my blog post is not really about NixOS, it's just about this particular TUXEDO laptop requiring special tweaks to work properly. I've set up Debian 13 with Nix (plus Home Manager) in a VM to try it out and have realized that on the real laptop I would need to perform the same tweaks: install special drivers, install the TUXEDO Control Center (albeit using a supported .deb), and add those same kernel params. The only "care-free" option would be using TUXEDO OS, which I could explore. I've run NixOS on e.g. an AMD ThinkPad T14 and it was seamless, with no tweaks needed.
I suppose using something other than NixOS would indeed make some things easier (in my case Vanta, `pinentry` programs, Playwright and Cypress) and would perhaps let me live a more hands-off experience. I currently run `nix flake update` on my system way too often... but other than that, NixOS is not really getting in the way, at least as far as using this laptop goes.
The missing applet for tuxedo-rs would be a great opportunity to "scratch an itch" and learn some new technology.
You have some options on the language you write the applet in if you're not ready to jump in to Rust or C.
Might be a great way to learn some stuff outside of web development.
Good luck.