当前位置:网站首页>Programmers may still be programmers, and coders may only be coders
Programmers may still be programmers, and coders may only be coders
2022-07-24 03:17:00 【Baijiafan privacy calculation】
Other Q & A platforms recommended me a question two days ago :
One Java Student's self statement , Very confused , What should I do now ?
After watching , Think of the problems I have been thinking about these two days , Just want to put some of the original ideas together to write an article .
First of all, I see some current situations :
- A large number of schools are teaching computer science , From Tsinghua 、 Peking University 、985、211 To junior college 、 instruction by correspondence 、 Bluebird training .
- There are a large number of IT company , Every city needs IT The company supports smart communities 、 Health code to smart city 、 Localization services such as intelligent government .
- New first tier cities IT Companies appear in large numbers , It turned out that programmers from Beijing, Shanghai, Guangzhou and Shenzhen supported the whole country IT Building , Now is the rise of a new front , The provincial capital city supports the whole province with integrated local companies .
in general , The industry of writing programs , You find it more and more common , He has become an ordinary occupation that is often seen in daily life , It turns out that a programmer may be a white-collar , Now it can be said clearly , It's a blue collar ( Except the giant ).
This is good , It shows that our society is becoming more and more modern , More is needed IT brace , But from the perspective of the industry , I think it is somewhat out of line with the development of the times .
For example, I ask a question , Your architecture office or CTO、 Architects , What documents are delivered to you ?
Detailed design ?ERD chart ? Or simply a brain map , A project explanation ? Or simply let the design draw , Develop your own assessment ?
Most companies , I guess the bosses who are really responsible for architecture or overall design , In fact, the delivery should not escape these things ?
This shows a question , Management of software industry , It's actually Guidance form Of , The main role of the middle and senior level to the lower level staff is to guide you how to work , Instead of participating in the process of work .
let me put it another way , In fact, the software industry is still apprenticeship , The consistent practice of traditional workshops .
A few years ago , As a small start-up company CTO, Do the same , I think it's reasonable to do so , I teach you to do work , Just study and do well .
Until I found that it didn't seem to work at all .
Because the programmers recruited , Basically, I only accepted the ordinary of school IT education (Java Program 、 Data structure and other tutorials that make college students confused ), Then I went to a training institution to study for a few days Spring frame , I can't understand the concept I mentioned at all .
Give me an example , Once a customer said that a super administrator should be set up in the administrator , Set our manager to a higher authority , I'll say Xiao Wang ( The programmer ), The customer said that an administrator level is not enough , You need to design multi-level administrators , Including administrators and super administrators , And then put xxx Set the permissions of to super administrator , Then my programmer wrote the following code in the program :
if (admin.Id == 43) {
admin.Role = "super"
}I said this 43 What is it , He said it was their boss's system ID ah .
I'm speechless , I criticized him severely , He is also very wronged , From the perspective of the project , He really achieved such a realistic goal , He thought there was nothing wrong , But I think , I clearly expressed several levels of things :1) Design multi-level administrators , Including administrators and super administrators ;2) hold xxx Set the permissions of to super administrator , How can you simplify it like this , Lead to this logic No scalability , Cannot deploy repeatedly Well .
This example is a little extreme , But this is generally the case in most R & D , Especially when outsourcing project research and development .
From the second year , I began to realize , Simple education doesn't work , I have to express some requirements with fixed meanings more clearly , Include :
1) Write a lot of documents , Any guidance work should be written as a guide , Written include 1)java The design requirements ,2) Backstage design requirements ,3) Database design requirements , for instance :
Don't use 0, perhaps “”、false Wait for the default value as normal
For example, a data has status Field , Indicate whether it can be used or not , For example, use non default values as normal , for example 1,“true”,true etc. , In order to avoid the process being considered a reasonable process without specifying this value due to the default value .
This requirement is not only required by the company , Customers often ask

Used in program 0 As a normal value, it is ancient c The old problems left by language programs , at that time , Often used 0 As normal , Use negative numbers as system exceptions , Positive numbers are usually used to represent business branches , This is because c Caused by the language pattern of , Any normal code of our company should no longer apply this logic .
2) I started in the program , Specify which code and who can change it in the form of comments , Who can't change , And the consequences after the change :
// This is the calling function of the underlying blockchain , Under no circumstances should you comment , Found once , Punish once
recorder.AddRecord(GetOwner(info1.getSfz(), "2"), LocalService.getKabaoCallerid(), s.getDataid(),
GetNowTime(),
output.get("code").toString());Start with this , In fact, it leads to my point of view today :
Future programmers will be clearly divided into programmers and coders , Programmers will be like technicians in factories , Drawing , Yard farmers are equivalent to factory workers , Only responsible for filling the specific logic code according to the drawing .
The existing The structure management system is no longer applicable , The architecture office was expanded into the Technology Department , The output extends from design specification to some kind of intelligent document , It can be extended to code , It can be rechecked , Collaboration is possible .
Other R & D personnel are gathered in the development department , Fill in the detail code , Personnel requirements are further reduced , It is likely that the flexible employment platform will occupy most of the personnel supply , On demand .
Some people may think that I am either alarmist , In fact, many state-owned enterprises have already done so , I only recruit core employees , A large number of people are sent to the site by the expatriate company . It's just that the intelligent and automated programs of the collaboration interface can't be standardized like the factory drawings .
This is the necessity of industry development , It is also the need of industry development , I don't want to talk about my industry as backward production capacity , But maybe he will be like this in the future .
边栏推荐
- Do the right thing, do it right
- Services et configurations FTP
- Ugui source code analysis - maskablegraphic
- Leetcode stack and queue questions
- Rules for generating 13 digit barcode EAN-13 Code: the thirteenth digit is the verification code obtained by calculating the first twelve digits.
- The first edition of Niuke brush question series (automorphic number, return the number of prime numbers less than N, and the first character only appears once)
- SkyWalking分布式系统应用程序性能监控工具-上
- The function of SIP account - tell you what is SIP line
- What is IMU?
- Lagrange polynomial
猜你喜欢

Secondary development of ArcGIS JS API -- loading national sky map

Ugui source code analysis - imaskable

C dynamic memory management details

A simple and perfect WPF management system framework source code

Services et configurations FTP

Babylon.js cool canvas background animation JS special effects

Customize the default width and height of kindeditor rich text

JS small game running bear and cat source code

The function of SIP account - tell you what is SIP line

Take you into the world of MySQL mvcc
随机推荐
uva11389
Industrial controller, do you really know your five insurances and one fund?
Symbol類型
CMT registration - Google Scholar ID, semantic scholar ID, and DBLP ID
Svn: e00002: can't convert string from 'UTF-8' to native encoding problem solving
SolidWorks cannot reference references
The next stop of data visualization platform | gifts from domestic open source data visualization datart "super iron powder"
How does the small program mall refine the operation of members?
Binary tree traversal
Ugui source code analysis - maskutilities
Ugui source code analysis - imaskable
关于Aries框架增删改查-查Demo
TCP data transmission and performance
Microsoft win11/10 package manager Winget will support the installation of applications from zip files
Water topic: connect rainwater
数据湖:Apache Hudi简介
JS 數組 isAarray() typeof
Binary search
Gpushare.com | 如何使用TensorBoardX可视化工具?
SSM based blog system [with background management]