23 岁三无的打工仔,感觉在工厂没出路,特别喜欢电脑方面的知识,想当程序员,该怎么做?
如题所说、我现在毫无头绪,不知道如何开始,在工厂待久了我深知拥有一门技术活的重要性。我不想每年过完年都是一次新的开始,人生还有几次重新再来。每进一个工厂就是新的菜鸟,庸庸碌碌的拿着固定工资。一点未来都看不到,说不定哪天就被炒鱿鱼了。
从小就喜欢电脑,现在的工作,几乎也都离不开电脑。对网络的知识有一股莫名的热爱,看网络教程能看几个小时非要弄明白才甘心。作为一个零基础,我想进军IT行业还有可能性嘛? 求大神指点迷津、忠言也不怕逆耳,尽管说吧。万分感谢。-----------超----------级--------无----------敌----------分----------割----------线----------
在此谢谢各位大神的回答,不能一一回复,敬请见谅。以前也在百度提过问。都是几个答案草草了事。看到知乎里的280多个回答,我是彻底蒙圈了。只能说知乎好强大。
回答里有支持我的,我由衷的感谢。有给我学习方法的,都是我的贵人。也有泼我冷水的,谢谢你的提醒。更有甚者上来就喷我打工仔做工地的,你是我的老板你骂得对。
还是从中找到了想要的答案,我觉得这一辈子很短,只是想用一辈子时间去做好一件事,就够了。 勿忘初心.方能始终。-----------超----------级--------无----------敌----------分----------割----------线----------
一个小问题没想到那么多答主回答我,谢谢大家,没有挨个回复敬请谅解。通过这几天找公司,已经找好工作了。PHP学徒。不管怎样,已经上路了,走下去 不管结果如何?? 若是有好心人愿意当我师傅可以私信我联系方式。感激不尽。
-----------超----------级--------无----------敌----------分----------割----------线----------已经好久没来知乎了,好多好心人都提醒我别让那些坑爹机构骗了, 不过说真的,还好我把合同看了三遍,说公司负责培训、要么留在公司两年,要么出去自己上班公司负责找工作,每个月给公司交两千三、好像就是这么多。要交一年半才解除合约。这特么明显的变向培训机构啊! 新人要小心了,那些人除了会跟你洗脑.没什么鬼技术的。 趁着上厕所的时间直接下楼走了。什么破机构??
哈哈删了删了,通篇讲了那么多废话也不敢直接讲到点子上,还骗了这么多的赞,真是有些羞耻,没办法,一开始忘匿名了嘛。屁股坐哪讲什么话,世界上又哪来那么多真理,祝各位宏图大展~
按照统计学结果来讲是不建议的,但是小马过河嘛,万一你就是那个天才呢
作为一个所谓的“科班”程序员,看到这个问题下的某些答案,实在是看不下去了,某些答主上来就让人家学离散数学和汇编语言,你咋不让人家先学矩阵分析和编译原理呢,你咋不上天呢?
题主请看这里,你自述是23岁三无的打工仔,我默认你的数学英语水平是高中毕业、中等偏下水平。
程序员行业**入门**并不难,不要高深的数学知识,会最基础的英语就够了,最基础的英语,就是hello for to while world级别的英语,我觉得你高中毕业,这些应该是会的,如果不会,自己背一个月单词就足够了。
过了最基础的英语关之后,你要学一门语言,语言学习的入门非常简单,入门建议用C语言或python语言,网上有很多教程,学习过程中有什么不会的可以去网上搜,绝大多数问题都能找到答案。
学完C语言或python语言后,可以再学一门语言,推荐C++或Java,这些语言也都不难学,不需要学很难的数学知识,这些语言“入门”程度的话,数月就够了,当然你要是想达到知乎上 轮子哥 的水平,就不是一朝一夕的事了。语言是你吃饭的基础技能,需要好好学一下。
学完语言后,要学数据结构和算法,这个会比语言稍微难一点点,但也就是难一点点而已,如果不要求学的很深的话,不需要高等的数学、英语知识。
此时还要再学习一些计算机的基础知识,包括基础的计算机组成、微机原理等,这些也都不难,也不需要什么高级的数学知识。
学完了这个,程序员行业你就算“入门”了,基础的技能你就有了,这时,再稍微搭配一点其他的技能(如网页前端、安卓开发),就能找到一份工作了。
残酷的是,学到这里,你找到的工作是比较“低端”的工作,工资大概3k-8k(估计值),这份工作就是所谓的“码农”,缺乏技术含量,相对也会比较累,但是有上升空间。
上升空间请看这里:想要拿更高的工资,找到更高级的工作的话,你就需要再学习:英语(高中的那点英语很可能不够用了),(更高级的)数据结构和算法,(详细点的)操作系统、计算机组成原理、计算机体系结构、编译原理(对数学要求很高)、线性代数(数学,较难,程序员进阶必备),概率统计(数学、较难、程序员进阶必备)、离散数学(较难)等其他的数学知识,这些都是比较难的,需要学习很久,而且未必能学好。无意冒犯,如果你的水平是高中毕业(由于题述你好像没上过大学,因此推测为中等偏下)的话,学习这些将会非常吃力。有没有学习这些高阶内容,就是培训班出身程序员和“科班程序员”的区别。学好了这些,就极有可能把自己的工资提高一个量级,向10k及其以上迈进。事实上,这些学的非常好的话,工资几乎是上不封顶的。
当然,上述不是唯一的上升空间,你也可以专一搞网页前端或安卓开发,这个对数学的要求相对较小,时间长了,经验多了,工资也能提高上去。
我想告诉你的是,计算机行业 入门 并不难,对数学的要求并不多,不要被一些答主的答案吓住而止步不前,但是,计算机行业入门级别的工资也就是比血汗工厂略高而已,想要拿更高工资的话,需要进阶,这一步是相当困难的,你要花费很大努力才 有可能 成功进阶,关于这个,也要有思想准备。
有什么我说的不清楚的,可以再问我,我知道的不多,但是会尽量帮助你,评论区瞎扯犊子的,滚,滚!
如果仅仅是想获得高工资,不建议尝试!世界上赚钱的机会多的是,没有必要走一条前途未卜的、充满变数的艰辛的道路。前途未卜、充满变数是指题主可能在IT道路上,遭遇很多磨难而最后放弃!
有一位同学问我这个世界有没有前途明朗、不充满变数、不艰辛的道路?
我的答案是:在梦里!
无论做程序员、还是网络工程师,都非常辛苦!而且如果和职位的需求有明显差距,会做的更辛苦!所以本着谨慎的、理性的精神,做IT也许不是一条最好的路。
我高中有两位同学,成绩不好,最后都没有考取大学,但是却恰恰激发他们奋斗的精神。一个做建筑包工头,后来越做越大,现在是承建商,每年纯利几千万。同学聚会单独聊天,我问他第一桶金来自哪里?他说:打架打出来的,把对手全部打跑,挣了第一桶金。其中的坎坷、凶险,只有自己知道。
另外一位做煤矿设备的安装工程师,后来自己有想法了,自己研发了无损探伤的设备,卖的很好,每年的纯利也有几千万,他以前做安装工程师一年出差有328天,个中辛苦冷暖自知。
热爱计算机固然是一个不错的内驱动力,但如果仅仅停留在思想上的热爱,而没有付诸行动,那就不是真正的热爱。举个例子:一个男生暗恋一个女生,这也是一种热爱,但如果只是仅仅暗恋却没有勇敢地去表达,这其实只是内心的一个小情愫,谈不上真正的热爱。
讲一个故事:多年前在交大昂立书店看书,无意中看到一本Cisco网络初级者入门教材,翻着翻着发现没有任何基础也能看得懂,于是就买了回去,每天爱不释手地看,3个月之后拿到了Cisco CCNA初级认证。没有看任何题库(根本不知道有题库这件事),也没有请教任何人(身边没有懂网络的),在学之前也没有问别人可不可以学,有没有前途之类的问题。
后来就一发而不可收,有一天在网上看到一本路由技术的神书:《TCP/IP Routing》Volume 1 ,作者Jeff Doyle # CCIE 1919,跑去上海几大书店都无功而返,后来汇钱给人民邮电出版社买了一本英文影印版的,拿到书之后,每天就像看金庸小说《天龙八部》一样痴迷,到了忘我的境地,内心非常崇拜作者,当时就有一个目标,有一天成为像作者一样的牛++ 的人物,看书的心态非常宁静,没有什么功利,就这样不知道看了多少遍,书的封面都被翻掉了,后来陆陆续续买了很多书,最后几乎都送人了,但唯独这一本一直伴随至今,这本书多年不看了,只是做为网络学习之旅的永恒纪念。
后来书桌上、床头边堆满了各种网络技术书籍,但光看书也不行,需要做实验,那时已经有网络实验室了,可以花钱租,于是我花了8000元租了300 小时,03年的8000元可比现在8000元值钱多了(可买2平米中环内的房子),于是每天下班之后,电话线拨号上网,登陆远程实验室做实验,中间遇到很多难题,无法将网络调通,于是再看书,再调试。就这样跌跌撞撞做了1000多个小时的实验,终于在06年拿到了自己的CCIE认证,等到别人知道我在学网络,IE证已经在手了。
之所以分享这段故事的想法是:在通往成功的道路上,充满着艰辛与坎坷,不光要有热情,还需要付出艰辛的努力。
如果题主发自内心地想去改变现状,行动起来,选准自己的方向,不要听别人怎么说,不忘初心,朝着自己的目标迈进,即使最终没有达到自己的预定目标,但尝试过、努力过,此生无怨无悔!不要等到头发花白时再自言自语:23岁那年如果尝试一下自己的梦想,也许是另外一个结局…
路在脚下,梦在远方!
我出身IT、现在的工作也是IT。
有不止一个人问过我同样的问题:我二十几岁了,改行做IT可以吗?
我给他们的答案都是:可以啊。我在说这三个字的时候,我脑子里想的是:无非就是辛苦两三年、好好读上几本书,就可以做IT了啊,很简单的。然后我就会告诉他们:你只要像上学那样,每天把时间都放在读书学习上,用不了三年你就可以做IT开发了。然而,至今为止,问过我这个问题的人不少,但是没有一个人成功转行做IT的......
后来我仔细想一想,其实我从学IT到可以工作,也是花了大学四年研究生两年一共六年的时间而且是精力最旺盛大脑最灵活的六年。我之所以觉得两三年就能学出来,是因为我这六年时间里几乎每天都会玩游戏......所以我觉得,只要你别玩游戏别看电视、好好学习看书,三年内肯定能成功转行IT。
后来我再仔细一想,如果一个人真的可以做到把每天的时间几乎都用来学习和工作上,我觉得他转行做什么都会成功......
你看,你是打工仔,你觉得在工厂没出路?可以啊,你辞职,然后每天用10个小时去学一个东西,或许是IT或许不是。每天如此,三年后,我保证你学有所成。
看上面的这句话:
你只要像上学那样,每天把时间都放在读书学习上,用不了三年你就可以做IT开发了。
所以麻烦你先问问你自己:你上学的时候可以做到把每天的时间都用来学习吗?如果你上学的时候都做不到这一点(我想如果你能做到的话也不会在工厂做打工仔吧),请问你真的觉得从现在开始你就可以做到了吗?----- 这段话是不好听,不过我觉得是事实,希望你好好想想。
所以我觉得,如果你对眼下你的人生状态不满意,重要的不在于你是不是想做IT是不是能转行做IT,而在于你要问问自己:你能不能放下一些东西、做到一些东西。你能不能不要打电脑看电视?周六日能不能去图书馆学习?你现在需要搞清楚的是这个问题。
本质上,这就是个态度问题。
如果我上面说的你都理解了想通了然后还要转行做IT,那么我下面说几点:
1)没有捷径可走。我在这里就不推荐具体的书籍了,这一点你完全可以自己从网上找。我在这里要说的是,学习IT特别是入门IT,是非常枯燥的。如果你想通过别人的帮助或者什么培训班之类的东西让自己摆脱这种枯燥,我必须告诉你:这是不可能的。
2)英语。做码农不难,难的是提升。IT开发就像盖楼房,写代码的码农只是工地上的板砖民工,而民工的上面是设计楼房的工程师。从码农提升成工程师是一个很艰辛的过程。这个过程中不可或缺的一个能力是英语。
“不是有翻译吗?为什么还要学英语?” ----- 这个问题我在这里就不解释了,只要上过理工科研究生的人应该都知道为什么。C++11出来好几年了,想找本《Effective Modern C++》看然而并没有汉语版的。哪位有的话麻烦留言告知下,谢谢。
3)抽象思维。写代码需要抽象思维,而抽象思维的训练是通过从小学到大学的数学来完成的。没有抽象思维,写出来的代码即使可以运行也是垃圾。抽象思维在IT开发领域的体现是一种“工程师思维”、“模块化思维”,这种思维是非常重要的。掌握这种思维最快捷的方式是做数学题而不是编程。
如何证明自己有编程所需的抽象思维?
有抽象思维最直接的表现是:当你看过有关“设计模式”的资料和书籍后会禁不住大呼过瘾而不会问:明明可以这样,“设计模式”为什么要那样?
对“设计模式”有起码的认识、写代码的时候会自觉使用,是从码农成为工程师的第一步也是最关键的一步。
如果你看过“设计模式”后会有“明明可以这样为什么要那样”的疑问,那就说明你还不具备编程所需要的抽象思维。那么你要做的就是:多写代码多写代码多写代码。
最后给你一个事例:
我有个朋友,问我同样的问题,我告诉他可以,并且给他详细列了书单而且告诉了他看书的顺序。我和我的朋友是微信好友,我隔三差五看他的微信朋友圈:
今天晚上和朋友去KTV,好high!
今天晚上路边撸串,好惬意!
下个月要去旅游啦......
说实话,我觉得我这位朋友侮辱了我也侮辱了IT。之所以说他侮辱了我,是因为我辛辛苦苦用几个小时给他讲什么是IT、怎么入门、给他开书单、告诉他遇到问题了怎么办、哪些IT论坛好等等一系列我作为一个过来人的经验而他每天看起来都玩得挺high;之所以说他侮辱了IT,是因为他以为一边玩一边学IT就能学好IT。我连续看了他三个朋友圈状态后我就知道他肯定会放弃。
第一个月后,我问他:第一本书看哪儿了?他回复:看完第三章了。从那以后我就再也没问过他因为我确定:他已经放弃了。更准确地说,他从说他要转行做IT的那一刻起,他其实就已经放弃了。因为他根本没有学习IT的态度。更准确地说,他没有学习的态度。
一个月30天,30天看70页书,平均一天看不到3页。这种学习态度如果都能成功,那就算是老天瞎了狗眼!否则的话,你一天看3页书都能成功,那我一天看30页书的是不是应该月薪几百万?
所以啊,这根本不是一个适合不适合转行IT、如何转行IT的问题,而是一个态度问题。
你的问题本身是很好回答的:想当程序员,应该怎么做?
要直接回答这个问题真的太简单了、这个答案你应该是从小听到大耳朵都起茧了:好好学习天天向上。
总之,好好想想我一开始说的“态度问题”,把这个问题想清楚了想明白了,你再说要不要转行做IT的事情。
========================= 针对评论区的更新 ========================
关于书单:
自己去找,不要问我。
如果你真的很想学IT,这种问题是可以自己搞定的。
更何况,每个人的情况不一样、每个人想走的方向也不一样,我推荐书单前一般得先搞清楚你想走哪个方向,否则很难有针对性地推荐书单。
关于培训班:
我不主张靠培训班来学习IT。学习IT的方法,永远是靠自己;更本质的,学习永远要靠自己。我大学和研究生都是IT,但是一路走来,我只记得我自己在不断地看书不断地自学。大学的老师只是个引路人而已,具体怎么走全靠自己。至于社会上的那些培训班,你可以上,但是你在上之前,一定要有一定的基础。培训班的定位,应该是一种辅助学习的手段之一,而绝对不是代替你学习的手段。
很多培训班喜欢把自己打造成一种“学习捷径”而我上面说了,学习没有捷径。
一些培训班的授课围绕的是这两个字 --- “速成”:你自己学得很辛苦吧?来我们培训班吧,三个月出师!
本质上,这和那本“著名”的《21天学会c++》一样,都是在误人子弟。
如果你在一个培训班学几个月,或许真的可以学会用java ee部署一个网站。但是这种“学会”是非常狭隘的。说白了,你就只会它教给你的东西,而不会它没有教给你的东西。
这也就是为什么评论区有朋友提出了“培训过的人但是连***都不知道”现象的根源。一个没有任何基础的人去培训,或许他很努力,但依旧是学不到真正的东西。
一个没有基础的人,如果他从基础学起,那么这个过程大概是这样的:
一开始很难很难,每走一步都很艰辛但是每一步都很扎实,但是随着时间的推移,越来越容易。
举个例子:答主在校园阶段只学过c++和java,而答主的实习是c# ---- 看起来是全新的语言、从没学过。然而对答主来说这根本不需要学,大概花一两个小时看一下c#的一些特有的技术的相关文档就可以开始工作了。
而一个没有基础的人,如果他上来就去培训班学习如何搭建网站如何针对某个系统开发软件,那么这个过程大概是这样的:
学了三个月,学会了 ---- 哇,好简单!
工作半年后:诶?这个没学过啊,要去学一下;
工作一年后:诶?这个没学过啊,要去学一下;
......
为什么会这样呢?因为基础不扎实 ---- 应该说,根本就没有基础。
这样“遇到问题再学”的学习方式,如果时间和精力足够,我不否认也可以学到和第一种学习方式一样的程度但是所需要的时间和精力是几倍于第一种学习方式的。
理工科本身就是枯燥的东西,IT的基础更是枯燥中的枯燥;这种枯燥是你必须承受的。
上来就说:我要学构建网站、我要学搭建服务器、我要开发游戏、我要做黑客.....对于这样的人,我真诚地劝你们一句:别学IT了,不要浪费自己的生命。
关于抽象思维:
编程的本质就是抽象,抽象的本质就是数学。这就是为什么我说IT领域的抽象思维非常重要而培养抽象思维的方式是做数学题。
具体到编程中,如果你看“设计模式”看得云山雾绕不知所云不知道为什么明明可以这样设计却非要那样设计、如果你学c或者c++却不知道为什么有函数指针或者你觉得不需要函数指针就可以搞定一切,那么我必须说,你,没有抽象思维的能力。
如果你年纪大了感觉自己没心思没精力去做数学题的话,那你就编程吧。大量编程也可以培养出抽象思维的能力。另外,在大量编程的同时,看看前辈们的代码也是培养抽象思维的重要途径。
======================= 关于培训班 =======================
@ihtyrrrr
如果上面所言,培训班是辅助学习的手段之一。我在上面主要是强调了“没有任何基础的人不要想通过几个月的培训班就变成程序员”。
我见过不少这样的人:培训班学java ssh,却回答错下面的问题:
String str1 = new String("abc");
String str2 = new String("abc");
str1 == str2; // true or false
所以要极力避免没基础的人被这类培训班忽悠。
如果的确有讲基础的培训班,那么去学一下是没问题的 ----- 但依旧要强调,培训班依然是个辅助学习手段。
你想靠培训班替你把基础打扎实,这是绝对不可能的;能让你打扎实基础的只有你自己。
我为什么这样说:
我在学校学习IT专业,C、C++和Java都是48学时也就是48节课。所以老师讲的只是个方向和大概,具体怎么学还是要靠自学。
看不下去了,知乎的部分程序员对试图进入程序员行业的低学历新人总是不太友好。
我看了题主的描述,题主也没有说问“如何培训或自学几个月才能月入10K”啊!但是下面回复的忙着讽刺打击了。
题主的困惑是:目前是在工厂打工,干的事没有什么技术含量,没有成长空间,问有没有可能走程序员这条路子?
题主甚至没有提到培训班,但是回答的就高潮了说什么伪造项目经历职场毒瘤之类的,然后跟帖里就充满了快活的空气。
说白了就跟挤公交车一个样:没挤上去的时候说“里面还有空,大家挤一挤让我上一下”,自己挤上去之后马上翻脸对后面的人说“不要挤了,装不下了,下一趟吧”。
有人吓题主,说成为程序员要看很多书:
1,线性代数
2,离散数学
3,计算机组成原理
4,计算机体系结构
5,C语言
6,汇编语言
7,算法与数据结构
8,计算机网络
9,从业语言,例如Java,C++,C#
10,数据库原理
11,软件工程概论(选修)
12,HTML,CSS,javascript
13,SSH框架,Servlet
这种书单完全是恐吓初学者。不信的话,找一些年薪十几万的程序员问问,看他们对线性代数、离散数学、汇编原理的造诣怎么样。
要我说,有高中文凭的话,只要继续修《计算机组成原理》、《计算机网络》、《数据库原理》、一点点《概率论与数理统计》知识,然后苦学从业语言就可以考虑涉足程序员行业了,其他知识可以上道了再慢慢补。(当然英语不能太差,词汇量3000总是要有的)
工厂流水线操作工需要的技能可能个把月就学会了,替代性极强,所以成长性也几乎没有。题主也认识到了这一点。程序员这个工种需要不断学习,难度就高了很多,成长空间不可同日而语。
我亲戚也有一些在外面打工的,跟题主情形类似。我给他们的建议也是:尽早学会一门有成长性的技术。
技术有成长性,技术水平才会越来越高,越来越难以替代,而不是今年搬木材,明年拧螺丝,后年当保安。年轻人应该选择有成长性的工作,这样才能不断提高自我价值。
流水线的操作工,干十年还是一个样(当然你混上了管理岗,当上了包工头那另说)。
作为在外面工厂打工的低学历者,我觉得题主有这样的觉悟值得鼓励。
很多人紧紧盯着年薪30万以上的活,但我觉得题主只是想从事一个有盼头的工作。对很多人来说,工作五年以后月薪能稳定在8000以上已经算可以了,起码比在流水线打工要强吧。
我想如果把题目改成:高中学历,对计算机感兴趣,如何通过5年努力干程序员月入8K以上?这样估计下面的回答会画风大变。
我从题主的描述中没有看到好高骛远,妄图一步登天。所以我觉得也没有必要挖苦打击。
事实是,程序员这一行确实需要毅力,并且需要不断学习。而且传统行业的硕士编程人员很多第一年起薪也确实没有过万。
要说建议我说三点:
1、趁年轻要尽快选择有“技术”含量的工种,不一定非得是做程序员。
2、如果决定选择程序员这一行,要先补充一点必要知识并且做好吃苦和终生学习的打算。
3、如果要验证你对编程的爱有几分,可以在网上下载JAVA、JavaScript、PHP或者C#的入门视频中的任一套(这些视频网上一搜一大堆,实在搜不到去淘宝花一两块钱买一套)看一遍,周末不上班的话,看你一天能不能老老实实看5-8小时,并且能不能以这样的强度看完这一整套视频(不习惯看视频那看书也行,可以一天看30-50页,边看边敲代码,坚持10天试试)。如果没有这个毅力,那你是不适合干这个的。搬运工,已经看过的同学略过。O(∩_∩)O~
++++++++++++++++++++++++++++++
以下:成稿于2015年9月13日。
背景:创业失败,准备做一个装饰行业网站。不准备招人,捋袖子自己上了!
看到知乎上有人问,“我有一个很好的idea,但找不到技术人员,怎么办”?我有点想去回答,但怕被打。因为我的答案就是:自己去学,把自己变成一个技术人员!——虽然很讨打,但我就是这么干的。
之前经历:你是如何转行的?转行容易吗? - 自由飞的回答
++++++++++++++++++++++++++++++培训
想到就要去做,我们楼下就有一个电脑培训中心。我告诉他们,我要学C#,问要多少钱?答案让我吃了一惊,“我们教不了”。
“你们不是电脑培训吗?”我有点迷茫。
“你这是程序,我们是教打字上网办公软件的”,小姑娘挺无辜。
“那,那,那我到哪里可以学?”
“吧啦吧啦……”我回到办公室,觉得这个问题可能和我想得有点不一样。怎么办?万能的百度啊(那时候我真不知道百度Google的区别)!结果出来了,哦,原来还是有几家培训机构的,但哪一家好呢?
我灵机一动,挨个给这些培训机构打电话,“喂,xx中心吗?我是xxx公司,想招几个程序员,你们能不能推荐几个?”然后一水一水的年轻小伙子就来了,我怎么面试呢?没面试,就做题。题从哪里来?万能的百度呀!
被我欺骗的程序员同学们,原谅我吧。 但你们也真得反省一下,就我一份从百度上搜到的烂大街的题目,你们都答不出来,你们究竟有没有认真准备一下面试?
我也懒得对答案了,很多人一片一片的空白。很明显,答得最多的胜出!就这家了。
我打电话询问,“你们学费要多少?”
“我们一共学完,是两万三千多的样子。”电话里妹子的声音很温柔。
“你们怎么不去抢啊!”我喷她一脸的口水!当然,只是在心里。这不符合我温文尔雅的形象嘛!我反应这么强烈,是因为之前我心里一直以为就应该是七八百两三千的样子。两万,已经以万为计价单位了,我装一套房子报价也才两万块!
整理了一下思路,再问,“要学多久呢?”
“两年。我们三个学期,第一个学期半年,第二个学期半年,第三学期一年……”我的心里的怒火熄灭了,但心也变得冰凉冰凉的一片。
这时候,我已经毕业五年了:一事无成!更重要的是,我是输得一事无成,我是从九天之上被打落凡尘。更更重要的是,我不是被命运被别人打落凡尘,我是自己一路折腾把自己玩死的。我像一个输红了眼的赌徒,我要把所有失去的再一把赢回来。现在你告诉我,要上场,你就还得再等两年?
短暂的失神之后,我咬了咬牙,一股子倔劲又上来了,“我认准了的事,刀山火海都得上!”
我来到培训中心,考察了一下他们的课程,然后说了我的方案,“我就学中间这一学期”。这样我就只需要半年的时间了。接待我的老师大吃一惊,“你这样不行的!你跟不上进度怎么办?我们没办法给你文凭……”
“我什么都不要!你就把我当成个旁听生就行了,学成学不成都不怨你!”我大手一挥,气壮山河。
然后,我关了公司,卖掉了汽车,背起了书包,和一大帮毛头小子坐在一起,开始了我的编程之路。
真 心坑爹啊!说起来都是泪……我一个文科生,从中间开始学编程,这是一种神马体验?是“坐飞机”的体验呀!我26年的人生中,第一次体会到什么叫“上课坐飞 机”:老师讲的每一个字我都听得懂,但连在一起我就什么都不懂,完全不懂他在说什么。上机好一点,我TM至少知道开机。当然,除了开机我其他什么都不会 了。
怎么办?就俩字:硬啃!首先我找同学借来他们第一学期的书,从第一页开始学。中间不懂的就网上搜,向同学老师问。培训班课程是一周三天,我就一周七天的赶!
实事求是的说,现在真的是一个非常好的时代。任何知识,只要你想学,总是能找到无数的资源——互联网带来了太多的便利。我很快就知道了csdn、cnblogs之类的网站,问的问题很快就会有答复。
我以一种肉眼可见的速度快速成长,上课我可以举手回答所有同学都回答不了的问题,csdn上我也可以回答问题赚点积分,现在都还记得csdn上得了第一课小星星时候的兴奋和激动。
一眨眼,我的半年培训就结束了。是该找个地方试试手了!
软考
稍稍修饰一下简历(就不要写自己是装饰公司的老板了,就公司的网站维护吧)。为什么要转行?兴趣,完全是对代码无限的热爱驱使我走到今天!唉,不知道是不是类似的话说多了,有时候我自己都相信了。
所以,给各位HR一个小小的建议,一些敏感问题,问一问听一听就行了,千万别当真。能力尚可,要价不高,就可以了。态度热情之类的东西,谁知道呢?
我 很快骗到了第一份工作。一家游戏公司,要招一个人给他们公司做个网站。老板开始应该没看上我,第二天我就打了个电话,非常诚恳的表示我非常看好他们的事 业,非常的喜欢这份工作——老板心一软,就答应了。(就这么简单,面试之后打一个电话,你的求职成功率至少增加五成!可是很少有人这么做。)
工作比较清闲,因为他们都还忙着开发游戏呢。而我,就开始了我的另一个重大工程,准备软考(详见:计算机技术与软件专业技术资格(水平)考试)。
进入这家公司之后,就知道了行业内对培训毕业生的歧视(见:程序员歧视培训出身的(是不是这样?),那么同样歧视自学出身的人吗? - 自由飞的回答)。此时的我,对于歧视,没有什么太多的情绪,唯一需要弄明白的是,为什么会有这种歧视?面对这种歧视,我应该做些什么,我可以做些什么?
同 时在实际的学习工作中也发现了自己的不足,有些资料文档自己还是看不懂,我干脆就把这个问题原原本本的扔到网上。大概是“IT培训班毕业生接下来的路怎么 走”之类的,终于网上有人告诉我,培训几乎都是以实用为目的,缺乏“基础”教育,所以我要想提高的话,最好能去参加一次软考,过了软考怎么怎么牛B之类 的。
和司法考试一样,软考也是有指定教材的;和司法资格考试不一样的是,这个教材是根本看不懂的!我又在网上下载了视频,没用,吧啦吧啦 讲的些什么东西啊?本来热情高涨的信心被哗的泼了一瓢冷水,看着那些什么树啊、图啊、状态机之类的东西,一种无力感悄悄的从心里升起,随之而来的就是困顿 彷徨。
公司在郊区,所以平时我们都住在公司的宿舍里。每天晚上,我都出去跑步,在没人的马路边上跑啊跑啊,眼前是昏昏沉沉的夜色,寂静的 夜里能听到我的喘息和虫儿的鸣叫,迎面而来的风似乎吹走了那些烦躁焦虑,身体的疲乏反而能让我的思路更加清明——我已经没有退路,只能向前,向前,跑步向 前。
不就是个软考吗?别说你是块硬骨头,就是块石头,我也要把你啃下来!啃不下你,我就把我一口牙一口血给你!!!
我真的是疯了!现在写下这段文字,我的双手都还止不住的颤抖——那种绝望和力量,就像被逼入绝境的野兽,亮起它的獠牙。
我 慢慢的明白,我之所以看不懂软考教材,是因为这教材里的每一个章节,都是大学计算机专业里的一门课程。这个教材,更像是一个大纲一个提炼总结,是给那些已 经学过了《计算机基础和原理》、《编译原理》、《数据结构和算法》……的大学毕业生作为考前复习资料看的。所以,我要做的,就是先把这些所有的课程学一 遍。
这家公司没有我想要的东西,我果断辞职,全身心的投入,备战软考。我来到图书馆,因为这里的书够多。比如数据结构,这本书我看不懂, 我就再找一本,还看不懂,我就再找一本……总有一本书,能用我懂的语言,告诉我这究竟是怎么一回事!一本不行就两本,两本不行就三本……空荡荡的图书馆 里,我有一种进入了金庸武侠世界,博采众长,修炼高深武学的感觉。这种感觉不断的刺激着我的肾上腺素分泌,那种日夜不止的亢奋,直到今日,我都再也没有能 体验到过。
但人终不能胜天,虽然我尽了我最大的努力,但时间还是太紧了。“这一次肯定不成了”,我苦笑着告诉我家人,“身经百‘考’,我好歹也要‘挂’一次才是圆满啊!”但说这话时,我的心里却没有太多的情绪。或许,真的开始明白那句很俗套的话,“努力过,奋斗过,也就够了!”
没有想到的是,这一次,老天给我开了挂!试卷泄密,考期推迟。你能感受到我知道这个消息之后的心情吗?老天都帮我,我TM不整出点响来我对得起谁?
走出考场,我就知道,这次我肯定过了。成绩出来,我一样的冒出合格线一大截。我开了一瓶红酒,和家人一起庆祝这次胜利。
我 是真的高兴,比高考司考过了都高兴。在没有任何基础的情况下,我用4个月的时间,完成了大学四年的教程,一次性的通过了据说很多计算机专业毕业生都通不过 的软考!我像狼一样的嚎叫,我泪流满面咬牙切齿的叫嚣,“就算我以后一辈子都是个笑话,我有这一次证明就够了!就够了!”
十年磨一剑,重剑已经成型!
+++++++++++++++++++++++++
不断的有同学问我究竟是怎么做到的。我想,最主要的,应该是压力,是那种强大的压力激发了我的全部潜力。当时,我已经毕业六年,创业失败公司破产,“不务正业瞎折腾”的冷言冷语变成血淋淋的现实;老婆挺着大肚子,我不想我的孩子一睁眼就看到一个落魄潦倒的父亲……
“穷寇莫追”,因为没有退路的人是最可怕的!
+++++++++++++++++++++++++再战上海滩
接 下来的日子特别忙碌而甜蜜,因为我家的小天使诞生了。这个新生命的降生,让我第一次对生命满怀敬畏。从此我就不再是为一个人而活,从此就有那么一个可爱的 小精灵,她把你当成天当成地,当成英雄当成玩伴当成牵挂。所以后来,我看YY小说,“推倒”都迅速略过,最烂俗的“下崽儿”还看得津津有味。是啊,穿越到 这个世界,直到当了爸爸,才证明你在这个世界扎下了根,这个世界才不再是一场游戏一场梦。
“男人啊,等他娶了婆姨生了娃儿,就自然有个定性了。”这句我常常取笑的台词,原来是真的。人,真的可以一夜成熟!
很抒情,是吧?但抒情不能当饭吃,我这个无业人员也得给孩子挣点奶粉钱表示表示啊!一转眼就过了春节,我决定再到上海去看看。
“纸上得来终觉浅”,有了上一次创业的血泪教训,这一次我一定要脚踏实地一步一个脚印的把这门核心技术学到家。闭门造车是绝对不行的,只有大上海,才有足够多的机会让我能接触高人开阔视野。(三线城市做软件开发的与大城市的差距有多大? - 自由飞的回答)
所以,就像一个出门求学的游子,我告别了我三个月大的小女儿,再一次踏上了漫漫征途。
到 上海的第一个感觉就是这里的互联网非常发达,从机场到市区的路上,我就看见了好几个大概是订餐网站之类的大幅广告牌。找工作自然也是通过网络,“海投” (就是不看招聘要求大量的投递)呗。招人的公司太多了,实在看不过来。然后就挨家挨家的面试,因为抱着见世面交朋友的想法,我一点都不急,各种各样的公司 我都去看一下,至少可以看看他们的装修风格嘛。说实话,就连装修,上海都比我们那里高出一大截。我在心里叹气,“见识啊见识啊!”
第一份工作来得十分搞笑。去了之后,简单聊了几句,给我两页纸一支笔,做题吧!咦,这些题好眼熟?我就挨个挨个的答吧,答到第二页,面试官走过来,“哦,答了这 么多了?后面的就算了吧。”继续谈,“期望薪资多少?”我记得好像最后谈成3500。第二天入职报到,一周过后,我终于证实,面试我的人根本就不懂技术, 他就一美工,面试题都是网上随便下载的。让人不由得感概命运的神奇——要知道一年前,我就是这样挑培训机构的,哈哈哈!
我开始了我真正意 义上的程序员工作——从切图开始。这是一个移民中介公司(不知道面试时我的准备出国留学经历有没有给我加分),我属于市场部,负责网络推广中的技术支持。 公司就我一个程序员,另外一个是美工,基本上也就能把效果图做出来而已。大概差不多切了两星期的图,陆陆续续就有一些简单的开发任务。没有人可以帮我,任 务扔过来,我就得想办法把他弄出来。经常弄起性子来就忘了下班,反正一个人在上海,晚高峰地铁挤得要死,回家还是看书。
上海的天黑得早,走出办公室,外面已是一片灯火辉煌。忙完了一天的工作,回家的路上,塞上耳塞,百听不厌的歌声就响了起来:
“
曾经多少次跌倒在路上
曾经多少次折断过翅膀
如今我已不再感到彷徨
我想超越这平凡的奢望
……
”伴着旋律的行走有一种特别的感受,仿佛在云端。
慢慢的,对代码就有了感情。那是一种操控感,给人一种成神的幻觉——是的,在代码的世界里,你就是神。你制定这个世界的规则,你操控一切,你赋予代码生命和 灵性,一个个字母从你的指尖流出,像一个个跳跃的音符。尤其是当办公室里后排的美眉,一次聊天时有些好奇有些崇拜的问我,“看到你一天到晚就在键盘上敲呀 敲呀,完全看不懂的东西,你是怎么弄懂的?”百分之两百的爽爆了,有木有?!
炒鱿鱼
但很快,我发现这里有 点喂不饱我了。工作虽说不是游刃有余,但也基本胜任了;关键是周围没高手没氛围啊,纯粹一手工作坊的感觉。我千里迢迢到上海,就为了这样一份工作,不值得 啊!但考虑到“频繁跳槽”好像不太好,就将就待满一年吧,自己也趁机再夯实一下基础。我这样打算着。
但很快发生的一件事打乱了我的部署。一次部门开会,我和老大吵架了,拍了桌子摔了门。老大涵养很好,后来找我谈了次话,反正意思传达到,误会误会冰释前嫌;我其实没把这当回事,就顺驴下坡,赶紧认错道歉。老大还自掏腰包,请大家吃了个饭,把酒言欢,其乐融融啊!
差不多十来天过后,老大的屠刀亮出来了。就在我试用期快满的前几天,“劝退”(这我当时学会的新名称,还挺委婉)。“哈哈哈哈”,我在心里仰天大笑,“小样儿,还挺阴险!”但脸上还要表现出正常的惊讶愤慨不甘悔恨羞愧的复杂表情,让他爽一把嘛!
接下来办离职,人事的姐姐看着我就忍不住的笑,笑了一下午。“你有点同情心好不好?我被开了好不好?你笑得这么happy,让我情何以堪?”她笑得更欢了,“我实在忍不住,是你的表情太搞笑了!”咦,难道我装得不像?演员的自我修养还得要提高啊!
些许蝇营狗苟魑魅魍魉,不值一提。但我比较心虚的是,我老婆过两天就要来上海了;她刚到上海,我就告诉她我被炒鱿鱼了?
去 机场接她的时候买了一束花,老弟在旁边笑死了,“哥还挺浪漫!”其实我的心里,是一份愧疚和感动。很久很久以前,我追她的时候,她就很担心,“我们现在都 还在读书,以后毕业了找工作,谁知道能不能在一起?”我不以为然,“你担心这个干嘛?就这样,我一句话撂这里了,‘以后你去哪我就去哪!’”少女的心里满 满的踏实和安稳,一脸羞涩的让我握着她软软的小手。我牵着她的手,这些年却是东奔西走,我走到哪她就跟到哪,从来没有一句怨言。就像这一次,我知道她不想 来上海,但她知道我想来,于是她就来了。不知道她是否还记得我当年的承诺,但我记得,一辈子都会记得!
见世面
趁着老婆捧着鲜花笑得灿烂的时候,我把我被炒鱿鱼的事告诉我老婆。当然,要着重强调我是被炒的,之前我拍桌子摔门板的事就直接略过吧——就当我是技术太烂才被开掉的。老婆一脸深情的望着我,“你好可怜哟!没事,我们继续找!”嘿嘿,算是过关了。
有了这三个月不到的工作经验,自信心增强了不少,简历呢也适当调整润色一下。继续我的“海投”事业吧。
很快,接到了一个电话,也没要我去公司面试,直接在电话里就开始聊(我超喜欢这种方式!赞一个),不到十分钟的样子,就结束了,等通知。第二天我照例回个电话问一下情况,回复让我比较开心,“我(技术负责人)这里没什么问题了,但要HR那边考虑”。
过 几天HR通知面试,当场给了offer,薪水好像是4500的样子,反正比之前的公司高。心里乐开了花。手续办完,和HR一起出门,在电梯里一转身,咦? 一个HR怎么变成两个了?答对了,双胞胎!真像呀,反正一直到我离职,我都分不太清楚她们两个姊妹花。听她们聊天,好像我进来得还挺顺利,而且顺利的关键 是我英语好。“真是没想到啊!签证拒签之后我一直都以为,这辈子我都再也用不到英语了。”第一次有了人生际遇叵测的感觉。
第二天到公司报道,震撼就开始了。
首 先是大通间的办公室,整整齐齐的摆放着一溜一溜的办公桌,给人一眼望不到头的感觉;徜徉其中,打量着周围稀奇古怪的电脑(那时候不知道电脑可以配两个屏 幕),能听到噼里啪啦的键盘声和电脑风扇低沉的气流声,迎面而来的同事穿着牛仔裤挂在大标牌,朝气蓬勃……那一瞬间,真的是血脉贲张,幸福感一波又一波的 向我砸来。哈哈哈!这才是我要找的地方啊!
接下来发电脑,打开一看,哟!英文版的操作系统?心里有点小激动小忐忑,后来知道,电脑里所有的软件,都是正版的。想想我开公司的时候,别说正版软件,所有的电脑都清一色的二手组装货。这人比人得死货比货得扔啊。
卫生间洗手是热水倒无所谓,怎么全是抽水马桶?蹲坑呢?我的蹲坑呢?虽然好像保洁阿姨一天到晚都在拖地抹屋,到处都是锃亮锃亮的,但我还是几个月没在公司那啥啥……
土鳖啊!当时的我,就像是刘姥姥进大观园,看啥都新鲜。
孙子
注意:不是装孙子。我就真是一个孙子!正式上班的第一天,老大就甩给我一个100多页的文档,纯英文的,让我“先看看”。“先看看”是什么意思?不懂啊,更不敢问——怕露馅,我简历上说我已经有三年开发工作经验了。三年的开发经验还不知道“先看看”的意思?
于是我就从第一页开始看吧。真心看不懂,不是英文看不懂,是里面的逻辑搞不懂;而且是纯看文档,没有可对照的系统做参考。有过类似经验的同学就知道那是一种什么体验,反正我就是不停的打瞌睡。睡又不敢睡,看又看不懂,问又不敢问,每天真的是如坐针毡如履薄冰。
度 日如年,差不多过了七年,我的权限什么的都下来了,可以进入系统开发了。老大指着文档里两页说,“我们接下来就做这个需求”。我看着这两页文档想哭,你说 的就是这两页,不是这整个100多页?我的情绪还没来得及释放,老大的第二句话砸得我眼冒金星,“你先写个设计文档,给我看一下,然后我们就开工吧”!
如果可以自由表情的话,我的眼里一定满是泪水。设计文档?传说中的设计文档?长什么样的?但现实是,我的眼神柔和而平静,轻轻点头,“好的”。三年的开发经验还不知道怎么写设计文档?
好在第二天老大很贴心的给我发了个设计文档的模板,我才知道,这文档是应该用英文写的,不然我真的会交一篇汉语版的上去。不知道怎么东拼西凑了一通,交上去之后,老大改了改,迷迷糊糊的还是过关了。
但接下来写代码就惨了。因为多人合作,所以公司用的是源代码控制工具TFS,这东西我根本就没听说过,更不知道怎么用。小心翼翼的问了下同事,听得迷迷糊糊似懂非懂就只好硬着头皮上了。不敢问得太多啊!三年的开发经验还不知道TFS怎么用?
然后就闯祸了,一天下午,听到同事叫了一声,“咦?(代码)怎么跑不过了?编译都不行啊?”我的心里一紧。然后很快,就听到诺大的办公室此起彼伏的惊叫应和,一会儿就像一锅粥一样。
“老X,是你提交的代码出了问题?”
“啊?应该不会吧?”我后背开始冒汗。
“怎么不是?你看你看……”晕死!这MB的源代码一条条记录清清楚楚,捉贼捉赃,被抓现行了!
“快点把它fix掉,别人(的代码)都不能跑了”,见我还傻愣着,我们同事提醒我。
“fix掉?怎么fix掉?”我在心里悲鸣。装不下去了,只好硬着头皮承认原来自己不会。
“啊?”同事看了我一眼,还是过来帮忙吧。结果他也搞不定,“老X,你究竟干了些什么呀?”
“啊,嗯,那个……”我支支吾吾,我哪知道我干了些什么?我要知道,会是现在这个样子么?只 好找项目经理帮忙,牛人就是牛人,我同事搞了一下午搞不定的事,他两个小时就搞定了。这个项目经理,真的是我佩服的一个人,我一直想学他,但直到现在都没 学会。他随时挂着一脸微笑,温文尔雅,就没看见过他发火。就像这事,耽搁了他下班,他像没事人一样;给你的感觉是,出现了一个棘手的问题,他的G点就被引 爆了。所以你丝毫没有压力,反而可以自我安慰,我还这不是还给送了盘菜么?
和他形成对比的是,公司里我的另外一个搭档,技术不赖,人也是好人,但就是爱显摆;爱显摆也没问题,但没必要靠贬低别人来显摆。每次听到他夸张高亢的声音,“老X,怎么又是你(出情况)……”我都菊花一紧。我每次出篓子的事,他似乎都想弄得满屋子的人都知道一样!
日复一日,我悲惨的境遇没有任何改变,不知道这种日子什么时候是个头。第一个项目验收之前,我们老大和我在办公室加班,一起改我的代码,一段一段的删啊改啊写的,一直到晚上十点多种。
一起回家的路上,老大悲叹,“我要的是三年开发经验的,你是一点工作经验没有!”
“咦?他怎么看出我一点工作经验没有?”当时的我还挺天真挺疑惑。你都看出来了?你都看出来了不早说?我装得多辛苦多可怜,你知道么?
见我没反应,他继续苦口婆心的劝我,“这个地方,真的不适合新人呆。里面的业务都是要抢的……”
“这是啥意思?暗示?又一次‘劝退’?”我心里做好了准备,你要是敢接着往下说,我就抱着你的大腿哭,“求求你,给我个机会吧!我上有老下有小……”一把鼻涕一把泪,都蹭到里裤腿上!
人不要脸,百事可为。他最终也没能把话挑明,我也就挨呀挨的挨过了试用期。很快,这个老大就离职了。想来他都快离职了也不愿再当个恶人,所以给人力资源部反馈是:我能力还稍有欠缺,但态度极其端正,谦虚好学,是可造之材!(嗯,后两句好像是我自己加的)
转正了,工资给足了,上司变成了前面提到的项目经理(我最爱的那一个),同事之间的关系也越来越熟络,一切都开始慢慢的好转起来。过几天,我的小女儿也要到上海来看爸爸了,这小家伙,还真是我的福星啊!
积累
每一次去机场接我的小公主,除了高兴以外都是一个感觉,“怎么又长这么多啦?”小孩天真无邪的笑容是那一段日子里最亮丽的回忆。除此以外的生活,单调而机械。
平日里就是公司家里两点一线,公司有班车接送,我的兜里就总是放着一本专业书籍,来回的路上,就简简单单的看书看车窗外的风景;下班回来吃过晚饭,打开电脑,就对着白天书里的知识敲代码;差不多困了,抱一本最难懂的书上床,看一会儿就会晕晕沉沉的睡去。
周末睡个懒觉,然后照例会去一会儿图书馆。还书借书,周而复始。真应了那句话,“书非借不能读也”,自己买的书好几本到现在都还是新的,图书馆里借来的书反而会仔仔细细的研读。浦东图书馆外有一片漂亮的草坪,天气好的时候,我就会在那里躺着趴着看半天的书,直到太阳落山。
我 的家人都很满意我的这种生活状态,在他们看来,我这是“浪子回头金不换”的表现。只是劝我,还是要注意休息,有时间还是要出去玩一玩。
我从善如流,每周末都会到小区里老年活动中心打一下午乒乓球。又一次拿起乒乓球拍,不由得感慨万千,“还记得上一次打球是什么时候?这是多少年过去了?”不知何时,那个在烈 日下肆意抽杀的少年,放下球拍,在现实中去拼去闯去追逐他的梦想;如今辗转飘零流落他乡一无所有的时候,陪伴他的能给他带来快乐和力量的,却还是这支球 拍。
但不要以为我在球桌上英姿飒爽重振雄风,这帮老头儿大妈全都是高手啊!我一个棒小伙子居然只有被他们完虐的份。回到家里和老弟吐槽, “这帮大爷大妈,战战巍巍的杵在哪里,翻来覆去那几个套路,我上蹿下跳一身大汗,怎么就老是打不赢呢?”老弟大笑,“你想啊!都这么大一把年纪了,还在天 天打球,说明什么?他们是真爱啊!这叫什么?这叫‘真爱无敌’”。和老弟一分析,还真是这么回事。乒乓球手上的功夫,是时间堆出来的,做不得假。任凭我人 年轻体力好战术新,在经年累月积累的实力面前,都是一撕就破的纸老虎。
世间很多事,都是取不了巧的。
日子像水一样的流过。我断绝了我的过往,在这个到处都是奶油香味的大都市,像一个普普通通的小职员,过着日复一日简单安宁的生活。只是偶尔,会从睡梦中惊醒,一阵“铁马冰河入梦来,不知今夕何年”的恍惚。
链接:《折腾》三卷:孕育 (初稿)哪里可以看到?
+++++++++++++++++++
注册·一起帮(包含 邀请人:叶飞,邀请码:1786)
我自己个人开发的一个网站,开发过程全程直播并有录像(自由飞:在斗鱼直播写代码是一种怎样的体验?)
设立的初衷就是为了降低自学编程(也包括各种电脑软件使用等)的难度,尤其是一些对新人来说“莫名其妙的”问题(比如配置不对、连不上数据库之类的),问题本身没多少技术含量,但确实新人自学过程中的拦路虎,自己瞎折腾不知道要花多少时间,但如果有人远程桌面帮忙看看,很快就可以解决。
有兴趣的同学注册看看吧?
注册·一起帮(包含 邀请人:叶飞,邀请码:1786)
+++++++++++++++++++
其实讨论这个问题是没意义的,不管是科班出身也好,跨行搞计算机的也好,其实编程不是件难事,四个月培训出来确实就可以干活,一般这种水平在往后不学习的情况下,顶多走一两年就干不下去了,除非你继续坚持吧计算机理论该学的学,该补的补,该下功夫的下功夫才能继续走下去。
那些说要学各种数学和操作系统原理的,包括我也经常说,说这些是告诉那些还想把编程事业走的更远的人,就这么简单,编程这件事越往后越深奥,越需要本科学的那些理论支持。
不过现在这个社会并没有限制,有的想混迹互联网圈的人懂点技术是好事,到时候转产品或者是干到管理层了,可以更好的和顾客打交道,而不会乱提需求,现在这个社会懂点编程知识的人越多越好,最好高中就普及这些东西,还能训练训练逻辑思维能力,我觉得挺好的,诸位大神不要总是走极端,不要总觉得一旦选择搞开发就必须深挖,不懂操作系统原理不懂线性代数不懂计算机原理的人必须选择狗带,或者不配搞这个,事实上是咱们程序员的领导们不见得几个技术比咱们好,咱们没事干就骂那帮领导傻逼,可是人家就是比咱们挣得多,加班的是咱们,拿钱的是他们,这就是事实作为一个“非科班”程序员,我也实在看不下去这个问题下的某些答案了,还有人让你做高数题,不及格就放弃,醉了,我就根本不懂什么线性代数,离散数学,初中代数倒是还记得一些,还不是一样可以拿到两万的月薪以及股份期权,真不知道那些让你看线性代数,离散数学的,他自己写程序用没用到这些知识,我觉的 @unique 的答案很靠谱,程序员之路大体上就是这么一个过程,我想从更具体一点的方面告诉你如何你如何入门。
(为了不引起误解声明下,我并非质疑高数的重要性,只是在一些领域确实用不到高数)
我是做前端开发,就带你入行前端开发,说白了就是做网页,你网上购物时看到的淘宝页面,就是前端做的,各位前端大牛,如果看到我说的有不严谨的地方,请忽喷,我是为了方便题主理解,等他学习到一定程度再去搞清一些专有名词和一些概念的定义吧。
=====================================
先定一个小目标,做他一个小例子。
学习编程,最重要的就是动手去做,这句话你如果不能真正理解的话,可以先念会背。(敲黑板...)
在你电脑桌面右键新建一个,文本文档。
把下面的代码复制到文档内保存。
&
&
&
&
&
&
&
&
Hello World !&
&&&
&
现在文档的全名是 新建文本文档.txt , 请将文档重命名为 index.html,.txt 是文本文件的后缀名,.html 就是网页文件的后缀名.
什么? 你看不到后缀名? 那么请去搜索引擎搜索 “如何显示文件的后缀名” 。到了这里,你要学习编程的第二定理了。
遇到不会的问题,随时到搜索引擎搜索。这句话你如果不能真正理解的话,可以先念会背。(再次敲黑板...)
当然你把文件重命名为 index.html 后,双击在浏览器中打开这个文件,如果你能够看到下图,那么你就是一个入门级的前端了,虽然是最最最入门级的那种。
那么,题主,请问你按照我说的步骤做了吗? 如果没有,你还是继续去工厂吧,编程这条路不适合你,我是自学编程,你今后绝大多数编程技能也要靠你自学,我们对于 “电脑方面知识”的热爱,不能只是说嘴上说说,我们要虚心的去学习每一个示例,虚心的去搜索每一个疑问,只有这样才能慢慢的提升自己,在这里送给你我喜欢的一句话:
求知若饥, 虚心若愚。
如果你真的没做也没关系,因为你还有机会,Do it now,please! (现在就请做!) 但是以后,请一定要记住这两条:
1、学习编程,最重要的就是动手去做。
2、遇到不会的问题,随时到搜索引擎搜索。
如果你已经在浏览器中看到了红色的 "Hello World!", 你可以用电脑 上的 “记事本” 打开 index.html 这个文件。(不知道怎么打开?自己去问搜索引擎)。
在这段代码里:
&
之间的就是css, 你把 color: red; 改为 color: green; (意思为把红字改为绿字) 然后保存,在浏览器中打开这个文件,刷新页面,就会看到刚才的红字变成了绿色的,你也可以试着改字号大小, 28px ,改成 50px。& 之间的是 Javascript ,简称 JS , a * (5 + 1) 是不很像代数式? * 号是 乘 ,a = 2; 这个相当于 2×(5+1); 结果就是你在页面中看到的 12 。你可以试着改一下上面的数值 ,比如把5换成4,把 * 换为其它运算符 (+-*/ 这四个分别代表加减乘除),改好后记得保存和刷新,编程就是做这个,只不过做的是更加复杂事情。
在 style 和 script 之外的部分,就是 html ,像 html、body、title、h1、div 这些都是 html ,是 html 的标签。
你看,编程其实没你想像的那么遥远, 也并非触不可及,如果你看到这里,还没有做,我预测你5年之后,绝对成为不了程序员。
其实我就是想说,空想永远不会让你成为程序要,要行动,上面就有一个示例摆在你眼前,做了这个示例你就是一个最最最最入门级的程序员了。你做不做?
以下才是这篇答案的正文,虽然我开头写的很长,但是万事开头难,所以多开头多写点。
一,你要先学会一些电脑相关的基础知识。
1,要有一台电脑,不需要太高的配置,要能通电,能上网。
2,认识电脑的硬件,比如 cpu, 内存,硬盘等,知道各个硬件的大至上是干什么的,网上有很多教程,你自己会搜索对吗?
3,会安装系统,至少也要会安装软件,试着在电脑上安装以下几个软件:sublime text3 (或者atom编辑器) , firefox, firebug , photoshop ;
以上是学习编程前的基础准备工作,你可以抄写下来,完成一项就打一个勾,全部打勾后就可以开始学了,有些实在完成不了的,可以采用替代方案,比如没有电脑,可以借一台,或去网吧。
二,学习前端必备技能 html, css, js, photoshop(可选)
html, css, js 是前端的核心技能,之前写的相对简单,今天详细的写下新手如何去学。
1,学习 html 和 css,打开这个网站 HTML & 标签, 打开后看到如下图:
这是W3C的教程,写的很详细,左边是目录,右边是教程,还有很多实例,请耐下心来看,并动手做做上面的实例,对于大多数人来说,只要你能耐下心去看,肯定学的会,在看的时候,我总结几个要点:
(1)不要强求一次就看会,如果看不懂,跳过看下一个,等过所有的看完后,再看回头看第二遍。我现在看教程也是这样,耐下心来多看几遍,就会突然开窍。
(2)动手测试可以加深你的理解。
(3)耐心耐心耐心,千万不要浮躁和急于求成。
下面是我写的小例子:
&
&
&
&
&
&
&
&
&
PHP是最好的语言&
&某女:你能让这个论坛的人都吵起来,我今晚就跟你走. 某软件工程师:PHP是最好的语言! 某论坛炸锅了,各种吵架... 某女:服了你了,我们走吧 你想干啥都行. 某软件工程师:今天不行,我一定要说服他们,PHP必须是最好的语言 某女:...&
& &
&
&
在上面的例子中,我新学了两个标签,h3, 和 p, 我就动手测试看看它们在页面中是什么样子,以后我再学到新的标签,我都会把它放到正文部分去测试,当我学习了新的属性 比如 border 我就可以在样式(&