职业电竞选手的Java大神路——对话阿里云 MVP周志明

简介: 作为豆瓣9.0评分的作者,周志明算得上是一位Java大神,而他却对此不以为意,坦白Java只是一个工具。他的技术生涯似乎从未有过瓶颈,又或许,是他足够清晰和明确,一切都可以为自己所用,顺理成章地成长。
以下为周志明的个人专访,推荐阅读(约3分钟)。

热爱决定必然

可能大家认识我都是从《深入理解Java虚拟机》这本书开始的。在十一二岁的时候,我就开始接触计算机了,大学也是计算机专业,很早的时候,我就隐隐知道,自己一定会从事IT行业。

作为一个80后开发者,虽然现在的岗位是上市公司高层管理人员,但我并不愿意脱离一线程序员的行列。平时的工作中,我主要从事宏观方向上的大型企业级软件的架构研发,却对高级语言虚拟机、程序语言设计、编译原理等偏底层、微观的方向更感兴趣。

另外,我对计算机科学相关的多个领域也都有持续跟进,比如软件架构、高级语言虚拟机、编译器、人工智能等等。我个人是开源精神拥护者,最近刚刚开始一个名为《软件架构探索:The Fenix Project》的开源文档项目。这些项目无关乎利益,只是个人兴趣。

目前我正式出版过七部计算机技术书籍,撰写过两部开源文档,口碑和销量均有幸得到读者的认可。其中四本书在豆瓣上获得了9.0分或以上的评价,《深入理解Java虚拟机》系列总销量逾30万册,在技术领域里算是个中翘楚了。有人曾问我为什么选择Java这门语言,与其说是我选择了Java,不如说是Java选择了我。我是个没什么技术忠诚度的人,不会因为熟悉和个人喜好就偏爱哪种语言,而是会根据具体情境来决断,在我眼里,技术本身就只是个工具而已。

人物海报-周志明.jpg

成长如修炼,功到自然成

宏观与微观之间融会贯通。人需要经常思考,“做什么”更重要,还是“为什么更重要”,即执行与知行。我个人更偏向于多问为什么,这也是我不愿意离开一线编程工作的原因,希望了解底层基础,效果是如何实现,为什么要这样实现。在对微观具象有了清晰的理解之后,才具备真正完成宏观掌控和抽象的可能。跟学功夫是一样的道理,头三年师傅不教把式,先扫地担水扎马步。练好内功再学招式,才能行云流水,步步生风。

开放的心态引领未来。一直以来,我都认为自己的技术生涯中不存在什么算得上是瓶颈的困难。比如最初我并不使用Java语言,但入职场后的第一个公司是走Java技术路线的,可能在别人看来就是障碍,但我认为这是一次值得庆幸的机会,所以并不排斥转变,很乐于接纳新事物和另一种思维。现在我同时在攻读博士学位,选择了人工智能领域,对我来说是完全陌生的,相当于从0开始,我也会非常珍视这样的契机。可以深入了解一个全新的技术、事物、领域,这种好事,怎能浪费?

学会分享,加速成长。当我想以最快的速度掌握新知识的时候,我会通过学习和记忆,形成自己的一套方法论。然后再试着以老师的身份将知识教给别人,在这个过程中会发现自己有所欠缺的地方,查漏补缺后,再次简化和凝练,传递为更高效有价值的内容。这一套流程下来,会发现自己对知识的掌握炉火纯青,通过输入+输出的分享和沉淀小闭环,达成个人的螺旋上升。这也是国际顶尖学府都在推崇的费曼学习法。有些时候,选择比努力重要,选对方式,成功会简单一半。

提升社交圈,看见新世界。物以类聚,人以群分,当感知到周围的环境已经很难给自己带来提升和启发时,就是该做出改变的时刻。想办法进入到更高阶层的圈子,了解到更深层次的事物和运转模式,打开视野,能力的提升会有质的飞跃。

专注技术,也热衷生活

在技术上,我格外较真,专注于细节,也会关注很多别人注意不到的价值,所以无论是团队、公司、合作伙伴,都一致评价我为靠谱的人。另一个评价就是“好欺负”,可以很融洽地跟下属们相处。大家跟我聊天都很放松,有的同事可能会忌惮我的下属,但都完全不会怕我。我还蛮享受这样的过程,可以获得很多其他人难以触及的东西。

