This doesn't take into account that you need to live somewhere.
If you spend $2K on rent (which gets no return) and put $1K into the SPY500 every month or put all $3K into your house, you will be far, far ahead with real estate.
Of the many good comments, this is the one that IMHO is the most helpful.
I got my first real job in a very down employment market--much worse than today. Got skills, learned how business worked. Found a pigeonhole where I could profitably work for myself based on the new skills. Built a reputation. Was hired by folks who needed my expertise, etc. The key for me was to get an accurate read on the employment market and let it guide my decisions.
My path night not be directly reproducible, but the orientation in OP's post nails the kind of thinking that's needed.
They didn't lift and shift many employees. These are primarily legal changes. Safra Catz is still in California (as are most senior execs), Ellison in Hawaii.
Is there a reasonably good IDE for Nim that provides debugging, specifically the full debugging experience (Nim code rather than C, breakpoints, inspect/modify values, etc.)? That's been the gating factor for me trying it. What's the present situation?
I see comments like this fairly often and in my entire career (I'm 53) I've never had to use a debugger. For inspection of values, I write small functions and unit tests or just output to stderr in debug modes set with env vars. I've always thought that the need to use a debugger was a code smell- too much cyclomatic complexity of single functions.
Sure! Just compile with nim c --lineDir=on or drop `lineDir=on` in your $HOME/.config/nim/nim.cfg (or per project NimScript .nims or per file foo.nim.cfg or ...) and source-level debugging with gdb on Linux works..
mostly at the level of Nim source, although various things are likely to "leak through" like mangled names (though in fairness, lower-level assembly notions leak through in "C source level" debugging...).
Beware, though, that since around Spring 2024 this can make the tinycc/tcc backend infinite loop (but otherwise tcc can be a nice way to get fast development iteration).
Also recently Nim’s generated C code started using Itanium name mangling, which oddly has become the defacto name mangling method for C++ on Linux and other platforms.
Meaning you get pretty function names with generic types and all included with debuggers that support it. Works better with ldb as gdb seems to refuse to recognize it.
> I hate to say it but turn off HN, this place a hype machine designed to make you feel bad. It's like "Roast and Toast" x 1000 on here, not reality. It's toxic in a very passive-aggressive way
I have a completely different experience of HN than you do. There are the stray toxic folks, sure, but overall, this is one of the best dev forums--actively moderated, generally filled with intelligent comments, and often offering good advice. Just look at the thoughtful and understanding answers to this very post.
If you spend $2K on rent (which gets no return) and put $1K into the SPY500 every month or put all $3K into your house, you will be far, far ahead with real estate.
reply