DEV Community

Cover image for Organizing your life using Github
João Cerqueira
João Cerqueira

Posted on

Organizing your life using Github

I'm that kind of person that struggled really hard to self-educate to be organized. That had to change in favor of restoring my sanity back and one day the light bulb hover my head went on.

The issue

Everything was messy before: tasks and notes written in loose papers or random task management software, unanswered calls lost in promises to be returned, files and important documents spread along a zillion different cloud storage services. Resuming, everything was darker back then.

I've tried lots of software that promised to simplify the horror I was going through and actually help me getting things done and don't forget anything - but all of them failed. Most of the times it wasn't about the softwares themselves but simply because they didn't fit my way of doing things.

The tada moment

I was on the verge of collapse, navigating through some issues on a repository on Github when: tada! Suddenly everything was clear. I was already using an awesome software (Github) to manage my projects' code, issues and tasks that had to be done, why not adapt it to a new "project": My personal life!

How I did it

Basically what I did was to adapt the concept we (developers) already employ for project management and organization on Github to my personal life. So, instead of having a repository to store and keep track of my code, I'd instead use it to store and keep track of any important documents, pictures and other random files I can't loose.

It was pretty straight forward and showed advantages right away after setting up that new private repository which I named personal. The most noticeable one was after I fed it with important documents I went to another laptop I own and cloned the repository. In ~5 seconds I had my documents "synced" on both machines, securely saved on a private Github repository and easily manageable on both Github interface and on my dear terminal with the infamous git tool.

example

This was the first step to start implementing a better organization for all-my-things, however one thing was still missing: I also had to keep track of both my personal and professional tasks (professional = freelancing/open source projects, not organization-specific ones).

To achieve that, I enabled the "Github Projects" feature on that repository and bootstrapped two projects: "Personal" and "Work" for personal (shopping, pay bills, etc.) and work-specific (call a client, reply an email, review a feature, etc.) tasks respectively.

example

Each project has 4 basic columns to put tasks on:

  1. Backlog - for stuff I probably haven't yet decided to do or thought about how I'd do them;
  2. To Do - stuff I have to do and are ready to be started or I'm waiting on third-party feedback to move along;
  3. In Progress - stuff I'm working on at the moment.
  4. Done - stuff I already finished and can be safely archived and sometimes forgot.

Tasks themselves are simple "cards" or full detailed issues (for more important/complex things that need extra information).

Now I had it all (files and tasks) in a single place that I love to work on! So much better! Sure I still sometimes write tasks and notes on paper or on my smartphone's notes application, however I made a commitment with myself to as soon as I open my laptop through the tasks/notes into the respective projects on Github right away.

Apart from those two base projects, one is also free to create more and more projects to make organization even clear and simpler. For example, imagine you're moving from a city to another, there are plenty of things you have to do and most of them are important to be done right to avoid headaches in the future. One could create a new "Move to X place" project and a correspondent milestone (on Issues Tracker) to keep track of that process and don't miss a thing.

I guess there are already people doing "self-management" in a similar fashion to what I'm now doing with Github, but as I haven't seen any experiences alike on the web I thought that it could be interesting to share this with others and maybe get some feedback on this "system" or suggestions to improve it.

Hope you've enjoyed! Don't forget that the way I'm organizing tasks, for example, is oriented for my personal use cases and surely doesn't fit everyone's needs. You can still adapt it to your own way of organizing things to make this system work better for yourself.

Thanks Github, for saving my day once more!

Oldest comments (47)

Collapse
 
musa profile image
Musa Barighzaai

I do this with Trello. But I like the idea of cloning files locally. Will give this one a try! :)

Collapse
 
lukaszkuczynski profile image
lukaszkuczynski

Me too, have you ever used Trello hooks to make it IoT and cloud ready?

Collapse
 
cerqueira profile image
João Cerqueira

I used Trello before and I still have some projects managed there. However it lacks the "file storage" feature that git brings into my workflow and as Github also has the "Projects" feature (more or less like Trello) I prefer to keep all my things in one place to avoid confusion. That's one of the reasons that made me switch to this system.

Thanks for your feedback! Hope you find this system useful in addition to Trello or even as a replacement.

Collapse
 
cptstroparo profile image
Cristian Stroparo

That one was a heck of a nice idea João.

