SlideShare ist ein Scribd-Unternehmen logo
1 von 140
Downloaden Sie, um offline zu lesen
on Mac OSX
Developer Productivity
Power Ups
by Matthew McCullough, Ambient Ideas, LLC
Matthew McCullough
@matthewmccull
Who’s This?
• Matthew McCullough
• Mac OSX user for 5 years
• Productivity aficionado
Who’s this for?
• Mac OSX users
• Developers asking if there are any
more ways to increase their
productivity
http://delicious.com/matthew.mccullough/macosx
Cloud
services and sync
GitHub
• Social coding
• GitHub for Mac desktop app
• Private and public repos
• Post-receive hooks for email
notification, bug tracking updates
and build triggers
Hub Gem
• Productivity gem on top of Git CLI
• GitHub specific web service calls
• Install from Brew or Gem
Gist Gem
• Share snippets of code
• Put resultant URL on clipboard
• Share code samples, snippets
CloudApp
• Command line for the cloud
• Like DropBox in some ways
• URLs
• Automatically copied to clipboard
• Just added to oh-my-zsh
Dropbox
• Simple file sync
• It just works
• Understands Mac OSX resource
streams
• Permits symlinks & hardlinks
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
EC2
• For any remaining Windows needs
• Running QuickBooks
• Small instance is now free
CLI Tools
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
pbcopy
• pbcopy
• pbcopynn
• alias pbcopynn='tr -d "n" | pbcopy'
• pbpaste
cd -
• Change directory back to last folder
• Like a cheap pushd popd
zsh
• Like an improved Bash shell
• First class functions
• Modular enhancements
• Already installed on Mac
OS
OS
Terminal
oh-my-zsh
• Zsh plugin framework
• Git repo info
• Right side prompt
• Gradle plugin
• Themes
• Autojump
• Pushd stack persistence
• Remember-folder
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
XCode
• A means of obtaining cc and gcc
• Used to compile MacPorts and
Brew packages
MacPorts
• Package manager for Mac
• Requires sudo access
• /opt/local/bin
Homebrew
• Package manager for Mac
• Backed by a Git repo
• Works with user level access
• /usr/local/bin
lftp
• Scriptable ftp client
• Install from MacPorts or Brew
• Recursive sync with lftp mirror -R
TMUX
• Better than screen
• tmux
• tmux attach
• Ctrl-B help
TextMate
• Copy-as-rtf Plugin
File Management
Path Finder
• The original tabbed Finder
• Standalone app
TotalFinder
• Tabbed Finder
• Plugin to core OS Finder
• Cut and paste
Quicklook Plugins
• Extensions for code
• Extensions for markdown
• Extensions for zips
Quicklook CLI
• Command line script
• #!/bin/bash
qlmanage -p "$@" >& /dev/null &
Launch Bar
• Competitor to QuickSilver
• Custom searches
• Easy file navigation
• Easy emailing
• Skype calling
Proxy Icon
• Drag to select
• Drag to copy
Capture
KeyCastr
• Shows keystrokes on screen
• Great for pairing
• Excellent for presentations
LittleSnapper
• Screenshots
• Blurring
• Tagging
• Web page capture
iShowUHD
• Screen capture recording
• Straight to rendered file format
• Selective region capture
ScreenFlow
• Premier screen capture app
• Records all layers for later selection
• Annotations
• Trimming, splicing
youtube-dl
• Capture YouTube videos for
presentations
• Install from Brew
• youtube-dl "<theurl>"
Productivity
Window Toggle
• LiteSwitchX
• Command-Tab replacement
Window Size
• BetterSnapTool
• Window Sizes
Window Size
• Divvy
• Draw the new window Sizes
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
System Key Mapping
• Make a global shortcut for any
menu item
• Turn one key into another
Things
• ToDo manager, deeply linked to
apps on OSX
• Alt+Cmd+T
• Create task with context (links)
Emacs Shortcuts
• Emacs shortcut keys work across
Mac OSX
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
Marco Polo
• Location aware settings
• Set confidence and triggers
Growl
• Pop-over notification framework
• Works with
• Marco Polo
• Skype
• Twitter
• Mail
• iTerm2
• Gradle
1Password
• Syncs via DropBox to desktops and
mobile devices
• Manages my 1400 passwords
• AES 256 bit hashed password
encryption
• Random password generator
Web
TypeToNavigate
• Safari Plugin
• Keyboard navigation of links
Glims
• Safari Plugin
• Enhanced search box
• Restore tabs on re-launch
Delicious
Bookmarks
• Tagged bookmarks
Delish
• Visual Delicious bookmarks
Safari Bookmarks
• Numbered bookmarks on bar
• Useful for bookmarklets
Information
Management
ReadItLater
• Web service for quick bookmarking
Pinboard.in
• Anti-social bookmarking
• Bookmark aggregator
• Full text search
DevonThink
• Information management central
• Collects all my RSS feeds
• A.I. full text search
System
Maintenance
Applejack
• Boot-time system utilities
Lingon
• Launchd maintenance GUI
Keyboard Shortcuts
OS Shortcuts
• fn⌘ F1 

 = Mirror screen
