当前位置: 首页 > 科技观察

也许你也患上了开发瘫痪

时间:2023-03-12 11:14:12 科技观察

尊敬的开发者:你是否因为在三大设备平台上只精通八种编程语言而心神不宁?发现另一个JavaScript框架会让你不寒而栗吗?您是否曾经因为无法确定最适合您的云平台而反复推迟副业项目?也许你也患上了发育??瘫痪症(Developaralysis)。颤抖吧,这种病是无药可医的。今天可供开发人员使用的技术解决方案太多了,令人眼花缭乱、令人窒息。这几年被别人花钱写Java、Objective-C、C、C++、Python、Ruby、JavaScript、PHP(sorry,这个也算),用各种SQL/Key-value/file数据存储技术(MySQL、PostgreSQL、MongoDB、BigTable、Redis、Memcached等)。我自我感觉良好吗?上帝,一点也不。相反,我感到内疚,因为我没有使用过Erlang、Clojure、Rust、Go、C#、Scala、Haskell、Julia、Scheme、Swift或OCaml。我是一个发展瘫痪的人:软件行业发展太快,任何人都无法跟上,这对我的意识来说是毁灭性的。对于上面提到的几乎任何一种语言,您都会发现无数的框架、套件和库可供选择——您会被震撼到的。仅仅认真评估当今JavaScript框架和库的所有排列就需要几个月的时间。另外,你知道Ruby语言有多少个gem包吗?有多少个iOS框架?有多少种NewSQL或NoSQL数据库技术?且不说从Hadoop、Spark、GoogleDataflow中选择,是用Avro、Thrift,还是ProtocolBuffers等等,等等……好在移动领域已经简化为Android和iOS两大垄断平台——虽然隐藏了一些交叉替换的解决方案,比如Xarmarin或PhoneGap、Sencha等跨平台HTML技术——但是确定将后端部署在哪个平台上以及如何部署会让你头疼不已。我开发的各种系统都部署在Heroku,AmazonWebServices,GoogleAppEngine,GoogleComputeEngine,Parse...这让我感觉很糟糕,因为我对OpenStack,Force.com,Azure,Appfog一无所知,我从来没有真正用过很多AWS服务,说多了会哭。我是Devloper@iamdevloper2014编写一个简单网站的步骤:1.安装Node2。安装Bower3。选择一个CSS框架4。选择一种敏捷的方法...47.写几行HTML至于用到的很多工具,简单来说就是用来管理另外一堆工具:Bundler、Bower、CocoaPods、Pip等,这些东西很了不起!我根本不能没有他们!不要太高兴。你开始使用另一堆工具,使用到一半你才真正理解它们的全部内容,你开始觉得这个配置还不够,你有点想重写一遍......也许会发现另一种是工具代替……可悲的是,当今开发人员可用的语言、工具、框架和平台的多样性和数量之多令人望而生畏。当然没有人会承认。每个人都想假装自己是通晓所有语言的编程大师。然而,事实是,我们都陷入了发展瘫痪。即使根据收集到的所有信息做出最明智的选择,结果也常常适得其反。例如,在项目开始之前,你真的花时间分析了所有的可能性并克服了由此产生的学习曲线,结果却被某些人拒绝使用PHP和Swift等带有表情符号变量名的易于使用的语言.这个小孩子在市场上抢占先机——但另一方面,如果你选择使用Swift和PHP,你就会一直担心某些C#/Haskell程序员很快就会为你制作更好的产品,比如PaulGraham许多年前在Lisp中使用Viaweb。回忆过去,他写道:当你选择一项技术时,你必须忽略其他人在做什么,并思考如何把它做得最好……事实上,我们确实有秘诀……我们开发软件的速度比就任何人的想象而言……我们用一种充满括号的怪异AI语言编写了我们的软件。回到发展瘫痪。我们应该选择我们已经拥有的技术吗?这样我们就可以立即开始构建,没有学习曲线,但生活在恐惧中,担心其他人正在以更好、更快、更优雅的方式实现相同的产品,明年我们的技能将无法与过去相提并论,它已经失去了竞争力。还是应该选择未知的新技术?因为我们热爱学习,更好的工具不仅使用起来更有趣,而且可以提供巨大的竞争优势……以大量时间、精力和认知负荷为代价。这个问题太难回答了!没有绝对正确的答案。所以每个月都是发展瘫痪发作月。我会制作五颜六色、闪闪发光的丝带,让你马上戴上,等我决定使用哪台3D打印机、哪台微控制器、哪台LED软件、哪台无人机系统。恐怕等久了会麻烦你。英文原文:YouTooMayBeAVictimOfDevelopparalysis翻译自:YouTooMayBeAVictimOfDevelopparalysis