导航:首页 > 软件知识 > 程序员是怎么样炼成的

程序员是怎么样炼成的

发布时间:2024-09-07 08:46:16

A. 什么是屎山代码

屎山代码,通常是指新员工看到老员工写的代码,感觉不好,又多,仿佛像看到了一坨屎。

屎山代码,即是祖传代码,是指一个公司里祖传的“古董级代码”,因为使用时间较长,数量已经很多了。

因为在系统的使用过程中,需要维护系统和不断添加新的功能,故使用时间长的系统的代码往往会很多。曾有程序员表示:改老代码,就相当于去爬一座屎山,等爬到山顶,自己又留下一滩新的屎!

不要轻易修改“屎山代码”,存在即合理,可以正常运行就不要去修改,否则可能会导致代码的运行出现问题。

屎山代码炼成的原因:

屎山代码一直都是被软件行业的大多数人诟病。它是指堆积在一起没有规律的都不想去看的一堆代码。这些代码能运行,却不能迭代,效率不高,却又不能舍弃,所以形成了你不得不关注的内容。本人是一名有着代码洁癖的开发人员,从入行第一天只要看见任何不好的代码都会想去优化掉。

项目初期没有架构规划,缺乏架构设计,包括业务架构和技术架构(不考虑业务架构的技术架构设计最终都会演变成扯淡)。

B. 黑客是怎样炼成的

----什么是黑客?

Jargon File中对“黑客”一词给出了很多个定义,大部分定义都涉及高超的编程技术,强烈的解决问题和克服限制的欲望。如果你想知道如何成为一名黑客,那么好,只有两方面是重要的。(态度和技术)

长久以来,存在一个专家级程序员和网络高手的共享文化社群,其历史可以追溯到几十年前第一台分时共享的小型机和最早的ARPAnet实验时期。 这个文化的参与者们创造了“黑客”这个词。 黑客们建起了Internet。黑客们使Unix操作系统成为今天这个样子。黑客们搭起了Usenet。黑客们让WWW正常运转。如果你是这个文化的一部分,如果你已经为它作了些贡献,而且圈内的其他人也知道你是谁并称你为一个黑客,那么你就是一名黑客。

黑客精神并不仅仅局限于软件黑客文化圈中。有些人同样以黑客态度对待其它事情如电子和音乐---事实上,你可以在任何较高级别的科学和艺术中发现它。软件黑客们识别出这些在其他领域同类并把他们也称作黑客---有人宣称黑客实际上是独立于他们工作领域的。 但在本文中,我们将注意力集中在软件黑客的技术和态度,以及发明了“黑客”一词的哪个共享文化传统之上。

另外还有一群人,他们大声嚷嚷着自己是黑客 导噬纤 侨床皇恰K 鞘且恍┬钜馄苹导扑慊 偷缁跋低车娜耍ǘ嗍 乔啻浩诘纳倌辏 U嬲 暮诳桶颜庑┤私凶觥昂Э汀?cracker),并不屑与之为伍。多数真正的黑客认为骇客们是些不负责任的懒家伙,还没什么大本事。专门以破坏别人安全为目的的行为并不能使你成为一名黑客, 正如拿根铁丝能打开汽车并不能使你成为一个汽车工程师。不幸的是,很多记者和作家往往错把“骇客”当成黑客;这种做法激怒真正的黑客。

根本的区别是:黑客们建设,而骇客们破坏。

如果你想成为一名黑客,继续读下去。如果你想做一个骇客,去读 alt.2600 新闻组,并在发现你并不像自己想象的那么聪明的时候去坐5到10次监狱。 关于骇客,我只想说这么多。

---黑客的态度

黑客们解决问题,建设事物,信仰自由和双向的帮助,人人为我, 我为人人。

要想被认为是一名黑客,你的行为必须显示出你已经具备了这种态度。要想做的好象你具备这种态度,你就不得不真的具备这种态度。但是如果你想靠培养黑客态度在黑客文化中得到承认,那就大错特错了。因为成为具备这些特质的这种人对你自己非常重要,有助于你学习,并给你提供源源不断的活力。同所有有创造性的艺术一样,成为大师的最有效方法就是模仿大师的精神---不是仅从理智上,更要从感情上进行模仿。

So,如果你想做一名黑客,请重复以下事情直到你相信它们:

1、这世界充满待解决的迷人问题

