你做过的最有效的提高编程水平的一件事情是什么

最近在stackexchange网站上看到了一个非常好的问答,有人问:你做过的最有效的提高你的编程水平的一件事情是什么? 回首作为一个程序员这些年来的生活和职业道路,我使用了很多种不同的方法来提高我的编程技能 —— 阅读代码,编写程序,阅读书籍,听讲座,看视频,等等。 我的问题是:你做过的最有效的提高你的编程水平的一件事情是什么?对于那些想提高水平的程序员,你的建议是什么? 我希望你们提供的答案是各种各样的,并且不是那种“放之四海而皆准”的答案 —— 我希望得到适用于不同人的不同的答案。 有很多人给出了自己的答案,……

Read More

一名开发者从做技工的父亲那里学到的 5 堂课

所谓“隔行如隔山”,其实不然,在工作和生活中,大部分的知识和技能都是相通的。学会举一反三,对于技能的提升有很大帮助。本文是一名软件开发者从做技工的父亲身上学到的一些经验,而这些经验使他最终成为了开发者中的佼佼者。 以下为文章全文: 我的父亲是一名工程师——是机械工程师,不是软件工程师。在他成为机械工程师之前,他也做过技工和木工。他很聪明,同时在建筑和维修方面也很有 天赋(只要不涉及到电气即可,不过那就是另外一回事了)。他甚至在 60 岁时依然能做围墙、工棚和甲板之类的工作。当我和我的兄弟还小的时候,……

Read More

换个活法:临终前会后悔的25件事

最近,一个“临终前你会后悔的事”的帖子在国内外网站上被疯狂转载,瞬间点醒了数万人。它的作者是美国一名叫博朗尼·迈尔的临终关怀护士,文中总结了生命走到尽头时人们最后悔的5件事情。 最悔:“希望当初我有勇气过自己真正想要的生活” 第二:“希望当初我没有花这么多精力在工作上,错过了关注孩子成长的乐趣,错过了爱人温暖的陪伴” 第三:“希望当初能有勇气表达我的感受,而不是长期压抑愤怒与消极情绪” 第四:“希望当初我能和朋友保持联系,而没有因忙碌的生活忽略了曾经闪亮的友情” 第五:“希望当初我能让自己活得开心点……

Read More

cx_Oracle安装出现的ImportError问题以及解决办法

在redhat上装cx_Oracle,运行完 python setup.py build python setuo.py install 之后,在python脚本中执行 import cx_Oracle 出现了下面的错误 ImportError: libclntsh.so.11.1: cannot open shared object file: No such file or directory 在网上找了一下,解决办法如下: cd ~ vi .bash_profile 在.bash_profile中添加 LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib:/usr/local/lib export LD_LIBRARY_PATH 然后保存。再执行: source .bash_profile Bravo~问题解决了~

Read More

十月小结

十月份呼一下子就过去了,每当月末和月初的时候总是要比平常忙一些。 今天晚上去看了会书,然后把最近学习工作上的事情又梳理了一下,感觉还好,生活挺充实的。 我喜欢这样忙忙碌碌的生活,日子自在而且远离忧愁,不必为很多琐事而烦恼。 这个月买了好多书,也看了好多书,还有几本没来得及看。说实话,看的慢主要是因为有两本书就像天书,我每本看了三遍居然没怎么看明白,没办法只好去看一些更基础的书籍来帮助理解。 今天听说光合作用书店倒闭了,挺惋惜的,我这个月月初和月中的时候还去过五道口的店呢,不过一本都没买,因为网上买……

Read More

数据库“null password given; logon denied”问题的解决

前几天重装了系统,JDK重装了,今天用Tomcat就出现各种问题。其中“null password given; logon denied”问题还是第一次遇到。主要表现问连不上数据库,好像是连接时密码为空(实际上我打断点发现密码并不为空)。然而我用Python连接数据库时没有出现异常,看来问题并不出在数据库上。 我在网上搜了很多解决方案,都不靠谱。后来在用HmacSHA1加密是发现也出了问题,后来有人指出:这是JRE配置出了问题。 然后我就把JRE的路径修改了一下,所有的就都好了。 操作步骤: 1. Windows->Preferences->Java->Installed JREs->修改……

Read More

Android下拉刷新效果实现

列表是Android最普遍的控件之一,而在加载列表时,需要在header或footer处加入新的数据,这样刷新列表就是一件很常见的事情。 过去最普遍的刷新列表的做法就是在header处添加“刷新”,在footer处添加“更多”。这样做简单易行,但是用户体验不是很好,特别是对于iPhone的下拉刷新来讲,Android的界面似乎没有那么强大。 前一阵子,Johan Nilsson在他的博客上发布了Android下拉刷新的实现效果,致使大家纷纷效仿。这是他博客的原文: http://johannilsson.com/2011/03/13/android-pull-to-refresh-update.html 这是该实现的源码: http……

