Hacker News new | past | comments | ask | show | jobs | submit login
Take more screenshots (2022) (alexwlchan.net)
369 points by sanketpatrikar on Jan 28, 2023 | hide | past | favorite | 176 comments



When I started making a game [0] last year, first thing I did was write a little Unity script that takes a screenshot of the opening scene, counts current lines of code using CLOC [1] (for fun, not as a true measure of anything), and occasionally renders it all out to an image file.

With that I'm able to create some pretty fun time lapses of progress. I've been doing this at an arbitrary milestone, whenever my Luau [2] LOC surpasses C++ by another factor. This post reminded me I'm overdue for another now that Luau > 3x C++ LOC.

I find it rewarding to look back at my progress. I'll share in case it's interesting for you too [3].

[0] https://store.steampowered.com/app/2168330/Helmscape/

[1] https://github.com/AlDanial/cloc

[2] https://luau-lang.org

[3] https://twitter.com/kineticpoet/status/1619508466212831232


Nice, love the time lapse gif!


Thanks for sharing! Very interesting to see the development in the timelapse. Going to do this for my next Unity project.


The time lapse on your twitter is great... really fun to see those simple shapes and environment get more detailed, better lighting, shading, etc. Thanks for sharing!


Thanks for sharing, Super cool. I wishlisted and downloaded the demo.


I made my first website on geocities and it kills me that I cannot for the life of me find a record of it any longer.

It was a website that "sold" replica/counterfeit watches.

I was enthralled with them as a child for some reason. I knew they were popular items on the fledgling internet so I created a webpage for them on geocities and setup an email address to contact if you would like to purchase one.

I had lots of interested parties who wanted to buy the watches but unfortunately my parents would not front a 12 year old the cash required to purchase them in bulk from the shady internet supplier I had found. Probably a smart move on their part.

Fun times!

I ended up purchasing a few really high quality replicas when I visited China decades later as an adult.

I miss the early internet.


Geocities was reasonably well archived, do you remember the URL?

https://archive.org/web/geocities.php


I'm in a similar situation, I even remember more or less how it was visually but for the life of me I cannot remember the URL or what nickname I could have used, I cannot find it by my 16yo me nickname I remember :(

Edit: reading the page, it's a scrape from 2009. My page was from 1997-1998 and basically used only by me and my circle of friends, chances are it has been lost forever.


archive.org geocities scrapes go back to 1996, so it is plausible it could have survived:

https://web.archive.org/cdx/search/cdx?url=geocities.com&mat...

If you ever remember any of the details, the CDX API can probably help.

https://github.com/internetarchive/wayback/blob/master/wayba...


Iirc You can search web archive by string, not just url


I was worried about same issue as well, although mostly in the area of website/knowledge screenshots as my desktop screenshots are pretty low in quantity.

Recently decided to selfhost Archivebox.io app. It feels a bit rough but delivers decent results. I love the PDFs and single file HTML dumps.

Managed to secure some very old sites I relied on for ages but never really saved them. All can be refreshed, dumped again, tagged, searched. UI is actually a Django admin page.


If I were your father, I would have been damn proud of you. I wouldn't have fronted you the cash either though.


I'm in a similar situation too. I had a website in 2000 hosted at cjb.net.


Try the archive.org CDX API, you might be able to find it.

https://github.com/internetarchive/wayback/blob/master/wayba...


My first website, which I started in 1999, was first crawled by archive.org in 2005. I think that it was a few years late the computer science department decided to no longer allow alumni to have free home pages, and I lost access to the site.


I take screenshots all the time, and sync them to iCloud so I can access them immediately on my phone/iPad. I also back up previous years of screenshots, I think I have back to 2015 right now.

But one thing that I've been keeping my eye on as well (and used for a month) is https://www.rewind.ai/ which records everything that happens on your M1/M2 mac screen and is immediately searchable.

Just like Alex says here "They’re not as good as having the original, working thing – but they’re much better than nothing. I can dip in quickly and easily, and instantly be reminded of the creativity of my past self." And I think arguably Rewind solves for that completely (with the added cost of increased storage space and less specific capturing/resolution).

This isn't a pitch for their product, it's just a natural progression to screenshots/capture that I believe is relevant here.


This looks absolutely amazing, it honestly feels like someone made this program just for me because I kept nodding to myself as I was reading through the feature list. Just what I want! But I'd never use a closed source software for something as personal as recording everything I do on my laptop. They can have Wireshark traces and weekly audits with a digest going straight to my inbox, proving nothing ever leaves my Mac, but I still wouldn't use it. It'd just feel unsecure even if it realistically probably isn't. Hopefully we'll see something like this as a fully OSS solution some day.


Ubuntu ..14 or so.. had a really good activity journal, where you could see on a timeline every file you touched, website visited, song played, etc. It was not quite a continuous video, but it was so helpful. Something changed that seemed to have stopped the whole project working on newer versions. Maybe the zeitgeist log it relies on is not used by applications so much any more

Edit: found it https://manpages.ubuntu.com/manpages/jammy/man1/gnome-activi...


As an added note, I stopped using Rewind because of the "steep" monthly cost ($20 a month), and the fact that I'd only want to use it as a backup to use long term.

Upon reflection, $240 a year to have completely uncut video of my computer screen instantly searchable forever is a very valuable offering. Not to mention the fact that the file size is fairly small compared to large 4k videos.

If it were built into macOS I'd be blown away and use it forever, still on the fence about it.


If the rewind feature set—especially the search through screen recording aspect—is the most compelling, then perhaps something I've been working on may be of use. It can basically do everything rewind can (though audio support is a WIP), doesn't cost anything, and feedback would be really helpful.

