SlideShare uma empresa Scribd logo
1 de 140
Baixar para ler offline
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/

Mais conteúdo relacionado

Mais de Matthew McCullough

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 GitHubMatthew McCullough
 
Git Going for the Transylvania JUG
Git Going for the Transylvania JUGGit Going for the Transylvania JUG
Git Going for the Transylvania JUGMatthew McCullough
 
Transylvania JUG Pre-Meeting Announcements
Transylvania JUG Pre-Meeting AnnouncementsTransylvania JUG Pre-Meeting Announcements
Transylvania JUG Pre-Meeting AnnouncementsMatthew McCullough
 
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 JUGMatthew McCullough
 
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 JUGMatthew McCullough
 
Groovy-er Desktop Applications With Griffon
Groovy-er Desktop Applications With GriffonGroovy-er Desktop Applications With Griffon
Groovy-er Desktop Applications With GriffonMatthew McCullough
 
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 EasierMatthew McCullough
 
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.8Matthew McCullough
 

Mais de 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
 

Último

Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 

Último (20)

Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 

Mac OSX Software Developer Productivity Tips