这个标题有点宽泛,但是我可能需要提供一些背景知识才能正确地问我的问题。
我知道这里已经有人问过类似的问题。但就我而言,我并不是问我是否应该指导某人,或者该人是否适合成为软件开发人员。那不是我的判断力。尚未直接询问我,但是很明显,我本人和其他资深开发人员将指导从这里开始的新开发人员。我对此没有任何问题,在很多情况下,它使我对事物有了新的认识,最终我在过程中学习。另外,我还记得有人花一些时间教我一些东西对我的职业生涯有多有益。
当我说“新开发人员”时,他们可能从大学刚毕业到大学拥有一两年的经验。
最近我们有一些人从这里开始,他们似乎对开发/编程持不同的态度,这与我自己的态度不同,我很难调和。他们仅提取足够的信息来完成任务,但不能真正从中学习。我发现自己和他们反复讨论同样的问题。我知道其中的一部分可能是个性问题,但是我认为尽自己最大的努力并在它们处于我的翅膀下时将它们从巢中推出是我的工作。
如何我能提供足够的信息以使他们学习但不给他们太多解决问题的方法吗?
或者:
对问题的正确回答是什么?被设计为走最小阻力的道路,本质上是强迫他们学习而不是走简单的道路?
这些问题可能是更一般的教学问题,没有那么多专门从事软件开发。
注意:对于他们正在执行的任务,我没有任何发言权。管理层将任务分配出去了,它可以是很简单的错误修复,也可以是自己启动整个应用程序。尽管这绝对不是理想的方法,并且显然提出了自己的挑战,但我认为这是一个最好留给另一个问题的话题。因此,我能做的最好的就是帮助他们解决当前的问题,并尝试将其分解为更简单的问题,并检查他们的提交日志并指出他们犯的错误。
我的主要目标要:
帮助他们,并为他们提供所需的工具,使他们开始变得更加自力更生。
按照正确的方向指导他们,并尽早打破不良的开发习惯。
减少与我在一起的时间(上述的性格类型通常需要更多的一对一时间,并且对IM或电子邮件的处理效果不佳。虽然这通常很好,但我不能总是停止我正在做的事情,大踏步前进,并帮助他们立即纠正错误;我有我自己的项目需要完成)。
#1 楼
这里曾经有一个包含此类信息的问题,而让我最困扰的是不要触摸他们的键盘总之,请告诉您的初级人员如何实现他们的目标尝试做,但不要为他们做。
但是除此之外,这里还有一些其他技巧:
鼓励Google(或其他任何人)搜索工具)。如果您知道可以在网上轻松找到答案,请告诉他们查找答案,而不要告诉他们答案。最终,您想教他们如何教自己,而不要让他们变得依赖您。
让自己有机会回答问题。如果您不在家或不希望被打扰,请让他们明白他们应该在指定的时间之前提出问题。
定期检查代码以告诉他们他们做对/错了。借此机会指出最佳做法
尽早开始最佳做法。最好花额外的时间教给他们正确的方法,而不是稍后再尝试更改他们的方法。
让他们尽早开始计划/记录他们将要做的事情,而不是让他们开始编写代码。
愿意向他们学习。他们可能花费比您更多的时间来学习,而且他们可能会学到您不知道的东西。
帮助他们从错误中学习。将会有错误,因此请确保向他们表明错误是学习的一部分,并应将其作为学习的机会。
(来自下面的RuneFS)与其告诉他们如何做,尝试帮助他们自己解决问题。这将有助于提高他们从逻辑上解决问题的能力,并提高他们的学习能力
(摘自下面的RuneFS)与其告诉他们做错了什么,不如告诉他们如何改进它。确保包括为什么您的方法比他们的方法更好的原因。这将增强他们的信心而不是削弱它。当然,如果他们不听你的话,那就不要害怕告诉他们以正确的方式做:)
评论
+1代表不要触摸键盘。部分原因是教给他们如何做某事比在指导情况下完成某件事更重要,但实际上是因为我绝对讨厌别人偷我的键盘。
– fire.eagle
2012年5月5日17:20
我知道它已经被说过了,但是“不要碰键盘”。是非常好的一点
–汤姆·乡绅
2012年5月5日17:46
令我惊讶的是,其中很多内容只是教会初级开发人员提出更聪明的问题。很棒的资源:catb.org/esr/faqs/smart-questions.html
–塔拉玛
2012年5月5日18:50
严格地说,我同意您的大部分观点,我非常努力地分两个部分来教导教练和其他负责他人发展的人。永远不要告诉他们如何去做。帮助他们弄清楚他们自己,不要告诉他们他们做错了什么,而是告诉他们如何改进。前者是因为这增加了他们的学习能力,后者是因为与其削弱信心,不如增强其信心
–Rune FS
2012年5月5日19:37
@Jae:建议指导者不要触摸初中的键盘。
–ftr
2012年6月6日上午11:45
#2 楼
我有大约4年的经验,从初级开发人员的经验中可以告诉您我希望得到什么样的指导。看来您实际上是在描述我刚开始时的开发人员类型:)本质上来说,您想鼓励他们学习。有人认为,大学毕业后,他们不必读书或学习。这种态度会导致寻找捷径并“完成”。
让他们“实用程序员”并让他们阅读。这本书将帮助他们认识到编程是一种技巧/职业,而不仅仅是一项工作。推荐书籍让他们每季度左右阅读一次。帮助他们建立“知识组合”(如“实用程序员”中所述)。我强烈推荐Safari联机丛书,其中包含很多CS /编程书籍。
凭借他们的知识组合,他们将知道在哪里有问题。教他们去哪里看。我本人最近发现了StackOverflow的有用性(而且您知道,最好在这里查看,然后再找Google)。
似乎您不能花很多时间在上面,但是结对编程是很有帮助。如果您不能这样做,那么至少使用CodeCollaborator或其他类似工具进行代码审查。它们不需要您想象的那么多时间。
单元测试也非常重要。它们可以迅速揭示不良的开发实践,特别是如果您将其与持续集成结合在一起。
#3 楼
提出引导性问题以引导他回答,而不是简单地告诉他(好吧,您可以告诉他一些基本的东西,例如服务器名称是什么,以及哪个数据库存储信息)。向他展示如何找到答案。永远不要在错误的地方重写他的代码,告诉他什么地方不对,并期望他修复它。您得到了您所期望的。您不能通过让任何人依赖您来帮助他。
代码审查也很重要。而且,如果您配对程序,请让他经常使用键盘。即使您告诉他要键入什么,他也会从打字中学习到更多的东西,即使您在编程时也可以坐在旁边。
从软件中获取一些典型的示例该应用程序是结构化的,并逐行与他一起检查,以确保他了解为什么需要每一行以及它做什么。确保他了解编码标准以及代码的组织方式以及为什么您(作为公司)以您的方式做事是您的工作。
如果他有其他建议的方式,请仔细听。首先,他可能是正确的。其次,倾听会告诉您,如果他的建议不切实际,他在理解上的弱点在哪里。此外,如果您听别人说,人们会更尊重您。如果他错了,那么请回到主要问题,让他亲自了解为什么这个想法错了。如果他几乎是正确的,有时会遵循他的想法,没有比总是被告知您的想法毫无价值的事更令人沮丧的了。
询问有关他的背景的问题。他可能知道一些您没有机会合作的事情。如果是这样,并且出现使用它们的机会,请问他有关他的知识的问题。
如果您的应用程序完全是旧的,那么它可能会有一些偷偷摸摸的“陷阱”,而不是新手无法知道的。因此,当他开始在您拥有一个或多个这些陷阱的区域工作时,您可能会在编码之前就跟上他的步伐,并告诉他有关这些陷阱的信息,然后看看他在编码时是否陷入了陷阱。
最后,通过给予尊重,您会得到部分尊重。尊重您所指导的每个人。不要让他们感到贬低或愚蠢。如果您尊重他们,他们会更好地倾听您的声音。
评论
我会给自己的答案几乎与之相同,但我还要补充一点:让您的大三学生犯错(提供机会使他们犯错),因为错误提供了最佳的学习机会。失败会激发情绪上的刺激,更可能导致记忆联想,从而鼓励学习,并且希望您的大三学生会因失败提出更多问题而受到鼓励。我经常告诉我的初中生,如果他们也尝试从失败中学习,那么一开始就尝试失败是可以的,并且我使用测试和代码审查来指导他们的学习努力。
–S.Robins
2012年3月6日21:23
提出引导性问题是我发现的将某人提升到另一个成熟水平的最佳方法之一。您的主要目标不是让他们找到正确的答案,而是让他们到达一个他们能够在找到正确答案时就知道它们的位置(因此,能够一路丢弃错误的答案)。
–大麻
2012年3月6日21:41
@ S.Robins,我发现它也有助于指出由于您犯了错误而使您知道这些东西。
–HLGEM
2012年6月6日22:21
#4 楼
我总是确保开发人员需要我的帮助,并且我非常注意不要深入解释,而他们的耐心不能容忍。像每个人一样,我喜欢自己声音的声音!
我平等地对待他们,并确保在我发声时经常询问他们的意见。
抓住他们做正确的事,让他们知道。
当我正确地做到这一点时,我总是会学到一些东西-关于我的手艺,我的专业,关于开发人员以及关于教学的知识。
第一课总是:什么时候知道你在尝试靠自己太久。许多人为找到自己的答案而感到自豪,并浪费了宝贵的时间在圈子里闲逛。
评论
回复:“让他们做正确的事”:我不确定我是否同意这一点,因为这意味着您一直在看着他们的肩膀,或者至少定期检查他们。可能有一些必要的关系,但是我认为导师/门生之间的关系不是其中之一;这与您“平等对待”的绝妙建议相矛盾。
–ruakh
2012年3月5日20:57
鲁阿克,你说得很对。当我本人首次成为经理时,我的经理就告诉我(他是我的导师,但他来自布鲁克林...),直到现在我都没有质疑过措辞。更恰当的说法是:“注意他们所做的事情。”我从那开始。当C程序员遇到不可避免的“ off by 1”问题时,我可能会说她的循环结构紧凑且注释良好,然后请她逐步讲解逻辑。谢谢。
–托马斯·麦克纳姆(Thomas McNamee)
2012年3月6日16:11
好吧,是的,我同意。 +1。 :-)
–ruakh
2012年3月6日16:12
#5 楼
我是一名初级开发人员,我认为我的导师很好地处理了这些事情。通常,他会告诉我几种方法来做某事,但不告诉我如何做。然后我曾经坐在那里尝试两种方法,然后决定哪种方法最能解决问题。此外,如果他正在做一些可能对我有用的事情,他会打电话给我只是为了逐步了解他的工作及其原因。
这导致我花了很少的时间,从本质上讲,我必须自己了解正确的答案以及如何实施事物。当然,如果我遇到困难,他会在那里帮助您,但这是少数几次。与他一起工作仅5个月后,我可能获得的知识比我整个大学课程都要多。
要记住的重要一点是,我只是一个人,这对我来说很有效,因为我的状态和他的状态。这是关于找到一个对大家都有用的结构。
评论
+1我在工作中学到的东西比我以前在大学所能学到的更多,仅仅是因为人们花时间教我。
–詹姆斯·科里(James Khoury)
2012年5月5日23:38
#6 楼
根据给出的任务,我很想采取几种不同的方法:问他们下一步将如何完成任务。这可以给出从“我不知道该怎么办”到“好吧,我会尝试但是...”类别的想法,这些想法是因为他们有自己的想法可能对起点有用。
快速浏览一下他们想做什么并提供提示,以便他们找出问题所在。这不是给出“仅删除这一行代码”的答案,而是建议他们查看其中的内容,这是全部必要的。
如果前两对都不起作用,那么我d尝试让他们按照我的指示来解决该问题。这是进度的下一步,如果他们不知道从哪里开始并且提示不起作用,那么这就是下一步。
最后,如果没有其他效果,那么我会为他们完成工作但是我会尽量避免这种情况,因为这是一个人非常了解某个系统的创建之类的问题,因为有人可能会认为我很了解这个系统的工作。 />
评论
+1我打算写点东西,但这是我总结的方法。
–杰森·塞布林(Jason Sebring)
2012年3月5日18:01
#7 楼
我在工作中所做的一件非常有用的事情是建立一个用于内部问答的论坛(即PHPbb),并遵循以下规则:如果问题和/或答案花费的时间超过5分钟,则应该通过论坛询问和回答。好处:它迫使初级开发者清楚地说明问题,这使回答变得更容易,更不用说他自己想答案的时候了,只需思考一下关于它的更多信息
它避免了重复的问题,因为初级开发人员应该从搜索已经提出的类似问题开始
它有助于建立知识库,该知识库将对将来的员工和记录许多小事情有用可能会浪费时间。
#8 楼
我将在这里逆转趋势,建议您不要鼓励初级开发人员学习如何自己找到答案。看起来像是“我拥有它,但我不打算把它提供给您”的游戏。与他们配对以找到答案。无论如何,您都将用谷歌搜索它,因此与他们坐在一起时也要这样做。他们会选择这是找到答案的方法。
如果您与他们紧密合作,他们会选择如何正确使用IDE的方法。如何规范化数据库;如何使您的代码变干...无论您知道什么都应该知道。
关键是:一个-使自己可以使用它们,以便他们可以看到您的工作方式。第二点-大声说出自己为什么做自己在做的事情。 “此代码会重复,因此我将对其进行重构,”而不是“在这三行上使用提取方法。”
评论
我不相信您正在逆潮流。这是一个很好的技巧;与他们一起工作,并向他们展示如何解决问题(不过,可能不得不假装他们不知道答案(不隐藏它)以显示找到问题的过程)。
–乔什·约翰逊(Josh Johnson)
2012年6月6日22:38
而且要明确一点,我无意隐藏知识。但是很明显,我所知道的被(有意或无意)利用了。我并不是在谈论我们正在使用的技术的一些深层隐患。我正在谈论的是原语和对象之间的区别,或者实例变量与本地变量之间的区别,或者是一条错误消息,其中确切说明了错误所在以及从何处开始查找错误。 (作为参考,我目前的学生有5年的专业经验;我认为我并不无理。)
–乔什·约翰逊(Josh Johnson)
2012年3月7日13:44
#9 楼
我只需要培训过一次初级程序员。这是为了帮助维护我构建的系统。目标是最终将整个系统交给他。在他遮蔽我一小段时间后,我把他扔进了火炉。我会把案件分配给他,并希望它们能够完成。如果他有麻烦,我将请他解释问题所在以及他所处的位置。然后,我将以最笼统的方式建议他,下一步该怎么看。 (哪个应用程序,也许要看哪个模块等)。我永远不会让他挣扎,但我也永远不会做任何工作。只提供方向。如果他仍然遇到麻烦,我只会耸耸肩膀,说“开始跟踪代码”。每当我这么说时,他都会畏缩-知道他正在参加一个乏味的练习。这让他发疯了,因为我们俩都知道,如果我能下车并帮忙,我大概可以在10分钟内找到问题所在。
几年后,他开始涉足更大的领域,现在他正在训练自己的大三学生。他最喜欢的故事是我将如何始终告诉他“跟踪代码”,以及那些代码跟踪练习对于使他成为当今的程序员至关重要。
#10 楼
每当我被问到可以通过Google快速搜索解决的问题时,我都会找到文档或相关文章,并将其转发给提出该问题的人。知道在哪里查找内容是一项重要的技能,有时比您想像的新开发人员要困难得多。他们甚至可能都不知道他们在寻找什么,这就是您需要帮助的地方。
一旦掌握了相关的文章和文档,他们就会被迫阅读有关解决方案的知识,而不是徒劳地寻求帮助。开发人员的快速答案。
这将完成以下任务:
减轻经验丰富的开发人员的负担。
强制新开发人员学习。
所有人的幸福。
有时候,您只需要给他们一些坚强的爱,尤其是当他们看起来好像不想学习时。不要给他们答案,但是要确保他们指向正确的方向。
#11 楼
我建议开始提供您所拥有的部分实际作业,并尽一切可能使用他的代码。换句话说,训练他替代自己。通过这种方式,您将致力于分配时间与下级一起工作,并且他将能够看到“现实生活”。通过处理实际的作业并听取生动的反馈,他将能够很快使p加快速度。
#12 楼
我过去曾教过人们各种各样的科目,而让我印象最深刻的是大多数人没有解决问题的技能。就是说,如果您给他们看一个确切的解决方案,那么他们一旦知道或被告知需要它,便可以在以后重用它。但是生活中很少有这种情况。除非您的工作是涉及使用工具C将小部件A粘贴到小部件B的“精神工厂”,否则您将需要拥有以下两项:
技能和工具的工具箱
一种解决问题的方法
例如,看看我发布的答案。那涵盖了许多人没有的解决问题的方法。 College并未在CompSci计划中向任何人传授此知识,您已经了解或自己解决了这一切。
一旦初级开发人员了解如何解决问题,他们需要一套工具这样做。
调试器(大学从未提及过)
探查器
文本编辑器
Shell(和相关的utils)
资源(书籍,google,因此,手册页)
确定初级开发人员所欠缺的内容,您可以帮助他们进行改进。请注意,有些人对学习如何解决自己的问题确实不感兴趣,只是希望将“明显的逐步”解决方案交给他们。这些不是优秀的开发人员。
希望您不会有任何一个。如果这样做,请意识到无论您花费多少时间,他们都不会全力以赴。这将需要努力,而只要求您为他们做就容易了。它类似于福利问题,并由经济学理论解释。
开明的自我利益表示,在任何给定情况下,人们都会选择他们认为最有利的选择。请注意,这就是他们所看到的。我认为最重要的是自给自足和学习。所以,我自己做事。但是其他人可能会看到他们只需要在截止日期之前提供工作代码。因此,他们正在寻找成本最低的方法。通过为他们提供“免费赠品”,他们需要花费最小的精力来完成他们的目标。除非您卸下该拐杖,否则它们将不会生长。
#13 楼
您描述的组织与我的组织有很大不同。我处于初级工作的控制之中,我确实将其视为判断的角色。所以有很多不同。无论如何,我想建议您做的一件事是,特别是在前两周要经常拜访他们的办公桌。第一周,一天大约3次,然后逐渐减少。
我尝试通过这种方式发送的消息是,我关心他们的生产力。我确保他们不会卡住。我确保他们遵守规则,并且不要重蹈覆辙。我教他们尽可能多地做出承诺。了解他们逐步开发,并逐步考虑设计。
我最糟糕的噩梦是开发人员,他们每天都告诉您他们只需要一天就可以完成其功能。经过数周的延迟,您会获得一个过于复杂的设计,该设计从一开始就被其作者入侵。多余的越野车功能被丢弃,以补偿延迟,因为它们是设计的自由副作用。
我相信许多开发人员都倾向于这种方法。如果您独自承担一个compex任务,那么尝试证明自己可以独立完成是很自然的反应。但这是错误的回应。质量是团队合作,他们学习得越早越好。
#14 楼
其他答案很好,但是我想对这句话进行评论。最近和过去,我们从这里开始的人们似乎对发展/不同于我的编程,让我难以调和;他们似乎只提取了足够的信息来完成任务,但并没有真正从中学习。
大多数人都想知道如何做某事。开始时,如果您对学习新事物和学习如何工作不知所措,这种态度很好。
很少有人想知道为什么要做某事。这些都是聪明的经理想要的人,即使他们有时很难管理。
有些人编写代码以获取报酬。其他人则乐于接受钱进行编码。与热衷于设计和编码的人一起工作会更好。对我来说不幸的是,这也很罕见。至少直到我发现堆栈溢出。
#15 楼
对于那些对为初级开发人员进行所有此类指导的前景感到兴奋的人,要提防一件事情:确保您的管理层了解正在发生的事情。教别人通常是艰苦的工作。它需要专注,专心,计划和努力,而最重要的是需要时间。无论您采用哪种方法,如果您以认真的方式进行教学和指导,都将浪费您的时间。
如果您的管理层雇用经验不足的开发人员,并且期望高级开发人员将承担培训职责,请确保职责明确。找出时间框架,并确保您的开发进度能够反映出培训所花费的时间和精力。确保管理层制定了一些计划,以在商定的某个时间评估指导工作的成功性。 (当然,如果他们正在招聘需要教学和指导的开发人员,但是管理层没有为此计划,那显然是一个严重的问题。)
不是每个人都是优秀的老师或导师,也不是每个人都想要是。我不是要听起来硬朗或痛苦。我非常喜欢教学。但是期望每个人都会擅长(尽管有自己的才能)是愚蠢的,也不能期望每个人都喜欢这个过程(记住,这并不容易)。此外,如果您是不喜欢辅导的高级开发人员,或者您真的觉得自己对老师或辅导员而言是一个不佳的选择,请确保您的管理层了解涉及您履行这些职责的计划是一项带有责任感的计划。严重的缺陷。另一方面,如果您想擅长教学或指导,那也需要交流。
如果教学和指导在高级开发人员中负担不均,那么请确保将这些任务视为公认的。对公司有价值,就像认可产品开发成果一样。
#16 楼
我会给你看的。基本上,当我:
我对该主题进行了正式介绍时,我学得很好。 。如果没有人(是的,一个人)回答关于新概念的所有问题,我将永远无法学到新的东西。完成后,我就...
拿一本书。作为我的导师,您应该有一本完全相同的书,所以我总是可以说:“嘿,这是什么意思,在第四章,第72页,第6段...”,您会确切地知道我在说什么关于。一旦有了书,我就会变得更加独立,而且实际上只会问问题。然后我...
一起开始一个项目。这是过程中最重要的部分。在这里,您可以开始教我最佳实践,算法,困难(但有用)的语言功能等。
现在您已经说过,有自己的项目需要照顾,并且您并不总是有时间。这就是为什么我们拥有StackOverflow的原因。我相信他们会很乐意帮助他调试他的代码。至于那里没有话题的问题,他可以在这里问。
话虽如此,您仍然必须定期与他合作。一般的“时间轴”应为:
1个月。应该知道基本语法。编码时仍不独立。
3个月。此时,他应该像手背一样了解语法,并且应该能够轻松解决简单的问题。他更加独立,只是还没到那儿。
6个月了。他们应该知道,除此之外,还有:最佳实践,通用算法等。他应该可以自己进行项目,也许在SO的帮助下。
综上所述,使某人独立的最简单方法是给他们一个难以学习的话题,除了互联网以外,不给他们任何帮助。他将被迫自己学习,他将了解自己的东西。
在他知道您想让他知道什么之后,将他释放。让他离开去学习他想学的东西(您总是可以说您希望他继续用这种语言工作)。
我希望这会有所帮助!顺便说一句,让他读一读:十年自学编程。
#17 楼
区分学习水平的高低。如果是与知识,理解力或应用相关的,那么我就直接为他们提供答案,并简要说明他们下次如何查找它们,这没有问题。这不是学校,不是骗子,他们不会永远那样依赖你。只是不要计划在头一两周内做任何其他事情,所以当您不这样做时,它也不会使您烦恼。在头几周后,如果您经常被打扰,遇到此类问题时,请使用番茄计时器,直到番茄结束时才回答任何问题。 Google现在对您很方便,因为您知道要搜索什么。它们通常不会,所以如果您必须告诉他们使用Google进行搜索,请告诉他们要使用哪些搜索字词才能获得最佳效果。
如果问题与分析,综合或评估有关,我花了更多时间在这个话题上。在这里,您可以提供决策依据,并帮助他们得出相同的结论。在设计和样式方面,这种情况最常见。不要仅仅告诉他们使用某种设计,而是向他们展示为什么它优于他们的首选。让他们犯错,让他们纠正自己的错误。
#18 楼
我在这里没有看到任何人提及我的个人英雄兰迪·鲍什。我认为这对实际从事编程,教学或指导编程的任何人(甚至对于想过有意义的生活的任何人)都是有益的。您和/或您的同事可能会发现我花了很多时间来观看这些讲座,这对实现您的梦想(他曾经是一名教授,这与激励他人紧密相关)其他)和
时间管理。
#19 楼
作为一名初级开发人员,我觉得如果遇到一个问题,最好直接获得答案并花时间了解如何解决。我付了钱。我的雇主不希望为学习付费。即时消息有望在一天结束时完成。在工作环境中浪费时间寻找解决方案是没有意义的。那就是我会及时处理的事情,希望对我的工作有帮助的话很快。
评论
您的雇主以一种或另一种方式付钱给您学习
–smp7d
2012年5月5日17:12
如果您从来没有变得比您被雇用为初级程序员的那一天变得更好,那么对于您的雇主而言,您的价值就更低。
–user1249
2012年5月5日17:25
麦克斯,你错了,除非你有一个糟糕的雇主。好的雇主会付钱给您学习,工作或什至让您参加会议或课程。如果您保持当前的态度,别指望不再成为一名初级开发人员。诸如大三/高级之类的标题不会根据您从事某项工作的时间而散发出来。如果您已经做过相同的事情很久了,但是却没有学到,您仍然会被视为初级。
–安迪
2012年5月5日18:58
@MaxSan问题是高级开发人员很少愿意用勺子喂你。我们尚未聘请实习生作为全职计时器,因为他们无法自行解决问题。我们希望您花费一些时间来解决问题,并且仅当您花费了合理的时间来寻求帮助时。作为高年级学生,您将被期望解决其他问题,而如果您是汤匙饲料,您将无法做到这一点。
–安迪
2012年5月5日21:56
如果您想“全面解决”问题,那么您永远不会脱离初级开发人员的地位。从提供给您的完整解决方案中学习可能是可行的,但这肯定是无效的。这就是大脑的工作方式:如果您体验解决方案的方式,而不仅是解决方案本身,那么您将学到的不仅是研究别人提供给您的解决方案,还有很多东西。
–波斯语
2012年6月6日9:45
评论
您只能帮助某人成为他们自己想要成为的人。引导那些想被引导的人。您说对了,有很多关于软件开发的问题,但这是关于成为一名好老师(即使那不是您的主要工作)。在教学的背景下,我在《高等教育编年史》上写了一篇小文章,说当您扮演三个角色时,成功就可能发生:成为一个好的榜样,充当技术支持(直到他们弄清楚如何问好问题和在哪里) ),并成为啦啦队长(耐心和支持)。
这里有很多关于此主题的反馈:programmers.stackexchange.com/questions/137708/…
您为什么要加入“指导”的言论?使用“培训”一词:您描述的是“职业培训”,这不是哲学上的东西,不是您看待宇宙和一切事物的方式,这就是您公司应该做的事情。 (您的公司应该考虑给他们一个正式的人)
并且..确保他们的立方体在从立方体到洗手间的路径中间。