Also sometime ago I read this article (producthabits.com/why-trello-faile...) showing why Trello stagnated not developing/hearing/measuring true needs and lacked innovation as time passed. This opened way for lots of other services to not only copycat this card/kanban feat but to actually bring value which is what we have with GitHub in this excellent way having everything, files, branches, projects, wikis all in the very same website!

Way to go!

Collapse
 
hudsonburgess7 profile image
Hudson Burgess

I also use Trello for this sort of thing. Trello hooks are not something I've explored though, I'll have to check that out.

Collapse
 
subbramanil profile image
Subbu Lakshmanan

Fantastic!!. 'Git' can be a great tool to simplify lots of the day-to-day activities.

I use 'Bitbucket' for similar purpose, but only for tracking my office work. I use 'markdown' for taking notes & to-do list.

Here's how I have been doing it. You might find it useful.

Base Organizational Structure

Work logs

Here's a blog I posted some time ago.

Collapse
 
redmer profile image
Redmer

If you change the date format in your last screenshot to YYYY-MM-DD, then they'll sort alphabetically chronologically. So 2017-10-02.

Collapse
 
cerqueira profile image
João Cerqueira

Very nice! Thanks for sharing your experience! It also seems a good way to organize dev-notes, for example! However for the tasks I still prefer the Github Projects (I think Bitbucket already has a similar feature) because it allows me write each task in more detail and follow what needs to be finished easily. Although I see some advantages of using a Markdown file, such as managing the tasks everywhere, independently of the software you use for managing git repositories.

Collapse
 
aurelkurtula profile image
aurel kurtula

I do a similar thing, but I take advantage of the wiki! Inspired by your post, I wrote a post describing my own workflow

Collapse
 
cerqueira profile image
João Cerqueira

Thanks for your feedback and for sharing your experience! Will definitely read your post for more ideas to improve this system! I already thought about using Wikis somehow, but haven't thought about anyway they'd be useful in this case. I guess I was wrong and that you'll enlighten me on that!

Collapse
 
lukaszkuczynski profile image
lukaszkuczynski

Good job. What about branching strategy? :)

Collapse
 
cerqueira profile image
João Cerqueira

Hey! Thanks for your feedback! What you mean about branching strategy? Using, for example, different branches for "documents", "images", etc.?

If that's the case, I had thought about that before and actually that was how I was going to go at first. However after a bit of thinking I quit that idea because it'd eventually make it hard to search files on local system and navigate through directories because I'd have to change from a branch to another every time I needed something different.

Anyway I'd love to hear about your ideas on branching strategy on such system!

Collapse
 
scottkillen profile image
Scott Killen

You could use branches as an additional partition--so that, for instance, on a personal device you need only check out the personal branch. And on a dual purpose (business and personal) device, you could have two clones, each checked out with a different branch.

Thread Thread
 
rustyeddy profile image
Rusty Eddy

Interesting thought... I think I might try out a couple branches "work-in-progress" for only stuff that needs to be focused ...

Or perhaps an "archive" branch to stash stuff that needs to be kept, but don't need it cluttering up an existing workspace ...

Dunno, maybe not .. But this is exciting! I feel like I am going to be all organized now!

Collapse
 
r0f1 profile image
Florian Rohrer • Edited

For a while now, I have been using github for my exercise alternatives. I have been compling a list of different exercises for the different major muscle groups and I update the list whenever I learn about new exercises. Also I can add links with video instructions if the exercise name is not as meaningful. This system has proven to be very useful to me, better than any app I've found.

List

Collapse
 
cerqueira profile image
João Cerqueira

Very nice indeed! I think it's the first time I see someone using Git for such purposes, but that only shows the power that it gives us to simplify many processes in our daily lives for which most people would install yet-another-app in theirs smartphones.

Thanks for sharing your experience! Really interesting!

Collapse
 
leob profile image
leob

Great idea, the only weak point might be search, compared to an alternative like Gmail, which has superior full-text search capabilities (however if you use Max/OSX you already have very powerful "local" full-text search with Spotlight, which you can apply with your local Git files).

Also, you need a private Github repo of course, which costs money, so this solution is not free.

For the rest, a very interesting idea. Revision control can of course also be a lifesaver.

Collapse
 
cerqueira profile image
João Cerqueira

You touched an interesting point I really haven't thought about: searching. But I think the reason I haven't thought about that is simply because on my laptop (using Linux) I can search files and documents really easily within the "Files" software and it hasn't shown any issues so far!

Sure, for this kind of stuff you must use a private repository, but there are free alternatives if you don't have or don't want to subscribe a paid plan on Github!

Bitbucket, from Atlassian, allows any free user to create private repositories and also have (recently I think) project management features (and integrates well with Trello). You could give it a try if you'd like to test this system!

Thanks for your feedback!

Collapse
 
evanoman profile image
Evan Oman

Search is actually a strong suit of this approach: if you store everything as plain text you will be able to search all of your content using Github if online, or grep if you are local.

Collapse
 
ditn profile image
Adam Bennett

Damn I really like this idea. Nice one.

Collapse
 
cerqueira profile image
João Cerqueira

Hey Adam, thank you! Glad you've liked the idea!

Collapse
 
dhetman profile image
Dawid Hetmanczyk

Very cool. I'm going to give it a go, might work for me

Collapse
 
davidhaile profile image
David Haile

Great idea. I'll give it a try.

I've been attempting to use Microsoft's OneNote to organize thoughts and files. It is the only Microsoft product that I like. Been working with it about 9 months. I use it online via Linux Chrome browser and from my Android phone. However, its search capabilities are nil or non-existent. I'm ready to try the next idea.

Collapse
 
cerqueira profile image
João Cerqueira

Hey David, thanks for your feedback!

I'm not a big fan of Microsoft's products and the only one I use is VSCode because I really like it. In sum, I'm not the best person to comment your experience with OneNote.

However, regarding Git/Github, I can assure you that your search needs will probably be fulfilled because Github itself provides a very decent file searching feature on repositories and also, depending on your OS (which I assume to be Windows version X), you'll also have the advantage of whatever search capabilities it provides for files (in Linux it's really good).

Hope Github is a good choice for your workflow and that it fixes the headaches you've been going through.

Collapse
 
t4rzsan profile image
Jakob Christensen

Interesting approach.

Does this mean that your life is now open source? :-)

Thanks for sharing.

Collapse
 
psnebc profile image
Patrick Schanen

I started Github & Emacs Orgmod 08.2017 after Vim Vimwiki and Evernote,

How to export Org-mode files into awesome HTML - github.com/psnc/org-html-themes

Repositories github.com/psnc?tab=repositories

Collapse
 
sergio1990 profile image
Serge Gernyak

Very interesting idea! Thank you for sharing that :-) Regarding the tasks for myself - I do the similar, but inside PivotalTracker.

Collapse
 
hoffmann profile image
Peter Hoffmann

Ingeniouse! What a wonderful idea. I will most definitifly try it out. If someone is looking for a alternative to github I'd like to recomend gogs.io as a github-like go-based software. You "just" need your own server to run it.

Collapse
 
cerqueira profile image
João Cerqueira

Thanks for the awesome feedback Peter!

I wasn't aware of Gogs so, thanks for sharing that with us! It can be a really good alternative for someone looking for a really private solution or more disk space available (Github "limits" repositories sizes).

Collapse
 
tomerbendavid profile image
Tomer Ben David

I saw you have "photos" folder. isn't a git repository limited to 1GB? did you plan to store there private photos? it would eat quota space wouldn't it?

Collapse
 
cerqueira profile image
João Cerqueira

Hey Tomer! Thanks for your feedback as it may answer others doubts regarding that question as well.

Indeed I've a "photos" folder, however I use it just to store the current avatars I'm using at the moment on my social networks and other websites/communities. All my "real" photos, I mean photos from family, friends, dogs... you get it, go directly to my external drive. I've never stored those in cloud storages because it seems a bit inefficient when you later want to navigate through them all, but it's just a personal opinion.

Regarding the 1GB limit yes, you're right. Github does limits repositories to be under 1GB, mostly for performance improvements. When you exceed that limit. According to Github:

We recommend repositories be kept under 1GB each. This limit is easy to stay within if large files are kept out of the repository. If your repository exceeds 1GB, you might receive a polite email from GitHub Support requesting that you reduce the size of the repository to bring it back down. - What is my disk quota?

Thank you once more for placing that question, hope I've answered it clearly!

Collapse
 
qrchackofficial profile image
Arkadiusz Rozmus • Edited

For actual photos, use Google Photos (photos.google.com) for unlimited storage of photos up to 10 MP

Collapse
 
pauljacobson profile image
Paul Jacobson

I love your ideas. My challenge always seems to be decent mobile access to my notes.