‘壹’ 如果,我想当一名程序员,如何从零开始
1、 程序员意味着要编程序。(如果你仅仅想得到一份高薪水的工作,喝喝咖啡就等老板发薪水,我奉劝你还是另找一份更合适的工作,譬如练摊,真的,兄弟,这份工作不适合你)
2、你是学文的还是学理的,编程序也许需要浪漫,但更需要逻辑和严谨。(说坦白点就是,在你没有找到乐趣以前,它很枯燥)
3、你有对新技术追求的热情吗?你有刨根问底的探索精神吗?(热情绝对是最重要的!你仔细思考一下自己的性格适合当程序员吗?)
4、当程序员决不是什么好差事,时刻需要学习,需要思考。(直到你成为那个可以引导别人去学习和思考的人,你才可以偷偷的嘿嘿笑,又一群傻蛋)
5、程序员的未来很迷茫。(但我认为关键看你自己!我希望你是一个有追求的人,不仅仅是混碗饭吃。因为真正的乐趣在于创造;如果你能改变软件业的历史,那才是英雄;不想成为Bill Gates,不想成为Dennis Ritchie和 Bjarne Stroustrup,我会说你没有追求。有个关于程序员未来的笑话,也许你还没听过,你该听一听,摘抄如下:
一个程序员对自己的未来很迷茫,于是去问上帝。
“万能的上帝呀,请你告诉我,我的未来会怎样?”
上帝说“我的孩子,你去问Lippman,他现在领导的程序员的队伍可能是地球上最大的”
于是他去问Lippman。
Lippman说“程序员的未来就是驾驭程序员”
这个程序员对这个未来不满意,于是他又去问上帝。
“万能的上帝呀,请你告诉我,我的未来会怎样?”
上帝说“我的孩子,你去问Gates,他现在所拥有的财产可能是地球上最多的”
于是他去问Gates。
Gates说“程序员的未来就是榨取程序员”
这个程序员对这个未来不满意,于是他又去问上帝。
“万能的上帝呀,请你告诉我,我的未来会怎样?”
上帝说“我的孩子,你去问侯捷,他写的计算机书的读者可能是地球上最多的”
于是他去问侯捷。
侯捷说“程序员的未来就是诱惑程序员”
这个程序员对这个未来不满意,于是他又去问上帝。
“万能的上帝呀,请你告诉我,我的未来会怎样?”
上帝摇摇头“唉,我的孩子,你还是别当程序员了”)
6、当程序员还是很有乐趣的。(当你学到新知识时,当你有新的思想见解时,当你有新的产品问世时,和知己探讨你的成果时…我问你,觉得这些是乐趣吗?)
7、当程序员不易也不难。(世间事有难易乎?为之…;不为…。你有决心和信心吗?)
8、你真的要当程序员?是你自己的想法?
9、你舍得花钱买书吗?(读好书绝对是学习编程的最佳捷径。你一定会说,现在电脑书籍真他XX的贵,没法子,谁让知识和技术在人家的脑袋,在人家的书里呢;等你写书时可以把价格定低一点,记着还有好多没钱但想买书的兄弟很困难呀。要舍得买书,买好书,不好的的书不如不读,其害大于其益,关于买什么书,你可以问高手或看候捷的书评;准备一个小本子记录你想买的书的名字,逛书店时看看,如果好就买下,记住要读,别光买不看。) 10、我告诉你,程序就是:任何有目的的、预想好的动作序列,它是一种软件。
11、编程序就是编写程序。
12、你想好了吗?(如果你想好了还是决定要当程序员,可以继续往下读;否则,你可以继续寻找别的出路了。)
(三) 一个程序员应该具备的基础知识和概念
1、计算机是有什么组成的,CPU是什么东西,其工作原理是什么。(对于这些以及下面将要提到的概念我不会告诉你什么答案,你可以看相应的教材,关于教材我会在下一部分详述,记住理解最重要!)
2、机器语言和微指令集的概念。
3、程序的概念。
4、汇编语言是低级语言但不是机器语言。
5、高级语言主要有那些?(C,C++,Basic,Pascal,Fortran,C#,java等等;如果你是中国软件业的英雄,你也写一门语言,最好不用英语) 6、编译程序和解释程序的概念和其原理。(编译器是高手和专家编写的)
7、HTML、XML等是标识性语言。
8、Prolog是人工智能语言。
9、操作系统OS的概念和原理。(Windows98,Windows2000,Windows NT,UNIX,linux,等等都是OS,还有一些实时OS,嵌入OS,编这些的绝对是高手)
10、Windows编程说白了就是Windows API的调用。(中国的程序员很多只是会编windows程序,用的是VB,我的建议是这些程序员顶多只是低级编码员,我称其是coder)
11、VC++、VB、BC、BCB、Delphi、VF等都只是编程的工具和环境,不是编程语言。
12、面向结构的设计概念。
13、面向对象的概念。(好好理解,兄弟,这个东西还是很重要的)
14、软件工程的概念和原理。(如果你想当老总就需要好好研究了,系统分析员比编码员要高一个等级,薪水也高哟)
15、数据库的概念。(要熟悉一些着名的数据库系统和语言的名字,如Orcle,SQL,DB2,DyBase等)
16、了解网络概念。
17、了解多媒体概念。
18、熟悉和掌握数据结构和基本算法。
19、是不是要求太高了,别着急慢慢来,进步在不知不觉之中。(一旦开始学习,一个月以后你就会有一个基本的概念;两个月以后你就会感觉自己有了全面的基础知识;当你知道编程序是怎么回事时,说明你已经入门了。也有很多人编了很多年程序还没有入门呢,你不会希望自己步其后尘吧。要有信心和耐心。沉不住气怎么能成大事?!)
(四) 教材推荐
――-推荐的教材主要还是针对概念来的,最好选用名校的教学用书。
1、《计算机组成原理》(熟悉)
2、《数据结构》(掌握)
3、《操作系统》(了解->熟悉)
4、《The C language》(掌握)
5、《编译原理》(了解原理)
6、《汇编语言》(了解)
7、《计算机网络》(了解)
8、《软件工程》(了解)
9、《关系数据库》(熟悉)
10、《The C++Languege 》(掌握)
11、《面向对象设计》(掌握;结合C++学习)
(五)一些经验和体会
1、真正的程序员用C++;(一位专家说的)
2、动手去编程序;
3、动脑去思考;
4、要有良好的编程风格;
5、读书,读好书,尽量读原版书!(我反复强调这一点,读书要有选择,坚持读好书,名家出的经典书,不要浪费实践在一些粗制滥造的书上面;坚持博览群书)
6、有自己的学习计划;
7、总结自己的经验教训;(准备一个笔记本,记录错误和心得)
8、不要怕学新东西;
9、要有软件工程的思想;
10、善于发现问题,然后去寻找答案;
11、向高手请教;(要虚心直到你成为高手)
12、和同行交流;(不善于交流肯定不行)
13、懂得软件的实质,不要被千变万化的表象所迷惑;
14、真正要学习用的是编程语言和方法,不是什么库,什么类,什么工具;(学用那些什么库都比较简单,但光会这些库,我觉得还远远不够)
15、学习wiodows编程主要是学习windows OS和win32 API;
16、有空了解一下嵌入式开发;
17、有空了解一下PDA软件开发;
18、了解一下.NET框架和C#语言,也许它是你新的衣食父母;
19、要有耐心,不要作浮躁的人; 20、对程序加注释,并保留你的老程序;
21、学到的东西越多,了解的越多,你就越接近专家;
22、有空去逛逛CSDN,那里有你很多知己;
23、要有信心成为一个优秀的程序;
(六)一些好书的推荐
1、《The C Programming language》 (Keinighan & Dennis Ritchie 1988)
2、《The C++ Programming Languague》(Bjarne Stroustrup 1997)
3、《Inside The C++ Object Model》 (lippmans)
4、《Effective C++》 (同上)
5、《More Effective C++》 (同上)
6、《Exceptional c++》
7、《C++面向对象高效编程》
8、《设计模式》
9、《Thinking In C++》
10、《The Standard C++ Bible》(一般推荐)
11、《The Art of Computer Programming 》
12、《Programming Windows》 (Charles Petzold)
13、《VC++5.0技术内幕》
14、《MFC 深入浅出》
15、《软件需求》
16、《Advanced Windows》
17、《C++ primer》
18、《win32程序员参考手册》
19、《用TCP/IP进行网际互连》
20、《COM 本质论》
(七)学习计划
――-这个学习计划是我个人定的,也共享给大家参考一下,共同进步吧。 1、《计算机组成原理》
2、《操作系统》
3、《数据结构》
4、《汇编语言》
5、《 C 》
6、《 C++ 》
7、《VC 技术内幕》
8、《Programming Windows》
9、《深入浅出MFC》
10、《Advanced Windows》
11、《Inside The C++ Object Model》
12、《Thinking in C++》
13、《Effective C++》
14、数据库
15、网络
16、嵌入式OS和编程
17、硬件单片机
18、.NET和C#
19、软件工程
20、UNIX和Linux
‘贰’ 假如没有程序员,这个世界会是什么样子
医院看病会很难,没有了程序员医院没有实现信息化,患者挂号,缴费还是要排队,医生开处方还是需要手写,护士服务病人还是看纸质材料,医院效率会很慢,患者看病会很不方便,各种医保报销会非常麻烦,医院服务满意度很低,医患关系会尖锐。
‘叁’ 程序员的未来
天有日则明 人有志则立。
你有一生的志向吗?你有一生的抱负吗?
你最大的兴趣是什么?
你现在做程序员快乐吗 ?
如果有志向做技术就看看9个程序员级别 做技术要有时间的积累。
说点题外的,你是为了什么做程序员,现在你好象不是陶醉于做程序员 如果是陶醉 你就不会问这个问题了
如果你做技术就找一个你能够陶醉的
如果不是的话 可能人生有的累了 会想着放假和发奖金之类的东西
也可以先做下销售 看看人生的很多精彩的地方
做什么 只要专心都可以出成绩
你现在想看清楚方向 就是你还不是陶醉
记住 :如果做技术不陶醉便不容易有大发展
‘肆’ 程序员的出路在哪里
【原创】下面四千字的东西,打了三个小时,又花了两小时修改,体会来自于自己的经历。既为楼主也为自己,也希望能给他人带来一点帮助,因为自己也曾苦于出路这个问题许久,徘徊于技术与销售之间。其实,最重要的是,想清楚自己要的到底是什么,而实现的方法有很多,选择其中的一个,然后耐心去做,注意做的过程中,要多方面发展。不断提高自己的综合能力才是硬道理——这才是出路之所在!!!。
【出路】
在职业选择上,很多人都会问一个问题,这个职业有什么出路?想得到正确的回答,必须先搞清楚,自己究竟想得到什么东西。对于程序员这个职业,如果你要的是钱,很多的钱,程序员没有出路;程序员工作繁忙,有时不规律,连续着加班很有可能,如果你要的是休闲的生活,程序员没有出路;程序员都是与电脑打交道,工作就是坐着,如果你要的是跟人广泛的交流,而且坐不住,程序员没有出路;写程序都是很逻辑的东西,如果你不喜欢这种解题式的思考方式,顶不住整天思考所带来的疲惫,程序员没有出路。
程序员跟民工的区别就是,高强度的脑力劳动者和体力劳动者。虽然程序员的待遇看起来还不错,想想其实不是,假如八点半上班,加班到十点,没加班费,平均下来,一个人相当于干了将近一份半的工作,除下来收入付出比就少了半截,收入多是因为付出的劳动多。这是开始做程序员时常有的事。
假如纯往技术上走,干几年熟手了,情况会好,但是,当你对比起干了几年销售的朋友时,你会发现,你的劳动力太廉价了。一个小公司的销售,普普通通干三年后,一年拿十万块的提成是很有可能的,而一个程序员,普普通通干三年,能拿月薪一万的不多。还有人家销售有许多的报销,你有么?如果有天赋而且努力地干,销售,大学毕业三年买车买房的多的是,当然不是说噬老族那些;程序员呢?有多少能!也许研究生,而且读的好的那款还比较可能,但此时那些本科或者大专,甚至中专就出来跑销售的,已经工作好几年了,说不定此时正在三亚晒太阳呢!
你说销售的应酬多,呵呵,喝酒;要去拍人马屁,去求人什么的!ok,这就是销售,你敢保证当你看到他们的收入时,还有看到他们拿着公司的钱,请客户去各种高档的地方消费时,甚至说句不好听的,花公司的钱请客户到处吃喝嫖赌时——客户也是人,许多客户就这些个的爱好,所以要满足他,他才买你的帐,很正常——严格意义上讲,这样的工作比坐在电脑前埋头苦干来的轻松多了,其实是一种享受,看到这些,你敢保证你一点都不眼红?呵呵,如果不眼红,那就专心干程序员吧!
或者说,你对这种“一点科技含量都没有的工作”——在你眼中,高iq的人才是牛b的人,那就安下心来干程序员吧。但我想说,在这个社会上,赚钱最多最快的,最舒服的,永远是销售。当然,干技术干的好的,最终都是比较受人尊重的——专家,当然是五十年如一日投身于技术那种人才能成为专家。如果你能刻苦地干程序员,想成为架构师、系统分析员,成为软件专家,那就专心干程序员吧!
或者说,你实在干不来与人交际,还要挖空心思去维护各种人际关系的工作是,那就安心下来干你的程序员工作吧,就像民工一样,有谁乐意去干民工,但是没办法,能力所限,只能干民工了。但我想说,能力都是学来的,给民工们上大学,他们毕业后一样会有很多牛人。有人说:“哪有那么好的条件给他们上大学啊!”。条件很多时候要自己去创造啊!难道每个成功的人都有一个高人,手把手地拉扯着他,给他良好的成长环境和资源吗?没有什么东西学不来,只是学得快和慢的问题,要真正去学学看才知道,而不是停留在大脑中。如果你学编程学得很快,而且学得很开心,即使学的过程很累,那就专心干程序员吧!
接下来,告诉你一个好消息,史玉柱出身技术、马化腾出身技术、唐骏出身技术、比尔盖茨出身技术、杰克•韦尔奇出身技术,等等,他们都成功了!假如这是你想象中的出路的话。我不是说要达到他们那种水平,而是走技术路线,来获得事业有成,获得成功。写过程序的人都知道,想实现某个功能,有很多种实现方法。获得成功也是一样,有很多的路可走。这就是我为什么拿销售来做比较,每种职业都能到达成功的彼岸,不管是做技术、行政、财务、销售,等等。
出路是什么?不就是人生价值的实现,有的人要的是成就感,有的人要的是幸福,有的人要的是健康,有的人要的是金钱,有的人要的是地位名气,有的人要的是贡献全人类,有的人要的是玩乐、享受,其实这些都是不同人的人生价值。而实现自己人生价值的方法实在太多了,不管从事什么职业,不管是java程序员,c++、c#,都能成功的,最最重要的是想清楚你想得到什么,接下来就是做具体的计划,然后实现计划。实现的过程不能拘泥于技术,应该多方面发展,不断提高自己的综合能力!想做项目经理、做cto,或者用自己的技术去创业,都必须发展自己的综合能力。
回到刚才,马化腾、比尔盖茨、唐骏等等这些技术员为什么能成功?技术过关是基础,甚至技术过硬,唐骏日本、美国留学,比尔盖茨哈佛。接着,最重要的是:超前的眼光。qq其实不是什么很难的技术,比什么量子物理简单多了,而且icq还是以色列人开发的,马化腾就照着开发了qq,当时在中国就是超前的东西;比尔盖茨的windows,让三岁小孩也能使用电脑,而不用记一大堆的dos命令,这就是超前;唐骏发明了卡拉OK评分器、大头贴,你自己可以想象一下大头贴有多少的技术含量,然而它带来的经济效益是多少!所以说,想法太重要了,好的技术不是它有多高深,而是它能给人的生活带来多少的便利,而往往第一个想到的人能获得巨大的回报。第三,人际关系,别老以为做了技术就能以高姿态出现,有人很鄙视销售,认为没技术含量、俗;销售还很鄙视技术呢,穷、死板。其实,没人能靠自己一个人赢得一切,技术要靠销售来卖自己的产品,销售要靠技术生产产品,谁都离不开谁,这其中还有一连串的其他人呢,财务、行政、前台mm、老板等等。现在越来越提倡团队合作,跟队友、跟上级、跟客户之间的沟通是必修课,沟通不好必然配合不好,你的才能永远无法施展,何来的出路。
第四,求人,其实求人是人际关系中的一个,为什么单独在这里讲,因为他太重要了。机会很多时候是靠求人得来的,例如唐骏,他去日本留学的机会就是求了一大堆人得来的,他当时考研究生,在北京邮电分数最高,但因为大学没得过一次“三好生”,北邮没给他出国名额。他给各个大学的研究生处打了三天电话,问还有没有留学名额,得到的大多都是这样的回答:“我们自己的学生都不够呢,哪里轮得到你?”,如果脸皮薄,没耐心,早就放弃了,后来他找到了北京广播学院(现在的中国传媒大学,就是陈鲁豫读的那个学校,据说当时很水。。。),吴怀仙老师,当时他们的对话是这样的:
“看你的成绩很好,你们北邮应该取你呀!”
“北邮当然取我。但是,我从小爱看电视爱听广播,未来中国的广播电视事业一定会有很大的发展,为了这项事业,我愿意放弃北邮,来到北广。”
“照你现在的说法,你不是为广播事业而来吗?怎么又跟出国有关?”
“中国的广播事业很落后,需要去国外学习一些先进的理念、先进的技术回来呀!”
“老实说你来有风险,如果教育部不批的话,你不能出国,就必须留在广播学院读书。可是北广没有硕士学位的授予权,你只能取得研究生学历,得不到学位。”
“我来的目的很明确!为了中国的广播事业,有没有学位没那么重要。”
你知道当时的实际情况是怎样的吗,北邮根本就没有给唐骏名额,唐骏根本就是说了一个无伤大雅的谎言,所以,你看看、你看看,善于变通对于一个人的成功是多么的重要,唐骏他们都不是一味地干技术就能成功的,很多时候必须好好包装自己、销售自己的。在这里我不是在说要去骗取利益,而是说,在遇到困难的时候能改变思路,转个弯绕过路障!!求人很重要,有个强硬的后台帮忙,少奋斗十年!后来唐骏又去教育部门口站了几天岗,等人、求人,呵呵,其实只是问了几声好,这是后话。
第五,超越物理层。凡是要获得大的成功,赚大钱,或者说更容易地赚钱的,都不能拘泥于物理层。只有大老板能给你建个实验室,让你搞深层次的技术;而只有你的实验室能不断做出可以卖钱的产品时,你的实验室才不至于被关闭。走入公司的决策层,你才能决定该往那走,什么技术该大力发展、什么技术该好好改造、什么技术该放弃。这个道理相信不用讲你也明白,那么,如何进入决策层,靠高素质、靠综合能力。学习能力、沟通能力、领导能力、管理能力、玩的能力(品酒、打扮、奢侈品、打高尔夫等等),一大堆的能力呢!没有一所学校、一个组织能教授全部,这些都要靠自己去学、去领悟,前提是,你要有去学、去领悟的想法。
说实在的,世界是很复杂的东西,要的是你去适应它,它不会来适应你。唐骏说:“性格能改变吗?很多人说不能。可是我认为,本性是不能改变的,但性格是一定能改变的”。杰克•韦尔奇,通用电气前ceo,打小有自卑心理,到了成年还略带口吃。他母亲激励他,这算不了什么缺陷,只有面对现实,坚持与别人沟通,让别人了解你,才能主宰自己的命运,别人才会跟你做朋友,这是这个伟大而平凡的母亲给予杰克的最大财富。事实上,如果你自己不在意,那么那个缺陷也就不太重要了。略带口吃的毛病并没有阻碍杰克的发展,实际上在后来,注意到这个弱点的人大都对杰克很敬佩,因为他竟能克服这个障碍,在商界出类拔萃。赶紧改变,让自己更好地适应这个复杂多变的世界。
想清楚自己要的是什么,做一个两年计划,因为超过两年变数就太大了,然后制定实现的步骤,也就是一个个短期计划,从第一步开始实现。这些计划应该是具体、可行而且能在预定时间内完成的,最后静下心来,耐心实现自己的每个计划!!不要老是问人,我这样做对吗,我该怎么做。哈佛退学就一定是错的?北大卖猪肉就一定不好?外企就一定是好归宿?你该做的就是,想清楚自己想要什么,金钱、美女、名利、地位、权势,还是过平凡的日子,做善事做好人,都没问题,只要真的是你想要的就好,然后考虑怎么去实现它。其实实现的方法有很多,选择其中的一个,然后耐心去做,注意做的过程中,要多方面发展。不断提高自己的综合能力才是硬道理——这才是出路之所在!!!
‘伍’ 程序员的世界是什么样子
你的关注就是对我们最大的肯定。每天一篇原创文章,将华锐视点十年创业中关于运营、程序技术方面的感悟、走过的各种坑,分享给你。希望能帮助更多创业者快速成长,绕过一些坑。
程序员在其他人眼里应该是一群神秘的存在,他们深居简出,衣衫褴褛,神色落寞,有钱但是低调,压力大却看不见宣泄。
程序员标配一般如下:
夏天使用公司年会或者技术活动配发的T恤,有技术LOGO更佳。要不可以装备格子衬衫,松松垮垮的最好。有利血液循环。别轻信偶像剧里的行头,紧身牛仔裤卫衣啥的,弄上泡面汤你会心疼的。
冬天就是里面随便穿,外面羽绒服。羽绒服就要实用款。长点最好,款式的话...肥大点包的严实就行。
穿鞋的话根据情况而定,拖鞋是放飞思维的一对风帆。如果实在无法如此放松的话,翻毛大头鞋也很体验粗狂自然性能方面的考量,旅游鞋太没个性!
眼镜要选古典版的,能丰富内涵,体(yan)现(gai)深(dai)邃()的目光。最时尚的搭配就是白框黑腿,黑框白腿。非黑即白,阴阳平衡,也能体现到二进制的理念。
随身的包是职业的象征,斜跨的款式略显浮夸,都是初入本行毛头小子的扮相。你要是专业的一定要注意,双肩包才最适合!,双肩包才最适合!,双肩包才最适合!工学设计,外出时也可以缓解驼背的症状,解放双手的设计是最符合效率和科学的!
抽烟也是品味的象征。为了体现到代码设计师那独到的视角,一定要从其他维度看待和选择。首先烟雾要大,味道要刺激,否则难以在另一个境界审视自己的内心。其次价格要便宜,我等并非凡夫俗子,谈钱太俗气,金钱使人庸俗。
喝水的道具要简单实用,多年不刷的不锈钢保温杯更能体现到您的不凡气质。配合茶渍与咖啡的痕迹就更佳具有神韵。这些特征一般是具有大神潜质的人士标配。
手机的选择一般要低调,除非开发需要,否则尽可能化为小米。不是我们买不起,只是够用就好。过多的资源浪费与碳排放会加重这个本已痛苦不堪的地球环境。
发型一般要选择后现代野兽派重金属朋克风格的设计,有条件的话配合稍微狂野些的不规则胡茬,即为上佳设计。行走时根据空气动力学产生的结果十分动态,看你一眼就会知道算法无常,学识深奥!
工作餐要符合荤素搭配营养齐全的特征,另外要方便部署,实现方便。方便面,煎饼果子等平凡的食品其实都具有如此高尚的内涵。因此我们才经常选择它们。记住,我们并不是随心而为的,反而是精心设计的。
笔记本电脑对于我们是主要输出装备,本着军事装备选择原则,一定要选有重量感的,黑色耐脏的,厚实的,工作中的随手一堆都能感受到自己创造的重量。另外在压泡面时绝对令你意想不到。
程序员的女朋友应该是什么样子呢,首先你得先有个女朋友.......这个编不下去了啊,我出去哭会,大家继续啊。
‘陆’ 想做程序员,要些什么条件
程序员是一种技术工作,在IT的发展中有相当重要的地位,从底层硬件通讯协议的建立, 到数据传输层的处理,到操作系统的建设,到数据库平台的建设,一直到应用层上各种数 据营销平台的搭建,程序员在里面都扮演着举足轻重的角色并为IT事业的发展做出了巨大 的贡献。
中国有很多精于编码的人,但是中国软件行业,尤其是网络应用开发方面误区很大,很难 形成有规模的软件开发力量和产品能力,不但比美国差距甚远,和印度相比也是颇有不 如。这些问题不是在于中国程序员的智商和工作努力状况,也不是在于国家和民间对开发
的投入程度,而是很大程度上,有一些对技术,对程序开发,对项目设计方面的思想误 区,这些误区,导致了软件行业的产品化能力不足,缺乏规模化和大型复用系统研发能 力,可以说,改变认识误区,是解决软件行业小作坊模式和个体英雄模式所带来的局限性 的重要工作。
中国有很多小朋友,他们18,9岁或21,2岁,通过自学也写了不少代码,他们有的代码写的 很漂亮,一些技术细节相当出众,也很有钻研精神,但是他们被一些错误的认识和观点左 右,缺乏对系统,对程序的整体理解能力,这些人,一个网上的朋友说得很好,他们实际
上只是一些Coding fans,压根没有资格称为程序员,但是据我所知,不少小网络公司的 CTO就是这样的coding fans,拿着吓人的工资,做着吓人的项目,项目的结局通常也很吓 人。
程序员基本素质:
作一个真正合格的程序员,或者说就是可以真正合格完成一些代码工作的程序员,应该具 有的素质。
1:团队精神和协作能力
把它作为基本素质,并不是不重要,恰恰相反,这是程序员应该具备的最基本的,也是最 重要的安身立命之本。把高水平程序员说成独行侠的都是在呓语,任何个人的力量都是有 限的,即便如linus这样的天才,也需要通过组成强大的团队来创造奇迹,那些遍布全球
的为linux写核心的高手们,没有协作精神是不可想象的。独行侠可以作一些赚钱的小软 件发点小财,但是一旦进入一些大系统的研发团队,进入商业化和产品化的开发任务,缺 乏这种素质的人就完全不合格了。
2:文档习惯
说高水平程序员从来不写文档的肯定是乳臭未干的毛孩子,良好的文档是正规研发流程中 非常重要的环节,作为代码程序员,30%的工作时间写技术文档是很正常的,而作为高级 程序员和系统分析员,这个比例还要高很多。
缺乏文档,一个软件系统就缺乏生命力,在未来的查错,升级以及模块的复用时就都会遇 到极大的麻烦。
3:规范化,标准化的代码编写习惯
作为一些外国知名软件公司的规矩,代码的变量命名,代码内注释格式,甚至嵌套中行缩 进的长度和函数间的空行数字都有明确规定,良好的编写习惯,不但有助于代码的移植和 纠错,也有助于不同技术人员之间的协作。
有些coding fans叫嚣高水平程序员写的代码旁人从来看不懂,这种叫嚣只能证明他们自 己压根不配自称程序员。代码具有良好的可读性,是程序员基本的素质需求。
再看看整个linux的搭建,没有规范化和标准化的代码习惯,全球的研发协作是绝对不可 想象的。
4:需求理解能力
程序员需要理解一个模块的需求,很多小朋友写程序往往只关注一个功能需求,他们把性 能指标全部归结到硬件,操作系统和开发环境上,而忽视了本身代码的性能考虑,有人曾 经放言说写一个广告交换程序很简单,这种人从来不知道在百万甚至千万数量级的访问情
况下的性能指标是如何实现的,对于这样的程序员,你给他深蓝那套系统,他也做不出太 极链的并访能力。性能需求指标中,稳定性,并访支撑能力以及安全性都很重要,作为程 序员需要评估该模块在系统运营中所处的环境,将要受到的负荷压力以及各种潜在的危险
和恶意攻击的可能性。就这一点,一个成熟的程序员至少需要2到3年的项目研发和跟踪经 验才有可能有心得。
5:复用性,模块化思维能力
经常可以听到一些程序员有这样的抱怨,写了几年程序,变成了熟练工,每天都是重复写 一些没有任何新意的代码,这其实是中国软件人才最大浪费的地方,一些重复性工作变成 了熟练程序员的主要工作,而这些,其实是完全可以避免的。
复用性设计,模块化思维就是要程序员在完成任何一个功能模块或函数的时候,要多想一 些,不要局限在完成当前任务的简单思路上,想想看该模块是否可以脱离这个系统存在, 是否可以通过简单的修改参数的方式在其他系统和应用环境下直接引用,这样就能极大避
免重复性的开发工作,如果一个软件研发单位和工作组能够在每一次研发过程中都考虑到 这些问题,那么程序员就不会在重复性的工作中耽误太多时间,就会有更多时间和精力投 入到创新的代码工作中去。
一些好的程序模块代码,即便是70年代写成的,拿到现在放到一些系统里面作为功能模块 都能适合的很好,而现在我看到的是,很多小公司软件一升级或改进就动辄全部代码重 写,大部分重复性工作无谓的浪费了时间和精力。
程序员应具备的素质中
6:测试习惯
作为一些商业化正规化的开发而言,专职的测试工程师是不可少的,但是并不是说有了专 职的测试工程师程序员就可以不进行自测;软件研发作为一项工程而言,一个很重要的特 点就是问题发现的越早,解决的代价就越低,程序员在每段代码,每个子模块完成后进行
认真的测试,就可以尽量将一些潜在的问题最早的发现和解决,这样对整体系统建设的效 率和可靠性就有了最大的保证。
测试工作实际上需要考虑两方面,一方面是正常调用的测试,也就是看程序是否能在正常 调用下完成基本功能,这是最基本的测试职责,可惜在很多公司这成了唯一的测试任务, 实际上还差的远那;第二方面就是异常调用的测试,比如高压力负荷下的稳定性测试,用
户潜在的异常输入情况下的测试,整体系统局部故障情况下该模块受影响状况的测试,频 发的异常请求阻塞资源时的模块稳定测试等等。当然并不是程序员要对自己的每段代码都 需要进行这种完整测试,但是程序员必须清醒认识自己的代码任务在整体项目中的地位和
各种性能需求,有针对性的进行相关测试并尽早发现和解决问题,当然这需要上面提到的 需求理解能力。
7:学习和总结的能力
程序员是人才很容易被淘汰,很容易落伍的职业,因为一种技术可能仅仅在三两年内具有 领先性,程序员如果想安身立命,就必须不断跟进新的技术,学习新的技能。
善于学习,对于任何职业而言,都是前进所必需的动力,对于程序员,这种要求就更加高 了。
但是学习也要找对目标,一些小coding fans们,他们也津津乐道于他们的学习能力,一 会学会了asp,一会儿学会了php,一会儿学会了jsp,他们把这个作为炫耀的资本,盲目 的追逐一些肤浅的,表面的东西和名词,做网络程序不懂通讯传输协议,做应用程序不懂
中断向量处理,这样的技术人员,不管掌握了多少所谓的新语言,永远不会有质的提 高。
善于总结,也是学习能力的一种体现,每次完成一个研发任务,完成一段代码,都应当有 目的的跟踪该程序的应用状况和用户反馈,随时总结,找到自己的不足,这样逐步提高, 一个程序员才可能成长起来。
‘柒’ 有哪些适合放在程序员办公桌上的高规格物件
1、牛斗熊;办公桌前的吉祥物、商战场上的招财宝!华尔街牛熊斗!
2、唐三彩:贴花点彩双龙咬瓶是许宝峰大师的作品,整个瓶子采用的是明清的古典风格,具有镇宅、招财的作用。
3、装饰器皿景泰蓝花瓶;铜龙凤瓶掐丝珐琅龙凤对尊,象证吉祥如意,生意一帆风顺。
4、中式南海观音佛像;作品为参照海天佛国普陀山南海观音圣像原样缩小虔造。金色的观世音菩萨,法相庄严,由国内一流的佛像雕刻师塑模雕刻,慈目低垂,面容圆满,庄严肃穆。
5、影青陶瓷海水纹佛手摆件;影青瓷,也叫青白瓷,是宋代景德镇窑工们在五代青瓷、白瓷的基础上烧制而成的一种特色瓷器,因其釉色介于青瓷和白瓷之间,白中泛青、青中泛白而得名。
办公桌摆件摆放风水介绍
根据五行相生相克,需要使用木制的办公桌才能给运势带来相生,切忌不能使用金属或者钢制办公桌,因水克火,故将在运势上有时财之险。
办公桌摆放风水中切忌不能让办公桌后方空门。何谓空门呢,即后方有门或者窗,在风水学上来讲为“失财失利”之位。可用窗帘来化解之。
老板办公桌,老板为“一家之主”故其运势也将决定着公司的兴旺与否。老板办公室中办公桌大小需要与整体的房间相协调,风水学上讲究“适合而安,不适为乱”,办公桌过大,显得房间很小,则会使得老板无力协调公司发展。员工办公桌切忌不能大于老板使用的办公桌,否则有反客为主之运势。
‘捌’ 成为程序员(或码农)有哪些方面的要求
1、 程序员意味着要编程序。(如果你仅仅想得到一份高薪水的工作,喝喝咖啡就等老板发薪水,我奉劝你还是另找一份更合适的工作,譬如练摊,真的,兄弟,这份工作不适合你)
2、你是学文的还是学理的,编程序也许需要浪漫,但更需要逻辑和严谨。(说坦白点就是,在你没有找到乐趣以前,它很枯燥)
3、你有对新技术追求的热情吗?你有刨根问底的探索精神吗?(热情绝对是最重要的!你仔细思考一下自己的性格适合当程序员吗?)
4、当程序员决不是什么好差事,时刻需要学习,需要思考。(直到你成为那个可以引导别人去学习和思考的人,你才可以偷偷的嘿嘿笑,又一群傻蛋)
5、程序员的未来很迷茫。(但我认为关键看你自己!我希望你是一个有追求的人,不仅仅是混碗饭吃。因为真正的乐趣在于创造;如果你能改变软件业的历史,那才是英雄;不想成为Bill Gates,不想成为Dennis Ritchie和 Bjarne Stroustrup,我会说你没有追求。有个关于程序员未来的笑话,也许你还没听过,你该听一听,摘抄如下:
一个程序员对自己的未来很迷茫,于是去问上帝。
“万能的上帝呀,请你告诉我,我的未来会怎样?”
上帝说“我的孩子,你去问Lippman,他现在领导的程序员的队伍可能是地球上最大的”
于是他去问Lippman。
Lippman说“程序员的未来就是驾驭程序员”
这个程序员对这个未来不满意,于是他又去问上帝。
“万能的上帝呀,请你告诉我,我的未来会怎样?”
上帝说“我的孩子,你去问Gates,他现在所拥有的财产可能是地球上最多的”
于是他去问Gates。
Gates说“程序员的未来就是榨取程序员”
这个程序员对这个未来不满意,于是他又去问上帝。
“万能的上帝呀,请你告诉我,我的未来会怎样?”
上帝说“我的孩子,你去问侯捷,他写的计算机书的读者可能是地球上最多的”
于是他去问侯捷。
侯捷说“程序员的未来就是诱惑程序员”
这个程序员对这个未来不满意,于是他又去问上帝。
“万能的上帝呀,请你告诉我,我的未来会怎样?”
上帝摇摇头“唉,我的孩子,你还是别当程序员了”)
6、当程序员还是很有乐趣的。(当你学到新知识时,当你有新的思想见解时,当你有新的产品问世时,和知己探讨你的成果时…我问你,觉得这些是乐趣吗?)
7、当程序员不易也不难。(世间事有难易乎?为之…;不为…。你有决心和信心吗?)
8、你真的要当程序员?是你自己的想法?
9、你舍得花钱买书吗?(读好书绝对是学习编程的最佳捷径。你一定会说,现在电脑书籍真他XX的贵,没法子,谁让知识和技术在人家的脑袋,在人家的书里呢;等你写书时可以把价格定低一点,记着还有好多没钱但想买书的兄弟很困难呀。要舍得买书,买好书,不好的的书不如不读,其害大于其益,关于买什么书,你可以问高手或看候捷的书评;准备一个小本子记录你想买的书的名字,逛书店时看看,如果好就买下,记住要读,别光买不看。) 10、我告诉你,程序就是:任何有目的的、预想好的动作序列,它是一种软件。
11、编程序就是编写程序。
12、你想好了吗?(如果你想好了还是决定要当程序员,可以继续往下读;否则,你可以继续寻找别的出路了。)
(三) 一个程序员应该具备的基础知识和概念
1、计算机是有什么组成的,CPU是什么东西,其工作原理是什么。(对于这些以及下面将要提到的概念我不会告诉你什么答案,你可以看相应的教材,关于教材我会在下一部分详述,记住理解最重要!)
2、机器语言和微指令集的概念。
3、程序的概念。
4、汇编语言是低级语言但不是机器语言。
5、高级语言主要有那些?(C,C++,Basic,Pascal,Fortran,C#,Java等等;如果你是中国软件业的英雄,你也写一门语言,最好不用英语) 6、编译程序和解释程序的概念和其原理。(编译器是高手和专家编写的)
7、HTML、XML等是标识性语言。
8、Prolog是人工智能语言。
9、操作系统OS的概念和原理。(Windows98,Windows2000,Windows NT,UNIX,Linux,等等都是OS,还有一些实时OS,嵌入OS,编这些的绝对是高手)
10、Windows编程说白了就是Windows API的调用。(中国的程序员很多只是会编windows程序,用的是VB,我的建议是这些程序员顶多只是低级编码员,我称其是coder)
11、VC++、VB、BC、BCB、Delphi、VF等都只是编程的工具和环境,不是编程语言。
12、面向结构的设计概念。
13、面向对象的概念。(好好理解,兄弟,这个东西还是很重要的)
14、软件工程的概念和原理。(如果你想当老总就需要好好研究了,系统分析员比编码员要高一个等级,薪水也高哟)
15、数据库的概念。(要熟悉一些着名的数据库系统和语言的名字,如Orcle,SQL,DB2,DyBase等)
16、了解网络概念。
17、了解多媒体概念。
18、熟悉和掌握数据结构和基本算法。
19、是不是要求太高了,别着急慢慢来,进步在不知不觉之中。(一旦开始学习,一个月以后你就会有一个基本的概念;两个月以后你就会感觉自己有了全面的基础知识;当你知道编程序是怎么回事时,说明你已经入门了。也有很多人编了很多年程序还没有入门呢,你不会希望自己步其后尘吧。要有信心和耐心。沉不住气怎么能成大事?!)
(四) 教材推荐
――-推荐的教材主要还是针对概念来的,最好选用名校的教学用书。
1、《计算机组成原理》(熟悉)
2、《数据结构》(掌握)
3、《操作系统》(了解->熟悉)
4、《The C language》(掌握)
5、《编译原理》(了解原理)
6、《汇编语言》(了解)
7、《计算机网络》(了解)
8、《软件工程》(了解)
9、《关系数据库》(熟悉)
10、《The C++Languege 》(掌握)
11、《面向对象设计》(掌握;结合C++学习)
(五)一些经验和体会
1、真正的程序员用C++;(一位专家说的)
2、动手去编程序;
3、动脑去思考;
4、要有良好的编程风格;
5、读书,读好书,尽量读原版书!(我反复强调这一点,读书要有选择,坚持读好书,名家出的经典书,不要浪费实践在一些粗制滥造的书上面;坚持博览群书)
6、有自己的学习计划;
7、总结自己的经验教训;(准备一个笔记本,记录错误和心得)
8、不要怕学新东西;
9、要有软件工程的思想;
10、善于发现问题,然后去寻找答案;
11、向高手请教;(要虚心直到你成为高手)
12、和同行交流;(不善于交流肯定不行)
13、懂得软件的实质,不要被千变万化的表象所迷惑;
14、真正要学习用的是编程语言和方法,不是什么库,什么类,什么工具;(学用那些什么库都比较简单,但光会这些库,我觉得还远远不够)
15、学习wiodows编程主要是学习windows OS和win32 API;
16、有空了解一下嵌入式开发;
17、有空了解一下PDA软件开发;
18、了解一下.NET框架和C#语言,也许它是你新的衣食父母;
19、要有耐心,不要作浮躁的人;
20、对程序加注释,并保留你的老程序;
21、学到的东西越多,了解的越多,你就越接近专家;
22、有空去逛逛CSDN,那里有你很多知己;
23、要有信心成为一个优秀的程序;
(六)一些好书的推荐
1、《The C Programming language》 (Keinighan & Dennis Ritchie 1988)
2、《The C++ Programming Languague》(Bjarne Stroustrup 1997)
3、《Inside The C++ Object Model》 (lippmans)
4、《Effective C++》 (同上)
5、《More Effective C++》 (同上)
6、《Exceptional c++》
7、《C++面向对象高效编程》
8、《设计模式》
9、《Thinking In C++》
10、《The Standard C++ Bible》(一般推荐)
11、《The Art of Computer Programming 》
12、《Programming Windows》 (Charles Petzold)
13、《VC++5.0技术内幕》
14、《MFC 深入浅出》
15、《软件需求》
16、《Advanced Windows》
17、《C++ primer》
18、《win32程序员参考手册》
19、《用TCP/IP进行网际互连》
20、《COM 本质论》
(七)学习计划
――-这个学习计划是我个人定的,也共享给大家参考一下,共同进步吧。 1、《计算机组成原理》
2、《操作系统》
3、《数据结构》
4、《汇编语言》
5、《 C 》
6、《 C++ 》
7、《VC 技术内幕》
8、《Programming Windows》
9、《深入浅出MFC》
10、《Advanced Windows》
11、《Inside The C++ Object Model》
12、《Thinking in C++》
13、《Effective C++》
14、数据库
15、网络
16、嵌入式OS和编程
17、硬件单片机
18、.NET和C#
19、软件工程
20、UNIX和Linux
‘玖’ 程序员说地球年龄47年是什么梗
梦见乌龟爬进家门,预示者做梦人会有一笔财富收入。
旅游者梦见乌龟,会在离家远的城市居留一段时间。
梦见用石头打乌龟,危险会来自仇人。
商人梦见乌龟,出国做生意,能发大财。
女子梦见乌龟,表明做梦人日后的地位会尊贵,事业上也能很有发展。
梦见龟把头缩进甲里,象征着做梦人或周围的某个人为了防御侵犯而自我薄¥。
男子梦见乌龟,能交好运,说明做梦人的事业稳步向前发展,而且能够诸事如意。
梦见乌龟游泳,一切灾难都会过去。
梦见龟向水里爬,暗示着做梦人将有一个新的工作岗位或环境。