201701-16 如何成为一名开源程序员 首先要明白,开源是开放的。这听起来似乎是句废话,但现实中有很多人恰恰就忘记它只是一个文化现象的描述,而不是一家500强公司的名字。不需要去面试或完成注册表或注册表单才能成为开源程序员。只需要做好程序,然后共享代码。在理想情况下保证代码能保持开放,不管它被如何使用。就是这样,你就是一名开源程序员!那现在目标已经有了,过程要怎么样呢?第一步:找到和选择自己的Skilltrees(技能树)... 继续阅读 >
201701-11 2017年找工作?12个实战法则帮你搞定求职和跳槽 最近在知乎Live上进行了一场关于求职与跳槽的分享,一共12个法则,希望能帮助到你进行该不该入行、怎样晋升、该不该跳槽的思考。白驹过隙,时光荏苒,2017年悄然而至,不知道你的总结写好了吗?计划订好了吗?骚动的跳槽季,是否有行动计划了?年底的奖金能拿到多少?明年可有晋升机会?好多好多的问题,好多好多的焦虑,很多宝宝陷入了自我认知型焦虑,感觉自己现有的工作做不好,也找不到更好的工作了。我对行业一无所知,... 继续阅读 >
201612-20 Web API 设计之最佳实践 许多文章讲述API的开发,如REST,SOAP,Json等。本篇以实践为中心,理论和实践相结合,与各位开发者讨论在API开发前的设计思维。让你可以在开发之前,将这些事想清楚,相信会事半功倍。概述各位朋友,何谓API?想必你一定知道APP,APP我们手机端的软件应用,它是Application的简写。本文中心思想主要讲述API的设计。API是个甚?API是英文是ApplicationProgrammingInterface的简写,中文是应... 继续阅读 >
201612-09 程序员获取编程灵感的十种方式 有时我会陷入读着编程书但编不了程的陷阱。我不能总是找到一个可工作的有趣项目,即使我知道有大量的机会。如果你有相同的问题,这里的一些提示可能会有所帮助。1.与其他程序员聊天这是最好的灵感来源,因为,他们会有一些你想不到的点子。即使是一些程序员朋友、一个编程小组或甚至是一个会议都行。将所有这些想法混合起来肯定会给你一个新的视角。2.和非程序员一起聊天首先,在那些让你觉得快乐或挑战... 继续阅读 >
201612-05 最让程序员沮丧的 10 件事 软件开发是一个挺不错的工作,不过同时也像任何其他工作一样有着不好的一面。这里列出了大部分程序员对于写代码无法忍受的10件事。对于非程序员来说,他们的工作看起来非常幸福。需求很高、待遇很好,公司提供各种各样的补贴福利等等。然而实话实说,虽然以上所说都不为虚,这份工作就像其他任何工作一样充满了让程序员们抓狂地扯下仅存的几根头发的烦恼。一天当中可以有好几件事能把一个普通程序员逼迫到处于崩溃的边缘... 继续阅读 >
201612-02 代码质量是优秀程序员的底线,你居然说不重要? 最近dashiOS开源,infoQ推送了一篇翻译:从DashiOS开源说起,不要过于追求完美代码。我读完的心情就是干死他,一本正经的胡说八道。每段都是先提出一个正确的概念,然后就展开表达混入害人的概念,这种写作手法让人不齿。追求代码质量是一个优秀程序员对自己的要求许多程序员文化是建立在完美代码的理想上:代码不仅能够运行,而且也必须是干净、优雅的。我们以巧妙地构建解决难题的对策为傲。然而这种完美主... 继续阅读 >
201611-23 10个习惯助你成为一名优秀的程序员 当谈到编程时,很多人应该都有听过10x程序员的说法。据说一个10x程序员的效率大约是其他程序员的10倍。这是一个有争议的话题,无论你选择相信10x程序员,还是认为这十分可笑,下面的10个习惯可以在一定程度上助你成为一名势不可挡的优秀程序员。1、积极使用搜索工具作为开发人员,你需要了解如何利用搜索解惑,查看其他人对你正在研究的主题所讨论的话题和内容,并将学到的知识应用于手头的项目。当面临一个问... 继续阅读 >
201604-18 软件开发所经历的生命周期 总的来说,软件开发都会经历一下生命周期分析需求:分析问题领域,了解用户的需求软件设计:设计软件的总体架构,把整个软件系统划分成大大小小的多个子系统,设计每个子系统的具体结构软件编码:用选定的编程语言来编写软件功能,实现软件设计阶段所勾画出来的软件蓝图软件测试:测试软件是否实现特定的功能,以及软件的运行性能软件部署:为用户安装软件系统,帮助用户正确的使用软件软件维护:修复软件... 继续阅读 >
201604-14 你要避免的软件开发模式 做软件开发十数年,见识了形形色色的开发者,和各种各样的奇葩软件开发模式。本文跟你侃侃这些软件开发模式及其特点。IDD(IDE-DrivenDevelopment)大巧在所不为,大智在所不虑。--荀子天论IDD,也就是IDE驱动开发,几乎是初学者步入软件开发殿堂的必经之路。IDE为开发者屏蔽了很多细节,并且几乎不用配置(相对于vim/emacs/sublime)就可以使用代码自动补全,代码跳转,搜索... 继续阅读 >
201510-17 快速熟悉项目代码 对IT人士而言,换一份工作或进入一个新的公司,往往意味着要熟悉一个新的开发环境,要快速了解新的项目。如何快速地熟悉项目代码,是每个IT人士都会遇到的问题,特别是对刚进入IT职场的应届毕业生,这个问题更显得棘手。下面是我自己在经历几个工作之后结束的一些方法,与大家分享一下,仅贡参考!1.通读需求文档,了解项目用途;一个企业级的项目,一定会保留一些相关文档吧!比如需求文档,设计文档,项目计划等,... 继续阅读 >
201510-17 如何给软件开发项目估价? “兄弟,你看做这样一个软件需要多少钱?”这估计是所有软件从业人员被问的最多也是最无奈的一个问题。这个问题等同于,“你看装修一个100平米的房子需要多少钱?”。软件开发你不懂,装修你总懂吧,100平米的房子装修从10万到100万均有可能,取决于你找什么级别的设计公司,买什么样的材料,请什么样的施工队……所以,我真的没有办法回答你“做这样一个软件需要多少钱?”的问... 继续阅读 >
201506-16 用医生的思考方式调试你的代码 “现在的编程工作就像是对你需要解决处理的部分做科学研究。”——GeraldSussman设计和维护好的软件就像是一个抵制复杂度的永无止境的奋斗过程。任何足够大小的应用程序的代码路径和组件都能迅速成长成令人眼花缭乱的组合爆炸。一点都不简单。当部署类似于Heroku和AWS的平台时,单服务器的Web应用程序成为了分布式系统。现代浏览器模糊了客户端和服务器之间的界线。当简单程序在多个CPU... 继续阅读 >
201501-14 软件开发中需要克服的8个坏习惯 在软件开发领域,很多问题都是由一些不好的编程习惯导致的,消灭掉这些坏习惯,让你的开发更容易,也更高效。1.代码中有拼写错误不要惊讶,这是非常常见的问题,最令你抓狂的是这和你的编程能力没有任何关系。尽管如此,一个拼错了的变量名字或函数名字都会带来灾难性的后果,而且它们还不易被察觉。那么如何解决呢?你应该使用一个好的集成开发环境(IDE)或一个编程专用的代码编辑器,它们都可以极大程度地帮助你减少拼写错... 继续阅读 >
201411-11 PPS、华为、大华、海康威视、恒生电子、网视科技等面试经历 今年的就业形式不太好,在过去的两个月,一直处于奔波的状态。今天总算把自己签了出去。首先,要感谢家人、朋友和老师的鼓励和帮助。对自己的面试经历理了理,过去两个月,居然面了多达14家公司。不做统计,不知道有多么悲催,呵呵。这篇文章,是对自己面试的一个总结,主要包含面试中问的问题,以及自己失误的地方。第1家,是PPS-上海众源网络,嵌入式开发工程师笔试过后,获得了面试机会,PPS总共2面。第一面技术面,问了Qt的... 继续阅读 >
201411-11 为何程序员完成最后20%的工作需要的时间跟之前的80%一样多? 听过行百里者半九十吧。这句话在程序员的工作中同样适用,到底是为何呢?Matija用一个精巧的比喻揭示了个中道理。其实这就好比在高峰期从郊外开车回市中心。前80%的路程很顺,高速嘛,可能两小时就走完了,但是到了城里,就走不动了,红绿灯,人行道,各种环线和菜鸟司机,可能两个小时还不够用的。编程也是如此。最开始你要设计框架,给整个项目打基础,然后开始开发,几周或者几月之后,你完成了整个项目80%的工作,各种... 继续阅读 >
201411-11 2014 年热门的 IT 职位及年薪 众所周知,全球IT技术人才近年来一直都比较紧缺,进入2014年,这种态势可能仍将继续下去,预计IT技术人才,尤其是高端的IT管理人才将会非常吃香。猎头公司RobertHalf的调查显示,有16%的企业CIO计划在2014年上半年扩充自己的团队,其中软件工程师、手机开发人员和IT经理将会成为2014年比较热门的职位。(1)软件工程师软件工程师主要负责计算机软件和系统的设计、开发、维护和评估工作。根据企业需求的不同,软件工程师的工作... 继续阅读 >