Use w3m for archiving

This commit is contained in:
David Eisinger
2024-01-17 12:04:56 -05:00
parent c5f0c6161a
commit ae64f3eb0a
80 changed files with 28830 additions and 29811 deletions

View File

@@ -1,126 +1,123 @@
* Site
+ [1]Home
+ [2]About me
* Blog
+ [3]Posts
+ [4]Categories
* Post
+ [5]Comments
+ [6]Related
Site
[1]Home
[2]About me
Blog
[3]Posts
[4]Categories
Post
[5]Comments
[6]Related
No one actually wants simplicity
by [7]Luke Plant
Posted in:
* [8]Rants
* [9]Software development
* [10]Web development
by [7]Luke Plant
Posted in:
— August 22, 2023 18:49
• [8]Rants
• [9]Software development
• [10]Web development
The reason that modern web development is [11]swamped with complexity
is that no one really wants things to be simple. We just think we do,
while our choices prove otherwise.
— August 22, 2023 18:49
A lot of developers want simplicity in the same way that a lot of
clients claim they want a fast website. You respond “OK, so we can
remove some of these 17 Javascript trackers and other bloat thats
making your website horribly slow?” no, apparently those are all
critical business functionality.
The reason that modern web development is [11]swamped with complexity is that
no one really wants things to be simple. We just think we do, while our choices
prove otherwise.
In other words, they prioritise everything over speed. And then they
wonder why using their website is like rowing a boat through a lake of
molasses on a cold day using nothing but a small plastic spoon.
A lot of developers want simplicity in the same way that a lot of clients claim
they want a fast website. You respond “OK, so we can remove some of these 17
Javascript trackers and other bloat thats making your website horribly slow?”
no, apparently those are all critical business functionality.
The same is often true of complexity. The real test is the question
“what are you willing to sacrifice to achieve simplicity?” If the
answer is “nothing”, then you dont actually love simplicity at all,
its your lowest priority.
In other words, they prioritise everything over speed. And then they wonder why
using their website is like rowing a boat through a lake of molasses on a cold
day using nothing but a small plastic spoon.
When I say “sacrifice”, I dont mean that choosing simplicity will mean
you are worse off overall simplicity brings massive benefits. But it
does mean that there will be some things that tempt you to believe you
are missing out.
The same is often true of complexity. The real test is the question “what are
you willing to sacrifice to achieve simplicity?” If the answer is “nothing”,
then you dont actually love simplicity at all, its your lowest priority.
For every developer, it might be something different. For one, the
tedium of having to spend half an hour a month ensuring that two
different things are kept in sync easily justifies the adoption of a
bulky framework that solves that particular problem. For another, the
ability to control how a checkbox animates when you check it is of
course a valid reason to add another 50 packages and 3 layers of
frameworks to their product. For another, adding an abstraction with
thousands of lines of codes, dozens of classes and page after page of
documentation in order to avoid manually writing a [12]tiny factory
function for a test is a great trade-off.
When I say “sacrifice”, I dont mean that choosing simplicity will mean you are
worse off overall simplicity brings massive benefits. But it does mean that
there will be some things that tempt you to believe you are missing out.
Of course we all claim to hate complexity, but its actually just
complexity added by other people that we hate — our own bugbears are
always exempted, and for things we understand we quickly become unable
to even see there is a potential problem for other people. Certainly
there are frameworks and dependencies that justify their existence and
adoption, but working out which ones they are is hard.
For every developer, it might be something different. For one, the tedium of
having to spend half an hour a month ensuring that two different things are
kept in sync easily justifies the adoption of a bulky framework that solves
that particular problem. For another, the ability to control how a checkbox
animates when you check it is of course a valid reason to add another 50
packages and 3 layers of frameworks to their product. For another, adding an
abstraction with thousands of lines of codes, dozens of classes and page after
page of documentation in order to avoid manually writing a [12]tiny factory
function for a test is a great trade-off.
I think a good test of whether you truly love simplicity is whether you
are able to remove things you have added, especially code youve
written, even when it is still providing value, because you realise it
is not providing enough value.
Of course we all claim to hate complexity, but its actually just complexity
added by other people that we hate — our own bugbears are always exempted, and
for things we understand we quickly become unable to even see there is a
potential problem for other people. Certainly there are frameworks and
dependencies that justify their existence and adoption, but working out which
ones they are is hard.
Another test is what you are tempted to do when a problem arises with
some of the complexity youve added. Is your first instinct to add even
more stuff to fix it, or is it to remove and live with the loss?
I think a good test of whether you truly love simplicity is whether you are
able to remove things you have added, especially code youve written, even when
it is still providing value, because you realise it is not providing enough
value.
The only path I can see through all this is to cultivate an almost
obsessive suspicion of [13]FOMO. I think thats probably key to
learning to [14]say no.
Another test is what you are tempted to do when a problem arises with some of
the complexity youve added. Is your first instinct to add even more stuff to
fix it, or is it to remove and live with the loss?
The only path I can see through all this is to cultivate an almost obsessive
suspicion of [13]FOMO. I think thats probably key to learning to [14]say no.
Links
* [15]Discussion of this post on Lobsters
[15]Discussion of this post on Lobsters
You may also like: [16]§
* [17]Super-fast Sphinx docs, and SNOB driven development
* [18]Test smarter, not harder
* [19]Announcement: Django Views - The Right Way
* [20]Wedding hacks - seating planner using simulated annealing
* [21]Wedding hacks - John Lewis gift list hyperlink
* [22]A prayer to the programming gods
* [23]Why learning Haskell/Python makes you a worse programmer
[17]Super-fast Sphinx docs, and SNOB driven development
[18]Test smarter, not harder
[19]Announcement: Django Views - The Right Way
[20]Wedding hacks - seating planner using simulated annealing
[21]Wedding hacks - John Lewis gift list hyperlink
[22]A prayer to the programming gods
[23]Why learning Haskell/Python makes you a worse programmer
Comments [24]§
Comments should load when you scroll to here...
Comments should load when you scroll to here...
Copyright Luke Plant
Copyright Luke Plant
Built using [25]Nikola
Powered by [26]DigitalOcean
Built using [25]Nikola
Powered by [26]DigitalOcean
References
1. https://lukeplant.me.uk/
2. https://lukeplant.me.uk/personal/
3. https://lukeplant.me.uk/blog/
4. https://lukeplant.me.uk/blog/categories/
5. https://lukeplant.me.uk/blog/posts/no-one-actually-wants-simplicity/#comments
6. https://lukeplant.me.uk/blog/posts/no-one-actually-wants-simplicity/#related
7. https://lukeplant.me.uk/
8. https://lukeplant.me.uk/blog/categories/rants/
9. https://lukeplant.me.uk/blog/categories/software-development/
10. https://lukeplant.me.uk/blog/categories/web-development/
11. https://www.youtube.com/watch?v=BtJAsvJOlhM
12. https://lukeplant.me.uk/blog/posts/test-factory-functions-in-django/
13. https://en.wikipedia.org/wiki/Fear_of_missing_out
14. https://grugbrain.dev/#grug-on-saying-no
15. https://lobste.rs/s/ao2x0v/no_one_actually_wants_simplicity
16. https://lukeplant.me.uk/blog/posts/no-one-actually-wants-simplicity/#related
17. https://lukeplant.me.uk/blog/posts/super-fast-sphinx-docs/
18. https://lukeplant.me.uk/blog/posts/test-smarter-not-harder/
19. https://lukeplant.me.uk/blog/posts/announcement-django-views-the-right-way/
20. https://lukeplant.me.uk/blog/posts/wedding-hacks---seating-planner-using-simulated-annealing/
21. https://lukeplant.me.uk/blog/posts/wedding-hacks---john-lewis-gift-list-hyperlink/
22. https://lukeplant.me.uk/blog/posts/a-prayer-to-the-programming-gods/
23. https://lukeplant.me.uk/blog/posts/why-learning-haskell-python-makes-you-a-worse-programmer/
24. https://lukeplant.me.uk/blog/posts/no-one-actually-wants-simplicity/#comments
25. https://getnikola.com/
26. https://m.do.co/c/cef485980f20
References:
[1] https://lukeplant.me.uk/
[2] https://lukeplant.me.uk/personal/
[3] https://lukeplant.me.uk/blog/
[4] https://lukeplant.me.uk/blog/categories/
[5] https://lukeplant.me.uk/blog/posts/no-one-actually-wants-simplicity/#comments
[6] https://lukeplant.me.uk/blog/posts/no-one-actually-wants-simplicity/#related
[7] https://lukeplant.me.uk/
[8] https://lukeplant.me.uk/blog/categories/rants/
[9] https://lukeplant.me.uk/blog/categories/software-development/
[10] https://lukeplant.me.uk/blog/categories/web-development/
[11] https://www.youtube.com/watch?v=BtJAsvJOlhM
[12] https://lukeplant.me.uk/blog/posts/test-factory-functions-in-django/
[13] https://en.wikipedia.org/wiki/Fear_of_missing_out
[14] https://grugbrain.dev/#grug-on-saying-no
[15] https://lobste.rs/s/ao2x0v/no_one_actually_wants_simplicity
[16] https://lukeplant.me.uk/blog/posts/no-one-actually-wants-simplicity/#related
[17] https://lukeplant.me.uk/blog/posts/super-fast-sphinx-docs/
[18] https://lukeplant.me.uk/blog/posts/test-smarter-not-harder/
[19] https://lukeplant.me.uk/blog/posts/announcement-django-views-the-right-way/
[20] https://lukeplant.me.uk/blog/posts/wedding-hacks---seating-planner-using-simulated-annealing/
[21] https://lukeplant.me.uk/blog/posts/wedding-hacks---john-lewis-gift-list-hyperlink/
[22] https://lukeplant.me.uk/blog/posts/a-prayer-to-the-programming-gods/
[23] https://lukeplant.me.uk/blog/posts/why-learning-haskell-python-makes-you-a-worse-programmer/
[24] https://lukeplant.me.uk/blog/posts/no-one-actually-wants-simplicity/#comments
[25] https://getnikola.com/
[26] https://m.do.co/c/cef485980f20