3年盲目编程。第1部分

祝大家有美好的一天!我想分享“输入IT”类别的经验。而且,它是在完全非视觉模式下进行的。对我们社会的盲人知之甚少,甚至对盲目程序员所知甚少。并且即使使用我的示例,本文也提供了跟踪它们的来源和方式的信息。



该文章没有任何实际用途。除非有人能在她的帮助和拖延中获得一点动力。



开始



我熟悉9年级的计算机科学课程的编程。到那时,由于先天性疾病,我的视力几乎耗尽了,并且几年来我一直在接受家庭教育。那里有很多空闲时间,但很少有有趣的活动。因此,我怀着极大的兴趣学习了一个新学科。编写程序就像解决数学问题一样。但是这里的问题可能是独立提出的,最后有一个代码可以在没有您的情况下解决它。没错,一开始,直到我学会用耳朵操作计算机的那一刻,它才一直在我的脑海中。



学校结束了。我什至参加了计算机科学考试,于是我被这个学科所吸引。另外,直到最近还不清楚进入哪所大学。我和我的父母对高等教育的需求都没有任何疑问。目前尚不清楚选择哪个方向。



一方面,我一直热衷于数学和科学。但是,一个看不见的人怎么能在那里露面呢?仍然有可能继续朝着IT发展。但是结果,选择了一个更妥协和通用的管理。此外,在该专业的一所大学中,存在远程学习。这就消除了现在搬到大城市的需要。所以最后发生了。但是经过一年的学习,未来的就业问题变得更加清晰。



我几乎无法想象自己是一名经理。我该怎么办?我能实现自我吗?通常,对于盲人来说,选择职业是一项不平凡的活动。许多人去按摩治疗师和相关医学。有人可以对文本进行翻译和其他工作。通常,您可以尝试许多地方。但是,始终存在很大的风险,那就是面对重要事物的可用性不足。



我认为,与计算机一起工作正是盲人能够很好地表现自己的方向。首先,他们必须非常了解他。与普通用户相比,使用屏幕阅读器需要对操作系统,键盘,热键和程序有更深入的了解。立即研究专业课程中的相同触摸类型。还有其他方式,您仍然无法窥视。



其次,大多数程序和几乎整个Internet都可以通过键盘以及使用鼠标来访问。这意味着盲人在执行日常任务时不会落后很多。而在某个地方,由于对该主题的更深入的了解,使其超越了其他领域。



好吧,第三,我只是喜欢它。因此,到第二年,我回到了编程领域,但其坚定的目标是成为编程专业。



训练



我深信,初学者的主要问题是他不知道实际上是什么现代编程。在我的存钱罐中,我有一所学校的课程PascalABC.net,教科书中有数百个已解决的问题。但是真实的程序是用其他东西编写的,对吗?还有什么?以前听到的是:C ++,java,C#。它们之间的区别以及它们的用途尚不清楚。我从C ++开始。我从某个地方挖出了一本教科书,作为一个半开玩笑的怪异基调的介绍,作者讨论了Java虚拟机现象,垃圾清理和不安全的C#模式,IDE,编译器和我们需要工作的库的优缺点。



在阅读了前几章之后,很明显,本教程不是为我编写的,现在我已经看不懂了。需要一位导师。他被发现了。



盲人邮件列表中的一些狂热者宣布专门针对此类受众开放编程课程,并愿意选择他们想要使用的技术。毫无疑问,我投票支持C ++。什么是php和网络开发尚不清楚,游戏制作似乎是一件轻浮的职业。但是最后PHP赢了。可能是因为自制的Internet投票系统从未受到过任何重复保护。



因此,我发展的动力不由自主地转向了网络。该课程本身仅持续了一个多月。在一些零星的会议中,我们只有时间了解html的基础知识。最后一个甚至在php中写了几行。但是组织者-慈善家的热情迅速下降,上课的人数越来越少。最后他们完全停了下来。但是方向已经确定,然后我可以自己跟随它。但是,这个问题仍未解决。程序员应该确切知道什么?



