If automated tests/linters are a part of your build system, then they basically are breaking at compile time. (Having to write tests to mimic functionality of a compiler seems wasteful to me though)
Type checking is a form of proof. It proves your system is type safe. You would need billions or trillions of tests to achieve type safety equivalent to a type checker.
A successful test only proves something for a single test case. In fact it is impossible to do the equivalent of type checking in the runtime code of your program unless the runtime code has the ability to self "reflect" on it's own source code.
There are also complex type systems that can prove correctness and completely eliminate the need for tests all together but this style of programming is really challenging and time consuming.
All of the pivotal points in my career came from serendipitous moments that happened with coworkers outside of my core team at the office/at lunch/at holiday parties. That kind of natural cross pollination is near dead when working
fully remote.
I don't work a typical job but I do operate in a space where in-person interactions can create opportunities. I think you can emulate a bit of that aspect by being proactive with incidental communications. Obviously nothing forceful, but just staying friendly with people - asking questions, offering help, showing interest, building general rapport.
Email them after something has been launched: "Hey - design of that new contact form looks great!" Find little excuses to be complimentary. Or if there's slim, existing rapport, ask a couple of people for feedback. If you don't get much in return, try others.
Thanks for the response! Kneejerkingly that feels weird, but that's surely because I've never been apart of cold emails/messages like that. I guess I just have to make that part of my new normal.
I think a key is not to try or push too hard. It's lighthearted and casual. You're not measuring any attempt for success or getting despondent if no one cares - you're just being sociable and ultimately should eventually make connections or develop rapport. Unless you are seriously unlikeable, people will remember those that give them feedback or are nice to them without being transparent in trying to get something for themselves.
And if you're not naturally sociable, convince yourself that this is the type of person you have chosen to be. "I'm the type of person that makes these small efforts."
I always think of it in basketball/coaching terms. If there's a non-shooter at the top of the key and the coaching instruction is to sag off them, don't react instinctively and rush out to defend. Just stick to the process and the odds are that over time the smart method plays to your advantage. Don't get upset if people don't reply (they might be busy, for one thing) and don't overwhelm them with replies if they do.
I'm very social in person, it's just the "cold email" part of it that is off putting for me. There's no observable social norm around this from my perspective. You can be a wallfly at an event and pick up norms, but you can't do that will chat/email. Maybe it's a generational gap thing, but the only times I get that type of interaction is from vendors who want something, group emails, or it's from someone I already know quite well.
All of the pivotal points in my career came from delivering quality software, on time and under budget. That kind of work cannot happen with the constant distraction of in-office work.
They sometimes go deep, but that is more at the discretion of the interviewee than Lex. Lex is usually asking questions about topics he has only tangencial knowledge in but is the expertise of the interviewee.
The Chris Lattner episodes are great, and James Gosling had some fun stories in there, and Kernighan had a good interview as well.
(Despite the comment clearly being flamewar bait...)
Most of the other comments are correctly suggesting to just not exit emacs. Something opening slowly once at the beginning of a long workflow is hardly an issue. If you must open something quickly over and over again, being proficient in a secondary lightweight editor like vim wouldn't be a bad suggestion.
I bought an eink monitor. Overall great except I had to switch to light mode for everything since ghosting was an issue. It had a high enough refresh rate to be workable.
(there were warnings though that using the higher refresh rate settings would greatly affect longevity of the screen though.)
I greatly prefer dark mode for my normal monitors. I greatly prefer light mode for the eink monitor. My multi-monitor setup went exactly as well as you might imagine.
Also the eink monitor I bought for $1k is quite small by today's standards, so I couldn't utilize as effectively as a vertical monitor which keeps more continuous text visible at a time.
The tech on its own? 7/10. I love it and it only lost points because the driver documentation and accompanying tool interface wasn't fully translated from the original Chinese. Ghosting issues and a relatively slow refresh rate were known tradeoffs at purchase time. so can't fault it for that.
I used copilot to learn the crufty parts of bash and to pick up swift from zero. The smaller the problem you're trying to solve the easier it is for copilot to generate it perfectly for you.
Think of it like a snippet engine on steroids. It's a huge value add.
Google photos is pretty amazing. I enter a search for "car" and immediately can see the photos os several of the cars I've owned over the years.
One day I needed to remember when I had travelled to a certain city, searched on my Google photos and it instantly showed the photos I took in the city, including the exact dates.
Yes, I know letting Google know all about my life like that through photos may not be the greatest idea... but wow, does the photo search work nicely?!
The google photos image search is amazing. The other day I was trying to remember how long it had been since I smashed my toe doing yard work so I tried searching “toe nail” and it pulled up exactly the picture I was looking for.