我如何在16岁成为全栈开发者?
文/Nuno Martins 译/刘静
来源:CSDN(ID:CSDNnews)
以下为译文:
当我14岁的时候,在PHP、HTML、CSS以及JavaScript这几个方面完全是个新手小白,所以我是嫉妒我的朋友的。这篇文章将作为记录,回忆我是如何走上技术之路的。(这是我在Medium上写的第一篇文章,后面随着技术的不断学习,我也会持续记录)。
首先,我是谁?我是Nuno,今年16岁,来自葡萄牙。今天我想告诉你们关于我是如何成为一个全栈开发者的故事。
我并不认为我这个年龄的人成为程序员是很奇怪的。因为很多人都说他们乐意去制作像侠盗猎车手这样的电子游戏或像《皇室战争》这样的手机游戏。出于对梦想的追求,他们开始学习编码,进而喜欢上它,然后创建出自己的独立电子游戏。其次,随着市场上越来越多APP的出现,以及很多看似简单的年轻人一跃成为成为百万富翁(比如马克扎克伯格和埃文斯皮格尔),很多青少年可能也会想,“为什么我就不能尝试呢?”
当然也有人对代码感到害怕。例如,当我向我的兄弟姐妹展示我正在开发的代码时,他们直接回复“我根本搞不懂你在写什么。”我的妈妈看到我用C#编程后问我“是不是在做炸弹?”当然,她是在开玩笑,然后我就告诉她我正在编程。再举个例子,我的父亲不知道Python是什么,然后我给他写了一个简单的Python脚本。当我向他解释他必须单击该文件以使脚本运行时,他只是看着我并询问那是什么......
无论如何,即使代码看起来很可怕,但我想年轻人还是会对它产生兴趣的。而且现在,编程开始变得越来越简单——互联网上有大量可用的框架和库,它们可以被用来简化一切。代码并不乏味,但是学习它却不容易。
1
我是如何开始技术之旅的?
事实上,我一直都很热爱互联网和科技。我出生于2003年,所以在我接触计算机的第一年使用的是Windows XP。说真的,我超级喜欢它,它太棒了。我花了几个小时玩弹球之类的游戏,还用MS Paint画了很多杰作,沉迷于疯狂出租车、模拟人生等游戏。
我一直对技术感兴趣,而且我很想知道事情是如何运作的。
当我7岁的时候(印象中是),我得到了第一台专属于我自己的电脑。在葡萄牙,通常会给二年级的孩子们一台笔记本电脑。它通常被称为“麦哲伦” (指的是葡萄牙探险家费迪南德·麦哲伦),这是那个时代的孩子最想要的东西。它充满了教育课程,对7岁的孩子来说真的很棒。电脑上面运行的Windows 7,对我来说是宇宙中最精彩、最珍贵的东西。
用的时间长了,电脑不出意料的坏了。虽然我父亲把它送去过修理,但已经慢到不能用来玩电子游戏了。不过没关系,我还有一台台式电脑,虽然没有我的“麦哲伦”好玩,但最起码运行速度挺快。然后,一个不可思议的、改变我一生的想法就突然出现在我的脑海里:既然父亲无法修复我的电脑,但我或许可以用其中的碎片来创建我自己的个人视频游戏控制台?
那时我是那么的天真……
我读过一款名为OUYA的控制台,它的描述给我留下了深刻的印象:一个基于Android的全新控制台,可以自由修改和创建游戏。所以,我想创建一个我自己的控制台。
但是结果时显而易见的,我失败了——我根本没有足够的知识来创建一个这么大的项目。但在阅读了互联网上的一些文章后,我决定学习C语言和汇编来构建我的操作系统。
嗯,当时的我觉得这很容易......
好吧,猜猜怎么着?当我刚看完第一行Assembly(C#基础之一)时,简直就要崩溃了。这不是字面意思,但我想你们懂我——然后我就只能对我的控制台项目说再见了。
快进到几年后,一位朋友和我说,如果我们也能创办像微软或苹果这样的公司(我们只有13岁)相信会很棒!我们可以创建很多程序和应用程序,我们会出名,并且会挣大钱。(那时的我真的天真到不行......)
创建一家大公司并赚取数百万欧元的第一步是什么?没错,创建一个Facebook / Twitter页面,然后开始创建我们的应用软件和程序——但我们都不会编程,一点儿都不会,甚至连一行Python、Java、PHP、甚至C语言都不会写。
你可能会问,那我们做了什么?事实上,我们没有一个人去学习如何编码......但我们做了一系列事情,包括关注了一堆不值得信赖的YouTube视频、学习如何用Visual Basic创建网页浏览器等等,真的很有创意,对吧?然后我们创建了我们自己的浏览器!我甚至在Weebly上买了一个网站(而且我已经忘了当时的我是如何说服父亲给我买的)与全世界分享这个杰作......不过,没有一个人关注。
但是朋友们,这件小事却是我旅程的开始,也是我最终成为开发者的起点——第一次接触Visual Basic(虽然我年轻时曾尝试学习Java,但后来放弃了)并使用真正的编程(即使我是复制粘贴视频中的人所说的一切)。
2
我是如何真正开始我的旅程的?
现在我们可以谈谈正确的编程方式!
在这些愉快的经历之后,我意识到我必须学习如何正确编码,而不是基于一些随机的YouTube视频教我如何构建一个可疑的网络浏览器。Codecademy这个网站给了我很多帮助,它是目前为止整个互联网上最令人惊叹的编程学习网站之一。这让我想起了freeCodeCamp(这是我去年才知道的而且它也非常棒),但我相信在某些方面它使用起来可能更好。
我最先学习的是Python。Python简单,快速,有趣,可以学习和编写代码!之后,为了好玩我又开始学习PHP。我有一个PHP的天才朋友,他建议我入手的PHP。在很短的时间内,我开始了解PHP和Python的基础知识。但后来我无意间发现了一个YouTube频道,它极大地改变了我的开发生活。它的名字是CursoemVídeo,这是一个巴西频道,有很多编程课程,由一位名叫Gustavo Guanabara的优秀大学教师免费教授。
我参加了他们的第一门课程:算法和编程逻辑(对不起,这是我能想出的最佳翻译,我不确定这是否是课程的名称)。学习编程逻辑是我做过的最重要的事情之一,它帮助我理解了很多编程基础知识。然后旅程开始了。
之后我专注于学习PHP(OOP)、Java (我最大的梦想,因为我一直想构建Android应用程序)、HTML / CSS、JavaScript(现在非常重要)等等......差不多就是这样。我也试过学习一点C语言(只是基础知识),但学习过程中时常感到困惑。例如,我在理解指针的概念时遇到了很多麻烦。但现在我觉得我知道最基本的东西,我可以写一个基本的C程序。
3
第一份真正意义上的“工作”
完成所有这些工作之后,我并不开心。当我开始学习如何编码时,我最大的梦想是能够开发桌面和移动应用程序。出于某种原因,我不喜欢网站,我不知道为什么,直到今天仍然如此。
我的一个朋友(就是那个“帮助”我建立大公司的人,他也学过PHP)告诉我他知道一个人,他有一个很大的项目,这个项目有很大的发展潜力,可以成为一个真正的公司。但是,这个项目是一个网站。但当你13、14岁时,你并不关心这些事情。如果我朋友参与了这个大项目,那我自然也想参与其中,孩子们总是愚蠢和嫉妒的。
所以这就是我第一份“工作”的故事:我14岁,我是PHP、HTML / CSS和JavaScript的新手小白,而且我嫉妒我的朋友。
4
而现在呢?
我现在16岁了,我的旅程并没有结束(当然)。在意识到网页开发和移动开发是我的专长后,我开始学习更多关于PHP、数据库(MySQL和MongoDB)、API、JSON、HTML / CSS及其框架(Bootstrap,Sass / Less ......)以及一些Javascript (ES6,Node.js ......)方面的技术。在犹豫到底是选择AngularJS还是Vue.JS之后,我还决定学习React。这是有史以来最好的事情,因为我能够学习一些React Native,实现成为移动应用开发者的梦想。
现在,我可以说我知道以下技术:
HTML / CSS(和框架)
JavaScript(MERN堆栈,NodeJS等)
PHP(但不是Laravel,我很遗憾,我只使用CodeIgniter)
数据库(MySQL,MongoDB)
Java
Python
C#(只是一点点......它与Java类似,这很有帮助)
C(我不是每天都用这个,只是当我觉得需要用Arduino的时候)
API(如何开发REST API并使用它)
现在,我并不像以前那样专注于编程。我喜欢它,我仍然每天都在编程,但现在我还关注加密货币、企业和人工智能领域,我还想学习它们。我现在最大的项目是用Python编写的加密货币投资机器人,我认为它具有很大的潜力。此外,我对学习UI / UX设计和为网站开发出色的主题和设计同样感到非常兴奋。
5
结论
我真的希望你喜欢这篇文章。对于那些与我同龄并且正在考虑成为程序员的人,不要想,要做!到目前为止,这是我在知识和事业方面所得到的最大收获——你越早开始,就越好。
原文:https://medium.com/better-programming/how-i-became-a-16-year-old-full-stack-developer-10af18a8f6c7