论程序员的自我“修炼”

Q:ada最近看新闻了吗奥巴马在接受电视采访的时候说所有人都应该更早的学习如何编程,其实随着全民编程时代的到来,运用一门程序设计语言编程对于大多数程序员来说更是小菜一碟,但是如何更上一层楼成为一名专家级的软件开发者呢?

A:通常啊对于一个IT从业者,让你谋得工作的也许是技术能力,但有助于提升职业生涯的却是软技能。你不可能一辈子只做开发,这是IT行话,步步高升的人都是那些发表文章、在会议上积极发言以及关注客户的员工(程序员)。通常情况下,企业CIO或多或少都具备人文社科专业学历背景,原因就在于其在软技能方面更具优势。所以我们很多朋友在职业发展上面遇到瓶颈期的时候专业技能和软技能方面都需要提高。

Q:其实扪心自问,大多数程序员除了固化的编程知识以外,又有多少素质拿的出手呢?曾经和一位已经做到企业高管的程序员聊天他就说为什么程序员薪资高当你在工作的时候我在敲代码当你下班回家休息的时候,我还在学习。在技术领域,有太多的东西会迅速过时,这就需要我们程序员不断向前奔跑。今天呢我和ada老师就和大家聊一聊高级程序员是如何炼成的

这里有一个快速提高的方式,这个方法呢,大家平时其实用的是很多的,就是A:QQ群,我们进入一些达人,大牛的群里面,通常这些高手还是很热心的,大家说着一些专业语言,什么属性啊,方法,框架,公共语言运行时,可能有些你并不能听的懂,但是没关系,私下我们自己可以补课,因为在这里我们可以接触到不一样的圈子和你平时不了解的行业讯息。

Q:恩~加入一些和行业相关——自己感兴趣的圈子,很多信息你都可以从里面获取。

其实获取信息的方式也很多啦~~~

除了你说的qq群作为程序员那必须要多看书我知道很多技术大拿他们每年花在买书的投资上都是非常高的

A:是的,如果你想要这个行业取得更快成长,那么自我提高是很重要的,看书就是自我提高的一个必要手段。不要每次遇到一个问题就想着去问别人,先看看书,再在百度,google里搜索一下,这期间,我感觉看书是很必要的。还有一个问题,就是看书,别图便宜,去图上下电子书看,我个人感觉,看电子书和印刷教材根本就是两个感觉。边学边摸索着把个OA搞个大概。

Q:对于ITIT人员:数据结构、算法、编译原理、操作系统、设计模式、软件架构、网络、面向对象、编程语言这些方面的书籍至少都要看一本,这样你遇到问题或者需要了解某项技术时才知道怎么搜索、怎么提问、和同行才有共同话题

其实在后边的随着你对这种语言随来随熟,你的知识面越来越宽,就越离不开看书。我就是一个不喜欢有问题总问别人,觉得那样很丢脸,实在自己解决不了,再去问人家,一来印象深刻,二来可以看清自己的思路到底是哪里出了问题。以便于更好的纠正自己的考虑问题的思维方式。

其实呢除了看书,还可以上一些优质的网站去获取最新的一些行业资讯和技术知识,ada你平时知道比较好的一些网站有哪些呢

A:我知道的啊,像stackovroflow,Github

Q:恩再补充一个segmentfault这些都是做得比较好的一些网站,当然大家还可以逛一逛CSDN ITPUB这样的IT论坛当你使用这些网站后,你会发现体验完全不一样:获取的信息更专业、解决问题更高效,像你刚刚说的stackovroflow,Github这些英文网站多去看看

便还提高了你阅读洋文的能力。

A:小青,除了你说的多看啊,我们要做的还有多想,你还记得我们之前去拜访我们合作公司的时候,我问公司对程序员的要求时,他提到的吗?他说员工的学习能力公司尤为看中,很多时候,工作中的学习不像学校那么明确,往往要自己主动去学,去领悟。当遇到问题时首先要尝试着去解决,而不是立马去找同事找主管,就算最后还是没能解决,你也会发现你在这个过程当中发现自己的思路需要改进的地方,这对自己也是一个很好的提升,别人帮你解决了,自己的感触没有那么深。所以我们一定要学会思考,多动脑筋。

Q:其实工作和学校还不一样,在学校遇到不懂的老师都可以耐心为你解决,而公司是以利益为根本目的的,需要的是能干活的人,所以在工作中遇到问题领导更希望看到你自己首先想了各种办法去解决,现在有一句话说程序员可以没有智商没有情商但不能没有搜商搜索的搜啊虽然前半段有点夸张,但是这句话也从很大程度反映出程序员养成独立思考习惯的重要

A:小青啊,很多it行业的人员到一定阶段会从技术岗位转到管理岗位,IT行业的资深从业人士就发现一个非常有趣的现象,某些人在工作的时候,许多人都比他技术高经验多,但后来那些技术高的人不见了,而这些人却一路高升,原因就在于除了技巧之外,还需要个人素质提高。

Q:现在的软件企业里面,大多数的技术人员,由于做的时间过长,性格容易变得内向,变的封闭,缺乏彼此的沟通和相互理解,总觉得是他人不对,影响了项目进度和完成质量。但是假如大家能够换一个思维角度,以开放式的心态讨论问题,积极思考可能会有利于团队建设,项目完成质量,同时也让自己的职业道路走得更加顺畅和高远。

A:ada我曾经和很多程序员朋友交流过让我惊讶的是有些人之所以选择进入IT这个行业尽然是觉得程序员只是和电脑打交道平时可以不用和别人交流

但只会写代码还不够。如果想从优秀发展到卓越,你必须培养起有效沟通的能力:与你的同事沟通,与你的老板沟通,与用户沟通,最终与全世界沟通。

Q:许多时候这一点被低估了,可如果不使用沟通技能的话你一天都过不了。而且,你要沟通的还不仅仅是客户。还包括你的同事,分享你的想法,用不侮辱人的方式辩论,说服你的老板应该采取你的方式。此外,还有还要汇报状态更新,解释发生的事情

A:还有一点,我们要想提升自己,做事的方法也要有改变,这是我们提高效率,少走弯路的手段,主要表现在你心里看待人,事,物的关系时,你出发的角度,个人素养和情商,所展现出来的一种决策逻辑,它将会引导你采用不同的方式来执行。其实,人的一生会遇到千千万万的事情,而在面对很多事情的时候,有个很关键的原则---选择正确的事去做,事情来了先别急着做,先想想能否不做。这也是很多技术人员常有的习惯,遇到问题恨不能马上动手写出代码实现看看,其实你会发现无形中做了很多的无用功,浪费了很多时间,当然,你也许得到了一种满足感!

Q:对其实钻牛角尖是程序员的大忌,遇到问题死磕到底虽然精神可嘉但是效率有限,要想成为一名伟大的程序员,除了你刚刚说的作为程序员还要提高文档编写能力

在我身边的程序员中,无论是现在的同事还是过去的同事,普遍缺乏文档编写能力或能力严重不足,甚至有些编程能力很强的程序员也不能写出一篇可读性较强的设计说明书、产品手册等项目必备文档。其实,文档如何才能提高文档编写能力编写能力是成为优秀程序员和项目经理必须具备的能力

在QQ群和论坛回答问题,写出来是让你更清晰地理解,写作也是交流的一种方式,长此以往会有人主动和你交流,慢慢地就有了属于自己的圈子。

来自《转角ITman》第十四期论程序员的自我“修炼”

时间: 2024-12-28 20:57:09

论程序员的自我“修炼”的相关文章

java程序员的自我修炼--冲刺知名互联网企业

2015年初收到了阿里的offer,"理想这东西是可以有的,万一实现了那".下面分享下这一年多的的学习经历,希望能帮到大家. 要成为高级程序员,一定要掌握下面六方面的知识,具体如下图: 第一java基础 这块是最基本 也是最重要的技能,细分为以下六点: 1.Collection和Map 这块是面试时首先考察的部分,如 ArrayList和LinkedList的区别,CopyOnWriteArrayList是如何实现高并发的:HashMap(重点).LinkedHashMap与TreeM

程序员的自我修炼

1:学会如何学习 学无止境. 2:制定日常规划 我以前的生活常常没有规划,但是制定计划会让生活和工作清晰而不再会有无所事事感. 每天花20分钟左右通过有道云笔记或文本文档制定将一天主要事情按轻重缓急计划好, 然后,晚上睡前每项核对和记录进度! 3:改善健康 睡眠和工作对于保持最佳的脑功能状态非常重要.我觉得自己不应该再拿年轻人不需要运动为借口逃避锻炼了. 4:练习面试 我特别赞同这一点.面试也是一种技能,但很多人往往不能意识到这一点.此外,经常性地做一些代码挑战也有助于在工作面试中取得成功. 5