在Internet上,您可以找到任何简单问题的解决方案。但是,从阅读许多狭窄的文章来看,整个画面并没有加在一起。然后在我的路上有视频课程。

我已经阅读了很多关于它们的意见。负面的情况更多。这绝对是浪费时间和金钱。实际上,他们以神话般的诺言吸引自己的东西,除了毕业生对他现在是一名发展大师的信心之外,什么也没有给。当然,课程是不同的。但是在那一刻,我遇到了非常好的材料,借助它们,我在2个月内弄清了基本的php结构,表单处理,授权,会话,cookie,使用数据库,oop和mvc。最重要的是,他以全面的方式做到了。每个元素补充了服务器开发的整体情况。在此阶段结束时,我已经可以使我的网站具有非标准逻辑,并且感觉像是位真正的专家。初学者,但对下一步的发展有扎实的了解。



首要任务



但是首先有必要尝试将现有知识应用到实践中。自我完善和发展是无止境的。但是专业性涉及实践中知识的应用。另外,立即获得结果是继续努力的巨大动力。好吧,我当然感到有必要向自己证明我确实可以做到。



最好的方法是通过自由职业。我在多个交易所进行了注册,并开始跟踪订单。然后出现了一件有趣的事情:几乎所有这些都是关于前端或关于php的。在那之前,我秘密地后悔接受这个方向。我不太喜欢脚本语言。它没有Pascal的严格要求,没有编译,您也不会在其中编写PC应用程序。在我看来,这正是发展的方向。但是自由职业者和偏远的就业市场已经调整了我的位置。不久,我实际上收到了第一笔订单。



需要在crm上制作一个特殊的自定义页面。它应该在应用程序上显示数据并以一种特殊的格式工作,并且用户应该能够用标记对其进行标记。Crm本身没有解决此类特定任务的内置功能,但它允许使用其自身编写的语言php扩展其功能。



只需说我完成了为期两周的一两天的任务就足够了。主要原因是出于习惯,很难确切地了解crm的工作原理。并在其中可以看到她的数据库的架构。但是最后,所有要求都得到了满足,客户对此感到非常满意。因为,正如我稍后意识到的那样,其他开发人员根本不想承担这种责任。



构架



但是,“自由职业之王”并不是在旅途开始时启发我的标题。需要更强大的体系结构,而严肃的公司则需要借助它们来创建复杂且技术先进的用户服务-框架。我在视频课程中听到过这个词,两位老师都说这是他们工作的主要工具。显然,有必要朝这个方向前进。



首先,研究了代码点火器。它是我们在课程中自行制作的mvc框架的修改后的副本。就像软木塞一样简单,但是已经可以制作真实的网站了。但是,我在订购某些服务的第一订单时就熟悉了它们的质量。我几乎不会忘记这700行控制器操作代码。当然,您可以在任何内容上编写错误的代码,但是CI似乎只会激起它。难怪他已经过去了。



此外,在我之前,像每一个体面的旅行者一样,开了3条道路:yii,laravel和symfony。经过简短评估,我选择了后者。当然,纯粹出于主观原因:

  1. 我真的很喜欢通过注释的文件夹结构和配置。
  2. 在互联网上的评论中,人们对他的尊重得到了尊重。在我看来,它是一种功能强大且非常复杂的工具。有时力量过大。但是,掌握了它之后,您总是可以稍微看一下php世界沙箱中的游戏。


我开始学习。掌握新平台的最佳方法是在其上做一些有趣的事情。回到学校后,我写了一个程序供我弟弟学习计数。一个随机数发生器和四个基本算术运算。孩子解决了给定数量的示例,最后计算了错误数量并给出了分数。在培训的某个特定阶段非常有用的事情。现在,它可以在新技术水平上实施。



花了很多时间。我做了,并进行了改造。同时,交响曲正在重塑我的大脑,因为我根本不想放弃本质上推容器的想法。我弄清楚了它的许多组成部分。从版本3升级到版本4,并研究了git。大约六个月后,我检查了将我的超级应用程序投入使用的粉红色梦想的现实。我对零结果感到有些不满,意识到现在是时候进入下一个阶段了-寻找真正的工作。



未完待续。



All Articles