Shoot me an email at govind <dot> gnanakumar <dot> com if you're curious or interested in beta testing it.


I'm interested, and I'm attempting to email you, though I can't quite figure out the email address. I keep getting an address not found error.


I poked around their post history and their email is actually: govind <dot> gnanakumar <at> outlook <dot> com


Wow thanks for that! Much appreciated.


I also stopped using it for the cost, even though I loved the software.


It's a niche product it seems. I have zero interest in it.


I mean, I have zero interest in Instagram, but that doesn't make it a niche product.


That makes sense. This archive tool is even more out there because it's not a direct link or file of the content, but just a capture of what the content would be. My work is mostly UI/UX and design related, so the capture is actually pretty valuable.

I'm a bit of a digital packrat, and sometimes like to review personal files from nearly a decade ago, so I think something like this would increase in value for me over time.


Sort of. The more you hoard, the more painful it is to trawl through the hoard to review. It reminds me of Linus Torvald's "Only wimps use tape backup. REAL [adults] just upload their important stuff on ftp and let the rest of the world mirror it." -- let your work be remembered on the basis of who it had an impression.


I've been looking into Nextcloud/Photoprism for a more efficient storage/browser experience, but honestly the software seems pretty amateur so far (vs Google Photos / Apple Photos).

For now, everything is loosely store on an SSD, with different folders for year/month/day (of backup). Screenshots are stored by year.

I'd really like a google photos browsing experience for all my data backup, regardless of content type (well, with filters).


That quote is partially missing the point here : part of the value to you is the emotional one as the creator of that thing - the most obvious example from a slightly different domain being baby photos.


Rewind looks cool - almost magical (I imagine part of the magic is due to the M1/M2 chips).

But I would be concerned overly relying on them. They've raised VC money, which means their future path is unclear. I don't know what direction their product will take if pushed by VC growth expectations. In particular, this is just a client-side only app with a pretty clear and finite feature set. But VC influence means there's a risk they will be shoehorning in features and online capabilities to promote growth.


(I’m the co-founder & CEO of Rewind.)

While it’s true we raised money from VCs we did not give them a board seat or voting control. I have super-voting shares and am the only member of the board. We will never be pushed around by VCs.

Our vision is to give humans perfect memory and we will not let VCs get in the way.


Hey well I'm glad to see you in the replies to one of my comments! Love what you're doing, and I'm following updates.


A reminder that iCloud Photos is not end to end encrypted, and that both Apple and the US federal police (FBI et al) have warrantless access to the contents of iCloud, so you are creating a huge trove of data that could be misused against you by police at any point in the future should it be politically expedient to do so. Screenshots frequently contain all sorts of extremely sensitive information.

This may not be part of your threat model, but it should at least be known by people so they can evaluate the risk themselves.



Approximately nobody has this turned on.

It's opt-in, so approximately nobody ever will.

Everyone you iMessage with will still be putting all of your conversations and attachments and iCloud message sync keys into non-e2ee backups from their end, so turning this on won't accomplish much even if you know about it.


> Approximately nobody has this turned on.

It doesn't matter as long as the person storing screenshots in iCloud turns it on.

> Everyone you iMessage with will still be putting all of your conversations and attachments and iCloud message sync keys into non-e2ee backups from their end

Weren't we talking about storing screenshots in iCloud photos?


Tomorrow it might become opt-out.

But I still wouldn't trust Apple 100% : we know that they were among the companies silently cooperating with the NSA, and the potential for backdoors in their software isn't nil. (Whether you should consider this as a real threat depends on your circumstances of course.)


Actually came here to mention rewind, too.

It’s simply put a groundbreaking game changer for me.

Be it finding text in conversations, using it to recall the face of an applicant when their name doesn’t ring a bell, find code, find text in websites you visited, going back to make sure your eyes didn’t trick you, …

I recently started to enable closed captions in all applicant interviews so I can search for specific terms I recall after the fact.

Truly amazing.


How does it work when a simple search returns too much data? Or is that an edge case? I think that if you used Rewind for several years, the amount of hits a specific search would return is insane (for example, searching for "dog", if you remember seeing a specific dog breed some time ago, but not sure when or where)


one kinda similar app on windows is ManicTime https://www.manictime.com/ which can track opened apps, documents and URLs, and put them on a timeline. it can also automatically take screenshots (on a rolling period, limited to paid version), but I find the limited free version to be quite useful in itself.

though, while it's neat to have activity history be accessible like this, it still doesn't compare to the value of intentionality of manual screenshots, and bookmarks, and notes, and files, and stuff like that. while it may be neat to be able to get back like this to something you missed while you browse, if it's done only to find it and put it down as a note/bookmark/screenshot/file, you just come back to systems that are already present and searchable.


I have been taking screenshots for years, but it developed into a hoarding OCD. And it is ruining my life. My regular life is being interrupted by taking screenshots all the time, so I have relatively less time to work on important things. I don't even view those screenshots again in the future so the time spent on those screenshots is completely wasted. I don't recommend having a habit of taking screenshots to those that may be vulnerable to OCD.


> My regular life is being interrupted by taking screenshots all the time, so I have relatively less time to work on important things.

I think I lack perspective on this and am not quite understanding what you mean. Where is the interruption coming from? Why do you need to take screenshots?


> I think I lack perspective on this and am not quite understanding what you mean. Where is the interruption coming from? Why do you need to take screenshots?

I have this too but it's in the form of saving URLs of interesting things. I just fear stumbling upon something nice, not saving it and then not being able to find it again (which happens regularly btw; Google search and reddit search are pretty bad at finding things when my only context is "I saw it last week or something")

