Other Views: By Month | By Category | By Tag Cloud
Welcome to the Vagrant lesson on what Vagrant provisioning is. What is Vagrant Provisioning? Provisioners allow you to automatically install software and alter configurations during the Vagrant up process. This is useful since boxes typically aren’t built perfectly for your use case. Granted you could just login to the box and install all of the software by hand. However, by using the provisioning it automates the process, make it repeatable, and requires no human interaction.
Welcome to an overview of Vagrant and creating of your first Vagrant machine. What is Vagrant? Vagrant allows you to create and manage lightweight reproducible virtual machines. Essentially, all of the configurations to create and configure a virtual machine are kept separate from the virtual machine. This allows you to delete the virtual machine and then re-create it with all of the same configurations at any point. No longer do you have to be afraid to delete a virtual machine for a project that isn’t active.
When I am working on a git repository and using the git command line, one of the things that I often end up checking it which git branch I am on and if there are any pending changes. How awesome would it be if the bash shell prompt, told you the branch name if the directory is part of a git repository and if there are any changes. Well, thankfully someone has done this work already and with a little bit of configuration on your part, you can implement the changes.
When I am provisioning a new development virtual machine with vagrant, I do not need all of the Windows 8 modern applications such as bing maps, finance, skype, etc to be installed onto the virtual machine. These applications are nice on a non-virtualized machine but on a virtual machine it just uses extra resources that aren’t needed. The base install of Windows has all of these programs installed with live tiles turned on that I don’t need.
Updated: Add clean task that uses rimraf to delete the bundle.min.js file if it already exist. Without this it would just append to the existing bundle.min.js file. When you release your web site to production, you should minify and concatenate your javascript files. You will have much better performance by doing this but unfortunately debugging becomes difficult with the minified code as it shortens all of the variable and method names.
The Chrome Developer tools are an amazing set of tools for debugging and trobuleshooting web sites. If you are a web developer and have not tried out these tools, you have been missing out. As amazing as the developer tools are, one of the most annoying features to me was not being able to skip over vendor javascript like jquery or angular. Getting stuck in a minified version of a angular or jquery takes you down a deep rabbit hole that you never wanted to go down and is a annoying to climb out of.
One of the most annoying features of npm for me is the spinner. Many times it runs long enough that I am wondering if it is still working or hung. Thankfully you can easily change this with the .npmrc file. On Linux/OSx, create the file ~/.npmrc On Windows, create the file %USERPROFILE%/.npmrc Add the 2 lines below to the file spin=false loglevel=http Save the file Close your command prompt/terminal and reopen it.
When you are building nuget packages that are not directly using the AssemblyInfo.cs for the version number, you need to make sure to increment the nuget version number before building the package. Inevitable though you will forget to increment the version number and have to build the package a 2nd time. Wouldn’t it be great if you could automatically increment the version number before calling nuget pack. Well I have written a powershell script to do just this.
If you are planning on going to any professional networking events, user groups, or speaking at events, you should have business cards with you. Many times people think, I only need to have business cards if I am looking for a job. This is far from the truth. You should have business cards so that you can connect with the people that you have met. People tend to meet lots of people at events and without a business card, it is difficult for people to remember who you are.
As you work on an Ionic based project or for that matter any web projects that have javascript or css file, you will at some point forget to add your new javascript or css file to the page and wonder why the page is broken. This is really annoying when it happens as many times you spend quite a bit of time troubleshooting before you realize that you just forgot to add the script or css tag.