Browse Source

Add the favicon metadata

master
David Larlet 3 months ago
parent
commit
505a8135b0
Signed by: David Larlet <david@larlet.fr> GPG Key ID: 3E2953A359E7E7BD
63 changed files with 124 additions and 17 deletions
  1. 61
    16
      cache.py
  2. 1
    0
      cache/2024/0676c7ccf1ab2b380641866789366d26/index.md
  3. 1
    0
      cache/2024/076169df8a4bd9dde9a4637c6b306dff/index.md
  4. 1
    0
      cache/2024/09c0739036ea4a8b6c985e127fe7e3c8/index.md
  5. 1
    0
      cache/2024/112d32ccefb9aec48180de42e1fe1534/index.md
  6. 1
    0
      cache/2024/1d60fc5548a6fe61da80a4e16892fa0c/index.md
  7. 1
    0
      cache/2024/1f40a33f9c57a16d420eb0868a129e96/index.md
  8. 1
    0
      cache/2024/1fe484434058e9c44d21bfebb0ddba31/index.md
  9. 1
    0
      cache/2024/284205d0f99390dd18d3af12ff53227c/index.md
  10. 1
    0
      cache/2024/291cddda62f18ec9355ec98761b7e9d9/index.md
  11. 1
    0
      cache/2024/30b40ff8034212e070dc7daf2b9406e9/index.md
  12. 1
    0
      cache/2024/34fec23081019abd741e0578b050c40e/index.md
  13. 1
    0
      cache/2024/3debc675a055d691b32c7d6904531eb4/index.md
  14. 1
    0
      cache/2024/3ea27fca4fabb81676fc1b98264f3bd8/index.md
  15. 1
    0
      cache/2024/40aada3cc8d6897fda5a277c4299c1fd/index.md
  16. 1
    0
      cache/2024/4a56aa5497e68df0c5bb1d5331203219/index.md
  17. 1
    0
      cache/2024/5030196507bcf3e06162e9eaed40abbe/index.md
  18. 1
    0
      cache/2024/55477786fc56b6fc37bb97231b634d90/index.md
  19. 1
    0
      cache/2024/62bf3ce6ef66e39b7f250a6123d92e66/index.md
  20. 1
    0
      cache/2024/668d0f82ae65b0e94ea76145057759a7/index.md
  21. 1
    0
      cache/2024/6c3a6c638625148d7bb6a5c438c9b22a/index.md
  22. 1
    0
      cache/2024/7136e0810bfa42c4a9ca798a55cd2d53/index.md
  23. 1
    0
      cache/2024/790f724c45b26de460f9eeac04d48884/index.md
  24. 1
    0
      cache/2024/7a223e552e8a8e3e11c759cbc5bc3ffa/index.md
  25. 1
    0
      cache/2024/7d2d2bce96cbc020423299e7de03d2cf/index.md
  26. 1
    0
      cache/2024/7ed7f4aefae1b5af33b3ec1f607a633f/index.md
  27. 1
    0
      cache/2024/82b88d48d8043d79425ce8afd8dff42e/index.md
  28. 2
    1
      cache/2024/84f8caf3e7f7b3de9e18281749c3687f/index.md
  29. 1
    0
      cache/2024/877ad04fd329c26c80113e15dec540df/index.md
  30. 1
    0
      cache/2024/877b1e29328f6ad1b6fef26d7407ec5f/index.md
  31. 1
    0
      cache/2024/87c468a4eddabe5d2c28e902d7f17504/index.md
  32. 1
    0
      cache/2024/956819385548bba6e768563b12edc2d6/index.md
  33. 1
    0
      cache/2024/99e7d2ba7e4adc69dbf0f1b2858a5248/index.md
  34. 1
    0
      cache/2024/9b4b5364526390ba1db9c4a651ea8311/index.md
  35. 1
    0
      cache/2024/9bc04d41d25fc73391116d99b7259a3d/index.md
  36. 1
    0
      cache/2024/9f8c0e75066c1882a3b4ce084e3223ed/index.md
  37. 1
    0
      cache/2024/a3ccfb51f65cd59f375d5424d243e012/index.md
  38. 1
    0
      cache/2024/b1da1249f2db388d7e84d6ad23c2fc5d/index.md
  39. 1
    0
      cache/2024/b31ba18e3de1fc479b79f1885043026a/index.md
  40. 1
    0
      cache/2024/b351cda8d2ccd73362ca1729845b7e79/index.md
  41. 1
    0
      cache/2024/b692faaa55fd2775e957b20e833e9e5e/index.md
  42. 1
    0
      cache/2024/b80f5159ee7ac70bcaa6a9fde16c2408/index.md
  43. 1
    0
      cache/2024/ba977526c7a8cab6935708b2cdba5c0c/index.md
  44. 1
    0
      cache/2024/c3272392d462da90874d32841e5caac8/index.md
  45. 1
    0
      cache/2024/c4751e7c80b292e3533ee6b3e057b702/index.md
  46. 1
    0
      cache/2024/c98206d38897264005bcd5b453d032b1/index.md
  47. 1
    0
      cache/2024/cd2fda3dae5d89990f73fbdaa1c3b491/index.md
  48. 1
    0
      cache/2024/cd9184008ba5d9e4c9be4d0a0eea4f60/index.md
  49. 1
    0
      cache/2024/ce5fdc61fd66cdb9ce548fb543eba986/index.md
  50. 1
    0
      cache/2024/d236f33cf82727313d17cb23bf36a395/index.md
  51. 1
    0
      cache/2024/d75afc90a9d3c3b5a56b69446795fbb5/index.md
  52. 1
    0
      cache/2024/da7e5578fd96fe31d46bfb207d041880/index.md
  53. 1
    0
      cache/2024/e5056f8e0e6acf87c5777ba5b3a2ba92/index.md
  54. 1
    0
      cache/2024/e5c1ca8e3beeb0d256a064832c3566aa/index.md
  55. 1
    0
      cache/2024/e8748af541273328d9aa9f1aeb1087b2/index.md
  56. 1
    0
      cache/2024/e990536ed88823f047296ea25a6b7933/index.md
  57. 1
    0
      cache/2024/ea2cfc9aa425a6967d2cacd9f96ceb9e/index.md
  58. 1
    0
      cache/2024/f4d2d42eba58062be910407690ae447c/index.md
  59. 1
    0
      cache/2024/faa1d8cae94da6838ff9351e5df791ca/index.md
  60. 1
    0
      cache/2024/fd6eda56671045e0c1e2d215e07f1a6f/index.md
  61. 1
    0
      cache/2024/ff566a58892db07815a327802fea66d3/index.md
  62. 1
    0
      cache/2024/ffaf50bf5d5e4cf870a618b518ee5ba7/index.md
  63. 1
    0
      templates/cache_article.md

+ 61
- 16
cache.py View File

archive_date: str archive_date: str
og_image: str og_image: str
description: str description: str
favicon: str


@staticmethod @staticmethod
def all(source_dir=CACHE_PATH): def all(source_dir=CACHE_PATH):
archive_date = metadata["archive_date"][0] archive_date = metadata["archive_date"][0]
og_image = metadata.get("og_image", [""])[0] og_image = metadata.get("og_image", [""])[0]
description = metadata.get("description", [""])[0] description = metadata.get("description", [""])[0]
favicon = metadata.get("favicon", [""])[0]
yield Cache( yield Cache(
title, content, url, hash_url, archive_date, og_image, description
title,
content,
url,
hash_url,
archive_date,
og_image,
description,
favicon,
) )


@staticmethod @staticmethod




def save( def save(
title, content, url, hash_url, archive_date, cache_path, og_image, description
title,
content,
url,
hash_url,
archive_date,
cache_path,
og_image,
description,
favicon,
): ):
template = environment.get_template("cache_article.md") template = environment.get_template("cache_article.md")
page = template.render( page = template.render(
archive_date=archive_date, archive_date=archive_date,
og_image=og_image, og_image=og_image,
description=description, description=description,
favicon=favicon,
) )
result_path = os.path.join(cache_path, "index.md") result_path = os.path.join(cache_path, "index.md")
open(result_path, "w").write(page) open(result_path, "w").write(page)
"""Fetch additional metadata.""" """Fetch additional metadata."""
data = lassie.fetch(url) data = lassie.fetch(url)
og_image = "" og_image = ""
favicon = ""
for image in data.get("images"): for image in data.get("images"):
if image.get("type") == "og:image":
image_type = image.get("type")
if image_type == "og:image" and not og_image:
og_image = image["src"] og_image = image["src"]
break
continue
elif image_type == "twitter:image" and not og_image:
og_image = image["src"]
continue
elif image_type == "favicon":
image_src = image["src"]
if not favicon:
favicon = image_src
elif ".ico" in favicon and ".ico" not in image_src:
favicon = image_src

if data.get("title") != title: if data.get("title") != title:
print(data.get("title"), "vs.", title, url) print(data.get("title"), "vs.", title, url)
description = description or data.get("description", "") description = description or data.get("description", "")
return og_image, description
return og_image, description, favicon




@cli @cli
def metadata(): def metadata():
"""Fetch additional metadata for existing archives.""" """Fetch additional metadata for existing archives."""
for cache in Cache.all(): for cache in Cache.all():
if cache.description or cache.url.startswith(
(
"https://www.la-grange.net",
"https://tw5.immateriel.fr",
"https://gilest.org",
"https://vasilis.nl",
"https://www.danmcquillan.org",
"https://public-inbox.org",
# That one is takin way too long.
if cache.url.startswith("https://tw5.immateriel.fr"):
print("Skipping", cache.url)
continue
if cache.favicon and (
cache.description
or cache.url.startswith(
(
"https://www.la-grange.net",
"https://gilest.org",
"https://vasilis.nl",
"https://www.danmcquillan.org",
"https://public-inbox.org",
)
) )
): ):
print("Skipping", cache.url) print("Skipping", cache.url)
continue continue
print("Fetching metadata for", cache.url, cache.title) print("Fetching metadata for", cache.url, cache.title)
og_image, description = fetch_metadata(
og_image, description, favicon = fetch_metadata(
cache.title, cache.url, cache.description cache.title, cache.url, cache.description
) )
save( save(
os.path.join(CACHE_PATH, cache.hash_url), os.path.join(CACHE_PATH, cache.hash_url),
og_image, og_image,
description, description,
favicon,
) )




os.makedirs(cache_path) os.makedirs(cache_path)
archive_date = date.today() archive_date = date.today()
# Caching a markdown file. # Caching a markdown file.
og_image, description = fetch_metadata(title, url, "")
og_image, description, favicon = fetch_metadata(title, url, "")
result_path = save( result_path = save(
title, content, url, hash_url, archive_date, cache_path, og_image, description
title,
content,
url,
hash_url,
archive_date,
cache_path,
og_image,
description,
favicon,
) )
# Generating the HTML file. # Generating the HTML file.
create(hash_url) create(hash_url)

