Profiles in Visual Studio Code

I recently learned that VScode let’s you create different profiles that let you switch between different sets of settings, keyboard shortcuts, snippets, and most importantly, extensions. This is really if, like me, you have various extensions for different types of projects and don’t need them all running all the time. For example, I have extensions for C#, react, angular, or markdown projects (apparently I had 86 extensions installed 😱). The profile editor is actually pretty nice, letting you copy from an existing profiles for from some builtin templates. ...

My default apps of 2023

I saw this on Chris Coyier’s blog and thought I would jump on the bandwagon. The idea, is to see for how many things you use the default apps for your system, which for me is mostly on Android/Google. It’s a fun exercise and I totally get the arguments for “just” using default apps, but I also get a little sad at the thought of huge companies like Apple and Google able beat better alternatives simply because they’re the default. ...

 ·  · 2 min · 

Pretty Typescript errors Vscode extension

I recently discovered the Pretty Typescript errors Vscode extension that makes complicated Typescript errors much more readable in Vscode

An Assortment of Productivity Tips

This is mostly a collection of my notes on productivity and little tips for saving time or being more efficient while doing knowledge work. Organization vs Execution To me most productivity advice either falls under “organization” or “execution”. Organization being advice like “create task lists”, “process your inboxes”, etc. I could write a whole separate post just this category. Whereas execution is all about finding the time to actually do the tasks that are on your plate. ...

Git Config Settings I Always Recommend

If you’ve ever worked on a project with me then I’ve probably recommended at least one of these config settings in git. git config --global pull.rebase true - tells git to always pull with rebase instead of merge (the equivalent of pull --rebase). This not only saves you having to type the flag every time, but also ensures gui clients will also use rebase when pulling. Note: You should only enable this if you’re comfortable with rebasing. git config --global fetch.prune true - tells git to automatically run git remote prune after a fetch. This will clean up any local objects that no longer exist on the remote like tracking branches that have been deleted from the remote server. git config --global rebase.autoStash true - tells git to automatically stash when you perform a pull and then attempt to unstash them once the rebase is complete. This is almost always my workflow so it’s nice to have git do it for me. git config --global rebase.autosquash true - tells git to automatically include the --autosquash parameter when doing a git rebase --interactive. You should read more about autosquashing commits if you’re unfamiliar with it. I use it all the time for fixing up or rewording previous commits. Newer settings If you haven’t updated git in a couple years then you should as it’s worth it just for these new config options. ...

 ·  · 2 min · 

My Always-Up-to-Date VS Code Setup for Web Development

I’ve gone through the setup and daily use of a number of editors over the years including most current popular ones for front end development (i.e. sublime, atom, and vs code) and for me VS code is the best choice for front end development at the moment. The team has put a lot of effort into making it a great javascript experience out of the box and it shows (VS code itself is written in typescript and the team uses vs code to build vs code) and with some additional work you can have the best experience while writing javascript. ...

 ·  · 3 min · 

You Should be Using Git Hooks

In my opinion Git hooks are an incredibly useful yet under-utilized feature of git. There are lots of resources that go into hooks in detail but here I’m just going to list some of the ones I find myself using over and over again. prepare-commit-msg This hooks is great for templating your commit messages. This post does a great job of highlighting some powerful possibilities. I like to use it to automatically insert a ticket number from the current branch name. ...