很好。但一两句说不清。简单解答就是:如果你把编程当做事业、饭碗,想做全职程序员,那么40岁已经很晚了。如果你把编程当做爱好,或是当做其他工作或日常生活的辅助工具,那别说40岁了,60岁都不晚。
首先我们必须明确,学习一样东西,并不是非要学到专业程度,职业程度。最简单的例子,很多人都在学习英语,但并不是要当翻译或要出国,而仅仅是方便阅读英语资料。很多人学习打篮球并不是要当运动员。绝大多数孩子和大人学习乐器(特别是培训班)并不是要当演奏家。更接近工作的例子,学习word、Excel并不是要当职业文员,学习Photoshop并不是要当专业设计师。这些软件仅仅是辅助工作和生活,提高工作效率,提高生活质量。
未来,编程能力越来越重要。会编程就像会英语、会打字、会办公软件一样属于必备技能。会一些简单的编程能提高工作效率。但是它是作为辅助而存在的。举个例子,假如你是医学方面的专业人员,遇到需要数据挖掘的问题,就可以去网上找一些现成的算法程序,简单改改,把一些临床数据或药物数据拿过去训练,就能得出很有用的结论。这时候,编程就是辅助,而主要的饭碗是领域知识(比如医学)。而需要具备的编程技能则要求较低,就是会改程序,会调参等等。这是未来编程发展全民化的必然趋势。你不可能什么东西都交给专职程序员去做。就如同今天,你计算几万个数字的平均值、排序之类的,自己学Excel就可以了,不至于找专业人员。自己修一个简单照片也是自己动手用Photoshop而不是这种事还找专业美工。
刚说了这么多,都是说业余编程的重要性和必要性。千万别认为学编程就是一定要当职业程序员。未来需要更多的多学科多元人才。
如果你学编程真的打算转行,做全职的、专职的、专业的程序员。那么40岁才从零开始,显然已经很晚了。
就是其他任何一个专业性比较强的领域,40岁才开始进入都已经晚了,更别说编程这种倾向于年轻化的专业技术。作为专职程序员,需要非常强的自学能力,要不断接受新事物,编程技术日新月异,要加班熬夜。这些,都不利于40岁零基础的人士。
当然,上面说的是针对专职程序员,而不是业余玩家。业余程序员则没有限制。业余程序员不必强调接受新事物,不必加班熬夜。为什么专职程序员要强调呢?因为他们的编程技能是用来吃饭的,是产出生产力的,是用于市场竞争的。试想,一个靠编程吃饭的人员,如果不用新的强大的编程技术,不加班,那么开发出来的东西要么效率低下,要么不符合业界标准和接口,要么规定的时间内不能保质保量完成,那结局一定是被无情地淘汰!这就像打字一样,业余打字(99.99%的人都是)用拼音就可以了,能打出来字就行,速度快一点慢一点都没有关系,能写出工作报告、总结、汇报就可以了。而专职打字员(比如法庭速录师)就不一样了,速度至上,打字慢肯定会被炒鱿鱼或生意亏本的。
再说一下你提到的C语言,我个人建议,40岁还是不要把C语言作为第一门编程语言了(但可以是第二、第三门语言)。原因是它太难了。这个难,一方面是语法比较晦涩难懂,特别是指针部分。另一方面,用C做出一个有成就感的程序难度较大,会严重打击自信心。
这是针对业余玩家来说的。专业玩家刚才说了,40岁真的不合适。假如非要挑战,而且意志特别坚定,作好了破釜沉舟的打算,则一开始就学习C语言是可以的。但你必须非常清楚,你作好了打持久战的准备,至少打2年,是至少不是平均,才会小有成就。C语言可以认为是编程的基础,专职程序员一开始就练内功打基础是对的。这个内功心法非常难练,但练好了对日后功力长进大有帮助,会走得更远。不过依然是那句话,这是一个持久战,可能要到50岁后才能体会到这个C内功的优点。这跟上大学一样,上大学的前十几年都是花钱(挣不了钱)练内功,而一个小学都没有毕业的人一开始就打工挣钱会挣很多,但是后期(比如35岁后)可能乏力,走的很大概率没有上过大学的走得远。
总之,建议40岁零基础将编程作为业余爱好和对现有专业工作的辅助技能,有针对性地学习适合自己领域的编程技能。而且不建议一开始就学习C语言。
你要是问能学编程么?
答案当然是能学!不管是什么阶段,什么水平,只要自己愿意学,就可以学!
但是,注意是但是,你学了编程的目的是什么?这个要了解清楚!
学习编程是为了工作
你如果学习编程是为了找工作?那么我就不建议你学了!为什么?各种原因,而且你自己的硬件(学历,年龄)也不够硬。
年龄
从年龄上来讲,你都 40 岁了,学东西不如年轻人快,身体也不如年轻人好,熬夜和拼努力估计也赶不上年轻人。互联网行业,尤其是编程这个行业,虽然我不同意 996 ,也不建议加班,但是这个行业的技术特点就是紧迫感,不仅工作紧,技术更新迭代也快,每年新出的编程框架和语言层出不穷,技术的生命周期有的很短,你就得天天保持学习。
这是没有办法的。
学历
你学历是初中水平,即使学习编程,整体的基础也不会太扎实,即使你学习很努力,有时候,技术的进阶靠的的是基础和原理,而且计算机行业,各个技术之间都或多或少的有着千丝万缕的联系,你自己只学习一个语言,有时候恐怕是不够的,影响晋升。
只学习某一个方面,没有广度的认知和深度的扎实,恐怕最后只能学个入门,但是这个行业已经进入了发展稳定期或者瓶颈期,入门级程序员太饱和了,学了也不好找工作。
而且你的学历影响你找工作,初中学历不是不能找到,但是很难,绝对很难!
学习编程是为了满足好奇心,感兴趣
如果你学习编程是为了满足好奇心,业余时间玩玩,这个可以,你感兴趣,想把它当业余爱好来玩,没事的时候,研究个小软件,或者写个插件或者小外挂之类的东西,你可以去研究,去学习。这个是可以的。
编程什么时候,都可以学,任何行业,任何知识都可以任何时候学,不分年龄,但是要看你学了之后,是要干什么了?如果抱着一个目标或者目的去一个行业的话,就得看情况了。
本文来自投稿,不代表DoDo生活网立场,如若转载,请注明出处:http://www.77dodo.com/aiwen/55732.html