Skip to content

Instantly share code, notes, and snippets.

@taylorotwell
Created March 9, 2017 18:41
Show Gist options
  • Save taylorotwell/2b552a0f18fdf344aa4fb6e3179d04ee to your computer and use it in GitHub Desktop.
Save taylorotwell/2b552a0f18fdf344aa4fb6e3179d04ee to your computer and use it in GitHub Desktop.

How I Work

I get asked frequently about various aspects of my day. How I structure my time. What tools I use. What editor and color scheme I prefer. So, in this post I’ll try to answer these questions.

The Average Day

I work on Laravel full-time from my own home office. Typically, I am in the office by 8:00am and the first thing I do is answer all of the Forge, Envoyer, and Spark customer support emails that came in during the night. I use Apple Mail on Mac and Outlook on iOS. Typically there are about 15 emails to answer. I like to clear my inbox before moving on to anything else. I revisit my email periodically throughout the day to keep it clear.

Once my inbox is clear, I look at all outstanding pull requests across all of the Laravel GitHub repositories. I try to keep the outstanding pull request count at no more than 10–12 across the entire Laravel organization. Typically I have my email cleared and pull requests worked by about 9:00am.

Once I have merged or closed the new pull requests that have come in overnight, I’m ready to work on whatever project I want. Typically, this is Laravel related. Lately I have primarily been working on Horizon, a new Laravel package I hope to talk more about at Laracon US.

I stop working at 5pm to have dinner and hang out with my family. Around 9:30pm, I will typically revisit my email to clear out any emails that came in after 5pm. This usually only takes 10–15 minutes and helps me reduce the email load in the morning.

Development Machine

My primary development machine is a 5k iMac with a 4Ghz processor and 16GB of RAM. I have an additional 24" 4k monitor on each side of the iMac. I keep both of the additional monitors set to a very dark grey background so that they basically appear to be turned off when I am not using them. This keep all of the pixels from becoming overwhelming.

Development Tools

Editor

My primary text editor is Sublime Text 3. I primarily use the Soda theme and the Inspired GitHub color scheme. I use Operator Mono as my primary coding font.

My entire Sublime Text preferences file looks like this:

https://gist.github.com/bc5ac85165a94e28ec2a345f2a498e4d

Terminal

I use iTerm2 and Oh My Zsh. I use the Arthur color scheme and typically crank the vertical spacing up on iTerm2 so that the lines have some room to breathe. Like Sublime, I use Operator Mono as my terminal font.

Databases

I use Sequel Pro to interact with any MySQL database I need to work with. Amazingly, it is free. I would gladly pay hundreds of dollars for it. I use Medis to interact with Redis.

SaaS Services

To run Forge and Envoyer, I use a variety of services:

Productivity

I primarily use Bear, Wunderlist, and Trello to stay organized. I keep long form notes in Bear, which I use as a replacement for Apple Notes. I use Wunderlist for personal checklists and checklists for all side-projects. I use Trello to keep track of Laravel related things, such as upcoming features or breaking changes I need to document.

I also built a small Laravel application that sends me reminders on Telegram about things like taking out the trash, changing the house air filters, paying monthly taxes, and more. This application uses Laravel's command scheduling capabilities and Guzzle to send messages through the Telegram API.

Music

I use Spotify to listen to music throughout the day. Some of my favorite playlists are Night Rider, Lush + Atmospheric, and RetroWave / Outrun.

@vinayakkulkarni
Copy link

Thanks a ton for sharing.. this helped a lot :)

@imajinyun
Copy link

Thank you for sharing !

@huiyonghkw
Copy link

likes +

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment