程序员的愿望清单
遗愿清单就是你在临终前应该完成的事项清单。这是一份给所有程序员的遗愿清单。快来看看,逐一实现它们吧!
编译你自己的 Linux 内核
Linux 内核是 Linux 操作系统的核心,并且是开源的。您可以自行编译 Linux 内核,深入了解 Linux、开源软件以及内核本身的工作原理。
设置构建和部署管道
设置您自己的流水线来构建和部署代码。该流水线会编译您的代码,创建一个类似 Docker 容器的工件,并将其部署到远程机器上。您可以在Jenkins、Gitlab CI、Travis CI或使用Github Actions构建流水线。
指导初级开发人员
指导初级开发人员将使你和你的学员都受益匪浅。你可以分享你的知识,为你的学员提供一个良好的工作开端。你会发现,从不同的角度看待事物,并解释你长期以来使用和实践的东西,你也会受益匪浅。
在 FreeBSD 上安装并运行
在一台机器上安装一个像FreeBSD这样的 Unix 发行版,并在其上运行一些程序。你会发现,真正的 Unix 与 Linux 有很大不同。然而,Unix 是优秀且非常稳定的服务器操作系统。
发表演讲
通过演讲与他人分享经验或知识。演讲可以只面向你的团队,也可以在公司内部,甚至在会议上进行。仔细思考你想讲述的内容以及如何讲述。学习和练习
演讲将极大地提升你的沟通技巧。
为开源做出贡献
为您喜欢的开源项目做贡献。您不仅可以贡献代码,还可以贡献文档、翻译或测试。有些项目有一些特别适合新手的问题。例如,在 Spring 中,这些问题被标记为ideal-for-contribution。
进行培训
在公司内部或外部进行培训。您可以自行准备培训内容,包括背景信息、实际练习和任务。如果您可以多次进行培训,那就更好了。您会发现
每次培训都各有不同,每位学员的体验也都不同。
编写编译器
编译器是编程语言的起点。编写你自己的小型编译器,你将对编程语言的内部工作原理有更深入的了解。
学习函数式编程语言
学习使用Haskell或Elm等纯函数式编程语言进行编程将彻底改变你的编程思维。所以,即使它不会成为你的主力语言,也请尝试一下。
将网站投入生产
使用纯 HTML 和 CSS 编写网站并将其投入生产。注册一个域名,并将您的网站发布到该域名下。最好使用Apache、nginx或Caddy等 Web 服务器来运行网站。
开发移动应用程序(并发布)
开发您自己的 Android 或 iOS 移动应用程序,并在应用商店发布。让您的应用与后端服务通信,并使用设备功能,例如通过 GPS 进行地理定位。
学习使用 vim 和 emacs
经典的文本编辑器是vim和emacs。所以花点时间学习vim和emacs的基本文本编辑功能吧。一旦掌握,你将受益匪浅,受益30年。
生产混乱,情况很糟糕
当你开发生产代码时,这只是时间问题。总有一天,你会写出一些搞砸生产的代码。但别担心,我们都经历过,都会犯错。所以,去修正它,从中学习,并从中成长。
修复传呼机任务的生产
你负责传呼,然后各种糟糕的事情就发生了。也许是硬件故障,第三方服务不可用,或者配置混乱。总有一天,你会深入研究问题,找到根本原因。坚持下去,修复生产环境。享受一切恢复正常运转的喜悦吧。
编写 JavaScript 单页应用程序
单页 JavaScript 应用程序 (SPA) 是开发 Web 前端非常重要的一种方式。编写一个 JavaScript SPA 应用程序,了解 SPA 的构建和分发方式。您可以使用Vue.js、Angular或React等 JavaScript 框架来入门。
编写服务器渲染应用程序
将 Web 前端构建为服务器渲染应用是开发 Web 前端的经典方法,但仍然非常有效。因此,请使用您选择的语言编写服务器渲染的 Web 前端。对于 PHP,您可以使用Laravel;对于 Java,您可以使用 Spring Boot 和 MVC;对于 Go,您可以使用 Buffalo 。
学习 Shell 脚本
Shell 脚本是在任何 Linux 和 Unix 机器上编写脚本和自动化任务的快捷方式。学习为Bash Shell编写脚本。使用经典的 Shell 脚本工具,例如awk
、sed
或cut
。如果您想更上一层楼,可以使用vim或emacs编写脚本(参见上文)。
参加夺旗比赛
提升你的安全技能,学习如何在“夺旗”比赛中入侵。点击此处阅读全部内容: