heckanoobs
Joined 8 years ago
Joined 8 years ago
Lodash also differs from the standard lib's implementation, notably it's too permissive. Take this example:
const uhoh = null
_.forEach(uhoh, () => {})
uhoh.forEach(() => {})
lodash's forEach has no problem running on a falsey value (it gives you back the value) whereas standard lib leads you to a TypeError.
Two thoughts here. The standard lib forces the programmer to think more about types, which is a good thing. Second is that lodash's more loosey goosey approach acts as vendor lock-in. In two years, when there's 60 lines and 3 files of separation btwn uhoh's assignment and the _.forEach invocation, you won't know whether it's expected to be null or not. So you won't know if you should replace the code with
uhoh.forEach(...)
or
(uhoh || []).forEach(...)
There's probably a handful of functions in lodash that are still useful but why take on the security risk and maintenance of another package dependency if you can just copy a couple ten-liners into your own utils folder? It's not like the world is going to come up with a more performant debounce anytime soon.
I guess lodash also relies on jquery which is in the same boat. es6+ has stolen a lot of its thunder and target-aware transpilation is a better approach to cross browser support
This one is even easier to spot because it recommends lodash in 2018
Some things I visited to blow time like imgur have infinite scroll in their apps but are paginated on their mobile site, so I just visit the mobile site and stop after one page. I had disabled infinite scroll in RES at first but eventually left Reddit altogether.
I no longer browse app stores, Netflix, hulu, etc. I already know what I want to watch and search for it directly.
I was bored at first but then I started filling my time with more productive hobbies, which was the point. Infinite content providers are designed to steal all your time.
It's crazy how little I use the internet now. I never realized what it had become until I put some restrictions in place that ended up blocking out like 90% of the web.
If it's one thing entitled early adopters and east bay commuters have in common, it's that they DGAF about the sense of community in SF. So they park these things in the most selfish ways possible. I swear some of them have to be doing it on purpose. I've seen them blocking turn styles at embarcadero station before.
I had a friend visiting from out of state and usually the first criticism of SF I hear is something about homelessness as we pass through the 'loin. But this time we were by embarcadero and it was "did a scooter gang of children all get raptured at once?"
People also take a wide berth around the scooters so they congest sidewalks even if leaned to one side.
If they come back I hope they do it by replacing the stupid bike docking stations with scooter docking stations. Scooters are a better fit for that model. Pay homeless ppl to return them to the docks and solve two SF problems at once
Then you just develop the app as any other demo-with-upsell app. Users even continue to get bug fixes and other updates after they let the license lapse.
In cases where features are removed, combined, refactored, you'll have to be judicious about what timestamp you apply to the refactor. I would resolve in the customer's favor personally.
Edit: Thinking on this more you might also want a rule like feature flags are only implemented at the view layer. That way your biz logic never gets tripped up on flag checks as features cross paths under the sheets. So its does require a fair amount of code discipline to pull this off
Anyway, my advice is write down your own thoughts and discoveries. You'd be surprised how much content there is when you start collecting it all in one place and it will help you be more critical of your inner workings
I don't know of a word that captures what feels like an arbitrage-ish assault on our law books. Without knowing that word I can only suggest something too generalized like organized crime economy