阅读更多

13顶
0踩

研发管理

转载新闻 Web开发者职业生涯的11个阶段

2013-04-03 13:42 by 副主编 WnouM 评论(7) 有16199人浏览
Web开发者的职业生涯有许多斜坡,这陡峭的学习曲线,你完全可以从中经历从沮丧到启发再到自以为的心态起伏。本文将会通过一些有趣的动态图来描述这其中的各个阶段。

1.  小白



在职业生涯的早期,通常都不知道自己要做什么。就像离开水的鱼,每一行代码都是一个谜。Doctype?<div>又是什么东西?第一个阶段是一个吓人的、可怕的但是令人兴奋的过程。是有多少可怕的语言啊?

但是,你最大的优势也许就是你永远不知道你前面的坑有多深。学习HTML是往前迈出的一小步。

2.  迈出第一步



尽管需要一段时间,但是你最终就会开始进入到Coding的世界。第一阶段是压倒一切的“怎么/从哪开始”的阶段,而第二阶段就是你慢慢开始建立属于自己的技能集。当然,CSS的语法定义风格仍让你觉得不能适应,但至少你在编辑器里修改代码之后能够在浏览器即时看到效果。这是一个奇妙的感觉!

3.  彻底挫败



想象在山洞里迷路,用手电筒环顾每个隧道来搜索一个出去的路。没走一步,你都希望看到一丝微光。不幸的是,我们这个行业的学习曲线是最陡的。很抱歉地告诉你,这些光不会持续很久。预计花费数百小时在这个阶段,当你想要弄清楚各种让你抓狂的东西时,就去阅读各种技术书籍,并反复阅读。

如果这种挫败感来得势不可挡,找到在我们职业生涯中以某种确切的方式应对的平和的态度。你不是一个人,坚持下去,不久之后,你就会到达惊喜时刻。

4.  惊喜时刻



惊喜时刻是这个世界上最好的感觉之一:那种短暂的瞬间就是,突然间,你做到了!“哈哈哈,我现在明白了!”就我自己来讲,我通常都是在其他人都在睡觉的晚上在Coding上有这种突破的惊喜。通过反复阅读,曾经模糊的东西到现在,至少一些是变得清楚的。

这是一个于所有的技术和语言你开始学会点击的阶段。

5.  如履薄冰



就像上一个阶段一样,如履薄冰阶段时间也很长。在这个阶段,你能够成功的构建应用程序,并实现想要的结果。你实现的方法中代码通常很长,而且你脑海中尚未形成测试的概念。

但至少你能做出实例。这个时候,保持你的Github的请求限制在稳定和错误修复。并且不要低估这样做的价值。

6.  照猫画虎



模仿阶段很重要。没有什么比阅读你心中的大神的代码,甚至一行一行地敲到自己的编译器里来学习Coding来得更有效了。不要觉得这样不好,每一个艺术生涯都有去模仿的阶段!幸运的是,GitHub已经使这种形式的沉默的嫉妒比以往任何时候都来得容易。当然,模仿不会带你走到很远,但是这是一个很好的开始。模仿那些能够激励你的人,最终你会形成自己的风格。

7.  得意忘形



在这个阶段,你终于到达一个槽里。确实有巨大的改进空间,但是你的信心也在迅速膨胀,或许这样太快了。人们常说,在刚开始,你都还不知道自己有多渺小!

在这个阶段,忍住变得过于自信的冲动。这对谁都没有好处,只能让更有才华的未来的你在回忆的时候连连摇头。当你想要在别人的GitHub、Reddit或者StackOverflow页面上留下讽刺的“哥们,学学怎么Coding吧”的评论时,千万别这样做。不久前,你也只是一个完完全全的小白。鼓励,而不是打击别人。我们都在一条战线,只是在不同的阶段而已。

8.  学习神器Vim



如果你曾经在一个开发者的旁边,惊奇于其在代码编辑器操作的速度时,有可能,他们用的是Vim。尽管它的学习曲线同样陡峭,但是一旦你达到山顶,你的工作流程对于旁观者来说就会像变魔术似的。

这是你开始驾驭你的Coding技术和工作流程的阶段。合适的工具跟技术一样重要。

9.  当代码成为艺术品



虽然这需要数千小时,但是有一天,你会看到自己的代码轻松通过调试,拍着自己的大腿嗷嗷:“艾玛,劳资太油菜了,这TMD简直就是艺术品”。你的代码采用了版本控制,是很好地抽象的,完全可测试的、可伸缩的和易读的。在你的职业生涯的某一个点上,你可能会为集中于写出让人困惑的但是有效的代码。利用每一个可能的语言怪癖和隐藏功能并不意味着称得上一个成熟的开发者。只是为了展示自己打出来的包有多聪明而迁移简化复杂的逻辑甚至到只有一行代码,也是不可取的。这意味着你是一个傲慢自大的开发者,不为将来的代码维护者考虑。

