Fork me on GitHub

All Tags:

mindset

devops

book

ci

communication

jenkins

自媒体

hometown

geek life

cloud

Take Computer As a Tool

04 Mar 2015

Take Computer As a Tool 把电脑当工具

当我们在用电脑的时候,其实我们不知不觉地在被电脑塑造,捆绑。我们在闲聊,我们在八卦,我们在逛店,我们在看视频,我们在翻网页。

但是我们忘记了电脑只是一个工具,我们应该主动得知道我们要用电脑做什么。

比如说我要找人聊天,我就约好时间,QQ聊个天,然后关机; 比如说我要买个东西,我就淘宝,京东上快速下单,而不必在那签到、评价领取积分或者抢红包; 比如说我们要看某个记录片,安排好时间,安静得好好看完; 比如说我们要查某个东西,学习下搜索技巧,快速地找到需要的信息; 其他的时间,如无必要,不要被电脑这个工具奴役。​

Using What You Already Have

12 Jun 2014

Sometimes we keep looking for resources everywhere only to realize that we had it with us the whole time. Situation like these might arise when you have too many choices. I too faced these moments before. It is a tough situation indeed.

I think one should develop art of learning before trying to learn a lot of things at once. Once you know how to learn and improve how to learn through constant iterations. It becomes easy thereafter.

I changed quite a lot as a developer and person. Last year. I was all about learning new technologies, getting super aware about all the frameworks that are popular. Now, I don’t even bother checking these. My goals are now mostly on low level decisions or high level architecture. All these frameworks and likes are just tooling. Nothing less nothing more. The main focus should be on problem solving. And problem solving at its heart is always Language/Platform/Frameworks agnostic.

  • There is absolutely no good theme if you are running a technical blog.
  • Syntax highlighting is pathetic.
  • I can’t write post in my text editor.
  • There is no source control.

Reading books and theory is also very important at this stage. Consider it as like sitting on the shoulder of giants. Of course practice is very important as well but making sure there is a good balance between these two really pays off.

I love reading books. I have bought quite some books in the past 11 months. I have so much to read and learn from these gems. I have done good progress in completing some of these. Hoping to cover more in the near future.

How-To-Blog 如何写博客

13 Apr 2014

13 Apr 2014

No matter when or why you started your blog, a few tweaks here and there to your blog and your attitude can change things for the better. Check out our list of seven tips to help you succeed as a blogger.

1. 选定主题 Focus on Topics

What readers really want is a collection of related and helpful articles on the same topic to help solve a problem or question.

2. 内容为王 Content is Key

-->   

How-To-Blog 如何写博客

13 Apr 2014

No matter when or why you started your blog, a few tweaks here and there to your blog and your attitude can change things for the better. Check out our list of seven tips to help you succeed as a blogger.

1. 选定主题 Focus on Topics

What readers really want is a collection of related and helpful articles on the same topic to help solve a problem or question.

2. 内容为王 Content is Key

how-to-choose-third-part-tool

25 Nov 2013

如何选择第三方工具构建系统

俗话说,他山之石,可以攻玉.当我们构建一个软件系统的时候,我们会面对很多选择: 开发工具的选择,源代码管理工具的选择,数据服务器的选择……

前段时间我为公司的Optimum项目做持续集成方面的研究,因为项目本身是基于.NET平台下的,所以我开始选择的是CC.NET,这是一个开源的第三方工具,他可以很好的支持我们这个项目的源代码管理工具StarTeam。构建这个系统开销比较大的地方就是配置,他是纯手工配置XML,需要先了解他的XML规则。整个系统完成持续集成工作大概花费了2天时间。 后来在项目的PMR会议上,我们公开评审了我们这套CC.NET持续集成的流程,程序员们一致表示这将大大方便大家,提高工作效率。有过多年项目经验的PMP提出另外一个java阵营的工具Hudson,据说也是构建持续集成系统的工具。希望我有机会研究对比下,看到底哪个系统更加适合我们这个系统。 会议之后,我在网络上进行了搜索对比, 一些Java阵营的朋友都非常支持Hudson,还有人对Hudson和CC.NET进行了对比。其中有两条非常重要的,就是Hudson支持插件和友好的界面配置。当时我就心花怒放,因为CC.NET在初次配置的时候是个很大的开销。于是我就着手打造我们这个系统的Hudson版的持续集成系统,很快,如你所料,仅仅用了2个小时我们就搭建好了这个系统。我立即全组通告了这个消息。最后我们这个项目决定转用Hudson作为我们的CI工具。

但是,好景不长,很快我们遇到了Hudson下的一些问题:对StarTeam的支持性不够好,遇到问题后,我们去看Husdon的源代码没有直接看.net程序顺手。诸如此类的问题一个接着一个,最后我们不得不重新回到CC.NET下。

通过这件事情,我学会了软件开发中重要的一课。选择工具的时候一定要选择那些适合你特定项目的,可以被信任,可以被维护的工具。引申来说,如果一个工具对你项目至关重要,你一定要选择一个可控的第三方工具。假定你在写个游戏程序,你的卖点是图形处理能力,对你最重要的就是3D库,这是你的卖点,如果你为了节约成本,加快开发进程,实现软件复用而选择第三方的3D库,你也要选择开源的库,否则当程序崩溃的时候,你就无计可施了。因为你不知道问题出在哪里,因为你没有源代码,你不能方便的调试诊断问题的根源。所以,最关键的就是,要使用更原始的工具或者开源库来构建你系统中的核心基础。