Start April dispatch

This commit is contained in:
David Eisinger
2025-03-31 23:34:09 -04:00
parent 931f7bb67f
commit f9a99e1133
11 changed files with 3085 additions and 0 deletions

View File

@@ -0,0 +1,128 @@
---
title: "Dispatch #26 (April 2025)"
date: 2025-03-31T23:05:49-04:00
draft: false
tags:
- dispatch
references:
- title: "Viget Rewind: A Reimagining of Spotify Wrapped | Viget"
url: https://www.viget.com/articles/viget-rewind-a-reimagining-of-spotify-wrapped/
date: 2025-04-01T03:26:23Z
file: www-viget-com-ab37cx.txt
- title: "My LLM codegen workflow atm | Harper Reed's Blog"
url: https://harper.blog/2025/02/16/my-llm-codegen-workflow-atm/
date: 2025-03-02T05:57:54Z
file: harper-blog-l8lxlh.txt
- title: "The API client that lives in your terminal - Posting"
url: https://posting.sh/
date: 2025-04-01T03:11:33Z
file: posting-sh-zsjk7n.txt
- title: "Our interfaces have lost their senses"
url: https://wattenberger.com/thoughts/our-interfaces-have-lost-their-senses
date: 2025-04-01T03:11:36Z
file: wattenberger-com-zl39ri.txt
- title: "Art-directing AI"
url: https://www.robinsloan.com/lab/art-directing-ai/
date: 2025-04-01T15:12:39Z
file: www-robinsloan-com-2lwtj1.txt
- title: "If it is worth keeping, save it in Markdown"
url: https://p.migdal.pl/blog/2025/02/markdown-saves
date: 2025-04-01T03:11:40Z
file: p-migdal-pl-4of5up.txt
- title: "The Imperfectionist: Reality is right here"
url: https://ckarchive.com/b/4zuvhehpp24m4t6ovveola6g9z777s5
date: 2025-04-01T03:11:46Z
file: ckarchive-com-xm6rqk.txt
- title: "The Outsider Option: Why I Sold Half my Company to Tiny"
url: https://ryan.norbauer.com/journal/the-outsider-option-why-i-sold-half-my-company-to-tiny/
date: 2025-04-01T15:10:45Z
file: ryan-norbauer-com-wvwypu.
- title: "The average college student today - by Hilarius Bookbinder"
url: https://hilariusbookbinder.substack.com/p/the-average-college-student-today
date: 2025-04-01T15:28:16Z
file: hilariusbookbinder-substack-com-ehgwjk.txt
---
Some thoughts here...
<!--more-->
{{<dither IMG_7708.jpeg "782x600" />}}
{{<dither IMG_6952.jpeg "782x600" />}}
* Nico on the move
* "new major release"
* Nev big girl bed
* Difficulty of finding decent mix of price + quality
* [Hasura][1]
* [Viget Rewind: A Reimagining of Spotify Wrapped][2]
* Haskell
* Vegas
* Goal/habit setting
* Music
* [Tascam Model 12][3]
* [Conductive Labs MRCC][4]
* So many cables
* Piano → Reface CP → mixer → speakers
* New book edition
* Copenhagen
[1]: https://hasura.io/
[2]: https://www.viget.com/articles/viget-rewind-a-reimagining-of-spotify-wrapped/
[3]: https://tascam.com/us/product/model_12/
[4]: https://conductivelabs.com/mrcc/
### This Month
* Adventure: Lake, [kayak][5]
* Project:
* Skill:
[5]: /journal/dispatch-2-april-2023/
### Reading & Listening
* Fiction: [_Sunbringer_][6], Hannah Kaner
* Non-fiction: [_Co-Intelligence_][7], Ethan Mollick ([recommended here][8])
* Music: [_Saudade_][9], Thievery Corporation
[6]: https://bookshop.org/p/books/sunbringer-hannah-kaner/20297610
[7]: https://bookshop.org/p/books/co-intelligence-living-and-working-with-ai-ethan-mollick/20812081
[8]: https://harper.blog/2025/02/16/my-llm-codegen-workflow-atm/
[9]: https://thieverycorporation.com/portfolio/saudade/
### Links
* [Posting The API client that lives in your terminal][10]
> The API client that lives in your terminal. Posting is a beautiful open-source terminal app for developing and testing APIs.
* [Our interfaces have lost their senses][11]
> We've been successfully removing all friction from our apps — think about how effortless it is to scroll through a social feed. But is that what we want? Compare the feeling of doomscrolling to kneading dough, playing an instrument, sketching... these take effort, but they're also deeply satisfying. When you strip away too much friction, meaning and satisfaction go with it.
I found this delightful; [Robin Sloan wasn't as impressed][12].
* [If it is worth keeping, save it in Markdown][13]
> The most durable solution would be carving things in stone - it would last for millennia. But that's hardly practical, and it wouldn't make things easily searchable or shareable. The second best option is plaintext files with UTF-8 encoding and Markdown formatting3. As long as computers exist, we'll be able to read plaintext files with ease.
* [The Imperfectionist: Reality is right here][14]
> But theres one piece of advice Im confident applies to basically everyone: as far as you can manage it, you should make sure your psychological centre of gravity is in your real and immediate world the world of your family and friends and neighborhood, your work and your creative projects, as opposed to the world of presidencies and governments, social forces and global emergencies.
* [The Outsider Option: Why I Sold Half my Company to Tiny][15]
> I very intentionally capitalized and bootstrapped Norbauer & Co. in such a way as to never need outside investors, and at no point (now or in the past) have we ever been in want of cash. Indeed, I have spent my entire entrepreneurial life resisting investor-oriented management. So, as I now find myself more tranquil and satisfied than I have ever been in all my working life, Im reluctant to admit what made it all possible. I sold nearly half of my company to a publicly-traded investment fund run by a Canadian billionaire.
* [The average college student today][16]
> All this might sound like an angry rant. Im not sure. Im not angry, though, not at all. Im just sad. One thing all faculty have to learn is that the students are not us. We cant expect them all to burn with the sacred fire we have for our disciplines, to see philosophy, psychology, math, physics, sociology or economics as the divine light of reason in a world of shadow. Our job is to kindle that flame, and were trying to get that spark to catch, but it is getting harder and harder and we dont know what to do.
[10]: https://posting.sh/
[11]: https://wattenberger.com/thoughts/our-interfaces-have-lost-their-senses
[12]: https://www.robinsloan.com/lab/art-directing-ai/
[13]: https://p.migdal.pl/blog/2025/02/markdown-saves
[14]: https://ckarchive.com/b/4zuvhehpp24m4t6ovveola6g9z777s5
[15]: https://ryan.norbauer.com/journal/the-outsider-option-why-i-sold-half-my-company-to-tiny/
[16]: https://hilariusbookbinder.substack.com/p/the-average-college-student-today

View File

@@ -0,0 +1,2 @@
The Imperfectionist: Reality is right here

View File

@@ -0,0 +1,464 @@
[1]
Scriptorium Philosophia
[2]Scriptorium Philosophia
SubscribeSign in
Share this post
[8]
[https]
Scriptorium Philosophia
Scriptorium Philosophia
The average college student today
Copy link
Facebook
Email
Notes
More
The average college student today
How things have changed
[9]
[htt]
[10]Hilarius Bookbinder
Mar 25, 2025
3,535
Share this post
[12]
[https]
Scriptorium Philosophia
Scriptorium Philosophia
The average college student today
Copy link
Facebook
Email
Notes
More
[13]
786
653
[14]
Share
Im Gen X. I was pretty young when I earned my PhD, so Ive been a professor
for a long time—over 30 years. If youre not in academia, or its been awhile
since you were in college, you might not know this: the students are not what
they used to be. The problem with even talking about this topic at all is the
knee-jerk response of, “yeah, just another old man complaining about the kids
today, the same way everyone has since Gilgamesh. Shake your fist at the
clouds, dude.”[15]1 So yes, Im ready to hear that. Go right ahead. Because
people need to know.
First, some context. I teach at a regional public university in the US. Our
students are average on just about any dimension you care to name—aspirations,
intellect, socio-economic status, physical fitness. They wear hoodies and yoga
pants and like Buffalo wings. They listen to Zach Bryan and Taylor Swift.
Thats in no way a put-down: I firmly believe that the average citizen deserves
a shot at a good education and even more importantly a shot at a good life. All
I mean is that our students are representative; theyre neither the bottom of
the academic barrel nor the cream off the top.
As with every college we get a range of students, and our best philosophy
majors have gone on to earn PhDs or go to law school. Were also an NCAA
Division 2 school and I watched one of our graduates become an All-Pro lineman
for the Saints. These are exceptions, and what I say here does not apply to
every single student. But what Im about to describe are the average students
at Average State U.
Scriptorium Philosophia is a reader-supported publication. To receive new posts
and support my work, consider becoming a free or paid subscriber.
[26][ ]
Subscribe
Reading
Most of our students are functionally illiterate. This is not a joke. By
“functionally illiterate” I mean “unable to read and comprehend adult novels by
people like Barbara Kingsolver, Colson Whitehead, and Richard Powers.” I picked
those three authors because they are all recent Pulitzer Prize winners, an
objective standard of “serious adult novel.” Furthermore, Ive read them all
and can testify that they are brilliant, captivating writers; were not talking
about Finnegans Wake here. But at the same time they arent YA, romantasy, or
Harry Potter either.
Im not saying our students just prefer genre books or graphic novels or
whatever. No, our average graduate literally could not read a serious adult
novel cover-to-cover and understand what they read. They just couldnt do it.
They dont have the desire to try, the vocabulary to grasp what they read,[29]2
and most certainly not the attention span to finish. For them to sit down and
try to read a book like The Overstory might as well be me attempting an Iron
Man triathlon: much suffering with zero chance of success.
Students are not absolutely illiterate in the sense of being unable to sound
out any words whatsoever. Reading bores them, though. They are impatient to get
through whatever burden of reading they have to, and move their eyes over the
words just to get it done. Theyre like me clicking through a mandatory online
HR training. Students get exam questions wrong simply because they didn't even
take the time to read the question properly. Reading anything more than a menu
is a chore and to be avoided.
[30]
[https]
The Buffalo wings look good
They also lie about it. I wrote the textbook for a course I regularly teach.
Its a fairly popular textbook, so Im assuming it is not terribly written. I
did everything I could to make the writing lively and packed with my most
engaging examples. The majority of students dont read it. Oh, they will come
to my office hours (occasionally) because they are bombing the course, and tell
me that they have been doing the reading, but its obvious they are lying. The
most charitable interpretation is that they looked at some of the words, didnt
understand anything, pretended that counted as reading, and returned to looking
at TikTok.
This [31]study says that 65% of college students reported that they skipped
buying or renting a textbook because of cost. I believe they didnt buy the
books, but Im skeptical that cost is the true reason, as opposed to just the
excuse they offer. Yes, I know some texts, especially in the sciences, are
expensive. However, the books I assign are low-priced. All texts combined for
one of my courses is between $35-$100 and they still dont buy them. Why buy
what you arent going to read anyway? Just google it.
Even in upper-division courses that students supposedly take out of genuine
interest they wont read. Im teaching Existentialism this semester. It is
entirely primary texts—Dostoevsky, Kierkegaard, Nietzsche, Camus, Sartre. The
reading ranges from accessible but challenging to extremely difficult but were
making a go of it anyway (looking at you, Being and Nothingness). This is a
close textual analysis course. My students come to class without the books,
which they probably do not own and definitely did not read.
Writing
Their writing skills are at the 8th-grade level. Spelling is atrocious, grammar
is random, and the correct use of apostrophes is cause for celebration. Worse
is the resistance to original thought. What I mean is the reflexive submission
of the cheapest cliché as novel insight.
Exam question: Describe the attitude of Dostoevskys Underground Man
towards acting in ones own self-interest, and how this is connected to his
concerns about free will. Are his views self-contradictory?
Student: With the UGM its all about our journey in life, not the
destination. He beleives we need to take time to enjoy the little things
becuase life is short and you never gonna know what happens. Sometimes he
contradicts himself cause sometimes you say one thing but then you think
something else later. Its all relative.
You probably think thats satire. Either that, or it looks like this:
Exam question: Describe the attitude of Dostoevskys Underground Man
towards acting in ones own self-interest, and how this is connected to his
concerns about free will. Are his views self-contradictory?
Student: Dostoevskys Underground Man paradoxically rejects the idea that
people always act in their own self-interest, arguing instead that humans
often behave irrationally to assert their free will. He criticizes
rationalist philosophies like utilitarianism, which he sees as reducing
individuals to predictable mechanisms, and insists that people may choose
suffering just to prove their autonomy. However, his stance is
self-contradictory—while he champions free will, he is paralyzed by
inaction and self-loathing, trapped in a cycle of bitterness. Through this,
Dostoevsky explores the tension between reason, free will, and
self-interest, exposing the complexities of human motivation.
Thats right, ChatGPT. The students cheat. Ive written about cheating in “[33]
Why AI is Destroying Academic Integrity,” so I wont repeat it here, but the
cheating tsunami has definitely changed what assignments I give. I cant assign
papers any more because Ill just get AI back, and theres nothing I can do to
make it stop. Sadly, not writing exacerbates their illiteracy; writing is a
muscle and dedicated writing is a workout for the mind as well as the pen.
Arithmetic
Im less informed to speak out on this one, but my math prof friends tell me
that their students are increasingly less capable and less willing to put in
the effort. As a result they have had to make their tests easier with fewer
hard problems. When I was a first semester freshman (at a private SLAC, yes,
but it wasnt CalTech) I took Calculus 1. Second semester I took Calculus 2. I
dont think pre-calculus was even a thing back then. Now apparently pre-calc
counts as an advanced content course. My psych prof friends who teach
statistics have similarly lamented having to water down the content over time.
Symbolic Logic was a requirement when I was a grad student. The course was a
cross-listed upper-division undergrad/grad class. Jaegwon Kim taught the
course, and our sole textbook was W. V. Quines Methods of Logic, which we
worked through in its entirety. I think we spent two weeks on propositional
logic before moving on to the predicate calculus. We proved compactness,
soundness, and completeness, and probably some other theorems I forget. There
is no possible way our students, unless they were math or computer science
majors, would survive that class.
Whats changed?
The average student has seen college as basically transactional for as long as
Ive been doing this. They go through the motions and maybe learn something
along the way, but it is all in service to the only conception of the good life
they can imagine: a job with middle-class wages. Ive mostly made my peace with
that, do my best to give them a taste of the life of the mind, and celebrate
the successes.
Things have changed. Ted Gioia [36]describes modern students as checked-out,
phone-addicted zombies. Troy Jollimore [37]writes, “I once believed my students
and I were in this together, engaged in a shared intellectual pursuit. That
faith has been obliterated over the past few semesters.” Faculty have seen a
[38]stunning level of disconnection.
[49][ ]
Subscribe
What has changed exactly?
• Chronic absenteeism. As a friend in Sociology put it, “Attendance is a HUGE
problem—many just treat class as optional.” Last semester across all
sections, my average student missed two weeks of class. Actually it was
more than that, since Im not counting excused absences or students who
eventually withdrew. A friend in Mathematics told me, “Students are less
respectful of the university experience —attendance, lateness, e-mails to
me about nonsense, less sense of responsibility.”
• Disappearing students. Students routinely just vanish at some point during
the semester. They dont officially drop or withdraw from the course, they
simply quit coming. No email, no notification to anyone in authority about
some problem. They just pull an Amelia Earhart. Its gotten to the point
that on the first day of class, especially in lower-division, I tell the
students, “look to your right. Now look to your left. One of you will be
gone by the end of the semester. Dont let it be you.”
• They cant sit in a seat for 50 minutes. Students routinely get up during a
50 minute class, sometimes just 15 minutes in, and leave the classroom. Im
supposed to believe that they suddenly, urgently need the toilet, but the
reality is that they are going to look at their phones. They know Ill call
them out on it in class, so instead they walk out. Ive even told them to
plan ahead and pee before class, like you tell a small child before a road
trip, but it has no effect. They cant make it an hour without getting
their phone fix.
• They want me to do their work for them. During the Covid lockdown, faculty
bent over backwards in every way we knew how to accommodate students during
an unprecedented (in our lifetimes) health crisis. Now students expect that
as a matter of routine. I am frequently asked for my PowerPoint slides,
which basically function for me as lecture notes. It is unimaginable to me
that I would have ever asked one of my professors for their own lecture
notes. No, you cant have my slides. Get the notes from a classmate. Read
the book. Come to office hours for a conversation if you are still confused
after the preceding steps. Last week I had an email from a student who
essentially asked me to recap an entire weeks worth of lecture material
for him prior to yesterdays midterm. No, Im not doing that. Im not
writing you a 3000-word email. Try coming to class.
• Pretending to type notes in their laptops. I hate laptops in class, but if
I try to ban them the students will just run to Accommodative Services and
get them to tell me that the student must use a laptop or they will explode
into tiny pieces. But I know for a fact that note-taking is at best a small
part of what they are doing. Last semester I had a good student tell me,
“hey you know that kid who sits in front of me with the laptop? Yeah, I
thought you should know that all he does in class is gamble on his
computer.” Gambling, looking at the socials, whatever, they are not
listening to me or participating in discussion. They are staring at a
screen.
• Indifference. Like everyone else, I allow students to make up missed work
if they have an excused absence. No, you cant make up the midterm because
you were hungover and slept through your alarm, but you can if you had
Covid. Then they just dont show up. A missed quiz from a month ago might
as well have happened in the Stone Age; students cant be bothered to make
it up or even talk to me about it because they just dont care.
• [51]Its the phones, stupid. They are absolutely addicted to their phones.
When I go work out at the Campus Rec Center, easily half of the students
there are just sitting on the machines scrolling on their phones. I was
talking with a retired faculty member at the Rec this morning who works out
all the time. He said he has done six sets waiting for a student to put
down their phone and get off the machine he wanted. The students cant get
off their phones for an hour to do a voluntary activity they chose for fun.
Sometimes Im amazed they ever leave their [52]goon caves at all.
I dont blame K-12 teachers. This is not an educational system problem, this is
a societal problem. What am I supposed to do? Keep standards high and fail them
all? Thats not an option for untenured faculty who would like to keep their
jobs. Im a tenured full professor. I could probably get away with that for a
while, but sooner or later the Deans going to bring me in for a sit-down.
Plus, if we flunk out half the student body and drive the university into
bankruptcy, all were doing is depriving the good students of an education.
Were told to meet the students where they are, flip the classroom, use
multimedia, just be more entertaining, get better. As if rearranging the deck
chairs just the right way will stop the Titanic from going down. As if it is
somehow the fault of the faculty. Its not our fault. Were doing the best we
can with what weve been given.
All this might sound like an angry rant. Im not sure. Im not angry, though,
not at all. Im just sad. One thing all faculty have to learn is that the
students are not us. We cant expect them all to burn with the sacred fire we
have for our disciplines, to see philosophy, psychology, math, physics,
sociology or economics as the divine light of reason in a world of shadow. Our
job is to kindle that flame, and were trying to get that spark to catch, but
it is getting harder and harder and we dont know what to do.
Thanks for reading Scriptorium Philosophia! This post is public so feel free to
share it.
[53]Share
[54]1
Careful about [55]bogus “ancient” quotations on this topic, though.
[56]2
Students often ask me the meaning of common words on exams, words like
“caricature.”
3,535
Share this post
[58]
[https]
Scriptorium Philosophia
Scriptorium Philosophia
The average college student today
Copy link
Facebook
Email
Notes
More
[59]
786
653
[60]
Share
Discussion about this post
CommentsRestacks
[ht]
[ ]
[ ]
[ ]
[ ]
[64]
[ht]
[65]Matthew Lewis
[66]6d
Liked by Hilarius Bookbinder
I was a nontraditional student who went to law school at 33. It wasn't much
better there.
I ended up graduating in the top 5% of my class. During the three year ride,
peers would ask how to get their GPA up. I only had a three step strategy: (1)
do all of the reading for each class the day before class or earlier; (2) in
class, take notes by hand without any devices nearby; and (3) outline the
course material before the (usually comprehensive) final exam. No one ever
mentioned following that advice but more than a few of the people I told that
to would ask me for my outlines at the end of the semester.
The scary thing for me was that I found myself explaining basic concepts we
learned in 1L--such as the three categories of torts--to peers who would be
graduating (two years later). They just could not retain the material. These
are practicing attorneys who I still sometimes field basic questions from.
I blame the K-12 system. Grade inflation and No Child Left Behind have resulted
in grades from American public schools being essentially worthless as a
representation of their academic ability. Parents know they can just throw a
fit if their child is ever on the cusp of being held back or even getting a
failing grade.
There is a much bigger societal issue under the surface, for sure. We're all
slaves to our addictions now. Work and school are things people do to
facilitate their video games, cell phone scrolling, gambling, etc. I don't know
how you teach discipline and restraint to people who have spent their entire
lives in the crosshairs of a legion of software developers who want to
weaponize our reward systems for a small increase in engagement.
Expand full comment
Reply
Share
[69]32 replies
[70]
[ht]
[71]Alexander j Pasha
[72]6d
Liked by Hilarius Bookbinder
This intellectual regression is politically very frightening, what happens to
already eroding freedoms when illiterate addicts form a plurality of the
public?
Expand full comment
Reply
Share
[75]27 replies
[76]784 more comments...
TopLatestDiscussions
No posts
Ready for more?
[91][ ]
Subscribe
© 2025 Hilarius Bookbinder
[93]Privacy ∙ [94]Terms ∙ [95]Collection notice
[96] Start Writing[97]Get the app
[98]Substack is the home for great culture
Share
Copy link
Facebook
Email
Notes
More
This site requires JavaScript to run correctly. Please [100]turn on JavaScript
or unblock scripts
References:
[1] https://hilariusbookbinder.substack.com/
[2] https://hilariusbookbinder.substack.com/
[8] https://substack.com/home/post/p-159700143?utm_campaign=post&utm_medium=web
[9] https://substack.com/@hilariusbookbinder
[10] https://substack.com/@hilariusbookbinder
[12] https://substack.com/home/post/p-159700143?utm_campaign=post&utm_medium=web
[13] https://hilariusbookbinder.substack.com/p/the-average-college-student-today/comments
[14] javascript:void(0)
[15] https://hilariusbookbinder.substack.com/p/the-average-college-student-today#footnote-1-159700143
[29] https://hilariusbookbinder.substack.com/p/the-average-college-student-today#footnote-2-159700143
[30] https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7bf2e1d-e9da-41fc-b39b-f39291ded07c_700x525.jpeg
[31] https://pirg.org/wp-content/uploads/2021/02/Fixing-the-Broken-Textbook-Market-3e-February-2021.pdf
[33] https://hilariusbookbinder.substack.com/p/why-ai-is-destroying-academic-integrity?r=epq8m
[36] https://www.honest-broker.com/p/whats-happening-to-students
[37] https://thewalrus.ca/i-used-to-teach-students-now-i-catch-chatgpt-cheats
[38] https://www.chronicle.com/article/a-stunning-level-of-student-disconnection?
[51] https://magdalene.substack.com/p/its-obviously-the-phones
[52] https://www.urbandictionary.com/define.php?term=goon
[53] https://hilariusbookbinder.substack.com/p/the-average-college-student-today?utm_source=substack&utm_medium=email&utm_content=share&action=share
[54] https://hilariusbookbinder.substack.com/p/the-average-college-student-today#footnote-anchor-1-159700143
[55] https://history.stackexchange.com/questions/28169/what-is-the-oldest-authentic-example-of-people-complaining-about-modern-times-an
[56] https://hilariusbookbinder.substack.com/p/the-average-college-student-today#footnote-anchor-2-159700143
[58] https://substack.com/home/post/p-159700143?utm_campaign=post&utm_medium=web
[59] https://hilariusbookbinder.substack.com/p/the-average-college-student-today/comments
[60] javascript:void(0)
[64] https://substack.com/profile/212696350-matthew-lewis?utm_source=comment
[65] https://substack.com/profile/212696350-matthew-lewis?utm_source=substack-feed-item
[66] https://hilariusbookbinder.substack.com/p/the-average-college-student-today/comment/103628964
[69] https://hilariusbookbinder.substack.com/p/the-average-college-student-today/comment/103628964
[70] https://substack.com/profile/293244893-alexander-j-pasha?utm_source=comment
[71] https://substack.com/profile/293244893-alexander-j-pasha?utm_source=substack-feed-item
[72] https://hilariusbookbinder.substack.com/p/the-average-college-student-today/comment/103531090
[75] https://hilariusbookbinder.substack.com/p/the-average-college-student-today/comment/103531090
[76] https://hilariusbookbinder.substack.com/p/the-average-college-student-today/comments
[93] https://substack.com/privacy
[94] https://substack.com/tos
[95] https://substack.com/ccpa#personal-data-collected
[96] https://substack.com/signup?utm_source=substack&utm_medium=web&utm_content=footer
[97] https://substack.com/app/app-store-redirect?utm_campaign=app-marketing&utm_content=web-footer-button
[98] https://substack.com/
[100] https://enable-javascript.com/

View File

@@ -0,0 +1,266 @@
[1]Piotr Migdał[2]Blog[3]Projects[4]Publications[5]Resume
If it is worth keeping, save it in Markdown
17 Feb 2025 | by Piotr Migdał
• [6]r/DataHoarder thread
• [7]r/ObisdianMD thread
• [8]Hacker News front page
One of Stanisław Lem's stories, [9]The Memoirs Found in a Bathtub, begins with
a strange phenomenon that turns all written materials into dust. While this is
science fiction, something similar happens in our digital world.
[10]Digital memento mori
If you publish something online, sooner or later, it will vanish.^[11]1
In the best-case scenario, a link changes during website restructuring. More
commonly, the content is lost. The only hope is that someone saved it from
oblivion in the [12]Internet Archive Wayback Machine.
Walled gardens requiring login are even worse - when they go down, everything
within them vanishes forever. If you haven't saved it yourself, it's gone.
Moreover, any service (free or paid) may restrict access to content at any time
- either completely or practically, by making it impossible to find what you're
looking for. The same content you posted on Twitter a few years ago, now is on
X, and in a few years might be available after login, paid subscription, or -
not at all .
Even self-hosting isn't foolproof - your content can vanish when you forget to
pay for hosting or after a server crash. And even if your data survives,
accessing it can be tricky: WordPress blogs store posts in databases that
server updates can break. I learned this lesson when my PHP photo gallery went
down - thankfully, I had kept all photos as simple JPGs organized by date.
The only reliable solution is to store content in formats that can be opened
without specialized software - formats that will remain accessible for decades
to come.
[galadriel-]
Galadriel in "the Lord of the Rings" opening scene ([13]video, [14]transcript).
[15]Why things are worth saving
There are many motivations for preserving content, ranging from a digital "non
omnis moriar" through practical arguments, to archiving as a goal in itself^
[16]2.
For me, the key reasons are:
• I want to keep and own things I wrote - they are parts of me, my history,
my lived experience
• I want to have everything in one place and easily searchable
• I want to use it with AI tools (looking for similar notes, summarizing,
using as context)
• I want to be able to reuse or share things however I want (email, blog
post, ebook, anything)
[17]Plaintext
As a data scientist, [18]I turn things into vectors.
As an unabashed archivist, I turn things into Markdown.
The most durable solution would be carving things in stone - it would last for
millennia. But that's hardly practical, and it wouldn't make things easily
searchable or shareable.
The second best option is plaintext files with UTF-8 encoding and Markdown
formatting^[19]3. As long as computers exist, we'll be able to read plaintext
files with ease.
Markdown files are essentially plaintext with some extra syntax for common
elements like sections, bullet points, and links. The format deliberately
avoids precise control over display details like font selection^[20]4.
Following [21]the rule of least power, I consider this limitation a feature.
For contrast, consider PDF - a format so powerful that [22]it can run Doom.
For personal notes, I use [23]Obsidian, a note-taking app I love and use daily.
While it's a powerful tool with great plugins, what keeps me loyal is its
simplicity - it stores everything in plain files. The lack of a proprietary
format moat is precisely what makes it so compelling.
For blogging, most [24]static site generators embrace Markdown. This very blog
post is written in Markdown^[25]5. Using the same markup for note-taking and
publishing makes sharing smooth.
[26]How I do it
I dream of automatically converting everything I write or encounter into
Markdown. The reality is messier - there's a constant tension between my
autistic urge to archive everything and my ADHD that makes maintaining such
systems challenging.
So I take a pragmatic approach - when I find content worth keeping, I copy it
to a markdown file, adding frontmatter with its publication date, source, and
relevant tags:
[sauna-post]
I particularly save things I post that might be useful later. Conference talk
abstracts, sauna event descriptions, technical explanations - in the future,
they're much easier to find and reuse.
When I catch myself searching for old content (like a Facebook post I want to
share or reread), I save it immediately. If I discover a blog post has
vanished, I retrieve it from the Wayback Machine and preserve it. When
forwarding an email with a detailed explanation - you guessed it, I save it.
Content worth searching for once is content worth preserving forever.
Worried about saving too much? Well, disk storage is cheap - and for text
files, it's practically free.
[27]Tools that help
Sometimes manual copying suffices. For trickier formatting, AI tools are
invaluable - being trained on Markdown, they excel at processing and extracting
content. You can use them to convert online text or parse PDFs (like slides),
as shown in [28]Ingesting Millions of PDFs and why Gemini 2.0 Changes
Everything.
For some sources, I've created semi-automated solutions. For instance, I wrote
a [29]Python script to convert my Kindle highlights and notes into Markdown.
Many tools exist to help with format conversion. The most versatile is [30]
pandoc, which can convert between dozens of formats - from Word documents to
LaTeX, and everything in between.
The community has also created specialized tools for specific platforms. You
can find tools for converting [31]Medium posts to Markdown (either from export
or [32]directly by URL), [33]archiving Reddit threads, and many other use
cases.
Since we're dealing with lightweight text files, there are many for backing it
up. Git is particularly well-suited for version-controlling and syncing this
content.
Additionally, in each service I own, I periodically download my data. Even if
it's a mesh of JSON, XML, HTML, CSV and other formats, I have it. Even if at a
given moment I have no time to process it into Markdown, at least the data is
there.
[34]Next steps
I would love to have a comprehensive tool for exporting everything - especially
from social media. Both the posts that resonated with many people and those
that hold personal significance deserve preservation.
While Facebook offers limited data export capabilities, they're incomplete.
Most notably, there's no way to preserve entire discussion threads - often the
most valuable part of a post.
And you - what content do you find yourself searching for? What have you
archived, and what do you wish you had saved?
Discuss this post on [35]Hacker News, [36]Mastodon, [37]Reddit, or [38]LinkedIn
.
[39]Footnotes
1. [40]Link rot can be addressed using services like [41]Perma.cc - though
they too could eventually disappear. Studies show that for legal documents,
half of links die within 5 years. My focus here is on preserving and
searching personal content. [42]↩
2. But for practical reasons, and hoarding for its own sake, I gathered over
14k links in [43]Pinboard. Yes, downloaded data in JSON. [44]↩
3. I don't claim Markdown is the only solution. There are valid reasons to use
other formats. My focus is on plaintext in UTF-8. If you prefer other
markup languages (like reStructuredText, AsciiDoc, Org-Mode) or just plain
text without formatting - the principles still apply. In some cases
original format works - e.g. if it is JSON or code. [45]↩
4. Consider HTML (Hypertext Markup Language) as a counterexample. It was meant
to enrich text with semantics, but now serves primarily as a tool for
building UIs. While this evolution brought many benefits, typical end-user
HTML is no longer suitable for pure content storage. At the same time, if
you can use simple HTML with actual semantic <strong> and <em> tags, go for
it. But it's often a slippery slope - from "just add a few colors," through
"add tables," to creating a full-fledged app. [46]↩
5. This blog uses [47]Nuxt 3 Content (source: [48]github.com/stared/
stared.github.io). It follows my previous versions in [49]Jekyll and [50]
Gridsome. Thanks to Markdown, migration between platforms has been seamless
- see [51]New blog - moving from Medium to Gridsome. For the latest
migration from Gridsome to Nuxt 3 Content, [52]Cursor IDE was a great help.
[53]Astro is another static site generator gaining significant traction.
[54]↩
See also cosine-similar posts
• 0.617[55]New blog - moving from Medium to Gridsome
• 0.604[56]How I learned to stop worrying and love the types & tests
• 0.598[57]AI wont make artists redundant - thanks to information theory
• 0.591[58]ADHD tech stack: auto time tracking
• 0.589[59]The first post: why Jekyll?
By [60]Piotr Migdał, a curious being, doctor of sorcery. See [61]my other blog
posts.
Keep in the loop with the [62]RSS feed or join the [63]newsletter.
References:
[1] https://p.migdal.pl/
[2] https://p.migdal.pl/blog
[3] https://p.migdal.pl/projects
[4] https://p.migdal.pl/publications
[5] https://p.migdal.pl/resume
[6] https://www.reddit.com/r/DataHoarder/comments/1is1wbn/if_it_is_worth_keeping_save_it_in_markdown/
[7] https://www.reddit.com/r/ObsidianMD/comments/1is1snu/if_it_is_worth_keeping_save_it_in_markdown/
[8] https://news.ycombinator.com/item?id=43137616
[9] https://en.wikipedia.org/wiki/Memoirs_Found_in_a_Bathtub
[10] https://p.migdal.pl/blog/2025/02/markdown-saves/#digital-memento-mori
[11] https://p.migdal.pl/blog/2025/02/markdown-saves#user-content-fn-link-rot
[12] https://web.archive.org/
[13] https://www.youtube.com/watch?v=qj139dE7tFI
[14] https://www.tk421.net/lotr/film/fotr/01.html
[15] https://p.migdal.pl/blog/2025/02/markdown-saves/#why-things-are-worth-saving
[16] https://p.migdal.pl/blog/2025/02/markdown-saves#user-content-fn-pinboard
[17] https://p.migdal.pl/blog/2025/02/markdown-saves/#plaintext
[18] https://p.migdal.pl/blog/2025/01/dont-use-cosine-similarity
[19] https://p.migdal.pl/blog/2025/02/markdown-saves#user-content-fn-plaintext
[20] https://p.migdal.pl/blog/2025/02/markdown-saves#user-content-fn-html
[21] https://en.wikipedia.org/wiki/Rule_of_least_power
[22] https://www.reddit.com/r/itrunsdoom/comments/1i02c6b/doom_in_a_pdf_file/
[23] https://obsidian.md/
[24] https://jamstack.org/generators/
[25] https://p.migdal.pl/blog/2025/02/markdown-saves#user-content-fn-blog
[26] https://p.migdal.pl/blog/2025/02/markdown-saves/#how-i-do-it
[27] https://p.migdal.pl/blog/2025/02/markdown-saves/#tools-that-help
[28] https://www.sergey.fyi/articles/gemini-flash-2
[29] https://gist.github.com/stared/ce732ef27d97d559b34d7e294481f1b0
[30] https://github.com/jgm/pandoc
[31] https://github.com/gautamdhameja/medium-2-md
[32] https://medium2md.nabilmansour.com/
[33] https://farnots.github.io/RedditToMarkdown/
[34] https://p.migdal.pl/blog/2025/02/markdown-saves/#next-steps
[35] https://news.ycombinator.com/item?id=43137616
[36] https://mathstodon.xyz/@pmigdal/114021315189570737
[37] https://www.reddit.com/r/DataHoarder/comments/1is1wbn/if_it_is_worth_keeping_save_it_in_markdown/
[38] https://www.linkedin.com/posts/piotrmigdal_if-it-is-worth-keeping-save-it-in-markdown-activity-7299139148634841089-_Xe3
[39] https://p.migdal.pl/blog/2025/02/markdown-saves/#footnote-label
[40] https://en.wikipedia.org/wiki/Link_rot
[41] https://perma.cc/
[42] https://p.migdal.pl/blog/2025/02/markdown-saves#user-content-fnref-link-rot
[43] https://pinboard.in/
[44] https://p.migdal.pl/blog/2025/02/markdown-saves#user-content-fnref-pinboard
[45] https://p.migdal.pl/blog/2025/02/markdown-saves#user-content-fnref-plaintext
[46] https://p.migdal.pl/blog/2025/02/markdown-saves#user-content-fnref-html
[47] https://content.nuxt.com/
[48] https://github.com/stared/stared.github.io
[49] https://jekyllrb.com/
[50] https://gridsome.org/
[51] https://p.migdal.pl/blog/2022/12/medium-to-markdown
[52] https://www.cursor.com/
[53] https://astro.build/
[54] https://p.migdal.pl/blog/2025/02/markdown-saves#user-content-fnref-blog
[55] https://p.migdal.pl/blog/2022/12/medium-to-markdown
[56] https://p.migdal.pl/blog/2020/03/types-tests-typescript
[57] https://p.migdal.pl/blog/2023/02/ai-artists-information-theory
[58] https://p.migdal.pl/blog/2020/05/adhd-tech-stack-auto-time-tracking
[59] https://p.migdal.pl/blog/2015/12/first-post
[60] https://p.migdal.pl/
[61] https://p.migdal.pl/blog
[62] https://p.migdal.pl/feed.xml
[63] https://eepurl.com/bVJlgL

View File

@@ -0,0 +1,169 @@
[1][ ] [2][ ]
[3]
Posting
The API client that lives in your terminal
[4][ ]
Initializing search
[6]
darrenburns/posting
• [7] Home
• [8] Guide
• [9] Roadmap
• [10] Changelog
• [11] FAQ
Posting darrenburns@posting.local P OST ▼ https ://
jsonplaceholder.typicode.com / posts ■ ■■■■■■ Send ╭─ Collection
─────────────────╮╭──────────────────────────────────────────────────────
Request ─╮ │ GET echo ││ Headers • Body • Query Auth Info Options │ │ GET
get random user ││ ╸ ━━━━━━━━
╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ │ │ POS echo post ││ ▐
Content-Type application/json │ │ ▼ jsonplaceholder/ ││ ▐ Referer https://
example.com/ │ │ ▼ posts/ ││ ▐ Accept-Encoding gzip │ │ GET get all ││ ▐
Cache-Control no-cache │ │ GET get one ││ ▐ │ │ █ POS create ││ Name Value
Add header │ │ DEL delete a post
│╰────────────────────────────────────────────────────────────────╯ │ ▼
comments/ │ ╭─────────────────────────────────────── Response 201 Created ─╮ │
GET get comments │ │ Body Headers Cookies Trace │ │ GET get comments (via │ │ ╸
━━━━ ╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ │ │ PUT
edit a comment │ │ 1 { │ │ ▼ todos/ ▆ │ │ 2 "title" : "foo" , │ │ GET get all │
│ 3 "body" : "bar" , │ │ GET get one │ │ 4 "userId" : 1 , │ │ ▼ users/ │ │ 5
"id" : 101 │ │──────────────────────────────│ │ 6 } │ │ Create a new post │ │
1:1 read-only JSON ▼ Wrap ▐ X ▌ │ ╰───────── sample-collections ─╯
╰─────────────────────────────────────────── 65.00 B in 524.34 ms ─╯ ^j Send ^t
Method ^s Save ^n New ^p Commands ^o Jump f1 Help
The API client that lives in your terminal.
Posting is a beautiful open-source terminal app for developing and testing
APIs.
Fly through your API workflow with an approachable yet powerful
keyboard-centric interface. Run it locally or over SSH on remote machines and
containers. Save your requests in a readable and version-control friendly
format.
[12] Discover Features [13] Get Started
Designed for efficient workflows
Navigate intuitively and efficiently with the keyboard using jump mode.
Access commands from anywhere using the built-in command palette.
Build requests quickly with powerful autocompletion.
Edit a request body in nvim or browse a JSON response in fx? No problem!
Import curl commands into Posting by simply pasting into the URL bar. Export
requests to curl in seconds.
Colorful & customizable
Use compact mode to fit more on screen.
Create your own themes, or choose from a selection of built-in options.
Gorgeous syntax highlighting powered by the popular tree-sitter library.
Adjust the user interface to your liking through the configuration system or at
runtime.
Customize keybindings to your liking using the keymap system.
Environments
Share common data across requests and with others using environments.
Load variables from one or more dotenv environment files, or allow access to
environment variables.
Edit variables in your favorite editor, and Posting will hot reload them.
Contextual help
Feeling lost? Press f1 to learn keybindings and other useful information for
the currently focused widget.
Scripting
Run Python code before and after requests to prepare headers, set variables,
and more.
Runs where you need it
Run it on macOS, Windows, and Linux. Install it locally, on a remote server, in
a Docker container, or even on a Raspberry Pi.
Community
Posting is a community-driven project with an [14]open roadmap.
The roadmap is highly influenced by user feedback.
Get involved on [15]GitHub by reporting bugs, suggesting features, [16]
sponsoring development, or contributing code.
[17] GitHub [18] Issues
© 2025 Darren Burns
[19] Posting
[20]
darrenburns/posting
• [21][ ] [22] Home
• [23][ ] Guide Guide
□ [24] Getting Started
□ [25] Navigation
□ [26] Collections
□ [27] Requests
□ [28] Configuration
□ [29] Environments
□ [30] Command Palette
□ [31] Themes
□ [32] External Tools
□ [33] Keymaps
□ [34] Importing
□ [35] Scripting
□ [36] Help System
• [37] Roadmap
• [38] Changelog
• [39] FAQ
References:
[3] https://posting.sh/
[6] https://github.com/darrenburns/posting
[7] https://posting.sh/
[8] https://posting.sh/guide/
[9] https://posting.sh/roadmap/
[10] https://posting.sh/CHANGELOG/
[11] https://posting.sh/faq/
[12] https://posting.sh/#feature-title-1
[13] https://posting.sh/guide
[14] https://posting.sh/roadmap
[15] https://github.com/darrenburns/posting
[16] https://github.com/sponsors/darrenburns
[17] https://github.com/darrenburns/posting
[18] https://github.com/darrenburns/posting/issues
[19] https://posting.sh/
[20] https://github.com/darrenburns/posting
[22] https://posting.sh/
[24] https://posting.sh/guide/
[25] https://posting.sh/guide/navigation/
[26] https://posting.sh/guide/collections/
[27] https://posting.sh/guide/requests/
[28] https://posting.sh/guide/configuration/
[29] https://posting.sh/guide/environments/
[30] https://posting.sh/guide/command_palette/
[31] https://posting.sh/guide/themes/
[32] https://posting.sh/guide/external_tools/
[33] https://posting.sh/guide/keymap/
[34] https://posting.sh/guide/importing/
[35] https://posting.sh/guide/scripting/
[36] https://posting.sh/guide/help_system/
[37] https://posting.sh/roadmap/
[38] https://posting.sh/CHANGELOG/
[39] https://posting.sh/faq/

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,303 @@
[1]
Our interfaces have
lost their senses
Think about how you experience the world—
you touch, you hear, you move.
[dance1] [dance1] [dance1] [dance1]
[dance-grou]
But our digital world has been getting flatter, more muted.
Reduced to text under glass screens.
This shift made interfaces simpler.
But was that really the goal?
An interface is the bridge between
the human
&
the machine.
[human]
[human] [machine]
It's how we tell computers what we want,
[arrow-righ]
and it's how computers communicate back to us.
[arrow-left]
The shape should fit how we work,
for ergonomics and ease of use
and it should fit how the computer works.
for simplicity and a good mental model
Recently, we've been too focused on fitting to the computer's shape, and not
enough to our own bodies.
[machine]
The Great Flattening
Computers used to be physical beasts.
We programmed them by punching cards, plugging in wires, and flipping switches.
Programmers walked among banks of switches and cables, physically
choreographing their logic. Being on a computer used to be a full-body
experience.
[tech0]
[tech1]
[transition]
Then came terminals and command lines. Physical knobs turned into typed
commands—more powerful, but our digital world became less embodied. Then came
terminals and command lines. Physical knobs turned into typed commands—more
powerful, but our digital world became less embodied. Then came terminals and
command lines. Physical knobs turned into typed commands—more powerful, but our
digital world became less embodied. Then came terminals and command lines.
Physical knobs turned into typed commands—more powerful, but our digital world
became less embodied. Then came terminals and command lines. Physical knobs
turned into typed commands—more powerful, but our digital world became less
embodied. Then came terminals and command lines. Physical knobs turned into
typed commands—more powerful, but our digital world became less embodied.
[tech2]
[transition]
We brought back some of the tactile controls with GUIs—graphical user
interfaces. We skeumorphed the heck out of our screens, with digital switches,
flat sliders, and folder icons. But we kept some of the the functionality in
the physical world, with slots to stick disks into and big ol' power buttons.
We brought back some of the tactile controls with GUIs—graphical user
interfaces. We skeumorphed the heck out of our screens, with digital switches,
flat sliders, and folder icons. But we kept some of the the functionality in
the physical world, with slots to stick disks into and big ol' power buttons.
We brought back some of the tactile controls with GUIs—graphical user
interfaces. We skeumorphed the heck out of our screens, with digital switches,
flat sliders, and folder icons. But we kept some of the the functionality in
the physical world, with slots to stick disks into and big ol' power buttons.
We brought back some of the tactile controls with GUIs—graphical user
interfaces. We skeumorphed the heck out of our screens, with digital switches,
flat sliders, and folder icons. But we kept some of the the functionality in
the physical world, with slots to stick disks into and big ol' power buttons.
We brought back some of the tactile controls with GUIs—graphical user
interfaces. We skeumorphed the heck out of our screens, with digital switches,
flat sliders, and folder icons. But we kept some of the the functionality in
the physical world, with slots to stick disks into and big ol' power buttons.
We brought back some of the tactile controls with GUIs—graphical user
interfaces. We skeumorphed the heck out of our screens, with digital switches,
flat sliders, and folder icons. But we kept some of the the functionality in
the physical world, with slots to stick disks into and big ol' power buttons.
[tech3]
[transition]
Then came touchscreens.
What a beautiful thing! We get to [2]poke things directly!
But now we live in an flat land, with everything behind a glass display case.
Then came touchscreens.
What a beautiful thing! We get to [3]poke things directly!
But now we live in an flat land, with everything behind a glass display case.
Then came touchscreens.
What a beautiful thing! We get to [4]poke things directly!
But now we live in an flat land, with everything behind a glass display case.
Then came touchscreens.
What a beautiful thing! We get to [5]poke things directly!
But now we live in an flat land, with everything behind a glass display case.
Then came touchscreens.
What a beautiful thing! We get to [6]poke things directly!
But now we live in an flat land, with everything behind a glass display case.
Then came touchscreens.
What a beautiful thing! We get to [7]poke things directly!
But now we live in an flat land, with everything behind a glass display case.
[tech4]
[transition]
With increasing amounts of AI chatbots, we're losing even more: texture, color,
shape.
Instead of interactive controls, we have a text input.
Want to edit an image? Type a command.
Adjust a setting? Type into a text box.
Learn something? Read another block of text. With increasing amounts of AI
chatbots, we're losing even more: texture, color, shape.
Instead of interactive controls, we have a text input.
Want to edit an image? Type a command.
Adjust a setting? Type into a text box.
Learn something? Read another block of text. With increasing amounts of AI
chatbots, we're losing even more: texture, color, shape.
Instead of interactive controls, we have a text input.
Want to edit an image? Type a command.
Adjust a setting? Type into a text box.
Learn something? Read another block of text. With increasing amounts of AI
chatbots, we're losing even more: texture, color, shape.
Instead of interactive controls, we have a text input.
Want to edit an image? Type a command.
Adjust a setting? Type into a text box.
Learn something? Read another block of text. With increasing amounts of AI
chatbots, we're losing even more: texture, color, shape.
Instead of interactive controls, we have a text input.
Want to edit an image? Type a command.
Adjust a setting? Type into a text box.
Learn something? Read another block of text. With increasing amounts of AI
chatbots, we're losing even more: texture, color, shape.
Instead of interactive controls, we have a text input.
Want to edit an image? Type a command.
Adjust a setting? Type into a text box.
Learn something? Read another block of text.
[tech5]
[tech6]
The Joy of Doing
We've been successfully removing all friction from our apps — think about how
effortless it is to scroll through a social feed. But is that what we want?
Compare the feeling of doomscrolling to kneading dough, playing an instrument,
sketching... these take effort, but they're also deeply satisfying. When you
strip away too much friction, meaning and satisfaction go with it.
Think about how you use physical tools. Drawing isn't just moving your
hand—it's the feel of the pencil against paper, the tiny adjustments of
pressure, the sound of graphite scratching. You shift your body to reach the
other side of the canvas. You erase with your other hand. You step back to see
the whole picture.
We made painting feel like typing,
[typing]
[art-transi]
but we should have made typing feel like painting.
[artist]
Putting the you back in UI
So how might our interfaces look if we shaped them to fit us?
We think in movement, [movement]
in space, [space]
in sound,
[sound]
in patterns.
[patterns]
We use our hands to sculpt, our eyes to scan, our ears to catch patterns.
Our computers can communicate to us in many different formats, each with their
own strengths:
Text
Great for depth, detail, and precision.
[images]
But it doesn't always have to be in full paragraphs. How about showing key
points first, then letting users expand?
Visualizations
Ideal for spatial relationships, trends, and quick insights.
[vision]
Can we show more content spatially? Or encode it in charts or colors?
Sound
Perfect for alerts and background awareness. Also, patterns.
[hearing]
Why are most web UIs silent? Can we use subtle chimes or sonification to
highlight patterns?
Haptics
Provides passive feedback (vibrations, force).
[touch]
Here's one I always forget about! We can vibrate phones to alert or convey
patterns.
And what about the reverse! We can communicate to our computers in many
different ways, each with their own strengths:
Typing
Precise, detailed, and familiar
[typing2]
Good for composing long-form thoughts, keyboard shortcuts, and rough direction.
Clicking & Dragging
Direct, fine-grained control.
[clicking]
Great for spatial tasks (design, organization) and pointing at
things-on-a-screen.
Tapping, Swiping, Pinching
Intuitive for direct manipulation.
[tapping]
Great for mobile, but do we have to limit guestures to mimicking mouse
interactions?
Gesturing
Hands-free, fluid, and expressive.
[guesturing]
Could be powerful for accessibility, quick actions, and complex fine
control—reliable detection feels very possible at this time.
Speaking
Easy for loose thoughts.
[speaking]
LLMs have made speech more viable—can we let users think out loud or navigate
roughly with their voice?
And the real magic happens when we combine different modalities. You can't read
and listen and speak at the same time—try reading this excerpt while talking
about your day:
If it had not rained on a certain May morning Valancy Stirlings whole life
would have been entirely different. She would have gone, with the rest of her
clan, to Aunt Wellingtons engagement picnic and Dr. Trent would have gone to
Montreal. But it did rain and you shall hear what happened to her because of
it.
~ [8]The Blue Castle
But you can talk while clicking,
[click]
listen while reading,
[listen]
look at an image while spinning a knob,
[look]
guesture while talking.
[guesture]
Let's build interfaces that let us multitask across senses.
Rebuilding the bridge
So, what might a richer interface look like? I have strong conviction that our
future interfaces should:
• let us collaborate on tangible artifacts, not just ephemeral chat logs.
• support multiple concurrent modalities—voice, gestures, visuals, spatial
components.
• respond to ambient signals—detecting context, organizing information,
helping us think better.
Last year, I did a rough exploration of what this could look like for a thought
organizing tool. One that listened as you talked or typed, and organized your
rambling thoughts into cards.
This interface is very rough, but felt like a different way of working with
technology. Especially how it let me bumble through rough ideas one second,
then responded to commands like "re-group my cards" or "add 3 cards about this"
the next.
I would love to see more explorations like this!
Our interfaces have lost their senses
All day, we poke, swipe, and scroll through flat, silent screens. But we're
more than just eyes and a pointer finger. We think with our hands, our ears,
our bodies.
The future of computing is being designed right now. Can we build something
richer—something that moves with us, speaks our language, and molds to our
bodies?
[footer]
References:
[1] https://wattenberger.com/
[2] https://www.youtube.com/watch?v=RyBEUyEtxQo
[3] https://www.youtube.com/watch?v=RyBEUyEtxQo
[4] https://www.youtube.com/watch?v=RyBEUyEtxQo
[5] https://www.youtube.com/watch?v=RyBEUyEtxQo
[6] https://www.youtube.com/watch?v=RyBEUyEtxQo
[7] https://www.youtube.com/watch?v=RyBEUyEtxQo
[8] https://www.gutenberg.org/ebooks/67979

View File

@@ -0,0 +1,55 @@
[1]Blog [2]About [3]Moonbound [4]Shop
This is a post from [5]Robin Sloans lab blog & notebook. You can [6]visit the
blogs homepage, or [7]learn more about me.
[8]Art-directing AI
March 27, 2025
I want to draw your eye to the images in [9]this recent post from Amelia
Wattenberger, which seem to me an example of someone trying hard to art-direct
AI image generation in a recognizably editorial way.
Clearly, Amelia was going for a particular look. There is a clear idea at work
here, exactly the kind youd specify to an artist (or pitch to an art
director). However, the fundamental fuzziness of the AI approach is apparent;
while the images do all have the same “texture”, they dont seem to have come
from the same source, or indeed to have been made by the same “person”.
Anyone who has worked with AI tools will recognize the feeling of “close
enough”-ness. If you squint, you can see all the images Amelia rejecteda
pile of crumpled-up drawings just beyond the frame of the browser. The images
published with the post were, for sure, the best options, even if together they
dont quite form a coherent package.
Anyway, its interesting and useful to encounter this strategy for illustration
“fully expressed”, rather than just imagined. I dont think it succeeds, but/
and Im glad to have the example to consider.
[10]To the blog home page
I'm [11]Robin Sloan, a fiction writer. The main thing to do here is sign up for
my newsletter:
[12][ ] [13][Subscribe]
This website doesnt collect any information about you or your reading.
It aspires to the speed and privacy of the printed page.
Dont miss [14]the colophon. Hony soyt qui mal pence
References:
[1] https://www.robinsloan.com/lab/
[2] https://www.robinsloan.com/about/
[3] https://www.robinsloan.com/moonbound/
[4] https://www.robinsloan.com/shop/
[5] https://www.robinsloan.com/
[6] https://www.robinsloan.com/lab/
[7] https://www.robinsloan.com/about/
[8] https://www.robinsloan.com/lab/art-directing-ai/
[9] https://wattenberger.com/thoughts/our-interfaces-have-lost-their-senses?utm_source=Robin_Sloan_sent_me
[10] https://www.robinsloan.com/lab/
[11] https://www.robinsloan.com/about?utm_source=Robin_Sloan_sent_me
[14] https://www.robinsloan.com/colophon/

View File

@@ -0,0 +1,442 @@
[1] Skip to Main Content
[2] Viget
• [3] Work
• [4] Services
• [5] Articles
• [6] Careers
• [7] Contact
• Open Menu
Navigation
[9] Viget Close
• Practice
• [11] Work
• [12] Services
• [13] Articles
Were a full-service digital agency thats been helping clients make lasting
change since 1999.
[14] Contact Us
People
• [15]Company
• [16]Careers
• [17]Code of Ethics
• [18]Diversity & Inclusion
More
• [19]Pointless Corp.
• [20]Explorations
• [21]Code at Viget
Featured
[22]
Read the Article: Surfs Up: Designing a New Product for the Open Social Web
Newsletter
Surfs Up: Designing a New Product for the Open Social Web
[23]
Read the Article: Viget Rewind: A Reimagining of Spotify Wrapped
Article
Viget Rewind: A Reimagining of Spotify Wrapped
Viget Rewind: A Reimagining of Spotify Wrapped
[eyJidWNrZXQiOiJ2Z3QtdmlnZXRjb20tYW]
• [24]Home
• [25]Articles
• [26]Viget Rewind: A Reimagining of Spotify Wrapped
[27] Subscribe (opens in a new window)
Share
• [29] Share this page
• [30] Share this page
• [31] Post this page
[32] Megan Raden
[33]Megan Raden, Quantitative UX Researcher
Article Categories: [34] #News & Culture, [35] #Data & Analytics, [36] #Product
Posted on March 26, 2025
• [37]
Share
• [38]
Share
• [39]
Post
We wanted to take the unique aspects of Spotify Wrapped—its personalized touch
and sense of community—and see what we could do with our Harvest time-tracking
data.
W e w a n t e d t o t a k e t h e u n i q u e a s p e c t s o f S p o t i f y W
r a p p e d — i t s p e r s o n a l i z e d t o u c h a n d s e n s e o f c o m
m u n i t y — a n d s e e w h a t w e c o u l d d o w i t h o u r H a r v e s t
t i m e - t r a c k i n g d a t a .
A Raccoon Sticky Note
As a data nerd and someone who listens to a lot of music, I always look forward
to Spotify Wrapped. Back in November of 2024, I was eagerly Googling the
estimated release date for Spotify Wrapped when I had the idea of extending the
concept of yearly personalized data to other parts of my life.  
Because Viget is an agency that works with clients, it's really important for
us to track our time. We need to know how much time we are spending on any
given day, for any one of our clients. And because we already track our time
for clients, we also track our time for internal projects and tasks. So every
year, we have a wealth of data on what anyone was working on throughout the
year.
We track our time in a tool called Harvest, and I thought, "What if we could
have a Harvest Wrapped?" We invest so much time into all of our client work and
various internal projects, how cool would it be to be reminded of what you
contributed to over the course of 12 months? So I wrote my idea down on a
raccoon sticky note to ensure I wouldn't forget to share it when it came time
to pitch ideas for our annual Pointless Palooza.
[eyJidWNrZXQiOiJ2Z3QtdmlnZXRjb20tYWxsLWFzc2V]
My raccoon shaped sticky note that I kept as a reminder for my Pointless
Palooza idea.
Pointless Palooza is our annual hackathon-style event where we try to build
something useful and/or fun in a limited amount of time. In mid-February, I
pitched my idea for Harvest Wrapped, and last week, in a 12-hour sprint across
2-ish days, our team got together to bring this to life. 
Repackage and Rewind
Compared to other kinds of data reports, Spotify Wrapped is unique. Most data
reports we produce or consume are focused on conveying information that is
immediately applicable or actionable. What makes Spotify Wrapped different is
that you can look at data simply because its fun, and get results specific to
you. While we do get a glimpse into our behaviors and preferences in a way that
is personal, Spotify Wrapped also creates a shared experience with other
Spotify users. 
We wanted to take these unique aspects of Spotify Wrapped—its personal touch
and sense of community—and see what we could do with our Harvest data.
Repackage the more technical and dry time-tracking data to let us rewind on
what our year looked like. 
Unlimited Ideas but Limited Time
Unlimited Ideas
At kickoff, we allowed our imaginations to run wild. We didnt want to limit
ourselves too early, even though we knew that scope would be a major factor due
to the limited time available. We also anticipated that wrangling the Harvest
data might be challenging, but we decided to ignore that concern for the time
being and brainstormed a variety of interesting ideas. These included both the
visual elements—like animations—and the story we wanted the data to tell.
[eyJidWNrZXQiOiJ2Z3QtdmlnZXRjb20tYWxsLWFzc2V]
Our brainstorming Whimsical board that included ideas around visuals and
function.
We considered questions such as:
• What kinds of metrics could we pull in?
• What would the overall narrative of these metrics be?
• What other metrics could we bring in?
• How can we create a sense of community or shared experience?
• How do we account for large differences in the data across individuals and
roles?
Every employee at Viget does an annual review using data from Harvest so it was
important for us to create something separate from the annual review—something
more fun, with a stronger narrative structure. It should also provide insights
that wouldn't typically be included in an annual review.
Limited Time
After brainstorming, we started to narrow in on ideas that felt both within
scope and still captured some of the fun and narrative elements we envisioned.
We decided to create a narrative centered around seasonality. The plan was to:
• Look at the different clients and projects an employee worked on each
quarter and calculate the number of hours spent
• Add seasonal, company-wide events to give a stronger sense of community and
shared experience
• Include individual highlights, such as an employees "Vigeversary" - the
year they started at Viget
Once we settled on this approach, we divided into two groups:
1. One group focused on implementation - how to structure and analyze the
data, and build the application.
2. The other group focused on design, copy, and narrative, working in Figma to
bring those ideas to life.
UX & Branding: Meaningful metrics and seasonal lava lamp vibes
Now that we had an overall concept, it was time to think about the details! 
First was the visuals and branding for the concept. We explored how to create
seasonality without being too literal. Ambient gradients gave us enough
flexibility to create the right vibe quickly without taking the extra time for
custom illustrations, and we knew it would make for some fun potential
animations. Luckily our team developer already had a lava lamp orb animation in
his back pocket - kismet! We also quickly realized we wanted to move away from
words like “Harvest” and “Wrapped” - in the future, we could actually have data
beyond Harvest feeding into the experience. After a quick Slack brainstorm, we
settled on “Viget Rewind” instead to name our reflective experience. 
[eyJidWNrZXQiOiJ2Z3QtdmlnZXRjb20tYWxsLWFzc2V]
Backgrounds used in our prototype.
In parallel, we began to mock up a few rough wireframes with an actual team
members data and copy, before we could access the raw data itself. It didnt
take long to gain some quick learnings about meaningful Harvest data:
• Theres ample opportunity to provide “color” in copy alone to the
prototype. We toyed with seasonal writing to suggest timing. 
• The project name data didnt always provide the right context. “2019-2026
Support” isnt a title that evokes lots of memory, so we needed to pair the
client and project names to make this more meaningful.
• Not every project type should be reported back. For example, sharing back
PTO hours still seemed awkward and inappropriate, no matter what copy you
put in.
Putting these together in a high-fidelity prototype in Figma made our initial
vision complete!
[eyJidWNrZXQiOiJ2Z3QtdmlnZXRjb20tYWxsLWFzc2V]
Some final screens from our figma prototype.
Building It
The first big question we had was, “How are we going to get the data out of
harvest, and into a format that shows the metrics we want?”  We looked into
using the Harvest API, but quickly realized that we might spend all our time
there. So instead, with the help of some of our brilliant Vigets, we used a
tool called [40]Hasura to set up a GraphQL endpoint over a slice of a data dump
from Harvest and set up a simple static app on a self-hosted instance of [41]
Dokku.
But… we quickly got blocked by the tooling and with our limited time frame
realized we needed to adopt a simpler approach. So we boiled everything down to
the barest minimum to fetch and transform our data. From there, we worked with 
[42]tidy.js to get the data structured in the way we needed, and built out the
visuals for a functional prototype. At the end of Pointless Palooza, we had a
prototype that could read in the raw data for any single individual, calculate
(some of) the necessary metrics, and show them across a couple of screens!
[eyJidWNrZXQiOiJ2Z3QtdmlnZXRjb20tYWxsLWFzc2V]
Nathan giving the Viget team a demo of our functional prototype.
With Another 12 Hours
We managed to accomplish a lot in 12 hours, but didnt get the fully functional
prototype we had hoped we could build (though we knew that would be a long
shot). So what if the team had another 12 hours? Or another 24? Where would we
take this project next?
We could:
• Add in more metrics to show you how you spent your year at Viget.
• Create dynamic animations and chart visuals that convey scale.
• Conduct more advanced analyses that explore things like connections with
peers (e.g., who did you work with the most?) or comparisons across Viget.
• Include additional data sources into the experience, like Slack data or
blog data (e.g., number of articles published and GA4 data). 
• Consider other staffing cases, like biz dev, strategy and people team.
Theres a lot more that we could do with Viget Rewind and I hope that in the
coming months, we will have a chance to work on this project again. But even if
we dont, what weve already created is a testament to our existing skills and
willingness to learn and try new things. Heres to looking forward to the next
Pointless project!
[43] Megan Raden
[44]Megan is a Quantitative UX Researcher working remotely from Mississippi.
She specializes in helping others understand the what and the why of
human-computer interaction.
[45]More articles by Megan
Related Articles
• [46]
Do I need a jacket?
Article
Do I need a jacket?
Steven Hascher
• [47]
Radical RAG: An Embeddings Experiment
Article
Radical RAG: An Embeddings Experiment
Joshua Pease
• [48]
StackStash: Taking Bookish Musings to the Next Level
Article
StackStash: Taking Bookish Musings to the Next Level
Laura Sweltz
The Viget Newsletter
Nobody likes popups, so we waited until now to recommend our newsletter,
featuring thoughts, opinions, and tools for building a better digital world.
[49]Read the current issue.
[50]Subscribe Here (opens in new window)
Site Footer
Have an unsolvable problem or audacious idea?
Lets get to work
[51] Contact Us [52] hello@viget.com [53] 703.891.0670
• Practice
• [54]Work
• [55]Services
• [56]Articles
• People
• [57]Company
• [58]Careers
• [59]Code of Ethics
• [60]Diversity & Inclusion
• More
• [61]Pointless Corp.
• [62]Explorations
• [63]Code at Viget
Sign Up For Our Newsletter
A curated periodical featuring thoughts, opinions, and tools for building a
better digital world.
[64] Check it out
Social Links
[65] Viget
• [66]
• [67]
• [68]
• [69]
• [70]
• [71]
Viget rhymes with 'dig it'. Click here to hear how we say it.
Office Locations
• [73]Washington, DC Metro
• [74]Durham, NC
• [75]Boulder, CO
• [76]Chattanooga, TN
© 1999 2025 Viget Labs, LLC. [77]Terms [78]Privacy [79]MRF
References:
[1] https://www.viget.com/articles/viget-rewind-a-reimagining-of-spotify-wrapped/#content
[2] https://www.viget.com/
[3] https://www.viget.com/work/
[4] https://www.viget.com/services/
[5] https://www.viget.com/articles/
[6] https://www.viget.com/careers/
[7] https://www.viget.com/contact/
[9] https://www.viget.com/
[11] https://www.viget.com/work/
[12] https://www.viget.com/services/
[13] https://www.viget.com/articles/
[14] https://www.viget.com/contact/
[15] https://www.viget.com/about/
[16] https://www.viget.com/careers/
[17] https://www.viget.com/code-of-ethics/
[18] https://www.viget.com/diversity-equity-and-inclusion/
[19] https://pointlesscorp.com/
[20] https://explorations.viget.com/
[21] https://code.viget.com/
[22] https://www.viget.com/newsletter/surfs-up-new-product-open-social-web/
[23] https://www.viget.com/articles/viget-rewind-a-reimagining-of-spotify-wrapped/
[24] https://www.viget.com/
[25] https://www.viget.com/articles
[26] https://www.viget.com/articles/viget-rewind-a-reimagining-of-spotify-wrapped/#hero
[27] http://eepurl.com/gtHqsj
[29] https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Fwww.viget.com%2Farticles%2Fviget-rewind-a-reimagining-of-spotify-wrapped%2F
[30] http://www.linkedin.com/shareArticle?mini=true&url=https%3A%2F%2Fwww.viget.com%2Farticles%2Fviget-rewind-a-reimagining-of-spotify-wrapped%2F
[31] https://x.com/intent/tweet?text=We%20wanted%20to%20take%20the%20unique%20aspects%20of%20Spotify%20Wrapped%E2%80%94its%20personalized%20touch%20and%20sense%20of%20community%E2%80%94and%20see%20what%20we%20could%20do%20with%20our%20Harvest%20time-tracking%20data.%20https%3A%2F%2Fwww.viget.com%2Farticles%2Fviget-rewind-a-reimagining-of-spotify-wrapped%2F
[32] https://www.viget.com/about/team/mraden/
[33] https://www.viget.com/about/team/mraden/
[34] https://www.viget.com/articles/?category=news-culture#results
[35] https://www.viget.com/articles/?category=data-analytics#results
[36] https://www.viget.com/articles/?category=product#results
[37] https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Fwww.viget.com%2Farticles%2Fviget-rewind-a-reimagining-of-spotify-wrapped%2F
[38] http://www.linkedin.com/shareArticle?mini=true&url=https%3A%2F%2Fwww.viget.com%2Farticles%2Fviget-rewind-a-reimagining-of-spotify-wrapped%2F
[39] https://x.com/intent/tweet?text=We%20wanted%20to%20take%20the%20unique%20aspects%20of%20Spotify%20Wrapped%E2%80%94its%20personalized%20touch%20and%20sense%20of%20community%E2%80%94and%20see%20what%20we%20could%20do%20with%20our%20Harvest%20time-tracking%20data.%20https%3A%2F%2Fwww.viget.com%2Farticles%2Fviget-rewind-a-reimagining-of-spotify-wrapped%2F
[40] https://hasura.io/
[41] https://dokku.com/
[42] http://tidy.js/
[43] https://www.viget.com/about/team/mraden/
[44] https://www.viget.com/about/team/mraden/
[45] https://www.viget.com/about/team/mraden/
[46] https://www.viget.com/articles/do-you-need-a-jacket/
[47] https://www.viget.com/articles/radical-rag-an-embeddings-experiment/
[48] https://www.viget.com/articles/stackstash-taking-bookish-musings-to-the-next-level/
[49] https://www.viget.com/newsletter
[50] http://eepurl.com/gtHqsj
[51] https://www.viget.com/contact/
[52] mailto:hello@viget.com?subject=Hello%2C%20Viget%21
[53] tel:7038910670
[54] https://www.viget.com/work/
[55] https://www.viget.com/services/
[56] https://www.viget.com/articles/
[57] https://www.viget.com/about/
[58] https://www.viget.com/careers/
[59] https://www.viget.com/code-of-ethics/
[60] https://www.viget.com/diversity-equity-and-inclusion/
[61] https://pointlesscorp.com/
[62] https://explorations.viget.com/
[63] https://code.viget.com/
[64] https://www.viget.com/newsletter/
[65] https://www.viget.com/
[66] http://x.com/viget
[67] https://github.com/vigetlabs
[68] https://dribbble.com/viget
[69] https://www.instagram.com/viget/
[70] https://www.linkedin.com/company/viget-labs
[71] https://vimeo.com/viget/collections
[73] https://www.viget.com/dc-metro-hq/
[74] https://www.viget.com/durham/
[75] https://www.viget.com/boulder/
[76] https://www.viget.com/chattanooga/
[77] https://www.viget.com/terms-conditions/
[78] https://www.viget.com/privacy-policy/
[79] https://individual.carefirst.com/individuals-families/mandates-policies/machine-readable-file.page