代码变成艺术品的同时,要保障其可读性能够保障其能够顺利地被执行。这个阶段,你的代码是为人而写,而不是为机器写的。

10.  驾轻就熟



当Coding成为一种本能,恭喜你,你已经到达职业生涯的下一个阶段。不再思考语言或者框架层面的问题,而是你能轻松地看出问题,并从你的开发工具箱中选择正确的工具来提供解决方案。一个老练的开发者懂得为什么牛仔路径很少是正确路线。每一个新特性都是经过项目组员的讨论,准备白板,撰写梗概,并生成测试,这些工作都是在开始Coding之前完成。

你已经成为一个成熟的、经过深思熟虑的并愿意与其他人一起工作的开发者。祝贺。

11.  摇滚明星



很少有人达到这个阶段。摇滚明星阶段就是职业生涯的巅峰。除了你的工作,你经常在会议上发言,作为无数流行的开源项目的领导者。同时还抽时间参与邮件列表,帮助IRC上的新人,为web的未来做贡献。你是为了兴趣而编写编译器和词法分析器的人。

你被别人称为摇滚明星或武林高手,尽管你讨厌这样的标签。同时,你比其他人都清楚还有很多东西需要学习。

原文地址:The 11 Phases of a Web Developer’s Career / 翻译:seansevn
  • 大小: 1.5 MB
  • 大小: 3.4 MB
  • 大小: 444 KB
  • 大小: 2.4 MB
  • 大小: 2.7 MB
  • 大小: 2.4 MB
  • 大小: 3.2 MB
  • 大小: 1.5 MB
  • 大小: 2.5 MB
  • 大小: 2.6 MB
  • 大小: 3.4 MB
13
0
评论 共 7 条 请登录后发表评论
7 楼 jspc 2014-02-16 11:48
很好,现在走到6 --7  阶段
6 楼 gbj_2008 2014-02-07 16:39
亮点在图片啊
5 楼 dacoolbaby 2013-04-07 09:21
有意思的图片~~
4 楼 云上太阳 2013-04-05 15:51
这是哪位大神总结的,真相啊。。。我现在就在第六阶段照猫画虎。前面的都跟我对上了。。。哦滴神啊啊
3 楼 wolfmaster 2013-04-04 11:06
阶段。。    
2 楼 geminiyellow 2013-04-03 14:32

难道不是
引用

改Bug,Bug,Bug,Bug,Bug,Bug,Bug,Bug,Bug,Bug,Bug
改Bug,Bug,Bug,Bug,Bug,Bug,Bug,Bug,Bug,Bug
改Bug,Bug,Bug,Bug,Bug,Bug,Bug,Bug,Bug
改Bug,Bug,Bug,Bug,Bug,Bug,Bug,Bug
改Bug,Bug,Bug,Bug,Bug,Bug,Bug
改Bug,Bug,Bug,Bug,Bug,Bug
改Bug,Bug,Bug,Bug,Bug
改Bug,Bug,Bug,Bug
改Bug,Bug,Bug
改Bug,Bug
改Bug,Bug,Bug,................,Bug,Bug,Bug,Bug

