最近好多讨论培训的,自己在办前端培训,谈谈我的看法,求轻喷

2017-02-26 22:25:07 +08:00
 xieranmaya

之前在北京工作的时候,因为想赚点外快,就跑到一个培训学校去兼职,自己是做前端的,当然也就是去讲前端的课了,可能由于话题比较合适我,再加之我自己做过老师,那几天的课非常受班上同学喜欢。

于是乎我就萌生了自己开培训班的想法,因为越想越觉得自己适合干这个:又做过老师,又有大厂经验,也喜欢教学,在公司的时候也做过不少次技术分享。期间随便去聊了几家培训机构,基本上都是秒拿 offer 。

想清楚了之后我就跟家里人说了这个想法,一开始家里是不支持的,因为觉得我工作的好好的,工资拿的稳稳的,跳个槽还能再涨点,开培训班要是招的人太少,又承诺了人家一定会开班,怕我亏本。

但是我把我的想法跟家里说清楚后,家里最终还是支持我创业,然后我就开始在网上招生,各种群里回答问题,然后知乎上发贴等等,招人其实很困难,有一段时间在知乎发贴被删还被禁言一周,我差点都想放弃,期间因为一篇质量很高的博客给我引了不少人,总之招生过程不表,最终还是在杭州办起了我的培训班。人数就不透露了,总之只能说不亏本,因为我为了招生,还包了住宿,价格又比较低,而且学费我都是让学生试听三周后才开始收的,所幸没有人退学。

前两天第一期班结课,我才总算有点时间来写下这篇文章。

因为现在只要看到关于培训的,评论里就一堆「别坑人了」之类的回复,为了避免自己也被人说坑人,我说一下自己培训班的情况吧,至少我不以坑钱为目的:

我想看了上面这些,估计没有人会说我坑人了。

但又会有人要说了,不是所有人都适合做程序员,很多人想做程序员就是看中这行工资高,而且 5 个月的时间肯定还是不够的等等。

其实我发这个帖子主要就想讨论这两个问题。

先说是不是所有人都适合做程序员。

很显然,不是,这个应该没有任何异议。

但是,任何行业、任何职位,都不是仅由合适这行的人在干,事实上,一个人想要找到自己所擅长的事情,绝对不是件容易的事,有大批的人干着自己不喜欢不擅长的工作。即使是 BAT 等大厂的员工,也不见得是因为兴趣才做的程序员,很可能也是上大学的时候被调济到计算机专业,或者同样是跟现在想转行做程序的人一样看着这行挣钱多才报的这个专业。事实上,以我从高中开始学编程到现在的所见,这确实就是现状,计算机专业也有不少人并不喜欢计算机,但最终还是做了程序员的工作。

兴趣确实能让人在这行有更多的可能,这毋庸置疑。

但是没有兴趣或者天赋不够的人就不能做这行了吗?

回想一下高中时代,班上学习成绩最好的那几个人也一定不会恰好就是班上最聪明的几个人吧。所以我们总是说,不怕别人比你聪明,而怕比你聪明的人比你更努力

回归现实,不少人因为选了不符合历史进程的专业,毕业后工资少的可怜,在大城市差不多都快没办法生活了。而凭什么学计算机的人刚毕业就能拿以万为单位的调薪,而生物专业(举例而已不要对号入座)的同学大学期间努力程度并不比计算机专业的人低,毕业就只能拿 5k 封顶的工资?

那很简单,我就是想拿高工资,并且愿意为此付出努力,不管我有没有兴趣。就像再笨的人,只要高中三年足够努力,考上一个一本再不济二本也是没有问题的。

本来把人才引向收入更高的行业也是市场自动调用的作用之一。

而自学太慢,于是就选择培训(总不能选择把大学重新读一遍吧),没什么毛病啊。

有毛病的是那些智商捉急去给坑人的培训机构交智商税,会相信他们「速成」,「包就业」这些鬼话,甚至完全不考虑自身情况(比如学历,数学基础等)的人,然后那些机构的教学质量又差,完了还教学员用假简历去找工作。

所以归根结底,还是因为那些坑人培训机构把行业给搅乱了,让大家都不敢招培训出来的人:一方面,时间短,教学质量差,导致能力不合格;另一方面,简历还造假,这水不浑才出了鬼了。

再说另外一个问题,五个月能学到什么程度。

这是另一个比较大的喷点,很多人说几个月能学个啥,我们来粗略的计算一下一个计算机专业的学生大学四年能学到多少东西:

计算机专业专业课大概是下面这么些:

做为一个计算机专业毕业的人,硬件方面的东西现在几乎忘光了,也从来没在工作中用到过,我现在唯一能记得的底层硬件知识可能就是数字电路中的卡诺图跟 PN 结了吧。

