博客

  • R语言,高估自己的架构师和一些技术链接

    part1

    先说说创新,对金融类软件开发而言,个人觉得“Big Data”会是一个很大的发展方向,就如同这篇麦肯锡的文字所提到的 http://www.mckinseyquarterly.com/Strategy/Innovation/Are_you_ready_for_the_era_of_big_data_2864  http://blog.nodeable.com/2012/02/21/mckinsey-misses-the-market-on-big-data/

    问题是我对统计方面的数学学的很不好,即使有R语言这样的统计数据分析的专门编程语言,仍然感觉到困惑。R语言资源不少 http://ftp.ctex.org/mirrors/CRAN/other-docs.html 也期望自己多学一些,但是精力真的有限,最近要看WPF,C# in depth2, 还想看看Python3, Lua5.2文档,还有Ruby语言和类似lisp的Clojure。这么多好玩的东西,稍微懒一懒就混过去了。回到R语言,国内比较大的讨论组是这个“统计之都“ http://cos.name/cn/forum/15

    每年学一门编程语言,到底该选Clojure还是R呢? 

    part2

    Architect – Overrated! http://www.subbu.org/blog/2012/02/architect-overrated You always talk about the big picture. You think you know how the system ought to be built. You don’t have a working build. You spend a lot of time on documents that are not code. You can prototype – but your code is not production worthy. You spend too much time in meetings. The best code you wrote is a few years old. When asked for opinions you tend to speak in general terms. Your team members secretly joke about you. You start to take analysts and tech blogs too seriously. You are a dinosaur. Code. Don’t wiki. Don’t powerpoint.

    顺便问一下,你是这样的架构师么??

    part3

    http://casbon.me/what-will-pypy-do-for-your-website-benchmarki 一个关于PyPy和CPython的比较测试,PyPy最近很火,就目前发展,很快就能应用到实际生产项目了。

    http://msdnwebcast.net/ 面试的时候,很多人抱怨自己项目中只用了这个或者那个,所以不会这个或那个。好吧,只要你懂点DotNet编程,有恒心坚持,天天学一个这里面的webcast,你就能变成高手。另一个选择是 http://learndotnetprogramming.com/free-dot-net-videos-webcasts/

    http://blog.phusion.nl/2012/02/21/ruby-enterprise-edition-1-8-7-2012-02-released-end-of-life-imminent/ “We wish to focus our efforts on Phusion Passenger and other products. Instead of doing many things poorly, we want to do a few things, but do them very very well.” 深有同感。

    http://www.iro.umontreal.ca/~felipe/IFT2030-Automne2002/Complements/tinyc.c 一个简单的语言编译器,在K&R中也有个简单版本,每个程序员都应该多少了解一下相关的概念。

    http://www.bestechvideos.com/2012/02/21/railscasts-265-rails-3-1-overview Railscasts #265: Rails 3.1 Overview

    http://www.bestechvideos.com/2012/02/21/railscasts-265-rails-3-1-overview Railscasts #265: Rails 3.1 Overview

    http://www.bestechvideos.com/2012/02/21/railscasts-267-coffeescript-basics Railscasts #267: CoffeeScript Basics

  • 团队管理总结2011-2012

    2011年4月来到现在这家公司,到现在快有一年时间,在这段时间里,从一个开发者转变成为一个Team Lead,其中有一些心得体会,以及想提高改进的地方,在这里做个简单总结。

    团队的硬件方面,申请了双显示器和白板,对生产力有一定的提高。但是也发现有的同事不习惯使用双显。

    软件方面,大力推行使用一些工具进行日常开发以及提升生产力。开发了一个键盘鼠标回放工具;开发了一个Fiddler2的插件记录特定service;推行使用ILSpy分析代码;推行使用VS2010的mstest做单元测试;推行VS2010的code analysis和performance profiling功能使用。

    工作流程方面,我们组基本达到以下流程:对需求分析及时提问,分析存在的代码和业务形成文档;对设计过程进行group review,确保没有大的技术风险;代码实现中期进行第二次group review,确保方向正确;代码完成后对整个代码进行逐行的group review,确保没有大的问题;每次check in都要有另外两个人进行peer review,当天邮件反馈;每个项目都要有相应的测试计划,如果有unittest就做,如果没法做单元测试,比如是界面相关的,就要有手动测试的计划(创建相关测试数据等等)。

    从2011年4月至今已经完成大概四五个项目,基本上每个项目完成都会进行总结。主要存在问题是对业务需要更多了解,另外是需求沟通的问题。

    英语和business knowledge基本保证了坚持学习。每周大概会有一次左右的技术视频小组学习。现在也在学习一个金融方面的公开课,跟业务比较相关。

    整个团队的搭配比较合理,senior和junior程序员组合比较合适,但是在最近一段时间会有新成员加入,培养新人是一个需要关注的任务。

    就个人而言,整个团队的风格养成,希望是主动(主动性)、严谨(关注代码质量,关注关键开发流程的保证)、上进(有持续的自我学习能力)。

    在这一段时间,我的问题主要在几个方面:没有很好的保证定期与组员沟通;对于细节抓的太多,没有做到抓大放小;个人技术在这段时间的提高不多,尤其是WPF这块。

    整个团队的问题和下个阶段提升方向,主要是这几个方面:代码质量和代码标准要一以贯之,这个需要更多的坚持和培养。主动地寻找任务、主动地学习、主动地沟通反馈,提高小组成员的主动性是今年的一个大目标。WPF技术方面需要有专家,业务需要更多的学习了解。需要保证与小组成员的定期沟通聊天。另外英语能力的提高也是整个小组的重中之重。

  • 2012年2月20日技术笔记

    http://coolthingoftheday.blogspot.com/2012/02/it-decompiler-day-justdecompile-rtw-and.html JustDecompile和ILSpy是两个知名的DotNet反编译器,另外还有JetBrain出品的DotPeek。推荐ILSpy。

    http://www.slideshare.net/gsporar/peer-code-review-an-agile-process-2502327 如何做同事代码评审,其实不是几句话就能说清楚地。推荐大家从自己实践出发,总结出实用有效的评审过程。

    http://lua-users.org/lists/lua-l/2012-02/msg00639.html Lua5.1.5发布了,不过很长一段时间里,估计Lua5.1.4和LuaJit2应该是主流,而不是Lua5.2,这在其他语言的新版本发布中也很常见。

    http://www.erlang-factory.com/upload/presentations/223/ErlangfactorySFBay2010-ChadDePue.pdf Erlang和Lua,基本上Lua作为一个内置脚本引擎非常好用,所以Redis也选择Lua来加入脚本支持。不过就使用范围而言Lua+Java前景更广阔。

    http://timyang.net/lua/lua-coroutine-vs-java-wait-notify/ 一篇老文,Lua协程与Java。

    http://blog.curiasolutions.com/the-great-web-framework-shootout/ 流行的WebFramework评测,感兴趣的可以看看。

    http://herbsutter.com/2012/02/08/going-native-sessions-online/ GoNative2012视频链接,谁说C++死了来着??

  • 2012年2月编程技术新闻更新

    最近在readitlaterlist上收集的技术文章链接,在这里把精华部分总结一下。

    https://gist.github.com/1834789 Microlight – a very compact Lua utilities module,这里面有不少有用的功能,另外可以使用penlight

    http://blog.benjamin-cabe.com/2012/02/10/lua-development-tools-now-available-as-a-standalone-product koneki是基于eclipse的一个Lua IDE

    https://bugzilla.mozilla.org/show_bug.cgi?id=542074 Analyze implementation of closures in Lua and LuaJIT 一个简要分析Lua实现闭包机制的短文

    http://oredev.org/2010/videos 这里面的视频还是蛮有价值的,推荐挂上vpn然后学习之

    http://googleappengine.blogspot.com/2012/02/bugsense-hybrid-app-experiences-using.html 在google appengine上使用clojure

    http://chill.com/scott/collection/the-ultimate-steve-jobs-collection 乔布斯的视频大合集

    http://www.bobtacoindustries.com/Content/Devs/CsToCpp-ASomewhatShortGuide.pdf C#开发者如何快捷学习C++

    http://docs.oracle.com/javase/specs/index.html The Java Language Specification, Java SE 7 Edition,The Java Virtual Machine Specification, Java SE 7 Edition

    http://itunes.apple.com/in/itunes-u/multicore-programming-primer/id341597759 Multicore Programming Primer

    http://leafo.net/posts/lua_on_heroku.html –> http://github.com/leafo/heroku-buildpack-lua.git

    http://moonscript.org/ 0.2.0版本出来了,这就是Lua版本的coffeescript,代码不是很好懂啊

    http://www.cubrid.org/blog/dev-platform/understanding-jvm-internals/ understanding JVM internals

    http://www.mediawiki.org/wiki/User:Sumanah/Lua_vs_Javascript 这是Lua开发最近一个大新闻,维基百科使用Lua作为模板语言

    http://pytools.codeplex.com/ python tools for visualstudio v1.1发布了,这个免费工具把VS2010变成Python的IDE。另外支持Pyvot这个Python使用Excel的库。http://pytools.codeplex.com/wikipage?title=Pyvot