JavaScript, Python, PHP, and HTML are developer tools? (yes, they're listed in four of the top ten spaces of Application & Data Tool of the Year) Isn't that like saying the #1 business tool is "The English Language"? I guess I expected a list of things people use like this one (which is phenomenal):
"Scott Hanselman's 2014 Ultimate Developer and Power Users Tool List for Windows"
JavaScript has consistently beaten out any other language as the client-side language of choice in both my personal and professional projects. Clearly, it deserves the top spot.
I believe the grandparent is attempting to make a distinction between a tool and (for lack of a better term) a material. With the idea being you use tools to shape your materials to create your end product. You carry the tools with you from project to project but the materials stay in place.
To use the normal house-building analogy, I would say that the Tools are obviously saws, drills, etc. Things that you use on every house you build but that are not part of the house itself. These represent notepad, visual studio, git, etc.
The Materials are wood, nails, etc. Things that make up the house and are not removed when the builder leaves. These represent the actual code (ie, lines/libraries of javascript) you build with your tools.
e: So it's like saying the #1 carpenter's tool is wood.
I don't think that is a good analogy. The end product (app/house) is what the code actually does. What you use to make that product is a tool, including what language you use.
All those things do help, but a carpenter can do the same job with an axe, a saw, a chisel, a knife, or a froe but in the end what they are doing is cutting wood. If you're a programmer and you don't look at languages as a tool you are doing yourself a disservice. In the end you just need something to turn some data into a different kind of data, everything else is a tool to do that one thing.
I disagree. It makes more sense to me to consider the language the material or medium (that is shaped by a tool) rather than a tool itself.
To examine another simple example, consider a potter who crafts a vase from clay. The potter's wheel and his hands are the tools he uses to form the clay medium. I do not consider the clay itself to be a tool.
I think that the analogy fits. Javascript is more accurately represented by the clay than by the wheel. If your final product is "function foo(bar){...};" you are forming that function from javascript using a text editor. The same way a vase is formaed from clay using a wheel.
Also worth noting, the same way that vase can become a tool used by some other craftsman on some other project, that javascript could be packaged in a way that lets you take it with you to other projects. But just like the original clay is not a tool, the javascript isn't a tool. But the package you make with it might be.
Sure, but that's ultimately irrelevant. The survey should be demonstrating choices made by developers, but (web) developers don't have much of a choice when it comes to using JS. Unless you want static HTML, JS is in your stack. In that sense, including JS is rather moot, unless it's exclusively about NodeJS.
I'm not missing the point of your satire, but I'd love it if more people considered language arts a powerful tool worth mastering to an advanced degree.
I think the GP meant language arts as in writing, speaking and communicating in human languages, not programming languages. Not sure why you would need an advanced degree in that, though.
Well, even that seems the wrong name. Is it worth writing an article saying php, angular, react, and _JavaScript_ are popular in web development in 2016? I guess it's worth knowing that they still are?
Since we aggregated data across all users, our "web" tools definitely shone through (as you might imagine, there are more web devs than native on stackshare), but given that we included all tools we felt it was more accurate as a description of the methodology.
Do you think it would be valuable for us to segment these rankings further next time? Create a couple different rankings?
Sure. It's not so much about splitting it up, though. It's about providing a title that will attract the correct audience. But good luck getting that past marketing.
I mean, it's a list of the top developer tools from StackShare users. If you were going to change the name to something it would have to be something like "The Top 50 StackShare Developer Tools of 2016", that would be correct but also a bit redundant...
Since the data set (StackShare) isn't inherently limited to just web developer tools (it's just biased towards them), titling it "The Top 50 Web Developer Tools of 2016" would just be incorrect and a misrepresentation of the data.
If the list is for all development work then i must be doing something wrong. I only use 5 of the listed "tools". Github, Gitlab, Vim, Python and Sublime Text.
These top lists lately always seem to focus on web development and seem to skip the millions of developers who work have never written a web app. Desktop, Embedded and backend apps may not be as sexy as the latest web framework but do run a huge number of businesses and devices in the world.
I'm genuinely curious what the value of stackshare is. Is it a form of "infotainment"?
It seems to me that if you work as a developer professionally, you'll have a good sense of what tools and stacks are out there based both on colleagues/work and the larger developer community you likely interact with. How does it help me to see that some well-known software is popular? It seems like just encourages more trend-following in programming.
I suppose I could see the benefit when it comes to SaaS products...this site gives a way to see all the options out there for things you might want to outsource.
Am I missing something? Do people find this site to be valuable?
Absolutely 100%. The only time I ever call a company for support is when they don't have chat. My company provides both chat and phone support to our customers (many of whom aren't technically savvy) and chat is overwhelmingly more used. Support staff can also handle more throughput with chat since you can easily have 5 simultaneous conversations at a time.
Outside of analytics, real time chat is almost always the first non-core feature I ever add to a new project.
I think you're still misinterpreting the OP (I know you're not the poster above :)). [S]he was referring to interpersonal sort of chatting with friends, colleagues, or people you've met online. Support chat is different. Nothing to do with "normal" chatting as a feature.
Not sure how this was judged... Seems silly to list jQuery, React, and Javascript... If jQuery, React etc is on there obviously JS is too? They should really break down the numbers.
And what is meant by trending? I assumed this was judged by people hiring for the technology but they list Node as being a top-trend yet on their website Rails has more job openings than Node... Seems weird.
Originally we thought the same thing, but we wanted to remove as much bias from the analysis as possible, so we opted to keep all tools in the running. Since the weighted rank was based heavily on tech stack inclusion, we felt it was more valuable to keep the raw rankings.
For trending, we calculated tech stack growth over the past 6 months for each tool. I wish we had time to pull in job data, but the data pull was going to delay the article a while and there are some core features we were itching to get at (there's only 6 of us on the team). Not saying this is a perfect list, but it's a snapshot of the data we have and felt it was a good indication of what developers/teams are using.
Last I heard they will offer a on-premises solution for companies that need it. However without being connected to the hivemind, I imagine it's utility will suffer. :(
Actually, the reason Visual Studio Code didn't make these rankings is because the stackshare page wasn't created until mid-2016. Since the rankings were heavily weighted to tech stack inclusion, VSC's numbers were a bit skewed. We do our best to keep up with requests to add tools, but as you could imagine there are _a lot_ of requests.
Well, this did point me to a shared password system with an API that I have not seen before: passbolt [https://www.passbolt.com/]
I have been looking for something like this for a while to securely access and share credentials from an application. GPL makes me nervous though -- especially AGPL. Does AGPL prevent you from using it as a service from within a separate program? For example, if OAUTH was AGPL would no one be able to use "sign in with google/facebook/etc" without open sourcing their software?
Probably not, but it depends on exactly how the code is arranged.
AGPL says that anyone who can use your code (via web service) counts as having the code "conveyed" to them, which means the GPL terms apply.
The purpose of this is to stop cases where I put GPL-derived code on a smart TV but say that since I don't let the TV owner touch the code I don't have to open source it. Or I wrap GPL-derived code as a web service and don't offer the source because the GPL'd code stays on my server.
In your example, maybe Facebook takes some AGPL OAuth library and adds 20 lines of code to talk to their database. If they now give you access to call their OAuth service, they must honor a request from you to look at those 20 lines of code. If the OAuth library that you use to talk to Facebook is also AGPL and you give someone access to your service, then you have to release your source to them.
One of the top NEW tools should definitely be Prefix. It was released early in 2016 and is now used by over 10,000 .NET and java developers. It is a lightweight profiler that tells you everything your code is doing.
Don't know any of them. I must not be in the right inner-circles (I'm guessing web development judging by this list). That reminds me, do we still consider Carmack a top developer?
It is very hard to take this list seriously as 'visual studio' isn't even mentioned anywhere. But 'vi' is? So, Vi is a top dev tool, but the default Microsoft dev tool isn't worth the top list?
Another issue.
Go to githut.info, Java is second by wide, but it's not 'top'?
The list seems detached from reality and residing in its own bubble.
Note that NixOS' drive towards critical mass isn't complete yet. It has great Haskell support (especially since Stack has nix integration), but may not have as good support for your language. No point in switching OSes before the time is right.
71 comments
[ 2.3 ms ] story [ 149 ms ] threadIn node this is as simple as console.log('Hello World')
"Scott Hanselman's 2014 Ultimate Developer and Power Users Tool List for Windows"
http://www.hanselman.com/blog/ScottHanselmans2014UltimateDev...
To use the normal house-building analogy, I would say that the Tools are obviously saws, drills, etc. Things that you use on every house you build but that are not part of the house itself. These represent notepad, visual studio, git, etc.
The Materials are wood, nails, etc. Things that make up the house and are not removed when the builder leaves. These represent the actual code (ie, lines/libraries of javascript) you build with your tools.
e: So it's like saying the #1 carpenter's tool is wood.
To examine another simple example, consider a potter who crafts a vase from clay. The potter's wheel and his hands are the tools he uses to form the clay medium. I do not consider the clay itself to be a tool.
I think that the analogy fits. Javascript is more accurately represented by the clay than by the wheel. If your final product is "function foo(bar){...};" you are forming that function from javascript using a text editor. The same way a vase is formaed from clay using a wheel.
Also worth noting, the same way that vase can become a tool used by some other craftsman on some other project, that javascript could be packaged in a way that lets you take it with you to other projects. But just like the original clay is not a tool, the javascript isn't a tool. But the package you make with it might be.
If it is about Node, then I retract my point.
The general purpose computer! Let's hear a round of applause!
The article reads like an ad for a bunch of commercial services. I was really hoping for things I could apt-get/brew install <excellent new tool>.
https://news.ycombinator.com/item?id=13361389
This. Love it! Exactly my thoughts on seeing the click-baity OP.
Do you think it would be valuable for us to segment these rankings further next time? Create a couple different rankings?
Since the data set (StackShare) isn't inherently limited to just web developer tools (it's just biased towards them), titling it "The Top 50 Web Developer Tools of 2016" would just be incorrect and a misrepresentation of the data.
These top lists lately always seem to focus on web development and seem to skip the millions of developers who work have never written a web app. Desktop, Embedded and backend apps may not be as sexy as the latest web framework but do run a huge number of businesses and devices in the world.
It seems to me that if you work as a developer professionally, you'll have a good sense of what tools and stacks are out there based both on colleagues/work and the larger developer community you likely interact with. How does it help me to see that some well-known software is popular? It seems like just encourages more trend-following in programming.
I suppose I could see the benefit when it comes to SaaS products...this site gives a way to see all the options out there for things you might want to outsource.
Am I missing something? Do people find this site to be valuable?
I don't use it when I want to start a project and I'm looking for tools.
This is a keep at the back of your head kinda thing.
Every time I use Evernote and see the chat button, I wonder if anybody is actually chatting in Evernote and if they are, why?
Outside of analytics, real time chat is almost always the first non-core feature I ever add to a new project.
And what is meant by trending? I assumed this was judged by people hiring for the technology but they list Node as being a top-trend yet on their website Rails has more job openings than Node... Seems weird.
For trending, we calculated tech stack growth over the past 6 months for each tool. I wish we had time to pull in job data, but the data pull was going to delay the article a while and there are some core features we were itching to get at (there's only 6 of us on the team). Not saying this is a perfect list, but it's a snapshot of the data we have and felt it was a good indication of what developers/teams are using.
It's a great idea though!
I have been looking for something like this for a while to securely access and share credentials from an application. GPL makes me nervous though -- especially AGPL. Does AGPL prevent you from using it as a service from within a separate program? For example, if OAUTH was AGPL would no one be able to use "sign in with google/facebook/etc" without open sourcing their software?
AGPL says that anyone who can use your code (via web service) counts as having the code "conveyed" to them, which means the GPL terms apply.
The purpose of this is to stop cases where I put GPL-derived code on a smart TV but say that since I don't let the TV owner touch the code I don't have to open source it. Or I wrap GPL-derived code as a web service and don't offer the source because the GPL'd code stays on my server.
In your example, maybe Facebook takes some AGPL OAuth library and adds 20 lines of code to talk to their database. If they now give you access to call their OAuth service, they must honor a request from you to look at those 20 lines of code. If the OAuth library that you use to talk to Facebook is also AGPL and you give someone access to your service, then you have to release your source to them.
http://stackify.com/prefix
How convenient...
Don't know any of them. I must not be in the right inner-circles (I'm guessing web development judging by this list). That reminds me, do we still consider Carmack a top developer?
"Look to an even stronger showing in 2017 as a language-of-choice for multi-threaded, scalable applications."
lol
Another issue. Go to githut.info, Java is second by wide, but it's not 'top'?
The list seems detached from reality and residing in its own bubble.
- IntelliJ IDEA
- John Carmack
+ The Stack package manager for haskell: https://docs.haskellstack.org/en/stable/README/
+ NixOS: https://nixos.org/
Note that NixOS' drive towards critical mass isn't complete yet. It has great Haskell support (especially since Stack has nix integration), but may not have as good support for your language. No point in switching OSes before the time is right.
-Visual Studio Code
-yarn
-serverless