└── README.md /README.md: -------------------------------------------------------------------------------- 1 | #1. *Tasks* 2 | ================= 3 |
4 | 5 | #Initial Sensible [ well, for software developers ] Mac *Defaults* 6 | ——————————————————————————————————————————————————————————————— 7 |

8 | 9 | ###Mandatory: 10 | 11 | 12 | ####*[ Make an obligatory code path!! ] !!* 13 | 14 | mkdir ~/code 15 | 16 |
17 |
18 | 19 | 20 | ###Recommended: 21 | 22 | [ Organize your Favorites in the Finder’s sidebar ] 23 | 24 | * [ Apple Guide ](http://support.apple.com/kb/PH10918) 25 | * Organize according to your own current personal tastes* 26 | * *My preference is to sort Finder Favorites in descending order based on the folders I already am or am planning on accessing most frequently 27 | 28 |
29 | 30 | 31 | ####Setting *zsh* as your default shell [Or, “The Radical Beginnings of an Extremely Superior Terminal Experience”] 32 | 33 | * ####[It’s actually quite easy to join the master race! Visit this nice Github repo to see!](https://github.com/robbyrussell/oh-my-zsh) 34 | * [ Here’s a useful site ](http://explainshell.com/) — for *typing in commands and getting back detailed explanations of what they do, for various UNIX shell programs* 35 | * [Slide presentation on the benefits of using zsh over other options](http://www.slideshare.net/jaguardesignstudio/why-zsh-is-cooler-than-your-shell-16194692) 36 | 37 |
38 |

