[翻译]工作在IT这个行当里你应该知道的10个小秘密

本文揭示了IT行业中鲜为人知的十个秘密,包括高薪背后的代价、用户误解的责任归属、证书的价值等,这些秘密对于IT新手和老手都有着重要的启示。
部署运行你感兴趣的模型镜像

[翻译]工作在IT这个行当里你应该知道的10个小秘密

 

 本文的翻译转载自  外刊IT评论  

 

       如果你正准备投身到IT这行,或者你还是个IT新手,下面列出的很多"小秘密"也许会让你惊讶不已,因为我们通常不会大声的讨论它们。  如果你是个IT老手,这些所说的估计你大部分都遇到过,而且很有可能还有自己的心得 —当然,非常欢迎你花几秒钟的时间把你的所知道的其它小秘密添加到本文的讨论中。  大部分的这些秘密是针对网管,IT经理,以及桌面支持人员的。  它们不是针对开发人员和编程人员 —这些人有他们自己的一套小秘密 — 但我说的这些其实也可以放到他们身上。

10.) 做IT的相对于其它行业薪水较高,但正是因为待遇好,公司就会认为可以把你当奴隶般的使用

 尽 管不像2001-2002年间的点com风暴和IT大潮里那么夸张,现在的做IT的人仍然要比其它很多行业的人挣的多(至少那些只需要大专或本科学历的职 位里是这样的)。  各种证据显示在未来的十年里社会对IT人才仍然会保持大量的需求,因为科技在企业和社会里扮演的角色越来越重要。  然而,正因为IT职业人员是如此的昂贵,很多公司对待IT员工就像是对待包身工。  如果因为某些人会工作的很晚导致你晚上9点你还要必须回答技术支持问题,你会听到老板说,”这就是你的工作。“ 如果你在周末还需要加班6小时去部署一个软件更新包,以确保工作时间不宕机,你会得到,”因为既然你是带薪休假,就不会再有补休时间。  这就是我们花大价钱雇你的原因!“

9.) 用户出的荒唐可笑的错误的责任在你身上

 有 些用户在工作时受到挫折后会愤怒的向你咆哮。  他们会大叫,“怎么又出问题了?”或者“这个电脑又不工作了!”或者(我个人常遇到),“你对我的计算机究竟做了什么?”可实际原因是他们不小心把IE 浏览器的图标从桌面上删除了,或者脚不小心把鼠标的插头从机器上踢掉了,或者把咖啡撒在了键盘上。

8.) 每天你都会从替罪羊变成英雄,而后又变成替罪羊,而后又变成英雄的反复好几次

 当 你奇迹般的修复了一个问题,而这个问题已经让好几个员工被迫停工10分钟了 — 他们不知道修复这个问题是如此的简单 — 此时你就成了英雄,成了的大家最喜爱的员工。  但是一个小时后,由于网络堵塞不能打印时,他们会轻易的忘掉你的英雄事迹 — 此时你将会成为大家的头号敌人。  但是当这一天快要结束时,如果你告诉用户一些使用微软Outlook的小窍门,那么你的英雄的身份又回来了。

7.) 证书并不总能使人成为一个更好的技术专家,但却能帮助人找到一份更好的工作或者更高的薪酬

 猎 头公司和人资部门喜欢IT证书。  通过证书他们很容易能给空缺的职位找到相匹配的候选人。  同样,HR也可以简单的通过证书来排除一些候选人。  你也许听到了很多IT老手诉苦,抱怨那些凭证证书进入公司却没有工作能力的人。  他们说的基本上是对的。  这种现象很多地方都有。  但实际上证书能够打开你职业生涯的大门。  它体现了你对自己的人生有计划,有抱负,有求知受教育和扩展自己的技能的愿望。  如果你是一个有经验的IT从业人员,而且有各种证书来证明你的阅历,那么你会发现自己职场非常的受欢迎。  技术证书只是用来证明你基本技能很简单的方式,它可以给你做职业上的宣传。  然而,大部分的证书并不能用来证明你可以如此的胜任你的工作。

6.) 你的非技术专业的同事会把你当作他们的家庭电脑的私人技术支持顾问

 你 的同事(也包括你的朋友,家人和邻居)会把你当作他们的个人技术顾问,让你解决他们的家用电脑和家庭网络上的问题。  他们会给你发邮件,打电话,或者路过你的办公室时侯问你如何对付他们的家用电脑里的病毒,如何搞定上次停电后就不工作了的无线路由器,以及如何把照片和 视频传到网上让远在衣阿华州的爷爷能看到。  有些人甚至会提出把电脑搬到你的办公室让你来修。  客气的人会提出给你报酬,但很多人只是希望你给他们提供义务性的帮助。  帮助这些家伙们可能会有很多好处,但你必须要小心什么事情能帮,什么事情应该拒绝。 看一看TechRepublic的 “Ten ways to decline a request for free tech support .”会对你有些帮助。

5.) 当事情干的漂亮时,供应商和顾问们会把所有的赞扬都拿走,而当事情搞砸时,你成了罪人

 跟IT顾问打交道是我们工作中非常重要的一部分,也是一项非常有挑战性的事情。  顾问会提供合适的专家支持帮助你部署很专业的系统,当所有的事情正确运行时,你和顾问们的关系就是良好的合作伙伴。  但你要小心了。  当事情出了问题时,有些顾问会试图把责任都推给你,责备你,说他们的方案在其他案例里都工作的很好,一定是你本地的IT架构有问题。  相反,当项目非常成功时,就会站出来一些顾问身份的人把所有的荣誉都拿走,却无视你为定制和实现这个方案所做的实实在在的工作。

4.) 你需要花上大量的时间去维护老的技术架构,而事实上做个新的会更省事

 在 IT这个行当中,一提到“我们将会采用最新最前沿的技术”,无疑会成为对大家最有吸引力的事情之一。  然而,在大部分的IT工作中通常却不是这样。  实际情况是IT工作者典型的任务是花更多的时间去维护,料理,照看已经建成的系统,而不是实现新系统。  甚至那些一直研究最前沿最强大的技术方案的IT顾问们也仍然倾向于主要使用已建成的已证实技术解决方案。

3.) IT老员工经常会成为使用新技术的反对者

 有 很多公司实际上应该采用更多更前沿的技术。  如果升级或者替换掉他们的软件或基础架构可以省下大量的时间和金钱,而且提高生产率和利润。  然而,通常却是这样的一种情况,迁移到新的技术上的阻力不是预算上的限制,也不是管理层的反对,而是IT部门的资深老员工。   一旦系统建立起来,能跑能用,他们就拒绝去改变它。  这可以认为是真确的,因为他们的任务就是让那些基础架构稳定运行,但这也同样成了一种借口,从而拒绝接受新的东西,拒绝在新的技术领域里扩展自己的能 力。  他们变的懒惰,自满,自鸣得意。

2.) 一些IT专家采用某种技术的目的是为了巩固自己的势力,而不是出于对企业有帮助。

 另外一种很隐蔽的但是值得批评一下的事情是,有些IT工程师选择和使用的技术依赖于技术人员对这种技术的掌握情况,而不是这种技术是否是真的最适合这个 业务。  例如,IT工程师会选择某个需要特殊技能才能维护的技术路线,而不是选择一种很现成的解决方案。  或者,由于IT经理有过Linux/UNIX的背景经历,所以就会采用Linux-based的方案,反对基于Window的方案,即使采用 window平台的方案会更有利于项目。(或者,举个例子,一个Windows管理员很可能会把那些Linux-based的方案置之一边。)  他们会有很多的借口和理由为他们的行为做解释,但很多都是不坦白的。

1.)IT工程师不停的用一些专业术语来忽悠那些不懂技术的业务经理,以此掩盖他们把事情搞才一团糟的事实

所 有的IT人员 — 即使是最棒的员工 — 偶尔的也会把事情办遭.  这种事情一般会发生在很紧急的关头,而且要面对的系统是被搞的无比复杂而且很难入手。  然而,并不是所有的IT职员都擅长承认他们犯下的错误。  大部分人都会利用业务经理(甚至是高层技术经理们)不是很清楚具体技术细节的事实,当系统出问题或宕机时拿一些专业术语去忽悠他们(掩盖事实的真相)。  例如,向业务经理介绍为什么财务系统会宕机了3小时,技术人员会说,“我们在系统使用的SQL Server服务器上遇到了蓝屏。  该死的微软!”技术人员没有说出的真实情况是由于没有先在工作站服务器上测试就进行驱动更新导致了这次蓝屏。

 你觉得还有什么其它的关于在IT业工作的小秘密?欢迎加入讨论。

您可能感兴趣的与本文相关的镜像

Stable-Diffusion-3.5

Stable-Diffusion-3.5

图片生成
Stable-Diffusion

Stable Diffusion 3.5 (SD 3.5) 是由 Stability AI 推出的新一代文本到图像生成模型,相比 3.0 版本,它提升了图像质量、运行速度和硬件效率

