热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

学会思考技术背后的那些思想和本质

如果你有装修过,或者家里造房子的经历,你会发现,大多数“技术工人”都是半瓶水,让你满意的人实在是凤毛麟角。就算你要找一个很有责任感的,不需要你去监督,做事情精益求精的人都基本上是没有的。你或许在装修,并正在抱怨那样的技术工人。但是,你的老板或许也同样的在抱怨你:只有半瓶水,还吹牛吹的不行。

如果你有装修过,或者家里造房子的经历,你会发现,大多数“技术工人”都是半瓶水,让你满意的人实在是凤毛麟角。就算你要找一个很有责任感的,不需要你去监督,做事情精益求精的人都基本上是没有的。

你或许在装修,并正在抱怨那样的技术工人。但是,你的老板或许也同样的在抱怨你:只有半瓶水,还吹牛吹的不行。当没有人监督,没有项目任务的时候,你就开小差,偷懒。做事情,也都是在赶进度,凑合,蒙混过关就行。

我想,这或许就是技术工人吧,我们的工作实际上没有什么创造性。所以,当我们工作很多年,也就不再有激情了,变成江湖小混混了。你可以学会N种编程语言,学会怎么更好的组织代码,学会如何在unix上写代码,只要花出时间,功夫,你就能成为一个优秀的程序员。技术,说白了,就是熟能生巧。不管,你挂了什么架构师的头衔,还是你在搞什么云计算,听上去在弄一些别人不知道的技术,其实学习这些技术不需要一个人多少悟性,多少创造性,只要花下时间这些东西你都能很精通。像处理大数据,正如我一个在淘宝的朋友说的,大多数觉得这个神秘,是因为平时工作的时候接触不到,实际上,如果每天都接触,也就是这样一回事,这就是技术。我想,每个人,当它学了很多技术了之后,肯定就会发现这样的一个问题,我学了这样多,情况也就是这样,可能水平比别人好一点,但是也搞不出多少档次,难道我这辈子就这样学下去了吗?于是,慢慢的,我们就会变成正常的“技术工人”了。

在我研究高性能服务的时候,我研究了很长时间的 IOCP ,linux 上的 aio,libev,并读了一遍nodejs的源代码。我突然发现,我学的是比别人多一点,但是仅仅是这样而已,因为一门技术,公开的技术,每个人都可以搞清每一个细节,然后就可以实现一个很高性能的服务器。所以,本质上,我们没有什么竞争力。也不能为我们这个世界做出突出贡献。

我经常会听到某人某人技术有多牛,我就会很崇拜,我一直很羡慕一些人,懂得很多东西,为什么他们有这样多的时间去学这样多的东西。去年,我认识一个人,他会写编译器,我羡慕不已,于是我也学了半年,最后,我也会写编译器了,但是,会写了之后,我发现我并没有什么升华,而只是又会了一样东西而已,而且,也只是学了半瓶水,比如,其实,要真正编写一门语言,必须要学会编译器优化,而这个实际上很难,要学会又要很长的时间才能会。世界上,一直不缺少这样的人,只要给他时间,他就能学会一样东西。但是,就算懂的再多,也只是懂了一个东西,怎么样用出来,解决一些别人还没有解决的问题才是关键。

Node.js 可以说是一个个人作品,但是,却成为了一个平台。为什么其他人没有想到这样一个想法呢?我想,只要你要想到 Javascript 和异步IO 结合起来,你也能写出这样一个作品。这背后的想法是关键。

最近有一本书很流行,黑客与画家,里面有一个垃圾邮件过滤的章节。在2002年前,没有人想到用很成熟的贝叶斯公式来实现,而当被人一语点破之后,我想世界上有一半的程序员都能解决这个问题了。

有一个好想法,比你会一百门技术还有意义,技术可以在你有了想法之后再学,但是,你会100门技术,不见得就能一语惊人。在我以后的程序生涯里面,我想我不应该再完全沉浸在学一门又一门的技术,而是,要学会思考,学会思考那些技术背后的思想和本质,期待,自己也能创造一门技术,而不再是每天学习别人的。

本文地址:http://www.nowamagic.net/librarys/veda/detail/2085,欢迎访问原出处。


推荐阅读
  • svnWebUI:一款现代化的svn服务端管理软件
    svnWebUI是一款图形化管理服务端Subversion的配置工具,适用于非程序员使用。它解决了svn用户和权限配置繁琐且不便的问题,提供了现代化的web界面,让svn服务端管理变得轻松。演示地址:http://svn.nginxwebui.cn:6060。 ... [详细]
  • 恶意软件分析的最佳编程语言及其应用
    本文介绍了学习恶意软件分析和逆向工程领域时最适合的编程语言,并重点讨论了Python的优点。Python是一种解释型、多用途的语言,具有可读性高、可快速开发、易于学习的特点。作者分享了在本地恶意软件分析中使用Python的经验,包括快速复制恶意软件组件以更好地理解其工作。此外,作者还提到了Python的跨平台优势,使得在不同操作系统上运行代码变得更加方便。 ... [详细]
  • Nginx使用AWStats日志分析的步骤及注意事项
    本文介绍了在Centos7操作系统上使用Nginx和AWStats进行日志分析的步骤和注意事项。通过AWStats可以统计网站的访问量、IP地址、操作系统、浏览器等信息,并提供精确到每月、每日、每小时的数据。在部署AWStats之前需要确认服务器上已经安装了Perl环境,并进行DNS解析。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • 本文介绍了在rhel5.5操作系统下搭建网关+LAMP+postfix+dhcp的步骤和配置方法。通过配置dhcp自动分配ip、实现外网访问公司网站、内网收发邮件、内网上网以及SNAT转换等功能。详细介绍了安装dhcp和配置相关文件的步骤,并提供了相关的命令和配置示例。 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • 本文介绍了在Hibernate配置lazy=false时无法加载数据的问题,通过采用OpenSessionInView模式和修改数据库服务器版本解决了该问题。详细描述了问题的出现和解决过程,包括运行环境和数据库的配置信息。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • Linux如何安装Mongodb的详细步骤和注意事项
    本文介绍了Linux如何安装Mongodb的详细步骤和注意事项,同时介绍了Mongodb的特点和优势。Mongodb是一个开源的数据库,适用于各种规模的企业和各类应用程序。它具有灵活的数据模式和高性能的数据读写操作,能够提高企业的敏捷性和可扩展性。文章还提供了Mongodb的下载安装包地址。 ... [详细]
  • 一次上线事故,30岁+的程序员踩坑经验之谈
    本文主要介绍了一位30岁+的程序员在一次上线事故中踩坑的经验之谈。文章提到了在双十一活动期间,作为一个在线医疗项目,他们进行了优惠折扣活动的升级改造。然而,在上线前的最后一天,由于大量数据请求,导致部分接口出现问题。作者通过部署两台opentsdb来解决问题,但读数据的opentsdb仍然经常假死。作者只能查询最近24小时的数据。这次事故给他带来了很多教训和经验。 ... [详细]
  • 一:跨域问题1、同源策略(浏览器的安全策略)    只允许当前页面朝当前域下发请求,如果向其他域发请求,请求可以正常发送,数据也可以拿回,但是被浏览器拦截了  2、c ... [详细]
  • JavaScript和Python是用于构建各种应用程序的两种有影响力的编程语言。尽管JavaScript多年来一直是占主导地位的编程语言,但Python的迅猛发展有 ... [详细]
author-avatar
手机用户2602930681
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有