Same, had to scroll too far to see another nixos user
Scissor for sure
I've been using one full time for about five years now without issue. Even kind of like having to move around a little
I'd like to be able to say it'll work, I've been gaming on Linux for years and just finished Doom Eternal at 5120x1440 at 120fps
But I have the previous generation top end cpu and gpu, 16 core something and a 5900xt iirc, so we can't quite compare
One thing I did notice though is that your cpu seems weirdly overloaded? Or at least, the windows values are very different from the Linux ones? Are you dual booting? Or did you maybe reset something in the bios whilst switching?
Just wondering if you might be looking in the wrong place
Is that cpu one of those with an embedded gpu? That you're maybe running the wrong hardware?
Nm, looked it up, it's a mobile cpu, no idea unfortunately
I have had a couple T14s without issue, did you remember to change the suspend mode in the bios to Linux?
We use about seven ThinkPad T16 and P16s professionally with zero issues. Can recommend
Edit: the AMD versions, those generally work better with Linux
Although a bit long, I do like this almost impossible to ignore example of self documenting code :)
A header might be useful, although there's likely better ways to (not) document what each sql statement does.
But inline documentation? I'd suggest trying to work around that. Here's an explanation as to why: https://youtu.be/Bf7vDBBOBUA
If possible, and as much as possible, things should simply make enough sense to be self documenting. With only the high level concepts actually documented. Everything else is at risk to be outdated or worse, confuse
My advice to learning test automation in this form is: don't
Look up the testing trophy, try to do everything using any tool but Selenium until you absolutely have to. You'll notice that you can come very far using integration tests, you'll also notice the tests are fast and reliable. Something selenium tests rarely are.
For frontend, look at testing-library or storybook with test runners. Former is more lightweight but a hassle to debug, latter is heavier but much more visual and easy to maintain. Both are not flaky and fast and easy to run in a ci pipeline.
Run your tests as close as possible to the logic, you'll get the quickest feedback.
Once you're done with all this, make a happy flow E2E test or two. And I'd use typescript instead of Java. Then you have some hope of a frontend dev wanting to help you maintain it. And playwright instead of selenium, simply more modern and thought out
Pretty happy with nixos these days, after the initial (crazy) learning curve. But I really like the creative simplicity of this idea
No sure about 64gb, but for performance/watt and reliable Linux I can really recommend the Amd p16s and t16(s?) machines from Lenovo. Have about seven in the office and they are excellent.
I too, as someone in devops, am wondering what you need that much memory for. Do you simply really like VMs? :)
Also, have you considered doing the really heavy stuff remotely? Whenever I need desktop type power (16 physical cores and 128gb memory) I simply wake the desktop, ssh into it and do it there.
I had an extreme, as nice as it was it kind of sucked on Linux due to all the dual gpu weirdness (working hdmi or battery longevity, pick one)
Has this changed recently? Because it used to be due to the wiring of hdmi though the external gpu
I thought it had to do with the fact that most themes on Linux consist of a large collection of dotfiles, dots, rice. But that might just be me
Tbh, these days WSL2 might be slightly better than macOS at being Linux. As it is Linux (in a very transparent vm) instead of posix or *nix
But for most dev work all three are good options. I've noticed that once you start deploying against stuff like kubernetes or, less so, doing docker stuff you run into limitations on Mac and wsl2. Just random weirdness, especially with new the m1 chips and say cockroachdb. At that point there's no substitute for the real thing :)
Feel like you only received half of, possible good, advice:
I used 'two years, up or out', in my career. Who cares if you work somewhere for a longer period of time as long you keep progressing in all the various metrics of career progression?
It's when things become stale that out is a good idea
Completely agree, Knowing what you don't know and being able and willing to learn are the most important things
You're the second person to mention no vcs, I've never seen a company like this and I was a professional job hopper for ten years (consultant, then freelance dev)
Are there still 'developers' out there using an ftp client to develop their php app directly on prod like its 2002? I simply can't think of a normal, workable project without some kind of vcs
Dont want to call anyone out, because most of the questions are good. It's the sheer quantity, I counted between 10 and 20 questions. An interview should be fun, don't stress me out please
Although I would say that one list is far too focused on financials, you're a dev, not an investor. Some other lists make me want to ask, 'who hurt you?'
Maybe it's because we're a small company focused on hard problems with unknown solutions with a bunch of intelligent and flexible, fast thinking people. We do all the various buzzwords, microservices, clusters, resilience, automated testing trophies, reproducible dev envs, machine vision, machine learning, various p=np problems, etc.
But if the lists are too detailed and rigid I might wonder if you're better off at a more standard company tackling standard problems in a standardized manner. If this comes of as derogatory. The reverse can also be said, that we're a bunch of incompetent cowboys. It's a style thing as well :) (slow is smooth, smooth is fast is a principle I like. We follow all the useful best practices when it comes to cicd, testing and code. I do not have the time for rework)
I enjoy not knowing what I'm doing, if you don't enjoy the cutting edge (and falling of said edge once in a while) you're not going to to enjoy working here :)
Edit: about your list in particular, they're good questions, just try to ask them conversationally instead of slapping a sheet on paper on the table and rattling them off. Except for the macOS thing. We're a Linux shop, noob ;)
As a company owner and lead dev of 15 years, I'll be honest. If someone started with some of the barrage of detailed questions I see here I'd start to wonder whether I'd want to hire that person.
Although then again, I don't even ask all that many questions myself. Prefer to get a (technical) conversation going whilst gauging intelligence, speed and flexibility of thought and general character.
Thrn again, we handle all the main (software development) concerns I see here and I tend to be very flexible as long as someone is productive.
What I'm trying to say is, relax? :)