+ 1
- 0
cache/2024/0676c7ccf1ab2b380641866789366d26/index.md View File

archive_date: 2024-01-31 archive_date: 2024-01-31
og_image: https://infrequently.org/2024/01/performance-inequality-gap-2024/single_core_scores.png og_image: https://infrequently.org/2024/01/performance-inequality-gap-2024/single_core_scores.png
description: How much HTML, CSS, and JavaScript can we afford? More than in years past, but much less than frontend developers are burdening users with. description: How much HTML, CSS, and JavaScript can we afford? More than in years past, but much less than frontend developers are burdening users with.
favicon: https://infrequently.org/assets/images/favicons/ino-dark-opt-192x192.png


<p>It's time once again to update our priors regarding the global device and network situation. What's changed since last year? And how much more HTML, CSS, and (particularly) JavaScript can a new project afford?</p> <p>It's time once again to update our priors regarding the global device and network situation. What's changed since last year? And how much more HTML, CSS, and (particularly) JavaScript can a new project afford?</p>
<p></p> <p></p>

+ 1
- 0
cache/2024/076169df8a4bd9dde9a4637c6b306dff/index.md View File

archive_date: 2024-01-07 archive_date: 2024-01-07
og_image: https://blog.professeurjoachim.com/media/pages/billet/ma-page-now-ou-plutot-en-ce-moment/4217ba82c9-1705597826/ogimage.png og_image: https://blog.professeurjoachim.com/media/pages/billet/ma-page-now-ou-plutot-en-ce-moment/4217ba82c9-1705597826/ogimage.png
description: La page /now a été proposée par Derek Sivers pour spécifier de manière très flexible un format de page web sur laquelle on peut en apprendre plus sur … description: La page /now a été proposée par Derek Sivers pour spécifier de manière très flexible un format de page web sur laquelle on peut en apprendre plus sur …
favicon: data:image/svg+xml,<svg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 100 100%22><text y=%22.9em%22 font-size=%2290%22 filter=%22hue-rotate(82deg)%22>🌿</text></svg>


<div class="big"><p>Si tu suis mon blog via RSS, déjà le flux est réparé (youpi), mais surtout tu as dû voir arriver une nouvelle page : “En ce moment”. Quès aco ?</p></div> <div class="big"><p>Si tu suis mon blog via RSS, déjà le flux est réparé (youpi), mais surtout tu as dû voir arriver une nouvelle page : “En ce moment”. Quès aco ?</p></div>



+ 1
- 0
cache/2024/09c0739036ea4a8b6c985e127fe7e3c8/index.md View File

archive_date: 2024-01-11 archive_date: 2024-01-11
og_image: https://thom4.net/images/thomas-parisot.jpg og_image: https://thom4.net/images/thomas-parisot.jpg
description: J’aurais pu m’en rendre compte il y a vingt ans, mais il me manquait le recul de deux décennies. description: J’aurais pu m’en rendre compte il y a vingt ans, mais il me manquait le recul de deux décennies.
favicon: https://thom4.net/assets/favicon-32x32.png


<p>J’aurais pu m’en rendre compte il y a vingt ans,<br> <p>J’aurais pu m’en rendre compte il y a vingt ans,<br>
mais il me manquait le recul de deux décennies.</p> mais il me manquait le recul de deux décennies.</p>

+ 1
- 0
cache/2024/112d32ccefb9aec48180de42e1fe1534/index.md View File

archive_date: 2024-01-16 archive_date: 2024-01-16
og_image: og_image:
description: Quand vous serez bien vieille, au soir, à la chandelle, Assise auprès du feu, dévidant et filant, Pierre de Ronsard description: Quand vous serez bien vieille, au soir, à la chandelle, Assise auprès du feu, dévidant et filant, Pierre de Ronsard
favicon:


<blockquote class="wp-block-quote"><p>Quand vous serez bien vieille, au soir, à la chan­delle,<br>Assise auprès du feu, dévi­dant et filant,</p><cite>Pierre de Ronsard</cite></blockquote> <blockquote class="wp-block-quote"><p>Quand vous serez bien vieille, au soir, à la chan­delle,<br>Assise auprès du feu, dévi­dant et filant,</p><cite>Pierre de Ronsard</cite></blockquote>



+ 1
- 0
cache/2024/1d60fc5548a6fe61da80a4e16892fa0c/index.md View File

archive_date: 2024-01-31 archive_date: 2024-01-31
og_image: og_image:
description: Definition of Deep Democracy The concept of Deep Democracy was developed by Arnold Mindell. It is defined as an attitude and a principle. Attitude: Deep Democracy is an attitude that […] description: Definition of Deep Democracy The concept of Deep Democracy was developed by Arnold Mindell. It is defined as an attitude and a principle. Attitude: Deep Democracy is an attitude that […]
favicon: https://iapop.com/wp-content/uploads/2018/03/iapop_world_icon-blue-150px-tiny.png


<h3>Definition of Deep Democracy</h3> <h3>Definition of Deep Democracy</h3>
<p>The concept of Deep Democracy was developed by Arnold Mindell. It is defined as an attitude and a principle.</p> <p>The concept of Deep Democracy was developed by Arnold Mindell. It is defined as an attitude and a principle.</p>

+ 1
- 0
cache/2024/1f40a33f9c57a16d420eb0868a129e96/index.md View File

archive_date: 2024-01-15 archive_date: 2024-01-15
og_image: https://blog.jim-nielsen.com/assets/img/twitter-card.png og_image: https://blog.jim-nielsen.com/assets/img/twitter-card.png
description: Writing about the big beautiful mess that is making things for the world wide web. description: Writing about the big beautiful mess that is making things for the world wide web.
favicon:


<p class="image-container"><img src="https://cdn.jim-nielsen.com/blog/2023/mcdonalds-tech.jpg" alt="Patent-application-like drawing with a person on a sofa looking at a TV with a hamburger on it and a caption bubble that says, “Say 'McDonalds' to end commercial”"> <p class="image-container"><img src="https://cdn.jim-nielsen.com/blog/2023/mcdonalds-tech.jpg" alt="Patent-application-like drawing with a person on a sofa looking at a TV with a hamburger on it and a caption bubble that says, “Say 'McDonalds' to end commercial”">



+ 1
- 0
cache/2024/1fe484434058e9c44d21bfebb0ddba31/index.md View File

archive_date: 2024-01-28 archive_date: 2024-01-28
og_image: og_image:
description: description:
favicon:


<figure> <figure>
<img src="https://www.la-grange.net/2024/01/23/3152-ciel.jpg" alt="Ciel nuageux au dessus de maisons. On ne voit que le premier étage des maisons."> <img src="https://www.la-grange.net/2024/01/23/3152-ciel.jpg" alt="Ciel nuageux au dessus de maisons. On ne voit que le premier étage des maisons.">

+ 1
- 0
cache/2024/284205d0f99390dd18d3af12ff53227c/index.md View File

archive_date: 2024-01-21 archive_date: 2024-01-21
og_image: https://brr.fyi/media/redeployment-part-two/redeployment-part-two-icon.jpg og_image: https://brr.fyi/media/redeployment-part-two/redeployment-part-two-icon.jpg
description: First flight to the South Pole after a long, isolated winter. Winterover staff handing over their work and preparing to depart. description: First flight to the South Pole after a long, isolated winter. Winterover staff handing over their work and preparing to depart.
favicon: https://brr.fyi/favicon-32x32.png


<p><em>This is part two of a multi-part series. Check out <p><em>This is part two of a multi-part series. Check out
<a href="https://brr.fyi/posts/redeployment-part-one">part one</a> if you haven’t already, then check out <a href="https://brr.fyi/posts/redeployment-part-one">part one</a> if you haven’t already, then check out

+ 1
- 0
cache/2024/291cddda62f18ec9355ec98761b7e9d9/index.md View File

archive_date: 2024-01-21 archive_date: 2024-01-21
og_image: https://ia.net/wp-content/uploads/2023/11/keep-it-real-writing-with-AI-1024x475.png og_image: https://ia.net/wp-content/uploads/2023/11/keep-it-real-writing-with-AI-1024x475.png
description: When ChatGPT came out one year ago, we wanted to know whether and how it could be used for writing. We put it to the test. description: When ChatGPT came out one year ago, we wanted to know whether and how it could be used for writing. We put it to the test.
favicon: https://ia.net/wp-content/themes/iA-library/assets/hotlink-ok/favicon-192x192.png


<p>When ChatGPT came out one year ago, we wanted to know whether and how it could be used for writing. We put it to the test and came up with a careful answer.</p> <p>When ChatGPT came out one year ago, we wanted to know whether and how it could be used for writing. We put it to the test and came up with a careful answer.</p>
<p>This article is part two of a series about the <a href="https://ia.net/topics/no-feature">history</a>, reason, and the <a href="https://ia.net/topics/ia-writer-7">design</a> of iA Writer 7, our cautious response to AI. In this article, we answer the following five questions:</p> <p>This article is part two of a series about the <a href="https://ia.net/topics/no-feature">history</a>, reason, and the <a href="https://ia.net/topics/ia-writer-7">design</a> of iA Writer 7, our cautious response to AI. In this article, we answer the following five questions:</p>

+ 1
- 0
cache/2024/30b40ff8034212e070dc7daf2b9406e9/index.md View File

archive_date: 2024-01-19 archive_date: 2024-01-19
og_image: og_image:
description: description:
favicon:


<pre>public-inbox - an "archives first" approach to mailing lists <pre>public-inbox - an "archives first" approach to mailing lists
------------------------------------------------------------ ------------------------------------------------------------

+ 1
- 0
cache/2024/34fec23081019abd741e0578b050c40e/index.md View File

archive_date: 2024-01-11 archive_date: 2024-01-11
og_image: https://www.quaternum.net/ og_image: https://www.quaternum.net/
description: Je découvre (très) tardivement ce _mantra_, ou plutôt ce positionnement récursif et infini : les pratiques modèlent les outils qui modèlent les pratiques etc. description: Je découvre (très) tardivement ce _mantra_, ou plutôt ce positionnement récursif et infini : les pratiques modèlent les outils qui modèlent les pratiques etc.
favicon:


<blockquote> <blockquote>
<p>When i first saw it, i felt it so nicely expressed something that had been deep in my heart. I continue to unfold its many meanings: both broader and more specific than F/LOSS culture.<br> <p>When i first saw it, i felt it so nicely expressed something that had been deep in my heart. I continue to unfold its many meanings: both broader and more specific than F/LOSS culture.<br>

+ 1
- 0
cache/2024/3debc675a055d691b32c7d6904531eb4/index.md View File

