Tag: Cody Engel

软件工程:成瘾者的天堂

直到我大学一年级才开始开发者的旅程。 我曾在高中尝试过编程课程,但我的学校似乎并不太热衷于。 我确实参加了很多数学和科学课程,以及一些动手实践的贸易课程,例如木工和焊接。 我喜欢解决逻辑难题,玩视频和棋盘游戏,并且通常喜欢任何需要策略或批判性思维的东西。 自然,我对软件开发事业非常感兴趣。 当我上大学的第一门计算机课程时,我已经下定了决心要在本科期间完成两件事:1)获得计算机科学学位; 2)了解有关软件的所有知识。 获得学位是一个非常直接的目标,但是我显然不明白完成2分几乎是不可能的,我可以花整个职业生涯来实现这一目标。 当您决定进入基于STEM的职业时,会发生一件有趣的事情。 您可能会想,“我将获得<在这里插入工程专业的学位,然后我将完成学习。” 90秒钟内您都是正确的。 在科技行业,现实世界看起来就像我上大学时熬夜的时候一样,学习新的语言并完善我最近获得的技能。 学习所有的东西 我从学习Basic开始,然后转到Python,C,C ++和SPARC Assembly。 我自学了HTML,CSS,PHP,Javascript和SQL,因此可以找到一份兼职工作。 从那里开始,螺旋式失控。 每个学期,我都用一到两种“熟悉的”语言进行编码,并用三到四种对我来说是新的语言进行编码。 在大学三年级结束时,我已经用大约16种语言工作。 这帮助我找到了新的编码机会,但是这也使得在面试中保持所有语法的一致性非常困难。 上大学的最后一年,我已经尝试了足够多的语言,我的高级项目将有很多选择。 现在回想一下, 如果我没有花时间继续寻找新的语言来学习,那么我可能会陷入对我的高级项目和职业生涯的一条单一道路。 我觉得很多人都认为,如果您拥有计算机科学学位,那么选择一种新语言就变得微不足道了。 当然,我们学会了很多理论,并且学习了语言在幕后的实际工作方式,但是我认为实践最终使每次选择一种新语言变得更加容易。 您会开发使学习过程本身成为可能的技能和习惯,而不是始终知道要学习什么。 迅速陷入深渊 在我作为iOS开发人员的职业生涯的几年中,Swift的第一个版本发布了。 在那段时间里,我几乎一直只在Objective C中工作,没有真正接触其他语言。 斯威夫特出来时我的下意识反应是奔跑。 奔跑无处不在,并坚持使用过多的括号和混合C代码。 Swift刚问世时,我对此表示怀疑。 我看不到如何实现我想要的一切,而且我当然无法像在Objective C中那样快地工作。实际上,我大多只是害怕抛弃对Objective C的熟悉而继续前进新的和不同的。 如果我学不到该怎么办? 如果我在Swift方面不如在Objective C方面成功,该怎么办? 这能使我失去工作吗? 让我们花一些时间来谈论这些问题。 如果我学不到该怎么办? 这太荒谬了-我已经训练自己超过五年了,能够快速,成功地学习新事物。 教育的大部分好处不一定基于我所学的知识,而是基于我的学习方式。 我应该能够做出真诚的尝试来学习Swift。 如果我在Swift方面不如在Objective C方面成功,该怎么办? 这能使我失去工作吗? 简短的回答:绝对可以。 我的一部分工作是编写不会被逻辑错误困扰,易于维护且不会充满误用概念的代码。 如果我无能为力,那么我不应该从事这项工作。 掌握新技能并紧跟最新技术是我高效完成工作的方式。 如果 我无法学习,我将无法做更长的工作。 […]