写在从iOS转web开发之前

fisherMartyn bio photo By fisherMartyn

马上准备从iOS开发转做web后端了,从开始学习oc语言到跟公司的iOS发版转瞬之间已经过去了10个月,忽然感慨良多。

关于学习

感谢组里给了我这么好一个从头学习iOS并独自跟进的机会,因为没有大量的努力,再清晰的理论也无法感悟。实践终归才是理论的来源。

感觉学习应该是分两个层次的,第一个叫做get things done,即完成需求,通常有各种方式。第二个层次叫做get things done gracefully,即优雅的完成需求。

何谓优雅,每个人都有其标准吧,甚至有些标准还是相互矛盾的,例如可扩展性和性能之间;代码可维护性和代码量之间。

因此学习的方法应该也是分两个层次的,第一个叫做大量做需求,目的是为了知道不优雅的痛在哪里。第二个叫做大量的调研,例如要知道做同样一件事情业界的最佳实践是什么,有什么考虑,优劣在哪里。

关于问题的解决能力

没有什么好说的,但是问题的解决首先是问题的描述,能否清楚的描述自己的问题,就像在开始写代码之前必须明确定义需求一样。

每个人擅长的领域不一样,为了解决问题,必须群策群力,平时所处的社区决定了自己解决问题的能力。github和stackoverflow一定是不可或缺。

你身边的人的水平决定了你的发展,但是互联网让你身边的人的范畴扩展到全世界。

##全栈之路 跟了几个月的需求,也看了很多书,但是刚开始看一些比较高级的内容,例如block和gcd、hybrid app等,面对继续做iOS的需求和转做web后端的机会,果断选择了后者,因为这是我认为的全栈之路。

见过比较全面的开发者,但没有见过至少令我叹服的全栈工程师。我所认为的全栈,首先至少要是一个耐心的长者,但是在崇尚“提问前的xxx个习惯”的当今,似乎并不多见耐心者,但是技能是其次,做人要居先吧。其次可能是谦逊吧,任何一个领域,少于半年的努力,我认为大多数人都不能精通于此,因为所谓全栈,至少要在三个层次上有所涉猎,前端、后端、数据库,不少有夸夸其谈者或者盲目自大者或者好为人师者,认为自己已经走上全栈之路,但其实不然。第三点应该是好奇心吧,我极其崇尚黑客精神,做自己感兴趣的吸引自己的事情,而不仅是出于功利,但是在目前骇客(出于利益)大行其道,各种公司以Hackathon的名义举行创意征集大赛的时候,我见过很多level很高,带着不屑的表情看着那些忙碌的年轻人的管理者,但很少有德才兼备的黑客。

以上三点,供你我共勉吧。

##关于思考 学习和遗忘可能是人类不可避免的规律,所以有时候重复学习是难免的,即使做了再详细的记录也很难免。

理解的深度才是真正记忆的途径吧,不过必须要经过深刻的思考,当然或者是别人的嘲笑,不害怕在别人面前暴露自己的无知,或许可以让自己好受一些。

还需要继续努力的。