回顾我自学PHP的血泪史(一)
很多看似大神的后面,其实都隐藏着一段无人知晓的血泪史......
每次别人问到如何学PHP的时候,都能激起我对那段历史的回顾......
谈到PHP的学习经历,应该是从05年开始,那时候淘宝网没兴起多久,做个人网站显得很神奇,我也想做一个自己的有特色的功夫电影网,一开始什么也不懂,就请人帮做个“功夫电影网”,费用500元,他不肯,于是继续找,后面不小心遇到个骗子,倒霉的被骗了600元,什么也没做成。郁闷了很久,是继续逃避去撞运气还是自己学本事?一咬牙,俺没那么多钱浪费,自己学吧。
06年开始接触动态网站,不知道选择哪个语言,也不知道从哪里开始入手,心想就选择个简单的吧,那个时候动易刚出道,很流行,就选择了动易......起早贪黑的学习,听课,记得那个时候它出的视频教程是:《动易起航_2006》,每集的一开始都会念那么几句广告台词;但里面的视频教程就是请很多“江湖人士”东拉西扯的拼凑,每个人讲一点点,各人讲的毫不搭边,一点没有整体架构而言,只是在罗列遇到了什么问题,按照什么步骤去解决等等。
听了很久,云里雾里,头都大了,还是不懂什么是动态网站,一直还很傻的认为有会动图片的网站就是动态网站......
没人指导,也没人专门教授,更谈不上成为某大神的入室弟子,我只能自学;因为我深刻知道:穷人如果不想办法在你这一代突破,那很可能就代代穷下去了.....;所以,没办法,但还得硬着头皮继续听下去,学下去,听的懂的,听不懂的,都一股脑的听。由于内容太多,听了后面忘记前面,加上前面的很多不懂的还没解决,后面不懂的又一窝蜂的涌上来,越积越多。那些时候,每天都像一个孤魂野鬼,而且是找不到救命草的孤魂野鬼......为了能设计心中需要的任何网站,我继续当着孤魂野鬼......
偷懒,想找个“软柿子”捏,让我吃了很大的亏,很多地方不知道为什么,遇到问题无从下手,百度搜索,经常得不到高质量的答案,抽象问题更是无迹可寻;往往一个具体的小问题,都能困扰我好几天,抽象一点的问题,基本上几个月都没解决都很很正常。
更抽象的比如编程思想之类的问题,几乎就只能一直遗留着了。我知道这只能靠自学了,没人能帮的了我,只能靠自己摸索,基础不够,按就打牢基础,少什么就学什么,需要C语言就学它,需要C++就学它,需要JAVA就学它,需要linux就学它,需要mysql就学它,需要什么就学什么......学嵌入式和学WEB都逼迫我这样做。为了能找到问题产生的本质,我重新选择了开源的PHP。
我选择了PHP;虽然PHP也有自己的产品:dedecms。当时也很流行,但是经历过之前的教训,我知道如果我一来就学dedecms,看似好像很快,但同样是后患无穷,最后时间花了很久,可能连门都没入;后面证明果然如此;我再一次的偷懒而被惩罚了......。
加上当时要考华南理工大学电信学院的研究生,需要时间复习,就又只好暂停了;就是这样经历了屡战屡败,又从屡败屡战中不断的坚持着,坚持着......
考研成绩下来了(364分),超过该校的学校的专业线(351分)但复试过于轻敌,需要更换专业,为了保住专业,我毅然选择了调剂到一个很稳的外校,到了读研期间有点时间了,咬紧牙关,在学嵌入式的同时,继续把PHP捡起来。
深刻体会到:科技知识是客观的,也是非常冷血的,它不会可怜你,不管它曾欺负了你多久,只要你没打趴它,解决它,你再来,它就同样继续的欺负你......在继续坚持学习PHP的过程中,我继续被这些抽象的东西困扰着,欺负着。
这些黑名单有:apache,linux,php5,mysql,分布式,客户端,服务器,架构,协议,框架,模版引擎,设计模式,MVC,面向过程,面向对象,静态,动态,前端,后台,jquery,ajax,异步......同样也有很多的为什么遗留着:当时的我,
不知道为什么面向过程和面向对象的关系,
也不知道分别是什么思想;不知道为什么要MVC设计模式;
也不知道控制器用来干什么,为什么要有控制器这些玩意,不知道Model层是什么,不知道数据库抽象层是什么,不知道view层和smarty的关系,
不知道smarty有什么用,不知道标签为什么要那么写,不知道模版解释引擎是什么,用来干什么。也不知道框架为什么就突然蹦出来了,而且还很多(比如ThinkPHP,YII,CI,ZendFramework...),不知道他们和dedecms这些有什么关系。
为什么有了框架还要出现dedecms,以及phpcms,以及其他的很多乱七八糟的东西:ecshop,ecmall,estore,shopex,magento,discuz,phpwind,ucenter,.....它们每一个都在告诉我“本产品是用PHP+MYSQL架构设计”,
但是我用它做完一个网站,几乎都没用到一个PHP语法知识,居然就做成了,所做的就只是写跟PHP语法毫不搭边的标签,好像跟PHP没任何关系......奇怪的东西还有很多很多......当时的我就是这个情况,可以说是一无所知;但我坚信,它能存在,就一定有它存在的道理,我只是不知道它的存在理由在哪里。
这些东西曾对我来说是很抽象的,它们压迫了我很久很久,无数次被它们压的想放弃。现在居然看到很多人轻而易举的说出“PHP很简单,几下子就搞定”,我不知道你说的PHP是否只指dede,还是什么很简单,可能我水平有限,真看不出它有那么简单;
又或许,他说这句话的时候,自己也不经过思考,就只是为了获得一个徒有虚名的头衔:“看,你学的那么艰难,而我则认为很简单,我是多么的比你厉害啊”,哪怕不负责任。
或许它自己讲出来之后,马上就忘记他自己说什么了,然后背地里继续同样痛苦的学习着......在做自相矛盾的行为......经过打听,我几乎遇到的是这种情况:说这些话的人,要么是久经沙场的有与众不同经历的奇人(多半都年纪很大了,遇到的也屈指可数),要么绝大多数都是只用过dede或者phpcms,又或者ecshop,discuz等这种东西来套网站,他们管这个叫“仿站”。
刚学几天,用它搭建个平台,然后在模版里跟着模版手册里的说明复制粘贴着几个连自己也不知道为什么那样做的标签......确实简单。
但这样的人后面几乎又都在做同样的事情:加入无数个所谓的专业QQ群,不顾别人感受的多次重复的复制粘贴大段大段的问题,而且问的源源不断,几乎做到了“不耻下问”,到处跪求大神帮解决,把问题一股脑的交给别人,想得到啥?
结果啥也得不到,不是被贬低打击积极性,就是石沉大海杳无音信。即使得到了个别答案,也是那种“百度,度娘,谷歌”这些不痛不痒的答案,有境界的答案根本就没有。提问精神可以,但这样的提问效果差劲,并且对他的知识水平的提升毫无意义。
充其量解决了个别小问题,但是一个解决了,十个问题又产生了,他们只做问题的生产机器,而不会做问题的解决工具,因为他们没有经历过也不敢去经历一段刻骨铭心的血泪史。所以他们的日子不好过。他们每天的日子就是在源源不断的新问题中烦恼而得不到几个解决方案;这样的“技术人才”是很累的,也很无趣的,他们的技术生涯是有限的,他们对于未来的刻画很多都是:“什么时候转型,转到哪里”,
PHP对于他们来说,只是一个过程,他们在不断的寻找下一个过程,每天都在选择中而累着,他不喜欢PHP,PHP也不喜欢他......我不想说这样的人有多少发展潜力,但要有潜力一定不要做这种人;每个行业都有这种来去匆匆的人,只有真正沉下心来体会,来享受痛苦,来思考的人,才是中流砥柱,才最终赢得自己的尊严。
在QQ专业群里待了很久的人也会看到:真正的大神一般都不提问题,也不怎么说话,因为他们没有时间去浪费在这种无效的行为中,因为他们都体会到了:要么提的问题不会有好的答案,要么就是别人听不懂无法回答,问了也白问;
比如:如何更好的架构网站体系并讲出理由;如何让网站更加安全,更加精简,更加高效,如何节省资源,如何代码更优化,如何算法更高效,如何理解编程思想......几乎只会得到一个千遍一律的答案“百度去”,更有甚至会被说成“神经病”。
现在的求学者很多都变得浮躁,这在技术行业中百害而无一利......学PHP,要有打硬仗的心理准备.......永远不要小瞧你的敌人,否则你就多一份危险......
宁哥简介
接触编程10年多(2003年开始接触C语言算起);
接触PHP长达8年多;
自硕士毕业后
抵制多个公司的高薪诱惑毅然选择闭关修炼PHP,
目的是构建出真正属于自己的完整的PHP知识体系;
写过的PHP小程序不计其数(也写过html,css,js,jquery等程序),功能模块涵盖诸多;
历时多年不断修改的上线项目:励志基地、现代家谱等;
PHP学习经验笔记1G(记事本格式来算)......
宁哥公众号:宁哥实战课堂