You Can’t Future-Proof Solutions

?

You Can’t Future-Proof Solutions

Richard Monson-Haefel

Today’s Solution is Tomorrow’s problem

no onE CAn pREdiCT THE FuTuRE. If you accept this as a universal truth, then the question becomes, how far ahead is the future? One decade? Two years? Twenty minutes? If you can’t predict the future, then you can’t predict anything beyond right now. This very moment and the ones that preceded it are all you are know until the next moment occurs. This is the reason we have car accidents; if you knew you were going to have an accident on Thursday, you would probably stay home.

Yet we see software architects try to design systems that will be, for lack of a better term, “future-proof” all the time. It’s simply not possible to future- proof an architecture. No matter what architectural decision you make now, that choice will become obsolete eventually. The cool programming language you used will eventually become the COBOL of tomorrow. Today’s distributed framework will become tomorrow’s DCOM. In short, today’s solution will always be tomorrow’s problem.

If you accept this fact—that the choices you make today will most certainly be wrong in the future—then it relieves you of the burden of trying to future- proof your architectures. If any choice you make today will be a bad choice in the future, then don’t worry about what the future will hold—choose the best solution that meets your needs today.

?

??One of the problems architects have today is analysis paralysis, and a big con- tribution to that problem is trying to guess the best technology for the future. Choosing a good technology for right now is hard enough; choosing one that will be relevant in the future is futile. Look at what your business needs now. Look at what the technology market offers now. Choose the best solution that meets your needs now, because anything else will not only be wrong choice tomorrow, but the wrong choice today.

Richard Monson-Haefel is an independent software developer who coauthored all five editions of Enterprise JavaBeans and both editions of Java Message Service (all O’Reilly). He’s a multitouch interface designer/developer and a leading expert on enterprise computing.

时间: 2024-10-10 01:06:57

You Can’t Future-Proof Solutions的相关文章

engine.io分析1--socket.io的基石

转载请注明: TheViper http://www.cnblogs.com/TheViper 在上一篇socket.io迁移指南中提到过一点engine.io.engine.io是socket.io 1.x的抽象,核心. 特点: Maximum reliability(最大的可靠性) 即使在下列情况下,仍然可以建立连接: 1.代理,或负载均衡. 2.存在个人的防火墙,杀毒软件. Minimal client size(最小的客户端) 1.对flash传输方式懒加载 2.去除了冗余的传输方式 S

Shoot to kill; CSS selector intent

One type of CSS in particular makes me cringe every time I see it; poor selector intent. Poor selector intent means carpet bombed selectors whose key selector has way too broad a reach; a selector like .header ul{} as opposed to one like .main-nav{};

深度学习十大顶级框架

2015 年结束了,是时候看看 2016 年的技术趋势,尤其是关于深度学习方面.新智元在 2015 年底发过一篇文章<深度学习会让机器学习工程师失业吗?>,引起很大的反响.的确,过去一年的时间里,深度学习正在改变越来越多的人工智能领域.Google DeepMind 工程师 Jack Rae 预测说,过去被视为对于中型到大型数据集来说最佳的预测算法的那些模型(比如说提升决策树(Boosted Decision Trees)和随机森林)将会变得无人问津. 深度学习,或者更宽泛地说——使用联结主义

Jenkins在Windows系统dotnet平台持续集成

        之前写过一篇文章是在CentOS上构建.net自动化编译环境, 今天这篇是针对于Windows平台的环境.        Jenkins是一个开源软件项目,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能.Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作, Jenkins是由Sun的前员工开发的,它的根基是Java,但也可以用在非Java的项目里,比如PHP.Ruby on Rails..NET.持续集成相关的工具有很多.它提供了Web界面,用户

Database Design – ITS113

Database Design – ITS113Assignment – Asset Management systemThis assignment puts you in a hypothetical, but realistic, scenario where you work on databasedesign intended to support the needs of an organisation. The assignment is divided into threepar

MongoDB十二种最有效的模式设计【转】

持续关注MongoDB博客(https://www.mongodb.com/blog)的同学一定会留意到,技术大牛Daniel Coupal 和 Ken W. Alger ,从 今年 2月17 号开始,在博客上持续发表了 如何在MongoDB中设计数据库模式的方法.截止到今日(4月20号),12种模式设计的方法已全部与读者见面.本人认为,此系列文章,总结的非常全面,很多地方有首创性,涵盖的场景也很多,并且有理论总结,也有案例分析.文中分享的很多知识使人"如听仙乐耳暂明",开卷受益,常读

A Message to the Future

A Message to the Future Linda Rising MAYBE iT'S BECAUSE MOST OF THEM ARE SMART PEOPLE, but in all the years I've taught and worked side by side with programmers, it seems that most of them thought that since the problems they were struggling with wer

一个数独引发的惨案:零知识证明(Zero-Knowledge Proof)

导言:原文的作者是著名的Ghost和Spectre 这两个协议的创始团队的领队Aviv Zohar.原文作者说他的这篇原文又是引用了以下这两篇学术论文: How to Explain Zero Knowledge Protocols to Your Children (Quisquater et. al.) Cryptographic and Physical Zero-Knowledge Proof Systems for Solutions of Sudoku Puzzles (Gradwo

[Mathematics][MIT 18.03] Proof of a Theory about the Solution to Second-order Linear Homogeneous Differential Equation

Edit: I suddenly found that this theorem is called Abel Identity. And the proof here is exactly the same as what he did. At first, I'd like to say thank you to MIT open courses which give me the privilege to enjoy the most outstanding education resou