I am James Kyle. Ask me anything.

James Kyle is a popular open source developer. He is one of the core team member of TC39, Flow, Jest, Lerna, Yarn, Marionette, and Babel.

He worked as an engineer at Facebook and Cloudflare and is currently handling open source at Thinkmill.

You can find him sharing knowledge at many popular conferences and on his blog. He has a pretty cool collection of stickers, grab them if you like.

Ask James Kyle about:

  • Flow type checker
  • Working with Yarn
  • Babel.js
  • Building durable JavaScript apps
  • Public speaking
  • Contributing to OSS

Alright, I guess it's all over now. Thanks for your questions everyone

Ask a Question

65 discussions

Hi James, Thanks for the AMA.

I have a little weird question. Something which has been bugging me for a long time. I see many popular and capable developers join big companies like Facebook and Microsoft. Most of you then leave these companies in 1-2 years. What's the most common reason for this? What was your reason? I personally wouldn't leave companies like these (beautiful offices, great minds and big projects).

I’m not sure I really agree with that assessment anymore than the fact that developers tend to move between jobs more quickly than other professions. I know plenty of open source developers who have worked at the same place for 5-10 years and have no plans to leave.

There’s probably a lot of reverse survivor bias (surely someone will label it better than me) involved in what you’re noticing. The people that leave are the people you hear about.

I left Facebook because I hated it there. Other people love it there. We’re different and we want different things. Nothing weird about it.

I didn’t really like Facebook when I was joining either. I joined because I thought I needed to go to a big company to do open source at the scale I wanted to do it at in a sustainable way. Turns out it really doesn’t matter how big your company is, it’s really not that expensive for a business to invest in open source.

Also, "beautiful offices, great minds and big projects" aren't really good reasons to work for a company in my opinion. Some of my favorite jobs were at companies with shitty offices, they didn't have any "super geniuses", and their projects in of themselves weren't all that exciting. But I still learned a lot at them, I grew as a developer, I made great friends, and I enjoyed my time there.

I already said this in my response to another question: I don’t want to hire and work with the “smartest people”, I want to work with a group of people that gives each other confidence taking on bigger and bigger challenges.

I didn’t get that at Facebook and so I didn’t enjoy it.

Reply to this…

Hashnode is a friendly and inclusive dev community.
Come jump on the bandwagon!

  • 💬 Ask programming questions without being judged

  • 🧠 Stay in the loop and grow your knowledge

  • 🍕 More than 500K developers share programming wisdom here

  • ❤️ Support the growing dev community!

Create my profile

I use Yarn in most of my projects and at work. What is one thing that you feel still sets yarn apart from npm 5?

(which tbh has taken some inspiration from yarn)

  1. Yarn still performs better than npm in most scenarios.
  2. npm 5 has a lot of bugs at the moment, which I encourage people to go get involved and contribute fixes back to them.
  3. Adding dependencies in npm is still non-deterministic. The lock file is designed to keep things in consistent places once they are there, but they are not placed deterministically to start off with.
  4. Yarn is the better place to experiment with new features like workspaces.

There’s plenty of people who will get angry at me for saying the above things. Do I want Yarn to continue to exist? Yes, of course. I would want it to exist even if I was using npm, for the same reason I want Firefox to continue to exist even though I mostly use Chrome. Same for npm.

There’s a whole bunch of idiots who for some reason want Yarn to cease to exist because npm has addressed a number of the original concerns. That’s such a stupid thing to think I really have no other comment other than to call them idiots.

Reply to this…

James, I follow you on Twitter and appreciate your raw honesty in how you approach many subjects. I noticed a while ago you were Tweeting things about Australia, saying how you hated it. It seemed as though you had some horrible encounters. Can you elaborate on your experience thus far working in a different country, the good and the bad?

Show all replies

Thanks for the honest response. Sadly, your assessment of Australia being somewhat homophobic is true. Evident by the fact we are currently running a non binding vote on same sex marriage. We're quite a backwards country in many aspects, especially social issues.

Reply to this…

Hi! The JavaScript language is evolving a lot in term of additions and syntax helpers (async/await, template strings, ..).

What's the "big plan" if there's one that is driving all theses changes?

Where do YOU want the JavaScript language to be in the future?

What kind of features you really miss from it?

Show all replies

Don't worry about using const right. It's not that big of a deal

Reply to this…

What stopped you from contributing to Babel.js?

Read this: http://thejameskyle.com/dear-javascript.html

I still jump in every now and then, but I really don’t have the same energy for it as I used to.

Reply to this…

Load more responses