archive_date: 2024-01-09 archive_date: 2024-01-09
og_image: https://cdn.vox-cdn.com/thumbor/rI0hi-8y0YsMgQMRiktUVnB_dqY=/204x320:2796x1681/fit-in/1200x630/cdn.vox-cdn.com/uploads/chorus_asset/file/25205711/236934_The_Perfect_Webpage_Google_SEO.jpg og_image: https://cdn.vox-cdn.com/thumbor/rI0hi-8y0YsMgQMRiktUVnB_dqY=/204x320:2796x1681/fit-in/1200x630/cdn.vox-cdn.com/uploads/chorus_asset/file/25205711/236934_The_Perfect_Webpage_Google_SEO.jpg
description: How the internet reshaped itself around Google’s search algorithms — and into a world where websites look the same. description: How the internet reshaped itself around Google’s search algorithms — and into a world where websites look the same.
favicon: https://cdn.vox-cdn.com/uploads/chorus_asset/file/23989695/favicon_32x32.png


<div class="text-block "> <div class="text-block ">
<p>As the 14th season of Bravo’s <em>Real Housewives of New York City </em>came to a close this fall, I found myself on Reddit, reading rumors about the marriage and divorce timeline of one of the show’s stars. Redditors wanted more clues about a fishy relationship history to see if they could uncover a cheating scandal.</p> <p>As the 14th season of Bravo’s <em>Real Housewives of New York City </em>came to a close this fall, I found myself on Reddit, reading rumors about the marriage and divorce timeline of one of the show’s stars. Redditors wanted more clues about a fishy relationship history to see if they could uncover a cheating scandal.</p>

+ 1
- 0
cache/2024/3ea27fca4fabb81676fc1b98264f3bd8/index.md View File

archive_date: 2024-01-13 archive_date: 2024-01-13
og_image: og_image:
description: Update 9th January 2024: This post was clumsily written and failed to make the point I wanted it to make. I’ve published a follow-up, What I should have said about … description: Update 9th January 2024: This post was clumsily written and failed to make the point I wanted it to make. I’ve published a follow-up, What I should have said about …
favicon:


<p><em><strong>Update 9th January 2024</strong>: This post was clumsily written and failed to make the point I wanted it to make. I’ve published a follow-up, <a href="https://simonwillison.net/2024/Jan/9/what-i-should-have-said-about-ai/">What I should have said about the term Artificial Intelligence</a> which you should read instead.</em></p> <p><em><strong>Update 9th January 2024</strong>: This post was clumsily written and failed to make the point I wanted it to make. I’ve published a follow-up, <a href="https://simonwillison.net/2024/Jan/9/what-i-should-have-said-about-ai/">What I should have said about the term Artificial Intelligence</a> which you should read instead.</em></p>
<p><em>My original post follows.</em></p> <p><em>My original post follows.</em></p>

+ 1
- 0
cache/2024/40aada3cc8d6897fda5a277c4299c1fd/index.md View File

archive_date: 2024-01-09 archive_date: 2024-01-09
og_image: https://gericci.me/img/touch-icon-iphone-retina.png og_image: https://gericci.me/img/touch-icon-iphone-retina.png
description: Clues to Fix the Front Web description: Clues to Fix the Front Web
favicon: https://gericci.me/img/favicon.png


<p>In the previous articles of this series, we have seen <p>In the previous articles of this series, we have seen
<a href="we-need-to-talk-about-the-front-web-2.html"> <a href="we-need-to-talk-about-the-front-web-2.html">

+ 1
- 0
cache/2024/4a56aa5497e68df0c5bb1d5331203219/index.md View File

archive_date: 2024-01-09 archive_date: 2024-01-09
og_image: https://cdn.sanity.io/images/cgdhsj6q/production/558608ba2958fabcc2578bbceb58f5061460fb32-1024x1024.png?w=1000&fit=max&auto=format og_image: https://cdn.sanity.io/images/cgdhsj6q/production/558608ba2958fabcc2578bbceb58f5061460fb32-1024x1024.png?w=1000&fit=max&auto=format
description: An NPM user named PatrickJS launched a troll campaign with a package called "everything," which depends on all public npm packages. description: An NPM user named PatrickJS launched a troll campaign with a package called "everything," which depends on all public npm packages.
favicon: https://socket.dev/favicon-32x32.png


<p>Happy 2024, folks! Just when we thought we'd seen it all, an npm user named PatrickJS, aka <a class="chakra-link css-pmuo56" href="https://socket.dev/npm/user/gdi2290">gdi2290</a>, threw us a curveball. He (<a target="_blank" rel="noopener noreferrer" class="chakra-link css-pmuo56" href="https://uncenter.dev/posts/npm-install-everything/">along with a group of contributors</a>) kicked off the year with a bang, launching a troll campaign that uploaded an npm package aptly named <a class="chakra-link css-pmuo56" href="https://socket.dev/npm/package/everything"><code>everything</code></a>. This package, true to its name, depends on every other public npm package, creating millions of transitive dependencies.</p> <p>Happy 2024, folks! Just when we thought we'd seen it all, an npm user named PatrickJS, aka <a class="chakra-link css-pmuo56" href="https://socket.dev/npm/user/gdi2290">gdi2290</a>, threw us a curveball. He (<a target="_blank" rel="noopener noreferrer" class="chakra-link css-pmuo56" href="https://uncenter.dev/posts/npm-install-everything/">along with a group of contributors</a>) kicked off the year with a bang, launching a troll campaign that uploaded an npm package aptly named <a class="chakra-link css-pmuo56" href="https://socket.dev/npm/package/everything"><code>everything</code></a>. This package, true to its name, depends on every other public npm package, creating millions of transitive dependencies.</p>
<h3>The Chaos Unleashed</h3> <h3>The Chaos Unleashed</h3>

+ 1
- 0
cache/2024/5030196507bcf3e06162e9eaed40abbe/index.md View File

archive_date: 2024-01-11 archive_date: 2024-01-11
og_image: https://blog.jim-nielsen.com/assets/img/twitter-card.png og_image: https://blog.jim-nielsen.com/assets/img/twitter-card.png
description: Writing about the big beautiful mess that is making things for the world wide web. description: Writing about the big beautiful mess that is making things for the world wide web.
favicon:


<p>Here’s a thought: blogging is like composting.</p> <p>Here’s a thought: blogging is like composting.</p>
<p>The banana is what you’re after.</p> <p>The banana is what you’re after.</p>

+ 1
- 0
cache/2024/55477786fc56b6fc37bb97231b634d90/index.md View File

archive_date: 2024-01-07 archive_date: 2024-01-07
og_image: https://www.quaternum.net/ og_image: https://www.quaternum.net/
description: Le terme fabrique définit une approche spécifique dans la création et dans la production d’artefact, y compris dans le domaine de l’édition. description: Le terme fabrique définit une approche spécifique dans la création et dans la production d’artefact, y compris dans le domaine de l’édition.
favicon:


<p>Le terme <em>fabrique</em> définit une approche spécifique dans la création et dans la production d’artefact, y compris dans le domaine de l’édition. <p>Le terme <em>fabrique</em> définit une approche spécifique dans la création et dans la production d’artefact, y compris dans le domaine de l’édition.
Pour débuter un échange <em>épistolaire</em>, par carnets <a href="https://blank.blue/fabrique/la-fabrique-a-faire/">interposés</a>, je me lance enfin dans la définition de ce concept. Pour débuter un échange <em>épistolaire</em>, par carnets <a href="https://blank.blue/fabrique/la-fabrique-a-faire/">interposés</a>, je me lance enfin dans la définition de ce concept.

+ 1
- 0
cache/2024/62bf3ce6ef66e39b7f250a6123d92e66/index.md View File

archive_date: 2024-01-11 archive_date: 2024-01-11
og_image: og_image:
description: We realize then that it is just the patterns of events in space which are repeating in the building or the town: and nothing else. description: We realize then that it is just the patterns of events in space which are repeating in the building or the town: and nothing else.
favicon:


<blockquote> <blockquote>
<p> <p>

+ 1
- 0
cache/2024/668d0f82ae65b0e94ea76145057759a7/index.md View File

archive_date: 2024-01-13 archive_date: 2024-01-13
og_image: https://cdn.vox-cdn.com/thumbor/hq4l4HE5pl-5pmUyCbTfyveLxZs=/0x0:2050x1274/1200x628/filters:focal(1025x637:1026x638)/cdn.vox-cdn.com/uploads/chorus_asset/file/25127879/Coates_bridal_pic.png og_image: https://cdn.vox-cdn.com/thumbor/hq4l4HE5pl-5pmUyCbTfyveLxZs=/0x0:2050x1274/1200x628/filters:focal(1025x637:1026x638)/cdn.vox-cdn.com/uploads/chorus_asset/file/25127879/Coates_bridal_pic.png
description: Tessa Coates’ picture of one moment showing her in three different poses isn’t an iPhone Live Photo glitch or Photoshop; it’s multiple pictures stitched in “pano” mode. description: Tessa Coates’ picture of one moment showing her in three different poses isn’t an iPhone Live Photo glitch or Photoshop; it’s multiple pictures stitched in “pano” mode.
favicon: https://www.theverge.com/icons/favicon_32x32.png


<div class="duet--article--article-body-component"><p class="duet--article--dangerously-set-cms-markup duet--article--standard-paragraph mb-20 font-fkroman text-18 leading-160 -tracking-1 selection:bg-franklin-20 dark:text-white dark:selection:bg-blurple [&amp;_a:hover]:shadow-highlight-franklin dark:[&amp;_a:hover]:shadow-highlight-blurple [&amp;_a]:shadow-underline-black dark:[&amp;_a]:shadow-underline-white">Depending on how “online” you are, you may have seen a picture floating around socials with a strange quirk: a woman — comedian Tessa Coates — is standing in front of two mirrors in a bridal gown and, somehow, <a href="https://www.instagram.com/p/CzPGNmJIebC/">holding three poses at once</a>. Coates insisted in her Instagram post that the picture wasn’t altered; it just came out that way.</p></div> <div class="duet--article--article-body-component"><p class="duet--article--dangerously-set-cms-markup duet--article--standard-paragraph mb-20 font-fkroman text-18 leading-160 -tracking-1 selection:bg-franklin-20 dark:text-white dark:selection:bg-blurple [&amp;_a:hover]:shadow-highlight-franklin dark:[&amp;_a:hover]:shadow-highlight-blurple [&amp;_a]:shadow-underline-black dark:[&amp;_a]:shadow-underline-white">Depending on how “online” you are, you may have seen a picture floating around socials with a strange quirk: a woman — comedian Tessa Coates — is standing in front of two mirrors in a bridal gown and, somehow, <a href="https://www.instagram.com/p/CzPGNmJIebC/">holding three poses at once</a>. Coates insisted in her Instagram post that the picture wasn’t altered; it just came out that way.</p></div>
<div class="duet--article--article-body-component"><p class="duet--article--dangerously-set-cms-markup duet--article--standard-paragraph mb-20 font-fkroman text-18 leading-160 -tracking-1 selection:bg-franklin-20 dark:text-white dark:selection:bg-blurple [&amp;_a:hover]:shadow-highlight-franklin dark:[&amp;_a:hover]:shadow-highlight-blurple [&amp;_a]:shadow-underline-black dark:[&amp;_a]:shadow-underline-white">So what happened? Was it a glitched iOS Live Photo (the iOS feature that takes short videos and picks out the best one)? A faked image manipulated with Photoshop? A brief glimpse into three different, parallel realities? </p></div> <div class="duet--article--article-body-component"><p class="duet--article--dangerously-set-cms-markup duet--article--standard-paragraph mb-20 font-fkroman text-18 leading-160 -tracking-1 selection:bg-franklin-20 dark:text-white dark:selection:bg-blurple [&amp;_a:hover]:shadow-highlight-franklin dark:[&amp;_a:hover]:shadow-highlight-blurple [&amp;_a]:shadow-underline-black dark:[&amp;_a]:shadow-underline-white">So what happened? Was it a glitched iOS Live Photo (the iOS feature that takes short videos and picks out the best one)? A faked image manipulated with Photoshop? A brief glimpse into three different, parallel realities? </p></div>

