Key Components to a Powerful Personal Setup

Your personal programming environment is going to determine a lot of factors in how your work as a web developer. When someone showed me the terminal (and jekyll) my life profoundly changed as a developer.

In this post, I’m going to walk you through the key components of what I belive contributes a strong personal environment setup. This is not meant to detail my personal setup, but instead talk about the key concepts in any environment that should constantly be refined, tested, and improved.

The evolution of my environment

I was an entrepreneur first, web developer second. So when I first start building websites it was in notepad and then eventually in Dreamweaver. From 2005-2011, I used dreamweaver. I dragged and dropped files in FTP. I accidentally deleted half of my website. And I NEVER used a CMS. I only built websites page by page.

Why would I do that?

Because you don’t know, what you don’t know. Which brings me to my first component of a powerful personal setup.

Organization - Know about every inch of your install

It’s important to actually know about every key component in your environment. Developers need to see their environment as a toolkit that they can improve and expand. it’s like a video game — a new gem is like leveling up or geting a new weapon. Go out and start understanding the tools you have at hand and building your enviroment toolset.

Portability - It needs to be portable, and setup quickly

Your entire environment needs to be setup to move between multiple machines. Let’s be serious - your entire install needs to be hosted in a git repository online AND you need to have a rakefile to automate the setup. If you are required to login to someone else’s machine each day to work, you need to be able to setup your environment in less than 30 minutes.

Efficiency - Eliminates aruduous typing through aliases

One of the first things I’ll be able to understand about another developer when I look at their environment setup, is what they work on the most often. Because if this developer works smarter, not harder, they will have shortened up the most common tasks they use with aliases.

Aliases are a ubiquitous tool across editors, shells, and computer software. If you’re not using aliases to customize your setup so that it matches you and your thought process…. well then the computer is using you and it should be the other way around.

Fun - It should make programming more fun

I think a really great personal setup makes programming fun and engaging for the user. You may have noticed… there’s people with opinions in this industry. Be proud of your setup and form your own opinion on the right way to do things.

How can you improve your environment?

  1. Define Your Workflow
    • You need to build your environment around your workflow. If you’re only using specific languages, build your environment around that as well as your most common tasks.
  2. Start Small
    • A great exercise you can do is to delete your entire computer (after you’ve backed it up), and reinstall you development environment. For many this is Sublime Text and Filezilla. Find out what tools you’re actually needing and you won’t reinstall the tools you never used.
  3. Ask Others
    • Most of the new things I learn and add to my environment come from pair programming with other developers. Learn from others and ask how they have their .zshrc, .vimrc, etc setup.

Happy Coding.

Want to hire me?
PHONE | EMAIL | GITHUB