markdown guide
 
 

Walmart decided to adopt Blockchain for a vital process that requires a lot of data and transaction. It wants blockchain because it's fast and safe.

hyperledger.org/resources/publicat...

However, blockchain is not fast.

I wonder why Walmart picked blockchain?

https://vignette.wikia.nocookie.net/villains/images/1/1e/Phb.png/revision/latest?cb=20100716195552

 

Blockchain: the world's least-efficient linked list!

 

The network that Walmart chose to go with is capable of 1 million transactions per second. It may not be as fast a writing to a DB but the tradeoff of trust is worth it IMO.

1 million transactions per second, that's impressible.

I think it is not even blockchain but a distributed system mainly because the bitcoin blockchain runs at 10 transactions per second. And the maximum is around 200 transactions per second (bitcoin cash using a big block).

Yeah, with the Lightning Network that scales up a bit more, but core Bitcoin is hard to scale

 

It's like almost no one really understood that you don't need blockchain if you have a trusted network, which most companies do. So they are basically implementing distributed databases which they probably are already using in some form once we ditched mainframes.

 

Yeah, Blockchain is only useful when decentralization is of utmost importance. It's great for that though.

 

Yet, tech like blockchain has amazing potential to reduce corruption and improve governance for countries and municipalities. It's too bad the hype is overshadowing this amazing ability.

 

I've always wondered why governments don't use it in an online voting system. You could register your IP address up with something that identifies you in the gov database and use it for online voting.

 

I don't know if I'm interpreting "movement" correctly, but I remember when NoSQL was super-hyped, then we realized that good ol' relational databases were still the best for most of the tasks.

 

8 years of MongoDB development here and I can confidently say that I will never recommend NoSQL for another professional project.

 

Nowadays, we are putting our JSON into relational databases :D
SCNR

Oh I'm with you. If I ever need to save unstructured data, I would just use JSONB inside of PostGres. Now I'm a type-safety kind of guy, so I'm not sure I ever would do that. But if I found a good use case, PostGres' JSONB is the tech I would use instead of MongoDb.

How is the name of that product supposed to be pronounced? Why is there only one S if it is both Postgres and SQL? FWIW I call it Post-GRE-SQL because somehow it seems "graduate level."

Originally the product was called "Postgres" (as Post Ingres, a DB at the time), then they joined the word SQL to make it clear it was a relational DB.

I think "POST-GRES-QL" is the correct one, like if it was "Postgres query language"

 

After two years of using dynamodb I would gladly slap the team that came up with it. Especially the throttling mechanism

Depends your traffic profile and pockets. If your traffic follows a nice and constant increase/decrease pattern it's fine. If you have huge sudden spikes like we do...the only option is to turn it to on demand charging ...which is slightly more expensive but you don't have all the problems that come with bursting capacity, throttling and scaling.

 

I wasted a lot of time fretting about databases at that point.

 

These ones I would say:

  • IoT
  • Blockchain
  • Machine Learning

They all have the potential to be great but I fell like they are all really early in their development and a lot of people are just throwing it at problems where they really don't fit.

Also Scrum...

 

Blockchain, sure. Scrum... arguably, I guess, though I still use it. I disagree about IoT; afaik it's still huge, and more and more smart home devices are being produced every year and seem to be doing well (though I haven't done market research or anything).

But seriously, machine learning? The biggest, most successful field of AI research and development of the last like 50 years? I can't agree there. ML is powering every major search engine, it's used for photo and video analysis for all sorts of applications from social media to law enforcement and government intelligence, it's used for every sort of mass data analysis from advertising to stock markets to demographics research, and it's invaluable to the hard sciences where quickly identifying trends in huge datasets (think about trying to manually examine astronomical datasets, the output from Large Hadron Collider experiements, or even animal migration patterns with hundreds of thousands of data points).

I'm really not trying to be a jerk and go all "someone is wrong on the internet" or anything, I'm honestly very curious: what do you see as the failures of machine learning? Sure, there have been misfires and misapplications, just like any tech, but my god, it's been absolutely exploding as a field of both CS research and practical application for literally half a century

 

I might interpreting over-hyped in a different way than you are then. By over-hyped I don't really mean that something is bad. Machine Learning is awesome and has solved a lot of problems that were previously, dare i say, unsolvable.

What I mean with over-hyped is that it, in many ways, have started to be used as a buzzword. It is a thing that startups instantly put in their sales pitch even though they might use it in the smallest and least significant part of their actual service. Even worse is when ML is crammed in to a project that doesn't really warrant for it. Working for an agency I have even had clients saying "We want to solve this using machine learning" when there are solutions that would have done the work better.

This of course does not mean that machine learning is bad or has failed. It just means that it is hyped and sometimes misunderstood by a lot of people working in the industry.

What I am saying is not

"over-hyped = Bad"