+ 1
- 0
cache/2024/6c3a6c638625148d7bb6a5c438c9b22a/index.md View File

archive_date: 2024-01-29 archive_date: 2024-01-29
og_image: https://xn--dtour-bsa.studio/weeknotes/images/2023/12/vercors-pre-peret.jpg og_image: https://xn--dtour-bsa.studio/weeknotes/images/2023/12/vercors-pre-peret.jpg
description: Quatre années se sont écoulées depuis la première note hebdomadaire. 2024 est une année de dépassement : celle de ma plus longue activité professionnelle depuis que j’ai commencé à travailler en 2004. 20 ans. Bientôt la moitié de ma vie. description: Quatre années se sont écoulées depuis la première note hebdomadaire. 2024 est une année de dépassement : celle de ma plus longue activité professionnelle depuis que j’ai commencé à travailler en 2004. 20 ans. Bientôt la moitié de ma vie.
favicon: https://thom4.net/assets/favicon-32x32.png


<p>Quatre années se sont écoulées depuis <a href="https://détour.studio/weeknotes/1/">la première note hebdomadaire</a>. 2024 est une année de <em>dépassement</em> : celle de ma plus longue activité professionnelle depuis que j’ai commencé à travailler en 2004. 20 ans. Bientôt la moitié de ma vie.</p> <p>Quatre années se sont écoulées depuis <a href="https://détour.studio/weeknotes/1/">la première note hebdomadaire</a>. 2024 est une année de <em>dépassement</em> : celle de ma plus longue activité professionnelle depuis que j’ai commencé à travailler en 2004. 20 ans. Bientôt la moitié de ma vie.</p>
<p>J’ai demandé à <a href="https://fr.linkedin.com/in/marie-michel-b7758520">Marie Michel</a> ce qu’elle aurait aimé apprendre de mon activité en 2023. Un regard posé à la fois en rétrospective et en perspectives.</p> <p>J’ai demandé à <a href="https://fr.linkedin.com/in/marie-michel-b7758520">Marie Michel</a> ce qu’elle aurait aimé apprendre de mon activité en 2023. Un regard posé à la fois en rétrospective et en perspectives.</p>

+ 1
- 0
cache/2024/7136e0810bfa42c4a9ca798a55cd2d53/index.md View File

archive_date: 2024-01-19 archive_date: 2024-01-19
og_image: og_image:
description: A post from Jason Velazquez called “Where have all the websites gone?” crossed my socials. It’s a good lament about the dearth of interesting content on the internet and how we’re stuck in the same boring content silos. description: A post from Jason Velazquez called “Where have all the websites gone?” crossed my socials. It’s a good lament about the dearth of interesting content on the internet and how we’re stuck in the same boring content silos.
favicon: https://daverupert.com/favicon.ico


<p>A post from Jason Velazquez called “<a href="https://www.fromjason.xyz/p/notebook/where-have-all-the-websites-gone/">Where have all the websites gone?</a>” crossed my socials. It’s a good lament about the dearth of interesting content on the internet and how we’re stuck in the same boring content silos.</p> <p>A post from Jason Velazquez called “<a href="https://www.fromjason.xyz/p/notebook/where-have-all-the-websites-gone/">Where have all the websites gone?</a>” crossed my socials. It’s a good lament about the dearth of interesting content on the internet and how we’re stuck in the same boring content silos.</p>
<p>The question reminded me of a song by Pete Seeger called “<em>Where have all the flowers gone?</em>” In the song Pete wonders aloud about the flowers now missing from the field…</p> <p>The question reminded me of a song by Pete Seeger called “<em>Where have all the flowers gone?</em>” In the song Pete wonders aloud about the flowers now missing from the field…</p>

+ 1
- 0
cache/2024/790f724c45b26de460f9eeac04d48884/index.md View File

archive_date: 2024-01-28 archive_date: 2024-01-28
og_image: og_image:
description: description:
favicon:


<figure> <figure>
<img src="https://www.la-grange.net/2024/01/20/3134-carnets.jpg" alt="Carnets de notes en archéologie écrit en japonais avec des dessins."> <img src="https://www.la-grange.net/2024/01/20/3134-carnets.jpg" alt="Carnets de notes en archéologie écrit en japonais avec des dessins.">

+ 1
- 0
cache/2024/7a223e552e8a8e3e11c759cbc5bc3ffa/index.md View File

archive_date: 2024-01-07 archive_date: 2024-01-07
og_image: https://frantic.im/figma/og_opening_mail.png og_image: https://frantic.im/figma/og_opening_mail.png
description: First make the change easy, then make the easy change. description: First make the change easy, then make the easy change.
favicon: https://frantic.im/favicon.png


<p>I never liked opening envelopes; they’re tricky and ripping them open is annoying. My letters would get stuck or tear with the envelope.</p> <p>I never liked opening envelopes; they’re tricky and ripping them open is annoying. My letters would get stuck or tear with the envelope.</p>
<p>The mail just used to stack up, and I’d miss important stuff because of it.</p> <p>The mail just used to stack up, and I’d miss important stuff because of it.</p>

+ 1
- 0
cache/2024/7d2d2bce96cbc020423299e7de03d2cf/index.md View File

archive_date: 2024-01-16 archive_date: 2024-01-16
og_image: https://www.baldurbjarnason.com/favicon-96x96.png og_image: https://www.baldurbjarnason.com/favicon-96x96.png
description: This is a part of a series where I review the work I’ve done over the past couple of years. description: This is a part of a series where I review the work I’ve done over the past couple of years.
favicon: https://www.baldurbjarnason.com/dark-bird.svg


<p>It’s inevitable that once you decide to review your own business and media strategy, you start to rethink and review other decisions you’ve made in the past.</p> <p>It’s inevitable that once you decide to review your own business and media strategy, you start to rethink and review other decisions you’ve made in the past.</p>
<p>One of those decisions is <a href="https://deno.com/">Deno</a>, which I’ve used to most of my personal projects and experiments over the past couple of years. Most of these projects have been on the simpler side – command-line scripts or small websites. I made the <a href="https://softwarecrisis.dev/">softwarecrisis.dev</a> newsletter landing page using <a href="https://lume.land/">Lume and Deno</a>, for example. I used Deno to make most of the prototypes for the research project that followed <a href="https://www.colophon.cards/">Colophon Cards</a>. It’s very useful.</p> <p>One of those decisions is <a href="https://deno.com/">Deno</a>, which I’ve used to most of my personal projects and experiments over the past couple of years. Most of these projects have been on the simpler side – command-line scripts or small websites. I made the <a href="https://softwarecrisis.dev/">softwarecrisis.dev</a> newsletter landing page using <a href="https://lume.land/">Lume and Deno</a>, for example. I used Deno to make most of the prototypes for the research project that followed <a href="https://www.colophon.cards/">Colophon Cards</a>. It’s very useful.</p>

+ 1
- 0
cache/2024/7ed7f4aefae1b5af33b3ec1f607a633f/index.md View File

archive_date: 2024-01-24 archive_date: 2024-01-24
og_image: https://lobsoco.com/wp-content/uploads/2022/03/Utopies-Vague-3.jpg og_image: https://lobsoco.com/wp-content/uploads/2022/03/Utopies-Vague-3.jpg
description: Avec le soutien de nos partenaires Accédez ci-dessous aux principaux enseignements (classés par thématiques) de l’Observatoire. description: Avec le soutien de nos partenaires Accédez ci-dessous aux principaux enseignements (classés par thématiques) de l’Observatoire.
favicon: https://lobsoco.com/wp-content/uploads/2020/09/cropped-FAVICON-01-32x32.png


<h2>Explorer 3 modèles de société</h2> <h2>Explorer 3 modèles de société</h2>
<p>La première vague de l’Observatoire des perspectives utopiques a été réalisée en 2019. Notre désir d’explorer comment les Français se représentent une société idéale était né du sentiment que, le projet « moderne » ayant en quelque sorte rempli son contrat et révélant désormais surtout sa face sombre, les sociétés occidentales souffraient d’un manque d’idéaux, d’un déficit d’objectifs collectifs à atteindre, d’une panne du désir d’avenir.</p> <p>La première vague de l’Observatoire des perspectives utopiques a été réalisée en 2019. Notre désir d’explorer comment les Français se représentent une société idéale était né du sentiment que, le projet « moderne » ayant en quelque sorte rempli son contrat et révélant désormais surtout sa face sombre, les sociétés occidentales souffraient d’un manque d’idéaux, d’un déficit d’objectifs collectifs à atteindre, d’une panne du désir d’avenir.</p>

+ 1
- 0
cache/2024/82b88d48d8043d79425ce8afd8dff42e/index.md View File

archive_date: 2024-01-24 archive_date: 2024-01-24
og_image: https://cdn-blog.testdouble.com/img/social/plea-for-lean.3bebefc81990d30cfac86b0fb4b51b954caa42a793911c74b6cf339ab364b095.png og_image: https://cdn-blog.testdouble.com/img/social/plea-for-lean.3bebefc81990d30cfac86b0fb4b51b954caa42a793911c74b6cf339ab364b095.png
description: Niklaus Wirth's plea for lean software is even more valid today. description: Niklaus Wirth's plea for lean software is even more valid today.
favicon: https://cdn-blog.testdouble.com/img/favicon-dark.619c13e6bf2653dacd018c2ab016f32247574e7396f1bfe3ae0798f55f7ea079.png


<p>Our industry lost one of its great minds on New Year’s Day as Niklaus Wirth passed at the age of 89. My first real computer programming class in high school used Pascal, which he designed in 1970, and the majority of my college courses used Modula-2, which he also designed in 1975. Both of these languages advanced the field of programming with innovations like modules, one-pass compilation, and concurrent programming. The type safety, clarity, and compiler support made these languages very approachable and easy to learn, likely keeping me on the path of a career in our industry. One of his greatest contributions to our field, that seems eerily prescient now, is his article “A Plea for Lean Software” published in Computer magazine in 1995.</p> <p>Our industry lost one of its great minds on New Year’s Day as Niklaus Wirth passed at the age of 89. My first real computer programming class in high school used Pascal, which he designed in 1970, and the majority of my college courses used Modula-2, which he also designed in 1975. Both of these languages advanced the field of programming with innovations like modules, one-pass compilation, and concurrent programming. The type safety, clarity, and compiler support made these languages very approachable and easy to learn, likely keeping me on the path of a career in our industry. One of his greatest contributions to our field, that seems eerily prescient now, is his article “A Plea for Lean Software” published in Computer magazine in 1995.</p>
<p>The article laments the fact that we have been conditioned with significant advances in hardware, leading to software that is unnecessarily bloated. Humorously, the article begins by addressing how memory requirements jump “from several to many megabytes." I am writing this blog post in a browser window that is consuming 700MB while reviewing his article in Preview, clocking in at just shy of 1GB of memory consumption, almost proving his point 29 years later.</p> <p>The article laments the fact that we have been conditioned with significant advances in hardware, leading to software that is unnecessarily bloated. Humorously, the article begins by addressing how memory requirements jump “from several to many megabytes." I am writing this blog post in a browser window that is consuming 700MB while reviewing his article in Preview, clocking in at just shy of 1GB of memory consumption, almost proving his point 29 years later.</p>

+ 2
- 1
cache/2024/84f8caf3e7f7b3de9e18281749c3687f/index.md View File

url: https://lukew.com/ff/entry.asp?2036 url: https://lukew.com/ff/entry.asp?2036
hash_url: 84f8caf3e7f7b3de9e18281749c3687f hash_url: 84f8caf3e7f7b3de9e18281749c3687f
archive_date: 2024-01-13 archive_date: 2024-01-13
og_image: https://static.lukew.com/lukew_og_img1.png
og_image: https://static.lukew.com/lukew_og_img7.png
description: Too often, the process of design is cut short. When faced with user needs or product requirements, many designers draft a mockup or wireframe informed by what they've seen or experienced before description: Too often, the process of design is cut short. When faced with user needs or product requirements, many designers draft a mockup or wireframe informed by what they've seen or experienced before
favicon: https://static.lukew.com/lukew.ico


<p class="feature">Too often, the process of design is cut short. When faced with user needs or product requirements, many designers draft a mockup or wireframe informed by what they've seen or <a href="https://www.lukew.com/ff/entry.asp?2027">experienced before</a>. But that's actually when the design process starts, not ends.</p> <p class="feature">Too often, the process of design is cut short. When faced with user needs or product requirements, many designers draft a mockup or wireframe informed by what they've seen or <a href="https://www.lukew.com/ff/entry.asp?2027">experienced before</a>. But that's actually when the design process starts, not ends.</p>



+ 1
- 0
cache/2024/877ad04fd329c26c80113e15dec540df/index.md View File

archive_date: 2024-01-18 archive_date: 2024-01-18
og_image: https://craigmod.com/ridgeline/images/176/176.jpg og_image: https://craigmod.com/ridgeline/images/176/176.jpg
description: Kevin Kelly and my notes detailing everything we've learned walking and talking these past six years description: Kevin Kelly and my notes detailing everything we've learned walking and talking these past six years
favicon: https://craigmod.com/images/favicons/favicon-196x196.png


<p>Happy holidays, walkers!</p> <p>Happy holidays, walkers!</p>
<p><a href="https://kk.org">Kevin Kelly</a> and I began talking while walking together some twelve years ago, near his home in Pacifica. Eventually, we branched out, and for these past six years have been running more “formalized” walk-and-talks across five countries with some 40+ people. We’ve walked-and-talked in China, Spain, England, Japan, and Thailand. These experiences are some of the best weeks of our lives.</p> <p><a href="https://kk.org">Kevin Kelly</a> and I began talking while walking together some twelve years ago, near his home in Pacifica. Eventually, we branched out, and for these past six years have been running more “formalized” walk-and-talks across five countries with some 40+ people. We’ve walked-and-talked in China, Spain, England, Japan, and Thailand. These experiences are some of the best weeks of our lives.</p>

+ 1
- 0
cache/2024/877b1e29328f6ad1b6fef26d7407ec5f/index.md View File

archive_date: 2024-01-09 archive_date: 2024-01-09
og_image: https://hoho.com/images/building-ducts_hu595c7437e16b1c00c1f5d55887980baf_1496628_800x400_fill_q75_box_smart1.jpg og_image: https://hoho.com/images/building-ducts_hu595c7437e16b1c00c1f5d55887980baf_1496628_800x400_fill_q75_box_smart1.jpg
description: Early stage technology decisions must be, uncomfortably, a means to an end. description: Early stage technology decisions must be, uncomfortably, a means to an end.
favicon: https://hoho.com/favicon-16x16.png


<p>If you are the technical co-founder or early engineering lead at a startup, and you want to talk about your microservices, hand-rolled CI/CD, in-house monitoring stack, or any other unique part of your stack, I will say: Cool. Let’s riff. Take me deep, I’m ready.</p> <p>If you are the technical co-founder or early engineering lead at a startup, and you want to talk about your microservices, hand-rolled CI/CD, in-house monitoring stack, or any other unique part of your stack, I will say: Cool. Let’s riff. Take me deep, I’m ready.</p>
<p>But there’s something I’m likely to tell you in return, something I’ll probably insist you’re overlooking and need to internalize as soon as possible: <em>Your technology stack is not the product.</em></p> <p>But there’s something I’m likely to tell you in return, something I’ll probably insist you’re overlooking and need to internalize as soon as possible: <em>Your technology stack is not the product.</em></p>

+ 1
- 0
cache/2024/87c468a4eddabe5d2c28e902d7f17504/index.md View File

archive_date: 2024-01-11 archive_date: 2024-01-11
og_image: og_image:
description: description:
favicon:


<figure> <figure>
<img src="https://www.la-grange.net/2024/01/09/3045-glace.jpg" alt="Cubes de glace étalés sur la chaussée à côté de boîte en plastique et d'un poteau rouge. La glace a un peu fondu."> <img src="https://www.la-grange.net/2024/01/09/3045-glace.jpg" alt="Cubes de glace étalés sur la chaussée à côté de boîte en plastique et d'un poteau rouge. La glace a un peu fondu.">

+ 1
- 0
cache/2024/956819385548bba6e768563b12edc2d6/index.md View File

archive_date: 2024-01-28 archive_date: 2024-01-28
og_image: og_image:
description: description:
favicon:


<figure> <figure>
<img src="https://www.la-grange.net/2024/01/24/3154-herbe.jpg" alt="Couverte du livre la fraîcheur de l'herbe avec une illustration de graminées."> <img src="https://www.la-grange.net/2024/01/24/3154-herbe.jpg" alt="Couverte du livre la fraîcheur de l'herbe avec une illustration de graminées.">

+ 1
- 0
cache/2024/99e7d2ba7e4adc69dbf0f1b2858a5248/index.md View File

archive_date: 2024-01-08 archive_date: 2024-01-08
og_image: https://res.cloudinary.com/bendmyers/image/upload/v1656961915/benmyers.dev/semantic-selectors.png og_image: https://res.cloudinary.com/bendmyers/image/upload/v1656961915/benmyers.dev/semantic-selectors.png
description: See how building with accessible semantics from the get-go can give you expressive, meaningful style hooks for free. description: See how building with accessible semantics from the get-go can give you expressive, meaningful style hooks for free.
favicon: https://benmyers.dev/favicon-32x32.png


<hgroup class="heading-wrapper"> <hgroup class="heading-wrapper">
<h2 id="introduction" tabindex="-1">Introduction</h2> <h2 id="introduction" tabindex="-1">Introduction</h2>

+ 1
- 0
cache/2024/9b4b5364526390ba1db9c4a651ea8311/index.md View File

archive_date: 2024-01-29 archive_date: 2024-01-29
og_image: https://www.strategy-business.com/media/image/44400500b_thumb5_690x400.jpg og_image: https://www.strategy-business.com/media/image/44400500b_thumb5_690x400.jpg
description: Hybrid and remote work are complicating many of the collaborative challenges that were present long before the pandemic arrived. description: Hybrid and remote work are complicating many of the collaborative challenges that were present long before the pandemic arrived.
favicon: https://www.strategy-business.com/media/image/favicon22-16x16.png


<p>We’ve been thinking a lot about teams lately. As more companies release formal policies around hybrid and remote work, leaders are telling us that remote work has made working together, or teaming, difficult and has frayed the culture of their organizations. Of course, many companies, including our own, PwC, have long embraced remote work, with great success. And if we listen carefully to the types of problems leaders and workers say they’re encountering with teaming, the reality is that most of these issues existed prior to the pandemic.</p> <p>We’ve been thinking a lot about teams lately. As more companies release formal policies around hybrid and remote work, leaders are telling us that remote work has made working together, or teaming, difficult and has frayed the culture of their organizations. Of course, many companies, including our own, PwC, have long embraced remote work, with great success. And if we listen carefully to the types of problems leaders and workers say they’re encountering with teaming, the reality is that most of these issues existed prior to the pandemic.</p>



+ 1
- 0
cache/2024/9bc04d41d25fc73391116d99b7259a3d/index.md View File

archive_date: 2024-01-07 archive_date: 2024-01-07
og_image: og_image:
description: description:
favicon:


<figure> <figure>
<img src="https://www.la-grange.net/2023/07/10/0797-batiment-visage.jpg" alt="bâtiments avec deux signes blancs. L'ensemble donne un peu l'impression d'un visage."> <img src="https://www.la-grange.net/2023/07/10/0797-batiment-visage.jpg" alt="bâtiments avec deux signes blancs. L'ensemble donne un peu l'impression d'un visage.">

+ 1
- 0
cache/2024/9f8c0e75066c1882a3b4ce084e3223ed/index.md View File

archive_date: 2024-01-09 archive_date: 2024-01-09
og_image: https://daverupert.com/images/opengraph/demoloop.png?reset=1 og_image: https://daverupert.com/images/opengraph/demoloop.png?reset=1
description: The personal blog of Dave Rupert, web developer and podcaster from Austin, TX. description: The personal blog of Dave Rupert, web developer and podcaster from Austin, TX.
favicon: https://daverupert.com/favicon.ico


<p><picture> <p><picture>
<source media="(prefers-color-scheme: dark)" srcset="https://daverupert.com/images/posts/2022/squiggle-dark.png"></source> <source media="(prefers-color-scheme: dark)" srcset="https://daverupert.com/images/posts/2022/squiggle-dark.png"></source>

