DEV Community

Cover image for Ideas about preserving history of "fixes" to problems you've encountered?

Ideas about preserving history of "fixes" to problems you've encountered?

Dina Gathe on March 10, 2017

Every so often, you get stuck...and sometimes you run into a problem that you know you've solved before, right? Often for me it's some annoying iss...
Collapse
 
adambrandizzi profile image
Adam Brandizzi

That depends on what I'm trying to recall and how frequently I need it.

  1. If it is a terminal command, the shell history is more than enough. If it is a somewhat complicated command that I need too frequently, I create an alias or a script for it.

  2. When I depend on some code snippet too frequently, I tend to create a template for it in my editor or IDE.

  3. The code changes or patterns I have to recall, I find them in my version history. Indeed I consult it a lot!

  4. If it is an answer to a problem, I count with my browser history. (Indeed, I've got really frustrated when Firefox started to limit the history it saves.)

  5. Often, when I find a solution to a problem myself, I post the question in Stack Overflow (if it is acceptable there) and answer it myself. It tends to work very well, I frequently go back to my profile to look for those bookmarks.

  6. Very rarely, if I find a very good text, I add it to my Pinboard bookmarks.

  7. If it is some non-googleable stuff (intranet content, company policy etc.) and I keep consulting it, I bookmark it in Firefox and that is it.

Indeed, it appears I'm more Google-tolerant than most people :) I guess the main reason are the scripts and templates: most of my colleagues save them in text files but I'd rather have them as much automated as possible. It demands some patience at first but we get better at this when we practice it.

Collapse
 
rubyandcoffee profile image
Alexandra Wolfe

I like the idea of posting it as a question on StackOverflow. That way you're not just helping yourself out, but you're helping out many more people. Great idea :)

Collapse
 
dhetman profile image
Dawid Hetmanczyk

I got tired of re-Googling stuff, so I started doing a couple of things:

  1. I use Github's Gist to save configuration for something (Vagrant, setting up virtual hosts etc.), code snippets, list of installed packages in code editor and useful commands
  2. For longer write ups, such as tutorials, I started using KeepNote which I sync with Google Drive. I found that by the time I need to re-visit a site that helped me solve a problem, the blog post is gone or entire site no longer exists
Collapse
 
jlr7245 profile image
J Silverstein

I have a couple ideas that I have yet to put into practice but am pretty excited about .... one is to look for a stackoverflow question about the same bug & answer it, the other is to spin up a quick gist or blog post describing it and my fix. Would keep the information in an easily-findable spot for later and also possibly help the next person who comes along.

Collapse
 
ryaninvents profile image
Ryan Kennedy

Ah, I missed that you were using gists too! I like to keep it all in one gist so it's easy to find, but I haven't added a whole lot to it so I'm not sure it'll scale.

Collapse
 
jlr7245 profile image
J Silverstein

I think as long as there's a good table of contents it should work out fine! Or multiple gists with a gist of reference links...

Because I have a jekyll blog, writing them as blog posts is just as simple for me.

Collapse
 
paulreiber profile image
Paul Reiber

This is one of my favorite topics!

Holding on to techniques and ways to leverage tools (at the commandline and otherwise) is crucial for technical experts.

-> Browser extensions.

You can collect browser bookmarks into groups and manage them as text with a browser extension called OneTab. Give it a test - you'll probably like it for helping with managing the "sets of tabs" that result from research.

-> Private data saved online.

There's a tool called "Google Keep" that rocks for managing short or long slabs of text like digital post-it notes. Google doesn't talk about it much, but it's pretty awesome.

-> Public data saved online.

Some mailing lists keep their history. That can work for sharing techniques with a group/team that anyone on the team can later go back and refer to.

Totally public blogging and wiki also work when you're careful with what you copy/paste. For an example of how public blogging can do this for you, check out my blog awkiscool over on quora - it has a bunch of stuff I wrote mainly so I could find it in the future.

Collapse
 
ben profile image
Ben Halpern

I'm curious about this as well. I have some personal methods, like the notes app on my Mac. I prefer it to similar things I have used, but nothing I have used seems like the ideal solution.

Something nice in my mind would be an app where I can dump links into and it would download them, and then crawl and index the content. So in the future I can just have an OS-enabled hot key to quickly search the local index with zero latency.

Would love to know if something like that exists with good UX.

Collapse
 
soundstruck profile image
Dina Gathe

That sounds like a perfect tool. Some spin on something like this?

I'm hijacking the "name" field in Chrome bookmarks to add tags so they come up easily in search. Like "Some title (tag tag tag)".

But I also use the Notes app on my Mac. I guess I use the Notes app when they're fixes I resolve on my own (and therefore my own writeup/explanation) because there aren't external url references. So my fixes are scattered in two places, Notes and Chrome bookmarks.

Collapse
 
ben profile image
Ben Halpern

Yeah, it would be like that. I'd see it as a browser extension with a "send-to-my-index" button of sorts which would then archive it locally and index for full-text search.

I think the key is it has to be easy to use and work like Mac launcher or Alfred, etc. Or else I might never end up using it.

I'd be surprised if something like this doesn't exist. I'll send some more eyeballs to this thread at some point so we can get to the bottom of this.

Thread Thread
 
ribugent profile image
Gerard Ribugent Navarro

In fact I developed it as a sideproject.

It does full text indexing, there are chrome/firefox extensions and there are a simple fabebook and twitter autoimport integrations, but it's not local, it's an online service.

Nowadays only few coworkers and me are using it, if you're interested i can send you and invite for registration.

The page is ricube.net

Collapse
 
tmr232 profile image
Tamir Bahar

[Pocket] is easy to dump links into, and it downloads the pages.
Now that they've been acquired by Mozilla it should become easy to add the remaining required features as

Pocket will become a wholly owned subsidiary of Mozilla Corporation and will become part of the Mozilla open source project.

I also really like the idea of not having to trust links to work in the future.

Collapse
 
1hoog profile image
1hoog

I use mkdocs, a simple markdown to html builder. I use it for oneliners, code snippets or short bulletlist styled instructions.

I mount the remote folder and when making a change to that folder (edit a file, add a file etc) the markdown files get build to html on the server so the changes will be available online immediately. I'm using


 to watch for changes and call

 ```mkdocs build```

 when there are any.

The readthedocs theme has search built in so I created the following function and

 ```xdg-open http://mysnippets.net/search.html?q=$1+$2+$3+$4+$5+$6+$7+$8 2>/dev/null &```

 and created an alias for it. Now when I need to search for something I can do something like

 ```sd vim+cut+paste```

 and it will open up my browser fill in the search parameters and serve me the matched snippets. 
Enter fullscreen mode Exit fullscreen mode
Collapse
 
tekiegirl profile image
Jacqui Read

I have used gists in the past and then fleshed out out in a post in my blog, with credit as appropriate. Sometimes they only make it to a draft post though, and I need to add more tags really to make it more searchable.
Useful to have it online so I can reference from anywhere with a connection. Also if it only helps one other person when they Google it then that's good :)
jacqui.tk/blog to see what I mean.

Collapse
 
writecodeeveryday profile image
Lazaro Herrera

I actually use a Personal Wiki for this. I write the most common patterns and things I write in my target programming language and also add new things I find as I research issues (tiddlywiki.com/).

It's a single self-contained HTML file.

Collapse
 
ennor profile image
Enno Rehling (恩諾)

This is super hard, especially when you're working alone and not in a team of people. In a team, this information tends to get shared somehow, and you might get lucky and someone remembers it.

At work, we use the wiki in gitlab for stupid problems that others might run into. If you've figured out something hard by repeatedly banging your head against it, there's a chance somebody else will also need to figure that out at some point (it doesn't have to be you), so it's worth writing it down.

Not perfect, though. Sometime you get to the end of a rat-hole and can't even remember what all the steps were that got you there. Definitely interested in hearing what others do!

Collapse
 
gregorgonzalez profile image
Gregor Gonzalez

is difficult. I make manuals in word about installations and write encountered errors and solutions. If something is short I use my blog so I can use it online. Save bookmarks but now they are a lot and never need to use it again or they deleted the web post. My fast resource is remember how to re-googling, besides can help to find updated solutions.

Collapse
 
hasanmurtaza profile image
HasanMurtaza

An audio keyword indexing and retrieval system would be ideal, so I could mutter problem keywords and Dictate the solutions while I am working, without typing or context switching.

Searching might still need to be done visually but if the world could evolve a grammar to describe problems ( or embed keywords in help text) then you could get instant feedback to problems through audio as well. Like an Oracle that sits on your shoulder.

Collapse
 
zegio profile image
Tony

Evernote.

I can easily collect articles and links and fixes, and snippets in one place, organize them, tag them, and search is a breeze, even without tags, etc!

I like it so much I'm actually paying for it!

Collapse
 
ryaninvents profile image
Ryan Kennedy

I keep a Gist, in markdown so the code and prose both look good. I don't add to it nearly as often as I should, though, so I'm not getting as much mileage out of it as I could.

Collapse
 
rogeruiz profile image
Roger Steve Ruiz

I try to add things to my blog and sometimes open them as pull requests in the repo. I also try to use Dash.app to keep bookmarks and annotations in a single place. Also before re-googling anything, I search my browser history first 😁

Collapse
 
dnlcorrea profile image
Daniel Corrêa

I use jrnl. You can add tags with @, eg. @mysql and later call jrnl @mysql. Saves entries as a text file. Very fast.

Collapse
 
carywreams profile image
Cary Reams

Recently added a "post-mortem" label to our Github repo. Any issues worthy of a more detailed write-up -- beyond the scope of code comments -- earn additional issue comments and a "post-mortem" label.

Collapse
 
soundstruck profile image
Dina Gathe

Wow, so many great ideas and thoughts. I can't wait to try some of these! :-)

Collapse
 
craigbutcher profile image
Craig Butcher

It might be worth checking out Gitbook and host it via github/gitlab?

Collapse
 
tingenek profile image
Mark Lawson

How about a Jupyter Notebook? You can mix Markdown and code.

Collapse
 
mlevin2 profile image
Marshall Levin

I put the correct answer in Evernote when I find it and then use the chrome extension so that when I re-google it, I see it in my Evernote results.

Collapse
 
justriedy profile image
Justin Riedyk

A list in Onenote, it's not great.
I mostly just re-Google.