具体到软件开发抑或是前端开发,能够对前面的三项有比较深入理解解,对计算机网络一些必要的知识有了解(在我看来,了解到 TCP/UDP/IP 层,知道它们的基本原理,能够用现成的 socket 库写一个聊天室就绰绰有余了),对数据库、操作系统有一些基础知识就足够了,至于编译原理,对于任何软件开发来说当然是加分项,但这门课即使对于计算机专业的人来说也算比较难的了,就像数论之于数学专业的学生差不多。

而上面说的这些必要的课程,在大学里面总共的学时肯定是不到五个月。把课程精简一下,重点挑出来,并且随学随练,从我第一期的教学情况来看,把必要的东西讲完时间是完全够用的,至于编译原理,我自己也不敢讲,但是带着写了一个迷你项目,算了让学生了解到了代码的解析、语法树的构建这些要点。

算下来,五个月的时间,能有 1000 个小时以上的学习时间,达到了一万小时理论的十分之一,平心而论,我自己大学期间真正花在学习专业知识上的时间也就在 2000 个小时的样子。

所以只要在这五个月内足够努力,培训完达到一个普通计算机本科毕业生的水平是没啥大问题的,即使达不到,工作之后把我补充的书目再啃啃也肯定有了。

又有人要说了,想学计算机先自学,这点我不否认,但这话多多少少也是站着说话不腰疼,说这话的人往往是已经入门很久的人,或者是在大学时花了很大精力找到了自学的门道,觉得自学重要,才说出这样的话,你觉得自学容易,但是对于新手来说其实困难重重,有个人带肯定会好很多很多,想想为啥大学总是会组织一些高低年级的交流会。

最后还有一点,就是人有人说不是所有人都适合学编程,这个问题确实存在,但是我觉得问题并没有想象中那么大:

如果一个人能理解函数、极限、概率统计、数学归纳法、解析 /立体几何、圆锥曲线、微积分这些概念(高考数学能及格的人理解这些概念应该没有任何问题),我不相信他理解不了二进制、网络、多线程、异步,理解不了能够活生生的在他眼前运行,并且能够单步跟踪调试的编程语言。最多也就是多花点时间。况且 5 年前高中数学就已经开始学编程了,全民学编程的时代也正在到来(浙江省高考以后可能要考二叉树,知乎上有讨论)。

既然再笨的人只要努力,数学就能考到 100 分以上,那么如果一个人愿意仅为了高薪而学编程也并不为过,只要他有相应的数学基础并愿意为此付出努力。退一万步讲,就算他学了之后真的觉得自己不合适,觉得这些东西很难理解,我的班也可以随时退学。

所以我最终的结论就是:如果有较好的数学基础,又想进入 IT 行业拿高薪,并且愿意为此付出努力,而且还能持续学习(这条没有在本文讨论),参加培训并没有什么不对的。不对的是那些坑人的机构和学习者求速成的心态。

这篇不敢先发到知乎去,原因你懂的,想来 V 站都是比较成熟的程序员,理性派占多数,我也想听听大家的看法,欢迎留言指正或讨论。

31074 次点击
所在节点    程序员
160 条回复
FrankHB
2017-02-27 12:27:47 +08:00
@xieranmaya C 语言也就是个错误满载的例子。而因为教师眼界导致的“不全面”的原罪,我直接把地图炮放到基础课上了,你觉得(不足)本科程度的 js 能逃得掉么……况且就算是 ES 也是塞满糟糕设计和补丁的辣鸡桶,绕过坑以及速成的难度不比 C 容易。
关于判断“重灾区”(如果有必要的话)——说难不难,一个方法是考察你当作入门的参考资料是什么。因为 C 这类基础课在各种目的上毕竟都是不怎么适合入门的东西,而坑还是有些深度的,所以如果能养成自觉回避烂材料的习惯,就可以说明一些程度上(是否足以当教师)的问题。如果你只是拿考二级这个目的来说明职业基础培训能力,我觉得不太乐观。
另外对这类课程,我觉得了解或者想象学生会有一些什么问题,相比教师自身对领域的理解程度来讲,从难度和可行性来讲都是更次要的问题;所以这里不需要纠结这点。
FrankHB
2017-02-27 12:32:17 +08:00
@robsong 不坑人是基本不可能的;没有特别的姿势,越速成基础课越坑人。
坑是谁都没法回避的,所以不需要太在意有或者没有的问题;但是不在意风险或者拿不出应对方法,明知山有虎偏向虎山行,就不地道了。
FrankHB
2017-02-27 12:39:18 +08:00
还是引用一下原文吧。我评论针对的是这里的认识:“我不相信他理解不了二进制、网络、多线程、异步,理解不了能够活生生的在他眼前运行,并且能够单步跟踪调试的编程语言。最多也就是多花点时间。”
实际上我还真不信这里能有几个人把这几个论题的*外延*都搞清了——且不论接受过教育的背景和花时间的多少。(至少对照 SO 上到处都分不清 concurrency 和 parrallel 区别的回复来看真不能奢望。)“最多也就是多花点时间”是不是乐观过头了?
Geeker
2017-02-27 12:41:41 +08:00
我觉得楼主很中肯,自身也想的很清楚,我本身也支持有人做培训,所以支持楼主一个。
圈钱很正常,但好的圈钱方式是能给予别人价值;而好的消费方式是,消费完感受到了价值。双赢当然最好。

不过我看楼主的教学内容和强度,这生源恐怕也是要审核的吧?
chnhyg
2017-02-27 12:52:26 +08:00
创业不易,加油
crossoverJie
2017-02-27 13:09:00 +08:00
要是我毕业的时候能碰到这样的培训老师说不定我现在也做前端了。
楼主不妨说下你第一期学生现在就业情况呢 这样应该更有说服力。
rocksolid
2017-02-27 13:25:11 +08:00
培训班这个情况其实是双向的,我觉得每个培训班都愿意能让自己的就业率好看一点,但是本身参加培训的人就是各方面(从学习意愿到自学能力)都一般,当你发现你花了 120%的心血,结果就业率就比其他培训机构高一点点,然后注注水结果都差不了太多。像楼主这种比方平时考试都是 100 的,很难理解别人为什么只能考 3 , 40
ALazyPig
2017-02-27 13:29:33 +08:00
然而 我不能理解 数学那些知识 。
aoaione
2017-02-27 14:05:07 +08:00
我认为培训就一个好处,有一个良好的学习环境(造假除外),就和李阳的疯狂英语一样。自学对于有自律性的人来说没问题,但是大部分人是偏惰性的,没有学习计划,三天打鱼两天晒网,得过且过,我自己最近就有这种感觉,如想短期内有较大提升,能快速找到不错工作,必须使劲儿拼命学,有得必有失,每天又想过的舒服,又想快点学东西,痴人说梦,自勉,楼主也加油。
bmy
2017-02-27 14:26:00 +08:00
一直觉得周末搞个前端工作坊什么的挺有搞头 一群大妈边聊天边写 css
MRJ
2017-02-27 14:31:40 +08:00
我在这里见过你,需要合伙人嘛
irgil
2017-02-27 14:48:59 +08:00
为啥不在北京做,北京生源多哇
andyL
2017-02-27 15:39:27 +08:00
文章很有诚意,赞一个 : )

其中一段反驳那些回帖(以往也有很多类似的问题)的时候粗暴建议提问者自学、鼓吹自学显示智商高、片面贬低培训班的程序员的态度的观点,我表示很赞同 : )

我也表达一下关于这一点的观点。

能通过自学掌握一门技能并且达到工程应用水准的人我觉得是很了不起的

这种人无论在哪个行业和处境下都是非常优秀的,但是这种人肯定是少之又少。

我以前表达过:很多困难的事情,人们经历过并克服之后,往往忽视当初自己为止付出的精力和努力,对自己碰到这些难题的时候产生的精神困扰选择性忽视。同时对外讲述的时候,喜欢用小学老师交给他们的套路:过高地表示自己的高智商,过高地显示自己是真的非常感兴趣、是个天才,然而又过少地提及自己花费的努力和经受的精神折磨,从而显得自己与众不同,轻而易举,高人一等,另一方面也用于给那些碰到这些问题的人再施加一层精神压力。这种策略在以往的竞争环境中形成的思维模式中得以成型。对菜鸟简直一击必杀。

实际上呢,这些问题可能并不简单。

我觉得程序员入门之后做应用完全是高级一点的流水线,并不需要很高的技术含量。

更多的需要注意的是风格、规范、流程,和一些其他相关的工具的使用,这些需要在实际工作的环境、具体项目中和同事达成一致的,这些努力并不属于入门自学阶段的努力。

对代码的性能要求高一点的话就是另一回事了,入门的新手,暂时还碰不到这种需求,一般的东西注意一下不会有太大的问题

但是,入门的过程 hin 痛苦的!(非计算机专业从小就没折腾过电脑的我大一学计算机基础和 C 语言的时候简直想原地爆炸赶紧逃离)

程序员这个职业的入门是存在一个较高的门槛的,入门的过程中需要付出巨大的努力,而并不是人人都能自觉地发挥全力,同时能做出有效的努力

至于入门之后保证自己的实力进一步提升,这一点难度就更大了,需要付出的时间和精力更多,才能不至于让自己的实力配不上自己的职位和资历。

总的来说,稳稳的做一名上升的程序员,很难。

另外说一下,楼主反应的是自己办的培训班培训效果很好,这是很令人欣慰的,但是也不应该过于乐观,毕竟这么些人。
xieranmaya
2017-02-27 15:40:38 +08:00
@FrankHB 关于 js 以及编程入门,你说的非常对, js 也不是一门特别好的语言,但是培训前端,时间受限的情况下,当然没得选了,只能学 js 。

另外我选的教材:《 Eloquent Javascript 》,是一本以 JS 为背景的编程入门书,本书在业界的评价也特别好,个人认为这也是我目前看到的最合适入门的书本之一; js 语言中的一些坑点(任何语言都有),不管是书本还是我讲课,都会避开或者强行黑一把。比如书上对 undefined 跟 null 就只用了半段话说, with 语句则只在习题里用半句话说了一下, eval 好像都没提过。

「实际上我还真不信这里能有几个人把这几个论题的*外延*都搞清了——且不论接受过教育的背景和花时间的多少。(至少对照 SO 上到处都分不清 concurrency 和 parrallel 区别的回复来看真不能奢望。)“最多也就是多花点时间”是不是乐观过头了?」

你也说了,没有几个人能把这几个问题的**外延**搞清,我想你说的应该也包含计算机专业的吧,这是事实,毕竟那几个问题深入下去都是单独的领域了,但是常规软件开发,对该了解的问题了解到足够的程度就可以了,再深入下去别说是培训班和大学,就算是有导师指导,自己啃论文肯定是少不了的。但是对这些问题,了解到基础的层次,我想信数学基础不差的人绝对不会有问题。至于你提到的 concurrency 跟 parallel 这么细节的问题,如果不去专门区分,我猜大部分人都分不清,但是在宏观上,分不清这两个概念并不影响开发。事实上你永远都可以抛出一个偏门的概念来说很多人都不懂。

「最多也就是多花点时间」,我不认为是乐观过头,毕竟这几个概念每个都能在宏观角度观察到它们的行为,比如网络,你可以写一个 C/S 小程序;多线程,你可以跑上多个线程然后对它们进行观察(比较幸运的是 js 里没有真正的多线程,不会产生死锁的问题),就像我前面说的,它们一样可以「活生生的在你面前运行,而且还可以单步跟踪调试」
forestyuan
2017-02-27 16:08:27 +08:00
其实大家对培训机构印象不太好,是因为好多机构太水了,要么老师水平不行,要么老师水平还行但是讲课不好,还有的机构虚假承诺(包工作之类),更有甚者教学生简历做假。

如果一个培训机构对学生负责,招生的时候有所筛选,老师有水平又认真负责,那肯定是初学者的福音啊。支持楼主,祝早日做大做强!
xieranmaya
2017-02-27 17:09:13 +08:00
@Geeker 多谢支持,有些东西也是我在这期间想到的。
另外生源有审核的,至少要求是专科,然后有数学基础、热爱前端。当然了,他要是骗我也是没办法的

@chnhyg @forestyuan 多谢支持

@crossoverJie 就业情况楼上有说,目前刚结课,都还正在找工作

@rocksolid

@aoaione 确实很多人没有那个自制力而培训给了他们这样一种学习氛围。我找的地方也很合适,楼上楼下就是教室跟寝室,更让没有自制力的人没借口了
@MRJ 暂时不需要哈,招不到那么多学生
xieranmaya
2017-02-27 17:13:21 +08:00
@rocksolid 不好意思 at 了你两次。我觉得单看就业率的话,别人弄假简历而我不弄,差距看起来是缩小了,但是长远来看,认真培养的学生以后发展肯定会更好,我在其它地方的招生广告上说,「我不培养野生程序员」,我相信我的学生工作一年左右后是非常容易跳槽的,而靠简历造假找到工作的人,他觉得这一切得来的太简单,估计也不一定会好好工作吧,或者工作会把他压的喘不过气来,以及基础不够扎实,反而技术提升会很有限
xieranmaya
2017-02-27 17:19:50 +08:00
@irgil 想过在北京的,但是各方面成本都比较高,而连续培训五个月,其实在哪都一样,反正是要住的离学校很近,况且我还包住宿。如果有人仅因为地理位置而到北京培训的话,应该是很不明智的选择吧
aoaione
2017-02-27 17:20:38 +08:00
@xieranmaya 以前公司没项目忙有时间的时候耍去了,现在忙项目,前后一条龙,搞 java 为主,写来写去就那几句话,只有下班才有时间学 js ,主要是在前后端之间选择犹豫的太久了,没得强烈的目标性
JayFang1993
2017-02-27 17:27:21 +08:00
培训无所谓 不要教造假简历就行了!

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/343347

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX