• 与复杂性作斗争是软件开发中经常出现的主题,我已经看到过一遍又一遍在各个级别上争论不休:在函数和方法中应该进行多少注释?理想的抽象量是多少?框架什么时候开始具有“太多的魔力”?组织中什么时候出现太多语言?我们试图摆脱复杂性,控制它,并寻求简单性。我认为这种逃避复杂性的方式进行构架是错误
  • 一、软件开发是什么 有形的工具是人类肢体的延伸;计算机系统则是人类大脑的延伸: 将人脑中的系统模型放到计算机系统中运行,从而将人脑解放出来做更有价值的事情。 “人脑中的系统模型”
  • 从YouTube视频发现,世界首富伊隆·马斯克(Elon Musk)使用与杰夫·贝佐斯(Jeff Bezos)相同的技术做出决策。我们如何使用思维模型进行日常决策?我如何将它们付诸实践?思维模型(Mental models)是思考的框架。它们简化了复杂的情况,因此您可以轻松地通过它们 icon
  • 从构建大规模多区域分布式系统中汲取的经验教训!在设计系统时,软件架构师通常需要选择各种依赖关系 - 基础架构,身份验证,存储,当我第一次开始在IBM担任软件架构职责时,我倾向于选择完成工作的依赖项,但很快我就学会了这一课:做一个极简主义者。只有在绝对需要时才引入新的依赖关系。 icon
  • 开发人员在任何软件项目过程中都会做出数百个微观和宏观决策。有些似乎相对无害,但对下游会有一个很大的影响。几位Cantina工程师聚在一起,回顾了我们在学习了一些艰苦的经理后需要特别考虑的关键点。 1. 利益相关者要求 icon
  • 大多数问题和改进的最大可能性都属于该系统。试图从整体上理解系统,并考虑系统元素之间的相互作用。在系统中,所有事物都与某物相连。没有什么是完全独立的。这些联系和互动以及目的是系统的特征。更正式地讲,系统可以描述为:“一组元素 icon
  • 单个API不足以让开发人员具有创新性。当API一起使用时,API非常强大,因此组合维度才是最重要的.API允许组织大规模地为其合作伙伴提供对数据和功能的访问。可扩展和适应性强的API生态系统使开发人员更容易进行创新。建立这样一个生态系统是一个前进的过程,面临许多技术挑战。AP icon
  • 在软件和IT领域,我们通常将问题域分解为一个个干净的部件,并分别进行了处理。我们认为,这是处理复杂性的“分而治之”的方法,但是:“一个系统不仅仅是其各个部分的总和;它是一个不可分割的整体。拆开后,它会失去其基本性能。” ― icon
  • icon
  • 科学从根本上根据经验数据以及模型/理论的发展来对我们周围的世界进行调查,以描述我们在这些数据中发现的模式。为了使知识被认为是科学的,它取决于满足许多基本要求:首先,它必须随着时间的推移反复不断地与相关的经验数据相关联。其次,它必须在一个基于一致逻辑的 icon
  • 什么是可重用,泥巴可重用性非常好,延展性也很好,能塑造各种形状而汽车,就只能做交通工具,能拉东西,相比较起来,泥巴倒还是一个非常先进的可重用的物件那为什么汽车却能得到广泛使用?可重用性越好的物件,使用起来就更需要创造力?软件现在是越来越多,是否都已经满足了任何人的需求?我们到 icon
  • 复杂领域或系统中,人们总是不自觉向你兜售因果逻辑关系:这些因果性可以做到: icon
  • 我想学习一下成熟框架,比如Jdonframework,Struts等,这样便于我自己以后设计框架。应该怎样去学习或分析呢?大家有什么好方法或建议? icon
  • 项目的需求算是过了评审了,现在开始要进入设计阶段。 但现在有个很现实的问题,设计在一般项目开发中应该做到什么程度? 或者说项目设计阶段应该做哪些事情?完成哪些输出物,就我知道的是概要设计文档,详细设计文档,还有源 icon
  • 3C(融合Convergence,协作Collaboration和上下文Context)可帮助集成企业信息系统,避免信息孤岛。信息技术孤岛(silos,也称筒仓)是组织在数字化转型过程中遇到的最常见障碍之一。  当组织中的各个部门使用不同的软件应用程序时,技术孤岛就出现了,这些软件应用程序不 icon
  • 为什么是树?实践前人的忠告。是因为树是有形的集合,隐隐约约知道前人留给我们一个忠告:使用图形去思考。 icon
  • 转载一篇文章:http://huandu.me/2012/04/06/665/这里作者讲述了设计当中容易进入的一种误区。全新诠释了自然界当中的服务的理想化状态。很值得借鉴! icon
  • 学习绘画如同学习语言一样,需要学会如何用视觉词汇表达,掌握视觉词汇以后就可以释放创造力。该文调查研究了美国和日本的绘画几十年来发展,美国绘画包括学校美术课从一开始就强调创造力,不提倡学生临摹,但是日本孩子绘画从小开始临摹各种动漫画。鉴于绘图开发的基础涉及到学习模式,模仿是这种 icon