category: [ Visual Studio ] tags: [ Chrome ] [ Productivity ]
created: 26 Mar 2018 @ 21:18 modified: 27 Mar 2018 @ 00:07
At MVP Summit this year one of the valuable things I learnt (which I can share ) was from Colin Dembovsky (ALM MVP) which was Using Chrome to Solve Identity Hell. Now I knew chrome profiles existed but never thought of using them to solve the problem of different identities, in-private mode was a way of doing things but you always lost that when closing the session so wasn't that great. Not going to talk much about that here, you can read his post to find out more.
So chrome profiles are great, what are we trying to fix?
As mentioned above chrome profiles are great so what's being annoying me a maybe you (if you arrived here from a search )? The problem is that Visual Studio when set to use chrome as the browser does exactly that and uses chrome.
If you haven't had any issues with this you might not have as many chrome profiles open as I do . To explain this a bit better when you close all instances of chrome and then open chrome again the default chrome behavior is to load the last profile you had open. You can change this by pinning specific shortcuts to the profile or having a desktop shortcut to that profile.
Why is this frustrating?
Before it wasn't annoying because I always had auth issues so I would launch the project ctrl + F5 and then immediately go into in-private mode (I know F5 gives you a similar experience but not always the desired running state or I would just log out of the accounts I usually use and then do some dev logging into test Microsoft accounts if need be and then later log myself out of there and back into my regular accounts. As you can imagine this is slightly painful.
Now that I have the magic of profiles I would launch the app and it would open default chrome which would open my last active profile which could land me in a similar space as before where I'm using my real MSA for example. At this point I'd change the chrome profile back to First User and then either re-browse to the app or go back to VS and ctrl + F5 and this would then use the First user profile to do my dev but still felt a little clunky.
So how do we change this in Visual Studio?
The way the shortcut works for chrome is a parameter is passed on load specifying which profile to load, to view this
- Right click on the chrome shortcut (I have pinned mine to the taskbar already)
- Right click on the name of the chrome profile shortcut
- Click on Properties
This will open the properties for the shortcut where you will notice the --profile-directory parameter being passed into the chrome.exe executable.
Copy the full target as we'll use both parts next. Open up a web project in Visual Studio and
- Click on the little down arrow next to the Start Debugging menu
- Click on Browse with...
This will bring Browse with dialog where we will now click on Add...
In this dialog we are going to paste the Target we copied from the properties window, remove the quotes around the path to chrome.exe and then cut the parameter part to the arguments section and give the browser and friendly name and click OK.
This will add the browser to the overall list of browsers you have, if you are like me and want a consistent feel to launching sites then you'd probably want to make this browser your default
All set to have a pain free browsing experience when doing your development .
This now means that I can log into this dev profile that I have created and that account will always be logged in, if I have a Twitter, Facebook, MSA, anything account the cookies and all settings extensions are saved to that profile. You can roam this by signing into chrome with a development Google account if you want to make your config, remembered uris and passwords (not generally a good idea but love this for dev environments roam to all your machines easier.
Most importantly each time I launch from VS now I know what environment state I'm going to get
Visual Studio and a lot of other tools like chrome (yes the browser is a dev tool too ) have a lot of features that are less commonly used that can make your development experience less frustrating and ultimately more productive. You just need to look for them sometimes and think a little outside the box on how you can use them .
If you have any other similar or related productivity tips please feel free to share them.
Happy Chrome profiling
5 'incognito plus' browsers so far
Gordon Beeming works at Nologo Studios in the sunny city of Durban, South Africa. He is the Lead for the Data and Services Team and has a strong focus on Developer Efficiencies and R&D. When he's not hacking away at a keyboard in Visual Studio he'll generally be relaxing with his family or hitting the black top getting in some mileage. He is a Visual Studio ALM Ranger and Visual Studio ALM MVP.