Simple!=Easy从AmazonWebServices到AngularJS等Web框架,便利性推动了世界上最好的技术。但提高效率和速度的“便利”往往伴随着一个隐藏的价格标签:为了真正提高效率,你将不得不努力工作。伟大的技术往往看似简单,新手不费吹灰之力就能凭直觉“学会”。当人们认为他们已经掌握了这门艺术,而他们真正在做的只是相当于一个“helloworld”程序时,问题就出现了。在你责怪工具之前,你通常需要花时间把它弄好。关于AngularJS的“复杂感受”我们以AngularJS为例。AngularJS是一个Web应用程序框架——JavaScript代码库、模板和其他软件的集合,旨在使开发人员更容易开发动态网页或Web应用程序。正如AnandManiSankar所建议的那样,问题在于AngularJS很容易上手,而简单性隐藏了框架的强大功能:[AngularJS]通过抽象大量内部复杂性并仅公开程序开发人员关心的内容,极大地简化了应用程序开发关于过程。听起来很棒,也让新手在完成他们的第一个“helloworld”应用程序后感觉自己已经掌握了系统:AngularJS之旅产生了复杂的感觉。学习曲线与其他JS框架有很大不同。进入门槛非常低。但是当你开始变得更深时,学习曲线突然变得更陡峭。Sankar然后引用了BenNadel对AngularJS旅程的幽默描述:当然,有些人陷入了谷底。例如,GeorgeButiri从Google搜索中发现了很多关于“AngularJS会失败的原因”的文章。AngularJS实际上非常难,Butiri解释说,但没有给出太多具体的例子来说明为什么会这样,至少除了“因为我更喜欢jQuery”之外。许多最好的技术很容易失败。入门很容易,但如果你想真正掌握它,你将不得不投入大量时间。有些人一开始很好,发现了复杂性,然后抱怨技术并没有永远保持惊人的好。抱歉,真正的技术不是那样工作的。它总是需要努力,如果它没有以正确的方式运行,它就会失败。看看NoSQL数据库,我在这个世界上呆了太多时间。对于新手来说,NoSQL无论是MongoDB、HBase还是Cassandra,都喜欢推销其无模式(schema-less)的特性。关系数据库的旧世界需要严格的模式和狂热!在NoSQL的新世界中,定义数据结构的模式消失了,DBA消失了,规则也消失了!它是如此容易!!当然,这完全是胡说八道。正如我的同事AsyaKamsky常说的那样,“NoSQL!=NoDBA”。(NoSQL与“无数据库管理员”不同。)NoSQL并不意味着“无DBA”。如果有人试图说服你这样,他们很可能是想卖给你东西。这并不意味着您有一个团队或人员拥有“DBA”头衔——但是,如果您有一个数据库,无论它是关系型还是非关系型,那么必须有人担任“DBA”角色——如果他们没有不知道他们做什么,在问题出现之前,很多工作都不会完成或考虑。浏览有关NoSQL数据库、AngularJS或大多数您最喜欢的技术的文章,我保证即使不是大多数,也有许多文章是由那些感到受骗的人撰写的,他们认为该技术无法按照用户希望的方式工作,因为他们有没有真正的投入。诚然,有时技术会失败。在大多数情况下,这是令人震惊的。但是当技术没有神奇地夺走我们需要的工作时,我们常常抱怨。更少的杠杆,更多的幸福?获得两者优势的一种方法是通过托管服务,例如AmazonWebServices的Redshift。Redshift是一个在云中运行的完全托管的数据仓库。“完全托管”意味着它更易于使用,但也意味着用户失去了他们在Teradata或其他企业数据仓库中可能拥有的一些旋钮和杠杆。然而,这恰恰是问题的症结所在。正如AWS数据科学总经理MattWood最近告诉我的那样,Redshift和其他AWS服务努力通过消除复杂性来让用户轻松使用。为用户提供更少的“杠杆”意味着AWS也为他们提供了更少的失败方式。当然,诀窍是在产品简单性和用户控制之间找到平衡。例如,Airbnb吹嘘Redshift一开始是多么容易,但随后需要做出一些妥协(和承诺):我们面临的第一个挑战是模式迁移。尽管Redshift基于Postgres8.0,但“细微”差异足以迫使您按照Redshift的方式工作。我们尝试尽可能地自动化模式迁移,但问题比我们最初预期的要大,我们觉得它超出了实验范围。在Redshift中,不支持索引、时间戳类型、数组,因此您需要在您的架构中排除它们,或找到解决方法。不管怎样,Airbnb付出了努力,至少看到了五倍的性能提升和巨大的成本节约。它很容易上手,但值得投资。还有很多很棒的软件看起来很容易使用。为了摆脱任何伟大技术的新手状态,您将不得不有目的地使用它,并且您将不得不投入时间和精力来掌握它。可以有免费软件,但天下没有免费的午餐。英文原文:http://readwrite.com/2014/09/08/simple-technology-hard-not-easy-angularjs-nosql翻译地址:http://www.itjhwd.com/simple-technology-hard-不是-easy-angularjs-nosql/
