Last active
August 29, 2015 14:00
-
-
Save aliles/11277396 to your computer and use it in GitHub Desktop.
Command line programs for busy developers
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Command line interface tools are the new web framework. In addition to the | |
Python standard library's getopt, optparse and argparse there is a bewildering | |
array of packages available on the Python Packaging Index. Packages like Click, | |
Cliff, Docopt, Invoke all provide different mechanics for creating command line | |
applications. When all you want to do is expose a command line and get back to | |
creating functionality, it’s hard to know which alternative to reach for. | |
This presentation will have two parts, the first half will be a brief survey | |
of popular modules. Strengths, weaknesses and design philosophies will be | |
compared by creating command line processing for the same example program. | |
The second half will go into more depth on a specific package, Begins. This | |
package was authored by the presenter to minimise the disruption developers | |
experience when breaking flow to implement command line processing. The | |
audience will be shown how a single line of code can create a complex command | |
line interface. It will also be shown how a handful of decorators from the | |
Begins API can eliminate boilerplate code and create powerful, complex | |
applications. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Aaron is a senior software developer with ten years of experience who, on any | |
given day, develops or maintains software using Python, C, C++, Javascript, | |
PHP, Bash, CSS, XML or XSLT. Python however, is his preferred environment. As | |
a senior developer with the Australian government, Aaron is responsible for the | |
delivery of quick reaction capabilities to support new business initiatives and | |
technical leadership and mentoring for staff. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment