spartanatreyu
You should put this in codepen so people don’t need to clone a repo to see it.
For example, here’s a 3d css-only thing I was fiddling with: https://codepen.io/spartanatreyu/pen/yPyNjw?editors=0100
This doesn’t seem overly useful.
It’s a list taken out of a bunch of books with no regard for how something can be the best path in one language and a smell in another language.
Look at this page for example: https://luzkan.github.io/smells/imperative-loops
It suggests using functional loop methods (.map()
, .reduce()
, .filter()
) instead of using imperative loops (for
, for in
, for each
) but completely disregards the facts that imperative loops also have access to the break
, continue
, and return
keywords to improve performance.
For example: If I have an unsorted list of 1000 cars which includes a whole bunch of information per car (e.g. color, year manufactured, etc…), and I want to know if there were any cars were manufactured before the year 1980, I can run an imperative loop through the list and early return true if I find one, and only returning false if I haven’t found one by the end of the list.
If the third car was made in 1977, then I have only iterated through 3 cars to find my answer.
But if I were to try this with only functional loops, I would have to iterate through all 1000 cars before I had my answer.
A website with blind rules like this is going to lead to worse code.
At least once every few days while coding, usually to do one of the following:
-
Select multiple things in the same file at the same time without needing to click all over the place
Normally I use multicursor keyboard shortcuts to select what I want and for the trickier scenarios there are also commands to go through selections one at a time so you can skip certain matches to end up with only what you want.
But sometimes there are too many false matches that you don’t want to select by hand and that’s where regex comes in handy.
For instance, finding:
- parent but not apparent, transparent, parentheses, apparently, transparently
- test but not latest, fastest, testing, greatest, shortest
- trie but not entries, retries, countries, retrieve
- http but not https
… which can be easily done by searching for a word that doesn’t include a letter immediately before or immediately after: e.g.
\Wtest\W
. -
Search for things across all files that come back with too many results that aren’t relevant
Basically using the same things above.
-
Finding something I already know makes a pattern. Like finding all years:
\d{4}
, finding all versions:\d+\.\d+\.\d+
, finding random things that a linter may have missed such as two empty lines touching each other:\n\s*\n\s*\n
, etc…
I’ve got to say, seeing this:
https://github.com/zed-industries/zed/network
instead of something like this:
https://fork.dev/blog/posts/collapsible-graph/
or this:
https://miro.medium.com/v2/resize:fit:4800/format:webp/0*60NIVdYj2f5vETt2.png
feels pretty damn legacy to me.
I’m under the impression that there’s two reasons we don’t have it in chromium yet:
- Google initially ignored jpeg-xl but then everyone jumped on it and now they feel they have to create a post-hoc justification for not supporting it earlier which is tricky and now they have a sunk cost situation to keep ignoring it
- Google today was burnt by the webp vulnerability which happened because there was only one decoder library and now they’re waiting for more jpeg-xl libraries which have optimizations (which rules out reference implementations), good support (which rules out libraries by single authors), have proven battle-hardening (which will only happen over time) and are written safely to avoid another webp style vulnerability.
Google already wrote the wuffs language which is specifically designed to handle formats in a fast and safe way but it looks like it only has one dedicated maintainer which means it’s still stuck on a bus factor of 1.
Honestly, Google or Microsoft should just make a team to work on a jpg-xl library in wuffs while adobe should make a team to work on a jpg-xl library in rust/zig.
That way everyone will be happy, we will have two solid implementations, and they’ll both be made focussing on their own features/extensions first so we’ll all have a choice among libraries for different needs (e.g. browser lib focusing on fast decode, creative suite lib for optimised encode).
What to know about blue supermoons:
- They literally mean nothing.
- The change is imperceptible to everyone.
- Expect useless clickbait slop about it until it passes.
That’s 41 degrees for everyone who doesn’t measure things in bird per gun.