236 comments

[ 2.9 ms ] story [ 230 ms ] thread
macos makes it really easy to record the screen. cmd-shift-5 brings up the screenshot app. but converting them to gifs or other video formats is not possible, unless you use third party apps. in that case, you might as well just use a better screenshot app that does that for you.

what I wish we could record, however, is the system interactions (kinda like how you record games inside the game itself). it doesn’t record a video, but rather your mouse movements and keyboard inputs, along with the location of apps and windows and their state. it would take more space but it would be more useful in case you wanna go back and run counterfactuals.

Here you go.

https://imgur.com/a/BARUMWQ

EDIT: Ah, I realise now this achieves the same thing. But it does record video, so I'm not sure what's missing other than a visual representation of keyboard input.

My gripe with MacOS is that it creates huge files. A few MB for a screenshot, when 250KB are often enough; and probably 10MB per minute for a small area, for video, which makes it immediately impossible to send to customers.
You can configure the native screenshot app to create jpegs (smaller), but I think you lose transparency.
he was talking about videos and he’s right, recorded videos are huuuge
ShareX for you Windows folks. It's great. https://getsharex.com/
Was going to post this. It is amazing.

But I think it will upload to imgur, be sure to configure it off. I have it sent to have in a local folder.

It also has great .gif making support and can also screen record to a .mp4

If you're on Windows 10 or later, there's also Win + G which will bring up the Xbox Game Bar. There you can capture screenshots and video or set up custom key shortcuts to start recording, etc.
Windows 10 and up also has Win-Shift-S, which brings up a screenshot UI similar to that found on macOS with the Command-Shift-5 shortcut.
You can also configure sharex to run tesseract ocr locally on the images, making them searchable while keeping everything sound in terms of privacy. There is also a hack to compress pngs so that the file size becomes next to nothing
ShareX looks great, I will check it out.

In Windows 10, you can also press Win+PrintScreen to save a numbered screen shot to your Pictures\Screenshots folder.

I've gotten mixed reactions whenever I share this, but when I program I like to record my screen with OBS.

* It's a mental hack to keep me accountable, especially now working from home. If I'm in an office anyone can look over and see whether or not I'm working. It started as an attempt to mimic this feeling at home, even though I'll be the only one to ever see the recordings.

* It allows me to go back and see how I worked in the past. I have a few videos of myself working from 2015 which I think is pretty neat just because of how different my workflow was back then compared to now. I'm not using the same tools or even on the same operating system.

* I'm working on video games which is what makes this very useful for me. If something visually interesting happens, or if there's graphical bug of some kind, I can go back and breakdown exactly what happened. I've stepped through videos frame by frame in the past to debug, it's been surprisingly helpful.

* It allows me to go back and see my progress. I can know what I was working on a given day, see how far I've progressed, it's just generally a good motivator. You can of course do this with git, but if you're working on something visual it can be nice to see it in motion rather than a textual diff.

I did the same for a while. It's a neat productivity hack. There are a few services that market accountability by hooking you up with strangers. Both of you must have your webcams enabled, and you just work on whatever you need to do for a set period of time without talking.
I used one such service. It was such a drag. Hated it. Does anyone use it repeatedly with different strangers?

I think I’d prefer live streaming to keep myself accountable to one-on-one sessions with both cams on.

It sounds intriguing, but where do you find the space to store all the recordings? A bunch of external drives? Feels like 8hr/day × 20 days/month of recording my multi-monitor setup would fill up my drive pretty fast.
No need to record 4k 120fps videos if you're doing web development, something like 1080p in 10fps might be enough and it won't take ridiculous amount of space.
Parent comment specifically mentions recording for game development so 1080p at 10fps probably isn't going to cut it.
Update it to be 20~25 fps then, still won't take ridiculous amount of space.
Unlike movies, the content on screen recordings usually remains roughly the same for minutes before switching scene. So it can achieve significantly higher compression ratio even at high fps
1080p may easily mean that the code is unreadable if you have a decent size screen.
(comment deleted)
x264/veryfast, 1080p 10fps at 2000kbps, is more than enough for plain text recordings and it won’t take that much space.

You can go even lower with other encoders (x265) + if you don't record audio at all

2000 kbps = 0.25 MiB/s = 900 MiB/h?

That's only 1.14 TiB per year doing it 5 h/week * 5 days/week * 52 weeks.

