当前位置:网站首页>What work items do programmers hate most in their daily work?
What work items do programmers hate most in their daily work?
2022-07-07 04:39:00 【Blue92120】
What work items do programmers hate most in their daily work ?
There are good and bad sides to any job , Every field and profession has its advantages and disadvantages , Most of the time people only talk about the advantages and ignore the disadvantages , Sometimes the disadvantages outweigh the advantages .
As a profession, software development has shown explosive development in the past few years , With the popularization of introductory training and continuous cross industry penetration , Now is really a good time to be a developer . However , Behind the brilliance of software engineering, there is a less charming side . If you want to enter the software development industry like me , So you're investing a lot of time 、 Know some cruel truth before energy and money .
There are good and bad sides to any job , But what I want to say is if you have 70% Enjoy your work for the above time , So you have a great job . As far as I'm concerned , I love development work , But I still want to point out that 30% The annoying part , Those recurring problems are really devastating .
As time goes on, many problems will be exposed in any work , But in the field of software development, some problems always recur in my career . Next, let's talk about what developers hate most 5 thing :
One 、 Debug code problems that are not under your control
look for bug,bug A logic hidden in a line of code , Such as skipping a step or adjusting a wrong method . In all types of bug in , This can be located to a specific location through context debugging bug It is the best one to repair , Because we can find him and fix it . However, those introduced from third-party repositories bug Well ?
Debugging code that you cannot easily access as a developer is more challenging and disruptive . Maybe this is a library you introduced yourself , But because the library has been compressed or compiled, the readability is extremely poor . So if this library is open source , Is it worth celebrating ? Not always , And open source library bug Is often the most difficult to deal with . You need to spend extra time designing the environment to isolate and reproduce this bug, So you can send the problem to the owner of the open source library , And hope they can repair it according to your schedule .
Many teams have to face these problems , It can be alleviated by choosing open source projects or local solutions , But if you have no choice, you can only harden your scalp .
Two 、 Maintain an old project without any data
Suppose you are a well-trained 、 Experienced survival experts , Decided to participate in a reality show similar to living alone in the wilderness . You have invested thousands of hours in this field , Experts in this kind of work have many successful experiences . Unlike in the past, this season you will be randomly selected and put into an environment you don't know at all . According to experience, to survive successfully, you need to know where you are going , What is it like there? Maybe there are some successful methods ; You need to know why you need to bring something , How they are used , Maybe we should learn from some experienced partners ; You need to know what works , What is invalid , There may be some unique trading skills . however , This time it's different , You don't know the above information , This will challenge your skill limits to the greatest extent .
As a developer, I take over a new project without any background information , Without any colleagues who can ask questions, it is very similar to the upgraded version of living alone in the wilderness above . The problem of software development is that the path to solve the problem is diverse , The reason why people choose this scheme is systematic and deeply discussed . In a project without any background information or helpers , You may encounter many seemingly strange designs , And it's hard to understand why this design . Is it because developers are lazy ? It is also an alternative to catch up with the schedule ? Or because external constraints force such design and coding ? It's impossible to know , Everything drifted away like a floating cloud . However, as a developer, if you want to achieve success, you need to know how to complete the task in this situation .
Unfortunately, this kind of project will make many developers at a loss and breed disgust , This kind of project starts slowly, which is like blindly exploring minefields . This is why well styled code and up-to-date documentation are so important . If you are reading this article, whether you are already a developer or about to become a developer , Please try to document your code, especially those strange logic , In this way, when the next person takes over, whether you can provide answers or not, he will be easier to understand .
3、 ... and 、 People who don't understand give directions blindly
The main members of the software team include software developers 、 Project manager and product leader , Sometimes the project manager and the product owner are the same person , So in the final analysis, there are always two kinds of people, one is responsible for coding and implementation, and the other is responsible for conceiving the products they want . in the majority of cases , The latter will convene a meeting of stakeholders 、 Create a time schedule and sell the product to others .
The relationship between these two types of people is critical to the success of the project , Sometimes it's important for developers to have fun on the team . Most of the time , Developers are seen as " Code the agriculture ", Demand is pushed to them without thinking , There was not much discussion , Sometimes there are unrealistic deadline. These will cause the product to go online in a hurry , Unable to meet expectations , Eventually, the product fails , Because it doesn't run as smoothly as planned and often breaks down .
For developers, it is possible to find a team to work in harmony with the project manager or product owner , It is not only crucial to the success of the product, but also increases the fun of the work itself .
Four 、 Often interrupted and unable to concentrate
There are many great jobs that require the role of developer , Most developers also value their work . The most addictive part of being a developer is , It can quickly turn the flash of inspiration into reality through coding . Another amazing part can be described as " flow ", That is, deep working state , This is a completely immersive feeling that one experiences in the process of deep work and thinking . This is common in environments that require high productivity and innovation , alike , Many developers need this state to code efficiently .
However , In contemporary work, time can easily be temporarily arranged for meetings or round the clock consultations / Interrupted by a confused message . It's hard to get into a deep working state, but it's easy to be interrupted .
Besides , Software development is a highly individualistic work , This means that after you have been assigned tasks and expectations , Everything else is up to you . However , Due to constant news and meeting interruptions , It's hard to find enough time to get into and stay on the job to complete the task at hand . The key here is the uninterrupted time of the day , Because even if some small things cause you to switch work content, it will also cause losses and affect work efficiency .
It's best to find a period of uninterrupted time 3-4 Hours , Where you can be completely in shape and focus on your work . The day is full of meetings or worse , Meeting interval 30-45 minute , This is detrimental to the productivity of many developers .
5、 ... and 、 Impostor syndrome
For many programmers , Sooner or later, they will experience some degree of impersonation syndrome in their career . Maybe it's starting a new project, joining a new team, or just a sudden bad mood one day , It makes you doubt yourself and affects your working state all day .
Melim · Webers insists that impersonation syndrome is defined as : A state of mind , Also known as the tendency of self ability negation, specifically refers to “ Think you don't deserve the success or achievements you have achieved , Be skeptical of your abilities , Think you're a fake ” The state of .
This is a counterproductive state of mind , Some people often experience and are hard to get rid of , Some people never . But fortunately, many people in the software community say that they have experienced this feeling to varying degrees in their career , And willing to help others .
Software engineering is a great field , For many people, the scenery is boundless , It looks interesting and has endless opportunities . However , Every field and profession has its advantages and disadvantages , Most of the time people only talk about the advantages and ignore the disadvantages , To tell the truth, sometimes the disadvantages outweigh its advantages .
边栏推荐
- MySQL split method usage
- Kivy tutorial of setting the size and background of the form (tutorial includes source code)
- 高薪程序员&面试题精讲系列120之Redis集群原理你熟悉吗?如何保证Redis的高可用(上)?
- Digital chemical plants realize the coexistence of advantages of high quality, low cost and fast efficiency
- Have you got the same "artifact" of cross architecture development praised by various industry leaders?
- 《原动力 x 云原生正发声 降本增效大讲堂》第三讲——Kubernetes 集群利用率提升实践
- 架构实战训练营|课后作业|模块 6
- Vscode 如何使用内置浏览器?
- 过气光刻机也不能卖给中国!美国无理施压荷兰ASML,国产芯片再遭打压
- [on automation experience] the growth path of automated testing
猜你喜欢
[team learning] [phase 34] Baidu PaddlePaddle AI talent Creation Camp
mpf2_线性规划_CAPM_sharpe_Arbitrage Pricin_Inversion Gauss Jordan_Statsmodel_Pulp_pLU_Cholesky_QR_Jacobi
This "advanced" technology design 15 years ago makes CPU shine in AI reasoning
[team learning] [34 sessions] Alibaba cloud Tianchi online programming training camp
英特尔与信步科技共同打造机器视觉开发套件,协力推动工业智能化转型
案例大赏:英特尔携众多合作伙伴推动多领域AI产业创新发展
A detailed explanation of head pose estimation [collect good articles]
[ArcGIS tutorial] thematic map production - population density distribution map - population density analysis
What if the win11 screenshot key cannot be used? Solution to the failure of win11 screenshot key
视频融合云平台EasyCVR视频广场左侧栏列表样式优化
随机推荐
ACL2022 | 分解的元学习小样本命名实体识别
Video fusion cloud platform easycvr video Plaza left column list style optimization
[team learning] [34 sessions] Alibaba cloud Tianchi online programming training camp
What is CGI, IIS, and VPS "suggested collection"
[multi threading exercise] write a multi threading example of the producer consumer model.
九章云极DataCanvas公司摘获「第五届数字金融创新大赛」最高荣誉!
DFS和BFS概念及实践+acwing 842 排列数字(dfs) +acwing 844. 走迷宫(bfs)
On the 110th anniversary of Turing's birth, has the prediction of intelligent machine come true?
How to open win11 remote desktop connection? Five methods of win11 Remote Desktop Connection
[team learning] [34 issues] scratch (Level 2)
A detailed explanation of head pose estimation [collect good articles]
Golang compresses and decompresses zip files
The worse the AI performance, the higher the bonus? Doctor of New York University offered a reward for the task of making the big model perform poorly
The root file system of buildreoot prompts "depmod:applt not found"
leetcode 53. Maximum subarray maximum subarray sum (medium)
组织实战攻防演练的5个阶段
【实践出真理】import和require的引入方式真的和网上说的一样吗
[untitled]
EasyCVR平台接入RTMP协议,接口调用提示获取录像错误该如何解决?
Comment les tests de logiciels sont - ils effectués sur le site Web? Testez la stratégie!