Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Mac OSX Software Developer Productivity Tips

Mac OSX Software Developer Productivity Tips

Do you use a Mac for development? If so, these tools, while not directly being "Dev Tools" in many cases, are a great support to your productivity to get development work done.

A video course that is similar to this presentation is available from O'Reilly at http://shop.oreilly.com/product/110000007.do

Matthew McCullough

April 21, 2012

Transcript

140 slides
  1. Who’s This? • Matthew McCullough • Mac OSX user for

    5 years • Productivity aficionado
  2. Who’s this for? • Mac OSX users • Developers asking

    if there are any more ways to increase their productivity
  3. GitHub • Social coding • GitHub for Mac desktop app

    • Private and public repos • Post-receive hooks for email notification, bug tracking updates and build triggers
  4. Hub Gem • Productivity gem on top of Git CLI

    • GitHub specific web service calls • Install from Brew or Gem
  5. Gist Gem • Share snippets of code • Put resultant

    URL on clipboard • Share code samples, snippets
  6. CloudApp • Command line for the cloud • Like DropBox

    in some ways • URLs • Automatically copied to clipboard • Just added to oh-my-zsh
  7. Dropbox • Simple file sync • It just works •

    Understands Mac OSX resource streams • Permits symlinks & hardlinks
  8. Links • On first machine • ln -s <ORIGINAL> <DROPBOX>

    • On second machine • ln -s <DROPBOX> <MIRRORED> • Treated differently than Mac OSX shortcuts (Alt+Cmd+drag) • Linked .bashrc, other shell configs
  9. iTerm2 • Better terminal • Full screen • Easier tabs

    • Split Panes • Hotkey Window • Search • Autocomplete • Mouseless Copy • Paste History • Instant Replay • Configurability • 256 Colors • Growl Support • Exposé Tabs • Tagged Profiles
  10. zsh • Like an improved Bash shell • First class

    functions • Modular enhancements • Already installed on Mac
  11. OS

  12. OS

  13. oh-my-zsh • Zsh plugin framework • Git repo info •

    Right side prompt • Gradle plugin • Themes • Autojump • Pushd stack persistence • Remember-folder
  14. oh-my-zsh • Middle-of-name completion • cd is the assumed command

    • Wildcard expansion happens in the shell, not the tool • Option-switch completion for hundreds of tools
  15. XCode • A means of obtaining cc and gcc •

    Used to compile MacPorts and Brew packages
  16. Homebrew • Package manager for Mac • Backed by a

    Git repo • Works with user level access • /usr/local/bin
  17. lftp • Scriptable ftp client • Install from MacPorts or

    Brew • Recursive sync with lftp mirror -R
  18. Launch Bar • Competitor to QuickSilver • Custom searches •

    Easy file navigation • Easy emailing • Skype calling
  19. ScreenFlow • Premier screen capture app • Records all layers

    for later selection • Annotations • Trimming, splicing
  20. TextExpander • Expands text snippets • Syncs via DropBox to

    desktops • Syncs by WiFi to iOS • Trumped on mobile by iOS 5 snippets? • Works for coding and communications
  21. System Key Mapping • Make a global shortcut for any

    menu item • Turn one key into another
  22. Things • ToDo manager, deeply linked to apps on OSX

    • Alt+Cmd+T • Create task with context (links)
  23. Emacs Shortcuts • `C-a` Go to Beginning of line •

    `C-e` Go to End of line • `C-u` Delete from cursor to beginning of line • `C-k` Delete from cursor to end of line • `C-w` Erase word to the left • `C-t` Transpose characters around cursor • `C-f` Forward a character • `C-b` Back a character • `M-f` Forward a word • `M-b` Back a word • `C-d` Delete character to the right • `M-DEL` Delete word to the left
  24. Growl • Pop-over notification framework • Works with • Marco

    Polo • Skype • Twitter • Mail • iTerm2 • Gradle
  25. 1Password • Syncs via DropBox to desktops and mobile devices

    • Manages my 1400 passwords • AES 256 bit hashed password encryption • Random password generator
  26. Web

  27. OS Shortcuts • fn⌘ F1 = Mirror screen • ⌃⌥⌘

    8 = Invert colors • ⌘⌥ ⏏ = Turn off screen
  28. on Mac OSX Developer Productivity Power Ups by Matthew McCullough,

    Ambient Ideas, LLC Get going with your new skills!

More Decks by Matthew McCullough

Other Decks in Programming