BDD在移动开发中的应用

BDD风格的测试用例使用纯业务领域的语言进行描述。这种方式提供了一种更好的理解测试用例的途径。测试用例使用了高层次的逻辑表述,而不会包含具体的实现细节(例如点击一个按钮)。

敏捷咨询日记——能力建设

丰田精益生产信奉的两大支柱是"以人为本"和"持续改进"而从字面来看第一个是所有的基石。印象深刻的是当我第一谈起这一点时候,我隐约感受到这个强大执行力组织中的管理者心中的迟疑。不止一次地被问道在一个庞大的,人员结构参差不齐的组织中如何实践对参与者要求极高的敏捷实践:“若非丰田那种百年拥有有强大技工文化背景的企业不能真正实现精益生产。

在ThoughtWorks我们如何做内部培训?

对新人的培训是每个企业都绕不开的一个话题,企业当然想要每个新人都能直接独当一面,最好可以直接上项目贡献自己的价值。但是从经验来看,所有新人到一个新环境都需要学习很多不同的新东西(新技术,框架,语言,工作方式等等),而每个企业对于培训新人都有各种各样的策略,比如老人带新人,比如扔到项目上让新人自己学。

数字时代的劳动与剥削

剥离掉所有的花言巧语,一个简单的描述摆在我们面前:我们用了一定的时间做某事,而做这件事的目的是为某企业增加财富。你把这件事叫做什么?我叫它“劳动”。微信的用户们都是免费的劳动力,当他们每天花1.7个小时刷朋友圈,他们就是在给腾讯打工,腾讯的财富就是建立在剥削这些免费劳动力之上的。

函数式 JavaScript

这是一本你可能2小时就能看完的小书,但是涵盖了基本所有函数式编程的内容,还包含了一些 ECMAScript 6 定义的函数式新特性, 如箭头函数, 模式匹配等等. 还会介绍函数式一些重要概念在 JavaScript是如何实现即应用, 以及如何以函数式的思想编写 JavaScript 代码.

咬文嚼字话可持续发展“谎言”

被称为”可持续发展”的先锋企业中,常看到类似的描述——某年至某年间单位产量的温室气体排放、用水量及废弃物量分别下降了百分之几,他们真的可持续发展吗? 中石油五月初发布了2012年度CSR报告,随后便出现了昆明PX事件;金光纸业获奖无数,却悄悄种下3000万亩桉树林(注:桉树可造成地下水位迅速下降,并形成土地沙化)。

敏捷咨询日记——匠人精神

我曾经拜访过印度某个Freemason(共济会)分所,这个世界上最大地下组织来源于传说中制造巴比伦神殿的三个石匠。教谕认为石匠是人类中掌握自然奥秘的一群人,常人只是“神有缺陷的复制品”,而只有靠匠工的不懈努力才能修补人类缺陷使其更接近于神。这也是为什么共济会的标志便是圆规和方矩,方圆规矩的隐喻在六芒星下变得直白。

20天3D打印总结

mbot cube 3D打印机拿到手也有20多天了,有空就玩玩,还是做了一些好玩实用的东西出来,总结一些经验来分享。总体来讲3D打印技术还不是太难掌握,对于打印素材来源及模型选择有一些讲究,要特别注意一些模型打印起来非常困难,甚至无法打印。

2015.5 技术雷达 | 平台篇

Apache Spark(spark.apache.org)作为一种快速和通用的大规模数据处理引擎已取得稳步进展。该引擎基于Scala实现,非常适合于那些在多并行操作之间重用数据工作集的应用程序。它即可以作为一个独立集群,也可以作为Hadoop的YARN集群的一部分来工作。它可以从不同的源来访问数据,比如 HDFS,Cassandra,S3 等。不仅如此,Spark还提供了许多更高级的操作符,以便简化数据并行应用程序的开发。作为一种通用的数据处理平台,它使许多更高级别的工具的开发成为可能,如交互式SQL(Spark SQL),实时流媒体(Spark Streaming),机器学习库(MLib),R-on-Spark等。

2015.5 技术雷达 | 技术篇

当我们需要一张描述当前系统的基础设施或物理架构的图形时候,我们通常会选用自己最喜欢的工具来绘制。但是当你使用云或者其他虚拟化技术的时候,这种方式却不再适用。我们可以使用这些平台本身提供 API 去查询实际的基础架构环境,并使用一些简单的工具比如 GraphViz(graphviz.org),一些可以输出 SVG 格式的工具,生成实时的,自动化的基础架构图(automated infrastructure diagram)。

创业提案的逻辑

最近花了大量时间在自己新的内部创业项目,免不了给各种不同的人(内部或外部)进行商业提案(Business Proposal)的工作,同时也在帮助湾区一些社会企业包装面向投资人的Pitch,结合以往大量商业合作项目的经验,我重新思考了商业提案的逻辑,相信无论提案的规模、内部或者外部、创业或者商业项目,一个合理的逻辑都是必不可少,希望这个总结能给你帮助。

2015.5 技术雷达 | 工具篇

尽管依赖管理的概念并不新奇,在很多技术栈下它甚至已经被作为一种基础开发实践,但在 PHP 社区却并非如此。Composer(getcomposer.org)作为 PHP 技术栈下的依赖管理工具,深受其他技术栈下依赖管理工具的影响。例如, Node 的 npm 以及 Ruby 的 Bundler 等。现如今 Composer 已经被 PHP 项目广泛使用,并且其本身也日趋成熟。虽然在对内部库的管理上,Composor 还有待改进,但是对于大多数外部库的管理 Composor 已能够完全胜任。

2015.5 技术雷达 | 语言和框架篇

前端 Javascript 框架持续喷井所带来的一个好处是,时不时一个新的主意出现的时候,会引起我们的思考。React.js 是一个 UI/View 框架,在这个框架中,Javascript 函数在一个响应式的数据流中生成 HTML。我们已经见到几个小的项目成功的使用了 React.js,开发人员也被其干净的易组合的组件化方式所吸引。