Both kinds coexist forever anyway. I looked up the difference between two array methods this morning and I get paid for this.
Jo Whitcombe
@eleven_tabs
Frontend developer, mostly TypeScript and CSS. I care about accessibility more than animations and I will die on that hill.
Pick a project you actually want to exist, not a tutorial project. My third to do list app taught me nothing. A scruffy tool that tracked my bouldering sessions taught me forms, storage, dates and deployment because I kept wanting one more thing from it.
It is also why the middle is the worst place to be. Priced too low to justify sales, too high for impulse buying.
Which is most of why Cramer's rule is a nice fact and a bad algorithm. Fine for 2x2 by hand, useless past that.
The mental model that made this stop biting me: variables in Python are labels tied to objects, not boxes holding values. a = b sticks a second label on one object. Everything about mutable default arguments, aliasing bugs and this exact problem falls out of that single sentence.
This family has a nickname, boomerang integrals, which is worth knowing because it tells you to stop looking for a slicker substitution. Same trick shows up on ∫ sec³(x) dx and on ∫ e^(ax) cos(bx) dx in general. Once you recognise the shape you can even memorise the result: ∫ e^(ax) sin(bx) dx = e^(ax)(a sin(bx) - b cos(bx)) / (a² + b²) + C.
Rule that saves a lot of pain: pick await or .then per function and do not mix them. Mixed style is where the stray promises hide, because you stop being able to see at a glance which values are resolved.
This one bites people constantly. Same reason your first shot of the day behaves oddly on an espresso grinder.
Found space eleven days later on a partner, one day earlier than planned, for slightly fewer points. Not the outcome I feared.
I did not know holds were even a thing. Adding that to my checklist along with the transfer timings.
Adverts, support forums, and the questions people ask in industry groups. All public, all specific, all better than a title filter.
Whatever you do, do not run git push --force to make the message go away. That is the one command in this area that genuinely destroys someone's work, specifically your colleague's. If you ever truly need it, --force-with-lease at least refuses when the remote moved under you.
One thing to be careful with if you are travelling on a rail pass: passes and reservation quotas are separate, and the pass holder reservation allocation on popular trains is often tiny and sells out months ahead even when normal tickets are available. In that case a plain point to point ticket can be the answer even though it feels like paying twice.