做一名黑客有很多乐趣,但却是些要费很多气力方能得到的乐趣。 这些努力需要动力。成功的运动员从健壮体魄,挑战自我极限中汲取动力。同样,做黑客,你必须
要有从解决问题,磨练技术,锻炼智力中得到基本的热望。如果你还不是这类人又想做黑客,你就要设法成为这样的人。否则你会发现,你的黑客热情会被其他诱惑无情地吞噬掉---如金钱、性和社会上的虚名。

(同样你必须对你自己的学习能力建立信心---相信尽管你对某问题所知不多,但如果你一点一点地学习、试探,你最终会掌握并解决它。)

2、一个问题不应该被解决两次

聪明的脑瓜是宝贵的,有限的资源。当这个世界还充满其他有待解决的有趣问题之时,他们不应该被浪费在重新发明轮子这些事情上。 作为一名黑客,你必须相信其他黑客的思考时间是宝贵的---因此共享信息,解决问题并发布结果给其他黑客几乎是一种道义,这样其他人就可以去解决新问题而不是重复地对付旧问题。

(你不必认为你一定要把你的发明创造公布出去,但这样做的黑客是赢得大家尊敬最多的人。卖些钱来给自己养家糊口,买房买车买计算机甚至发大财和黑客价值也是相容的,只要你别忘记你还是个黑客。)

3、无聊和乏味的工作是罪恶

黑客们应该从来不会被愚蠢的重复性劳动所困扰,因为当这种事情发生时就意味着他们没有在做只有他们才能做的事情---解决新问题。这样的浪费伤害每一个人。因此,无聊和乏味的工作不仅仅是令人不舒服而已,它们是极大的犯罪。 要想做的象个黑客,你必须完全相信这点并尽可能多地将乏味的工作自动化,不仅为你自己,也为了其他人(尤其是其他黑客们)。

(对此有一个明显的例外。黑客们有时也做一些重复性的枯燥工作以进行“脑力休息”,或是为练熟了某个技巧,或是获得一些除此无法获得的经验。但这是他自己的选择---有脑子的人不应该被迫做无聊的活儿。)

4、自由就是好

黑客们是天生的反权威主义者。任何能向你发命令的人会迫使你停止解决令你着迷的问题,同时,按照权威的一般思路,他通常会给出一些极其愚昧的理由。因此,不论何时何地,任何权威,只要他压迫你或其他黑客,就要和他斗到底。

(这并非说任何权力都不必要。儿童需要监护,罪犯也要被看管起来。 如果服从命令得到某种东西比起用其他方式得到它更节约时间,黑客会同意接受某种形式的权威。但这是一个有限的、特意的交易;权力想要的那种个人服从不是你的给予,而是无条件的服从。)

权力喜爱审查和保密。他们不信任自愿的合作和信息共享---他们只喜欢由他们控制的合作。因此,要想做的象个黑客,你得对审查、保密,以及使用武力或欺骗去压迫人们的做法有一种本能的反感和敌意。

5、态度不能替代能力

要做一名黑客,你必须培养起这些态度。但只具备这些态度并不能使你成为一名黑客,就象这并不能使你成为一个运动健将和摇滚明星一样。成为一名黑客需要花费智力,实践,奉献和辛苦。

因此,你必须学会不相信态度,并尊重各种各样的能力。黑客们不会为那些故意装模做样的人浪费时间,但他们却非常尊重能力---尤其是做黑客的能力,不过任何能力总归是好的。具备很少人才能掌握的技术方面的能力尤其为好,而具备那些涉及脑力、技巧和聚精会神的能力为最好。

如果你尊敬能力,你会享受提高自己能力的乐趣---辛苦的工作和奉献会变成一种高度娱乐而非贱役。 要想成为一名黑客,这一点非常重要。

C. 程序员如何提高自己的工作效率

程序员如何提高自己的工作效率?程序员要在IT界混出个名堂,也要有高效的工作效率才行。下面我为大家整理了程序员提高工作效率的办法,欢迎大家阅读参考!

程序员如何提高工作效率

1)键盘功底要扎实

敲键盘时要使用标准指法。可能你认为这是程序员的基本功,可是我发现其实很多程序员都做不到这点。看着他们敲代码时那笨拙的指法我就心急。其实炼成标准指法不难,相当年我还是一指禅,打字极慢,痛定思定,在一周内我打字必用标准指法,再别扭也要坚持,一周后就适应了标准指法了。现在不说运指如飞也算是略有小成。练习指法和键盘速度可以给大家推荐一些网站:http://10fastfingers.com/typing-test/english,这个就是练习标准指法的,我可以轻松上60 WPM(每分钟60单词),有个外国同事可以达到130以上,那才叫恐怖。http://typing.io/lessons,专门供程序员练习敲代码的网站,融合了各种括号和标点,难度有点大。

