Speed Up Boot Time on your Mac

Great day in the morning!

I’m a happy camper today. I don’t reboot my Hackintosh often but when I do, I’m treated to a 4+ minute process while all of my startup applications load.

Around two years ago, I had an epiphany of sorts. It went something like this – “I don’t need everyone of these Startup and Login items immediately when I begin using my Mac. It’d be really great if there was an application that would take all of those startup programs and stagger them out so they don’t all load at once.”

I looked around and couldn’t find any. I used to write code but family and life doesn’t really afford me the extra time to write stuff.

So, I continued to suffer in silence knowing that I would endure long boot times on my Mac until a solution comes along.

Today, I’ve found the solution.
It’s in an application called Delay Start. It does exactly what I described above. It takes your startup items and allows you to place a delay on each one of them. The benefit is that they aren’t all trying to hog I/O resources when your Mac is still in the process of booting up.

If you want to speed up your boot time and get your app startup under control check out Delay Start

Get control over your Mac Windows for Free!

I run a two monitor setup at my day job. One thing that I really want to be able to do is quickly throw a window from one display to the next.

I’ve looked into window managers like Divvy but couldn’t find one that would do that one specific thing for me. That is, until recently.

I came across an open source window manager for OS X called “Slate.” It does a number of really cool things which I’ll explore in upcoming posts. For now though all I can say is Slate can easily take a window and with a hot key press throw it onto another window.

If you want to get better control over your window manager, check out Slate.

As I said, I’ll be sharing more about Slate as I learn about it. In the meantime, here is my slate config file, cobbled together from a couple places around the internet. I don’t recall every source but here’s one.

# put up a Divvy style grid
bind pad* grid padding:5 0:6,2 1:8,3

# Let's check out Slate's switcher
#bind tab:cmd switch

alias hyper ctrl;alt;cmd

# Setup Abstract positions to stick things in big quadrants on my screen
alias lefthalf move screenOriginX;screenOriginY screenSizeX/2;screenSizeY

# Abstract positions
#alias full move screenOriginX;screenOriginY screenSizeX;screenSizeY
#alias lefthalf move screenOriginX;screenOriginY screenSizeX/2;screenSizeY
#alias righthalf move screenOriginX+screenSizeX/2;screenOriginY screenSizeX/2;screenSizeYø
#alias topleft corner top-left resize:screenSizeX/2;screenSizeY/2
#alias topright corner top-right resize:screenSizeX/2;screenSizeY/2
#alias bottomleft corner bottom-left resize:screenSizeX/2;screenSizeY/2
#alias bottomright corner bottom-right resize:screenSizeX/2;screenSizeY/2

# Abstract positions
alias full move screenOriginX;screenOriginY screenSizeX;screenSizeY
alias lefthalf move screenOriginX;screenOriginY screenSizeX/2;screenSizeY
alias righthalf move screenOriginX+screenSizeX/2;screenOriginY screenSizeX/2;screenSizeY
alias topleft corner top-left resize:screenSizeX/2;screenSizeY/2
alias topright corner top-right resize:screenSizeX/2;screenSizeY/2
alias bottomleft corner bottom-left resize:screenSizeX/2;screenSizeY/2
alias bottomright corner bottom-right resize:screenSizeX/2;screenSizeY/2

#Bind those positions to the nd pad1 ${bottomleft}
bind pad1:${hyper} ${bottomleft}
bind pad2:${hyper} push bottom bar-resize:screenSizeY/2
bind pad3:${hyper} ${bottomright}
bind pad4:${hyper} ${lefthalf}
bind pad5:${hyper} ${full}
bind pad6:${hyper} ${righthalf}
bind pad7:${hyper} ${topleft}
bind pad8:${hyper} push top bar-resize:screenSizeY/2
bind pad9:${hyper} ${topright}

bind 1:${hyper} ${lefthalf}
bind 2:${hyper} ${righthalf}
bind 3:${hyper} ${full}

# Throws
bind n:${hyper} throw next
bind right:${hyper} throw right resize
bind left:${hyper}  throw left  resize

bind f:${hyper} throw 1 resize
bind g:${hyper} throw 0 resize

bind space:${hyper} hint ASDFGHJKLQWERTYUIOPCVBN

Win a copy of an awesome Mac productivity tool

textexpander logoI type a lot every day. Over time, I began to notice that I type a lot of the same things over and over again. I discovered Smile’s utility TextExpander about two years ago and it has changed the way that I write text. TextExpander has eliminated much of the repetitive typing that I do each day. I’ll explain further with an example.