在生活中,游戏占了我娱乐的很大比重。我是RTS竞技爱好者,Warcraft 3、Starcraft 12曾经有准职业的水准,从开始到AFK,一直都是星际2宗师组的玩家。大学时还拥有自己的游戏战队,现在也还在打游戏,除了放松以外,游戏可以很大程度上提高我的专注力。同时也是模型爱好者,每年都会自己打磨、喷漆2~3个GK模型,不过我并不是宅男哦。

在与周志明的沟通中,他似乎一直都保持轻松的状态侃侃而谈,好像并没有什么困难值得一提。但我发现,他只是更善于走捷径解决问题,成熟的方法论加多年如一日的专注,才收获了他水到渠成的成功。这位刚加入阿里云 MVP大家庭的新星,也将为技术普惠贡献出自己的力量。

TB1HLKARVXXXXcKXpXXXXXXXXXX-586-338.jpg
我要成为阿里云 MVP

相关文章
|
6月前
|
Java 关系型数据库 应用服务中间件
阿里云RDS购买Linux完整过程——安装java环境并跑起来tomcat
阿里云RDS购买Linux完整过程——安装java环境并跑起来tomcat
99 0
|
Java 云计算
阿里云国际站代理商:Java计算当前时间处于某段时间内的第几周、第几个月
@luotuoemo飞机@TG阿里云国际站代理商:Java计算当前时间处于某段时间内的第几周、第几个月,以上就是使用Java代码计算当前时间处于某段时间内的第几周和第几个月的全部内容。通过该篇文章,我们可以了解到如何使用Java的Calendar类以及日期函数来计算时间段内的周数和月数,掌握相应的计算方法和实践技巧。在开发过程中,合理运用这些方法,可以方便地获取时间相关的信息,满足业务需求,提高开发效率。希望本文能对读者在使用阿里云国际站代理商开发Java应用时计算时间段的周数和月数提供一些帮助与启示。
|
6月前
|
弹性计算 前端开发 小程序
微信小程序上传文件至阿里云OSS直传(java后端签名+前端直传)
当前的通用文件上传方式是通过前端上传到服务器,再由服务器转存至对象存储。这种方式在处理小文件时效率尚可,但大文件上传因受限于服务器带宽,速度较慢。例如,一个100MB的文件在5Mbps带宽的阿里云ECS上上传至服务器需160秒。为解决此问题,可以采用后端签名的方式,使微信小程序直接上传文件到阿里云OSS,绕过服务器中转。具体操作包括在JAVA后端引入相关依赖,生成签名,并在微信小程序前端使用这个签名进行文件上传,注意设置正确的请求头和formData参数。这样能提高大文件上传的速度。
1113 1
|
Java Linux Docker
阿里云云效流水线自动化构建Java项目并发布到docker环境
阿里云云效流水线自动化构建Java项目并发布到docker环境
752 0
|
2月前
|
存储 SQL 分布式计算
Java连接阿里云MaxCompute例
要使用Java连接阿里云MaxCompute数据库,首先需在项目中添加MaxCompute JDBC驱动依赖,推荐通过Maven管理。避免在代码中直接写入AccessKey,应使用环境变量或配置文件安全存储。示例代码展示了如何注册驱动、建立连接及执行SQL查询。建议使用RAM用户提升安全性,并根据需要配置时区和公网访问权限。具体步骤和注意事项请参考阿里云官方文档。
|
3月前
|
Java 开发工具
通过Java SDK调用阿里云模型服务
在阿里云平台上,可以通过创建应用并使用模型服务完成特定任务,如生成文章内容。本示例展示了一段简化的Java代码,演示了如何调用阿里云模型服务生成关于“春秋战国经济与文化”的简短文章。示例代码通过设置系统角色为历史学家,并提出文章生成需求,最终处理并输出生成的文章内容。在实际部署前,请确保正确配置环境变量中的密钥和ID,并根据需要调整SDK导入语句及类名。更多详情和示例,请参考相关链接。
|
6月前
|
监控 Java 测试技术
阿里云推出 3.x Java 探针,解锁应用观测与治理的全新姿势
阿里云推出 3.x Java 探针,解锁应用观测与治理的全新姿势
174367 14
|
3月前
|
机器学习/深度学习 存储 缓存
Java本地高性能缓存实践问题之阿里云机器学习团队开源社区的问题如何解决
Java本地高性能缓存实践问题之阿里云机器学习团队开源社区的问题如何解决
|
5月前
|
Java 对象存储
java对接阿里云OSS上传
java对接阿里云OSS上传
377 2
|
5月前
|
Java 对象存储
阿里云OSS上传下载文件java
阿里云OSS上传下载文件java
350 0