㈠ 程序员的日常生活都是什么样的有哪些不为人知的地方
其实一直不知道为什么,大家都会觉得“程序员加班都很多”,“程序员都不爱干净,老不洗头”,“程序员穿的都很low”,“程序员都找不到对象”,最终得到的结论是。“程序猿的生活很枯燥”。
现在让你们看看真实情况。
㈡ 程序员最怕什么
程序员为什么容易脱发掉头发?近10年来互联网飞速发展,导致互联网的人才需求也日益增加,程序员更是因为成为各大互联网公司必争的人才资源,所以身价也水涨船高。网上曾经流传这么一条段子,找程序员做老公的3大理由。1.挣钱多,死得早。2.女同事少,出轨几率少。3.埋头苦干,任劳任怨。哈哈,虽然只是条段子,但是却在一定程度上反应了很多程序员的真实生活情况,而且在现实生活中程序员跟脱发人群也是有非常大的重叠部分,程序员为什么容易脱发掉头发呢?
1.程序员容易脱发掉头发是因为工作时间不规律:大家都知道程序员的工作强度一般比较大,而且很多小的公司因为程序员的工资太高而一般会选择压榨现有程序员的劳动力和工作时间。所以导致项目一上线,很多程序员就不得不24小时待命。而人体的新陈代谢时间是晚上11点到凌晨2点,这个点也恰恰是头发的生长时间点,不注意休息经常熬夜肯定也会导致头发生长不完全。
2.程序员容易脱发掉头发是因为精神长期高度集中:松柏大夫之前也有文章提到过长期的高度紧张状态会导致脱发的情况,因为人体的肾上腺素等压力激素长期居高不下,压力激素会把毛发的“资源”也一起集中在我们的大脑以便满足大脑高速运转的需要,所以毛发就会因为缺乏营养而变细、脱落。
3.程序员容易脱发掉头发是因为长期面对电脑、手机:电脑辐射不但会影响眼睛,对人体头发毛囊也会有一定的影响,辐射会对细胞有一定的“灭活”作用,所以说长期面对电脑对皮肤影响不好,而人体的头皮细胞是非常脆弱的。
㈢ 程序员不喜欢什么,在广州蓝景做开发的朋友说,他不喜欢加班改别人的bug,你们呢
程序员最讨厌不确定性。
Debug的时候,在怪异再棘手的问题,只要可以稳定重现,都迟早可以解决。“稳定重现”的意思是只要按一定的步骤做下来,问题就可以重演。
最讨厌的就是那种时有时没有,不知道什么时候出现的bug。改了代码不知道有没有效,也不知道是否引入了新问题。可以把码农逼疯。
引入到生活中对人对物的态度也是一个道理。无缘无故发脾气又不说为什么的女朋友,言而无信说到做不到的人,约好的事情被放鸽子... 这些都是不确定性。
程序员对不可控的不确定性因素也是有解决方案的。在代码里头把异常try-catch-finally一下,做好补救收尾,在加上几行注释警醒后来人这里别乱动。对随机发生的问题,对应方案就是假设这里永远都会有问题,把随机的行为转化为降格的确定行为。就比如随机发脾气的女朋友吧,就会放弃研究发脾气的原因,不求治本,而是假设她永远会发脾气,专注“哄”的工作也就是catch里面的内容。
㈣ 程序员的悲哀是什么
“码农”这个词,不管是不是从事IT工作的人,都略有耳闻。这个词的诞生无从考究,不知是程序员的自嘲,还是外行带有颜色的嘲讽。总之,对于这个词,我是既无奈又无力反驳。确实,工作中,我们大多数底层程序员每日做的工作相当于流水线的作业。
大部分程序员是悲哀的,不是情商、衣着、自黑之类,悲哀的是没有决策权。项目做成什么样,那是领导和产品经理的事;用什么技术框架,那是架构师的事;数据库的设计,业务那是项目经理和产品的事;而作为一个普普通通的底层码农,我们只需要拿到需求,然后等设计给图子,流水化的写出实现代码。我们只是一个执行者,别人叫你干啥就干啥。最后项目做坏了,裁员的是谁?程序员。
这就是一个普普通通的“码农”。读书那会,我的老师跟我说,“如果从业十年,你依旧在写最基础的代码,做一个码农,那么就不要做程序员了,转行吧”。现实中,每个公司存在最多的就是这些“码农”,那种掌握核心技术,产于项目设计,技术架构的毕竟是少数,大多数程序员都处于被动接受,按需求完成代码的任务。
做程序员越久,越是感到:我们就是新时代的手工艺者。只有少数的人,从手工艺者,变成了发明手工艺制作机器的人,少部分人变成了设计手工艺品的人,少部分人变成了车间主任罢了。
“码农”这个词有着深深地悲哀。
见过太多刚入行的菜鸟,像极了曾经那个满怀激情,梦想的自己。当第一次接触Java的面向对象思想时,那种兴奋,仿佛能用Java描述整个世界,仿佛自己就是上帝一般,在现实世界,创造出另一个虚拟世界。而现实中,一两年的流水化作业,冲淡了一切。
对于产品,仿佛是自己的孩子,从无到有,一点一滴,看着一个网站,产品,在自己的手下,满满长大,那种满足感,自豪感,油然而生,但是最后你希望它变得更优秀时,却发现它不受你控制,仿佛养了好几年的儿子,被人教唆去做坏事,你不能说任何话,因为抚养费不是你出的。
决定你有没有决策权的是你的纵向位置,也就是在本行业金字塔的位置,出类拔萃者说话就响。过惯了咸鱼生活,但谁又甘心做一个“码农”,我们希望发出自己的声音,成为那个有权利选择的人,这一切需要提高自己的技术,能力作为支持。在国外,程序员被称为程序设计师,而国内“码农”,区别可想而知。
㈤ 程序员的工作环境是怎样的
每个人职场人都希望在一个轻松、开心、干净、舒适的环境里面工作,这样心情好工作起来自然效率高,但是这毕竟是理想状态下的工作环境,当然现在绝大多数企业工作环境虽然达不到百分百,但至少有百分之六七十以上吧。
那么对于程序员这种有点特殊的工种工作环境又是怎么样的呢?
程序员又被人们称之为码农,也有人调侃戏称“程序猿”,程序员对工作环境往往需要有一张大的办公桌,他们不仅用一台电脑在工作,有时候需要几台电脑同时操作,而且遇到一些bug或者瓶颈的时候需要和同事协同工作,当然在硬件方面除了办公桌要大外,还需要配置比较高的电脑,毕竟这是程序员最基本的工作工具,试想如果刚有灵感,结果电脑卡顿或者死机了,那有可能灵感顿时就消失了,所以他们大多数工作环境都拥有足够大的办公桌和高配置的电脑。
前面就提到了程序员是有点特殊的工种,因为他们往往加班到很晚,时常会通宵,这就和我们正常上班的时间上错开了,他们往往白天睡觉,晚上工作,有时候为了打起精神工作,他们提神的方式各自不同,有抽烟的、有喝咖啡的、有听歌的等等,大家可以想象这是什么样的工作环境吗?但是程序员工作的时候,大多数情况下都需要安静的环境,毕竟安静能让人更好的思考问题。
每个人对工作环境要求都不一样,让自己觉得舒服的环境是自己愿意留在公司的原因之一吧,程序员也是一样的。
大公司的程序员,工作环境基本上就是一个电脑版的“衡水中学”,每天就是开会写代码改代码查代码开会继续循环往复,跟中学里每天就是拼命读书刷题刷题读书吃饭无味上厕所要跑一个样。
硬件配置无需你考虑,肯定是够你用。跟人的成本比起来,硬件就是个渣。
大公司的程序员工作比较稳定,每个人的分工是比较明确的,职业路径也很明晰,越往上的职位对智商的要求越高,这点和靠情商往上升的工作还真有点不一样。在程序员这个队伍里拍马屁搞关系基本没啥用,你写的代码都无需用户检验,自己一跑就知道成不成。这也是IT公司通常人际关系和氛围都比较轻松且简单直接的根本原因,特别适合那些不喜欢搞关系的同学去撸起袖子加油干。
如果你想在这个行业长期发展,智商一定要够用,真的。有没有基础倒在其次,如果数学好更佳。有些业内大咖本身是学数学或物理这些靠智商吃饭的学科的。
小公司的程序员,尤其是那些非IT类小公司里的程序员工作压力更大。面对不懂程序的销售和老板,还有极度贪心又不愿多付费的客户,需求三天两头变,界面是个人就可以提意见改,时间永远是“明天就要”。他们觉得程序员比悟空办法多,所以什么要求都提得出来。能在小公司做出成绩的程序员,真心让人敬佩不已。
小公司的程序员是掌握公司核心机密最多的人,比老板都掌握得多,所以通常他们的待遇也还过得去。另外他们一来二去把公司业务摸透了,出来自己干的也不少,当然能不能干成是另一回事。
其实程序员的工作环境真没什么要求,只要没什么干扰就行。学霸们在这里会找到十分熟悉的感觉,所以程序员之间以“同学”相称的极多。
我是2015年本科毕业的,但是2014年就开始工作了,从程序员+运营的工作开始实习(其实也是看最后哪一个更合适就走哪一个方向)。
对于实习阶段,因为当时待的是小公司,所以大家的配置都很一般。几个主力程序员加上我这个实习的,工作用的都是windows笔记本,联想的,除了我自己配的固态硬盘之外,很多都是机械硬盘在跑,没有特别明确的代码库规范、没有知识系统,交流全靠跑,有的是后端和前端一起干、前端和客服一起干,所以我兼职运营也是如此……平时要是不忙的话,那还没什么事儿,大家会闲聊扯淡,也算是其乐融融;但是要是忙起来,可能会突然加班到很晚——当然这种情况还是比较罕见的。
工作到了中型公司,跟以前的小公司就不在一个量级上了。这个时候主要的工作是后端开发,配置的电脑是联想的ThinkPad,但不是最高配那种,仍然没有固态硬盘,慢的要死。第一梯队的程序员配置有双显示器、机械键盘、mac。我的话配置的是外接显示器,座椅很一般,坐久了比较累。公司分工明确,办公室跨越两座楼,各个团队都有自己的办公室。有自己的wiki、定期站会、严格的代码规范、安全规范。一般情况下主要是在解决各种bug,或者开发新系统。偶尔流量高峰的时候,会加班到一两点,平常并不是特别忙,工作还是比较有序的。
其实想要招妹子进团队的,因为我们团队唯一的测试工程师长得真的一般,而且性格也很差……一个性格好长得好看的运营妹子真的能调动整个团队的气氛。
所以什么机械键盘、Mac、外接多少显示器、加多大固态硬盘、多好的人体工学座椅……这些都是假的,开发的团队里面有好看的妹子才真的是“好的开发环境”。
可以穿拖鞋?可以戴着耳机听着歌?配备两个显示器?身边总是围绕这MM端茶递水果?还是以上都不是,而是诗和远方?
程序员,一个高薪却严重亚 健康 的群体 。他们有着极客精神,疯狂coding的时候可以废寝忘食,但他们也追求精神自由,喜欢自由自在。对于这样一个群体,良好而又恰到好处的工作环境显得尤为重要。
1. 弹性上班制
常规企业的朝九晚五上班制度,说实话并不适合程序员一族,因为这种制度一定程度上扼杀了这个最需要差异性的群体的差异性,把程序员的Coding灵感等同于工厂流水线上机械手臂,希望按钮一按下,灵感发动,按钮再一按下,灵感结束。这是一种一厢情愿的想法。
所以对于高层次的程序员群体,请不要在作息时间上严格限制他们,因为他们不是装配工,有着独一无二的个体差异性,有着不同的思维G点,他们需要差异性的时间作息来调整自己的最佳状态,从而迸发激情和灵感。
2. 宽松的工作氛围
程序员群体讨厌管理,任何自上而下的所谓管理都容易引起程序员们的心理抵触,特别是那种死板的、指令式的管理模式,尤其让程序员们作呕。
程序员们希望自己做的事情是出于内心的意愿,那样他们就会干劲十足,而不是来自于经理计划文档中那条冷冰冰的文字,哪怕是他们心里意愿的和经理的计划本是同一件事。所以对于程序员群体的管理需要技巧,要化管理于无形,让他们感觉不到管理的痕迹,让他们感觉着做这些事情就是出自于他们自己的意愿。
总结来说就是让他们作为自己的管理者,而团队的管理者所要做就是培养他们这种自管理的能力。
适度的压力可以产生做事的动力,但长时间的持续的压力却是扼杀激情和创造力的罪魁祸首。压力会让程序员焦虑,同时也会造成低劣的设计和代码实现,因为交付的压力会让程序员对匆忙设计出来的方案妥协,而不会持续的优化找到最优方案。而一系列看似微不足道的缺陷设计集合到一起,就会形成让人意想不到的、不可控制的乱象。
所以,“快”不见得是好事,“慢”也不见得是坏事。
3. 鼓励参与开源项目
开源项目社区的欣欣向荣,是一朵盛开的奇葩,无论怎么赞誉都不为过。
一些着名的开源项目,例如Linux,Apahce, openssl等等,数不胜数的优秀设计,给我们带来了多少的惊喜,同时也催生了多少的商业公司。
参与到开源项目中,是一个程序员从初级走向高级、完善技术的最有效途径之一。一些着名的开源项目,架构设计和Coding技巧上都属上乘之作, 浸淫其中,受益匪浅。
其实以上三点不仅是对程序员群体,对任何一个职业的人来说都是适用的。再看下知乎上程序员们理想中的工作环境是怎样的。
@萧井陌:我读书的时候就有一个执念,一定要找一家可以穿拖鞋背心大裤衩上班的公司(当然我不穿大裤衩),如果我找不到这样的公司,说明我学得不好,所以我一直以来努力的目标似乎只是为了进一个能穿拖鞋的公司?哈哈哈哈。。。
@知乎用户:我只想要2个显示器
@知乎用户:1.安静,没有人随便喊你或者在你耳边说话;2.绝对的自由,程序员都有一定的怪癖,比如我喜欢听着摇滚乐写代码。这些都要被允许。3.温度,气味舒适的环境。
4.有个养眼的MM同事,大概是这样的
嘿,箭头方向那个哥们才是真正的程序员吧
5.独立10M光钎线
@Indream Luo,软件工程师:1.女多男少,人均年龄不到27;2.身处白云山上,与广东外语外贸大学一墙之隔;3.无边界文化,有问题可以找任何人沟通,包括高层,如果你见得到;4. 健康 文化,加班有补休,提倡8小时,自建食堂和农场,买下巴马泉眼特供矿泉水
@石磊
硬件:
1. 顶配的 MacBook Pro。
2. 上厕所不需要排队。
与人相关:
1. 不会在开发到一半时被通知要重新讨论功能,然后把以前做的东西全部推翻。
2. 没有不必要的会议,必要的会议速战速决。
3. 行政人事什么的做事清爽高效,这样不用在各种日常手续上浪费时间,只管写代码就好。
4. 同事们效率高、工作态度严肃、善于沟通、活泼有趣。
@张英锋:最理想的工作环境应该是能帮助团队沉下心来,开发出最好产品的环境。
1.上级对程序员工作的认可和尊重;
2.对所作的工作有自主权和决定权;
3.营造能让程序员专注于工作的设施,比如大家都提到的安静、以及各种提高生产率的硬件条件;
4.最后是公司是盈利的,最好是暴利,能持续提供更多福利。
@庄生:其实最重要的工作环境,还是有一帮靠谱的同事,真心的。可以术业有专攻,但是该你负责的你负责到底,保质保量,不要麻烦别人。
那你呢?你希望你的工作环境是怎样的?
上联:一个项目两部电脑三餐盒饭只为四千工资搞得五脏俱损六神无主仍然七点起床八点开会处理九个漏洞十分辛苦 ;
下联:十年编码九年加班八面无光忙的七窍生烟到头六亲不认五体投地依旧四肢酸软三更加班只为二个臭钱一生孤苦;
横批:苦逼程序员。
程序员飘过
作为一名程序员的我可以很负责任的说:是的,工作环境就像问主图片那样,可能会稍微好点,我们公司都是中央空调,不用电风扇!
我在程序员的岗位上也有好几年了,也待过几家公司,其实就工作环境来说,程序员的工作环境还是不错的,不用风吹日晒雨淋,而且是冬暖夏凉!和人们眼中的白领工作人员的工作环境是差不多的。
工作氛围其实也是很好的,程序员在穿着方面大部分公司是没有什么太大要求,可以穿着自己喜欢的风格(脑补一下大裤衩配凉拖的程序员正在撸代码),同事之间的交流也是很活跃的,所以程序员的苦逼之处不在工作环境,而是工作内容和压力。
程序员分工:
1.纯软件工程师,就是只靠电脑吃饭的,设计包括但不仅限于---网页、架构、UI、数据、运维、系统等等,整天与代码打交道;
2.Firmware(分位)工程师,半软半硬的工种,要焊板,要搭建环境,还要写代码维护代码,算法可能没有纯软件工程师牛,但动手能力绝对强,涉及的知识面可能更广。
本人就是后者,来看下我的桌面:
各个公司对于办公环境都不一样,国外都注重个人隐私,很多都是一个人一个封闭的房间。国内大部分就像图中所示那样,半隔开。也有 科技 公司,鼓励大家敏捷开发,多沟通,开方式办公
请忽略那些包含“安静,优美,闲逸的办公环境”的答案吧!
图中的环境,只是正常普通公司的工作环境。
不一定是程序员的。
程序员的工作环境,因工作内容,导致需要很多屏幕。
而且电脑配置也需要很高。
每个人因面对的公司、自身能力等因素,都会导致工作环境的不一样。
所以就有了工作环境好坏的区分。
如果你曾对着大海构思过某个接口,
在樱花飘落的院落里调试过代码,
那么你还觉得在写字间喝着咖啡对着三屏显示器敲键盘是理想的环境吗?
工作环境,还是得靠自己改变。
在程序者的不断追求下,编程是可以和写作一样成为艺术创造过程,
那么任何一个能够激发出你灵感的时刻和环境都应该可以成为你的办公环境。
资深码农应邀回答这个问题。笼统来说,程序员的工作环境与图中展现的差别不大。但根据工作属性和所属行业来讲,还是有一些区别。
甲方和乙方的区别
我在刚毕业时进入了一家软件外包公司,几乎所有的工作都是在甲方所在地完成的。
因为甲方员工是公司的稳定员工,所以工位来讲就要精致一些,配备也要完善一些。一般都会是隔间,有抽屉、插座、文件架、座机、台式电脑,甚至还有床等等。
而我们作为乙方因为流动性大,人数也不固定,甲方公司不太可能为我们准备这些精致的办公位,一般只是拉几张桌子拼凑起来,然后再接几个线板,有时候靠椅都没有,还得坐独凳。
技术驱动和业务驱动的区别
现在任何一个互联网公司,技术部门是必不可少的。但是有的公司会以业务为驱动,有的公司会以技术驱动业务。
以业务为驱动的公司就会优先考虑业务的发展,然后技术来辅助实现。我现在所在的就是这样一家公司,这样的公司技术部门就会非常的小,人员也会很少。这样的公司程序员的工位大体上和整个公司的风格没有太大的区别,因为人少,一般只有5-6个人,做技术的也喜欢安静,所以一般位置会选择靠近办公室的角落。
以技术为驱动的公司会依靠自身技术实力结合行业发展,碰撞出一些具有竞争力的业务品种,并与业务部门配合来实现并推广产品。这样的公司技术人员起码占到50%以上,这样的公司更有可能为程序员规划一个单独的大办公室,与外界隔离。一方面是为技术人员提供安静、舒适的办公环境,另一方面也是尽量避免闲杂人等进出公司技术核心所在地。
以技术为驱动的公司往往技术实力比较突出,所以他们会为自己的技术团队配备“驾驶舱”、小机房等设施。
就问题中的格子间来讲,不管是什么性质的公司,只要场地不是特别的拥挤,都会设计成格子间,这样既保护了员工隐私也充分利用了办公场地的空间。这并不是程序员特有的风格。
㈥ 为什么程序员都喜欢说脏话
程序员每天压力很大的,一天大部分时间对的就是电脑,遇到让人心烦或者懊恼的事情,有些脏话就是程序员发泄的时候不小心就说出去了,又没有人监管久而久之就变成习惯了。我高中同学就是一名优秀的程序员,也同样说,普通人都说就不要过多的关注程序员这点了吧。
㈦ 程序员的代码洁癖在什么情况下是一种恶习
当你把【代码清洁】当作目的时,就是恶习了。为什么会存在代码洁癖,究其根本,是我们对“维护代码”这种让人抓狂的事情的实际需求,让我们越来越注意到清洁的重要。比如说 1 == a 这个,如果从来没有把 a == 1 写错成过 a = 1 导致你调式很长时间过,恐怕这个人能难把这个纳入到他的洁癖范畴内,即使他对空格的使用要求近乎苛刻。在我的圈子里面,一直有很多搞单片机的的。这些人主业是做电子甚至是机械的,当需要一个控制器的时候,会用单片机写一些非常小的程序来实现控制。我发现在这个圈子里面,就几乎没有代码洁癖的人,别说洁癖了,代码的基本清洁都看不到,即使这个人在做电路板的时候一板一眼。为什么?因为没有需求,代码本身长度都很小,而且都是写过无数遍的基本套路,甚至大段大段的代码都是用辅助工具直接生成的;这些代码对他们来说,多乱都很难写错,并切,最重要的,这些代码几乎都不需要维护,因为功能简单,程序就是可以做到没有BUG,需要升级的时候也很少。混乱的代码,于他们的工作效率,几乎没有什么影响;相反,由于开发环境难以想象的简陋,整理代码会浪费他们大量时间。既然代码洁癖是由需求引起的,那么我们来反思一个问题:我们做的和我们需要的一致么?其实问题问出来的时候,相信大家有答案了,既然用到了“洁癖”,肯定代表“做多了”,《编程之道》这本故事书里面有个有趣的小故事:一个初学者被要求编写一个财务软件。他疯狂地工作了很多天,但他的主管检视他的程序时发现,它写了一个编辑嚣,一个图形程序集,和人工智能的界面,但是看不到任何跟财务有关的东西。主管要求解释时,程序员被激怒了:你太没耐心了,我会在最后写财务的部分。这就是一个典型程序员在干的事情,所有的优秀程序员都要经历这样的阶段,过度设计、过度优化、过度使用技巧等等等等,因为我们就是这样的群体,对这些的追求就是我们学习编程提高自己的动力,所以我们必然会经历这样的事情
㈧ 怎么样防止程序员自己盗用数据库资料
你都给人家导入数据的权限了,相信人家吧
用人不疑,疑人不用。
技术手段是有,不值得用。