but rather

"over-hyped = People sometimes use it only because there is hype around it".

Oh I totally agree with the first impretation though. I think Machine Learning is absolutely terrible. Even if we solve the issues around climate change, AI research will inevitable bring the end of humanity and needs to be stopped.

Do you mean because of strong AI and the rise of the machines, or privacy concerns, or something else? I probably agree with all of your concerns at least somewhat, but even if we avoid the research heading in those directions, ML is still fundamentally important. ML is a very field that covers everything from data compression algorithms to cyber security to, as I mentioned, interpretation of scientific datasets. We would honestly never have progressed past the tech of the 70s without ML

 
 

I thought scrum was an agile thing. Is it a software?

It's sort of a movement in, but not exclusive to, the software industry

 

Also Scrum...

Scrum is one of them things that works amazingly... but only if done really well.

 

Which means it's a terrible idea for a team organisation process.

You can't base your organisation on everyone performing the process to perfection all the time, you have to account for the fact that humans are performing it.

The best process is one that always produces the desired result regardless of the proficiency with which you execute it.

But do you think such a process exists? I feel that as soon as you add the human factor you also need to have a more human approach to team organization.

That's why it's best to focus on the Agile values instead of the processes.

 

Agree. I just feel that management tend to just throw it in to a project as the silver bullet and then wonder why all of these sprint planning meeting haven't gotten us to write more code.

 
 
 
 

IMO SPAs make a lot of sense. It's the concept of dealing with the view on the client side, rather than on the server. The server should just send data, not the view itself.
(Yes, all of this is nuanced by server-side rendering and so on, but still.)

 

The reason I like this mentality is it means you can build a single API that then gets used across everything, any updates or changes an everything gets access to it and it also means easier to maintain as well.

Combine that with a tool like React-Native and you have an almost build once run everywhere product.

 
 

It's hard to pick just one! Candidates...

  • Neural networks,
  • Blockchain (@lukewestby called it first!),
  • Internet of Things,
  • AI/machine learning,
  • Scroll-wheel hijacking on Javascript websites...
 

"...Scroll-wheel hijacking on Javascript websites..."

One of those things we should have asked 'just because we can, should we?'

 

Apropos to the last twenty years of web development, I might add.

And people mock me for creating content-oriented sites without all the bells and whistles. "You should make it modern-looking."

criticism >> /dev/null

 

I'd say that Neural Networks and AI/ML have made a huge impact in the large companies that have the expertise to implement them correctly, i.e. Google, Facebook, Amazon. But for the general purpose programmers they haven't at all.

 
 
 

Coffeescript gets a pass for being the transpile gateway drug.

 

What should a coffeescripter (like me?) graduate to? Clojure?

What should a coffeescripter (like me?) graduate to?

Typescript, probably. Like CoffeeScript, Typescript is pretty much just normal Javascript, with some extra goodies. Clojure is a completely new paradigm of programming (Lisp), and won't be as easy of a transition.

 
 

I wrote an article about REACT and I received a comment about it. React was developed thinking in CoffeeScript, not in Javascript and it is the reason why React is so weird in Javascript. I don't know if it is true or not, cause I don't use CoffeeScript, also it is a dead technology.

About MongoDB, it's a NoSQL that works really fine but the name is offensive (at least in Spanish), Mongo = pejorative way to say retarded.

 
 

Cloud.
It's just the time-share computing from the 60s.

 

I'd say microservices. You go anywhere and they'll tell you "we are splitting our monolith into microservices"... A lot of the times it ending up a bunch of smaller monoliths.

 

Bunch of smaller monoliths is still far better (usually) than one huge monolith. At least you need to set some boundaries.

 

