4 ms·
I worked on Perl 5 projects professionally for about 15 years, then switched to a new job that uses Node.js. I enjoyed coding in Perl 5, but it was hard to find
by markstos 10y ago
I worked on Perl 5 projects professionally for about 15 years, then switched to a new job that uses Node.js. I enjoyed coding in Perl 5, but it was hard to find and retain Perl 5 developers. Our later hires preferred to code in C#, Python and Ruby-- This was before Node.js took off. Looking at language trajectories on http://modulecounts.com/ http://modulecounts.com/ The momentum that JavaScript has compared to Perl is amazing-- CPAN growth is relatively flat, JavaScript growth is skyrocketing. JavaScript has it's own warts, but for web projects with smaller teams, having the frontend and backend in the same language is big benefit. As much as I enjoyed the Perl language and community, I can't foresee recommending it for team web projects in the near future.
- melezhik 10y ago> having the frontend and backend in the same language is big benefit Hi! Why so?
- CodeWriter23 10y agoHow much do you attribute the growth disparity to CPAN literally already having solved most problems vs. the Node community naturally having gaps because they haven't been around as long?
- latenightcoding 10y agoThings to consider: Perl developers would never bother to upload something as trivial as left-pad to CPAN (someone did it to mock node developers but that is a different story) and the code quality of modules in CPAN is usually higher.
- epoch1970 10y agoWe should be careful when comparing the growth or package counts of CPAN and npm. While conceptually similar, they're still very different from one another. A lot of the npm growth is just the JavaScript ecosystem catching up to where CPAN was ages ago. Then there are the npm packages that add functionality that's typically included by default with Perl, so there would never really be a need for equivalent CPAN modules. I think there is much less duplication within CPAN, while it's not unusual to find several similar npm packages that more or less do the same thing. CPAN modules also tend to be larger and include more functionality, while it's not unusual for npm packages to include just a single function, or otherwise limited functionality. Sometimes several npm packages are needed to approximate the functionality of individual CPAN modules. That module count graph should perhaps even be treated as worrying. Npm is clearly an outlier compared to every other package management system listed. There's not much suggesting it's inherently better than all of the other systems, either. So it's likely more negative factors, such as an excessive need for functionality, and many duplicate packages, and unreasonably small packages, and so on causing such inflated numbers.
- gkya 10y agoFurthermore, AFAIK NPM is more than a module manager for Node.js, IIRC many use it for CSS and other languages.
- mst 10y agoPlus there's the fashion of uploading one npm dist per function, as well as a bundled dist, for projects not using tree shaking to keep their browser bundle small. OTOH while I'm mostly a perl hacker, there's a metric fucktonne of duplication on CPAN too, so I'm not sure that comment necessarily applies (there may be more duplication on npm, but I don't have data for that).