About If cloud is a belief, then cloud native is an attitude. The times call for everyone to become a cloud native developer.
Author | Ding Yu (shutong), Alibaba Researcher, Head of Alibaba Cloud Cloud Native Application Platform
For developers, this is the best era.
The digital industry is booming, the traditional cloud computing industry is becoming mature, and emerging technologies such as big data, Internet of Things, artificial intelligence, and blockchain are in full bloom, and developers are very useful. But at the same time, the emergence of new technologies in an endless stream also makes developers anxious about the capabilities of existing technologies, and become confused about the choice of future roads.
In March 2021, Alibaba Cloud commissioned Forrester Consulting to conduct a survey on the Chinese developer community. Through online questionnaires, it surveyed 422 people in different roles including internal enterprise application development, testing, operation and maintenance, as well as independent developers. A wide range of developers including. At the same time, in order to fully reveal the value, opportunities and key cloud native technologies that the cloud native era brings to the developer community, Forrester also interviewed corporate CTOs, university professors, open source community experts, and developer community opinion leaders (KOL). Of 9 experts. _(Download report at the end of the article)_
It is undeniable that cloud native allows developers to see more possibilities. The evolution of cloud-native technology provides developers with a more "smart way" to work, that is, to make full use of the components and tool chain of the cloud-native platform, shield the underlying technology and save unnecessary time and expense, and focus more on business value creation and Innovation. If cloud is a belief, then cloud native is an attitude, and the times call for everyone to become a cloud native developer.
Developer's evolution route
Throughout the 30-year development history, on the one hand, the vast number of Chinese developers continue to exert tremendous economic and social value. On the other hand, the development of social economy is also changing the way the whole society creates value and realizes value, and continues to bring The changes in software and application R&D delivery models provide developers with a broader space to fully release their imagination and creativity.
The composition of developers ranges from a group represented by traditional developers at first, to a growing group of developers on the cloud, to a growing group of cloud-native developers. developer’s own mission has also changed from an executor of enterprise informatization strategy to a digital transformation business enabler, and will further become a technology leader in digital innovation in the future.
Traditional developers are the executive force of enterprise information strategy. In the two decades from 1990 to 2010, the applause and praise under the spotlight were often irrelevant to them, but they were actually implementing the business strategies of corporate decision-makers. Through the development and implementation of various information system applications, traditional developers help companies build information infrastructure and business platforms, realize the business functions required by internal users and external customers, help companies cope with the rapidly changing market environment, and continue to develop new ones. Business areas and new business models.
Although the current digital transformation of various industries is in full swing, in fact, many industries are still dominated by traditional application construction and development models. For example, the waterfall development model requires functional design, development and testing on the one hand; on the other hand, technical selection, resource preparation, component debugging, continuous construction and version deployment, etc. The entire process has a long cycle, complex technology, and needs to be equipped. A large number of development teams.
With the maturity of cloud computing technology, traditional development models can no longer meet the development needs of the times, and developers have begun to use the power of cloud platforms. Cloud development can effectively ensure the modernization of R&D and operation and maintenance teams, and promote the continuous improvement of R&D and operation and maintenance technical capabilities from the platform tool level. The standardization of technical capabilities brought about by cloud development has greatly improved the work efficiency of developers, including the configuration efficiency of development and test environments, the efficiency of software and hardware development of functional components and business systems, as well as service-oriented, component-oriented, and gray-scale development. Release and deployment efficiency, etc.
However, we have also seen a phenomenon that most companies that implement applications on the cloud have not achieved fundamental changes in their own application development models. In these enterprises, developers' use of cloud computing is still limited to isolated scenarios, such as the infrastructure level or specific business applications. At the same time, the imperfection of the cloud platform itself in terms of development tool chain and integrated services has also affected the acceptance of cloud development models by more developer groups.
Then, the container technology represented by Docker began to rise, and then K8s accumulated and developed. In the developer's endless pursuit of performance, efficiency, portability, manageability, and convenience, cloud native technology emerged at the historic moment. Cloud native makes the cloud development model have more powerful tools, new application construction and innovative thinking. Of course, cloud-native developers are not only embodied in the mastery and application of emerging technologies such as Docker and K8s, but also through cloud-native technologies to realize the shielding of the underlying technical complexity and achieve better application integration and delivery, thereby helping Enterprise innovation. Forrester survey, 73% of developers believe that cloud native can enable more internal staff to become developers.
The arrival of a new era of cloud-native driver development
Cloud native is a further upgrade of cloud computing. Cloud native contains a large number of new PaaS layer technologies and new development concepts. It is the shortest path to release the value of cloud computing and also promotes the upgrading of cloud computing. The entire cloud-native technology stack is based on open source and open technology standards. CNCF is also committed to standardizing cloud-native technologies, providing users with a standard interface for using cloud services, and avoiding vendor lock-in.
Further look at applications based on cloud-native technology and cloud-native architecture reconstruction or rewriting. For example, based on service grid or serverless applications, they naturally have the ability to scale horizontally, and can respond to the rapidly growing business scale in the Internet era at any time. At the same time, they also have built-in high availability capabilities, so applications do not need to pay attention to high availability solutions in a distributed environment. .
Cloud native is not only a re-upgrade of the application architecture that uses the cloud, but also a re-upgrade of the technology and cloud services of the cloud platform. From the perspective of building cloud-native applications, cloud-native reconstruction of applications is reflected in the entire life cycle of application development.
In this process, we have seen some trends: for example, containers + K8s have become technical infrastructure. The container decouples the application runtime from the environment. K8s decouples resource management and infrastructure, encapsulates the infrastructure layer downwards, shields the differences in the underlying architecture, connects heterogeneous computing power, integrates the cloud and the end, and builds a distributed cloud; Supports a variety of heterogeneous workloads, distributed, flexible and scalable, and Mesh decoupling, which promotes the modernization and evolution of application architecture. It can be said that containers and K8s have become distributed operating systems in the cloud computing era.
In addition to changes in the development model, we have also seen that, driven by cloud native, an era of all-cloud development is coming.
By the end of 2021, 68% of organizations will use containers in production environments, an increase of 39% over 2020 and an increase of 240% over two years ago. Alibaba achieved 100% containerization in 2016, and in 2021, 68% of enterprises will use containers in production environments. What is certain is that containers have become an absolute trend.
Developers’ willingness to develop on the cloud reached 68%. A large number of developers have been aware of the changes brought about by cloud development, including front-end/back-end, web pages, mobile terminals, applets, logic, models, components, etc., cloud development has brought productivity improvements and a significant increase in efficiency Wait.
By the end of 2021, 25% of developers will use serverless products. Today, Alibaba Cloud has begun to invest heavily in serverless research and development, providing products such as functional computing FC, serverless application engine SAE, serverless container service ASK, serverless infrastructure ASI, and elastic container instance ECI. At the same time, with the convenience of developer tools, Ali open sourced the industry's first serverless developer platform-Serverless Devs. Through this platform, developers can experience Serverless products with one click and deploy Serverless projects quickly.
From the perspective of the majority of developers, on the one hand, developers can clearly feel the fluidity of the cloud platform from resources, capabilities to value, which brings great convenience to application development and system operation and maintenance; on the other hand, developers also I was plagued by heterogeneous development technologies on and off the cloud, trivial development tools, and fragmented collaboration processes, and was unable to fully implement technical practices in the cloud.
With the development and maturity of cloud native, related products and tools are solving the pain points faced by developers. For example, the consistent packaging of container images enables developers to achieve application portability in different environments; the separation of code and configuration effectively simplifies the development and testing process of developers; serverless computing can help developers quickly open development and testing clusters without the need Complex configuration; CI/CD builds deployment capabilities across clouds, allowing developers and operation and maintenance personnel to ensure rapid and stable iteration of complex applications in heterogeneous environments.
As a one-stop DevOps platform, Yunxiao integrates the cloud-native development model summarized by Alibaba for many years into the product to provide developers with easy-to-use cloud-native R&D solutions. The out-of-the-box cloud IDE, code management platform, and CICD pipeline seamlessly integrate the entire process of development, testing, and deployment with the cloud-native base platform, further lowering the threshold for developers to get started with cloud-native technology, accelerating the transformation of cloud-native technology, and significantly Improve software production efficiency.
Driven by market and technological development, the development and construction of enterprise applications and software will move toward cloud native. At the same time, the maturity of cloud-native development platforms will in turn drive more companies to choose cloud-native. The cloud native development model will become an inevitable choice for enterprise application development.
out an open source ecosystem, Alibaba Cloud promotes all-cloud development and practice
Standards and open source have accelerated cloud nativeness and promoted a better implementation of all-cloud development. Today, Alibaba Cloud has more than 2600+ open source projects on GitHub, covering big data, cloud computing, AI, middleware, containers, serverless and other fields. It has more than 30,000+ Contributors, more than one million GitHub Stars, and ranks among Chinese open source companies. Community GitHub contributes to the top of the list. Among them, some open source projects have also become de facto standards in related fields.
Among them, Dubbo has become the most influential and widely used open source microservice framework in China; RocketMQ is the country's first Internet middleware Apache top project, and it is also the most popular open source middleware project in the country. In addition, we also have application management engine KubeVela, Alibaba's first edge computing project OpenYurt, which was just open sourced last year, ChaosBlade, a chaos engineering tool in the field of distributed high availability, service registration discovery Nacos, and the first serverless developer platform Serverless Devs.
For the entire technology community, Alibaba Cloud gives back the technological achievements of many years of research and development to the world's top foundations, such as the Open Atom Open Source Foundation and the Apache Foundation. Alibaba Cloud is committed to creating an open, standard, and healthy technology ecosystem. A developer who wants to build an open source architecture based on cloud native technology can find his own tools in the Alibaba Cloud ecosystem. Alibaba Cloud has served a large number of enterprise-level users, and at the same time is building a set of open standard technology systems to serve global developers.
It is a trend for enterprises to go to the cloud. Alibaba took the lead in opening up the self-developed RocketMQ in China and became the top open source project of Apache. RocketMQ provides users with high-performance, high-reliability, and low-latency messaging services, and has become the industry's most popular financial-level business messaging solution. With the development of cloud-native technologies, comprehensive cloudification has become the general trend. Many companies have deeper demands for the evolution of message middleware. We will release RocketMQ 5.0 in the community and business at the same time, a new definition of the new concept of integrated and integrated processing of "messages, events, and streams". RocketMQ 5.0 will bring changes in three aspects: cloud native infrastructure, message streaming, and event-driven.
First of all, based on the background of Alibaba Cloud's large-scale production practice, RocketMQ 5.0 will provide a minimalist and flexible architecture that is oriented to multiple scenarios and can be adjusted to help enterprises balance resource elasticity, operation and maintenance complexity, and business ecological innovation; secondly , RocketMQ 5.0 will provide a new lightweight design stream processing framework around high-value message data, so that enterprises and developers can process message calculation and analysis nearby; finally, RocketMQ 5.0 will connect cloud services and open source ecology based on open standards, and Cooperate with the Serverless development model to provide users with low-code, serverless next-generation event-driven architecture services.
Reference article: finally! RocketMQ releases version 5.0: the architecture is refactored, and the code change ratio is as high as 60%
When Cloud Native was first proposed, it was based on resource cluster management and operation and maintenance as the entry point, but today, if all workloads are to be run on a set of infrastructure, there is still a lack of application management. Therefore, we propose to take application as the center, separate concerns, and define all development and operation infrastructure, cooperation boundaries, agreements, and methods, which is the one-stop application management and delivery platform KubeVela. In June of this year, KubeVela entered the CNCF Sandbox. Currently, the number of mirror downloads has exceeded 300,000 times, and it has more than 20 global corporate customers. This year, OAM was also approved by the Institute of Information and Communications Technology as an industry standard.
Nowadays, more and more computing power and services are sinking closer to data sources and end users. As the scale and complexity increase day by day, the operation and maintenance capabilities in edge computing scenarios are beginning to be overwhelmed. In order to promote the coordinated development of edge computing and cloud native fields, Alibaba Cloud open sourced the edge container service ACK@Edge core framework OpenYurt to the industry and donated CNCF. Adhering to the industry's first "non-intrusive" concept, OpenYurt has the ability to cover all scenarios of edge computing and has become the preferred platform in the field under ecologically compatible scenarios. Its applications have covered dozens of industries including IoT, audio and video, logistics, etc., making cloud native ubiquitous.
Cloud native makes developers a better
In such a rapidly changing era, every developer and individual who wants to transform to become a developer needs to be keenly aware of the pulse of the development of the times, the changes in corporate digital transformation needs, and the trend of technological development. At the same time, it is more important to be able to see all kinds of challenges outside of your comfort zone, and to find room for further growth.
Whether it is a young person who has just entered the workplace or a senior engineer who is about to enter the middle age, every developer will encounter unique challenges in the growth process, such as career challenges. Faced with the heavy workload and the burden of the family, it is no longer possible to compete with young graduates who stay up late and work overtime, and the work efficiency during continuous overtime is becoming more and more difficult to guarantee; if you want to improve your skills, you are facing a turbulent situation. With the coming wave of technology, there is no longer enough energy to distinguish which are pearls and which are bubbles.
As companies move to the cloud, the underlying infrastructure and platform tools continue to be standardized, automated, and intelligent. Under the traditional technology and skill system, their work is increasingly homogenized or even marginalized. Career development anxiety and age Increasing day by day; when I look up to the outside world, I find it difficult to find my own position; or when I finally find the opportunity I look forward to, I find that my technical experience has become narrow and obsolete.
During the survey process, 72% of the respondents reported that facing the rapidly changing market environment, they need to master more business and industry knowledge. 70% of the respondents believe that as companies pay more and more attention to customer experience, developers need to master Relevant customer experience knowledge. Not only that, various internal and external factors have put forward higher requirements on the skills and quality of developers, and urgently require developers to accelerate self-transformation.
cloud native technology has brought developers a breakthrough . The cloud-native development model will become the mainstream model for future application development and help developers differentiate their personal technical competitiveness. From containers/K8s, microservices, service grids to event-driven serverless computing applications, from the management of application catalogs, service catalogs, and mirror warehouses to the deployment of public clouds, private clouds, and edge networks, the growing cloud-native full stack Technology brings developers a new perspective on resources, assets, and architecture, allowing developers to embrace more modern technical methods, tools, and best practices to achieve vertical improvement and innovation of their own technical capabilities.
Enhance technological adaptability and achieve cross-field development. Cloud native technologies represented by containers, microservices, and serverless have allowed database, AI, big data, audio and video, blockchain and other technical fields to continue to innovate under its influence; and based on the platform capabilities of K8s, developers For the first time in history, it has the opportunity to synergize a variety of emerging technology fields that have been separated from each other to achieve horizontal expansion of its own technical capabilities. In addition, developers have the opportunity to explore distributed application architecture design, development, testing, operation and maintenance. It not only broadens the technological horizon, but also enriches the development experience, effectively enhancing its own competitiveness and adaptability.
Improve collaboration efficiency and explore business innovation. With the support of cloud-native technologies such as containers and K8s, CI/CD and DevOps practices have ushered in another leap-forward development. The simplification, automation and integration of application development processes not only enable developers to focus more on in-depth understanding of business needs and customer value, and to meet customer needs more quickly and effectively; at the same time, they can explore business innovations by solving business problems.
Cloud native provides the possibility for developers to realize the beautiful vision of all-cloud practice, but developers must also clearly realize that the mission of leading digital innovation in the next ten years is by no means an overnight effort. Developers should focus on the technical capability requirements of cloud native developers from a forward-looking perspective and focus on value realization.
Technology can promote transformation, and technology can lead innovation, but technology is not the goal, technology must serve business. In daily technical practice, developers should actively understand the specific business requirements behind the implementation of the technology, be familiar with the business concepts behind the communication language of the business personnel, and further explore the customer goals behind the business requirements as much as possible. Secondly, developers should also abandon common stereotypes. For example, customer experience is beautiful interface design, experience is only related to UI, and has nothing to do with technical personnel. Developers need to empathize with the idea of making customers value. Integrate into your own technical practice process.
Finally, developers need to be diligent in thinking, for example, what are the core business problems that technology solves? What are the business causes of these problems? Are there any business pain points that have not been considered and can be further enhanced? Only in this way can we truly start from the perspective of business and customers, and promote the improvement of our own technical capabilities from the outside to the inside. While cloud-native technology helps companies quickly implement business needs, it also forces corporate developers to have a business perspective, focus on business logic, and do things with more innovative value.
The era calls for cloud native. This is the best era for cloud native and the best era for developers. To make every developer a better version of himself, Alibaba Cloud is always on the way.
Click to download the cloud native developer insight white paper
https://developer.aliyun.com/special/native/developer
.jpg")
In order to provide cloud-native developers with a better stage for actual combat, this year’s second Cloud-Native Programming Challenge was officially launched, with escalated questions, coaching by big-names, challenging Serverless, extreme innovation, competing with global developers, and solving the reality with technology problem!
Click to register now to participate 👇
https://tianchi.aliyun.com/specials/promotion/cloudnative2021
Copyright Statement: content of this article is contributed spontaneously by Alibaba Cloud real-name registered users. The copyright belongs to the original author. The Alibaba Cloud Developer Community does not own its copyright and does not assume corresponding legal responsibilities. For specific rules, please refer to the "Alibaba Cloud Developer Community User Service Agreement" and the "Alibaba Cloud Developer Community Intellectual Property Protection Guidelines". If you find suspected plagiarism in this community, fill in the infringement complaint form to report it. Once verified, the community will immediately delete the suspected infringing content.
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。