Settings

Theme

How to separate work projects on Mac?

5 points by lajarre 5 years ago · 3 comments · 1 min read


I am currently working on very different projects, from multiple software projects (where I spend most of my time in the shell, using zsh and vim) to writing (vim + some other tools) to consulting (some shell, a lot of Firefox). In all cases I need some browser running.

What I really love is having separate histories and sessions both in the shell and in my browser.

For now what I ended up doing is:

* use the same mac user

* [works ok] use iTerm profiles, and set different environment variables / launch commands for each iTerm profile notably to change shell history files

* [works ok but needs trickery] use tmux + plugins + iTerm for saving shell sessions

* [works bad] separate Firefox profiles.

I wonder what other people are doing on that?

From where I stand, I feel like using separate Mac users for each project is the best bet, as per simplicity. I feel it'll have the added interest of better psychological separation of projects (different desktop, etc.). But will need a heavier setup (notably: synching dotfiles).

phendrenad2 5 years ago

Different logins is also great for organizing software installs. You'll never wonder which project needed Python 2.7 or something, as long as you installed it for just one user for a specific project.

Personally I use separate computers for contracting and fun personal projects, which helps me keep a more professional focus.

johncoltrane 5 years ago

Did you consider having each project in its own virtual machine or container?

On the browser side, you could use Chrome for project A, Firefox for project B, Safari for project C, etc.

  • lajarreOP 5 years ago

    Thanks for the idea. For me that's not an optimal solution for 2 reasons:

    * I care about using the same tools and having a consistent environment. Vagrant (for example) is awesome for building when you want to mirror a production machine, but not that great for other use cases. In my case, I would have my Mac shell for everyday use + a vagrant-based Linux shell for my software projects, so that makes two different OSes to play with… If my project doesn't require that, I would prefer not increase my "OS contact surface" :)

    * I only want to use Firefox if possible

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection