只是碰到了这一点,想知道是否有人可以证明或反驳这一说法:
要记住的事情……高科技知识的半衰期是什么?它遵循摩尔定律:您知道的所有事物的一半将在18-24个月内过时。
消息来源:在Craig Trader对这个问题的回答中,“ 您为提高编程技能所做的最有效的事情是什么? ”
Statement = (True or False)
是。
只是碰到了这一点,想知道是否有人可以证明或反驳这一说法:
要记住的事情……高科技知识的半衰期是什么?它遵循摩尔定律:您知道的所有事物的一半将在18-24个月内过时。
消息来源:在Craig Trader对这个问题的回答中,“ 您为提高编程技能所做的最有效的事情是什么? ”
Statement = (True or False)
是。
Answers:
此声明仅适用于临时技术,无论如何您都应仅根据需要学习这些技术。就是说,您将在职业生涯中学到很多东西。
基本的编程原理和技术是永恒的。
那些说这样的话的人只是想成为煽情主义者,否则他们在学错东西。
我能想到的最好的(最糟糕的)测试是回想一年。在过去的18到24个月中,您每天学习了多少编程知识?此外,在过去的18-24个月中发明了多少?对于我来说,该原理似乎非常令人怀疑,因为我每天使用的大部分编程和技术知识都是在5-10年内获得的。
现在,如果您正在开发手机平台之类的产品,也许是另一回事。
根据我的经验,在媒体/公众形象中,技术是“新新事物”与现实世界中实际使用的东西之间存在巨大的脱节。
在桌面应用程序空间中使用类似Visual C ++ / MFC的内容。尽管它看起来似乎已经过时和过时了,并且可能不是新程序员现在应该学习的桌面开发知识,但是仍然有很多现实世界中的项目和工作正在编写中,并且需要维护—可能会维持数年甚至数十年。我将以COBOL为例,但从理论上讲,我个人非常了解VC ++ / MFC示例。
本质上,并不是说技术“过时”就变得无用和闲置,更多的是,它们不再被视为做事和启动新项目的最新方式。但是,大型真实世界软件系统的退役(不会中断并且不需要修复)的发生要慢得多。我从事的许多Visual C ++ / MFC项目(始于1990年代初期)仍然非常活跃,并且雇用了许多程序员(包括维护和新开发人员),而且似乎一事无成任何时候。实际上,我敢肯定,我想的大多数仍会在2020年左右,甚至更长。
当然,这甚至不是主要问题。主要问题是许多概念是相似或相关的,在学习某些新技术时您不会“从头开始”。例如:一旦您了解了标记语言及其含义,就很容易学习新的标记语言。因此,JSON是新事物并没有多大关系,而您使用多年的都是XML。这只是学习新语法的问题-而不是成为一些非程序员,甚至不知道标记语言是什么,也不知道它们所代表的数据背后的内部概念,等等。
TL; DR: 1)那里有很多“过时”的技术正在使用,但是由于它不是性感的新事物,因此您对此知之甚少-但这对于使用它的人来说远不值钱。2)编程概念相互叠加并不断发展。很少有什么是真正需要您从头开始完全学习并忘记旧事物的东西。
罗伯特·哈维( Robert Harvey)做到了这一点,但经过深思熟虑,我不得不轻描淡写并做出回答。
我必须添加一个免责声明,在发布Perl On Rails的那一刻,我并没有去研究它。我觉得它对于它的设计非常本地化的效果很好,并作了记录,以备将来参考。
在过去的二十年中,我也没有屈服于标准C库的50多个排列,我希望可以链接到它们,但是现在它们似乎已经存在挑战。
在这里插入长篇大论,以相信您所读或听到的一切。
当有新事物出现时,抓住它看看。如果您说“ ick”,请将其删除。如果您说“哇”,请改善它。如果您不能考虑这样的决定,那就去选择有能力的人的大脑。
仅凭技术价值来判断一切。值得您花时间,这意味着它可以节省您的时间,同时得到大多数同行的赞许。
现在,我将直接解决您的问题:
您知道的所有内容中有一半会在18-24个月内过时,对还是错?
您必须在18-24个月内告知我们。公司为使人们谈论他们的产品有多么伟大付出了可观的代价。我们不仅要审视新成立的公司,还要审视那些将大量现金掏出来的大型企业:
当然,您可以根据以前的经验和新尝试来制定自己的决定。这样做时,应避免拥有具有根据RSS阅读器发出诫命的经理的雇主。
但是,我确实有这个惊人的新桥梁建筑库,该库足够聪明,可以根据您的语言环境在布鲁克林和伦敦之间切换。这将是巨大的,您想进入一楼吗?
我的回答确实是故意讽刺,也许是反布尔值,但是真的吗?出于异常处理的目的,我的回答是响亮的false。
如果您认为某事在技术上是合理的,请接受它,否则一切照旧。C是我的主要语言,它的工作原理与近二十年前一样好,而我的薪水却是近二十年前的两倍。
我很欣赏您的简洁形式和引文,但这确实是一项令人震惊的实验。
做得好 :)
这取决于您花时间在学习上。我在1980年学习了Bourne shell和C编程。我仍然每天都在使用它。另一方面,我花在学习Compuserve菜单结构上的时间是一个完全的损失,即使在那时,它也不是非常有用的。然后是诸如RS-232电缆引出线和串行协议之类的东西:今天已无用,但对于我生命的大约十年至关重要。选择您花费大量时间仔细研究的技术。
这个原则是正确的。据我所知,实际价值要大得多。
我回想起一个实用程序员的演讲,他们说了大约7年,但我现在找不到它,因此其价值可能略有不同。
试想一下技术是如何变化的:15年前,网络是全新的,我们都试图编写网页-甚至连桌子都可以-和动画gif。七年前,AJAX起飞了。今天,有些人为手机编写类似《毁灭战士》的游戏。
最好的选择是学习适用于随之而来的下一技术的常规知识,而不是说“ Begone!我只知道Visual Basic!”。(或15年内的等值金额)。
我认为这完全不正确。
它曾经更接近于真实-很久以前,您别无选择,只能以相对较低的抽象水平进行编程,这意味着知道大量与新平台不再相关的细节。
但是,随着时间的流逝,越来越多的编程在越来越高的抽象水平上进行。较高的抽象水平或多或少直接将其转换为对可能会迅速更改和过时的细节的担忧。
显然,有些人从事诸如设备驱动程序或微型嵌入式系统之类的工作,但他们仍必须以较低的抽象水平进行工作。但是,在此类区域之外,这种事情的借口相对较少。是的,很多人确实学到了很多他们不需要的琐事,但是如果您确实在代码中大量使用了这些知识,那么很有可能您没有做出非常好的决定。通常可以避免大多数这样的事情(更重要的是应该避免)。
如果真是这样,那么今天“ 神话人月”只有5.39x10 -6才有意义。因为实际上,弗雷德·布鲁克斯(Fred Brooks)所详述的关键原则很少出现,或者已经被证明是根本错误的。
这是一个更好的句子版本:您今天(或本周,本月,今年或今年)学到的所有内容中的一半将在一两年之内过时。没错-您将学习如何在工具的版本5中进行操作,而当版本6发布时它会自动执行该操作,或者您将学习如何以一种不流行的语言进行操作,因此您再也不会使用它。但是,您每天学习的另一半将留在您身边,并在成长,这使得拥有20年经验的开发人员比拥有两年经验的开发人员更好。
这里有一个真相或相关性的掘金,但我认为它是不准确的。
呈现此问题的更好方法是
您今天使用了多少知识18-24个月前?
要么
在18到24个月的时间里,您已经掌握了多少知识?为了完成这些任务,您今天需要学习多少?
这可能取决于您所从事的领域,但是我知道我一直在致力于新技术。每个项目似乎都有大量我需要学习的新知识-新框架和模式,解决稍有不同的问题的新方法,或者仅仅是(据说!)比我们以前使用的更好的新工具。
如果每个六个月的项目仅需要12.5%的新知识,那么在两年内,使用的全部知识的50%将是“新的”。
话虽如此,这不是很有意义或不准确。
哦,天哪,上面的回答如此精彩,常识。辛苦了
简而言之,如果这是一时的流行风尚或趋势,如果您是一名优秀的程序员,那么您会读到它,然后回到通常的工作方式或工作方式。
除非对您的工作至关重要,或者对您有意义的新做法。
仅仅因为有些东西是新的,有些新的或有些旧的,并不能使它成为任何事物的必备解决方案。
我有一个简单的说法,那就是全部内容。
“如果可行,请使用它”
这意味着,如果这项新技术非常酷,但没有什么可以使您的工作更高效,更高质量,更不易出错或解决诸如移动或客户端/服务器解决方案之类的技术问题。最好不要阅读它,然后忽略它,直到有实际用途为止。
我已经看到并阅读了更多的人在浪费时间,试图找到热门的新事物,然后再使用热门的新事物。通常最终会浪费时间和金钱。
始终学习,练习并提高自己的手艺和技能很重要。
但是,您应该了解什么是有用的,或者是什么为您解决通常存在的问题提供了不同的视角。
但是除此之外,应该回到成为一名出色的程序员的基础。
我是常识性的最佳实践,我们都会从经验中学习。不要浪费时间在很酷的事情上。
老实说,酷就是不酷。