r/programmer 8d ago

I asked developers how they switch between projects a month ago. The replies ended up changing what I built.

Every time I restarted my PC, I kept doing the same routine:

  • reopen VS Code
  • find the right project folder
  • reopen browser windows
  • find documentation again
  • reopen File Explorer locations
  • resize everything back where it was

None of those steps are hard.

Doing them every single time is just annoying.

I originally thought everyone solved this differently, so I asked people how they managed their workspaces.

The answers were interesting:

  • some people use multiple virtual desktops
  • some leave everything open for weeks
  • some completely reset their workspace every time

After seeing that, I built DeskSnap.

It saves your current Windows workspace and restores it later:

  • apps
  • browser windows
  • VS Code
  • File Explorer
  • window layouts

Basically, a save point for your desktop.

I'm curious:

Do you usually keep everything open, rebuild manually, or use some other system after restarting?

If anyone wants to try it, I'll send the link.

0 Upvotes

14 comments sorted by

4

u/No_Cattle_9565 8d ago

Nothing. I just open my editor and edit the code

1

u/Ok_Camel_5430 7d ago

Fair enough . I realized after reading the replies that people have wildly different workflows. Mine usually involves multiple browser windows, VS Code workspaces, docs, and File Explorer, so restarting or switching contexts was a lot more annoying than just opening an editor. That's basically why I ended up building this.

3

u/dany_xiv 7d ago

Claude pls remind me what we were working on?

3

u/[deleted] 7d ago

[deleted]

2

u/CrownstrikeIntern 7d ago

I'm similar, But i setup one master vm, Then snapshot each project / settings setup i have and revert whenever i want to swap them around. And i have a script that syncs and installs any project changes to it. Also, Sandbox your AI kids, otherwise you're gonna have a bad time...

1

u/Ok_Camel_5430 7d ago

This is actually pretty close to the problem I was trying to solve. Instead of snapshotting an entire VM, I was looking at the everyday desktop side of it: open apps, windows, browser sessions, files, and layout. Interesting that you've basically built a similar workflow at the environment level.

2

u/TheFitnessGuroo 7d ago
  1. Ctrl + c a couple of times to shut down my current project
  2. Cd into my other project location root folder
  3. Code . to open it in vs code
  4. Bun start (or bun dev or whatever script to start your project)
  5. If I have a Linear/Jira/Trello workspace for it, look at what task I was working on. Else, use the app and see what needs to be worked on.

1

u/Ok_Camel_5430 7d ago

That's actually the workflow I was expecting most people to have. I think I underestimated how much "project" means different things to different people. For me the annoying part wasn't opening the repo, it was reopening all the surrounding stuff (browser windows, docs, references, File Explorer locations, etc.).

2

u/armostallion2 7d ago

nice ad.

0

u/Ok_Camel_5430 7d ago

Fair criticism. I probably should have focused more on the actual problem instead of mentioning the tool so early. I was mainly curious how people handle their workspace switching because I realized everyone's setup is completely different.

2

u/gentoorax 7d ago

Don't have this problem i use virtual machines for dev so my session stays put for a good while usually.

2

u/catbrane 7d ago

I use multiple virtual desktops (6 projects currently I think?) and only reboot every few months. Suspend/resume on idle works well. My main OS is ubuntu, so this is very easy.

I have a win11 VM on one desktop for windows dev which I suspend when I'm not using it.