Honestly it's exhausting.


It could be worse once you realize that webpages can disappear. So your saved URL doesn’t even help, you’ll actually need to save the page as some kind of archive.


The tool I mentioned above auto save the full text content of your visited web pages locally so you could look back even if the server is down


Safari (and I think other browsers) has some great history search features. You maybe could explore those.

https://support.apple.com/guide/safari/search-your-web-brows...


>Your Mac can keep your browsing history for as long as a year, while some iPhone, iPad, and iPod touch models keep browsing history for a month.

>Your History shows the pages you've visited on Chrome in the last 90 days.[1]

I'm not sure if nextaccountic would find 1 year or 1 month or 90 days sufficient.

[1] https://support.google.com/chrome/answer/95589


I don't use macs.. Firefox history is pretty much useless but there are some extensions like https://addons.mozilla.org/en-US/firefox/addon/firefox-bette... .. but none really satisfying

Generally the best extension to save things is https://addons.mozilla.org/en-US/firefox/addon/tab-session-m...


You can use a personal search engine, it runs locally, allowing you search back the content you visited without SEO junks nor privacy leak.

https://github.com/beenotung/personal-search-engine


Doesn't yacy do the same thing?


Sounds like it's a compulsion, same as people who check the stove or faucet just in case, GP takes screenshots just in case.


Just set up a screen recorder to record a frame once every second into a video file.


I used to use TimeSnapper for that. The classic version is free.

It did use a crapload of disk space though (20GB per week?), and most of the data is almost identical, so I started designing an algorithm to store only the differences between images before realizing I had reinvented video codecs... so I just made a ffmpeg one liner to convert the image sequences to mp4 :)


You can capture straight from the GPU into the GPU's video encoder and directly get h265 frames efficiently without laundering the whole framebuffer through system RAM each time.


Nvenc is actually quite nice and easy to use for that, but if you want to do any serious post processing you'll need to parse h265 (headers at least) and it's not the easiest parser to write.


How can I do that?


On Windows, there's an API to capture the display as a DX texture. Then either use NVENC or AMF to encode. You'll get compressed frames that you can just stuff straight into whichever video container you like.


Good thing you realized this is exactly what video codecs have been doing for decades. Thanks for the chuckle, though.


Since you used the phrase “my regular life is being interrupted,” it really does sound like a bit of a compulsion. I’m sorry to hear that.

Have you tried talking to a psychologist or a psychiatrist? OCD and similar disorders are hard to “cure,” but I know from close friends and family that therapy and some drugs both can be helpful in giving you back some control, as well as dealing with some of the itinerant anxiety and depression.

Either way, hope you’re doing okay!


You can download existing auto-screenshot-tools or even setup a cron to take them every 2 seconds. Maybe it could reduce your OCD by knowing it is always being done for you?


I feel like screenshots every 2 seconds would take more space than a full screen video capture.


It does! I ran into this issue (disk filling up with screenshots) and realized that the optimal compression solution already existed and was called a video file, so set up a script to run on cron to convert the folder full of pngs to a mp4.


What size differences are we talking about here? I took one screenshot (+webcam shot) once every hour for three years and it takes up around 5gb for 14,000 images. I believe I compressed it slightly some time ago.


Yeah, TimeSnapper takes them every 5 seconds, so I'd get 5-10 thousand images per day, about 1GB per day depending on quality settings.

I appreciated the (relatively) high frame rate because I enjoyed watching the timelapse at the end of the day, as a kind of review.


I never got in this habit, and I guess I'm old enough to only become aware that it is a habit recently.

I do take screenshots while debugging or if I want to show someone something curious, and I'll take those pretty aggressively just in case (the files are small, hard drives are cheap). But I feel no compulsion here.

Where does the drive to take so many screenshots come from?


For me probably in thinking I found something interesting that I could share with my friends, but eventually it developed into taking screenshots for even the most remotely interesting stuff, which no one really cares about but me.


  $ ls -1 | grep scrot | wc -l
  76422
That's just this laptop. My file server's broken at the moment (ZFS redundancy FTW \o/ first ever disk failure) and it has a few more moved onto it from different machines (probably maybe 50-70k), and then there's probably 20k on my previous desktop I haven't moved over. Hrm, and then there are my phones... maybe 200k all up?

I'll eventually figure out an aggregation and OCR pipeline. In the meantime while circumstances don't permit that I've slowly accepted the scale I've decided to operate at. It's a commitment. It started out as OCD and now it's just... an interesting habit I actually think would be suboptimal to break. I've never known how to organize words into a journal format, so this is the next best thing I've got.

And it's fun holding down the 'p' key in sxiv and just rewinding through the flickery slideshow of interestingness. Literally everything has a story in it. It's fun.


I should put everything into CLIP and make a semantic search engine. (Also OCR is a good idea)


I and many others can easily empathize if we look back at our phone camera libraries, full of mundane momentarily interesting images from our lives.

But what screenshots trigger that capture itch?

One thing I have (on my phone) are high score/achievement moments in games. Ironically, Threes game has its own internal hall of fame, and the UI is made up like a framed picture on a wall.


It's quite a common thing, Xfire went even further and introduced its Flashback feature 15 years ago :

https://www.extremetech.com/extreme/82410-xfire-gets-video-c...

> The TiVo-like function allows users to go back and record footage five to ten seconds after it happened.


I had a script once which generated a screenshot every minute or so. The idea was that I would then use some other machine learning supported scripts to extract some statistics. One motivation was that I needed to collect working time statistics, and I wanted to count the minutes that I had Eclipse open.

I even wrote a DB to store PNG files more efficiently. It deduplicates blocks, and thus achieves much higher compression rates: https://github.com/albertz/png-db

The analytics were harder than I thought. I had OpenCV at hand, and tried using those SIFT features (if I remember correctly) (note, that was 12 years ago, before we had more powerful neural networks), and it took me lots of trial and error via a lot of ugly heuristics, and in the end I just tried to identify the Eclipse icon in the Mac Dock. But it worked more or less.

And the scripts to analyze the screenshots: https://github.com/albertz/screenshooting

Then, I developed some scripts which would collect such information more directly, about the app in foreground, including the opened file or URL, etc. This is still running, with many years of data now. But I never really had any use of that data. Maybe someday I will extract some interesting statistics out of it.

This script is here, with support for Linux and Mac: https://github.com/albertz/timecapture


I made something similar with "brotab", grabbing full text content of all open tabs of the browser (and other metadata) every so often and archiving it, so I can search it like a kind of extended history and correlate URLs by context.


> For example, my oldest files were made in Microsoft Word on an iMac G3 running Mac OS 9. I can open them in a modern word processor, and they look similar – but it’s not the same. Some of the fonts and graphics are missing, and I don’t know where I’d find replacements.

> It’s even harder for an undocumented side project I abandoned years ago. Having the code isn’t the same as a working application.

The author's solution to this is apparently screenshots, I have to respectfully disagree.

For software, side project or not, it should probably come with dependency configurations (granted, in early 2000s this isn't as mature as it is today) and some tests. My side projects basically all have tests, these tests are vital for picking up years later and for validation while developing.

For personal notes, I use this script which upon `$ diary` would create/open an entry for the current day in the appropriate folder with vim: https://github.com/Aperocky/diaryman/blob/master/diaryman.sh. Text files will last forever, it has some basic flavoring with markdown, but that's it. The folder where this is indexed is without a doubt the most valuable data on my computer, and it stretches back years.

I do occasionally take screenshots but never for reasons that author find screenshot to be useful for.


  > For software, side project or not, it should probably come with dependency configurations (granted, in early 2000s this isn't as mature as it is today) and some tests.
These may or may not help. Things have certainly changed in the past several years, but if we have learned anything, the "infinite memory of the internet" is anything but. Dependencies vanish and die all the time. So, while you may have a list of dependencies, if you don't have those actual dependencies locally with you, you may be out of luck. Even if the actual project still exists, the older versions you depend on may not.

I can't speak to others, but if you were to actively shelve a Java project, and were using Maven or relying on its infrastructure, I would clean out your local repository cache, rebuild and test the project, then snapshot the project directory and the repository cache. At least then you might have a solid chance of resuscitating the project later on if you needed too.


Or, point maven to a directory in your repo (`-DlocalRepository`) and include it in your git with lfs. Best of both worlds. Get to use dependency management and always have your dependencies around.


> These may or may not help. Things have certainly changed in the past several years, but if we have learned anything, the "infinite memory of the internet" is anything but. Dependencies vanish and die all the time. So, while you may have a list of dependencies, if you don't have those actual dependencies locally with you, you may be out of luck. Even if the actual project still exists, the older versions you depend on may not.

I say this problem impacts most of the development stacks out there, whenever you're dealing with a package manager:

  - Node and Javascript have npm
  - Python has pip
  - .NET has NuGet
  - Java has Maven/Gradle
  - PHP has Composer
  - Ruby has gem
And all of those have packages that could technically disappear, or you could have network issues and so on (when I build my container images, I sometimes even have apt fail, though very rarely). I think a safe bet is to run your own package proxy, like Sonatype Nexus: https://www.sonatype.com/products/nexus-repository (there's also JFrog Artifactory in this space, probably others too: https://jfrog.com/artifactory/)

This can improve build speeds because you refer to your own server for getting packages, the proxy will also pull packages that it doesn't have automatically, there are no rate limits to deal with (e.g. DockerHub pull limits vs the image being pulled once and stored in Nexus, unless changed) and you can also pretty easily see just how much stuff you're relying on.

The next step is to also use this server for publishing your own packages, which is suddenly easier - you can manage your own accounts, with nobody to tell you what you can/can't upload and how: you literally have all of the storage on the server at your disposal, redeploy as often as you want.

The only real downside to this is that you are indeed self-hosting it: you need updates, storage and all that. Well, maybe there's also the issue that using custom repositories downright sucks in some stacks - while npm supports something like --registry, I distinctly recall Ruby being a total pain in this regard in a container context (something about Bundler configuration, since it doesn't seem to support a command line parameter): https://help.sonatype.com/repomanager3/nexus-repository-admi...


In a related matter it behooves open projects to do a very clean build before they do a release.

By that I simply mean they should take a source distribution of their project and perform a build with their repository caches cleared to ensure the project actually still builds in the wild.

Dependencies can silently vanish behind the facade of a local proxy or cache.


Good luck compiling an iOS app you built and last touched in 2012 against a modern version of XCode.

You'd need to keep an entire old, un-upgraded Mac around just to have a chance of doing that without MAJOR engineering work!


What about a Virtual Machine? I've found VMWare Fusion does a good job with Mac guests. Snow Leopard works quite well. You could even do it from a non-Mac host if you don't mind applying well-known patches to VMWare.


I think the best solution is to just keep both, I have all the source code for all my projects since maybe 2008. But I also keep a lot of screenshot, if I want to refer to an old project I go to those screenshots (or even better, videos) in 99.9% of the cases.


> The author's solution to this is apparently screenshots, I have to respectfully disagree.

It's a good thing you're respectful about it. Your proposed solution seems to miss of of the main point of the author: creativity. Using a standard set of mature programming tools isn't creativity. The other aspect (that you touched) is time. Unless you set up a virtual machine, you will never get the same visual result of your toy project in Microsoft Visual Basic -- or maybe even get it to compile.

The author argues that screenshots is the fastes and most convenient way to reminiscence about the past, and for that she is right.


Turn a copy of your old PC into a VHD for a VM before you retire it.


So, if I write a script that takes screenshots of my desktop every minute or so, are there any tools out there I could use to “de-dupe” based on some arbitrary threshold of similarity to existing screenshots? I imagine it would be quite straightforward for identical screenshots, but what about stuff that’s just “mostly unchanged”?


A very low tech approach would be to create a video from the screenshots, and let the video codecs do this for you. Av1/x265 are quite mature in detecting differences between frames.


I agree that's not a bad starting point, but it should be possible to do a lot better than this because a screenshot will often be very similar to an earlier one that's not the previous one. For example, repeatedly switching between a few views. Video codecs are optimized for (a) streams that rarely go back to an earlier pattern, (b) minimal ongoing memory usage, and (c) realtime decompression, so they aren't going for quite the same use case.


Even h264, which is way over a decade old, can reference frames that are further back than the last one. And it supports lossless. Now the only thing to research is if those two features can be used together and how many frames back it can reference.


See my other post here: https://news.ycombinator.com/item?id=34566857

I wrote a DB for PNG files which deduplicates PNG blocks (only exact matchs): https://github.com/albertz/png-db


I imagine that compressing the screenshots daily with something like gzip would do the magic for screenshots. A lot of the image would be repeated anyway, task bar, active windows, background, etc.

A good question would be if you screenshot your screen twice in a very small time, how much of the binary would be the same? Are the tools and PNG reproducible enough to dedupe most of the second file on gzip?


I've had a lot of success using the pixelmatch library for image comparison / deduping

https://github.com/mapbox/pixelmatch


Thank you, that looks perfect.

> “pixelmatch is around 150 lines of code, has no dependencies…”


* Except hundreds of megabytes of Node.js


Recording the whole screen using H.264 or similar at a low frame rate might be easier.


Just record your entire session with OBS, set at 3fps.

I can't count the number of times I've found it helpful to be able to check what I was doing X time units ago.


Do you keep that forever? How often do you need something from a 1/3 second time slice, vs, say 1s or 5s?


No, I don't keep it forever. Even at 3fps plus audio, it adds up. I tried 1fps before, and it was not enough, interfaces move faster than that. 3fps is sufficient, but sometimes I boost it for more important things like when I am teaching.

I usually review them and take a few snapshots before deleting. Some I keep longer.


AMD and Nvidia Drivers can both be set up to record the X last minutes of the screen. I've found it very useful when logging bugs to be able to step back through my last few minutes to see the steps that led to the bug.


We're building a startup based on this idea, though we find that the #1 use cases is catching unexpected bugs. Is that what you find as well, when recording with OBS? Check out http://replayable.io.


That sounds like exactly what https://www.rewind.ai is doing.


This is a lesson I learned too late.

Consider extending this idea outside of digital work, to any online hobby. In my case, I think back to all the time I spent on MMOs (basically raised online) and wish I had taken screenshots or recordings of my time then; I have none and it makes me sad.

Apply it to real life, too. You'll never know what little meaningful events you'll wish you had records of in the future.


Also, doing it in meatspace has practical benefits. How do these screws go back into this hardware? Oh look, here's a photo that shows the thing disassembled with each screw placed next to the hole it came from, which also shows which bits slot together - maybe I even took multiple pictures to show which part of the case came off first.


I've been doing that with my house as well. Every year I end up trying to rediscover some mundane task like - how do I remove this darn window screen with these hidden latches. So I'm trying something new:

I write up a google doc with some pictures. Then I make a QR code of the url and attach it. I've done it for several things:

  - how to put the air conditioners in the windows
  - documenting the water filtration system
  - documenting the septic system
  - documenting the propane fireplace
  - documenting the network wiring


I’ve picked up a habit of photographing everything even mildly notable outside so when the topic comes up at some point, I’ve got useful photographs.

Sometimes it’s years later and someone will bring up a building or street that’s not notable enough to have photos online and my photos are much better than what you get from street view.


What are some interesting minor notable things you've documented?


I was in a discussion about modern street design that prioritises pedestrian safety and I brought up a trend I had noticed of new laneways putting the road and sidewalk completely level with no clear boundary between cars and people walking. I had taken a few photos of these streets, not because I had anticipated this discussion but because I just take a photo of all new construction and google photos makes it very easy to search through my photos to find them.

I’ve also ended up incidentally taking photos of areas which later got renovated/redeveloped so I get to show a before and after. It’s mostly possible with google maps but a proper photo from a phone is better quality.


Name checks out

I'm sorry, moderator team, I find this to be the best way to express my appreciation and admiration for parent's approach to the topic.



I used to sent screenshots of chat conversations to my ex all the time because she was always "reinterpreting" the details of past conversations. Turns out this was a maladaptation to cope with her abusive behaviour and wildly untreated borderline personality disorder. So FYI, if you find yourself in the same situation, take a step back, reevaluate, and ask others around you for help.


Yep this is sound advice. I have dozens of screenshots of old websites I built from 1997-2002 and it's fun revisiting them once in a while. It's all sitting in a "_legacy" folder with 104 projects that I've copied from HD to HD over the years.

On the other hand, I have a few old VB6 apps that I didn't release publicly that I wish I had screenshots of because I didn't think about screenshotting them at the time.

Back then taking screenshots was more common I think. Having a "screenshots" section on your tool's website was pretty normal and expected. Especially since back then streaming video wasn't readily available. A screenshot was the only way to showcase what you've built visually. Also for websites you usually had a PSD file with the whole site's layout that you later sliced up into images when creating the markup, so at the very least you probably have that PSD sitting around.


With most side-project software I wrote in the 90s, I definitely found that, nowadays, a screenshot would be more valuable to me than being able to run it.

Some side-project screenshots I do have, I couldn't practically reproduce the conditions under which they were made, even when I can easily still run the code.

I do need to be better about my professional nostalgia/portfolio. Even a couple years ago, when I wrote an internal-only iOS app that worked very nicely, and was sure to get screenshots and video, adding them to the company-wide "nostalgia folder" I maintained... in all the work I did for a smooth handoff when I left that startup, to make sure the company didn't effectively lose any data, I didn't think to ask about keeping some copies of less-sensitive nostalgia photos/videos for myself.


One of the most powerful things in the mid 00s was having this app that automatically uploaded any screenshot on my Mac and put a URL in my clipboard. This also combined with the feature of the Mac to screenshot a specific area of the screen.

This was before the UX of sending images was trivial and the UX of this was so amazing that others asked me to help them set it up.

Mind you this was high school and university so it was for what are now called memes as well as homework related stuff. So no real fear of uploading work secrets or whatnot.

The other killer feature was turning on this ability to zoom in the whole screen with hot keys + mouse wheel. I used it CONSTANTLY. It was just a habit to zoom to the width of the actual website content, for example.


Pretty sure the app was Skitch. https://www.pcmag.com/reviews/skitch-for-mac I used to love it for that feature too.

On Windows a similar app was Jing. https://en.m.wikipedia.org/wiki/Jing_(software) but the Skitch app could also really easily add text, and had a neat way of dragging and dropping the tab containing the filename to save a file to a particular location or send it somewhere that you rarely see today. It wasn’t intuitive but it was easy once you knew how, like dragging the file icon from the window title bar (a hidden feature of only some document-based macOS apps).

Turning on zooming likely refers to https://support.apple.com/en-ca/HT210978 which was a feature added to Snow Leopard (maybe) where you could hold the control key and use the mouse wheel or Magic Mouse to zoom in.


> automatically uploaded any screenshot on my Mac and put a URL in my clipboard

This is built into windows nowadays and it's just so helpful. I cannot believe macos doesn't do it natively. I always have to browse to the desktop and the use the image. It's just Ctrl V on windows.


A URL to a web hosted copy you can share with others?

For OSX you’ve always been able to screenshot right to clipboard.


Absolutely. When I do front-end work, I screenshot every visual change in the PR. Boss wants a look at the current work -> screenshot Users want to see a difference -> screenshot.

But the most valuable it that it builds up a visual history of changes in my Screenshots dir.


This is my favorite use case as well. There's nothing better than starting a pull request review on someone else's front-end work and seeing the changes they've made before looking at the code.


How do you do this for UI elements that don't fit on screen?


I deeply regret the many projects from earlier in my career that I never thought to take screenshots of. And I'm mostly a backend developer!


I am actually pondering about making a service or an autonomous app out of a tool I made for myself, that records the screen, keystrokes, mouse, keyboard focus location, and additionally traces the gaze if you have suitable hardware (e.g. Tobii). The goal is to be able to make some sense of all that data with the current deep learning techniques (think Copilot on steroids).

Although as a service it would be extremely expensive: video adds terabytes of storage every year, and will require even more expensive compute for deep learning. Probably a few thousand or even tens of thousands $ a year.


Have you seen https://www.rewind.ai/ ?

It’s almost exactly what you’re describing.


I have not. From the changelog, the differences between my work and theirs are:

- Mac only vs Windows only

- They have already wired some AI stuff like speech recognition (trivial with Whisper these days, I was able to use it to generate synchronous lyrics ala karaoke to my home music collection in about 1 week of coding. Unlike video does not require much compute)

- They have slick GUI and presumably reliable recording - as I did not decide to productize it yet, I only have 2 global hotkeys to start and stop.

- I capture more data: keyboard + focus, gaze traces, and mouse traces. This will allow better behavioral models (they could and probably should have an option to do it too). I especially rely on gaze, as it is a very dense data channel.

- I have functionality to replay user actions both to just view, and to actually replay them (this is where copilot-like AI will eventually be connected).

It was funny to see the codename of my project in one of their screenshots as a label on a control.


I actually am in a position where I need to take a screenshot but haven't found any tool on linux that has the right UX like macos builtin screenshot or on windows, greenshot and lightshot.

I want to press printscr or some shortcut and immediately screenshot an area of the screen or the whole screen and by default have it saved to a numerically incrementing files under a folder I configure and not have to close or interact with any popups. This is on Linux. Any recommendations?


I use Sharex on Windows and I don't think there's any better tool, so I searched for "run sharex on linux" and there is indeed a guide - https://github.com/ShareX/ShareX/issues/6531 - maybe you can get it to work?

I believe it can do all of the things you want. Certainly area capture, remembered area capture, fullscreen capture, all bound to different hotkeys. Mine saves with the name = the timestamp but you can probably config it to be an incrementing index. It's incredibly full-featured.

I also have hotkeys for "capture current pixel's hex code" and "measure bounded box in pixels." When you take a capture you can also annotate it including showing labeled steps. After capture you can do one or more of: save locally (to one or more places), upload (to one or more hosts), copy to clipboard, etc. That includes pastebin if you have text saved to your clipboard so I use this for that also.


I can't recommend ShareX enough, it is the most well thought out, intuitive and comprehensive tool for handling screenshots. I really miss it on Linux, I'll try that guide.


Thanks, looks featureful. But I really need it very stable so running it in wine is a dealbreaker, since I already have a wine setup I have to fumble with a lot to get different windows executables to behave in certain ways.


I can recommend flameshot[0]. It has good editing tools built-in, low dependencies, and is ergonomic.

[0] https://flameshot.org/


Thanks, from the demo gifs on that page, this is my favorite so far.


I think this is highly dependent on your distro (and comfort with the CLI but I'm taking that for granted on HN) but I found the gnome screenshot to be very simple, quick, and effective. Piping a hotkey to a CLI command is presumably easy, and after 5s of googling I found the guide below for Gnome. Not exactly fancy and I haven't used this specific tool recently enough to say whether it meets all your requirements exactly (e.g. you might need to press "Enter" once to close a popup), but I think a solution like this might fit the Linux ethos best!

https://linux.die.net/man/1/gnome-screenshot https://docs.fedoraproject.org/en-US/quick-docs/proc_setting...


Thanks, will check it out, my main problem with gnome-* is the package pulling in gnome deps into my "minimal" lxqt environment.


If you can deal with it being a datetime name, a script that generates the filename and calls `maim` should be really easy, just to be hooked up to the key combination through the desktop environment/window manager.

Make two to distinguish between "save entire screen" and "let me drag a selection that it will save".


I've been using https://screencloud.net/ for the past few years. Custom file naming rules, you can upload to your own FTP server, then it will automatically copy a link to the file. Works perfectly for sharing and archiving screenshots.


It's best to just use a printer, makes it easy to review screenshots I've taken at night or in the loo


I use i3 and I think I pretty much had that at one time…

Basically I bound a key combo to a script, and that script would call scrot (the app), screenshot, and save the picture to date_plus_random_4_digit_number.png.

I think I wrote that script in Ruby and put it in .local/bin. But you could write it in another language too.


I've definitely learned to take more screenshots for over a year now and I'm glad I took the time to "optimize" my process: making use of tools like Syncthing to collect screenshots from my phone and laptops, automatically renaming and filing them in folders and aggressively compressing old screenshots with Hazel, and taking better screenshots overall with Shottr. Oh, and a few handy Shortcuts to stitch and grid screenshots.

It's a thing I didn't expect to be a quality-of-life improvement, but it really did, whether it's to remind me of the little but important things that I've done and am glad to recall weeks after, or to provide helpful TODOs or visual documentation on things that I end up doing from time to time.


Is there any place that you explain your process thank you


Hm, your comment reminded me to note these down, so yeah, here ya go: https://miro.com/app/board/uXjVPtfgISc=


I'd add to this: Take screenshots, and consider compiling them into a book. [0]

[0]: https://craigmod.com/journal/digital_physical/#book


I use SnagIt to capture a screenshot with a single keystroke when I hit the print-screen button. I have configured SnagIt to automatically store .png file with a date/time stamp.

Out of 100 screenshots, 99 will never be viewed, but that 1 out of 100 is valuable.


> SnagIt [1]

$62.99 for something that you could hack together in a few lines of (power)shell script?

[1] https://www.techsmith.com/store/snagit


Greenshot is a FOSS alternative which achieves a similar thing


Win + PrintScreen does exactly this already?


I take a lot of screenshots, even if it's just for reason as "oh I have to remember that". I automatically store them in a directory that's synced via Syncthing between my work laptop and home NAS. That way I have access to all of these from everywhere.

Sometimes I just jump back to some point in time and scroll through them, it's very easy to get "stuck" after looking at old screenshots for 15 min. Old websites, old projects, screenshots from IRC. It's always fun and I feel like I get a lot of value out of that simple workflow.


While images might last longer than some other files in terms of compatibility, the most durable and flexible format is still plain text. So if what you want is to preserve your ideas, try writing.


I made some art zines in an older version of MS Word that I saved, the source files for, but when I went to open and print them years later the formatting and images were completely destroyed even though Word is supposed to be backwards compatible.

I thought the .doc file would be a good way to save it, since it was closest to the source and I could edit things later if I needed. I ended up having better luck when I could find the rendered PDFs or rasterized images instead. They were less editable, but far more stable for archiving and returning to after long periods of time.


Want an archival program that would take 25% size screen shots every X or seconds (or fraction of) and record low bitrate sound when computer active. Index to searchable text and have system up sample data later. Maybe black and white with very limited color info for recolouring as well. So many link rot content that's too hard or difficult to track down online vs being assured there's some fragment of local version that you know you've consumed in the past. Probably log a life times activity with a few dozen terabytes.


For link rot, automatic website backups when making a bookmark seems to be a better idea ?

P.S.: Shame of everyone involved that something like SingleFile is not a web standard yet.


It's always bugged me that software breaks so easily. Even with the full source code, it can be impossible to get something running again just months later. I've documented my entire work history with screenshots in my portfolio [1], which is sort of weird considering the heavy backend work put into it that isn't reflected.

[1] http://jnnngs.com/


Everyone doing any sort of creative work should maintain a portfolio (writer, developer, musician, painter, architect, interior designer, literally everyone).

I keep recordings of websites I've done on YouTube and add them to my portfolio (http://zchry.org/). It's kind of cathartic to me to be able to revisit things I've spent hundreds of hours on, especially long after they've run their course.


Shout out to CleanShotX[1], top-quality software and now absolutely indispensable to me.

[1] https://cleanshot.com/


The recent history additions have been very helpful, too. I really like this app.


I use TimeSnapper for taking screenshot of the active screen area every 5 seconds. It has helped me on some occasions for notes that I missed during the online meeting.


I built something to take periodic screenshots of Electron apps while discarding duplicates. Sadly I never got around to building more Electron apps, so it's not feature complete (I intended it to have more options). But the basic periodic screenshotting mechanism works.

I might continue if there's any interest :)

https://github.com/CatalanCabbage/electron-vlog


It saddens me that I don’t have many screenshots from when I was younger, even if it was just pictures of my desktop. Although I make an effort to take more screenshots these days, I made a simple tool to take screenshots on an interval. I wish I had done something like this 15 years ago.

If anyone is interested: https://github.com/mgerb/mgcapture


I on the other hand should take fewer screenshots, I have more than 136000 screenshots on my phone and it is not even a year old. Similar number with my PC.


I am similar so just recently started wiping them all.

On Mac I use Hazel to auto-move old screenshots into the trash. On iPhone I use Gemini Photos to clear out screenshots that are just random screens or something I wanted to share to someone.


Why? That’s hundreds per day.


Every time I see something remotely interesting, I get the tic to take a screenshot (I don't know if it's actually a tic or not, I can't think of a better term). if I consciously decide not to take a screenshot I have to suppress the action or else it is automatic for me.


So, around 38 per day ?


136,000 not 13,600


I love screenshots. In many of my internal code reviews and changes I will include them to demonstrate or highlight changes.

Take more screenshots! Let me see what you see!


Yes! I take screenshots on my personal machine whenever I feel like it would be interesting to look back on. I have about 12 years of screenshots from different machines. I can see the music I was listening to, the tabs I had open, my wallpaper and theme, the OS. I can see my digital workspace evolving and changing over time and I appreciate being able to do this.


I will recommend using OneNote for putting down screenshots along with text description or whatever you want to write.

It suits perfectly for this kind of usage and is as freeform as the screenshots. Write anywhere, put screenshots anywhere, even attach any other kind of files anywhere within the doc.


Here is a fun story about screenshots.

All of us had that feeling: you are browsing the Internet and suddenly see something cool. You either forget to bookmark it or that cool thing is not cool enough to be amongst your bookmark items (which are clearly much cooler). Sometimes you may also think: "Whatever, I have my browser's history, I'll find it later if needed". Later, you want to show that cool website or app or whatever to your friend. You check your bookmarks, well, nothing there. You check your browser's history and can't find it - you don't even remember the website. Later, you realize that on top of evertyhing, you were using the Incognito mode and there is no way to find anything for that session.

Well, when it comes to browsing history, there is a chance to look back and go through the visited websites (if you are lucky). However, what about web forms or something you were coding and then said "f### it, i don't need it", closed the file and then in a few days later: "damn, i should've saved that file"..

So, I had millions of situations like that. At some point, I was like: "this shit can't go like that forever". And I found the solution.

I installed a spyware on my own computer. The spyware would make screenshots either every Nth second or each time a user switches from one application to another. To activate the spyware's interface, you (as an evil hacker who has access to your victim's local computer) would have to setup a secret key combination (say Ctrl+A+I+P), followed by a password. The spyware interface allows you to see everything that was happening on the computer: list of loaded applications, screenshots (!), keys you typed, everything!

This post gets so long, but the result was a pure success. I used the tool a shit ton of times to recall what I did in the pass.

FAQ:

Q: Wouldn't the screenshots take a lot of space on your hard drive?

A: No. They were compressed. The quality was good enough to understand everything.

--

Q: What about the data going to someone else's computer over the network, say, the creators of the spyware?

A: This was a local spyware. No network traffic whatsoever.

--

Q: Do you still use the tool?

A: No. This was many, many years ago. I was a Windows user back then. I haven't seen similar tool since I switched to Mac computers.


Sorry, but the risk that there's a backdoor (that doesn't phone home, or at least not regularly enough to be easily spotted) would be just way too high for my liking.

This is orders of magnitude worse than using Windows8+ !!


Agreed. That's also one of the reasons I wouldn't want to install anything of that sort these days. The risk is too high. Back then (10+ years ago), just to stay on the safer side, I think I even firewalled all the outbound network traffic originating from the spyware, even though there was none.


I did the same thing with my IDE. It auto-saves the current file every N seconds to a separate directory on my drive. It's been very useful for finding code that I've "oopsed".

I've also thought about building a web proxy for my internet traffic, keeping detailed logs of every HTTP transaction in elasticsearch, crucially, including full HTML contents, so I can search for things later. But, too lazy...


Although I haven't tried it, rewind.ai does something similar with Macs (records searchable screenshots and audio)


I worked with someone who took a lot of screenshots and dumped them into powerpoints as a record of the work done on projects. It becomes a way of journalling or recording. Having that kind of record is really helpful, and I wish that I had the habit.


Screenshot->crop->Apple Notes is very standard for me. I try to remember to select and copy some appropriate text from the page to act as title text. Copying the url into the note completes it.


Now that MacOS indexes text in your screenshots, it's also a lot easier to comb through all your screenshots when you're looking for something specific.


I collected a lot, didn't find the time to organize it and also lost a lot.

I'm now quite happy of not having too much.


I’m afraid for when Apple prevents screenshots due to drm or enterprise policies. Shows a huge lack of trust.


Don't use whatsapp or instagram, apps that prevent taking screenshots. Or jailbreak your phone.


i regularly right click a word i dont know, get the definition, and then screenshot the context with the web page, the word highlighted, the definition, and toss the fresh screenshot right into a vocab folder on the desktop


previous discussion:

sept 2022 https://news.ycombinator.com/item?id=32215277


Not everyone can take and take with them screenshots of their work though. The vast majority of my work is hidden behind company and other walls.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: