我最早接触Go是大一下学期的时候,应该算有4年的Go语言学习吧,之所这么说,是因为这种学习完全算不上“Go语言经验”。在经历了数个月的Go语言求职经历尝试后,我终于如愿以偿找到了一份C++工作,怎么说呢,心里有各种不满,不过始终也觉得Go是个好语言,记得刚接触Go的时候这个语言给了我一种前所未有的简单体验,可能就是因为感觉很喜欢Go于是就一路学了下来。但是有些时候,兴趣无法决定一切,当你的同学大四全都出去实习,当你的老妈天天叨叨着你为什么你不赶紧找工作的时候,也许你就会明白,我们追逐梦想没有错,但是我们首先应该独立。
虽然对于长时间的Go学习感到十分惋惜,但是没办法,Go无法为我带来一份哪怕只是能吃饱饭的工作,虽然现在我的C++工作也差不多如此,但是起码让曾经自以为比别人挤出了更多时间研究编程的人来说结果不那么凄凉吧。
如今感觉自己看透了许多,在这里只希望能给很多喜欢Go的同学或朋友们一点自己的看法,毕竟我走过这段路,可能我们本身之间就有差距,但是还是希望我的话能够让你选对自己想要的东西。
1.如果你喜欢Go,那么你最好在学透了一个保底的东西之后再去花时间研究它,你要理解那些正在奋斗的公司,他们不可能让一个摸不清底细的程序员胡乱编写对自己来说非常重要的项目,一个更明智的策略是通过C++或Java积累几年的经验之后再尝试切换语言,目前我了解到几乎是所有的在职Go程序员都是从某个语言切换过去的
2.向我这样的原生Go程序员很难找到一份工作,因为现在用Go的公司都要求有1-3年的工作经验,而我们毕业生没有工作经验,没有工作经验就只能先找实习积累工作经验,但是公司又不招Go实习生,没有Go实习的机会,年轻的孩子们就没法积累Go工作经验,没有工作经验这些孩子们就永远不能去要求1-3年工作经验的公司工作,如此以往,恶性循环。(没有恶意,非常理解创业者们,谁都不会把风险堵在一个没有任何证明的初学者身上)
3.Go语言没有你想象的那么强劲,它几乎只擅长大量并发的网络程序,而且是后端程序。不过它在这个方面真的是非常在行就是了。
4.不要指望安卓能切换成以Go为主要开发语言的梦想成真了,如果苹果至今也没有开发Swift,Google压根就连这种想法都没有
5.如果要学习一门语言,应该先学完它然后再评论它比别的语言好在哪里,能评论两个语言的人必须是对要评论的两个语言都非常在行的人。千万别听百度谷歌上的、知乎上的、社区中的人对你要了解的语言的宣传,我深深的吃过这个亏,你自己用过某个语言之后的感受才是最宝贵的
6.Go语言为了要保持“快的编译速度”、“简单的设计”和“更少的关键字”而错过了太多,甚至已经到了无法再用“仁者见仁智者见智”去评价它错过的一些该有的功能
7.时刻关注语言们的最近进展,C++和Java都在进步,他们具有速度,现在都在向更方便而进步,Go具有方便,而它正在向速度进步
8.我绝对有对Go有过分悲观的评价,其实很多小众语言和Go一样缺乏工作机会,而大部分会比Go更惨(没有工作机会),但是Go是个让人怒骂不争气的2货,它本来可以成为明星,却被各种看似不如它的语言吊打
9.当别人评论你喜欢的东西时,你更应该关注他们批评的部分
10.我和你们一样梦想过自己写一套什么什么程序,然后一举成名,接着就走上人生巅峰。不过,很多东西和技术一样重要,比如吹牛和撒谎。
也许我的评价太悲观了,但是我活的非常乐观,相信很多狂热的粉丝看到了一定不会高兴,但是如果有和我一样经历的朋友一定会感同身受。我觉得作为社区的一份子,应该对自己喜欢的语言做个更加客观的评价。无论如何我也希望那些和我一样一同奋斗在编程路上的朋友们可以有更加出色的职业生涯