Share Your Knowledge and Experiences

?

Share Your Knowledge and Experiences

Paul W. Homer

FRoM All oF ouR ExpERiEnCES, including both success and failure, we learn a great deal. In a young industry like software development, disseminat- ing this experience and knowledge is vital in helping sustain progress. What each team learns in its own tiny little corner of the world is possibly influential across the globe.

Realistically our fundamental knowledge base for software development—that is, the knowledge that is absolute and theoretically correct—is small compared to what is necessary to successfully develop a project. To compensate, we guess, rely on intuitive judgments or even pick randomly. In that, any major devel- opment project generates empirical evidence into what works and what fails. We’re gradually working through the permutations, which we want to apply back to the industry as a whole.

At an individual level, we are all trying to grow and come to understand how to build larger and larger systems. The course of our careers will take us toward ever-increasing challenges, for which we want our past experiences to help guide us. Being there is one thing, but to get the most from the experience we often have to rationalize it. The best and easiest way of working through it is to attempt to explain it to another person.

The act of discussing something always helps to show its weaknesses.You don’t really understand something until you can explain it easily. It’s only by putting forth our explanations and discussing them that we solidify the experience into knowledge.

?

??Another point is that while we may have had specific experiences, the infer- ences we draw from them may not be entirely correct in the overall context. We may not have been as successful as we thought, or as smart as we wanted. Of course, testing your knowledge against the real world is scary, particularly when you find out that something dear is myth, incorrect, or was never true; it’s hard to be wrong.

Ultimately, we are human beings so not everything in our minds is correct; not every thought we have is reasonable. It’s only when we accept our flaws that we open up the possibility of improving. The old adage about learning more from failure always holds. If our ideas and beliefs do not stand the test of a debate, then it is better we find out now than build on it later.

We really want to share our knowledge and experience to help the industry progress; we also realize it helps us to understand and correct it. Given the state of so much of our software, it is clearly important for us to take every opportunity to share the things we know, what we think we know, and what we’ve seen. If we help those around us to improve, they’ll help us to reach our full potential.

Paul W. Homer is a software developer, writer, and occasional photographer, who was drawn into software development several decades ago and has been struggling ever since with trying to build increasingly complex systems.

时间: 2024-11-05 18:57:26

Share Your Knowledge and Experiences的相关文章

Extending sparklyr to Compute Cost for K-means on YARN Cluster with Spark ML Library

Machine and statistical learning wizards are becoming more eager to perform analysis with Spark MLlibrary if this is only possible. It’s trendy, posh, spicy and gives the feeling of doing state of the art machine learning and being up to date with th

Top 100 Best Blogs for iOS Developers

(by JP Zhang | Last updated: Apr 5, 2016 )  转载自:http://www.softwarehow.com/best-blogs-for-ios-developers/ If you are looking for insightful and educational iOS development blogs, you've come to the right place. Here are my 100 favorite, active blogs

第 7 章 门面模式【Facade Pattern】

以下内容出自:<<24种设计模式介绍与6大设计原则>> 好,我们继续讲课.大家都是高智商的人,都写过纸质的信件吧,比如给女朋友写情书什么的,写信的过程大家都还记得吧,先写信的内容,然后写信封,然后把信放到信封中,封好,投递到信箱中进行邮递,这个过程还是比较简单的,虽然简单,这四个步骤都是要跑的呀,信多了还是麻烦,比如到了情人节,为了大海捞针,给十个女孩子发情书,都要这样跑一遍,你不要累死,更别说你要发个广告信啥的,一下子发1 千万封邮件,那不就完蛋了?那怎么办呢?还好,现在邮局开发

Ubuntu 16.04 LTS 初体验 (转载)

一.前言 心血来潮,下载最新的Ubuntu Kylin 16.04尝鲜.但刚装完系统,还是有很多问题需要自己动手解决,这里就是把自己实际遇到的问题总结记录,希望也可以为其他刚接触 Ubuntu 的朋友提供一些帮助, 也欢迎大家补充.交流学习. 二.桌面使用引导 考虑到许多刚接触Ubuntu的朋友,对系统的使用做一些简单的引导. 三.系统设置  3.1 软件中心无法更新? 打开软件和更新面板后,修改下载服务器地址,然后选择其他站点(服务器可以随便自己选择,我选择了mirrors.sohu.com)

CCNA学习笔记(一)基础概念

NVRAM就是用来放配置文件和命令用的 路由技术到底研究什么内容? 研究路由器寻找最佳路径的过程(路由协议) 什么是路由?路由是指导IP保温发送的路径信息 路由器的任何一个转发动作都是基于路由表 辨析动态路由技术与静态路由技术 静态路由 由网络管理员在路由器上手工添加路由信息以实现路由目的(主要是配置简单,而且切记配置一条相反的路径) Static knowledge is administered manually-A network administratorenters it into t

SNMP 原理与实战详解

原文地址:http://freeloda.blog.51cto.com/2033581/1306743 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://freeloda.blog.51cto.com/2033581/1306743 大纲 一.什么是SNMP 二.SNMP背景 三.SNMP结构概述 四.SNMP支持的网管操作 五.SNMP的实现结构 六.SNMP的技术内容 七.SNMP的发展历史 八.SNMP的技术术语 九.综合

Dan Zhang - Visual Studio ALM MVP

I am working for www.ssw.com.au, a Microsoft Certified Partner specialising in .NET solutions, as  a senior software developer. I pecializes in developing solutions with C#, VB.NET, ASP.NET, WinForms, Reporting Services, SQL Server and Team Foundatio

第 12 章 命令模式【Command Pattern】

以下内容出自:<<24种设计模式介绍与6大设计原则>> 今天讲命令模式,这个模式从名字上看就很简单,命令嘛,老大发命令,小兵执行就是了,确实是这个意思,但是更深化了,用模式来描述真是是世界的命令情况.正在看这本书的你,我猜测分为两类:已经工作的和没有工作的,先说没有工作的,那你为啥要看这本书,为了以后工作呗,只要你参见工作,你肯定会待在项目组,那今天我们就以项目组为例子来讲述命令模式. 我是我们部门的项目经理,就是一个项目的头,在中国做项目,项目经理就是什么都要懂,什么都要管,做好

实战1 网络监控cacti的安装配置

一.cacti概述二.cacti工作流程三.cacti安装四.配置cacti监控本机 环境: 操作系统:CentOS 6.4 x86_64软件:Cacti-0.8.7e 官方网站:http://www.cacti.net 一.cacti概述Cacti 在英文中的意思是仙人掌的意思,Cacti是一套基于PHP.MySQL.SNMP及RRDTool开发的网络流量监测图形分析工具.它通过snmpget来获取数据,使用 RRDtool绘画图形,它的界面非常漂亮,能让你根本无需明白rrdtool的参数能轻