Do I just not get the scale? For this investment to make sense, they would have to get to $100s of million dollars, but by charging a few thousand companies $7?
And I'd say there's a 50/50 chance node will completely collapse within 10 years or so. And that's being generous, javascript is a controversial language and the standards committee moves very slowly. I honestly can't see it staying king once browsers can support other languages. You only have to see how fast Ruby was a darling and even now might be regarded on its swan song, less than 10 years later. Tech changes, the next big language will hit soon.
Congratulations to them and all that, and great product, I'm just wondering if someone can explain the sense in investing so much money into something like this? As this seems an incredibly risky venture?
In TIOBE index of programming language popularity (based on web searches), Ruby is ranked 18th, down from 11th in April 2014. It fluctuates, but the trend is downward - 14th in November 2014, 13th in November 2013 and 11th in January 2013. Javascript is still rising.
In TIOBE index of programming language popularity (based on web searches), Ruby is ranked 18th, down from 11th
The TIOBE method is rather meaningless below rank 10 (and probably above, too). The delta between spot 10 and spot 20 in their ladder is a mere 1.1 points (of 100).
Do you really believe Delphi and ABAP are more popular than Ruby, as their table claims?
It is supported by overall job trends
Huh? In both of your linked charts Ruby is trending upwards.
Actually, it wouldn't surprise me if ABAP were to rival Ruby in popularity (by employment metrics) considering how widely adopted SAP is within the fortune 500.
I don't disagree with the rest of your points, just pointing out that the enterprise world is much larger than most developers would anticipate.
Well, what else have we got? I'm not a big fan of TIOBE, but SO's recent surveys have also confirmed dropping Ruby popularity. I did say 'might be'. I'm being a bit cagey because it's hard to tell, we all live in cliques.
So to me it's all a bit risky, a bit of a punt, and so I'm asking, what am I not seeing, where's the market they're betting on?
>I honestly can't see it staying king once browsers can support other languages.
But your profile says:
>", begrudgingly beginning to accept the browsers are never going to give us the freedom to choose."
It looks like you've got some cognitive dissonance happening there. :-)
In any case, I can't think of any example in computing history where a language that's adopted by multiple companies is then abandoned for another language. In Javascript's case, it would require that Microsoft IE AND Apple Safari AND Google Chrome AND Mozilla FF AND countless other web browsers (Opera, embedded, etc) switch to something else in lockstep. In the decades of computing history, I've never seen that type coordination ever happen.
Similar language entrenchment on the scale of Javascript would be something like SQL and C++.
SQL (1974) is implemented by Oracle/Microsoft/MySql/PostgreSQL/HiveHadoop/etc. A better query language could be designed (e.g. syntax of tables first then columns). However, it's just theoretical because you can't get all database vendors to adopt it lockstep. We are stuck with SQL for the next 50 years.
C++ (1983) entrenchment also can't be dislodged. It is implemented by the well-known big-3 of GCC, Clang, and Microsoft but you also have independent compiler implementations from Intel, HP, Sun, IBM, embedded chips, etc. The newer systems languages such as D and Rust are interesting but they will not get adopted and implemented by all those vendors. It's just not going to happen.
Look to the multi-decade history of SQL and C++/C and that's the depth of entrenchment you're looking at for Javascript. Better designed languages have not overcome the inertia in the industry and we have no evidence so far that it ever will. Therefore, Javascript will be with us for the next 50+ years.
Probably the best chance for making Javascript irrelevant was the brief plugins movement of Java applets, Adobe Flash, and MS Silverlight. Well, the marketplace of ideas (mobile phones) killed all of those off. What's left standing is Javascript.
Even if Javascript did become an assembly like language with multiple well used languages compiling to it, wouldn't something like npm still make a lot of sense? Then all these separate languages won't need to reinvent package management and every package every time.
It doesn't matter if Npm is ever profitable. If an investor puts money into Npm, they are indirectly adding value to every company that uses Npm. Making sure that a comprehensive dependency manager exists for JavaScript helps every company that uses JavaScript.
Additionally, neither JavaScript or Ruby is nearing their "swan song". Other languages will come out. The current languages will persist.
If they invest in 10 companies built on Node and therefore NPM they are investing in 11 companies by investing in NPM. They are purchasing security of their open source tools.
Internet Explorer does not include any native scripting
functionality. Rather, MSHTML.dll exposes an API that
permit a programmer to develop a scripting environment
to be plugged-in and to access the DOM tree. Internet
Explorer 8 includes the bindings for the Active
Scripting engine, which is a part of Microsoft Windows
and allows any language implemented as an Active
Scripting module to be used for client-side scripting.
By default, only the JScript and VBScript modules are
provided; third party implementations like
ScreamingMonkey (for ECMAScript 4 support) can also be
used. Microsoft also makes available the Microsoft
Silverlight runtime (not supported in Windows RT) that
allows CLI languages, including DLR-based dynamic
languages like IronPython and IronRuby, to be used for
client-side scripting.
Gecko too for a while (because there was concern that VBScript would catch on, AFAIK), though it was eventually removed. The nsIProgrammingLanguage enum is the last vestige of this support: https://dxr.mozilla.org/mozilla-central/source/xpcom/base/ns...
Github was founded 7 years ago and now does "millions of dollars a year" [1], NPM was founded 6 years ago (and only became a company last year).
There are 140,362 total packages (where github was in 2010-2011) on NPM and 21 million repositories on Github now. Javascript is growing, NPM is the hub for all things javascript, so as long as things keep going the way they are, I don't think it is a stretch that NPM can be making that Github money.
A huge % of individual programmers want private source control as a quick and easy backup of their code. It is also completely language agnostic and will only fall into jeopardy if a new, better source control system comes out (and then they subsequently don't support it).
In addition to every other response, one interesting thing about your comment is that first you mention "node" , then javascript/browser, etc. which is the exact history of npm.
It started for node.js then someone did browserify which IMHO makes the best package manager for front end developers, there is some people using it even for C. Typescript/coffescript/css whatever. If you see the home page of npm it says "npm is the package manager for:" and the word keeps changing with a lot of use cases.
I think JavaScript has a bright future still, but in addition to that can npm or the ideas survive the language and be used in other contexts?
What's so controversial about Javascript? I'm not denying your claims; I just started using it a bit and so far really like it. Then again, I'm coming from Java so maybe I just appreciate not having to use OOP and being able to use functions everywhere.
And isn't Ruby also controversial? At least it seems like people either really like it or don't like it. Everyone I have talked to seems to agree that the only reason Ruby really took off is due to Rails.
Being controversial is not a big deal if it is optional. You simply can not do modern web development without JavaScript. There are tons of alternatives to Ruby.
Assumes they are only ever going to launch this one product. Also it's $7 for an individual account, they're launching corporate accounts which I would assume will be priced accordingly. There's enough pain points around the Node.JS infrastructure / tooling that NPM, Inc. probably has some great verticals to explore, and they probably sold the investors on as much.
As for Node.JS dying, anything is possible I guess. PHP is still a monster and I don't think I'll ever understand why that happened completely. Node.js has a good story to tell and from my exp. a lot of PHP / frontend developers found easier transitions to Node.JS than other languages / stacks.
> "50/50 chance node will completely collapse within 10 years or so"
Wow, way to be real assertive with that statement. Hedging your bets for a prediction that won't really matter in 10 years.
I am not sure why you think ruby is dead considering the amount of Rails apps and the ecosystem that surrounds it.
If you read about their seed round, one reason investors invested is because a lot of other companies rely on npm/node. So their thinking process is that even if npm is not profitable, it at least makes their other investments more robust by making something that other companies rely on much stronger.
And that's being generous, javascript is a controversial language and the standards committee moves very slowly.
There are two types of languages: those that everybody complains about, and those that nobody uses.
Also, a slow standards committee is a good thing for languages, as it prevents the natural cancerous tendencies of PL wonks--just look at C++ or Scala.
> I honestly can't see it staying king once browsers can support other languages.
Well browser support for other languages will only come in the form of things transpiling to JS or subsets of JS. It seems unlikely that whole other runtimes would ever become a thing. I mean look at Dart.
In my company we had been using Git links in our package.json files to point to private dependencies hosted on our local GitLab instance. Recently, we setup an npm-compatible private repository that allows us to publish private packages as well as cache public ones.
It's been awesome to finally get back to using semver to manage all our dependencies. Our build server automatically publishes to our private repo on a successful build.
I think that a lot of companies will find this service extremely helpful and a lot cheaper than having an employee spend the time to try to set up a private repository locally.
I had set up a private repo at a previous company around the time NPM was experiencing a lot of outages, and also to handle our private modules. It worked well when it worked well, but it did definitely require babysitting once a month or so. Totally the kind of thing you want to NOT just have one developer understand.
What "npm-compatible" package did you end up going with? Assume you're not doing the couchdb mirror, which I really don't want to do again either, so I'm curious if this is a low-dependency sort of thing.
Did you manage to handle versioning through Git, or is that why you set up a repo? The lack of versioning is the only thing holding the git-based solution back for me.
What's the issue with version tags? I've been cutting release branches so that I can reference github urls at a branch with a version number. Understand that it's totally not the same thing, and it's working out for right now, but feel like I'm missing the 700 lb gorilla in the room now :)
Semver. Everything you upgrade a dependency you have to update the package.json in every other modules that uses it. With semver you can just say "^2.0.0" and always the get latest 2.x release.
npm is a pretty important piece of node itself; I'm actually surprised Joyent hasn't picked them up (maybe they're tried?). Maybe this funding will help it iterate a little faster.
By all means not an official statement, but Isaac is quite committed to making sure that the long-term safety of the npm registry doesn't rely on the future benevolence of npm Inc.
It's possible (and probably from the investors expected) that npm Inc grows large enough that a Solaris-based hosting company wouldn't be large enough to purchase them.
If npm isn't ever going to sell out how are their VCs planning on making any return on investment? Go public? (Which is arguably selling to the public)
We are not and have not been the stewards of node.js to convert node.js developers into paying Joyent customers; rather, we became the stewards because we employed Ryan Dahl at the time (summer 2010), we were (and are) avid and early users of node.js ourselves, and we saw that node.js needed corporate stewardship. The node.js community has come a long way since then, of course, and earlier this year we announced our intention of moving node.js into a foundation -- which is now well underway.
In terms of how node.js fits into our business, we have always been upfront that we have never monetized node.js directly: to the extent we have monetized it, it has been by offering complementary products like an IaaS platform that was designed to run node.js in production[1] and via support and services[2].
Actually, there's a lot of movement to move the stewardship of node.js away from Joyent and into a foundation. Not being the stewards going forward, it may make less sense for them to acquire npm, especially as it's not clear how much revenue they'll be able to generate.
Lol. You missed a really interesting real-life soap opera series about io.js/Node/npm/core developers. I believe at one point isaacs wanted to do npm stuff inside Joyent but management was an issue.
Setup a local npm cache. There's lots of instructions online on how to setup nginx to act as a proxy to fetch npm modules and cache them locally. This way, you don't have to worry if npmjs.com goes down, your build process will pull everything from your local cache.
It wins? Does it? Because I don't see how you become a company worth nine digits of VC by selling private JavaScript package repositories to twenty thousand people. We're talking about a difference not only in degree but in kind to Github.
And I'd say there's a 50/50 chance node will completely collapse within 10 years or so. And that's being generous, javascript is a controversial language and the standards committee moves very slowly. I honestly can't see it staying king once browsers can support other languages. You only have to see how fast Ruby was a darling and even now might be regarded on its swan song, less than 10 years later. Tech changes, the next big language will hit soon.
Congratulations to them and all that, and great product, I'm just wondering if someone can explain the sense in investing so much money into something like this? As this seems an incredibly risky venture?