2)要熟悉IDE的各种快捷键及特性

IDE基本上是码农们上班中使用时间最长的软件。首先要选择一个趁手的IDE,俗话说,工玉成其事,必先利其器嘛。如果是C#阵营的那肯定是最新版的Vistual Studio了,如果是Java阵营的话当然是Intellij了(eclipse作为开源IDE,真心比不过Intellij)。我现在使用Intellij可以在95%的情况下不用鼠标,全键盘完成开发过程中的大部分操作。我觉得没有什么常用快捷键、不常用快捷键之分,只要你知道的快捷键就要拿来用。

尤其是各种重构快捷键必须要熟练掌握,当我看到码农修改变量名时不用重构快捷键,而是自己手动在引用的地方一个个改,然后编译查错时,真为他们捉急。还有各种inline,introce的快捷键真是好用到爆,掌握了这些快捷键可以说对代码进行任何重构都不费除灰之力,我们的注意力也从手动修改代码转移到如何发现坏味道了。Vistual Studio中推荐安装ReSharper,其开发公司与Intellij开发公司是同一家。除了重构快捷键,还要掌握一些IDE的特性,比如调试时可以插入指定条件来命中断点等,这些就要平时的积累和学习,另外还有好奇心。我敢说你现在挨个看IDE菜单,至少有30%功能你从没用过或不知道是干什么用的,其实里面有些功能是非常实用的,只是你没尝试而已。

3)至少熟练掌握一种shell终端

作为程序员老用图形化界面咋行,要用那种古老的命令行界面才能显示出你的高深嘛!鼠标点界面谁都会,而命令行界面不是谁都能驾驭。有些功能在命令行下要比图形界面下高效N倍。比如我使用git提交文件时都是在命令行下查看哪些文件被修改了,哪些是新添加的,修改的部分是哪些等。

使用图形化界面要用鼠标点来点去,效率实在太低。Linux系统下的终端太多了,就不推荐了。Mac系统下推荐使用iTerm2这个壳,其比MAC自带的terminal多了不少实用的特性,也能方便切换自己喜欢的配色。Windows下当然首推Windows Power Shell了。Windows Power Shell本身集成了常用的实用工具,并且与.net framework无缝结合,这点是那些在Windows上的类Linux模拟器(比如Cygwin)是远远比不了的。

4)具有一定编写shell脚本的功底

光会用现有的`脚本还不行,还要会根据情况编写脚本来实现自己特定的一些目标。比如我使用MAC机上的终端时,经常需要在不同目录间跳来跳去,每次都打一串的cd …..很麻烦,后来我就自己写了一个小工具,可以给指定的目录起别名,想要跳到这个目录只要敲别名即可(参见 http://www.huangbowen.net/blog/2013/02/16/gtshell/)。

还有我在Windows系统上工作时,也经常编写一些Power Shell脚本,比如一个命令就启动指定的FTP服务器,一些小命令用来实现快速在不同项目源码间切换并执行构建命令等。这些命令编写起来都很简单,在提高工作效率方面很好帮助,因为一些常用的费时的操作每天重复N次,让人很厌烦,如果能够使用脚本将其自动化起来,岂不是就把自己给解脱了?

5)多语言编程

在这个世界有太多太多的编程语言,但凡稍微流行的编程语言都有自己独特的优势,而我们要善于利用每种编程语言的特点,而不是整天吵闹那种语言更强大。我自己熟悉C#、java语言,也用JavaScript、Ruby、Python、Groovy做过一些东西,甚至为了理解函数式编程还专门学习了Haskell语言。这些语言都给我带来了实用的效果。比如我用Ruby写了一个插件,可以自动把我主站上的博客同步到博客园中的博客来。

我使用Groovy给我的Java代码写单元和集成测试,比使用Java语言编写要快很多。我用Python和WebDriver写了一个论坛灌水工具来刷积分。你掌握的语言越多,你的视野就越广,你对编程的理解就会越深入。当然我不赞成盲目的求多,至少你要有2到3门精通的语言,从语言语法、语言运行时、语言特性、语言API等方面都要有深入学习和见解,当你再学习其它语言时也不会浮于表面的了。

6)这是最重要的一点,时刻保持一颗好奇心,一颗坚定不移的提高工作效率的决心

很多人都抱着差不多态度,心想“我虽不是标准指法,敲键盘速度也差不多”,“我IDE快捷键用的不多,也没觉得那里影响到我开发”,“我只会C#一种语言,还不照样干到现在了吗?”之所以有这种想法,是是因为你没有见到真正高效的人。我曾看到某IT界牛人那出神入化的VIM操作,简直已经超越了指哪打哪的境界,已经达到了键随心动的境界。

我也看到某高级程序员使用IDE快捷键三下五除二就把一段丑陋的代码给收拾的服服帖帖。耳濡目染之下让我坚定了这个决心,不做差不多先生。所以平时我和同事一起工作时,就留心他们有哪些方法和工具来提高自己的工作效率。如果他们使用了一些好用的快捷键而我不知道,那我就会记下来下次自己用(快捷键熟练程度上我早已是我们项目组的number one)。

如果看到他们使用了一些好的工具我也会立马回去下载下来自己用。(比如前两天我看到同事使用SuperPutty来连接远程主机,其支持多tab方式,这正是我想要的功能。我回去立马下载下来,抛弃了以前的Putty)这样时间长了,集众人之所长,你自然也成为效率达人了。


D. 《复杂世界的明白人》九边 #读书笔记

读后感:

很久没有完整看一本书,记性差了很多,一本书看了两三遍,花很长的零碎时间拼凑完读后感。最近发生一些事情,心情不太好。或许也带有些许年龄的焦虑,身边的同事年纪越来越小,亲戚朋友成家立业的越来越多,很多地方有共鸣。

本书作者是程序员出身,后来转做视频和写文章。讲得很多都是人生道理,也是出现在各大热门知乎、公众号、视频等的讨论话题。不能说是一本很深层次的书,但至少能给一些迷茫的人方向。

如何让自己过上痛苦的生活,之前看过外国团队的调研的结果类似,有印象。过滤出精英的教育、工作、风口几道窄门,也是这么一个道理,逆水行舟不进则退。知识储备够不够?心智够不够沉稳?面对新事物的反应速度快还是慢?执行力不足是害怕失败,还是性格不够坚韧的影响?大脑很多时候看到别人光鲜亮丽的成就,只会羡慕,而没有看到过程.

教育能武装一个人的大脑,圈子可以改变一个人的心境,身体是革命的本钱。机会总是在自己身边,跳出舒适圈,成就更好的自己。一万年太久,只争朝夕。共勉吧

笔记部分:

如何过上痛苦二抑郁的生活?

1.坚持容易的选择

坚持一二十年,慢慢人生选择越来越少,越来越痛苦。(快乐往往是一时的,代价却是持续的)

2.保持孤僻

社交得到欢乐可以抑制痛觉受体,防止抑郁,也比单打独斗多更多可能(避免被孤立去做无效社交)

3.准备好再开始

不一定要最漂亮的方式完成,哪怕最笨的方法也比没有强。

三道窄门滤出最终精英:

1.教育

①沟通效率知识层次接近容易达成共识;

②“研究习惯”,普通人只网络大概,博士会研究英语资料期刊论文等多种方式;

③高效,信手拈来的“工具库”积累。

2.工作

①不稳定却上限很高。(小企业迅速成长分红)

②稳定却一眼看到头的工作,越往后可选择越少。(大多数稳定的职业)

3.风口

①风口可能让你的资产指数型上涨

②除了运气,保持宽容学习的心,风口来了愿意学习和了解,而不是将其与“瞎胡闹”划上等号,(面对新事物,保持热情积极了解)

混江湖心得经验

1.慢就是快

坚持长期主义,不急功近利(只追热度的作者能获得流量,但最终会被利欲熏心,迷失方向,选择看似漫长但有价值的事情)

2.不羡慕结果,重过程,有自己的规划。(好友/亲戚/同学加薪发财,只是结果,你应该借鉴别人优秀的地方)

3.做事思考能否提供价值,可以且持久地就不断专研输出。

4.微小迭代,再大的事也是由无数小事组成的。

5.人能成就事,反之,事亦能成就人。(相互促进)

大神如何炼成?

1.站得越高,看得越全,越慌越痛苦

公司就像在市场这个汹涌大海洋行驶的大船,只有站在甲板的船长能看到全景,大部分人活在自己想象的安全港里。

2.生意本质是信息差

所有生意都是一时的,一万年太久,只争朝夕

3.工作心态不一样

成功人的船长思维,在风口看到风险和机遇,迎接挑战,而普通人活在自己给自己的短暂虚妄的安全世界,活在自己的安全世界里。

如果兴趣成为职业会怎么样?

人生的关键是吃苦,当兴趣成为自己的工作时间久了就会痛苦,唯有主动坚持才能对抗

成为高手需在没有感觉的情况下蹚过漫长无聊和低成就感时期(习惯成功之路的孤独和坚韧),蹚不过就一直二流水平(如成为入写手,要写作日更3000字,而大多数人只挺不过一周,就过滤了大多数无法坚持的人)

几个人生真相

性格、财富、知识、见识、社会关系,几个变量互相影响、互相因果,财富上升会让人明显开朗进而提升社会关系和见识。

多数人的“社恐”:往往是舒适区的表现,在熟人面前大大咧咧,在陌生人面前慌乱,并不是有双重人格,而是担心陌生人不接纳自己。

肌肉记忆才是真记忆

菜鸟和高手区别在于高手肌肉记忆库工具很多,信手拈来快速解决问题,多练习把工具箱内容沉淀,占领先机后抢占下一个山头。延伸到心智层面,面对困难积极想办法解决,成为肌肉记忆。

绕开负能量,人心敏感而脆弱(不参加失败者派对)

失败者向着世界倒霉,盯着黑暗面,最后社会还是那样,结果自己废了。

锚定15%法则

在一个领域深耕,前期填鸭(需迅速),后期15%新知识(更快乐)。

百万年薪必备技能(感觉分析的比较浅)

1.当领导

2.领导交代任何事情都竭力办好

3.善于汇报工作,站在别人的角度看待自己的工作,别人要知道全靠你一张嘴。

4.谦逊,该亲和亲和,该严格严格

5.身体素质

起点不高如何向上爬

环境会改变人的思维,思维进一步改变个人境遇,从而进一步改变思维。

破圈层,越往上走越是熟人社会,马太效应,你能力越强,帮你的人也越强,最后整理实力指数上升,

多数人面临很多机会,只是当时选择恐惧,选择在舒适区待着,后来可选择的路越来越少。

寒窗苦读与财富

1.没读过书只能抓低端机会,(卖菜、修车、开饭店等),本科或者以上,稍微高端(软件、新媒体、科技)

2.别被眼前自怨自艾,也别觉得自己很厉害,很多事眼前看没啥意义,时间线放长才可能发现意义。

现实:寒窗苦读很难超过别人几代人的积累

翻盘机会:把自己送到稍微高一点的起跑线,头脑被武装过,且有搞定复杂问题的决定和方法

如果在互联网只是消费自己时间和精力,而没得到成长你就是工具。

国家层面分析

发达国家发展两步:1.海外贸易,2.发达的国内市场(双循环)

发展成发达国家的三个陷阱:

1.“低收入陷阱”,才能和启动资金其中一样缺失,都不可往更高层面走。

2.“中等收入陷阱”,环境保护,外企撤离后没形成大规模国内市场,一地鸡毛。

3.“高收入陷阱”,迷恋资本,只搞金融,把不赚钱和赚钱慢(类似科研)的都搬到海外。

什么社会未来可期:深耕国内市场,提高科技水平(指数增长),抑制贫富差距,完善市场秩序,打击资本投机恶性一面。

很多事情都是经过漫长的累积然后一飞冲天,前期线性,后期指数发展(赞同)

负利率如何形成?

公民多数不婚不育,无所追求,购买力低。银行逼大家花钱把利率降成负的,降低贷款利率。

负利率影响:增长缓慢,机会稀缺,谁都不想花钱,创业也赚不到钱

艰苦奋斗的目的不是一直艰苦,搞低端制造业的目的不是一直低端,产业升级既是被迫,也是顺势而为。

E. 技术大牛是如何炼成的

阅读全文

与程序员是怎么样炼成的相关的资料

热点内容
数据库管理导航栏怎么使用 浏览:397
铁路技术职称一般怎么填写 浏览:560
如何批量复制重复数据 浏览:569
自贡大安市场猪肉多少钱一斤 浏览:552
平顶山宠物市场在哪里 浏览:623
食品代理商如何做好 浏览:285
外汇交易要学会哪些技术 浏览:658
什么市场下载的游戏内存很小 浏览:486
手机技术含量最高的是什么企业 浏览:321
直通车代理需要什么 浏览:229
国家什么时间放开信息垄断 浏览:856
咔咔酸奶有哪些产品 浏览:190
微信群信息时间间隔多久显示 浏览:408
如何使用stc下载程序 浏览:686
vivoxplay5用什么数据线 浏览:17
德国先进技术有哪些 浏览:672
炒股三成技术是什么意思 浏览:392
有数据如何做分析图 浏览:519
双方交易受益怎么处理 浏览:790
如何运用已有数据进行创新 浏览:379