1 楼 jiangwenxian 2013-04-03 14:26
赞一下吧,不错的文章。

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • 整理: MyEclipse 5.5 实战教程(持续更新,转帖)

    引用自:BeanSofts Java Bloghttp://www.blogjava.net/beansoft/archive/2007/09/04/142716.html 此贴乃是将以前所发的几个零散的短文以及视频...启航 - 第一次接触 MyEclipse MyEclipse + Tomcat 开发视频: 下载,安装

  • 基于java的俄罗斯方块小游戏设计(含源文件)

    欢迎添加微信互相交流学习哦! ... 题 目 小游戏开发 ... 俄罗斯方块是我们最常见的游戏之一,该...一般的俄罗斯方块规则比较简单,游戏中随机出现一些方块,再对这些方块进行变换,下降到游戏界面中的不同位置,如...

  • 基于JAVA SSM框架的酒店客房管理系统设计

    随着信息需求的增长,传统的信息交流方式早已不能满足企业对传递和处理大量信息的需要,因而亟需把网络技术渗透到日常生活中。在当代快速发展的社会里,无处不见酒店,酒店客房管理系统的开发势在必行。随着计算机的...

  • 基于java百货中心供应链管理系统(含源文件)

    近年来,随着计算机技术的发展,以及信息化时代下企业对效率的需求,计算机技术与通信技术已经被越来越多地应用到各行各业中去。百货中心作为物流产业链中重要的一环,为了应对新兴消费方式的冲击,从供货到销售的...

  • 基于java的汽车租赁管理系统的设计与实现(含源文件)

    欢迎添加微信互相交流学习哦! ... 摘 要 随着汽车工业的发展和汽车在现实生活中的普及,汽车租赁成为近年来兴起的一个新行业。为规范管理和经营行为,减少经营成本,提高...本系统使用MySQL数据库和Java语言实现了一

  • 基于java固定资产管理系统设计(含源文件)

    38 5.4 系统中其它要注意的地方 38 5.5 固定资产管理系统的测试 39 5.6 本章小结 39 结 论 40 致 谢 41 参考文献 42 前 言 随着社会经济的迅速发展和科学技术的全面进步,计算机事业的飞速发展,以计算机与...

  • 基于java的科研信息管理平台

    图1 科研信息管理功能结构图 2 相关技术介绍 2.1 开发平台 2.1.1 MyEclipse MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对Eclipse IDE的扩展,利用它我们可以在数据库和J2EE的...

  • 基于jsp的高校网上订餐系统设计与实现(项目报告+答辩PPT+源代码+数据库+截图+部署视频)

    发展到现今社会,人们的饮食方式不再局限于传统的在饭店中就餐,越来越多的人开始使用网上订餐,网上订餐已经成为当前十分流行的就餐方式。本课题剖析当前形势下的订餐系统以及当前已开发出的订餐系统,例如美团外卖...

  • MVC 洋酒销售系统的设计与实现java jsp 程序设计 课程设计 毕业设计-附源码02135

    MVC 洋酒销售系统的设计与实现java jsp 程序设计 课程设计 毕业设计-附源码02135

  • java毕业设计——基于java+JSP+MySQL的健身俱乐部会员管理系统设计与实现(毕业论文+程序源码)——健身俱乐部会员管理系统

    大家好,今天给大家介绍基于java+JSP+MySQL的健身俱乐部会员管理系统设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦。文章目录: 项目难度:中等难度 适用场景:相关题目的毕业设计 配套论文字数:28015...

  • ssm中小企业仓库管理信息系统毕业设计源码

    The system uses MySQL database management software and MySQL as the development platform of the system, and uses Java language for program development. It has a friendly user interface, which is ...

  • 2022IDEA的下载、安装、配置与使用

    idea介绍、相较eclipse的优势,idea下载与安装,idea常见配置:设置主题、设置自定义主题,idea设置鼠标滚轮修改字体大小,idea设置自动导包功能,idea设置显示行号和方法间的分隔符,idea设置不区分大小写,idea...

  • (附源码)ssm中小企业仓库管理信息系统的开发与实现 毕业设计150916

    本设计为一个基本的仓库管理系统,程序功能比较简单,贴近实际。...本系统是采用MySQL数据库管理软件和MySQL作为系统的开发平台,使用Java语言进行程序开发。拥有友好的用户操作界面,方便各企业使用。

  • 基于JSP的JAVA email邮件系统研发

    由于网络中邮件管理系统繁多、业务需求多变,基于各邮件服务器的邮件管理系统的维护和业务变更变得难以进行。为了极大地方便上网用户,系统使用了B/S技术来进行开发,避免了原有的C/S结构开发所带来的弊端。并且将E-...

  • 基于java医院门诊管理系统设计

    本系统采SQL server2000为后台数据库,以MyEclipse 6.5为前端开发工具,以TomCat 6.0为服务器,采用MVC三层开发框架。系统实现了挂号管理、处方管理、收费管理、药品管理等必需的功能,其操作简单、功能完善、运行...

  • 基于java企业门户网站设计与实现

    JDK即是Java 2 software Development Kit的简写,是基于Java开发平台的软件开发前提。现在将描述下在windows的操作系统上,如何安装和配置JDK 1.6的过程介绍如下。首先需要从Sun公司的官方网站...

  • 基于java的校园网站论坛设计与实现(含源文件)

    获取本设计资料源文件,联系Q:1225467431,指导毕设,课设 ...同时本系统通过运用开源框架的优势,在很大程度上解决了系统开发中过于繁琐的数据转换、异常处理及事务处理等问题,简化和集成了系统框架,整改和完...

  • 第一章 搭建Struts2开发环境

    Struts2概述  在Struts的官方网站上,写...Apache Struts 2 is an elegant, extensible framework for creating enterprise-ready Java web applications. The framework is designed to streamline the full devel...

  • 企业门户网站的设计与实现(含源文件)

    3.3 配置软环境 3.3.1 安装配置JDK开发包 JDK即是Java 2 software Development Kit的简写,是基于Java开发平台的软件开发前提。现在将描述下在windows的操作系统上,如何安装和配置JDK 1.6的过程介绍如下。首先需要...

Global site tag (gtag.js) - Google Analytics