if its the same team building them as the original one it will end up been a bunch of huge monoliths(arrgh here we go again) that slow everything down and eventually team will come back to refactoring the original monolith. its very sad:)

 
 
  • Inheritance in OOP (Interfaces and Composition with Delegates are the better parts of OOP and yet we're still teaching the whole Dog extends Animal to newbies). The best OO code I've seen uses the least inheritance.

  • UML

  • XML

  • Thin Client vs Thick Client debate: mobile apps nuked this whole paradigm

  • Flash, ActionScript

  • AR/VR: believe me, I think it's cool but it's still just all hype for a fraction of a percent of the market (This is an area I hope I'm wrong in, but I wouldn't bet on AR/VR)

  • Domain Specific Languages: like, they're fine and useful, but 2010 hype was that they were going to Change the World

 

UML, that's a nightmare from the past :D
I remember Eclipse had a functionality that generated Java code from UML.

😅

 

I recall the opposite, where coworkers would print out GIANT UML diagrams of our code for new hires and interns. Looking back it was probably just a weird flex.

 

UML is actually very useful to visualize existing code.
But it must be done properly.

 

DSL's...uggg. I have yet to see a situation that would not be better served using an established language/markup.

 

I think it's still going on... The whole AI / machine learning stuff.

It's okay for people who don't want to be a programmer. But for people wanting to be a programmer, it's a trap.

Everyone thinks they will make a machine feel emotion by doing a 3-6 months course and end up making data scrapping, data cleaning and data feeding their career straying away from programming.

 

During my AI module at uni a while back, my lecturer (a leading AI researcher) basically said that the huge wave in AI/ML success is basically running AI/ML theories from the AI boom in the 60's and 70's. Now we have the easy access to data and processing power to actually get somewhere with it.

New approaches to AI/ML are rare and tools like TensorFlow basically slow actual innovation.

 

Can confirm.

AFAIK the new stuff is 'just' practical stuff about what structures work better for tasks, and way too expensive for most companies.

Most of the industry still neglects data bias, one of the first things I learned about AI, with urban legends about soviet tanks and sunshine going back to the early days of AI...

 
 
 

Most people are saying "blockchain", but I would point specifically to "cryptocurrency". It is essentially a software movement. But bitcoin and its ilk has ZERO intrinsic value. And its monetary value is based on the whims of a market that buys and sells almost nothing except speculation on it's own currency. I realize there are a few "major retailers" that accept bitcoin now, but it's an afterthought in most cases.

 

Most 'real world' currency also has zero intrinsic value. Most major currencies throughout the world only have value because the governments responsible for them say they do and most of the world population for whom it matters either agrees or just blindly trusts them.

 

Sovereign currencies have value because issuing governments only accept tax payment with those currencies, and tax payment is required under penalty of prison. I’m not sure I would call that agreement or blind trust.

It's the governments way of ensuring that currency has value.

 

That's certainly true. But with cryptocurrency, you don't even have the advantage of physical currency.

I think it's fair to say that based on the amount of Bitcoin that's been stolen or extorted from individuals-- including by Bitcoin exchange operators your supposed to be able to trust-- only a fool puts any real confidence in cryptocurrencies.

So where does that put us? Only government-regulated cryptocurrency could be trusted in any realistic way. And that basically defeats one of the goals of cryptocurrency.

 

Not to mention the gluttonous waste of energy it takes to "mine" cryptocurrency.

 

Rational Rose et al and the notion that every use case and corner case could be documented up front and used to generate code.

I love code generation for boilerplate, but that was a fool's errand considering the cost and complexity of the tools available at the time.

 

"Write once, run anywhere" for Java
XML as the universal interchange format (we're still dealing with CSV :D)

 

+1 for XML. JSON ate it for breakfast.

But I don't understand: Java fulfilled that promise? Java has been the Top or 2nd Top Language for 15 years1

On top of that, the JVM allows programmers to target the JVM instead of worrying about Operating Systems.

 

"Write once, run anywhere" wasn't about popularity, it was about writing the code once and running it literally anywhere.

They created JVMs for basically anything (from personal computers to washing machines), but there was obviously a fault in that logic: virtual machines don't completely isolate you from the operating system.

Also remember not all JVM implementations were the same (I'm not sure about the current state).

See also what happened on the client side with Java applets or well... do you remember Java Mobile Edition?

That's why that slogan was "over promising and under delivering" :)

Java and JVM as you said reached immense popularity, but the title of the thread is about "over hyped software movement" and I think this one deserves to be here.

I wonder if WebAssembly will be the "write once, run anywhere" promise fulfilled of the 2020s or if in a few years it will be mentioned in another thread like this :D

 

On top of that, the JVM allows programmers to target the JVM instead of worrying about Operating Systems.

Only if you're doing relatively simple stuff and don't need amazing performance. The VFS layer in particular still shows a lot of the underlying OS behaviors.

 

That's why Docker was created, we do not need Java anymore

 

I'll take "Over-hyped Technologies From The 1990's" for $100, Alex. ;-)

 
 
 
 

I agree so many people miss understand it 😂

They miss understand microservice
They miss understand kubernetess

So many miss understanding on this field

 
 

Two that people still use to sell projects but aren't as shinny as the hype made them look:

  • Big Data
  • Agile

Without starting a rant —there's a lot of articles taking both sides— over agile, is one really over-turbo-hyped things.

And the case for big Data is that everyone started saying "we have a big data solution" and eventually all the big data solutions turned out to be simply dashboards reading simple databases, most of them with simple query generators

 

What is the difference between "big data" and "data mining"? Or is it just the same thing rebranded?

 

Big data is about handling lots of data, it's about volume. Data mining is about finding data, it's about source.

 

I think it is too early to judge things like Blockchain, IoT and machine learning. I think all 3 could still have huge impacts, just not in the way we initially thought they might.

If you want a proven hype vs actual, how about the rise of "rich internet applications" a decade or so ago. MS had Silverlight, Adobe had Flex, then there was JavaFX and a ton of other lesser known competitors. It was going to be the wave of the future and companies sunk millions of dollars into these applications and they disappeared almost overnight (mostly due to the rise of mobile and the iPhone especially and their inability to run on them).

Or how about hybrid mobile development? This is far from dead like rich internet apps are, but there was a time when companies like Garter and others predicted native development would fade in favor of hybrid apps. I think I remember quotes that they expected something like 80% of mobile development would be hybrid using something like PhoneGap. Companies bet big on hybrid tools around cloud builds and deployment. There still a place for hybrid apps and tools like Ionic are still hugely popular, but hybrid never quite dominated anywhere near the way it was predicted.

 

It looks like every single movement has been mentioned!!! hahaha

Yes, we live in a world that values hype over proof.

The social media effect will have us all jumping in the fire if it's the "IN" thing to do.

When young developers are wise enough to know that their new toy is just hype, they are probably too old to still get hired :D

 

I want to shot it too.

  • Microservice

Why?

Microservice

Microservice is brilliant is the company has the budget for it. Most don't and they think (why?) that cloud = fully support (yes if you paid a premium but most don't), killing the TOC (Total Ownership Cost) promised by the vendor.

 

I'd say most JavaScript frameworks, because they seem to go from best to forgotten fast.

 

jQuery has been there for 13 years and it's still being used today (although a lot of people have moved away)
React has been there for 6 years but only recently started to gain the hype.
Knockout has been there for quiet a while (9 years).

I'd say that good JS frameworks can easily live 10 years. But there is constantly a lot of hype regarding new frameworks because of how easy it is to create a new one. It's like somebody is constantly making and releasing new frameworks.

 

For web-dev it was Meteor. It was supposed to be the next Ruby on Rails.
Meteor was very productive however not having a Postgres Adaptor and only MongoDB I think hurt its adoption significantly.

 

Fintech I had spoken to a few people who were previously working in banks.

I can't imagine how anyone can stay there using old tech that doesn't allow you to grow as a developer with tech as old as 20 - 30 years old.

 

I definitely agree with all of the blockchain comments. I think Big data/Hadoop was way over-hyped. Way too many people without big data trying to get in on the "big" data game.

 

Microcersives / Docker! So many poeple wrong about it.

I remember when some people consider that having 9 different docker in one app is a microservice.

There are no microservice without, gateway, separate database/service, so many people wrong and miss understand it.

 
  • Y2K!
  • VR (the first time)
  • The first 10 years of “the Cloud” caused a lot of devs to 🙄 but we’ve all come round to it now (see also serverless).
  • TDD/FP/Software craftmanship seemed to have some great ideas before being crushed by relentless gatekeeping.
 

Can I say typescript? I’ve used it before, and know many people who do, but it hasn’t taken off in nearly the ways people expected. JavaScript is still far in a way dominant.

 

Personally I think there's a pretty big gap in what people say it can do for you and what it actually does for you.

 
 
 
 

BDD (Behavior Driven Design testing specifications). Product owners do not have time to write specs or do coding. If someone likes it great but otherwise there isn't amazing benefits people get.

 
 

Can you expand? I feel like it's one of the greatest successes in the last decade of development.

 

I think it depends on how much you like HG and SVN.

 
 

Agreee! There are some inefficiencies(bundle sizes can be huge) and wonky solutions to get reactivity right for an application. Thoughts?

 

Agile!

or how we are doing agile today to be more precise

 

Then surely you mean "agile". As most companies are "agile" but aren't agile :)

 

Yeah from today we will do "agile". Next day everything is the same :)

 
 

I like Vue more than React, both are good, but JSX it doesnt feel natural

 

I think it's the easiest of the main 3 right now. Hope they keep it simple.

 
 

The fact that nobody mentioned second life (as a legitimate mainstream market place) makes me feel old.

 

Front end frameworks! Angular, React, Vue. All of them work pretty same except few differences here and there. Still there's lot of hype around those and it's way too much I would say.

 
 

REACT!

Customer: I want to build a car...
Dev: Use React!

 

Definately want to throw micro-frontends on here. Reason being is they introduce more engineering challenges than they help solve them and can tank performance/usability of web apps.

 

Not exactly a software movement, but here it goes: agile.

 

NoSQL, always had the feeling it never broke through like it should have.

 
 

Dart.

They even tried to make dart run native in a browser. This was google typing to reinvent the early "Works in IE" days.

 

can't decide between FP, microservices, blockchain, cloud, graphql... :D

Classic DEV Post from Dec 29 '18

What's your 🎉New Year Resolutions🎉 ?

I know you all must be thinking, "Ugh... Not this again. These things never wor...

Ben Halpern profile image
A Canadian software developer who thinks he’s funny.
Join dev.to

Better understand your code.