今天看到一篇这样的文章,摘录以下内容。。
编程目标
学习不同的编程语言范例
用汇编语言写一个应用
用函数式语言写一个应用
用面向对象语言写一个应用
用基于原型的语言写一个应用
用逻辑编程语言写一个应用
用Actor模型写一个应用
用Forth语言写一个应用[C]
扩宽对我们开发时使用的基本组件的了解:
写一个网络客户端(如HTTP,FTP客户端)
写一个设备驱动程序
写一个B叉树数据库
改进一个现有的库包,来获得更好的用户体验
写一个提供插件模型的应用或框架
写一个测试框架
写一个程序语言
更上一层楼:不断的练习,积累
完成五个code katas(Kata是来自日本武术的概念,通过不断的重复和练习来提高技艺)
用Koan编程来学习一种你想学的语言
参加编程进修课程
阅读SICP,完成所有的练习
编写程序并开源:
为开源项目贡献力量
让别人接受你的补丁
获得一个重要的开源项目的提交权限
发布一个开源项目
优化一个开源项目的代码,详细记录并分享出来
通过教导别人来提高自己[D]
做一个绘声绘色的演讲
在一个本地用户组面前演讲
在一个会议上演讲
开设一个训练课程
发布一个教程
发布一个开源项目的有建设性代码审核
写一本有关编程的书
关于这些目标
现在让我们来多说一点。注意这些目标都是可量化的。每一个都有个布尔值:你要么完成了,要么没有。例如,虽然很难界定你是否掌握了一门函数式语言,但是非常容易确定你是否用函数式语言写了一个应用。后者是可观测的,可量化的,布尔值。以上所有的目标都具有这一特性──可量化性。
无可否认,这个可量化性并非无懈可击。就拿在一个会议上进行演讲来说,你当然可以做一个很烂的演讲,然后还可以拍拍胸脯说你实现了这个目标。不过既然你是我这篇博客的读者,我假设你想成为一个优秀的程序员,你是一个对自身要求很高的人,不会是仅仅完成了某个任务就沾沾自喜的人。
既然我们在讨论改善,那么你对这份列表有什么改进意见呢?
这个列表作为GitHub的有效依据,你们可以随意fork并添加更多的成绩。(确保它们是可量化的。)
或者fork之后,你可以划分出你已经取得的成绩。你还可以为你正在努力的目标做上标记。(可以参考Justin Blake, Pierre Chapuis, Yann Esposito的分支)
你也可以写评论,什么经验让你变得更为优秀,以及你希望下一步实现什么目标。
分享到:
相关推荐
### 如何提高自己的编程能力 在信息技术飞速发展的今天,编程技能成为了许多职业和个人发展的重要组成部分。对于初学者而言,掌握编程不仅仅是为了找到一份好工作,更是为了打开一扇通往无限可能的大门。本文将围绕...
Java 开发人员:对于希望通过实际项目提升 Java 编程技能,尤其是在企业级应用开发方面有所追求的程序员,本资源是绝佳的实战教材。 - 计算机相关专业学生:可作为课程设计、毕业设计的参考,助力学生巩固理论知识,...
### IA-32架构软件开发人员手册第3卷:系统编程指南知识点概览 #### 一、手册概览 **标题:** IA-32架构软件开发人员手册第3卷:系统编程指南(中文版) **描述:** 本手册为Intel官方发布的第三版系统编程指南,...
《解析极限编程:拥抱变化(原书第2版)》是软件开发领域的一部经典著作,作者通过深入探讨极限编程(Extreme Programming, XP)这一敏捷开发方法论,为我们揭示了如何在快速变化的需求环境中,有效地管理和开发软件...
适合人群:适用于想要学习Windows应用程序开发的初学者以及希望深入了解Delphi编程特性和技巧的开发人员。 使用场景及目标:读者可以通过跟随本教程逐步实践,学习如何使用Delphi高效地开发Windows应用程序,掌握...
使用场景及目标:适用于嵌入式系统开发的教学和自学场景,主要目标是理解TCP/IP协议栈的工作原理,掌握嵌入式平台上的网络编程技术,提高调试和问题解决能力。 其他说明:实验内容详细记录了每个任务的具体实现步骤...
2. **编程实践**:包含了多种常见的编程题目,覆盖算子开发中的实际应用场景,让学习者通过练习提高编程能力。 3. **调试与优化**:涉及C算子调试技巧及性能优化的相关题目,帮助学习者掌握在实际开发中可能遇到的...
### 编程修养:软件开发人员的个人修养 在当今高度依赖信息技术的社会中,软件开发已成为推动科技进步的关键力量之一。而作为软件开发的核心——程序员的角色显得尤为重要。一名优秀的程序员不仅需要掌握扎实的技术...
- **跨职能组成**:确保每个小组内包含不同专业背景的人才,比如开发人员、测试人员、UI设计师等。 - **共同目标导向**:明确团队使命和愿景,使每个人都能朝着相同方向努力。 - **开放沟通环境**:鼓励成员之间坦诚...
2. MATLAB在DSP程序开发中的应用,尤其是MATLAB作为调试工具,提供仿真、分析等功能,有助于开发人员在实际编程之前验证算法和逻辑的正确性。 3. 生成直接目标代码的过程,这可能涉及MATLAB的代码生成工具或与DSP...
PIC32MX闪存编程规范的制定,旨在为开发人员提供一套标准化的编程流程与技术指导,以确保编程任务的顺利完成。无论是初学者还是经验丰富的工程师,都能从中受益,提升编程效率,减少错误发生。通过理解并熟练运用...
它的目标读者包括企业管理者、开发人员以及对汉语编程有兴趣的个人。 1.2 背景信息: 该工程名为“汉语编程企业管理应用软件”,由北京元易达科技发展有限责任公司发起,产品设计和开发者也是该公司所属的课题组。...
报告的目的是评估使用汉语编程开发企业管理软件的技术、经济和社会可行性,并为潜在用户,包括中小型企业管理人员、程序员和汉语编程爱好者,提供参考。 1. **背景与目的** - 该工程名为“汉语编程企业管理应用...
3. 学习能力:评估员工是否能迅速学习新技术和适应新环境,这对于快速发展的IT行业尤为重要。 4. 团队合作:考察员工的沟通技巧、协作精神以及对团队目标的贡献。 5. 自主工作能力:评估员工独立解决问题、管理...
Python 编程基础与应用课程标准 Python 编程基础与应用...学生通过学习和实践,掌握 Python 编程基础知识和应用能力,提高学生的实践能力、抽象思维、逻辑推理、自己获取知识等方面的能力,并具备解决实际问题的能力。
对于JAVA高级编程人员来说,掌握这一领域的知识是至关重要的,因为这不仅涉及到技术深度,还关系到系统架构的设计和优化。在这个主题中,我们将探讨几个关键的知识点,包括但不限于Servlet、JSP、过滤器、监听器、多...
2. **关键绩效领域的选择**:考核目标应集中在软件开发人员的关键绩效领域,如编程技能、项目管理、技术创新等。这些目标应根据每个开发人员的职责、能力和意愿来定制,并且应该具有挑战性,鼓励创新,同时尽可能...
3. **资源分配**:基于项目需求和团队能力,自动或手动分配开发人员到特定任务,确保每个任务都有合适的人选。 4. **工作流管理**:设计和执行工作流程,包括任务分配、审批、进度更新等,保证信息同步和决策过程的...
它的优异性能和强大功能,使得众多科研人员和开发人员将其广泛应用于图像处理、自动驾驶、机器人、安防监控等领域。 CUDA是 NVIDIA 公司开发的一款并行计算平台,允许开发者使用 NVIDIA 显卡来执行通用计算任务。...
学习函数式编程的人员 数据处理与分析领域的从业者 使用场景及目标: 数据过滤与转换:快速筛选和转换集合中的数据。 性能优化:利用并行流提高大数据集处理的性能。 简化代码:减少冗余代码,提高可读性和可维护性...