Ben Coe is joining Google
My introduction to JavaScript and web-programming
I was fortunate, in that I came of age as a programmer around the time the Internet began its exponential growth, and ? despite its small-town charm ?
Fergus, Ontario
’s High School had forward looking computer classes.
Through the introduction at school, I fell in love with programming. I began saving up to purchase discount textbooks at RadioShack. Two such books were
JavaScript For Dummies a Quick Reference
and
HTML 4 Unleashed
.
For a beginner programmer, it was awesome to learn that a web-browser could be your entire development environment. There was already, in the late 90s, very exciting things happening in CSS, HTML, and JavaScript.
I went to University, and the curriculum concentrated on Java, C, and algorithms, touching only a small amount on Internet-technologies. This was also the height of the browser-wars, poor compatibility between browsers made writing JavaScript frustrating.
I put down web-technologies for a few years…
Reintroduction to JavaScript
After graduation, I had the good fortune of getting a job at
FreshBooks
in Toronto. At that time (2009) FreshBooks was a 35-person startup; the environment was fast moving and exciting… I found myself getting a crash course in the current state of JavaScript and web-development.
I had two great mentors,
Ben Vinegar
(who wrote
the book on third-party JavaScript
) and
Mark Story
(who provided a great open-source role model, through his work on
CakePHP
). I was shown that JavaScript
could
be used to create rich, interactive, frontend experiences ? if one was careful to use a subset of the language, and test across a variety of browsers.
I found myself with a renewed excitement for the JavaScript language:
- it was the first time I’d become proficient in a language with first-class functions, and found the paradigm very powerful.
- I found the event-driven approach to JavaScript in the web-browser, while initially hard to wrap my head around, really fun.
While at
jQuery Conference 2010
with Mark Story, I mentioned how much I was loving writing JavaScript, and how I wished I could use it for backend development as well. Mark said something along the lines of, “You’re in luck Ben! there’s this new project called Node.js, that lets you do just that”.
Installing Node.js immediately, I was stoked! (as we say here in California).
Joining npm, Inc
During the years 2010?2014, I built the startup
Attachments.me
(which leveraged some of the front-end JavaScript skills I’d picked up at FreshBooks) with fellow Canadian
Jesse Miller
.
When possible at work, and at home, I continued to become more involved in the Node.js and npm community: I published some of
my first modules
; and gradually learned more about contributing to other projects on GitHub.
Shortly after Attachments.me was acquired by Yesware, I read news that
npm, Inc had raised a seed round
. I saw this as a huge personal opportunity:
- I’d been using Node.js for several years now, was passionate about it, and knew I could bring this passion to npm, Inc.
- I was really enjoying learning to contribute to open-source, and it felt like an amazing opportunity to work for a company central to the JavaScript open-source community.
- Having just experienced running my own startup Attachments.me, I thought I could bring valuable experience to the early stages of npm, Inc.
With high hopes, I put my resume in to npm, Inc … a month later I found myself their third employee, hired to help operationalize the npm registry.
I was ecstatic.
In my five years at npm, Inc, I achieved everything I was hoping to:
- I lead development on, or product-managed, several of
npm’s paid product lines
?helping the company grow from 5 to 60 employees.
- I became much more involved in open-source: writing
nyc
, to add test coverage to the npm CLI; adopting the
yargs
project, while writing operational tooling; and writing the
standard-version tool
/
conventional-commits spec
to help better manage npm Enterprise releases.
- I grew to care even more
about Node.js, JavaScript, and the communities surrounding these technologies.
Why I’m joining Google
The open-source work I’m most proud of at npm, Inc grew out of real-world needs ? Google uses nyc, yargs, and other JavaScript projects that I helped create, and I’m excited to continue moving these projects forward, within the constraints of helping to deliver delightful products to Google’s massive user-base.
I’m also excited to continue getting more involved with Node.js, and committees like
TC39
; helping to shape the future of the language that put me on the path to such a creative and rewarding career. I feel that the resources of Google, and their existing involvement in these committees, will help me with this goal.
I will be taking on the role of
Developer Programs Engineer
, on
Justin Beckwith’s
team for Google Cloud, and couldn’t be more excited.
? Ben (
github.com/bcoe
,
twitter.com/BenjaminCoe
).