You're using 4:4:4 (disabled chroma subsampling) to keep text readable?
You only need 40kbps for acceptable audio, so I wouldn't worry about that at all in this ballpark of video bitrate.
If you record mono speech, opus can produce great results at 15kbps.
If you just want speech, yes. For cheap generic audio I don't think I'd push it below 32 unless I really needed to shave bits.
A while ago I tried to see what compression I could get out of screen recording losslessly to a scratch disk and encoding afterwards as slowly as I could wait. I didn't write any numbers down, but the difference in efficiency was significant. Some observations:

- Of the lossless encoders in OBS/libav, utvideo was the best in both CPU usage and efficiency, followed by lossless ultrafast x264.

- An SSD can handle even uncompressed 24bpp 1080p60, which is 375 MB/s. Typical screen content compresses well below the ~100 MB/s write speed of an HDD. Fullscreen video does not, instead gradually filling the write cache until either OOM or thrashing.

- For onscreen content, I prefer the bitrate tradeoff of keeping PC color range and not chroma subsampling.

This technique isn't as effective for this use case of recording several hours daily, since reencoding must be fast enough on average to keep up. Best to already have a home server (any spare desktop). Otherwise, use AOM codecs, known for poor multithreading, to encode at full speed without hogging CPU.

ps, temporal compression means that dropping framerate makes surprisingly little difference with modern codecs. But I really should be writing down the results of my ad hoc tests...

> An SSD can handle even uncompressed 24bpp 1080p60, which is 375 MB/s.

Well, it can for an hour.

This is a phenomenal way to wear out an SSD for no real reason at all.
(3 days later): Necroing with a link to this serendipitous related submission about building a NAS for professional video editing from 40 TB of SSDs: https://news.ycombinator.com/item?id=32235158

Yea, on second thought, long term screen recording like this would be a terrible waste of silicon. At 150 MB/s, 46 days of nonstop recording would exhaust the entire 600 TBW of a 1 TB consumer SSD. And for fun: a high-end 500 GB SSD writing at 3500 MB/s could burn its 300 TBW in a single day, not counting the EoL slowdown.

Curiously, RAID 0 hard disks are perfect for such workloads, yet the blogger has still chosen to use consumer grade SSDs.

If you’re working on open source, stream straight to YouTube or Twitch. Can be private or not.

I do this sometimes. the accountability hack works even better if someone could be watching.

Bonus points is that it feels way more natural to narrate aka rubber duck problems when you are streaming.

If you have an old machine you can use as a NAS and run raidz2, disks are $7.50/TB or less: https://diskprices.com/

Screen captures also compress much better than live action since most frames are duplicates of their predecessor. So a cheap NAS can run for years before you start thinking of deleting VODs.

Sometimes, I do a full screencap with my face when I am coding. Then at the end of all that, I will even do a reaction video to my full video.

Why? I REALLY enjoy the dopamine rush when you are struggling then find a solution. I see myself pulling my hair, staring blankly at the screenshot then at a random moment of pure luck I find a solution and it literally is euphoric.

I enjoy relieving those moments.

What’re you guys working on that this is a regular occurrence? I just never run into walls like this when coding stuff up.
Debugging is huge part of this. For example, for web where you can plop breakpoint or print statement anywhere and have a good level of transparency into what is happening really helps resolve issues quickly.

Game development where GPU is not really going spill the beans of what is happening under the hood that easily - one can stuck for a longer times easily.

Yeah debugging or testing theories for production only bugs (without adding risk) can be a big source for "aha!" moments.
I'm writing Swift code that calls Apple's UIKit. I'm constantly wasting time trying to figure out how to use the API properly, since it's buggy and poorly documented. Each solution brings relief, not euphoria.
I find SwiftUI a lot more fun but run into similar feelings using it, documentation is maybe worse :/
I'm working on a new collaborative editing engine for arbitrary data, using CRDTs. I'm trying to keep it highly performant. (Like, 300M edits / second performant).

I've been working on this problem for years and I've gone through dozens of design revisions. Sometimes I catch bugs in the design phase. Sometimes I only notice core problems after I finish implementing parts then attach a fuzzer. (Fuzzy boi is the best and the worst.)

Some design problems have taken me months to find a solution. One of my solutions ended up with me rewriting of thousands of lines of working code, written over several months.

We're making great progress; but sync engines are hard.

Multithreading problems Algorithms problems where you have two variations of the algorithm that work for different combinations of inputs and you need it to work for both cases, so you need to merge the algorithms together. This is my most common programming experience. Realising how many problems a problem has, such as constraint satisfaction, layout engines and programming language design. Myers agorithm and diff3 See my profile for links to my GitHub profile to see what I'm working on.
Reducing latency. Or any sort of optimization for that matter. It’s usually a slow methodical process, but every once in a while you look at the right trace and instantly know what the problem is and how to fix it.
(comment deleted)
Nice to hear this! I am a big fan of screen casts as a way to do async updates inside remote teams. Tools like mmhmm an dyac are really good at this and its gives everyone a high bandwidth walkthrough of whatever you're working on however you do it so code, drawings, docs, etc works across a wide spectrum of activity. The rubber duck effects are a bonus!
That’s an interesting idea. I might try this myself
I've found this too... at work I regularly make videos of what I'm doing for other people. Then I realized how much stuff comes up in the videos because I'm being attentive, and started making videos I never share. Like it splits my attention to both act and watch myself acting
I've started doing this more. The videos of my work has always outlasted the work itself. Even though technically I can dig up old compilers or try and update my dependencies, I rarely do. So whatever was captured in the video becomes the only artifact of my older programming projects.

I used to think that video formats would no longer be supported over time, but even the oldest weird video formats still play in VLC and MPC, and probably would work fine if uploaded on YouTube.

Yeah that's neat! The part about reviewing the video. Back in the day we would use VHS to record the game and capture rare glitches to review. Nowadays our QA runs with OBS always on and can attach clips to bugs. It would be cool if every dev had it too.
I discovered a while ago that all those errors and bugs that only appear when you demo something to an audience also magically appear when you record yourself demoing it to nobody. Maybe narrating a feature to a pretend audience takes the blinders off enough that you notice little mistakes you wouldn't have otherwise.
This is a fantastic tip, thank you! I'm definitely going to try this out.
Very similar to the process of rubber duck debugging.
Back in my office days we was doing this constantly. The sentence "will you be my rubber duck" always put smile on my face
I often wish I had a pet dog husky so I could walk him through some tricky python and have him figure out my bug with me.
I've been streaming some of my side projects on Twitch, with OBS.

During the stream, I keep up a fairly constant spoken description of what I'm doing, what I'm thinking, what problem I'm stuck on, etc.

I've noticed I've also been speaking my thoughts out loud when programming, but not streaming. It ends up being a continuous "rubber duck" conversation, and feels (completely subjectively) like it helps me develop easier/better.