【无人机】基于改进粒子群算法的无人机路径规划研究[和遗传算法、粒子群算法进行比较](Matlab代码实现)内容概要:本文围绕基于改进粒子群算法的无人机路径规划展开研究,重点探讨了在复杂环境中利用改进粒子群算法(PSO)实现无人机三维路径规划的方法,并将其与遗传算法(GA)、标准粒子群算法等传统优化算法进行对比分析。研究内容涵盖路径规划的多目标优化、避障策略、航路点约束以及算法收敛性和寻优能力的评估,所有实验均通过Matlab代码实现,提供了完整的仿真验证流程。文章还提到了多种智能优化算法在无人机路径规划中的应用比较,突出了改进PSO在收敛速度和全局寻优方面的优势。; 适合人群:具备一定Matlab编程基础和优化算法知识的研究生、科研人员及从事无人机路径规划、智能优化算法研究的相关技术人员。; 使用场景及目标:①用于无人机在复杂地形或动态环境下的三维路径规划仿真研究;②比较不同智能优化算法(如PSO、GA、蚁群算法、RRT等)在路径规划中的性能差异;③为多目标优化问题提供算法选型和改进思路。; 阅读建议:建议读者结合文中提供的Matlab代码进行实践操作,重点关注算法的参数设置、适应度函数设计及路径约束处理方式,同时可参考文中提到的多种算法对比思路,拓展到其他智能优化算法的研究与改进中。
<think>嗯,用户想知道如何在GDB中设置条件断点来监控变量,并在满足特定条件时暂停程序。首先,我需要回忆一下GDB的相关命令。根据之前看到的引用资料,用户提到过使用watch命令来监控变量变化,这属于数据断点。但用户的问题是关于条件断点的,可能需要结合break命令和条件表达式。 首先,条件断点通常是在某个代码位置设置断点,并附加一个条件。当程序执行到那且条件满足时才会暂停。比如,在某个函数内当变量值大于某个数时中断。这需要使用break命令加上条件参数。 然后,用户可能还想监控变量变化,这时候可能需要用watch命令。不过watch本身也可以加条件吗?或者是否需要结合使用watch和condition命令?例如,先设置一个观察点,然后添加条件。例如,watch var if var > 10,或者类似的结构。 另外,引用中提到的数据断点是通过watch来设置的,当变量被修改时触发。而条件断点可能是在普通断点的基础上加上条件判断。所以可能需要分开两种情况:一种是当变量被修改时暂停,并且满足某个条件;另一种是在特定位置暂停,当变量满足条件的时候。 比如,用户可能在循环中想要监控变量i,当i等于5时暂停,这可以用break line if i==5。或者,当变量x被修改,并且新值超过100时暂停,这时候可能需要先设置watch x,然后在触发时检查条件,但GDB是否支持在watch上直接加条件呢? 根据GDB的文档,watch命令本身是当变量被写入时触发,而如果要在变化时检查条件,可能需要使用条件表达式结合watch。例如,先设置watch点,然后使用condition命令来附加条件。或者,可能需要在watch之后,每次触发时自动检查条件,否则继续运行。 比如,假设用户想监控变量g_var,当它的值变为5时暂停。可以这样做: 1. 设置观察点:watch g_var 2. 然后为该观察点添加条件:condition <观察点编号> g_var == 5 这样,每次g_var被修改时,GDB会检查其值是否为5,如果是则暂停,否则继续。 另外,引用中的例子提到,设置数据断点后,程序会在变量变化时停止,而无需预测具体位置。这可能和条件断点结合使用,可以更精确地控制何时停止。 所以,总结步骤可能如下: 设置普通条件断点: - break location if condition 例如:break main.c:10 if x > 100 设置数据断点并添加条件: - watch var - condition 1 var == 5 (假设观察点编号是1) 另外,需要注意硬件断点的限制,因为watch可能依赖硬件支持,如果变量是局部变量或者作用域变化,可能需要使用rwatch或awatch,但具体情况可能需要进一步说明。 用户的问题可能涉及到这两种情况:在特定位置的条件断点,或者监控变量变化时的条件。需要分别说明这两种方法,并给出示例。 同时,可能需要提到使用info break查看断点信息,以及使用condition命令修改已有断点的条件。 另外,需要考虑条件表达式中的语法,比如使用==而不是=,逻辑运算符的使用等。 最后,可能需要提醒用户关于性能的问题,因为数据断点尤其是硬件断点可能会影响程序运行速度,特别是在监控大量变量或复杂条件时。</think>### GDB设置条件断点监控变量分步说明 #### 1. 设置普通条件断点 使用`break`命令在指定位置设置断点,并附加条件表达式: ```bash (gdb) break filename:行号 if 条件表达式 # 示例:在main.c第20行当x等于5时触发断点 (gdb) break main.c:20 if x == 5 ``` 当程序执行到该位置且满足条件时自动暂停[^2] #### 2. 设置数据断点并添加条件 使用`watch`命令监控变量变化,再通过`condition`命令添加额外条件: ```bash (gdb) watch g_var # 设置变量监视 (gdb) condition 1 g_var > 100 # 为1号观察点添加触发条件 ``` 此时变量`g_var`被修改且新值>100时才会暂停程序[^3] #### 3. 组合调试技巧 ```bash # 设置函数入口断点 (gdb) break main # 运行程序到入口 (gdb) run # 添加变量监视与条件 (gdb) watch *0x7fffffffe010 # 监控内存地址 (gdb) condition 2 $rax == 0 # 寄存器条件判断 ``` #### 4. 调试控制命令 ```bash info break # 查看所有断点信息 disable 2 # 临时禁用2号断点 enable 2 # 重新启用断点 delete 2 # 删除断点 ``` #### 5. 进阶用法 ```bash # 监控表达式变化 (gdb) watch (global_var & 0xFF00) != 0 # 设置单次触发断点 (gdb) tbreak function_name if arg1 == nullptr # 多条件组合 (gdb) break thread_func if (x>100) && (errno==EBUSY) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值