Read More

多种排序算法的Python实现

虽然我一直觉得算法非常重要,但是一直没有时间坐下来学习和总结一下。 大学的时候学的很多重要的东西都忘得差不多了,其中就包括算法这样的重要的知识。以前每次面试的时候一到算法这部分我就发懵,因为我确实对算法没什么研究。 前一阵子买了一本算法书看了看,发现里面讲的很多东西都看不懂!本来我以为算法这个东西应该很简单才对,至少哪些基本算法应该很好理解。 这段时间一直在总结以前所学的知识,也算是“温故而知新”。 今天在网上看了一篇算法文章,感觉还不错,决定分享一下。 算法来源:http://www.lfyzjck.com/2011-05-1……

Read More

光绪皇帝在北京大学的讲话

站在千名京师大学堂学生前面,光绪沉默了片刻后,徐徐说道,“今天是京师大学堂正式开学的第一天,所谓学堂,在朕看来就是研习学问的地方。云轩阁我们的古人有一个传统叫作,坐而论道,今天,朕就和你们论一论这世间的道。”说罢,光绪抬起右手轻轻的往下压了压:“大家都坐下吧,朕也坐下。” 众人迟疑了片刻,都纷纷席地而坐,目光有些疑惑的望着前面的皇上。一旁的太监也端过来一把放有明黄色座垫的椅子,光绪一提衣襟下摆,静静的坐下说道: “朕从识字开始,朕的老师就在教授朕为君之道,朕亲政后,也在不断学习治国之道。世间的道……

Read More

Android开发常用的Intent的URI及示例

