知名 PHP Web 开发框架 Laravel 之父 Taylor Otwell 发文描述了自己的日常工作状态:全职做 Laravel ,朝八晚五,使用 Sublime Text 3 写代码,终端使用 iTerm2 和 Oh My Zsh 。大致内容如下:

经常有人问我这样一些问题:如何管理时间、使用哪些工具、喜欢什么编辑器和配色方案?所以,在这篇文章中,我将尝试回答这些问题。

日常

我在自己的家庭办公室全职从事 Laravel 相关工作。通常,我上午 8:00 到办公室,第一件事是回答前一天晚上收到的所有 Forge、Envoyer 和 Spark 客户邮件。我在 iOS 上使用 Outlook,在 Mac 上使用 Apple Mail 。通常会有大约 15 封电子邮件需要回答。我喜欢清空我的收件箱,然后再继续做其他事情。我会定期刷新我的邮箱,以保持即时清空。

收件箱清空后,我会去查看 Laravel GitHub 存储库中的所有未完成的请求。我试图在整个 Laravel 组织中保持不超过 10-12 的 PR 数目。通常,我处理邮件和 PR 的工作会持续到上午 9 点,Mohamed 会帮我审查和分类 Github 的 issues 和 PR。

当我合并或者关闭了前一夜的所有新 PR 之后,我便准备开始一些自己想做的项目。通常,都是跟 Laravel 相关的。最近,我主要在为 Horizon 工作,这是一个新的 Laravel 包,我会在 Laracon US 会上详细讲解。(编者注:此文发布于今年5月)

下午5点我会结束工作,吃晚饭和陪伴家人。晚上 9:30 左右,我通常会重新刷新我的邮箱,以清除下午5点后发过来的邮件。这通常只需要10-15分钟,以帮助我减少早上的邮件负担。

开发环境/办公室

我的主要开发机器是一台 4Ghz 处理器、16GB 内存的 5K iMac。 我在 iMac 的每边都外置了一台 24” 4K 显示器,我将它们的背景设置为深灰色,使得它们在我不使用时看起来似乎是关闭着的。这将保持所有的像素显示都很显眼。

我有一把 Steelcase Leap 的椅子,一个 Swell 保温杯,和一个 Fidget Cube。办公室的屋顶有一个飞利浦 Hue 照明。

开发工具

编辑器

我主要使用的文本编辑器是 Sublime Text 3 。主要使用 Soda 主题和 Inspired GitHub 配色方案。使用 Operator Mono 作为主编码字体。使用 SublimeLinter 在 Sublime 中检查 PHP 语法。

我的整个 Sublime Text 参数文件如下:

{
    "added_words":
    [
        "Laravel"
    ],
    "caret_style": "phase",
    "color_scheme": "Packages/User/SublimeLinter/One Dark (SL).tmTheme",
    "ensure_newline_at_eof_on_save": true,
    "findreplace_small": true,
    "font_face": "OperatorMono-Book",
    "font_size": 15,
    "highlight_line": false,
    "hot_exit": false,
    "ignored_packages":
    [
        "SublimeLinter-jshint",
        "Vintage"
    ],
    "line_numbers": true,
    "line_padding_bottom": 9,
    "line_padding_top": 9,
    "phpunit-sublime-terminal": "iTerm",
    "remember_open_files": false,
    "show_definitions": false,
    "show_panel_on_build": false,
    "tab_size": 4,
    "tabs_small": false,
    "theme": "Soda Dark.sublime-theme",
    "translate_tabs_to_spaces": true,
    "trim_trailing_white_space_on_save": true,
    "word_wrap": false
}

在开发时,我通常会将实际的 Sublime 字体大小保持在 10 左右。

终端

我使用 iTerm2 和 Oh My Zsh ,和内置的 “robbyrussell” 提示符风格。使用 Arthur 配色方案,并在 iTerm2 中增加行间距,使行与行之间有呼吸空间。和 Sublime 一样,我使用 Operator Mono 作为终端字体。

数据库

我使用 Sequel Pro 与任何需要处理的MySQL数据库进行交互。令人惊讶的是,它还是免费的。我很乐意为此付出数百美元。我使用 Medis 与 Redis 交互。

SaaS 服务

我使用多个不同的服务,来运行 Forge 和 Envoyer:

生产力

我主要使用 BearWunderlist 和 Trello 保持事务的组织化。我在 Bear 中有非常多的笔记,把它作为 Apple Notes 的替代品。使用 Wunderlist 作为个人清单和所有边缘项目的任务清单。使用 Trello 跟踪 Laravel 相关的任务,例如即将到来的功能,或需要编写文档的重大变化。

我还创建了一个小的 Laravel 应用,向我发送 Telegram 提醒,例如:倒垃圾、更换房屋空气过滤器、每月报税,等等。这个应用使用 Laravel 的调度功能,利用 Guzzle 通过 Telegram 的 API 发送消息。

音乐