读书笔记2013-4 程序员的思维修炼

  程序员的思维修炼:开发认知潜能的九堂课 (图灵程序设计丛书) (亨特(Andy Hunt))> 简介 本书解释了为什么软件开发是一种精神活动,思考如何解决问题,并就开发人员如何能更好地开发软件进行了评论.书中不仅给出了一些理论上的答案,同时提供了大量实践技术和窍门. 本书供各层次软件开发人员阅读. 1. 软件是在头脑中创建的 思维和概念是需要在团队(也包括付钱让我们开发软件的人)中分享和交流的.现在我们需要研究的真正难题是团队内部和团队间的交流,甚至更困难的问题是完全陈旧的思想.没有任何项目

21. 《程序员的思维修炼》2018-5-22

21. <程序员的思维修炼>2018-5-22 程序员 思维 坦然 随记录 做个小实验.坐下, 抬起右脚顺时针旋转,与此同时,用右手在空中写数字6.-请注意,你的右脚会改变旋转方向! 一旦开始记录这些想法,你就会得到更多如果不使用这种方法,大脑就会停止向你提供东西,但如果你开始使用它,大脑就会非常乐意给你提供比你想要的更多东西.如果你不记录这些伟大的想法,你就不会意识到拥有过它们.确实,转瞬即逝啊. 研究证实:积极的情感对学习和创造性思维非常关键,处于"高兴"的状态可以扩展

一个程序员的自我修养

在网上看到一篇程序员的自我修养,深以为然,不禁摘录一些,勉励自己 一个好的开发人员,应该能够全面.高效.严谨的去处理任何软件程序和业务问题,成为一个好的开发,是一个很有意思的话题,不过无论这个话题如何开展,基础两个字必不可少,虽然代码量是衡量开发能力的重要指标,但仅能够熟练的进行代码编写是不够的,更要能深刻的理解技术原理和业务逻辑,扎实的个人基础和技术基础往往会促进代码的编写,更游刃有余的解决问题. 下面说的一些基础,可能绝大部分开发人员都不会在意甚至忽略,但恰恰这些才是开发大厦的基石. 1.科

程序员的自我修养:(1)目标文件

程序员的自我修养:(1)目标文件 1.目标文件 1.1 编译与链接 在使用像Visual Studio或Qt Creator等IDE时,通常有一个叫做"构建"的按钮.当编辑完成要运行和测试时点一下它,程序就能跑起来了,所以我们很少关心编译和链接.其实,编译和链接合并在一起就称为 构建(Build).简单的一次按键,实际背后却是异常复杂的过程: 预编译(Preprocessing) 编译(Compilation) 扫描:算法类似有限状态机(FSM),将字符转换成Token. 语法分析:分

程序员的自我修养 学习笔记(1)

本文源自在学习<程序员的自我修养>中的心得体会. 对于底层系统程序开发者来说,硬件平台可以抽象为三个主要部件,CPU.内存.I/O控制器. 早期的计算机没有复杂的图形功能,CPU和内存之间的频率差异不大,它们都是连接在同一个bus上面的.其他I/O设备,诸如显示设备.键盘.磁盘等速度比内存.CPU慢很多.为了IO设备与CPU.内存之间的协调通讯,一般每个IO设备商都有相应的IO控制器,早期的硬件结构图如下: 随着技术的进步,CPU的频率越来越高,内存跟不上CPU的速度,他们之间就需要一个转换机

程序员的自我修养(一)

程序员的自我修养,最开始看这本书是在学校的图书馆,当时翻了几下,发现这本书内容还真挺特别的.是浙大几个老师写的,就更感觉亲切了,所以自己买了一本书来看看,这也是我到研究生之后买的第一本书了,哈哈,平时都是pdf啥的,其实pdf真不好看. 言归真正,讲讲昨天看到的 从一个HelloWorld程序开始讲起 #include<stdio.h> int main() { printf("helloworld") return 0; } 从高级语言到操作系统可以执行的语言,这里有几个

读《程序员的自我修养》感受

这书不错,链接-装载-库 我觉得是很底层的东西.比如很多人闭着眼睛都能写出来的hello world(当然不包括brianfuck,如果你会,你真的闹残了吗= =), 其实链接编译器做了很多,不然就哪来的printf,这IO初始化也是CRT(c runtime)库完成的.堆栈的初始化,还有系统装载让程序运行等等.涉及很多. 书里后面就讲了一个CRT库,自己写一个,感觉不错,学了很多.比如malloc,free的实现,话说还是跨平台的.当然库很小,功能不多,不过写这个也可以学学算法.内存的分配,这