The npm blog has been discontinued.
Updates from the npm team are now published on the GitHub Blog and the GitHub Changelog.
npm Convos: Lumie
Q: Hi! Can you state your name and what you do?
A: Hi! I am Alexandre Levacher, a software engineer living in the south of France, working at Teads, the inventor of native video advertising and the leading Outstream Video Marketplace.
How’s your day going?
Great! I just finished my job for today, focused on improving browser-side performance.
Among others, using the chrome dev tools to find the pieces of code we can improve, like caching assets and implementing lazy-loading.
And now, I’m taking a short break before going to the gym, then I’ll probably wrap the day up working on an exciting side-project.
What specific problem did you have that npm solved?
I’d say that npm made access to the JavaScript open-source ecosystem dead simple. There is always a package that solves all the specific obstacles you’ll encounter on the road of making your awesome project.
npm is similar to LEGOs, except that it’s free and you have access to +800k building blocks to build whatever you have in mind. And the best part is that every day, the pieces are updated and new ones keep coming. There are endless possibilities.
To people who are unsure what they could use npm for — how would you explain the use case?
As your modern JS project needs dependencies, you need npm. You’ll benefit from rock solid packages that will save you tons of time to invest in the real value of your project, and don’t reinvent the wheel. Just take advantage of npm by standing upon the shoulders of giants.
“If I have seen further than others, it is by standing upon the shoulders of giants.”
-Isaac Newton
How’s the day to day experience of using npm?
My day to day experience is great, resolving and downloading dependencies became blazing fast.
Moreover, it’s a treat to have the lockfile. The JS ecosystem moves on quickly — every day comes with dependencies updates that could eventually break your project. Thanks to the lockfile, it’s guaranteed that the dependencies on your local environment will be the same that your production dependencies, freshly downloaded.
Would you recommend that another person or organization use npm and why?
Of course, it’s a must-have. It could be interesting if you wish to check private repositories as well, in order to enjoy the power of npm in private.
You can’t go wrong using npm, and seeing the improvements of the last major versions couldn’t be a better indicator for the future.
I also encourage people to publish their own packages. We all develop “tools" in our codebase that could be turned into an npm package. If it helps you, it will help others. You’ll get feedback, improve your skills, and be proud to see your module used by other developers.
Any cool npm stuff you’ve done publicly that you’d like to promote?
Three years ago, when I started developing an Express.js API for a company, I thought about what could be the best architecture for controllers, in order to keep it organized as the codebase grows.
Influenced by Sails or Rails and by my researches, I created my own system. I did not want to overload my project using a complete framework like Sails, but rather pick lighter dependencies when needed.
I realized that if you don’t think about how the project will evolve, you can quickly have an unorganized codebase when using Express. Which is why I came to a solution that stays maintainable and improves productivity.
To make this new system work, I created Lumie, a light npm package that loads your controllers following my method.
If you want to know more about it or give me feedback, feel free to check my Github repository.