软件开发初学者应该怎样看待自己

发布于:2015年06月08日 11:20

对于软件开发初学者如何才能学好自己的技能呢?首先,你应该有一种学徒定位,他是我们在软件开发学习前期应该拥有的一种态度:对于已经做完或者正在做着的事情,永远都有一种更好、更聪明或更快的方法来完成它。而学徒期就是这样一种状态或过程:不断演进并寻找更好的方法,找到能使自己学会那些更好、更聪明或更快方法的人、公司和情景。”我们认为,拥有这种“不依赖于任何人向你提供方案,靠自己找到处理问题的建设性方法”的内在动力是非常有价值的。Dweck曾经写过:“它不是一种靠成功来增加并随失败而减少的内在数量……它不是一种我们只需告诉别人他有很高的智商就能给予那个人的东西。它是一种我们为别人提供装备然后让他们自己去获取的东西——方法是教他们重视学习而不是外在的聪明,教他们学会享受挑战,并将错误看作臻于精熟的通道。”(《Self-theories》(自我理论),第4页)

虽然最理想的情况是把你放在一个拥有学徒伙伴、熟练工和师傅的小团队中,我们对于学徒期的理解并不要求这样的安排。你的学徒过程由你自己掌控,而最终的训练成果就是你的责任感。尽管学徒期的进展过程都由你自己来决定,但是否有人指导,以及指导人的品质也会对你的技能产生持久的影响。

作为一名软件技师,学徒期是你旅程的开始。在这段时间里,你将首先内向地关注自身,下决心提高自己的技能。虽然你会受益于同伴的关注和经验更丰富的开发者的关注,但你必须学会自我成长,学会如何学习。做学徒意味着什么?本质就是这种对自身的关注和提高自身技能的要求。

最终,学徒将从一个除了持续学习很少有其他责任的位置成长到一个拥有更多外向型责任的位置,我们一般会相信:这种转变只有在回首往事的时候才能看出来。在某个时间点,学徒得到了师傅或熟练工的评价,并被告知他在社区中的工作和角色已经处在熟练工的位置上了。在这种情况下,其实学徒早已经开始担当更多的责任了,像一只“被水煮的青蛙”,他经历了一种渐进而非离散的转变,从一种状态转到了另一种状态。一些人完成这种转变需要的时间会比别人更长。对某些人来说,这种转变所花的时间甚至超过了整个职业生涯。做软件学徒意味着什么

谈到做学徒意味着什么,我们的访谈者之一Marten Gustafson说得最好:“我猜它基本上是指拥有这样一种态度:对于已经做完或者正在做着的事情,永远都有一种更好、更聪明或更快的方法来完成它。而学徒期就是这样一种状态或过程:不断演进并寻找更好的方法,找到能使自己学会那些更好、更聪明或更快方法的人、公司和情景。”我们认为,拥有这种“不依赖于任何人向你提供方案,靠自己找到处理问题的建设性方法”的内在动力是非常有价值的。Dweck曾经写过:“它不是一种靠成功来增加并随失败而减少的内在数量……它不是一种我们只需告诉别人他有很高的智商就能给予那个人的东西。它是一种我们为别人提供装备然后让他们自己去获取的东西——方法是教他们重视学习而不是外在的聪明,教他们学会享受挑战,并将错误看作臻于精熟的通道。”(《Self-theories》(自我理论),第4页)

虽然最理想的情况是把你放在一个拥有学徒伙伴、熟练工和师傅的小团队中,我们对于学徒期的理解并不要求这样的安排。你的学徒过程由你自己掌控,而最终的训练成果就是你的责任感。尽管学徒期的进展过程都由你自己来决定,但是否有人指导,以及指导人的品质也会对你的技能产生持久的影响。

作为一名软件技师,学徒期是你旅程的开始。在这段时间里,你将首先内向地关注自身,下决心提高自己的技能。虽然你会受益于同伴的关注和经验更丰富的开发者的关注,但你必须学会自我成长,学会如何学习。做学徒意味着什么?本质就是这种对自身的关注和提高自身技能的要求。

最终,学徒将从一个除了持续学习很少有其他责任的位置成长到一个拥有更多外向型责任的位置,我们一般会相信:这种转变只有在回首往事的时候才能看出来。在某个时间点,学徒得到了师傅或熟练工的评价,并被告知他在社区中的工作和角色已经处在熟练工的位置上了。在这种情况下,其实学徒早已经开始担当更多的责任了,像一只“被水煮的青蛙”,他经历了一种渐进而非离散的转变,从一种状态转到了另一种状态。一些人完成这种转变需要的时间会比别人更长。对某些人来说,这种转变所花的时间甚至超过了整个职业生涯。