Earlier quoted context omitted.
> And I’d take the full stack dev before a front end one So you think one person can't know the entire stack but also half of the stack is not complex/important enough to be worth specializing in?
No, I just would have to think really hard to recall a front end specialist who didn’t get bogged down in fad chasing or wrote code better than a backend dev half-assing it.
Drunk Post: Things I've Learned as a Sr Engineer
211–220 of 510 posts
Re: Drunk Post: Things I've Learned as a Sr Engineer
#212> Algorithms and data strictures are important--to a point For me, 90% of day-to-day algorithms use is not writing O(nm) or O(n^2) code, and knowing which data structures to use to avoid it (usually a hashtable, occasionally a heap or balanced tree).
Re: Drunk Post: Things I've Learned as a Sr Engineer
#213>Don't meet your heroes. I paid 5k to take a course by one of my heroes. He's a brilliant man, but at the end of it I realized that he's making it up as he goes along like the rest of us. I thought they were going to go the direction of "he's an asshole" and was ready to accept that, but this particular criticism is actually disturbing. People with strong visions can often appear to be "making it up as they go along,…
Re: Drunk Post: Things I've Learned as a Sr Engineer
#214Earlier quoted context omitted.
TypeScript, PHP, and Python have support for typing and the commiserate IDE benefits, and I'd imagine these languages account for a super majority of software written in dynamic languages.
Yes, I've started using python again with mypy static typing. I can hardly still call it a "dynamically" typed language if I do that, though.
Re: Drunk Post: Things I've Learned as a Sr Engineer
#215Whiteboard paint exists.
Re: Drunk Post: Things I've Learned as a Sr Engineer
#216This one has started to dawn on me. I'm never going to love my job as much as I love my personal projects, so a job that I don't get very excited about but doesn't drain my energy is better than one that I get somewhat excited about but does drain my energy (not that it's impossible to have both, but it's rare)
Re: Drunk Post: Things I've Learned as a Sr Engineer
#217Re: Drunk Post: Things I've Learned as a Sr Engineer
#218Seriously. Fuck pandas. And fuck dark for encouraging it.
It has one of the more confusing interfaces I've seen, and operator overloading just makes it worse. Numpy, on the other hand, is fairly straightforward and intuitive (and to be fair, a much simpler tool).
Re: Drunk Post: Things I've Learned as a Sr Engineer
#219> The older I get, the more I appreciate dynamic languages. Exactly the opposite for me. I just can't stand hovering a variable or a parameter and not getting its exact type, or typing "." after a variable and not having my editor gives me all the available methods on that variable, or running my code just to discover that it instantly crashes because I made a typo or forgot an argument or passed the wrong argument o…
Re: Drunk Post: Things I've Learned as a Sr Engineer
#220Earlier quoted context omitted.
As I said in another ranty response in this thread, I do not understand how people enjoy spending time debugging trivial issues, that even a simple static type system would just plain tell them at compile time.
I've been programming for over 20 years too, and I like dynamic languages. I like them a lot more when they're properly tested and well architected, but even the tire fire codebases are at least debuggable. The compiled stuff helps with types catching the trivial bugs, yes, but it's way too complicated to quickly debug things like seg faults. Dynamic languages let you introspect and modify things way more easily, and…
Seg faults are a prime argument for static typing. The more static and stricter the type system, the less things like seg faults can even happen. Compare Rust to C (both are static, but one more than the other), and at the extreme end handwritten assembly (extremely dynamic). Those are languages used by kernel developers, where errant memory accesses of all kinds are a constant concern.
I don't know why dynamic languages would make introspecting things easier, or debugging in general. I agree that mocking can be easier with dynamic types. Compilation rarely takes long nowadays (incrementally it's usually just a few seconds), so the time saved in knowing that the code is still correct at least within the confines of the type system is well worth it.