39 | 40 | ###Optional: 41 |
42 | 43 | *[ Show all hidden files — note: this might be annoying for you on the Desktop ]* 44 | 45 | defaults write com.apple.finder AppleShowAllFiles YES 46 | 47 | *[ Disable key press hold/**Enable key press repetition** — note: kkkkkkkkkkkkkeeeeeennnnnyyyyyyyy rockkkkkkkssssssssssssss!!!!! andddddddd so do youuuuuuuu!!!! (it may be annoying to read, but that would have been **really** annoying to type without this keyboard modification) ]* 48 | 49 | defaults write -g ApplePressAndHoldEnabled -bool false 50 | 51 |

52 |
53 | 54 | 55 | ##Setup SSH [ secure, passwordless identification and connection protocol ] 56 | —————————————————————————————————————————————— 57 | 58 | * [ First, *learn about SSH* if you don’t know what it is yet](http://en.wikipedia.org/wiki/Secure_Shell), because chances are you **will** need to use it in *some* way, at *some* point in your development career. 59 | * A common example is [ connecting to Amazon EC2 Servers using the ( free and pre-installed ) command-line program ```ssh``` ](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AccessingInstancesLinux.html) 60 | 61 | ####*[ Make a default path in your *Home* folder to store SSH keys ]* 62 | 63 | mkdir ~/.ssh 64 | cd ~/.ssh 65 | 66 | 67 | #####*[ Create a default local public SSH key pair (of the [ RSA ](http://en.wikipedia.org/wiki/RSA_%28cryptosystem%29) type) ]* 68 | 69 | * Using [ ssh-keygen ](http://en.wikipedia.org/wiki/Ssh-keygen), which comes pre-installed on all Macs 70 | * ``ssh-keygen -t rsa`` 71 | > [ Command Explanation — ExplainShell ](http://explainshell.com/explain?cmd=ssh-keygen+-t+rsa) 72 | 73 | 74 | *[ Learn how to use the command line program ```ssh``` and SSH in general ]* 75 | 76 | * Documentation 77 | * Type ``man ssh`` to read the manual within your terminal, *orrrr…* 78 | * ….[ View the manual pages online on Apple’s site ](https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man1/ssh.1.html) 79 | 80 | * Guides 81 | * [ Quick overview on Tutsplus ](http://code.tutsplus.com/tutorials/ssh-what-and-how--net-25138) 82 | * [ Hey, you! Overachiever! Click me, I’m a much deeper guide!! ](http://www.linuxjournal.com/article/4412?page=0,0) 83 | 84 |
85 |

86 | 87 | #Git Setup 88 | 89 | ###*[ Install Git ]* 90 | 91 | * *Easy Mode*: [ Using Homebrew ](http://brew.sh/) 92 | * run ``brew install git`` in the command line. that’s it. 93 | * *Takes a bit more time Mode*: [ Using native installer package ](http://git-scm.com/download/mac) 94 | 95 | ####*[ Init your Git configuration with some sensible (and open-source) defaults ]* 96 | 97 | run ```curl -O https://raw.githubusercontent.com/nicolashery/mac-dev-setup/master/.gitconfig``` 98 | 99 | ####*[ Setup personal Git configuration ]* 100 | 101 | git config --global user.name “Your Name” 102 | 103 | git config --global user.email “youremail@domain.com” 104 | 105 | git config --global credential.helper osxkeychain 106 | 107 | Vim Setup 108 | - 109 | * Defer to [the Vim section in nicolashery’s mac-dev-setup repo](https://github.com/nicolashery/mac-dev-setup#vim) for now* 110 | 111 | Python Setup 112 | - 113 | 114 | *[ Install the recommended package manager ]* 115 | 116 | sudo easy_install pip 117 | 118 | sudo pip install --upgrade distribute 119 | 120 | sudo pip install --upgrade pip 121 | 122 | *[ Install a better interactive Python interpreter console ]* 123 | 124 | sudo pip install ipython[zmq,qtconsole,notebook,test] 125 | 126 | *[ Make path to store virtual environments in ]* 127 | mkdir ~/envs 128 | 129 | *[ Install virtuenv module globally to create virtual Python environments ]* 130 | sudo pip install virtualenv 131 | 132 | Heroku Setup *[ if you’re using Heroku ]* 133 | - 134 | *[ Install the Heroku Toolbelt ]* 135 | 136 | [Found here!!](https://toolbelt.heroku.com/) 137 | 138 | *[ Setup SSH Keys support ]* 139 | 140 | heroku keys:add 141 | 142 | 143 | Java *[Development Environment]* Setup 144 | - 145 | 146 | *[ Install the Java Development Kit (a.k.a. JDK) ]* 147 | 148 | * Type ```java``` in the terminal to check and see if you have **any** form of *JDK* installed 149 | * If you *don’t* have a JDK installed 150 | * OS X will show a pop-up dialog informing you that you need to install a JDK in order to use this ```java``` command-line tool 151 | * It should have a *More Info …* option. Click this to go to the download page for the JDK …. *orrrr*…. 152 | * …[ Take this shortcut to the JDK Download page ](http://www.oracle.com/technetwork/java/javase/downloads/index.html) — Valid as of January 15, 2015 ….*ORRRR*…. 153 | * …[ Save this shortcut to the JDK v8.25 download link ](http://download.oracle.com/otn-pub/java/jdk/8u25-b17/jdk-8u25-macosx-x64.dmg) — Valid as of January 15, 2015 154 | * If you *do* have a JDK installed, and you **know** it’s the official JDK, but you want to install an **open-source version of the JDK**, see below 155 | 156 | * If you want to use an **open-source** Java Development Kit 157 | * [ Follow these instructions from Oracle themselves on installing OpenJDK, an open-source JDK alternative](https://wikis.oracle.com/display/OpenJDK/Mac+OS+X+Port) …. *orrrr* …. 158 | * …[ check out this Github repository if you prefer to use an installer ](https://github.com/alexkasko/openjdk-unofficial-builds) 159 | 160 | * Run this in the terminal to list the JDK distributions you have installed on your Mac 161 | * ```ls /System/Library/Frameworks/JavaVM.framework/Versions``` 162 | * Run either of these in the terminal to check the version of ```java``` your environment is currently using 163 | * `java -version` 164 | * `javac -version` 165 | 166 | 167 | 168 |


169 |
170 | Applications 171 | = 172 | 173 |

Security

174 | * [ Hands Off - Free version works fully for a set time period, can re-enable](https://www.oneperiodic.com/products/handsoff/) — [ protect your Mac’s internet and disk access ] 175 | * I prefer this over the more popular and well-known *Little Snitch*, because *Hands Off* also helps protect against file tampering. 176 | 177 |

Development

178 | 179 |
180 | 181 |

Core

182 | ———— 183 | 184 |
Terminal
185 | 186 | * [ iTerm 2 ](http://iterm2.com/) — [ lightyears ahead of the default Mac Terminal ] 187 | * [Bonus points: The awesome and easy-on-the-eyes Solarized color schemes](http://ethanschoonover.com/solarized) 188 | * [Old but still relevant OS X terminal customization thread on Arstechnica](http://arstechnica.com/civis/viewtopic.php?t=1215355) 189 | 190 | * [ Homebrew ](http://brew.sh/) — [ install tailored Mac ports of UNIX software ] 191 | * Also install Homebrew Cask to use Homebrew to manage native Mac apps in addition to UNIX ports 192 | * Install with ```brew cask install google-chrome``` 193 | * [ Homepage ](http://caskroom.io/) 194 | 195 |
196 | 197 | 198 |
Browsers
199 | 200 | * [Firefox Developer Edition [ Beta Firefox geared specifically toward web developers ] ](https://www.mozilla.org/en-US/firefox/developer/) 201 | * Or Chrome Canary, if that’s your style, smh 202 | 203 |
Virtualization [or, How to Disgrace Your Mac and Shame Your Family and Friends by Running Operating Systems That Aren’t the OS X Master Race
204 | 205 | * Bootcamp [ for Windows ] 206 | * [Support](http://www.apple.com/support/bootcamp/) 207 | * [Guide](http://manuals.info.apple.com/MANUALS/1000/MA1519/en_US/Boot_Camp_Install-Setup_10.6.pdf) 208 | 209 | * VirtualBox [ for everything else, including GNU/Linux distributions ] 210 | * [Homepage](https://www.virtualbox.org/) 211 | * [Lifehacker Guide: Installing Ubuntu](http://lifehacker.com/5938332/how-to-run-mac-os-x-on-any-windows-pc-using-virtualbox) 212 | 213 |
Database Management
214 | 215 | * [ Sequel Pro ](http://www.sequelpro.com/) — [ for SQL, freely available ] 216 | 217 |
218 | 219 |
IDEs
220 | 221 | * [ Xcode - Free ](https://developer.apple.com/xcode/) — [ the industry standard IDE for native **iOS** and **Mac** software development ] 222 | * Main languages are **Objective-C** and [ **Swift** ](https://developer.apple.com/swift/) 223 | * Plus good support for C/C++ and more — *[ thanks to Clang/LLVM, the whole toolset now even supports most C++11 and C++14 features ]* 224 | * **Great** Git integration *(though I do still prefer to use the command line [ I do whenever I can ], this is still nice to have )* 225 | * Also [ install the Command Line Tools for extra brownie points ](http://railsapps.github.io/xcode-command-line-tools.html) 226 | * To install, simply run this in your terminal — ```xcode-select --install``` 227 | * *I mean, you’ll need them to install many Homebrew packages anyways..Save yourself some frustration by getting it out the way now. :)* 228 | * Registering as an iOS and Mac developer both cost a separate $99/year 229 | * Allows you to publish apps on each respective App Stores 230 | * [ Apple provides free Beta releases for registered developers ](https://developer.apple.com/support/resources/prerelease-software.php) 231 | * This includes betas access for — *[ iOS, OS X, Xcode and Safari ]* 232 | * [ Extend Xcode with Alcatraz, an easily installable (just paste 1 command in the terminal) extension ](http://alcatraz.io/) 233 | * *Built-in* plugin/theme management that fits right into Xcode 234 | * Access in the standard menu — [ Window **->** Package Manager ] 235 | * Shortcut — [ Shift *+* Command *+* 9 ] 236 | * > ****Subjective Opinion:***
As a registered developer who is currently using **Xcode 6.2 beta 4**, I can say that Xcode has *vastly* improved since, say, the dreaded days of **Xcode 4-5**.
It’s grown into quite a respectable IDE that I’ve come to really enjoy working with on a daily basis. It’s especially nice when using **Swift** as your main language. Swift is technically still a beta language, and It has its quirks, but Apple is quickly fixing them, and ***I highly suggest you learn Swift and use it for all new, non-legacy iOS/Mac development. It’s more than developed enough to be production-ready for most apps’ cases, IMHO. It’s only the icing on the cake that it’s exponentially more pleasurable to use and look at, and *much* quicker to develop in, than Objective-C.*** 237 | 238 |
239 | 240 | * [ Android Studio - Free, Open-Source ](http://developer.android.com/sdk/index.html) — [ open-source **Android** **Java** IDE ] 241 | * Also, ****Google themselves now recommend using Android Studio for all _modern_ Android development*** 242 | * Git *and* Github integration!! 243 | * See Section on Java Development Environment Setup to prepare your Mac for Android Java development 244 | 245 | * > ****Subjective Opinion:***
Haven’t hacked Android in a bit, ****but even when I was using Android Studio in pre-release *it absolutely crapped all over Eclipse.** 246 | 247 | 248 | * [ Sublime Text - Free w/ license bugging ](http://www.sublimetext.com/) — [ code editor for pretty much everything else ] 249 | * Free version gives pretty much *full-featured access to stable versions*, just bugs you to pay for a license after so many amounts of file saves 250 | * Full license gives you access to development versions, *but they honestly aren’t released that often* * Technically, mainly a code editor, **but the massive amount of plugins available for it allow you to easily transform it into a fully-functional custom-tailored IDE** 251 | * *Can code your own plugins in Python* 252 | * Install [Package Control](https://packagecontrol.io/) for plugin discovery and management 253 | * Create a symbolic link to the automatically installed supplementary shell program ```subl``` …. 254 | * ….*which can be used to quickly open Sublime sessions with a folder you’re in inside a terminal* 255 | * ```ln -s "/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl" /usr/local/bin/sublime``` 256 | * This creates the link to be called from your command line with ```sublime``` …
257 | ….Rename this word [at the end in the ```ln``` call] to whatever you’d like in order to customize this.
****Subjective Opinion:*** It may be longer, but I prefer to type ```sublime``` instead of ```subl``` purely for the sake of explicitness. 258 | *
Quick directions:
259 | * [ Open current directory in Sublime Text ] — ```sublime .``` 260 | * [ *Stupid Example:* Opening my code folder in Sublime Text ] — ```subl ~/code``` 261 |
262 | 263 | 264 |
265 | ####Homebrew Packages [ All Free ] 266 | ——————————————————— 267 | 268 |
Core [Or, The Programs Usually Named with 3-4 Letters for some reason]
269 | 270 | * ```git``` [ industry-standard version control system ] 271 | * Is now used all across the software development field 272 | * It is *obligatory and commonly expected* of a modern software developer to know how to use *at least* the basic commands, *so….* 273 | * …[Git gud.](http://www.git-scm.com/book/en/v2) — [official book] 274 | * **Fun Fact: It’s the underlying technology and driving force behind Github** *(which you’re most likely reading this on right now)* ] 275 | * Can be used to manage version control for much more than software 276 | * ***Example:*** The new hotnesses on Github seem to be *”awesome-“* compilations — *[ curated meta-lists of resources for specific topics ]* 277 | * [ A very meta list of “awesome” Github repos ](https://github.com/emijrp/awesome-awesome) 278 | * ``vim --override-system-vi`` [ installs fresher vim release ] 279 | * The ``—-override`` flag does what you might think — [ it overrides the *out of date default* Vim distribution Apple provides with OS X ] 280 | 281 |
282 | 283 | * ``wget`` [ download files from terminal ] 284 | * [Noob’z Guide](http://www.regravity.com/documents/Wget%20%96%20A%20Noob%92s%20guide%20-%20Regravity.com.pdf) 285 | * [Examples](http://ssh-commands.blogspot.com/2013/01/the-ultimate-wget-download-guide-with.html) 286 | * [Manual](http://www.gnu.org/software/wget/manual/wget.html) 287 | 288 | * ``tmux``[ manage terminal sessions ( *a.k.a. [multiplexer](http://linuxcommand.org/lc3_adv_termmux.php) )* ] 289 | * [Quick Start](https://myhumblecorner.wordpress.com/2011/08/30/screen-to-tmux-a-humble-quick-start-guide/) 290 | * [Crash Course](http://robots.thoughtbot.com/a-tmux-crash-course) 291 | - [Noob’z Guide](http://blog.hawkhost.com/2010/06/28/tmux-the-terminal-multiplexer/) 292 | * [Manual](http://www.openbsd.org/cgi-bin/man.cgi/OpenBSD-current/man1/tmux.1?query=tmux&sec=1) 293 | 294 | 295 |
296 | 297 | * ``ffmpeg`` [ video processing power house ] 298 | * to add libfaac support, run ``brew reinstall ffmpeg --with-faac`` 299 | * ``gifsicle`` [ gif processing power house ] 300 | 301 | 302 |
303 | 304 | * ``cask`` [ manage native Mac app installations/removals in the terminal, through a Homebrew extension ] 305 | * [Homepage](http://caskroom.io/) 306 | 307 | 308 |
Python
309 | 310 | * Python Distributions 311 | 312 | * ```python3``` [it’s newer than Python 2] 313 | * ```pypy``` [it’s faster than Python 3] 314 | 315 |
316 | 317 | * Essential Frameworks ````TODO: Move the recommended frameworks/libs to more sensible sections; they don’t belong here! (holy shit I’m tired) — or develop a visual indicator for Homebrew packages so they can be under any heading```` 318 | * Web Development 319 | * [Django, a powerhouse web framework](https://www.djangoproject.com/) 320 | * Provides most the bells and whistles and has its own set of rules and ways it thinks things should be done 321 | * Better for fuller feature-set for content-based websites 322 | * More jobs available for it 323 | * Disclaimer: This is the first web framework I truly learned and became proficient in 324 | * *Tons* of freelance projects completed and delivered on time [or, if not, close enough at the very least] using it and, thus, *tons* of money made with it 325 | * Also see my [**old** [ remember this key fact before you laugh at any line of code or bad decision in it; I was like 15 years old and my skillset, practices and general proficiencies as a good engineer have since grown much, much higher in quality ! ] open-source media platform (began as Youtube clone) hosted right here on Github](https://github.com/kennyledet/emp) . It was *my first relatively sizable Django project*, **and** *my first web application project that was more complex than the usual traditionally beginner-friendly blogs, todo lists, one-off script wrappers and Twitter clone implementations in general.* It taught me TONS about web development, and I have the utmost respect for its developers and everyone in the community contributing plugins and learning resources. **HOWEVER**: These days I prefer to use Flask for most tasks. 326 | 327 | * [Flask, a minimalist web framework](http://flask.pocoo.org/docs/0.10/api/) 328 | * My go-to web framework when a specific language isn’t a requirement 329 | * Not even just because Python is my favorite lang *[and even then, Swift is swiftly becoming my new favorite!]* 330 | * Because it objectively sets the bar of how a modern minimalist web framework should look and act 331 | * Provides a nice core API along with an easily extensible architecture; 332 | * [*Many* plugins](https://github.com/humiaozuzu/awesome-flask) that solve most common web development problems are now available for you to pick, choose and freely combine in your application’s architecture, interchangeably *[dat decoupling]* 333 | * Along with [Blueprints](http://flask.pocoo.org/docs/0.10/blueprints/), the extensibility of the plug-in system essentially allows you to ultimately form your own specialized, domain-specific web frameworks, optimized for each of your projects’ specific intents and purposes.
334 | **This is a bit more difficult to pull off in Django (at least at the core level)** 335 | * Better-suited and much quicker for developing APIs and web services 336 | * Easier to deploy 337 | 338 | * GUI Toolkits 339 | * [PyQt](https://wiki.python.org/moin/PyQt) 340 | * Homebrew package: ```pyqt``` 341 | * Necessary for building some other Homebrew packages 342 | * [Pyside](http://qt-project.org/wiki/PySide_Binaries_MacOSX) 343 | * I **highly** prefer using Pyside over the original PyQt module for developing GUIs in Python 344 | * More lenient licensing than PyQt policy, **especially important for commercial applications** [ [See comparison](http://www.devilsan.com/blog/choosing-between-pyside-or-pyqt-license-consideration) ] 345 | * They’re mostly interchangeable other than that; [here is a list of more differences](http://qt-project.org/wiki/Differences_Between_PySide_and_PyQt) *(note that PySide is limited to PyQt API 2, if that matters for you)* 346 | 347 | * Automation 348 | * [selenium](http://docs.seleniumhq.org/) [ web testing *(see: automation, scraping)* ] 349 | * If I can get away with only using Python, I love and highly prefer to use [splinter](http://splinter.cobrateam.info/en/latest/) a lot more — especially in my own projects 350 | * Cross-platform, higher-level wrapper around selenium’s core functionality 351 | * It’s lesser-known and, by extension, used less and has much less documentation and online support available for it, **buttttt—** 352 | * It benefits from a *much more respectably Pythonic interface* which helps in making it **simpler to use, more comfortable to learn for experienced Python developers and ``MUCH`` quicker for development** *(think C relative to Python, C being selenium and Python being splinter)* 353 | * selenium and its multi-platform library distributions are still used more often across the industry *(since more people know it, of course)* — *so if you want better chance at jobs involving web testing and/or automation, you’ll still be learning selenium* 354 | 355 |
Node.js
356 | 357 | * Node.js Distributions 358 | * ```node``` — [ [node.js, the exponentially popular, asynchronous, event-driven Javascript platform based on Google’s V8 engine *(which is Chrome’s runtime)*](http://nodejs.org/) ] 359 | 360 | * Installing the core ```node``` package also installs [ ```npm```, the default package manager for Node.js](https://www.npmjs.com/) 361 | 362 | * Essential Tooling 363 | * ```nvm``` — [ [Node.js version management script ](https://github.com/creationix/nvm) ] 364 | 365 |
366 | 367 | * Essential Frameworks ````TODO: Move the recommended frameworks/libs to more sensible sections; they don’t belong here!```` 368 | 369 | * Web Development 370 | * [Meteor](https://www.meteor.com/) 371 | * I used this when it first came out, before it was the *hot new Javascript framework of the month(s)*, and while it was nice back then too it really has grown up into quite the powerhouse node.js based web framework 372 | * Geared towards real-time web applications 373 | * [Derby](http://derbyjs.com/) 374 | * Similar to Meteor in that it’s meant for real-time apps, but I like Meteor much better ;) 375 | * [Express](http://expressjs.com/) 376 | * Minimalist node.js framework — gets out your way but provides the basics necessary for modern most web applications 377 | * Still in heavy use in the industry 378 | 379 |
Ruby
380 | 381 | * Tooling 382 | * ```rbenv``` [virtualenv, but for Ruby] 383 | * [Add ```ruby-build``` as a plugin for compiling/installing different Ruby versions](https://github.com/sstephenson/ruby-build) 384 | 385 | * ```bundler``` [gem manager for ruby] 386 | 387 | * Web Development 388 | * [Ruby on Rails [ industry-standard Ruby webdev powerhouse ] ](http://rubyonrails.org/) 389 | * [Sinatra [ for smaller web apps ] ](http://www.sinatrarb.com/) 390 | 391 |
Databases
392 | 393 | * [```mongo``` [ MongoDB: open-source document-based database, the leading [NoSQL](http://www.mongodb.com/nosql-explained) db ] ](http://www.mongodb.org/) 394 | 395 | * [```redis``` [ open-source key-value cache and store (or data structure server) ] ](http://redis.io/) 396 | 397 | * [```postgres``` [ SQL db superior to *MySQL* ] ](http://www.postgresql.org/) 398 | 399 | * [```mysql``` [ inferior SQL db that’s **still** used more than *postgres* for *some* reason *(I blame PHP development)* ] ](http://www.mysql.com/) 400 | 401 | 402 |
Misc
403 | 404 | * [```xquartz``` [ open-source Mac port of X.Org X Window System *found on GNU/Linux* ] ](http://xquartz.macosforge.org/landing/) 405 | 406 | * [```zeromq``` [ distributed message queue platform ] ](http://zeromq.org/) 407 | 408 | * [```the_silver_searcher``` [ search files on your drive in the terminal, like ack, but *faster* ] ](https://github.com/ggreer/the_silver_searcher) 409 | 410 |



411 | 412 | 413 |
414 | 415 | General Helpers 416 | - 417 | 418 | * [ ClipMenu 1.0.0a1 alpha - Free ](http://www.clipmenu.com/blog/2014/11/11/clipmenu-1-0-0a1-released/) — [ awesome clipboard management tool ] 419 | * Access extensive clipboard history 420 | * Image and code previews ( *code previews have syntax highlighting* ) 421 | * [ Caffeine - Free ](https://itunes.apple.com/us/app/caffeine/id411246225) — [ keeps your Mac awake ] 422 | * Unobtrusive; simply sits in menubar 423 | * [ Flux - Free ](https://justgetflux.com/) — [ changes screen warmth based on the time of day ] 424 | * [Helps you sleep by making your screen *not* mimick the sun](https://justgetflux.com/research.html) 425 | * [ Bartender - Paid w/ free trial ](http://www.macbartender.com/) — [ Organizes menubar app icons (*can hide them for cleaner look*) ] 426 | 427 | 428 | 429 | 430 |
431 | 432 | Productivity 433 | - 434 | 435 | * **General** 436 | * [ Alfred - Free w/ paid upgrade ](http://www.alfredapp.com/) — [ swiss army knife style Mac productivity shortcut **beast** ] 437 | * [ Paid “Powerpack” upgrade ](http://www.alfredapp.com/powerpack/) provides even more features and extensions named *“Workflows”* 438 | * [ Official Alfred Workflows Overview](http://support.alfredapp.com/workflows) 439 | * [ Can create and share your own Workflows!! ](http://support.alfredapp.com/workflows#creating-first) 440 | * Workflow Collections 441 | * [ zenorocha/alfred-workflows Github repo](https://github.com/zenorocha/alfred-workflows) 442 | * [ willfarrell/alfred-workflows (for developers) Github repo ](https://github.com/willfarrell/alfred-workflows) 443 | 444 | * > ****Subjective Note***: I mainly just use it for quickly emptying the Trash since Yosemite brought a Spotlight pop-up that can search files and the web in much the same way Alfred does, but natively* 445 | 446 | 447 | * **Mail** 448 | * [ Mailbox - Free ](http://www.mailboxapp.com/) — [ awesomely productive Gmail management ] 449 | * Can sort your mail for you in smart and actually useful ways 450 | * > ****Subjective Opinion***: Could really use support for more than just Gmail* 451 | 452 |
453 | 454 | 455 | * **Cloud Notes** 456 | * [ Simplenote - Free](https://itunes.apple.com/us/app/simplenote/id692867256?mt=12) — [ Like the name says, it’s simple (much more-so than Evernote) ] 457 | * [ Evernote - Free w/ premium subscription ](https://evernote.com/) — Cloud notes powerhouse 458 | * Supports tons of media options and scanning from app 459 | * More widely supported and integrated into 3rd party applications, if that matters to you 460 | 461 |
462 | 463 | 464 | * **Markdown Editors** 465 | * [ Markdown - Free ](https://itunes.apple.com/us/app/id727484953) — [ free Markdown editor with live preview pane ] 466 | * [ Mou Beta - Free ](http://25.io/mou/) — [ like above, is a bit better *when it actually works and isn’t crashing* ] 467 | 468 |
469 | 470 | 471 | * **Password Managers** 472 | 473 | * [ 1Password - Free w/ paid desktop licenses](https://agilebits.com/onepassword) — [ beautiful and functional cross-platform password management (including iOS), if you’re into that sort of thing ] 474 | * [ Lastpass ](https://lastpass.com/misc_download2.php) — [ password manager with apps and extensions for most platforms ] 475 | * > Lastpass works, but less attractively so than 1Password. I’m still using it alongside 1Password for purely legacy reasons, though I do plan on transferring all my logins to *1Password* 476 | * Has mobile apps, **but you gotta pay for a premium subscription ($11.99 / year) to use them** 477 | 478 |
479 | 480 | 481 | * **Ambient Noise** *[ for when you want to listen to something other than music while programming ]* 482 | * [ Sleep Pillow - Free ](https://itunes.apple.com/us/app/sleep-pillow/id597419160?mt=12) — [ nice presets ] 483 | * [ Relax Melodies - Free w/ IAP](http://www.ipnossoft.com/app/relax-melodies/) — [ more customizable ] 484 | 485 |
486 | 487 | 488 | * **Misc** 489 | * [ CheatSheet - Free ]() — [quick shortcut to pull up guide of *all* shortcuts along with their associated keyboard combinations 490 | * Works for *any* Mac app you have open 491 | 492 |
493 |
494 | 495 |
496 | 497 | Entertainment and Media Content 498 | - 499 | 500 | * **Music** 501 | * [ Spotify - Free w/ premium subscriptions ](https://www.spotify.com/us/) — [ awesome streaming music player ] 502 | * **HUGE** catalog, radio features, playlists and tons of plugins for Desktop *(called apps)* 503 | * *Now has a neat built-in remote feature for controlling the Desktop apps from the Mobile apps* 504 | * > ****Protip:*** *“Save” feature* [ free for all users ] can technically be used to organize a cloud-based iTunes-like library 505 | * > ****Protip:** Download feature* [ requires a Premium subscription ($9.99 / month) ] can be used for **actually saving** songs to local drive, on both Desktop and Mobile 506 | 507 | * **Videos** 508 | * [ MplayerX - Free ](http://mplayerx.org/) — [ top-notch video player ] 509 | * Can play most **any** type of video file you can throw at it (hasn’t failed me yet!!) 510 | * Faster *and* more aesthetically pleasing than *VLC* 511 | 512 |
513 |
514 | 515 | 516 |
517 | 518 | Connectivity 519 | - 520 | 521 | * [ Transmission - Free (just asks for donations) ](https://www.transmissionbt.com/) — [ top-notch torrent downloader ] 522 | * [ Colloquy - Free ](http://colloquy.info/) — [ for chatting on IRC ] 523 | * [ Cyberduck - Free ](https://cyberduck.io/) — [ connectivity powerhouse for *everything else* ] 524 | * Supports *FTP/SFTP, WebDAV, Amazon S3, Google Cloud Storage and Rackspace Cloud Files* 525 | * [ VPNReactor - Pro and Free (Limited) Options](https://www.vpnreactor.com/) — [ Virtual Private Network with native Mac app ] 526 | * Browse the internet securely and safely with a private IP address. 527 | 528 |
529 |
530 | 531 | Maintenence Tools 532 | - 533 | 534 | * [ Appcleaner - Free ](http://www.freemacsoft.net/appcleaner/) — [ remove *ALL* **(well, usually it’s *most*)** core files associated with a Mac Application, not just the .app file ] 535 | * [ Onyx - Free ](http://www.titanium.free.fr/onyx.html) — [ Mac maintenance power house ] 536 | * It seriously kicks extensive ass, get it 537 | * [ The Unarchiver - Free ](http://wakaba.c3.cx/s/apps/unarchiver.html) — [ unarchives compressed files + support for tons more extensions than the native OS X solution ] 538 | * [ Disk Inventory X - Free ](http://www.derlien.com/) — [ nice tool to visualize how your Mac’s storage is being used, file by file ] 539 | 540 |
541 |
542 | 543 | *[ Office / Home ]* Content Production 544 | - 545 | 546 |
Apple
547 | 548 | * [ Keynote - $19.99 ](https://itunes.apple.com/us/app/keynote/id409183694?mt=12) — [ better than *Microsoft’s PowerPoint* for making presentations ] 549 | * [ Pages - $19.99 ](http://www.apple.com/mac/pages/) — [ better than *Microsoft’s Word* for **some** word processing *(like cool and stylish flyers and resumes)* ] 550 | 551 | * [ Logic Pro X / Garageband - $199.99 ](https://itunes.apple.com/us/app/logic-pro-x/id634148309?mt%3D12) — [ professional and amateur *DAWS(Digital Audio Workstations)*, respectably, for producing music on Apple platforms ] 552 | 553 |
554 | 555 | 556 |
Microsoft - $99.99
557 | 558 | * Word [ better than *Apple’s Pages* for **most** word processing ] 559 | * Excel [ better than *Apple’s Numbers* for processing spreadsheets ] 560 | 561 |
562 | 563 | 564 |
Other Companies (yes, they’re still relevant in this space)
565 | 566 | * [ Ableton Live - $79.99 - $599 ](https://www.ableton.com/en/shop/) — [ professional music production tool with features for live performances, loved by a lot of Electronic producers ] 567 | * [ Extension Packs ](https://www.ableton.com/en/packs/) 568 | 569 |
570 | 571 | 572 |

Design-Specific

573 | 574 | * [ Sketch - $99.99 w/ free trial ](http://bohemiancoding.com/sketch/) — [ hot new vector tool ] 575 | * Heavily used in the *iOS and Android app design communities* nowadays 576 | * [ Photoshop CC - Fucking Subscriptions ](http://www.adobe.com/products/photoshop.html) — [ industry standard bitmap-based design & editing tool ] 577 | * [ Pixelmator - $29.99 ](http://www.pixelmator.com/) — [ cheaper version of *Photoshop*, **with a one-time payment..** ] 578 | * [ Paintbrush - Free](http://paintbrush.sourceforge.net/) — [ Mac equivalent for *Microsoft Paint* and spiritual successor to *Apple’s own MacPaint* ] 579 | * [ Paintcode 2 - $99.99 ](http://www.paintcodeapp.com/) — [ for designing graphic elements translatable into **code for Apple’s platforms** ] 580 | 581 |
582 | 583 | 584 | Browser Plugins 585 | = 586 | * [ Microsoft Silverlight - Free ](http://www.microsoft.com/silverlight/) — [ used for watching Netflix ] 587 | 588 | * [ Adobe Flash - Free, at the cost of hogging your processor and battery power](http://get.adobe.com/flashplayer/) — [ if absolutely necessary..ugh ] 589 | 590 |
591 | 592 | 593 | Misc 594 | = 595 | * [ Mactracker - Free ](https://itunes.apple.com/us/app/mactracker/id311421597?mt=8) — [ a neat library-like application for exploring the entire catalog of Apple product releases throughout history up to the current iterations ] 596 | * ***Very** nice to have for die-hard Apple fanboys(or girls!) such as myself :)* 597 | 598 |
599 | 600 | 601 | Gaming [Or, SHIT I really should get back to work!!] 602 | = 603 | 604 | * **Bookmark [the Humble Bundle homepage](https://www.humblebundle.com/) and check back frequently** 605 | * [ They regularly add great new deals on games to their Store ](https://www.humblebundle.com/store) — *for [Windows, Mac, and Mobile]* 606 | * They also release a [ **weekly** bundle ](https://www.humblebundle.com/weekly), as well as a *less frequent, but usually better bundle [ The “Main” Humble Bundle ] on the homepage* 607 | * Proceeds go to different charities! 608 | * **Choose what you want to pay; *but you have to pay a minimum of $1 to receive Steam keys* ** 609 | 610 |

Platforms

611 | 612 | * [ Steam - Free platform, Free and Paid games ](http://store.steampowered.com/) — [ like the App Store for Mac games, plus social/community features and achievements (ok, ok, *so it’s more like Xbox Live for Mac*) ] 613 | 614 | * [ OpenEmu - Free ](http://openemu.org/) — [ bomb ass, open source, extensive collection of emulators for every *relevant* past-gen gaming platform, wrapped up in one nice Mac application ] 615 | 616 | * **I’ve been supporting them since near day one, and the initial devs are a great group of engineers. [ Check out the Github repo! ](https://github.com/OpenEmu/OpenEmu)** 617 | 618 |
619 | 620 |

Games

621 | 622 | * [ League of Legends - Free to play w/ IAP ](http://na.leagueoflegends.com/) — [ most popular MOBA out, [ now has native Mac client ](https://signup.leagueoflegends.com/en/signup/redownload) ] 623 | * Extremely fun, rewarding and addicting time-waster 624 | * **Add me:** KennyTheHitman93 625 | 626 | * [ Hearthstone - Free to play w/ IAP ](http://us.battle.net/hearthstone/en/) — [ popular trading card game based in Warcraft universe ] 627 | * I’ve downloaded it, and plan on playing it, but I’m much too busy right now to give my actual opinion. Everyone says it is a must-have so I’m still listing it here 628 | 629 | 630 | --------------------------------------------------------------------------------