工匠档案:Mitchell van Wijngaarden
发布时间 作者 Eric L. Barnes
本周我很高兴邀请到 Mitchell van Wijngaarden 来到工匠档案。Mitchell 是一位开发者、企业主,并且有一个很棒的口音。
你能告诉我们一些关于你自己的事情吗?你是如何开始从事网页开发的?
这其实是一个有趣的故事。我得感谢我的爸爸。他不是一名开发者,而是一位喜欢打网球的厨师。有一天晚上,他的一位名叫 Klaas 的网球朋友来我们家吃饭。在餐桌上,他向我描述了他的工作。他在荷兰一家大型网页代理公司担任首席设计师。他大约谈了一个小时,我被深深地吸引住了。以至于他离开后,我坐到电脑前开始摸索。现在,5 年过去了,我已经 20 岁了,仍然热爱着它。当然,当时一切都非常业余。我现在已经作为一名专业人士工作了大约 1.5 年。
你是如何首次发现 Laravel 的?是什么促使你开始使用它?
同样,这是一个有趣的故事。我乘坐电车去 Klaas 工作的那家大型网页代理公司(我在那里实习),当我注意到 Fabien Potencier (@fabpot) 关于 Laravel 4 子域路由的一条推特时。当时,我正在尝试不同的 PHP 网页框架。我立即查阅了它,并加入了 IRC 频道。这发生在 Laravel 4 的测试版阶段,大约是 2 年前。我立即被它简洁的 API 和友好的界面吸引住了。
你能告诉我们关于你的开发公司的信息吗?
我当然可以。我是一名来自乌得勒支的自由软件工程师,从事企业软件开发。我的公司名为 Kooding,发音为“coding”。我在 2014 年 1 月 1 日创立了我的公司,并且已经度过了非凡的一年。成为自由职业者是我做过的最好的决定。我喜欢与客户交谈,帮助他们发展业务。再详细说明一下我的工作流程;我把大型任务分解成更小的任务,以便保持清晰的视角。你可以将它们比作 Scrum 中的冲刺。在我看来,这非常重要,因为大型任务更难估计。如果你想聊聊,请访问我的网站 http://kooding.nl。
你的一天通常是什么样的?
我通常睡到早上 8:30 左右。最近几天,我开始在早上听 Freakonomics Radio。然后,我前往这个世界上最好的城市(乌得勒支)。我在我常去的咖啡馆喝一杯早咖啡,然后尽可能快地处理邮件,同时享受美味的卡布奇诺。我大部分时间都花在客户工作和维护的开源项目上。我和两位开发者兼好友 Shawn McCool 和 Nick Spelt 共用一个办公空间。这里总是充满活力。我们在白板上解决问题和集思广益,互相帮助。这是一个充满创意的团队,我们很多最有趣的想法都是在这四面墙内产生的。
你能告诉我们你的本地环境吗?
我的本地环境非常简单。对于我的所有项目,我使用由 Ansible 配置的 Vagrant 虚拟机,你可以在 这里 找到它。我的 IDE 是 PHPStorm。如果你还没有使用过,我强烈建议你尝试一下。我根本离不开它。它可以检测错误和死代码,重构你的代码,并自动完成。当然,它还可以做更多的事情,但这些是我最喜欢的三个功能。对于 HTTP 请求调试,我开始使用 Paw(仅限 OS X)。自然,对于服务器管理,我使用 Forge 搭配 Linode 服务器,并使用 Navicat 作为我的数据库管理工具。我最近开始使用的一个应用程序是 Slate。它是一个用于 OS X 的平铺窗口管理器,你可以在 这里 找到我的配置。最后但并非最不重要的一点是,我使用 Slack。
你非常热衷于行为驱动开发(BDD),你能告诉我们你为什么如此喜欢它吗?
你知道那些“啊哈!”的时刻吗?我在学习 BDD 时就体验过这种时刻。简而言之,BDD 就是做对了的 TDD。它是在 TDD 的基础上,以一种特定的思维方式进行测试;测试系统的意图,而不是测试某段特定的代码。行为才是最重要的。为了成功地做到行为正确,你必须了解业务,这非常有利。这样做会大幅提升你交付的质量。这正是让我感到兴奋的地方。我远不是专家,但我正在努力掌握它。
最后,如果你被困在荒岛上,你会带三样什么东西?
好问题。我想我会带一把刀,因为我需要保护自己,并用木头雕刻工具。我会带一块手表来保持清醒。我认为能够知道时间,这样我就可以把一天分成不同的活动,在荒岛上做一些事情。我认为这会让整个体验更加文明。最后,我会带一些食物,让我可以支撑几天。