你好
在过去的几年中,我一直与刚开始从事IT事业的人们一起做很多工作。 由于问题本身和许多人提出的问题相似,因此我决定将我的经验和建议集中在一个地方。
从前,我读过2004年Eric Raymond
的一篇文章,在我的职业生涯中,我一直严格遵循它。 它很大,对于系统管理员来说更可能。 我必须帮助那些往往没有开发经验的人成为大三学生并开始我的职业生涯。
对于已经成为或者只是梦想成为新手开发人员的人,我可以提出以下建议:
- 自己探索问题
- 首先告诉目标,然后提出问题
- 正确写出重点
- 在地址提问并分享决定
- 尊重别人的时间
- 看起来更宽
现在更详细。
自己探索问题
您正在从一本书或一门课程中学习编程语言。 他们以示例代码为例,将其启动,但是由于您的无法理解的错误而崩溃了。 如果您相信这本书-应该可以。 但是您相信眼睛-它不起作用。 有哪些选择?
- 确定您将永远不会成为开发人员,因为整个世界都对您不利,甚至没有可行的示例。 放弃培训;
- 确定您永远不会成为开发人员,因为您太愚蠢或没有被给予。 放弃培训;
- 开始询问所有至少与IT有某种联系的朋友,要求他们弄清楚为什么它对您不起作用。 了解更多有关自己的信息,请冒犯。 放弃培训;
哪个选项正确? 这是:
了解您并不是独一无二的(无论您母亲和祖母在那说什么),IT世界并不像他们在参加课程和网络研讨会时吹牛那样简单。
理解自己不是唯一的,会导致认识到成千上万的人可能已经遇到了您的问题。 如果您是新手开发人员,那么您可能很容易注意到,安装或配置某些内容。 在您了解自己无法解决问题并需要帮助之前,我建议您通过以下清单:
- 确保问题是唯一的,并且互联网上没有答案
- 仔细研究问题的原因,而不是结果
- 评估问题的可能解决方案,其优缺点
- 考虑实现目标的替代方法
- 考虑可能会问您的问题,并提前准备答案
在第一段中,一切都很简单:如果您完全无法理解错误的文本,请将其复制到Google,然后通过链接仔细阅读文本。
其次 :例如,如果您的代码因错误“我无法连接第三方库”而崩溃,则它不是您的代码。 事实是您没有安装任何要使用的库。 因此,您需要寻找如何安装它,而不是如何修复代码。
第三个和
第四个非常相似:如果问题出在该库中,而我只需要查找另一个,该怎么办? 如果我根本不使用第三方库,而是使用标准工具编写代码怎么办?
第五点将我们引向下一部分:考虑您要问的人,并准备好答案。
首先告诉目标,然后提出问题
目标是您想要做的。 例如,编写一个可以访问Internet并保存10张有趣的猫图片的代码。 问题是为什么您会在控制台中看到错误,却看不到10只有趣的猫。 不要以问题开始您的问题。 以一个目标开始,以一个问题结束。 如果您要寻求帮助的人是一位经验丰富的开发人员并且了解很多,那么他一定可以为您提供更简单,更优雅的解决方案。 如果您已经选择了最简单,最优雅的方法,他将清楚地了解您想做什么以及为什么要做,这将加快响应速度。
好问题:
我想每天养10只逗猫,以笑并延长生活。 为此,我编写了以下代码:[...]。 我希望它可以连接到FTP服务器并从那里上传新图片。 但是,当我启动它时,我看到了此错误:[...]尽管我可以通过浏览器访问此服务器。
快速解答:
您徒劳地使用了这个库,没有人长期支持或开发它。 最好采取这个-我本人和猫一起下载她的照片!
坏问题:
嗨,我的代码产生了此错误[...],您不知道可能是什么错误?
显而易见的答案是:
你好 不,我不知道
正确写出重点
无需在一个人身上倾泻思路。 您寻求业务解决方案的人。 让他快速了解您的问题是什么,以及您希望从他那里得到什么。 如果您的读写能力有问题,请使用在线拼写和标点服务。 您可以在没有在线服务的情况下从邮件中删除垃圾。 不要倒水,不要从远处开始。 简明扼要,简明扼要。 提供示例。
不好:
-在退出时进入了)))我正在尝试将一个项目放在一起,但是由于某种原因O_o对我不起作用,尽管看起来我做得很好,请进来)))))))))一般来说,我在控制台中有一些不清楚的地方(((已经直接我尝试了一切,但没有任何效果,啊(
好:
-嗨,我正在尝试启动一个项目,但是有问题。 它在docker-compose up命令之后立即崩溃,这是启动日志和错误:[...]您能告诉我如何解决吗?
在地址提问并分享决定
除非已被告知应询问您,否则您不应在个人信息中向特定人写问题。 最好写信给一群人,因为:
- 每个人都在忙于解决他们的问题。 普通聊天或论坛中的某人可以给您时间的机会更高。
- 一般聊天中某人知道如何帮助您的机会更高。
- 您让其他人有机会找到相同的问题,以后再回答。
看看最后一段。 您已经了解到自己应该尝试解决问题吗? 已经在聊天室/论坛/组中使用过搜索,但是没有找到提及您的问题的信息? 好,然后问。
另一方面,不要徒劳的人。 如果可能,请从收件人列表中排除无法帮助您的人。 一个人收到的消息越多,阅读所有消息的可能性就越小。 不要让人们养成关闭警报或仅忽略消息的习惯。
当然,您的经验可能对其他人有用。 通过发布答案或解决方案为自己和他人节省时间。 下一位新手,如果他已经知道我们在这里谈论的内容,那么他根本不会打扰任何人-他将通过搜索找到您的解决方案。 为什么我说您可以自己节省时间? 因为您可能会在一年内遇到此问题,并且不记得它是如何解决的。 搜索将再次保存。
尊重别人的时间
为您寻求帮助的人们让生活尽可能轻松。
确保您发送的链接有效。 尝试以隐身模式打开它。 如果链接需要授权,那么您将看到访问错误。 例如,如果您将代码下载到私有存储库或将链接发送到您只能访问的Google驱动器,则一个人将看到一个错误,并且他将不得不花时间通知您有关错误,然后等待直到您配置访问权限为止。 让对方立即看到您在说什么。
不要期望任何人想记住您两天前的要求。 再次发送信息,提醒上下文。 没有人愿意以通信方式搜索您手头上的物品。 如果您懒于复制信息,以至于人们不花时间进行搜索,那么您就不需要帮助。
不要撕扯上下文。 如果您发送带有错误的日志,很明显,您不仅需要包括错误本身,而且还需要包括导致错误的代码,并附上错误原因的示例。
如果有解决您的问题的既定流程,请按照它进行。 如果您已经有了分步操作方法的文章,则不应重新发明轮子。
不要同时通过不同的渠道(写信给松弛,Skype,电报)寻求一个人的回应-这对一个人来说是不愉快的。
您无需一次将相同的消息写给几个人,希望至少有人会回答您。 所有这些人都可以给您答案(很可能会是相同的),但是他们都会在一段时间内分散他们的注意力。 使用群聊。
看起来更宽
我们在这里讨论的所有内容都适用于IT行业之外。 与亲朋好友交流时,在超市,汽车服务中,在另一个国家度假时,请遵循以下规则。 向人们表明您珍惜他们的时间,不想让他们无所适从。 表明您花费了时间和精力自己解决问题,但是您没有成功,并且确实需要帮助。 感谢,人们会同情您的问题并为他们的解决方案提供帮助。