+ 1
- 0
cache/2024/a3ccfb51f65cd59f375d5424d243e012/index.md View File

archive_date: 2024-01-28 archive_date: 2024-01-28
og_image: https://www.nubero.ch/transfer/permanent/nubero_socialmedia_icon.png og_image: https://www.nubero.ch/transfer/permanent/nubero_socialmedia_icon.png
description: Nuberodesign: Agentur für Grafikdesign, Animation, Videoproduktion und Usability in Winterthur description: Nuberodesign: Agentur für Grafikdesign, Animation, Videoproduktion und Usability in Winterthur
favicon: https://www.nubero.ch/favicon.svg


<p>Form is Function in Graphical User Interfaces</p> <p>Form is Function in Graphical User Interfaces</p>
<p class="paragraph"> <p class="paragraph">

+ 1
- 0
cache/2024/b1da1249f2db388d7e84d6ad23c2fc5d/index.md View File

archive_date: 2024-01-09 archive_date: 2024-01-09
og_image: og_image:
description: description:
favicon:


<p><img src="https://www.danmcquillan.org/images/burnmill.jpg"></p> <p><img src="https://www.danmcquillan.org/images/burnmill.jpg"></p>
<p>I propose Data Luddism as a radical response to the productive power of big data and predictive algorithms. My starting point is not the Romantic neo-Luddism of Kirkpatrick Sale but the historical Luddism of 1811-1816, and the Luddites' own rhetoric regarding their resistance to 'obnoxious machines' [1].</p> <p>I propose Data Luddism as a radical response to the productive power of big data and predictive algorithms. My starting point is not the Romantic neo-Luddism of Kirkpatrick Sale but the historical Luddism of 1811-1816, and the Luddites' own rhetoric regarding their resistance to 'obnoxious machines' [1].</p>

+ 1
- 0
cache/2024/b31ba18e3de1fc479b79f1885043026a/index.md View File

archive_date: 2024-01-07 archive_date: 2024-01-07
og_image: https://blog.stephaniestimac.comundefined og_image: https://blog.stephaniestimac.comundefined
description: A ruthless look at when to use these two CSS text-wrap values. description: A ruthless look at when to use these two CSS text-wrap values.
favicon: https://stephaniestimac.com/imgs/favicon.ico


<p>At the start of the year I had written about how I wanted to spend this year writing about new CSS features landing in browsers. Life happened and it was in my best interest to do things off the web and away from my computer. But I'm picking this back up again because I'm genuinely back in a space to be exploring and creating things again. I wanted to start this little post off like this for anyone else who is struggling with burnout. It's okay to take a break. It's beneficial for your brain and the rest of you. Side projects will always be there to work on.</p> <p>At the start of the year I had written about how I wanted to spend this year writing about new CSS features landing in browsers. Life happened and it was in my best interest to do things off the web and away from my computer. But I'm picking this back up again because I'm genuinely back in a space to be exploring and creating things again. I wanted to start this little post off like this for anyone else who is struggling with burnout. It's okay to take a break. It's beneficial for your brain and the rest of you. Side projects will always be there to work on.</p>
<p>Now onto good ol' text-wrap.</p> <p>Now onto good ol' text-wrap.</p>

+ 1
- 0
cache/2024/b351cda8d2ccd73362ca1729845b7e79/index.md View File

archive_date: 2024-01-28 archive_date: 2024-01-28
og_image: https://alvaromontoro.com/images/blog/safari-toggle-0.webp og_image: https://alvaromontoro.com/images/blog/safari-toggle-0.webp
description: Toggle switches are a common request by Designers and Developers. Safari proposed a native way to create switches in HTML without the hassle of dealing with CSS or unnecessary control states. description: Toggle switches are a common request by Designers and Developers. Safari proposed a native way to create switches in HTML without the hassle of dealing with CSS or unnecessary control states.
favicon: https://alvaromontoro.com/fav.ico


<p>Native toggle switches landed in one browser. Safari introduced this new HTML control as part of the <a href="https://webkit.org/blog/14885/release-notes-for-safari-technology-preview-185/">Safari Technology Preview 185 release</a> and then <a href="https://developer.apple.com/documentation/safari-technology-preview-release-notes/stp-release-186#New-Features">expanded it in the 186 release</a>.</p> <p>Native toggle switches landed in one browser. Safari introduced this new HTML control as part of the <a href="https://webkit.org/blog/14885/release-notes-for-safari-technology-preview-185/">Safari Technology Preview 185 release</a> and then <a href="https://developer.apple.com/documentation/safari-technology-preview-release-notes/stp-release-186#New-Features">expanded it in the 186 release</a>.</p>



+ 1
- 0
cache/2024/b692faaa55fd2775e957b20e833e9e5e/index.md View File

archive_date: 2024-01-28 archive_date: 2024-01-28
og_image: og_image:
description: description:
favicon:


<figure> <figure>
<img src="https://www.la-grange.net/2024/01/26/3159-chauffage.jpg" alt="Détail de la lampe à chauffer."> <img src="https://www.la-grange.net/2024/01/26/3159-chauffage.jpg" alt="Détail de la lampe à chauffer.">

+ 1
- 0
cache/2024/b80f5159ee7ac70bcaa6a9fde16c2408/index.md View File

archive_date: 2024-01-07 archive_date: 2024-01-07
og_image: https://cdn.vox-cdn.com/thumbor/rOafi3kl1gaQXZiQjWeOdSYa44g=/0x0:2040x1360/1200x628/filters:focal(1020x680:1021x681)/cdn.vox-cdn.com/uploads/chorus_asset/file/22474342/acastro_210427_4564_basecamp_0001.jpg og_image: https://cdn.vox-cdn.com/thumbor/rOafi3kl1gaQXZiQjWeOdSYa44g=/0x0:2040x1360/1200x628/filters:focal(1020x680:1021x681)/cdn.vox-cdn.com/uploads/chorus_asset/file/22474342/acastro_210427_4564_basecamp_0001.jpg
description: Basecamp announced it would ban “societal and political discussions” at work. But the hardest conversations at work were about the company itself. Platformer’s Casey Newton spoke with half a dozen employees about the controversy. description: Basecamp announced it would ban “societal and political discussions” at work. But the hardest conversations at work were about the company itself. Platformer’s Casey Newton spoke with half a dozen employees about the controversy.
favicon: https://www.theverge.com/icons/favicon_32x32.png


<p class="duet--article--article-body-component"> <p class="duet--article--article-body-component">
<h3 class="duet--article--dangerously-set-cms-markup duet--article--standard-heading mb-20 mt-40 font-polysans text-26 font-medium leading-110 selection:bg-franklin-20 dark:text-white dark:selection:bg-blurple md:text-30 [&amp;&gt;a:hover]:shadow-highlight-franklin dark:[&amp;&gt;a:hover]:shadow-highlight-franklin [&amp;&gt;a]:shadow-underline-black dark:[&amp;&gt;a]:shadow-underline-white"><strong>I.</strong></h3></p> <h3 class="duet--article--dangerously-set-cms-markup duet--article--standard-heading mb-20 mt-40 font-polysans text-26 font-medium leading-110 selection:bg-franklin-20 dark:text-white dark:selection:bg-blurple md:text-30 [&amp;&gt;a:hover]:shadow-highlight-franklin dark:[&amp;&gt;a:hover]:shadow-highlight-franklin [&amp;&gt;a]:shadow-underline-black dark:[&amp;&gt;a]:shadow-underline-white"><strong>I.</strong></h3></p>

+ 1
- 0
cache/2024/ba977526c7a8cab6935708b2cdba5c0c/index.md View File

archive_date: 2024-01-16 archive_date: 2024-01-16
og_image: https://world.hey.com/jorge/d448bdec/representations/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBCQlJ3eHpnPSIsImV4cCI6bnVsbCwicHVyIjoiYmxvYl9pZCJ9fQ==--f579b9de96167f6689c8040e1984a393e4a86b84/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdDRG9UY21WemFYcGxYM1J2WDJacGJHeGJCMmtDc0FScEFuWUNPZ3h4ZFdGc2FYUjVhUzA2Q25OMGNtbHdWQT09IiwiZXhwIjpudWxsLCJwdXIiOiJ2YXJpYXRpb24ifX0=--5f3b12054ee1575e23e552561c36229a846c13ea/oziel-gomez-x7gz40Z9ObM-unsplash-2.jpg og_image: https://world.hey.com/jorge/d448bdec/representations/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBCQlJ3eHpnPSIsImV4cCI6bnVsbCwicHVyIjoiYmxvYl9pZCJ9fQ==--f579b9de96167f6689c8040e1984a393e4a86b84/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdDRG9UY21WemFYcGxYM1J2WDJacGJHeGJCMmtDc0FScEFuWUNPZ3h4ZFdGc2FYUjVhUzA2Q25OMGNtbHdWQT09IiwiZXhwIjpudWxsLCJwdXIiOiJ2YXJpYXRpb24ifX0=--5f3b12054ee1575e23e552561c36229a846c13ea/oziel-gomez-x7gz40Z9ObM-unsplash-2.jpg
description: Back in college, they told me that I would start my career writing code, but eventually, I would move to a position where I would ask others to code my designs. To celebrate that this turned out to be completely false, here are some assorted reflections as a 40-year-old programmer that looks back description: Back in college, they told me that I would start my career writing code, but eventually, I would move to a position where I would ask others to code my designs. To celebrate that this turned out to be completely false, here are some assorted reflections as a 40-year-old programmer that looks back
favicon: https://world.hey.com/jorge/avatar-d08cb3ee63ecbd49736f76ee2caffa4c99a1c0fd


<div> <div>
<figure class="attachment attachment--preview attachment--lightboxable attachment--jpg"> <figure class="attachment attachment--preview attachment--lightboxable attachment--jpg">

+ 1
- 0
cache/2024/c3272392d462da90874d32841e5caac8/index.md View File

archive_date: 2024-01-09 archive_date: 2024-01-09
og_image: https://fromjason.xyz/img/opengraph-60.png og_image: https://fromjason.xyz/img/opengraph-60.png
description: It feels like all the cool websites from the late 2000s are gone. But maybe we are looking at this the wrong way. Maybe it is us who vanished. description: It feels like all the cool websites from the late 2000s are gone. But maybe we are looking at this the wrong way. Maybe it is us who vanished.
favicon: https://www.fromjason.xyz/img/favicon.png