why don't you just stream on twitch
Because of sharing internal information from the screen? This would be. My first thought.
I would do that but my workplace doesn’t allow it ;(
BTW do you think twitch is best for this? I'm working with js for the first time and tools seem really slow and poor, I'm sure I'm doing something wrong, I figure looking at others would be great.
Hmm, that's actually a very clever hack.

I'll try it!

How do you setup OBS to keep the recording sizes tolerable?

I've used this before on engineering grade machines, but it doesn't do so well on "everything is in the cloud so you can use a word processor quality" laptop, any advice?

I have a 4k display but record to 1080p, bit blurry but I'm not really using it to find small copy of text, but to see general state of things. Recording in 20fps as well.

I have a small shellscript that takes all video files recorded by OBS, and runs them through this ffmpeg command:

    ffmpeg -i in.mkv -map 0:v -vf mpdecimate,setpts=N/FRAME_RATE/TB out.mp4
Using mpdecimate removes duplicate frames, so if nothing is happening on your screen (although smaller changes gets ignored, like my clock showing the seconds), it removes those duplicate frames.

So one ~1 minute video of you thinking for 40 seconds can get reduced to 20 seconds. Not uncommon for some of my video files to go from multi-GB to just ~100 MB when removing all the pauses.

Very nice tip, mainly the part about when something happens you can rewind it.

What about hard disk space? How you handle it?

The space requirements can be very low capturing something like writing code, where only 1% of the screen might change second-to-second.

"ffmpeg -f gdigrab -i desktop -c:v libx264 -preset medium -fps_mode vfr -crf 0 -an -vf mpdecimate capture.ts" (Windows, -f x11grab -i $DISPLAY for Linux on X11) produces a lossless video that averages 102 MiB/hour for me (1920x1080 @ <= 60fps). That's about two cents a day at current disk prices, and easy to upload as a private YouTube video if you don't want to lug the files around.

If you don't like the CPU hit, use -preset ultrafast to record the capture using less processing power but giving a larger file, and then re-encode that file later using -preset slower. There's no quality loss if you used lossless mode (-crf 0), and for content like this the savings are especially large (reducing to around one-quarter ultrafast size, in my experience).

Wow, I did not know that. Awesome!
Anytime screenshots come up in conversation I have to recommend Flameshot, it totally changed my workflow with including them. You can create, crop, and edit screenshots really quickly and it's a must-install for me at this point. Open source and cross platform. https://flameshot.org/
A wonderful tool that promptly broke when I switched to Wayland.
Flameshot is great, the only thing that would be better is if you could video record a screen region using the same UI instead of just taking screenshots.

Most screen recorders are incredibly cludgy. They either require extra cropping and editing after the fact or tank framerate into being unusable. I don't understand the technical problems and the whys though.

Flameshot is great. I wish there was a way to use a different image hosting service -- a self-hosted one preferably -- than imgur.
I take screenshots of the Windows update with an iPhone.

A spinner shows with the words Working on updates. 100% complete. Don't turn off your computer

Windows 11 is ready—and it's free! Get the latest version of Windows with a new look, new features, and enhanced security. [Download and install] [Stay on Windows 10 for now] Checking for updates ...

Is there some software (macos) to regularly create screenshots throughout the day? Preferably if it merges it into a time-lapse.

I could probably create something with cron, but maybe a neater solution already exists.

Yes, I have ten years of screenshots (and webcam shots) at half hour intervals from having LifeSlice:

Source:https://github.com/wanderingstan/Lifeslice

Download page: http://wanderingstan.github.io/Lifeslice/

I developed it as an early Quantified Self tool primarily for the Webcam shots, but also have been saved on more than one occasion by having screenshots of work that would otherwise be lost.

Edit: the first version was just a shell script, which if you want a starting point to modify: https://github.com/wanderingstan/Lifeslice/blob/master/1.0-S...

Something bash'ish

  while sleep 5
  do
    import -id root `date -Is`.png
  done
Then make a time lapse with mplayer et.al.

  $ which import
  import not found

How should I install that tool?
import -window root `date -Is`.png
I used to use chronolapse, a python program to take screenshots, including picture in picture with a webcam. It can use mencoder to create a video. I found I preferred using ffmpeg for my use case.
I've been happily using Time Sink (https://manytricks.com/timesink/) to do this for about a year now. It does not automatically merge into a timelapse, but this is accomplished easily with ffmpeg.
I use cron; I think it's pretty neat:

/$INTERVAL * * * /usr/sbin/screencapture $CRONSHOTSDIR/`date +\%s`.png

and then to make the timelapse:

ffmpeg -r $FPS -pattern_type glob -i "*.png" -vcodec libx264 lapse-`date +%s`.mp4

You have to give screen capture permissions to cron.

> Is there some software (macos) to regularly create screenshots throughout the day?

On macOS here's a little shell command to take a screenshot every 60 seconds and place it in the /tmp folder:

   while true; do
      screencapture /tmp/screen_capture_$(date +\%s).jpg ;
      echo "wrote screenshot";
      sleep 60;
   done
You can also include the name of the front most application by fetching it with AppleScript and then putting that in the filename. (Or you could put different app screenshots in different folders)

   while true; do
      FRONT_APP=$(osascript -e 'tell application "System Events" to name of first application process whose frontmost is true');
      screencapture /tmp/screen_capture_${FRONT_APP}_$(date +\%s).jpg ;
      echo "wrote screenshot";
      sleep 60;
   done
Of course if you want this to run long term, use a cron job or even better, a launchd job. With launchd you get better coalescing and sleep recovery behavior. You can also add other fun trigger events. Like take a screenshot every time your `.zshrc` is modified [0]. Or a screenshot every time your internet access changes (by triggering on /etc/resolv.conf)

[0] Look up `WatchPaths` on my favorite launchd guide here: https://launchd.info/

Just remember to disable it before attempting extra curricular activities
Last month while I was backing up my old files from my 2005-ish laptop, I also realized that screenshots are very nostalgic. Just like this old Android project I worked a decade ago and if anyone wants to feel nostalgic on Google’s Nexus 7: https://initviews.com/2022/07/16/legacy-projects-part.html
That looks pretty horrible (text on top of placeholder/label?!), but seeing the OS again is indeed nostalgic.

Plus just the feeling of WIP app I guess. That could have been me.

Yeah it was just an experimental UI design thing. I remember back in the day I don’t give a crap about UI/UX. As long as the ListView functions smoothly.
I couldn't agree more an I appreciate someone giving permission to not feel bad about accumulating screenshots.

I just went through three years worth of screenshots from attending tech bootcamp and working my first dev job. It was a great reminder of projects and people I care about who I'll probably never get to work with again. Like random office polaroids for the remote work era (as if I'm that old).

To my own surprise my only regret was that I should have taken more screenshots... Also they're all pngs...