以下是常用到的Intent的URI及其示例,包含了大部分应用中用到的共用Intent。 一、打开一个网页,类别是Intent.ACTION_VIEW Uri uri = Uri.parse(“http://wubotao.com/”); Intent intent = new Intent(Intent.ACTION_VIEW, uri); 二、打开地图并定位到一个点 Uri uri = Uri.parse(“geo:52.76,-79.0342″); Intent intent = new Intent(Intent.ACTION_VIEW, uri); 三、打开拨号界面 ,类型是Intent.ACTION_DIAL Uri uri = Uri.parse(“tel:10086″); Intent intent = new Intent(Intent.ACTION_DIAL, uri); 四、直接拨打电话,与三不同的……

Read More

关于Android方面的一些思考

其实很久都决定学习Android底层方面的知识,看一看底层方面的代码,弥补自己在基础知识方面的不足。但苦于我对C++并不是很熟悉,源代码看起来很困难,而且对一切驱动方面的知识更是了解的少之又少,所以这件事一直都耽搁了。 这段时间静下心来,准备把以前所学的知识梳理一下,然后好好的学习一下C++,研究一下Android底层代码的一些实现。我觉得这些知识以后会非常有用,让我真正成为一个多面手。 这个过程可能会比较长,少则半年,多则一到两年。我打算从长计议,先把基础部分学好,一步一步来。 在十一之后可能会办一张Visa信用卡,……

Read More

成功者十三个价值连城的习惯

成功是一种习惯,失败也是一种习惯。你的习惯无法改变,但可以用好的习惯来替代。成功很简单,只要简单的事情重复做,养成习惯,如此而已。以下是成功者十三个价值连城的习惯,我们称之为“百万元的习惯”。 习惯一:成功者清楚地了解他做每一件事情的目的。 成功者虽重视事情的结果,但更重视事情的目的,而目的的清楚则有助于他达到结果并且享受过程; 习惯二:成功者下决定迅速果断,之后若要改变决定,则慎思熟虑。 一般人经常在下决定时优柔寡断,决定之后却有轻易更改;成功者之所以能迅速下决定,因为他十分清楚自己的价值层级和……

Read More

写在25岁生日之际

今天是我25岁生日。我非常感谢我的父母和家人这么多年艰辛的付出,才让我们有机会取得今天的成绩。同时也感谢我的朋友们,让我每次面临绝境时都能化险为夷。 过去的一年,我经历了太多太多的事情,有苦难,有欢笑。人生跌宕起伏,让我觉得非常刺激,非常充实,非常有意义。我特别感谢这些苦难,它们造就了我钢铁般的意志,让我觉得没有困难是不可战胜的,我能做到我想做的一切事情。 在未来的日子里,我还是要谨言慎行,小心处事,不要让我最亲近的人为我担心。 另外,我还有一些事情要做。 第一件事,就是储备知识。这个社会瞬息万变,……

Read More

Android滑动Tab的实现

在Android应用中,一般TabActivity和若干个Tab选项卡(TabWidget)。如果选项卡的数量超过了5个,就不适合放到一个屏幕中,这样可以让这些选项卡滑动起来。 滑动的选项卡的实现有好几种方式,在这些方式中,最简单也是我最满意的还是在原生的TabActivity上修改,将上面的选项卡改为可滑动的状态。这样既有新的滑动的效果,也保留了原有TabActivity的各项功能。 实现Tab可滑动基本的思路就是把上面的TabWidget放到一个HorizontalScrollView中,让TabWidget滑动起来。不过如果仅仅修改XML还是会产生问题,就是没有办法控制每个选项卡的宽……

Read More

对最近生活工作情况的一些思考

工作方面: 最近工作上比较不爽,本来打算离职的,然后再去找找其他的工作,但是不让走,所以我决定换个方向继续干。 工作上的主要困扰就是:我觉得自己的工作不能给我带来快乐,反而带来困扰。我发觉自己正在工作上迷失方向。 现在我决定先换个方向试试,做做云计算方面的东西。当然,在Android开发上我会继续提高自己。 公司让我最不能人的就是做开发的还要穿正装,我真是服了。 生活方面: 最近一直想换个地方租房子,但是一直没有合适的地方,所以一直很纠结。 不过在北京要租个合适的房子,真的不是一件好办的事情,有些时候真的想……

Read More

每天晚上都会把这段话念完才睡觉

Promise Myself 向自己承诺 To be so strong that nothing can disturb your peace of mind. 要坚强,不让任何事物烦扰内心的静谧。 To talk health, happiness and prosperity to every person you meet. 要与每一个见到的人谈论健康、快乐和富足。 To make all your friends feel that there’s something in them. 要让所有的朋友感到他们各有所长。 To look at the sunny side of everything and make your optimism come true. 要窥见一切事情的光明之面,使你的乐观信条处处应验。 To think only of the best, to work only……

Read More

Python中is和==的区别和联系

最近在看代码时我想起这个问题,虽然以前也曾经遇到过,不过一直没有时间总结,今天就把一些想法写到这里。 在Python中,一切皆对象,一切值皆引用,这是Python不同于Java的一个重要区别(在Java中有八种基本类型不是引用类型,但这不是本文要讨论的)。 比较两个对象通常有两种方法,一种是比较这两个对象指向的内存地址是否相同,另一种就是两个对象的字面值是否相同,例如两个字符串可以比较它们字符值,两个整形可以比较数值。 在Java中这两种比较方法分别对应“==”和对象的“equals()”方法,在Python中分别对应“is”和“==”。……

Read More

Python logging的使用

上次在做火车时刻表抓取时用到一个程序,里面有几个地方比较好,让我觉得印象比较深刻的就有这么一段,使用Python的logging部分来记录日志。 这个跟Java中的log4j比较类似,可以定制打印日志的格式,可以将日志写到文件中,这在解决一些复杂的问题时很有用。 说明: 1. filemode filemode=’r',只读,清除原有内容(默认方式) filemode=’r+’,读写,清除原有内容 filemode=’w',只写,创建一个新的文件覆盖旧的 filemode=’w+’,读写,创建一个新的文件覆盖旧的 filemode=’a',只写,追加 filemo……

Read More

程序出错后的经典回复

20. “That’s weird…” 很奇怪…… 19. “It’s never done that before.” 以前没这样过的。 18. “It worked yesterday.” 昨天还好好的。 17. “How is that possible?” 那怎么可能?(怎么会出问题?) 16. “It must be a hardware problem.” 这一定是硬件问题。 15. “What did you type in wrong to get it to crash?” 你输入什么东西后才崩溃的? 14. “There is something funky in your data.” 你的数据有问题。 13. “I haven’t touched that module in weeks!” 我好几个礼拜没动那个程序了! 12. “You must have ……

Read More

不开心

最近这段时间很不开心,工作上的事情,学习上的事情,生活上的事情,还有众多的杂事,压得我透不过气来。 租房子的事情也弄得我十分不爽,有一种随时想发飙的冲动,不行的话过段时间换个地方住。 也许是这段时间工作太累了,也许是我觉得自己要做的事情太多了,也许是我觉得时间太紧迫了,我觉得自己身心俱疲,好像已经没法再坚持下去了。 我现在特别想好好休息一下,找个地方去度假或者去旅行,好好的休整一下。 不过我打算还是再坚持一段时间,因为我还有一些事情没有完成,需要我这段时间继续努力。 我打算在这段时间好好的储备一些……

Read More