网页
资讯
视频
图片
知道
文库
贴吧
地图
采购
进入贴吧
全吧搜索
吧内搜索
搜贴
搜人
进吧
搜标签
日
一
二
三
四
五
六
签到排名:今日本吧第
个签到,
本吧因你更精彩,明天继续来努力!
本吧签到人数:0
一键签到
成为超级会员,使用一键签到
一键签到
本月漏签
0
次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行
补签
。
连续签到:
天 累计签到:
天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
06月07日
漏签
0
天
达内吧
关注:
290,464
贴子:
509,084
看贴
图片
吧主推荐
视频
游戏
11
回复贴,共
1
页
<<返回达内吧
>0< 加载中...
做 40 年程序员是一种什么体验?他给出了 这些建议……
只看楼主
收藏
回复
Tarena
吧主
13
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
干了40年程序员,是一种什么体验?
Tarena
吧主
13
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
一位从1984年就开始当程序员的老哥出来“现身说法”了。
他总结了自己从业近40年的经验汇集成了建议,希望能给想长期做程序员的新手们提供一些帮助。
文章一发布,就在reddit、推特上引发讨论,许多程序员也纷纷跟帖附议,有网友就表示:不能同意更多!
Tarena
吧主
13
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
作为一名资深的软件开发者,他一直活跃在开发一线。
但与想象中不同,这次他并没有介绍要学习什么语言或框架,而是指出了一些他认为比技术更重要的事。
Tarena
吧主
13
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
1. 几岁开始都不晚
大约一年前,也就是45岁时,我才开始学习弹钢琴。这一年我觉得自己一直在进步,我相信如果坚持下去,到60岁时我一定会非常棒。
学习编程也是一样,当你已经有了一些其他领域的背景时,你学习编程就会变得很快。
相信我,如果你从50岁开始做程序员,10年后,也就是你60岁时,肯定会比我18岁的水平好得多。
我遇到过很多优秀的程序员,他们都是在20岁、30岁甚至40岁才入行,所以我不知道你为什么不能从50、60岁开始。这一行需要时间和工作,但你不必非得年轻。
Tarena
吧主
13
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
2. 多尝试不同类型的编程
如果你刚刚入行,并且想长期从事编程行业,我的建议是:要多写一些软件,任何软件、写什么都无所谓。
在我干程序员的40年里,很多潮流来来去去。可以说,让自己多尝试不同的类型的编程很重要。
这可以使你思想不会变僵硬,而且事实证明,几乎任何一种规则都能教会你一些东西。
如果你太拘泥于某一项单独的任务,就很可能会失败。
Tarena
吧主
13
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
3. 不要怕回报慢
不要觉得自己正在学习的东西是无用的,因为无用只是相对的。
我曾经把多年的业余时间投入到一种叫做DGD的旧MUD编程语言中。这当然不是为了实用价值,因为几乎所有关于它的东西都是奇怪的和不标准的,很少有真正能应用的。但它教会了我很多,它教会了我Ruby on Rails后来应用的东西,它教会了我如何使用数据库编程,它还教会了我一些在后来学的5、6种语言中都能用上的东西。
有趣的是,多年后我在DGD找到了一份咨询工作。这世界上还没有多少DGD的工作,但我有一个!这比我学过的许多“实用”语言更实用。
就像我经常对自己说的:“现在还早。”你可以多学习一些有趣或有用的东西,即使可能十年、二十或三十年后才有回报。不要总是选择18个月后就会变好的东西,因为你无法预见未来会发生什么。
Tarena
吧主
13
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
4. 找到工作对你的吸引点
你开始写代码一定是因为它的某些方面吸引了你,你要做的是试着弄清楚那是什么。这个答案每一个人都不一样,对于我来说,我喜欢写代码给我带来的成就感和聪明的感觉。
只有在工作中找到足够吸引你的点,才能长期坚持下去。
如果你感觉不到任何被吸引的点,那你可能需要休个假,或重新寻找你喜欢的东西,因为这样的工作只会让你精疲力竭。
Tarena
吧主
13
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
5. 这不是短跑或马拉松,这是写日记
如果你是个新手,很可能在下定决心“我要成为一名程序员”后,列出一个详细的计划,计划中可能包含8个大点、56个小点等等。
我不会告诉你不要这么激动,但我要说:不要把这个计划太当真。因为你不可能通过计算和计划来完成所有的事情。
在某些时候,你并没有“脱离你设定的任务”,你只是“过着自己的生活”。这不是失败,也不是放弃。你无法预测什么是有价值的,所以你应该学习所有的东西。我的经验就是:你活得越久,工作得越好,你就越能意识到每件事(每个人)都能教给你有用的东西。
你不是在跑短跑或马拉松。相反,这就像是在写日记。
十年后,你会翻看这本日记,然后说,“哇,我做了一些很酷的事情”或者“嗯,我是个很有趣的人”,但我想你应该不会在日记上写“我非常擅长Java”。
Tarena
吧主
13
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
6. 不要混淆工作和职业
不要把工作和职业混为一谈,它们不是一回事。
对于我来说,编写软件是一项非常棒的工作,但只是一个还行或者可以更好的职业。
在接受别人的建议时,也要注意对方提到的是关于工作的建议,还是关于这份职业的建议,如果你把两者混淆,这个建议就没有多大意义了。
Tarena
吧主
13
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
7. 学习顺序并不重要
在刚入门的时候,你往往会得到关于首先学习什么语言或技术的不同建议,但这其实不重要。
如果你没有按老规矩走,而是开创了自己的道路,那并不意味着你没有做好基础工作,也不意味着你就很糟糕。因为如果某件事真的很重要,你迟早都会发现,并重新去学它。
Tarena
吧主
13
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
8. 你越优秀,就越和别人不一样
早期的程序员职业培训(例如博客文章、大学课程、书籍)就像流水线,试图培养你在每一个方面的基本能力。
而且新手很容易误认为,一个首席工程师需要点满很多技能、每个技能水平也必须很高,但事实并非如此。你可以通过编写一段相当简单的代码并详细地描述它,就像Patrick McKenzie在《Bingo Card Creator》中做的那样,也可以通过写一些真正有利可图的东西来获得尊重。
除了基本的能力之外,这些道路几乎没有任何共同之处。
Tarena
吧主
13
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
这也是为什么当你求职时问这样的问题是很蠢的:“我是一名有15年工作经验的软件工程师,通常的薪水是多少?”
15年是如此之久,以至于你应该形成了与其他人不同的优势之处。你写过书吗?从事过赚钱的大型项目吗?整合过一个有趣的开源项目吗?这15年你做了什么?
当然,这也不仅仅是工资的问题。你可以问:“我是一个有15年经验的软件工程师,这意味着我有能力领导这个项目,对吗?” 答案当然是“可能”。接下来的问题是“那在15年里你做了什么?”
登录百度账号
扫二维码下载贴吧客户端
下载贴吧APP
看高清直播、视频!
贴吧页面意见反馈
违规贴吧举报反馈通道
贴吧违规信息处理公示