Almost every day, we receive new concepts from different areas, where some of them are not new things but renamed or falsely prepared in order to have a better sale.
In software development, it is the same.
We encounter new concepts like bigdata, nosql, serverless, microservice, aop, orm, xhtml, agile, semver. Most of them are detailed descriptions extending our knowledge on software development, but some of them may not.
In my option, serverless and microservice are totally useless concept.
If someone want to be serveless, he must understand a lot of new concepts which is much more difficult than he build a backend server, and more platform specific, which means he must spend a lot of time in migrating from one platform to another and code once run only one place.
while microservice concept is another useless concept, we start service in order to meet business need not to meet new concepts.
The software development process can never be changed, it is always from small to large, from fixed to scalable.
microservice is a useless concept will you always need a new small module when your businesses are getting more and more complicated.
Further more, almost software modules can be described as microservices.
In another way, for most businesses, the logic behind the business will never change, the only thing we need to do is to find and detail it .
Concepts ignoring humanity and the real logic are very common, beside the microservice and serverless, concepts like xhtml, semver, nosql are almost the same.
Xhtml uses strict mode which offers bad user interface.
semver's keeps green idea wastes too much time on maintain packages than develop new features.
Nosql's misleading in that it can replace rdb causes a lot of database misuse.
These things happen every day. But if you stay focus on your own business, you may not be distracted by such concepts.
Top comments (5)
Serverless has benefits. Each execution is isolated, has built in logs (cloudwatch if on aws), and auto scales based on traffic. Its also pretty cheap compared to running a server 24/7. All of these benefits can allow developers to focus on implementing business requirements instead of trying to architect a scalable system by themselves.
Itβs very easy to write a node server with one endpoint that accidentally crashes your entire node application, which means all your requests will be dead until your server restarts. When your serverless function crashes, it only affects one request.
In fact, we just need a generalized and standardized server scaling method. But maybe this is a phase non-negligible.
I agree and disagree! These new things definitely have uses in specific scenarios. For xhtml, it was the first really standardized from of html that was not subject to browser interpretation and took out of lot of the fuzzy mess that ended up being written as html. Leaving it up to browsers to decide how to fix broken html was never a great idea.
Regardless of specifics, when viewed as tools to deal with specific problems they are not all bad. Some will try to take these solutions and apply them to anything and then of course it's all nonsense. Sadly this happens more than one might expect.
I think as with much of social media and forums we kind of trend follow. The reality is probably along the lines of 80% of the developer community, architects, dba's, server admins etc are actually working with "legacy" or at best probably 2000-2010 "emergents".
I can be wrong of course, but just because all you see and read is about latest topic X y z doesn't mean its the majority view.
Ouch controversial topics, I'm on the opposing end but I'm glad you are trying to think critically. I like the way I develop and it works well for our specific situation