• ⌃⌥⌘ 8 

 = Invert colors
• ⌘⌥ ⏏ 
 
 = Turn off screen
OS Shortcuts
is called “mash” because
you mash all the row of
modifier keys
⌃⌥⌘
OS Shortcuts
• ⌘⇧Q 

 
 = Logout
• ⌘⌃⏏ 

 
 = Reboot
• ⌘⌃⌥⏏ 

 = Shut down
on Mac OSX
Developer Productivity
Power Ups
by Matthew McCullough, Ambient Ideas, LLC
Get going with your
new skills!
Credits
• Asphalt
http://www.flickr.com/photos/ansik/2469225118/
• Skateboarding
http://www.flickr.com/photos/10789042@N07/968520138/
• Cement
http://www.flickr.com/photos/shaireproductions/4270505958/

Weitere ähnliche Inhalte

Mehr von Matthew McCullough

Mehr von Matthew McCullough (20)

Git and GitHub for RallyOn
Git and GitHub for RallyOnGit and GitHub for RallyOn
Git and GitHub for RallyOn
 
Migrating from Subversion to Git and GitHub
Migrating from Subversion to Git and GitHubMigrating from Subversion to Git and GitHub
Migrating from Subversion to Git and GitHub
 
Git Notes and GitHub
Git Notes and GitHubGit Notes and GitHub
Git Notes and GitHub
 
Intro to Git and GitHub
Intro to Git and GitHubIntro to Git and GitHub
Intro to Git and GitHub
 
Git Going for the Transylvania JUG
Git Going for the Transylvania JUGGit Going for the Transylvania JUG
Git Going for the Transylvania JUG
 
Transylvania JUG Pre-Meeting Announcements
Transylvania JUG Pre-Meeting AnnouncementsTransylvania JUG Pre-Meeting Announcements
Transylvania JUG Pre-Meeting Announcements
 
Game Theory for Software Developers at the Boulder JUG
Game Theory for Software Developers at the Boulder JUGGame Theory for Software Developers at the Boulder JUG
Game Theory for Software Developers at the Boulder JUG
 
Cascading Through Hadoop for the Boulder JUG
Cascading Through Hadoop for the Boulder JUGCascading Through Hadoop for the Boulder JUG
Cascading Through Hadoop for the Boulder JUG
 
JQuery Mobile
JQuery MobileJQuery Mobile
JQuery Mobile
 
R Data Analysis Software
R Data Analysis SoftwareR Data Analysis Software
R Data Analysis Software
 
Please, Stop Using Git
Please, Stop Using GitPlease, Stop Using Git
Please, Stop Using Git
 
Dr. Strangedev
Dr. StrangedevDr. Strangedev
Dr. Strangedev
 
Jenkins for One
Jenkins for OneJenkins for One
Jenkins for One
 
Lean Fluffy Startups
Lean Fluffy StartupsLean Fluffy Startups
Lean Fluffy Startups
 
Finding Clojure
Finding ClojureFinding Clojure
Finding Clojure
 
Groovy-er Desktop Applications With Griffon
Groovy-er Desktop Applications With GriffonGroovy-er Desktop Applications With Griffon
Groovy-er Desktop Applications With Griffon
 
Semantic Rubrication
Semantic RubricationSemantic Rubrication
Semantic Rubrication
 
How a Cupsfilter Made a Hard Web Conversion Easier
How a Cupsfilter Made a Hard Web Conversion EasierHow a Cupsfilter Made a Hard Web Conversion Easier
How a Cupsfilter Made a Hard Web Conversion Easier
 
Git Going with DVCS v1.6.0
Git Going with DVCS v1.6.0Git Going with DVCS v1.6.0
Git Going with DVCS v1.6.0
 
Advanced Encryption on the JVM v0.2.8
Advanced Encryption on the JVM v0.2.8Advanced Encryption on the JVM v0.2.8
Advanced Encryption on the JVM v0.2.8
 

Kürzlich hochgeladen

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Kürzlich hochgeladen (20)

DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 

Mac OSX Software Developer Productivity Tips