I love the idea of this: that there is a place you could go to get a pulse on the opinions of technology professionals regarding the tools they're working with.
So I apologize for the negativity that follows; it's a cool idea, and you've put work into it and made it look very pretty. That being said: unfortunately, without it being backed up by _data_, this is just one person's opinion and ultimately not very worthwhile as is.
Furthermore the presentation of the data along a single axis 'adoption' (or sometimes 'expectation') is even more confusing. Technology comparisons are not helpful plotted on a single variable as the comparator. It also leads to some very bizzare plots where somehow 'mariadb' has more 'adoption' than 'mysql' or 'postgres'
It's nice, except how they are plugging their own GoCD as a Jenkins replacement. Yes, pipeline builds are nice. But only if you fit their very specific niche, and that's not all that Jenkins does. The GoCD plugin ecosystem is also basically non-existent, the integrations with github/gitlab/etc are all maintained by one guy who refuses to implement bitbucket support even though the GoCD plugins page lists it as the bitbucket plugin.
That's just the first thing I ran into with this radar and it's annoyed me ever since.
I would trust the ThoughtWorks Radar over this but it's nice to see a competitor and a different angle. The market has room for more providers of this kind of information, it just has to be higher quality.
Unfortunately, since the author doesn't really seem to understand the technologies he's trying to plot (GraphQL is listed as a database? really?), and since he doesn't present any data to back up his assertions, I feel that any (professional) negativity towards this post is fairly justified.
Maybe this is the result of someone (junior?) trying to get a grasp of the overwhelming plethora of development tools by documenting his/her current findings and beliefs in a visualization as a help to decide what tool to look into in more detail.
I have a lot of trouble believing that the author of this page has much experience with iOS development. As such it calls into question the rest of their evaluations. Cocoa programming is the place I can speak intelligently, so I'm going to limit my remarks to that.
Let's start with Objective-C which is being listed as "Enlightenment" on the cusp of "Productivity". Objective-C has been around for 30 years. Check out the Swarm Library. An Objective-C library developed first in the 90's for research into CA. I won't go into the whole history, but it's been a productive language since the mid 90's.
In Text Editors, Xcode is listed as "Challenged" by what? There's no mention of AppCode at all. The Cocoa IDE marketplace is so small I cannot name another editor without going to google. Listing it as "Challenged" may appeal to people who aren't experienced with it, but it's still the accepted tool for Cocoa development.
For iOS Development... I know React Native is popular among newcomers, almost exclusively because they'd rather not learn a new language, but I can name exactly 0 mobile professionals who use it. Yes, I know Facebook uses it. Facebook apps are objectively terrible. They get away with it because React Native is moderately better than mobile web.
And GraphQL is listed as a database... I would take these charts with a huge grain of salt, they seem to basically be a single person ballparking things on a curve.
Similarly, they are waffling about cryptocurrency because their confidence is shaken by arbitrary things not related to the development and utility in the space.
the problem with this is it's opinions of the creator, presented as imperial fact - as if it's actually representative.
This is dangerous, because people who are easily mislead will see this and become java developers - or hire only .net developers, because they saw that graph.
I've browsed around - every one of these graphs is completely irrational, tells nothing substantive, or are misleading at the least. There are some truths scattered about, but by and large it's largely nonsense.
Graphs tell a story - and every one of those stories is either entirely made up, or has some pretty disputable results.
there IS a story to tell, but it takes more than a graph to tell it. There's a lot of "it depends"
I don't mean to gutpunch the author. I strongly disagree with this project - but commend the effort. the design is clear and straightforward, and it's another project shipped. That's certainly worth something.
edit:
from the related writeup:
> What makes this visualisation so attractive, is that it provides you with a
starting point for understanding and exploring a certain market and it’s key technologies.
> That information can help you decide whether to either invest your time and money into an emerging technology, or wait for the hype to pass.
this is exactly the kind of takeaways you should not be making from these graphs.
Yep, just another person using data visualization techniques to describe their personal opinion while giving them the air of empirical authenticity.
It's unfortunate really, the same as a media outlet using a misleading graph or junk data science in general. Undermines the trust in a still nascent field.
This is a great idea! I really like this. But the audience needs to be clear, and the method of gathering unbiased.
Maybe I would say, something like "you would use PHP when _____" or "you would reach for flexbox when _______" as a survey methodology. Because that's kinda how it is for a lot of things. The give & take needs to be captured.
Maybe some way of check boxing priorities. Like, I care about maintainable code, or cheap developers, or high concurrency, or good track records. All that would be really useful in helping establish a direction for a developer and a company researching directions.
Whoever wrote this doesn't seem to have much experience with the .NET ecosystem.
Referring to F Sharp as "#F"; saying Visual Studio is in the "growth" phase; no mention of IIS under web server or SQL Server under database or Xamarin under any of the relevant mobile sections.
I build this as a side project. I enjoy doing research for certain topics, and usually end up drawing a graph that positions all concepts so I get a good understanding of a market.
I build a tool around that, which became State.of.dev.
Thanks for building this! What data did you base the graphs on? Did you extract these data from Gartner reports? If so, which ones?
Although I see a bunch of things on the graph, I don't know what they imply. For example I see Heroku in the "challenged" state -- challenged by whom? As far as I know Heroku is still big and growing.
And I see PostgreSQL being "more challenged" than MySQL. What backs up this claim? I get the feeling that PostgreSQL is getting significantly more buzz and development after the fall of MySQL (as a result of the Oracle takeover).
I also see containers being on the verge of being challenged. But I thought containers are still very much up and coming? So I'm confused.
re: context chart and states. The y-axis mentions "adoption". Which is the market adoption of an item. If you click a state, I explain what that state mean. I'm certain this can be improved. So for your example Heroku: Yes they could be growing, I'm not saying they aren't, but they've come into a state where their service is strongly challenged by competitors (usually left in the chart, AWS, Google Cloud).
Re: PostgreSQL and Containers. Those are my opinion in this release. I would see state.of.dev evolve into expert/community consensus based on arguments and actual chart releases.
Considering postgres is streets ahead of anything else on that graph (GraphQL isnt even a database just a query language, SQLite is of course amazing but useful in an entirely different context, mysql/mariadb lack many important features, and mongo...), please back your opinions up because as of right now this seems dishonest if not wrong.
Containers is still very much in growth, for the majority of deployments.
VMs would be mature, and bare metal would challenged / superseded.
Remember that 90% (a number that is completely take out of thin air, but a large majority) of deployments are not what we see on HN, lobsters etc.
They don't understand why you would have a VM, let alone a container.
I have seen feature requests recently for zero downtime migrations of containers, as "some apps cannot be stopped and started" - that is how enterprise sees containers.
Hate to break it to you, but for high performance only specialised hardware works. Sometimes even only local hardware.
Or even a full cluster that only uses VMs or containers as a nice migration of availability layer.
Internet bandwidth and latencies kill clouds while there is no real gain to be had by running multiple heavy compute services on one machine. (as much as certain gpgpu companies want you to believe)
Bare metal superceded, ha. It is just augmented with an availability layer.
Noticed a factual error: You say that Vue.js "demand[s] the latest javascript spec for development and all its advantages." -- this is not true, all vue.js demands is ES5.1 (IE9+). It can take advantage of ES6 and modern tooling, but it doesn't require or demand it (you can just plop a script tag onto a page and be off to the races without any kind of compilation).
This is a very cool idea, definitely one to bookmark, and I'm glad you made the project. I would like to see some description / separation on the page about which charts are based on objective data vs which are more subjective opinions.
Emacs almost superseded? Superseded by what exactly?
At least the text editor section doesn't make any sense to me. Atom more mature than Emacs/Eclipse/Visual Studio? Visual Studio Code is in growth, Visual Studio is a very mature product.
>Emacs almost superseded? Superseded by what exactly?
VIM HA! That whole chars is completely dumb. It's comparing oranges to pears. VisualStudio works on Windows, Emacs, Vim work on every platform, are hackable and opensource etc. etc. The chats is called 'text editors' ha, VS and Eclipse are not really text editors, they're full-featured IDEs, with integrated debugger and stuff. I can't stop seeing those charts as someone's imagination how tech looks like, it's not even supported by anything like data, google trends or even survey.
Exactly. I think there should be a disclaimer saying that those charts don't represent the actual consensus/reality and should not be taken at face value. They're not accurate and even conflate categories/products which are not comparable.
if you focus on the y axis and ignore the x axis then it kinda of makes sense, mostly because the adoption trend is not related to the lifetime of the subject in this case, like it can be for programming languages and the likes.
Nice project, needs a bit of work though, mostly in the form of explaining the data in the graphs.
Also, two points:
* It's SQLite, not SqlLite.
* Yeoman has been around for ages and I've never met a person who actually uses it. How is it under "Release"?
I've used Yeoman in a few projects, but realistically I've only seen it used to bootstrap a project, and I happen to do longer running projects so there's not much bootstrapping. A second use case of Yeoman is generating components, and we do have a set of templates to do that in our project, but honestly I'm old-fashioned and inefficient and just copy / paste an existing component instead of try and figure out how Yeoman works again and iterating on the templates. Might be different if we added new components more often.
Waterfall is stuck in 'disillusionment', and didn't move forward into enlightenment/productivity. Again, this should get more context on the arguments and context of why something is where :)
I think the idea of having some site like this has some merit to it, but this idea of plotting them on these graphs is misleading and inappropriate.
The graphs are drawn as line charts, with everything being points on the line. This creates the illusion that every technology goes through a lifecycle between all of these states in the exact same path. This is utter nonsense.
Take for instance, your technology graph, where you list "Augmented Reality" as being in the "Disillusionment" phase. Being a point on the curve, along with every other point on the curve, it's implicit that someday "Augmented Reality" may move to be more widely adopted in the "Productivity plateau." But that may never happen; it may just end up being a fad that Nintendo tried to make money off of and never really succeeded at. Nevermind that it's debatable what "productivity" is for a concept like AR.
These graphs also give no real useful information on their Y-axis. It's not really useful to know if the author thinks that Swift is about to peak and that Java has plataued. It may be extremely useful to know how many people are starting new Swift projects, relative to other langauges in the same niche (e.g. Obj-C, maybe Java if you want to include Android? Idk it's not my niche). That might be information someone can use to decide whether they should start a project in Swift or do something else.
Also, the selection of these charts themselves is a little odd. Why a chart devoted just to PHP frameworks? Is this the State of Dev or the state of people who only know one language and read about the rest in school?
>
State of Dev as the author saw fit. No one can come up with State of Dev that will accommodate everything ,not even the ThoughtWorks tech radar.
I disagree. There are ways you could come up with the State of Dev in ways that are more objective than one guy's opinion. Like, the StackOverflow dev survey.
>Also, the last line:
>> State.of.dev is still a work in progress. Have feedback? Ping me at @yvoschaap.
Yvoschaap is here reading the comments and has already replied, so he can benefit from my feedback here or ignore it as he pleases.
Even then, that doesn't preclude me from discussing it here; this is a place where people discuss things they see.
The current charts are a starting point. To re-emphasize (from the linked blog post) I would love it to evolve to an community/expert consensus based on transparant arguments.
Gartner/Forrester approach is great but I think a little more useful for the business planning side (the time dimension is more about market value). Similar vein but more on the 'tech worth checking out/playing with/deploying in-prod' side (panel opinion): https://www.thoughtworks.com/radar
Read up the verification of the Forrester approach. It has failed to predict anything important yet.
A simple differential model like this is no good.
Likewise gaussian cupola models are often wrong. You might be facing a sigmoid instead. Or a stepwise distribution.
Both of these are used by alleged econometrists and planners who do not know better and hate drawing real histograms of opinions, because that takes actual data collection.
Thoughtworks one is even less descriptive and more limited.
> but I think a little more useful for the business planning side
Especially for planning the rollout of their army of consultants, always ready to switch out systems for no perceivable benefit except the hollow promise of modernism.
It might, but I think it's equally possible he's right. For example, had Angular 2 not come out the way it did... it probably WOULD be in the mature column (I personally have found myself extremely productive in it), but adoption was hindered after people found out about the breaking changes in 2.0 (I personally hesitated for the last 2 years to start a new project in it). React is close to mature, but I kind of get the feeling it's accelerating not because of it's own merits, but rather it filled a vacuum. Adoption not earned by being "the best", but rather "the product everyone is talking about" does not bode well in the long term. Don't get me wrong, I think React has a lot of positive qualities, but I think a good framework should make a problem no more complex than the problem itself is. If you start using flux frameworks etc (as is expected with React) I really start to feel like I'm wasting time on things that are not the problem I'm trying to solve.
I love this. I especially like how insights fall out of the presentation. For example, looking at the Product Development graph, there isn't anything that's really an innovation trigger there. Not seeing something there makes the mind want to put something there, and there is your insight on the status of Product Development methodologies; a space ripe for disruption.
So I apologize for the negativity that follows; it's a cool idea, and you've put work into it and made it look very pretty. That being said: unfortunately, without it being backed up by _data_, this is just one person's opinion and ultimately not very worthwhile as is.
Furthermore the presentation of the data along a single axis 'adoption' (or sometimes 'expectation') is even more confusing. Technology comparisons are not helpful plotted on a single variable as the comparator. It also leads to some very bizzare plots where somehow 'mariadb' has more 'adoption' than 'mysql' or 'postgres'