<p>It’s Tuesday morning. The year is 2009. You’re just waking up after a long and boozy New Year’s Eve with friends. Your head rings, and your mouth is the type of dry that makes you question your adulthood. You feel something scratch against your arm. Did you take a lover last night? Sort of. It’s a pizza box. Meat lovers.</p> <p>It’s Tuesday morning. The year is 2009. You’re just waking up after a long and boozy New Year’s Eve with friends. Your head rings, and your mouth is the type of dry that makes you question your adulthood. You feel something scratch against your arm. Did you take a lover last night? Sort of. It’s a pizza box. Meat lovers.</p>
<p>You reach for your phone. There’s no TikTok or Snapchat yet. Facebook and Instagram are a thing, but they exist as a type of social syndicator— a place to see what your friends were up to last night. You already know as much. The occasional whiff of rank vodka keeps your memory jogged. You tap the browser icon and start typing a webaddress, perhaps appending <code>www</code> as a precautionary relic. <em>Who got drunker than me</em>, you wonder. After a brief page load, you arrive at textsfromlastnight.com. “<em>I cant get the smell of ass out of my nose</em>,” reads the top post.</p> <p>You reach for your phone. There’s no TikTok or Snapchat yet. Facebook and Instagram are a thing, but they exist as a type of social syndicator— a place to see what your friends were up to last night. You already know as much. The occasional whiff of rank vodka keeps your memory jogged. You tap the browser icon and start typing a webaddress, perhaps appending <code>www</code> as a precautionary relic. <em>Who got drunker than me</em>, you wonder. After a brief page load, you arrive at textsfromlastnight.com. “<em>I cant get the smell of ass out of my nose</em>,” reads the top post.</p>

+ 1
- 0
cache/2024/c4751e7c80b292e3533ee6b3e057b702/index.md View File

archive_date: 2024-01-21 archive_date: 2024-01-21
og_image: og_image:
description: Je vois de plus en plus de femmes rejoindre l’informatique, et c’est une très bonne chose. Je vois aussi trop de femmes patir de sexisme ordinaire, se remettre en question encore et encore… et quitter le milieu au bout de quelques années. J’ai mis du temps à apprendre certaines choses. description: Je vois de plus en plus de femmes rejoindre l’informatique, et c’est une très bonne chose. Je vois aussi trop de femmes patir de sexisme ordinaire, se remettre en question encore et encore… et quitter le milieu au bout de quelques années. J’ai mis du temps à apprendre certaines choses.
favicon:


<p>Je vois de plus en plus de femmes rejoindre l’informatique, et c’est une très bonne chose. Je vois aussi trop de femmes patir de sexisme ordinaire, se remettre en question encore et encore… et quitter le milieu au bout de quelques années. J’ai mis du temps à apprendre certaines choses. Je voudrais vous faire gagner ces dix ans, pour qu’on arrive à une parité réelle dans le secteur numérique. Je m’adresse également à toutes les personnes qui souhaitent voir plus de femmes et personnes non binaires dans leurs équipes. Les femmes sont fortement incitées à faire un choix entre l’ambition (business and successful woman) et l’altruisme (femme qui colle aux codes et fait correctement son travail, loin de l’argent). Ce choix injuste et superflu résulte des stéréotypes que nous allons parcourir à travers cet article.</p> <p>Je vois de plus en plus de femmes rejoindre l’informatique, et c’est une très bonne chose. Je vois aussi trop de femmes patir de sexisme ordinaire, se remettre en question encore et encore… et quitter le milieu au bout de quelques années. J’ai mis du temps à apprendre certaines choses. Je voudrais vous faire gagner ces dix ans, pour qu’on arrive à une parité réelle dans le secteur numérique. Je m’adresse également à toutes les personnes qui souhaitent voir plus de femmes et personnes non binaires dans leurs équipes. Les femmes sont fortement incitées à faire un choix entre l’ambition (business and successful woman) et l’altruisme (femme qui colle aux codes et fait correctement son travail, loin de l’argent). Ce choix injuste et superflu résulte des stéréotypes que nous allons parcourir à travers cet article.</p>



+ 1
- 0
cache/2024/c98206d38897264005bcd5b453d032b1/index.md View File

archive_date: 2024-01-10 archive_date: 2024-01-10
og_image: https://ishadeed.com/assets/target-size/twitter-card.jpg og_image: https://ishadeed.com/assets/target-size/twitter-card.jpg
description: An interactive guide on designing better target sizes on the web. description: An interactive guide on designing better target sizes on the web.
favicon: https://ishadeed.com/assets/favicon-32x32.png


<h2 id="intro">Intro</h2> <h2 id="intro">Intro</h2>
<p>As a user, you need to interact with clickable UI elements like buttons, links, cards, and more.</p> <p>As a user, you need to interact with clickable UI elements like buttons, links, cards, and more.</p>

+ 1
- 0
cache/2024/cd2fda3dae5d89990f73fbdaa1c3b491/index.md View File

archive_date: 2024-01-11 archive_date: 2024-01-11
og_image: http://static1.squarespace.com/static/51e8148de4b01c1eb79c1977/5682f162b204d5635670f310/65544de372845e682bf5a326/1700503191865/11.20_world_not_audience.jpg?format=1500w og_image: http://static1.squarespace.com/static/51e8148de4b01c1eb79c1977/5682f162b204d5635670f310/65544de372845e682bf5a326/1700503191865/11.20_world_not_audience.jpg?format=1500w
description: don’t chase your audience, let them find your world. description: don’t chase your audience, let them find your world.
favicon: https://images.squarespace-cdn.com/content/v1/51e8148de4b01c1eb79c1977/1547586234044-PLNK9XVHXBYWZ5A1673H/favicon.ico?format=100w


<h2>build a world, not a marketing funnel </h2> <h2>build a world, not a marketing funnel </h2>
<p class="">in this digital age where everyone wants to “monetize” something, you constantly find yourself inside a marketing funnels — filled with shiny things, and quick-fix promises, and slippery slopes. </p> <p class="">in this digital age where everyone wants to “monetize” something, you constantly find yourself inside a marketing funnels — filled with shiny things, and quick-fix promises, and slippery slopes. </p>

+ 1
- 0
cache/2024/cd9184008ba5d9e4c9be4d0a0eea4f60/index.md View File

archive_date: 2024-01-31 archive_date: 2024-01-31
og_image: https://daringfireball.net/graphics/df-wide-card.png og_image: https://daringfireball.net/graphics/df-wide-card.png
description: A headset, a spatial productivity platform, and a personal entertainment device. description: A headset, a spatial productivity platform, and a personal entertainment device.
favicon: https://daringfireball.net/graphics/favicon.ico?v=005


<p>For the last six days, I’ve been simultaneously testing three entirely new products from Apple. The first is a VR/AR headset with eye-tracking controls. The second is a revolutionary spatial computing productivity platform. The third is a breakthrough personal entertainment device.</p> <p>For the last six days, I’ve been simultaneously testing three entirely new products from Apple. The first is a VR/AR headset with eye-tracking controls. The second is a revolutionary spatial computing productivity platform. The third is a breakthrough personal entertainment device.</p>



+ 1
- 0
cache/2024/ce5fdc61fd66cdb9ce548fb543eba986/index.md View File

archive_date: 2024-01-25 archive_date: 2024-01-25
og_image: og_image:
description: Deciphering Glyph, the blog of Glyph Lefkowitz. description: Deciphering Glyph, the blog of Glyph Lefkowitz.
favicon: https://blog.glyph.im/images/favicon.ico


<p>I am going to tell you why I don’t think you should sign your Git commits, even <p>I am going to tell you why I don’t think you should sign your Git commits, even
though doing so with SSH keys is now easier than ever. But first, to though doing so with SSH keys is now easier than ever. But first, to

+ 1
- 0
cache/2024/d236f33cf82727313d17cb23bf36a395/index.md View File

archive_date: 2024-01-07 archive_date: 2024-01-07
og_image: og_image:
description: Brave, as you know, is led by Brendan Eich. s homophobia is so disgusting that he was forced to resign as the leader... description: Brave, as you know, is led by Brendan Eich. s homophobia is so disgusting that he was forced to resign as the leader...
favicon: https://kagifeedback.org/assets/favicon-bmwk4ltf.png


<p>Our goal is to provide best web results in the world. That means including as many sources of search results we can get (even if may not like them personally) and this increases our resilience and lowers dependence on any single one.</p> <p>Our goal is to provide best web results in the world. That means including as many sources of search results we can get (even if may not like them personally) and this increases our resilience and lowers dependence on any single one.</p>
<p>We believe that Kagi users deserve to have the best search results in the world, from a wide range of diverse sources. This ensures that if you can not find something on Kagi, you can not find it anywhere else.</p> <p>We believe that Kagi users deserve to have the best search results in the world, from a wide range of diverse sources. This ensures that if you can not find something on Kagi, you can not find it anywhere else.</p>

+ 1
- 0
cache/2024/d75afc90a9d3c3b5a56b69446795fbb5/index.md View File

archive_date: 2024-01-07 archive_date: 2024-01-07
og_image: og_image:
description: description:
favicon:


<figure> <figure>
<img src="https://www.la-grange.net/2024/01/06/3008-furikake.jpg" alt="Feuilles de céleri et de persil, finement hâchées avec du zeste de citron."> <img src="https://www.la-grange.net/2024/01/06/3008-furikake.jpg" alt="Feuilles de céleri et de persil, finement hâchées avec du zeste de citron.">

+ 1
- 0
cache/2024/da7e5578fd96fe31d46bfb207d041880/index.md View File

archive_date: 2024-01-21 archive_date: 2024-01-21
og_image: https://brr.fyi/media/redeployment-part-one/redeployment-part-one-icon.jpg og_image: https://brr.fyi/media/redeployment-part-one/redeployment-part-one-icon.jpg
description: Sunrise at the bottom of the world. Preparing South Pole Station to welcome its first new arrivals in almost nine months. description: Sunrise at the bottom of the world. Preparing South Pole Station to welcome its first new arrivals in almost nine months.
favicon: https://brr.fyi/favicon-32x32.png


<p><em>This is part one of a multi-part series. Check out <p><em>This is part one of a multi-part series. Check out
<a href="https://brr.fyi/posts/redeployment-part-two">part two</a> and <a href="https://brr.fyi/posts/redeployment-part-two">part two</a> and

+ 1
- 0
cache/2024/e5056f8e0e6acf87c5777ba5b3a2ba92/index.md View File

archive_date: 2024-01-08 archive_date: 2024-01-08
og_image: og_image:
description: description:
favicon:


<p>Recently when I gave a coding assignment — an art directed web page about a font — a student asked: does it have to be <em>semantic and shit?</em> The whole class looked up, curious about the answer — <em>please let it be no!</em> I answered that no, it doesn’t have to be semantic and shit, but it does have to be well designed and the user experience should be well considered. Relieved, all of my students agreed. They do care about a good user experience.</p> <p>Recently when I gave a coding assignment — an art directed web page about a font — a student asked: does it have to be <em>semantic and shit?</em> The whole class looked up, curious about the answer — <em>please let it be no!</em> I answered that no, it doesn’t have to be semantic and shit, but it does have to be well designed and the user experience should be well considered. Relieved, all of my students agreed. They do care about a good user experience.</p>
<p><span id="more-2095"></span></p> <p><span id="more-2095"></span></p>

