My Development Workflow (2021)
· 2 min read
My personal developer workflow and laptop setup (macOS) in 2021.
This is a collection of resources and my general workflow for Software Engineering. Note: workstation is running MacOS.
Dependencies/Libraries:
- Homebrew - package manager for linux-based OSs.
- Git - version control, manage files during project development
- Node.js + Nvm - runtime for javascript without a browser
- Npm - large organization of libraries/packages available to use in projects.
- Python 3 - python language interpreter for python ^3.0.0.
- MySQL - SQL database software for development
- Redis - real time data storage with different data structures in a cache
- Heroku CLI - manager for Heroku apps from the command line
- Amazon CLI - manager for AWS services from the command line
Communication:
Recording:
Other Software:
- Chrome - main browser with debugging tools
- Postman - API platform for easy endpoint testing
- Flux - screen eye strain assistance
- GIMP - photo editing software
Toy problems:
Note taking:
IDE:
-
MacOS Quick Action: Open Folder from finder -> Configure Quick Action
-
ESLint Extension - Integrates ESLint JavaScript into VS Code.
-
Bracket Pair Colorizer Extension - A customizable extension for colorizing matching brackets
-
Open In Default Browser Extension - A VSCode extension to fast open html file in browser
-
Stylelint Extension - Modern CSS/SCSS/Less linter
-
settings.json:
{
"editor.lightbulb.enabled": false,
"editor.parameterHints.enabled": false,
"editor.renderWhitespace": "all",
"editor.snippetSuggestions": "none",
"editor.tabSize": 2,
"editor.wordWrap": "off",
"emmet.showExpandedAbbreviation": "never",
"files.trimTrailingWhitespace": true,
"javascript.suggest.enabled": false,
"javascript.updateImportsOnFileMove.enabled": "never",
"javascript.validate.enable": false,
"eslint.alwaysShowStatus": true,
"explorer.confirmDelete": false,
"python.pythonPath": "/usr/bin/python3",
"workbench.editorAssociations": {
"*.ipynb": "jupyter.notebook.ipynb"
},
"[javascript]": {
"editor.defaultFormatter": "vscode.typescript-language-features"
},
"css.validate": false,
"window.zoomLevel": 2,
"editor.hover.sticky": false,
"editor.formatOnPaste": true,
"editor.formatOnSave": true,
"editor.defaultFormatter": "vscode.json-language-features",
"workbench.iconTheme": "material-icon-theme",
"security.workspace.trust.untrustedFiles": "open",
"liveshare.allowGuestTaskControl": true,
"liveshare.allowGuestDebugControl": true,
"liveshare.anonymousGuestApproval": "accept",
"python.defaultInterpreterPath": "/usr/bin/python3",
"editor.largeFileOptimizations": false
}
Interested in working together?
Follow my journey and connect with me here:
- LinkedIn: /in/spencerlepine
- Email: spencer.sayhello@gmail.com
- Portfolio: spencerlepine.com
- GitHub: @spencerlepine
- Twitter: @spencerlepine