I am a big advocate of this, I spend a lot of time in online meetings and presentations and use Onenote to take my notes. A screenshot in context is extremely useful when revisiting later as I am a visual thinker. The ability of Onenote to index text in a screenshot is one of the most useful features in any program and allows me to find items even if I only recall a snippet of context.
I totally understand the desire to keep a record of the past, and space is cheap so why not. I used to be a big "digital hoarder", virtually never deleting anything that might be a bit interesting. But a couple years back I deleted most, though not all of the "archive" of past me. It was a great decision that I don't regret. The important things you did will still surface from time to time. It's also always cool to accidentally find a photobucket or google docs account you forget you had and look through it for 10 minutes. But I just don't find value in intentionally preserving a digital record of myself, and instead allow serendipity to poke my nostalgia centers on occasion. Sorry for the violating the spirit of the thread with a contrarian opinion. My point is just that I've done the digital hoarding thing for years and it turned out to not have value, for me.
It’s not always about hoarding.

Legally it’s very helpful if you create a paper trail of your work

Yeah, I think it can be great if you're intentional about what you're preserving and why. To elaborate a bit, I went from having tens of thousands of emails a few years ago to "only" having about 5k now. I did that by adopting a strategy of aggressively deleting trivial emails. I apply "aggressive decluttering" throughout my digital life, with screenshots also (trying to stay on topic a bit), old conversations, failed creative projects, etc, and have found the benefits of less clutter to be profound.

I never really regret deleting something, but that could be because I try to keep my life simple, within reason, and focus on the future.

I also recognize, as you point out, that there are limits to this -- sometimes there is a genuine need to keep a record. As a programmer, my work is all tracked in git. For a creative professional, I assume that a basic requirement of that sort of job is an excellent backup system.

I used to save everything I did in the past. Over time, I've found that I almost never needed to access those files and most of that wasn't even useful for the kick of nostalgia. Old games? I already replayed them to exhaustion.

I learned that the nostalgia is not about the files by itself but my life context at that time. I don't miss old code or Old OS's. I miss that sense of wonder when I was less experienced and more naive, and everything was new.

>I learned that the nostalgia is not about the files by itself but my life context at that time.

I'm learning the same - whenever I feel nostalgic about playing an old SNES or PSX game, I've realized that it was just about that time in my life, and usually just watching a clip on youtube or listening to the soundtrack is enough to scratch the itch, rather than actually playing the game again

>It's also always cool to accidentally find a photobucket or google docs account you forget you had and look through it for 10 minutes.

I find that horrifying. I would probably scramble to delete that as soon as possible. Don't know about anyone else here, but having my junk float around the internet is mortifying. I delete unused accounts as soon as the thought of it pops into my mind.

Yeah like, dude deletes all his local files and is fine with personal stuff floating through the internets and randomly finding that stuff. I'd rather do it the other way round.
Different things are important to different people. I did have a "digital paranoia" phase but it gave me more anxiety than it was ever worth. :)
I am myself dealing with the effects of my digital hoarding and trying to delete as much as I can, but I do think that is different from this.

1. Photo apps like iCloud Photos, Google Photos, and Photo Prism are getting much better at auto organizing/cataloging what photos are and surfacing them together in much more interesting ways. More photos is now a plus instead of a minus. 2. You can always delete, but if you never record you can't go back and record (often).

So I take a Marie Kondo "Keep what Sparks Joy" approach and delete anything I find that I do not care for when I find it. I also sometimes pick an area of stuff I have and try to aggressively delete things I don't care for.

i i i me me me i i i
The "Virtual Trash Can" approach can be a middle-ground. You keep records, but regularly move them to a NAS or any other storage that isn't something you'd accidentally wonder into.

In day to day life these past record could as well not exist, but you still get to go look at them if you're willing to make the effort to do so. Also being willing to lose these items if something catastrophic would happen relief a lot of the archiving burden.

Hoarding is way different from taking snapshots of your work.
Yeah. I meant that I don't see the value in keeping those snapshots for years and years. Space is cheap, but for me there was something unhealthy about the practice, which is why I used the word hoarding. Deleting the hoard was actually quite freeing for me, and it was a little surprising that I never actually missed e.g. the hundreds of screenshots of in-progress games I was developing. So I just wanted to share that perspective, not really expecting people to agree (almost didn't post my comment at all.)
I actually like when such findings evoke older emotions in me, puts things in perspective for me, how much have I grown and how much I am still the same etc etc
I used to feel the same way. Then the internet forgot the stuff that I thought would be there forever. Now only a few remanants remain. I still look at my DeviantArt and Livejournal accounts when feeling nostalgic. Those will also one day be relics of the past. I should back them up somewhere.
While your memory might be great now, it won't be so forever. Serendipity might not happen as often as you would like, and "important things" may not be all you want to remember.

I'm sure your parents or someone from their generation have actual, physical photo albums from their past - and that the experience of browsing through these photos brings back things that they haven't necessarily _forgotten_ about, but that they wouldn't have brought into active memory unless they were browsing through them.

Over the years I have experienced and built many things that I do not deem "important" to me, yet when I see them mentioned (even in writings by myself), it takes me back to that point in time - all the feelings, learning and discoveries that it brought to life.

An example is scrolling through a list of my repositories on GitHub. Some of the projects on there I have "forgotten" about, but with the mention of it I am instantly brought back and remember a whole lot more details - motivations, feelings, the ecosystem...

This is just the way I see it: unless you make a deliberate effort to scrub yourself off the Internets, most people leave a bewilderingly enormous digital footprint. I think that's what makes the analogy with the physical generation not really work: that generation had a scarcity of records, while we have an absolute over-abundance. For most of history, most of our conversations, creations, the way we looked, etc. were not recorded, so I just don't see this over-abundance of preserved records -- which is quite a novel thing -- as being important to the human experience. But definitely appreciate your perspective, thanks!
I always try to separate my data by importance.

I.e. photos and important documents are only about 50GB so very easy to keep. This would be the things that I wanted my family to keep, If I died.

Then theres random projects and files that I keep in yearly archives, just to look and remember what I was up to x years ago. That's also not huge amounts of data (1-2 GB per year).

And then theres data which I didn't create. E.g. movies, game installer,... Where a loss wouldn't really be a big problem.

I taught myself Commodore BASIC and 6502 Assembly including writing a BBS program between 1982-1985.

I kept literally nothing from that time or probably even a decade after.

Literally hundreds of thousands of lines of code.

I make lots of screenshots.

The problem is organizing them ...

Perhaps if I ran them through OCR, it would be easier to grep through them.

Not just OCR, but object recognition - just has to be smart enough to read the window's title bar to tag the shot by applications present in it and by document name when some are visible.
Google Photos does it for you. Very handy a few years ago, I took a picture of the private wifi password backstage at a bar I used to work at, lost the saved login when I swapped phones. Searched my photos for "Thunderbird" and boom... a picture of text saying "Thunderbird private WIFI password".
I'm a bit disappointed that this doesn't work in Apple Photos. The app does a fairly good job at recognizing photos and doing OCR, but you can't search the text.
When I was 8 or 9, my dad brought home a Macintosh SE/30. On it, I used MacPaint to create 5 or so black and white paintings using the various patterns and brushes. It is probably the first creative thing I did on a computer.

When we upgraded to System 7, the version of MacPaint didn’t run and he told me that essentially the art was lost and unrecoverable. I can picture in my mind what they look like, and wish I had the file to look at.

It's probably not much help now, but if you still have the floppy disks, those pictures can definitely still be viewed again.
You can even bring them into the modern world with Mini vMac… by taking a screenshot of it!
Tragically, they weren’t ever saved to any disk that I’m aware of.
It's too bad that screenshots don't have more useful metadata. Or any useful metadata, beyond a timestamp.

I'd like to have the names of all programs visible in the screenshot (easy), possibly application specific metadata like the opened filename or a URL (more difficult) and more generally full OCR of the visible text (pretty easy). You'd need a PDF to get the most out of this, but presumably most other image formats have generic metadata storage.

Additional meta-data may in the future be extracted through machine learning from such videos.

Regarding open programs: I once led a project where we developed something that keeps track of the software you're running (no screen recording) in order to conduct research into attention and distraction. We didn't have the resources to support many platform versions, so we wrote only a Windows client (most used OS on the floor). It was similar to RescueTime https://www.rescuetime.com/ but more respecting one's privacy and absolutely avoiding the cloud, as we deployed the experiment in a lawyer-intensive environment; for instance we logged running program names but not titles of open windows because file names often reveal sensitive matter. We questions occasionally how productive they felt in the last half hour, and they could comment.

> Additional meta-data may in the future be extracted through machine learning from such videos.

Why can't we le the ML models figure classification themselves and then give them the human data to adjust to be readable by the human.

A paid tool in this direction is APSE (https://apse.io) which bills itself as a personal search engine that OCRs intermittent screencaps. I loved the idea, but in practice it lacked polish. I agree that additional metadata like foremost application filepath/url would take this to another level.
The screenshot tool i use called shareX https://getsharex.com/ allows for so much customization. It's FLOSS.

You can set the File name using various parameters in combination like - time date - program name - window title

This can also be configured to do complex workflow like

- for each screenshot add a border then copy image to clipboard and then upload to Imgur and copy url finally run and ocr and copy results as well.

I still have files I made from the 90s... but my guess is that they won't be around forever.
I do wish that I had kept a universally readable record of more of my work over the years. I've managed to preserve a fair deal of it, but there are notable holes and a lot of it is software which isn't going to run without some tinkering, particularly the projects with significant third party dependencies. Web stuff (e.g. RoR projects) is particularly bad in this regard, often being nigh unrecoverable.

The bigger thing to emphasize I think though regardless of archival method is to make sure to regularly back things up. Some of my earliest things from the 90s were on the boot drive and got wiped when the family computer needed a reformat. Later on when I had my own computer, a lot of stuff was on an external drive to make room on the boot drive, but one day the external decided to kick the bucket and everything on it went up in flames because there were no other copies. I didn't have much cash at that point since I was a high schooler but I'm sure I could've figured out something that would've preserved at least the most prized documents.

These days I have everything automatically incrementally backed up with Backblaze but now that Time Machine on macOS uses APFS snapshots and is more storage efficient I also want to use my home server for backup.

I've been using timesnapper on Windows. It will capture a screen shot and timeline it based on title/program text. For years. The time portal aspect is fascinating, and ultimately useless.
This looks interesting but my antivirus didn't like it as it detected "SWF.Exploit.Kit.Rig.tht.Talos" when downloaded from https://timesnapper.com/
Founder here… looking into this.
Thank you, I appreciate your time and help! I guess it's a false positive on my side but have emailed details to support
Here's a virus total report on the file. I find virus total useful (as a product developer) because it will help show cases where some smaller scanner is reporting a positive.

https://www.virustotal.com/gui/url/718fe790bb2c1d97428199830...

tl/dr -- virus total is happy with the file.

It remains possible that middleware of some sort has altered the file before you accessed it.

You can check the hash of the file like this:

get-filehash ".\TimeSnapperProSetup.exe"

and it should return "B50A4449C9C36871280A842A530EA19694C7CBC4CF55CED5A620D8838D87CA1E" -- the same hash shown in the virus total report.

Thank you for your quick response! I get the same hash, so a false positive it is. I am really excited to test your product, it seems very nice!
Fellow TimeSnapper user. I combine it with a script that collapses it to a daily archive video. 4kx2 monitor setup, at 5 second intervals, have also been saving things for >5 years now.

It feels like a superpower sometimes... Reviewing the exact research steps of projects from years ago based on a timestamp from browser history, digging up an archaic screenshot of just the right configuration screen based on a file modification date, etc.

Sorry you find it useless...

Tropy is an application to turn photos into documents and organize the items via collections. It’s free and open source. My partner’s research involves collecting images and they find it works well.

https://tropy.org/

I use Hazel[0] to archive everything in my "downloads" folder after a month. Files get separated into "~/Archive/Images/", "~/Archive/Screenshots/" "~/Archive/Audio" ..." depending on certain criteria (mostly file type). Each sub-folder is broken down by year and month, for example "~/Archive/Images/2015/05/". I also occasionally dump stuff that doesn't belong elsewhere into the same folder system, for example WhatsApp media.

Basically, if it doesn't need to be specifically filed somewhere, I just put it in my "downloads", knowing that it will be somewhat searchable in the archive by either date, file type or in-document search. This is great for all of the bits and pieces that you don't necessarily have a home for or want to manage.

[0] https://www.noodlesoft.com/

I do something similar, except files are moved from Desktop > Downloads > 'Needs Review' after 1/7/30 days. The vast majority of files are trash, and I simply delete them every other week from the 'Needs Review' folder manually.
Bit late to this thread. Another "archive" idea is to capture archive.org links of past projects. And it can be used to showcase things in the future.
For Windows folks, I’ve found OneNote’s screenshot tool convenient for quickly adding screenshots while taking notes.
One of the things I regret most is not keeping backups of the programs I wrote as a child almost 25 years ago. They all just gone, tens of thousands of lines of code. I remember spending whole summers coding and it's all gone.
I use ShareX[0] to screenshot all my work. I have it set up so that CTRL-SHIFT-F6 makes a screenshot of a region and it's automatically uploaded to some shared hosting server. It's a lot of fun to see work back from years ago!

[0] https://getsharex.com/

I like to take a screenshot too when having just created something. Myself I like to create a screenshot of my whole desktop. Years later I get a nice feeling of nostalgia seeing what theme, wm, apps etc. I used to work with. For the same reason I usually enjoy old photos more for what is in the background than the subject itself.
Can’t pass by without recommending my https://shottr.cc (app for Mac.) I’ve set a dedicated folder for screenshots and save there literally everything now — purchase receipts, important chat conversations, work in progress, reminders to myself, zoom slides. Agree with the author, screenshots are under-appreciated.
Thanks for sharing - installed and liking it so far. Looks like it can replace Monosnap for me.
A few years back I was going through some old floppy disks I found in a box and, on one of them, I found a screenshot I took of my desktop circa winter of 2000. In it was a window open with a MUD I was logged into at the time. Another window had Winamp open with a playlist of songs and another window had ICQ open. The only reason I took it was because there was an unofficial competition between our pub and another pub elsewhere on the MUD about which was more popular, and we had finally surpassed them.

It's amazing how many emotions seeing that one image gave me. But the biggest was just this overwhelming sense of nostalgia. As I looked at that, I could remember what I was thinking, what I was feeling, everything that was happening in my super confusing teenage life at that time. Occasionally I will look at that image now, even 22 years later, I can still feel all those feeling again.

Of course, my ex's character is in the screenshot too. So, a bit bittersweet as well. :/

Interesting madeleine cookie
(comment deleted)
maybe some HN readers don't get the madeleine reference: https://www.thelocal.fr/20190814/french-expression-of-the-da...
I'll expand on this since I found it interesting. Essentially it's a reference to a French epic called "In Search of Lost Time" by Marcel Proust. It was his life's work and is around 4.2k pages or 1.3 million words! That's much larger than "War and Peace", "Les Miserables", "Crime and Punishment", "The Iliad", and "The Odyssey" combined; which is super impressive.
I have never had a Madeleine cookie, they are not common around here. Are they worthwhile to bake yourself? Since they are so famous because of this reference, I think I should find one to taste.
They use a lot of butter and they go well with coffee. Yes. (Both Wikipedia [1] and the Joy of Cooking consider them cakes rather than cookies.)

[1] https://en.wikipedia.org/wiki/Madeleine_(cake)

[2] Irma Rombauer, Marion Rombauer Becker, and Ethan Becker. Joy of Cooking (rev. ed.). Scribner. 1997. pp 962-963.

Interesting, for some reason I translated the Croatian word "kolačić" for "small cake" to cookie. I guess cookie is not a small cake. In Croatian the expression is "madeleine kolačić".
Thanks for this. My father was reading Swann’s Way when he passed away. I wonder what his Proustian madeleine was?
I still have computer files from 15 years ago, the time I was in high school. They are of no use, but I keep them around. Class projects, power point slides, word files.

I have deleted everything from uni though.

Very cute story! I have a lot of my files going back to my first computer. Maybe 2003 or so. I have a lot of screenshots, high school work. I have all of my chat logs from msn. I just know when I’m older and my mind is weaker, looking back will help jog my memory.
I think you would enjoy the “Emily is away” series of games on Steam.
Exact same thing happened. Found a bunch of old screenshots from 2000 to about 2006. So many programs you just stopped using at some point without really realizing, but seeing the screenshot immediately makes you feel like past you again, and what it was like to use your computer back then.

Especially when you see parts of a conversation with someone you didn't talk to in over a decade, or who passed away. You'd think that's what a photo would do, so I was surprised how strong of an emotional reaction screenshots can trigger. But then if you were spending 90% of your time online as a teen/early 20s it's not that surprising on a second thought.

> But then if you were spending 90% of your time online as a teen/early 20s it's not that surprising on a second thought.

You know, this is a very enlightening point. I never really thought about it from this angle, but there is a lot of truth to this.

I struggled a lot as a teen with anxiety, depression and bullying. I had a few IRL friends, but the very vast majority of my social interaction during that time came via MUDs and chatting. Many of the people I played and chatted with were fellow social outcasts, and we created our own parallel virtual communities to support and lift each other up. It didn't matter where we were, what we looked like, or how we did or didn't fit in. Many days in the 90s it felt like going to school was the thing I had to put up with, and logging in and seeing my friends when I got home was my real life.

Without them, there's a very real chance I might not be here today. Even all these years later, the people I met virtually during that time are still some of my best and closest friends, and it's a real treat when my travels take me close enough that we can meet for coffee or lunch. Many were at my wedding even, and in one case that was the first time I had ever met them IRL. And yet we knew each other deeply. It felt like we all grew up together because, kinda, we did.

When you look at it like that, those of us who grew up in that environment would look at a screenshot from that era the same way others might look at random photos from high school. Because this was our world.

Zoom meetings have been great for screenshot potential. Previously if someone had an interesting slide at a conference you would have to zoom way in with your phone and hope you got it with enough resolution from your seat.