+ 1
- 0
cache/2024/e5c1ca8e3beeb0d256a064832c3566aa/index.md View File

archive_date: 2024-01-11 archive_date: 2024-01-11
og_image: og_image:
description: With his “ I am a poem I am not software” post Robin touched on an interesting problem related to personal websites. I’m not going to summarise … description: With his “ I am a poem I am not software” post Robin touched on an interesting problem related to personal websites. I’m not going to summarise …
favicon:


<p>With his “<a href="https://robinrendle.com/notes/i-am-a-poem-i-am-not-software/" rel="noreferrer" target="_blank">I am a poem I am not software</a>” post <a href="https://manuelmoreale.com/thoughts/pb-robin-rendle">Robin</a> touched on an interesting problem related to personal websites. I’m not going to summarise Robin’s post because his writing is great and you should read his words on his blog. </p> <p>With his “<a href="https://robinrendle.com/notes/i-am-a-poem-i-am-not-software/" rel="noreferrer" target="_blank">I am a poem I am not software</a>” post <a href="https://manuelmoreale.com/thoughts/pb-robin-rendle">Robin</a> touched on an interesting problem related to personal websites. I’m not going to summarise Robin’s post because his writing is great and you should read his words on his blog. </p>
<blockquote> <blockquote>

+ 1
- 0
cache/2024/e8748af541273328d9aa9f1aeb1087b2/index.md View File

archive_date: 2024-01-21 archive_date: 2024-01-21
og_image: https://brr.fyi/media/redeployment-part-three/redeployment-part-three-icon.jpg og_image: https://brr.fyi/media/redeployment-part-three/redeployment-part-three-icon.jpg
description: Departing Antarctica after 446 days on-ice. Relaxing in Christchurch, then heading home. What an adventure! description: Departing Antarctica after 446 days on-ice. Relaxing in Christchurch, then heading home. What an adventure!
favicon: https://brr.fyi/favicon-32x32.png


<p><em>This is the third and final part of a three-part series. Check out <p><em>This is the third and final part of a three-part series. Check out
<a href="https://brr.fyi/posts/redeployment-part-one">part one</a> and <a href="https://brr.fyi/posts/redeployment-part-two">part two</a> if you haven’t already!</em></p> <a href="https://brr.fyi/posts/redeployment-part-one">part one</a> and <a href="https://brr.fyi/posts/redeployment-part-two">part two</a> if you haven’t already!</em></p>

+ 1
- 0
cache/2024/e990536ed88823f047296ea25a6b7933/index.md
File diff suppressed because it is too large
View File


+ 1
- 0
cache/2024/ea2cfc9aa425a6967d2cacd9f96ceb9e/index.md View File

archive_date: 2024-01-13 archive_date: 2024-01-13
og_image: https://static.lukew.com/ask_lukew_data.png og_image: https://static.lukew.com/ask_lukew_data.png
description: Large language (AI) models allow us to rethink how to build software and design user interfaces. To that end, we made use of these new capabilities to create a different way of interacting with this site description: Large language (AI) models allow us to rethink how to build software and design user interfaces. To that end, we made use of these new capabilities to create a different way of interacting with this site
favicon: https://static.lukew.com/lukew.ico


<p class="feature">Large language (AI) models allow us to rethink how to build software and design user interfaces. To that end, we made use of these new capabilities to create a different way of interacting with this site at: <a href="https://ask.lukew.com">ask.lukew.com</a></p> <p class="feature">Large language (AI) models allow us to rethink how to build software and design user interfaces. To that end, we made use of these new capabilities to create a different way of interacting with this site at: <a href="https://ask.lukew.com">ask.lukew.com</a></p>



+ 1
- 0
cache/2024/f4d2d42eba58062be910407690ae447c/index.md View File

archive_date: 2024-01-31 archive_date: 2024-01-31
og_image: https://jakelazaroff.com/og/the-web-component-success-story.png og_image: https://jakelazaroff.com/og/the-web-component-success-story.png
description: Web components won't take web development by storm, or show us the One True Way to build websites. What they will do is let us collectively build a rich ecosystem of dynamic components that work with any web stack. description: Web components won't take web development by storm, or show us the One True Way to build websites. What they will do is let us collectively build a rich ecosystem of dynamic components that work with any web stack.
favicon: https://jakelazaroff.com/favicon.ico


<p>Tom MacWright wrote a short post wondering <a class="link" href="https://macwright.com/2024/01/24/on-web-components" data-astro-cid-bi7aps5f>why we don’t see prominent applications using web components</a><a class="tooltip" data-tooltip href="https://macwright.com/2024/01/24/on-web-components" data-astro-cid-bi7aps5f> <span class="title" data-astro-cid-bi7aps5f>On Web Components</span> <span class="href" data-astro-cid-bi7aps5f> <img class="favicon" src="https://macwright.com/css/favicon.png" alt="" data-astro-cid-bi7aps5f> <span class="url" data-astro-cid-bi7aps5f>macwright.com/2024/01/24/on-web-components</span> <svg xmlns="http://www.w3.org/2000/svg" class="arrow"> <use href="/icons.svg#share"></use> </svg> </span> </a>.</p> <p>Tom MacWright wrote a short post wondering <a class="link" href="https://macwright.com/2024/01/24/on-web-components" data-astro-cid-bi7aps5f>why we don’t see prominent applications using web components</a><a class="tooltip" data-tooltip href="https://macwright.com/2024/01/24/on-web-components" data-astro-cid-bi7aps5f> <span class="title" data-astro-cid-bi7aps5f>On Web Components</span> <span class="href" data-astro-cid-bi7aps5f> <img class="favicon" src="https://macwright.com/css/favicon.png" alt="" data-astro-cid-bi7aps5f> <span class="url" data-astro-cid-bi7aps5f>macwright.com/2024/01/24/on-web-components</span> <svg xmlns="http://www.w3.org/2000/svg" class="arrow"> <use href="/icons.svg#share"></use> </svg> </span> </a>.</p>
<p>That’s a fair question! <p>That’s a fair question!

+ 1
- 0
cache/2024/faa1d8cae94da6838ff9351e5df791ca/index.md View File

archive_date: 2024-01-09 archive_date: 2024-01-09
og_image: og_image:
description: description:
favicon: https://gilest.org/favicon.ico


<p><img src="https://gilest.org/2024/dangerously-muddy.jpg" alt="A sign in a forest: DANGER, TRACK DANGEROUSLY MUDDY, DO NOT ENTER"></p> <p><img src="https://gilest.org/2024/dangerously-muddy.jpg" alt="A sign in a forest: DANGER, TRACK DANGEROUSLY MUDDY, DO NOT ENTER"></p>



+ 1
- 0
cache/2024/fd6eda56671045e0c1e2d215e07f1a6f/index.md View File

archive_date: 2024-01-18 archive_date: 2024-01-18
og_image: https://jacobtomlinson.dev/f5AJKsQ_5492213727072396532_huc4b23cc59301979e6c26bd5595602176_0_babdb9b3327c14bb629a3288d379177b.png og_image: https://jacobtomlinson.dev/f5AJKsQ_5492213727072396532_huc4b23cc59301979e6c26bd5595602176_0_babdb9b3327c14bb629a3288d379177b.png
description: Version numbers are hard to get right. Semantic Versioning (SemVer) communicates backward compatibility via version numbers which often lead to a false sense of security and broken promises. description: Version numbers are hard to get right. Semantic Versioning (SemVer) communicates backward compatibility via version numbers which often lead to a false sense of security and broken promises.
favicon:


<p>Version numbers are hard to get right. Semantic Versioning <a href="https://semver.org/">(SemVer)</a> communicates backward compatibility via version numbers which often lead to a <a href="https://hynek.me/articles/semver-will-not-save-you/">false sense of security and broken promises</a>. Calendar Versioning <a href="https://calver.org/">(CalVer)</a> sits at the other extreme of communicating almost <a href="https://jacobtomlinson.dev/posts/2023/sometimes-i-regret-using-calver/">no useful information at all</a>.</p> <p>Version numbers are hard to get right. Semantic Versioning <a href="https://semver.org/">(SemVer)</a> communicates backward compatibility via version numbers which often lead to a <a href="https://hynek.me/articles/semver-will-not-save-you/">false sense of security and broken promises</a>. Calendar Versioning <a href="https://calver.org/">(CalVer)</a> sits at the other extreme of communicating almost <a href="https://jacobtomlinson.dev/posts/2023/sometimes-i-regret-using-calver/">no useful information at all</a>.</p>
<p>Going forward I plan to version the projects I work on in a way that communicates <em>how much effort I expect a user will need to spend to adopt the new version</em>. I’m going to refer to that scheme as <strong>Intended Effort Versioning (<span>EffVer</span> for short)</strong>.</p> <p>Going forward I plan to version the projects I work on in a way that communicates <em>how much effort I expect a user will need to spend to adopt the new version</em>. I’m going to refer to that scheme as <strong>Intended Effort Versioning (<span>EffVer</span> for short)</strong>.</p>

+ 1
- 0
cache/2024/ff566a58892db07815a327802fea66d3/index.md View File

archive_date: 2024-01-28 archive_date: 2024-01-28
og_image: og_image:
description: History of checkboxes and radio buttons in user interfaces description: History of checkboxes and radio buttons in user interfaces
favicon: https://tonsky.me/i/favicon.png


<p>This is a checkbox:</p> <p>This is a checkbox:</p>
<figure> <figure>

+ 1
- 0
cache/2024/ffaf50bf5d5e4cf870a618b518ee5ba7/index.md View File

archive_date: 2024-01-25 archive_date: 2024-01-25
og_image: og_image:
description: A proposal for the next generation of portable documents. description: A proposal for the next generation of portable documents.
favicon:


<p>Despite decades of advances in document rendering technology, most of the world's documents are stuck in the 1990s due to the limitations of PDF. Yet, modern document formats like HTML have yet to provide a competitive alternative to PDF. This post explores why this is the case, and proposes a way forward based on the EPUB format.</p> <p>Despite decades of advances in document rendering technology, most of the world's documents are stuck in the 1990s due to the limitations of PDF. Yet, modern document formats like HTML have yet to provide a competitive alternative to PDF. This post explores why this is the case, and proposes a way forward based on the EPUB format.</p>
<h2>The Good and Bad of PDF</h2> <h2>The Good and Bad of PDF</h2>

+ 1
- 0
templates/cache_article.md View File

archive_date: {{ archive_date }} archive_date: {{ archive_date }}
og_image: {{ og_image }} og_image: {{ og_image }}
description: {{ description }} description: {{ description }}
favicon: {{ favicon }}


{{ content }} {{ content }}

Loading…
Cancel
Save