In general, I always use the same signature when I am typing an email. I don’t always use a standard signature so I don’t have Mail.app insert it automatically. With TextExpander, I can set it up so that ever time I type


TextExpander would replace it with


Joe C

Intrigued? Read on …

The Basics

TextExpander is built around snippets and abbreviations Snippets are the chunks of text that TextExpander expands when you type an abbreviation. You can create your own snippets like the example above or you can use some of the built-in snippets provided by TextExpander.

Out of the box, TextExpander includes snippets that will

  • expand accented words
  • auto-correct common spelling typos
  • expand HTML and CSS markup
  • shorten URLs
  • inserts common symbols saving you the trouble of opening the Special Characters palette.

but these snippets only scratch the surface of what TextExpander can do. I’ve created snippets to

  • expand common OS X directories – I type ~lib and it expands to ~/Library/
  • expand common email replies to frequently asked questions
  • convert text messaging snippets – I type brb and it expands to “be right back”
  • add lorem ipsum boiler plate text to files

There are loads of ways you can use just simple text expansion. It gets even more powerful with advanced snippets.

Advanced Snippets

TextExpander can do more than just expand simple text. TextExpander supports prompts, runs scripts and can insert rich snippets that include images.


I have embraced the paperless office. Part of the system I use involves me naming my files in a consistent fashion. For example, if I scan a medical bill I want to be sure that certain information is included in the file name. With TextExpander prompts, I can type in an abbreviation, get prompted for extra information and a filename is generated that conforms to my naming conventions.

Cross platform

If you use an iOS device you can reap the benefits of TextExpander there too. TextExpander snippets can sync across all of your OS X and iOS devices using Dropbox.

Due to limitations in iOS TextExpander isn’t as tightly integrated into the system but there are loads of awesome productivity apps with built-in support.

Jump right in

Try TextExpander out, you’ll be blown away at how simple it is to use. With each passing day you’ll find more and more ways to cut down on the amount of typing you do.

Win a Free Copy

For the next 30 days I’ll be taking entries to win a free copy of TextExpander courtesy of the awesome folks at Smile Software. To enter, leave a comment below telling me how you think you can use TextExpander to make your life easier. The best entry will be receive a coupon code good for a free download of the application.

Be sure to include your email address when you fill in the comment form so I know how to reach you if you win.

Tame Email With These TextExpander Snippets

Anyone who has heard me talk about OS X knows how much I love Text Expander. With Text Expander I can create short text snippets that, when typed, expand out to larger chunks of text. It saves me tons of time typing.

I use it everywhere but today, I’m going to share with you some things that I do to make managing email easier.

Expand common email responses

If you find yourself frequently sending the same email responses to your readers build a snippet library of canned responses.

This is especially helpful if you are running a help desk.

You can personalize the message by using either fill-ins or just moving the cursor to a spot that you want to personalize.

Dear %filltext:name=Name%,
Thanks for contacting support. I'm happy to help you with your question.


Your Friendly Support Team

This snippet will prompt you for a name, type some pre-canned text and then drop the cursor at the bottom of the message so you can customize it.

Expand my signature

In general, I always use the same signature. So I setup a snippet that will expand out my signature after I type the closing like so:


Text Expander would just expand the snippet to this:


Joe C

You might wonder why I use the beginning of the closing rather than a unique abbreviation? It’s because then, I don’t actually even have to remember to type the abbreviation. It just works for me as I’m typing. This realization has saved me countless hours of time.

Expand my email address

Like the snippet above, I create Text Expander snippets that use the name part of my email to expand my entire email address. So, if your email address is foo@somedomain.com create the foo@somedomain.com snippet and set the abbreviation to foo@

Search GMail

I often want to go back and search my GMail account by time but I never remember the syntax. I created these snippets to make things easier for me to remember.


This snippet returns everything in the last year.



This snippet returns everything in the last 30 days.





I use this snippet to show all of the unread messages in my inbox.

label:unread in:inbox


Use this snippet to find large attachments over a certain size. I chose 10 megabytes

has:attachment larger:10M

So there you have some of my tips for getting email under control with Text Expander. I’d love to hear how you use Text Expander to make your life easier.

Favorite Mac Tools Open Thread

Hi everyone, I’m interested in hearing what your favorite Mac applications are. You know, the ones that you use everyday and can’t live without.

I’m looking for some new cool applications to learn and write about so let me know in the comments.