我整天都使用 Spotify 听歌。我最喜欢的播放列表有:Night RiderLush + Atmospheric 和 RetroWave / Outrun 。

>>>【评论有礼】7月10日-31日在下方评论资讯,即有机会获得 9 活跃积分和开源中国实物周边。活动详情

相关链接

https://www.oschina.net/news/86775/how-taylor-otwell-work

aravel 之父 Taylor Otwell :我是如何工作的的更多相关文章

  1. qt新进程工作目录的设置(工作目录确实是被子进程继承的,但也可以设置)

    经过试验,qt启动一个新的进程时,这个进程的工作目录是继承父进程的,无论是通过start还是startDetached来启动. 其实对于linux系统,qt底层应该也是调用fork.exec之类的函数 ...

  2. vue子组件如何向父组件传值

    子组件: <template> <div class="app"> <input @click="sendMsg" type=&q ...

  3. 使用-MM生成include指令和依赖生成(make include directive and dependency generation with -MM)

    I want a build rule to be triggered by an include directive if the target of the include is out of d ...

  4. git workflow常用命令

    git init git status git add readme.txt git add --all         Adds all new or modified files git comm ...

  5. 利用 Composer 一步一步构建自己的 PHP 框架(四)——使用 ORM

    本教程示例代码见 https://github.com/johnlui/My-First-Framework-based-on-Composer 回顾 经过前三篇文章 基础准备 . 构建路由 和 设计 ...

  6. 关于《Swift开发指南》背后的那些事

    时间轴(倒叙)2014年8月底在图灵出版社的大力支持下,全球第一本全面.系统.科学的,包含本人多年经验的呕心沥血之作<Swift开发指南>(配有同步视频课程和同步练习)全线重磅推出2014 ...

  7. 为什么Laravel是最成功的PHP框架?

    Laravel 是一个有着美好前景的年轻框架,它的社区充满着活力,相关的文档和教程完整而清晰,并为快速.安全地开发现代应用程序提供了必要的功能.在近几年对PHP 框架流行度的统计中,Laravel始终 ...

  8. [转]laravel 4之视图及Responses

    http://dingjiannan.com/2013/laravel-responses/   laravel 4之视图及Responses 16 Aug 2013 Laravel的Response ...

  9. PHP多进程学习(一)__来初步了解一下PHP多进程及简单demo

    php是一门单进程弱类型的语言,PHP处理多并发主要是依赖服务器或PHP-FPM的多进程及它们进程的复用,多进程的作用优点大家可以去网上了解,PHP实现多进程在实际项目中意义也是不容小觑的.比如:日常 ...

随机推荐

  1. 11G、12C安装结束需要做的一些操作

    修改spfile参数:修改前,先备份 create pfile from spfile; alter system set memory_target=0 scope=spfile;alter sys ...

  2. mysql去除字段内容的空格和换行回车

    MySQL 去除字段中的换行和回车符 解决方法:          UPDATE tablename SET field = REPLACE(REPLACE(field, CHAR(10), ''), ...

  3. [Javascript] Case insensitive sorting for string arrays

    We look at the default Array.prototype.sort behavior and discuss how you can do case insensitive str ...

  4. ChangeWindowMessageFilterEx 概述(用于取消低权限程序向高权限程序发送消息不成功的限制,分6个等级)

    ChangeWindowMessageFilterEx 函数,为指定窗口修改用户界面特权隔离 (UIPI) 消息过滤器. 函数原型: BOOL WINAPI ChangeWindowMessageFi ...

  5. VBA Code for Word Navigation Pane 【failed】 view-showheading-method-word

    https://msdn.microsoft.com/VBA/Word-VBA/articles/view-showheading-method-word View.ShowHeading Metho ...

  6. js字符串转换为数字的三种方法。(转换函数)(强制类型转换)(利用js变量弱类型转换)

    js字符串转换为数字的三种方法.(转换函数)(强制类型转换)(利用js变量弱类型转换) 一.总结 js字符串转换为数字的三种方法(parseInt("1234blue"))(Num ...

  7. Methods and systems to control virtual machines

    Methods and systems are provided to control the execution of a virtual machine (VM). A VM Monitor (V ...

  8. 【t051】图书管理

    Time Limit: 1 second Memory Limit: 128 MB [问题描述] 图书管理是一件十分繁杂的工作,在一个图书馆中每天都会有许多新书加入.为了更方便的管理图书(以便于帮助想 ...

  9. Windows下的bat中文乱码问题

    起初拿到一个bat文件,我在修改时看到编码是gb2312,我就直接将其转变为了utf8...但是在执行后的黑窗口出现中文乱码问题,最后网上获取帮助是修改编码为ANSI编码,确实不出现乱码了,ANSI是 ...

  10. 【codeforces 777A】Shell Game

    [题目链接]:http://codeforces.com/contest/777/problem/A [题意] 奇数次操作交换1,2位置的东西; 偶数此操作交换2,3位置的东西 给你操作的次数,和最后 ...