I delivered a talk this morning at WordCamp Boston 2012 on how to find ways to fit web development tools into your workflow—you can find the slides online at http://talks.kadamwhite.com/wcbos12/.
The genesis of this talk was a conversation in which some friends expressed frustration at hearing about not being able to use “cool” front-end technologies with WordPress. It is true that WordPress and its LAMP stack are “old fashioned” compared to, say, a CouchApp, but for example you can make Node.js work for you by running your build process with something like Grunt.js even if you don’t incorporate Node into any part of your public-facing web stack. The best tools are flexible, and I use stylesheet pre-processors (with demos in LESS) to show how you can slot a tool into several different aspects of your workflow.
Tools that help us make website are invaluable for keeping up our speed and productivity as developers, and playing with the “latest and greatest” helps us stay excited about what we do and engaged with the community at large. We’ve gotten good at making advanced sites for our clients—we deserve to have some cool toys ourselves now and again.
For all who attended, I hope you found the talk useful! I have added two pages of links to unit testing and style guide resources at the end of the talk for those who wanted some further reading. For additional resources for workflow and developer tools—far, far more resources than you could shake a stick at—check out Aaron Jorbin’s slides from “Developing an Automated Workflow,” also presented today at WordCamp Boston 2012.
The msys shell that comes with a Windows install of Git has curl, which is an awesome little utility, but sometimes you want access to wget. The MinGW project on SourceForge has a build of wget ported to work with MinGW/MSys: download this archive, create a folder called
/bin in your home directory, and extract
wget.exe to that
/bin folder. Since
~/bin should be in your MSys PATH (at least it was for me), this should let you run
wget from any directory when using Git Bash.
Credit to trasana.org’s page on creating a build environment for pointing me in the right direction
To be honest, I really like working in Windows 7. It’s fast, it’s stable (for me at least), I love the window arrangement hotkeys, and it’s hardly lacking for software support. Unfortunately, the default command prompt stinks; I feel most comfortable in a UNIX environment, so this article describes how to soup up the bash prompt installed as part of msysgit (Git for Windows). (Let me start by saying that to the best of my knowledge, Windows Power Shell has actually gotten pretty damn capable; several of my coworkers use it to do exactly what I’m going to describe below, and it definitely integrates well into the greater Windows infrastructure. I don’t know, YMMV.)
tl;dr: download Ben Alman’s Bash prompt script to your home folder, then add a line to your .bashrc for your msys shell to source that file.
When you install Git for Windows, you get a pretty handy little application called “Git Bash” added to your context menu. This is a lightweight bash shell, provided as part of the MSys build environment. It’s not cygwin, but if you’re like me that’s just the point: I don’t need 99% of what cygwin provides, and Git’s Bash prompt loads quickly, runs fast, and integrates seamlessly with the Windows file structure:
$ cd /c/Users/KAdam/Desktop takes me right to my desktop, without any of cygwin’s directory aliasing weirdness. I get
ssh and more, and it even has a basic version of vim. Most usefully, however, MSys Bash lets me use some basic dotfiles.
In the UNIX world, dotfile refers to any file whose filename starts with a period (the “dot”). These are hidden files on UNIX-based systems, and are frequently used for configuration or utility files. For example, a
.bashrc file in your user directory (/c/Users/yourAccount/ on Windows) will let you specify custom command-line aliases, preferences and utilities for your user account’s Bash shell without impacting any global settings. Any developer likes to customize their environment, and dotfiles give you tremendous freedom to configure applications to your personal preferences. You can get pretty tricky with these.
Continue reading The best of both worlds: A lightweight, sexy Bash shell on Windows
My slides for today’s presentation have been uploaded to Slideshare! I will post a link to the video when it is available.
UPDATE 9/11/11: The video of my post types talk is now online! My sincere thanks to Kurt Eng for all the effort WordCamp Boston put into filming these talks.