About me [my way]

就要除夕了。假日的到来,心情瞬间就闲适了下来。早早上了床,看看电脑还有30%的电,想到一些事情,顺带纪录一下吧。

今年坚持上班到了除夕的前一天,爸妈来工作的城市陪我过年了。感谢他们。前几天就已经看帖子有说仍在上班的人都是屌丝,我今天自嘲一下,说我这种冒雪上班到旧年最后一天的人不是极品屌丝?开个玩笑 :)

今天有些触动,就给大家说下我的学习经历吧。可能对好多人来说并没有什么价值,我主要想要表达的意思是“不要太急,任何一个人都是从不懂到懂的。只要坚持做下去就好”。这句话给园子里不够自信的朋友们,也说给我自己。

所以,title就定个 About me,about my way。

我是10年本科毕业的,到如今工作将近3年。从一开始做的就是web 前端的方向。大学学的专业跟计算机有一点点关系,但是跟互联网几乎不沾边。所以几乎是以完全不对口专业的姿态开始了 web前端的工作。

正如我所说,任何人,都是从不懂开始的。我一开始确实是不折不扣的菜鸟。菜到什么程度,举个例子,html和css写一个活动推广的页面,一整天,还并没有搞定;javascript,可能连原生对象也数不全。所以以这样的姿态开始学习。

在工作的前几个月里,我是真的有一段日子,周末两天4~5罐泡面宅家里,泡前端论坛,看别人的代码片段(那时候还不具备看一个项目架构的能力),尝试按别人的思路实现同样的东西,再转换成自己的思路再实现一遍。不懂的地方google,遇到的想不通的问题再google。

这样的日子坚持了四五个月吧。现在想想,也应该算辛苦的,辛苦不在于花的时间,而在于心累,在于你要面对别人的压力,做项目的压力。等等。但是很开心我坚持下来了,在那默默无闻的四五个月里,我慢慢从一个看热闹的外行转变成了一个可以稍微看出点门道的内行。

于是,以应届生毕业的姿态工作了半年,记得转正的时候有同事用“一日千里”,“士别三日,当刮目相看”这样的字眼来形容我的进步。在我职业生涯开始的阶段,通过自己的努力,终于开始获得了一些别人的肯定。

不过那个时候,我的能力也仅仅在于开始能用原生的js代码编写一些常用的组件。可以从我在cnblogs开博的前几篇文章里可以看出。

cnblogs的博客是在10年9月份开始的。也就是我上面说的算新手入行的阶段开始的。

我的学习历程和重点从博文中基本也能看出大致路径。
[前端常用组件]-[css中布局中各种常用的方式和坑的积累]-[javascript语言底层的认知]-[javascript基础库]后来因为兴趣的转移,花了很长一段时间去做了动画相关的工作。从最基本的缓动,到dom的各种动画,实用的和不实用的。期间自然也就学习了一些简单的运动学相关的知识。也积累了不少代码片段。

再往后,开始顺着动画,接触了一些Html5相关的东东,从css3,canvas开始,做了不少尝试。大多的平日的test cases 都可以在 https://github.com/hongru/hongru.github.com 这里面找到。

正因为对于H5的各种新features的日渐熟悉,后面自然而然就过渡到做 web app相关的内容,在这个期间还顺带充实了下server端的不少东西,比如php,python之类的东东,包括nodejs之类的,搭个简单的blog木有什么问题。

pc端的web app 做了大概一年的时间,在今年9月份加入mobile团队,开始做基于mobile端的web app。到现在为止,也有小半年的时间,所以才有了上一篇博文。

我的学习路径大致如此。并没有什么特别,到如今,我依旧觉得在很多方向我仍然是菜鸟。可以去探究的方向太多。

我给一些在学习前端的朋友一些个人的经验和建议,不一定适合,也不一定对,仅做个人参考:

1)css并没有难懂的地方,关键在于积累。多去了解为什么要这么写css。比如几个很重要的css2.0中的属性,position,display,float,overflow 之类的,它们常用的值和应用场景,为什么要这么用,这么去组合,多思考对于攻克布局有莫大的好处。

2)学javascript可以尝试从一些简单的可实现的东西开始,比如怎么操纵一个dom元素,改变它的各种东西,让它动起来。然后过渡到写组件。我这里建议一定开始要从学习原生的javascript语言开始。当你开始尝试写组件的时候,就一定要开始注意代码的结构了。养成好的编码习惯非常重要,会极大的推动后续的学习进度。所以这个阶段建议找 国内外用原生js代码编写的 优秀的,高代码质量的js组件做参考。 思考为什么别人要这么写,这么去组织代码。

3)对js有一定认知之后,一定要深入系统的去了解语言底层,这时候建议买好的书系统学习,象什么犀牛书之类的,我就不多说了。了解语言底层的逻辑很重要。

4)当过了第三阶段之后,我建议可以尝试着阅读国内外优秀的js底层基础库的源码,并尝试自己实现一套。不用奔着想“造轮子”有多少人用的想法。而是实现这个架构和其中的代码细节对于自己的学习非常重要。比如我自己也有一套粗糙的js基础库 https://github.com/hongru/Leta ,但我并没打算将它应用出去,因为我它并没那么优秀,对我的意义在于实现它让我了解了国内外主流js基础框架的实现思路和大体架构。同时又是一份沉淀,当我某时想用某段代码时,直接找出来就能用。

5)在这个阶段,我强烈建议一定要及时补充后端语言能力和思路,了解别的语言,别的框架的架构和api实现逻辑。相互辅助,因为这时候你学其他的语言,入门也都变的容易,同时别的语言又能反过来加深对当前知识的理解。

6)再往下就可以根据自己的兴趣方向或者工作需求继续学习了。比如可以尝试继续基础技术,做基础工具,架构,平台。或者根据自己兴趣专注一个或几个方向,比如canvas,webgl之类的,或者再业务架构,项目深度优化上有所建树。

 

好了,电脑提示没电了,差不多也该睡了。洗洗晚安。

转载于:https://www.cnblogs.com/hongru/archive/2013/02/08/2909449.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/260010.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

明天要中秋节了,先来到简单“类”的题目

2-1 Point类的定义 Time Limit: 1000MS Memory limit: 65536K 题目描述 通过本题目的练习可以掌握类与对象的定义; 设计一个点类Time,它具有私有数据成员x(横坐标)、y(纵坐标);公有成员函数:SetPoint(int,int)用于设置点对象的值&…

实时数据交换平台 - BottledWater-pg with confluent

标签 PostgreSQL , Bottled Water , Kafka , Confluent , IoT 背景 想必大家都在图书馆借过书,小时候有好看的书也会在小伙伴之间传阅。 借书和数据泵有点类似,一份数据通过数据泵实时的分享给订阅者。 例如在IoT的场景中,有流式分析的需求&a…

科技鸿蒙系统一千章,第一千六百零七章 鸿蒙紫气,成圣之机 (上)

文学迷 > 玄幻魔法 > 天命神相 > 第一千六百零七章 鸿蒙紫气,成圣之机 (上)第一千六百零七章 鸿蒙紫气,成圣之机功德金身只要达到了八十一重天,大圆满的境界,实力堪混元大罗级别的圣人,这听起来确实是一件吊炸…

js reduce实现中间件_js数组高阶方法reduce经典用法代码分享

以下是个人在工作中收藏总结的一些关于javascript数组方法reduce的相关代码片段,后续遇到其他使用这个函数的场景,将会陆续添加,这里作为备忘。javascript数组那么多方法,为什么我要单挑reduce方法,一个原因是我对这个…

struts2的s:iterator 标签 详解

struts2的s:iterator 可以遍历 数据栈里面的任何数组,集合等等 以下几个简单的demo:s:iterator 标签有3个属性: value:被迭代的集合 id :指定集合里面的元素的id status 迭代元素的索引1:jsp…

Protocol Buffers的应用

1. Protocol Buffers的介绍 Protocol buffers are Google’s language-neutral, platform-neutral, extensible mechanism for serializing structured data – think XML, but smaller, faster, and simpler. You define how you want your data to be structured once, then …

编程提高:一天一道编程题

1.文本操作 逆转字符串——输入一个字符串,将其逆转并输出。 拉丁猪文字游戏——这是一个英语语言游戏。基本规则是将一个英语单词的第一个辅音音素的字母移动到词尾并且加上后缀-ay(譬如“banana”会变成“anana-bay”)。可以在维基百科上了…

android自验签名证书,没有以前的互联网连接,无法验证Android自签名证书

使用SSL基础架构:我们有一个有效的客户端/服务器设置,其中Android版本4.2和4.4的手机充当客户端,必须通过其自签名SSL证书验证服务器.问题:只要设备在尝试连接之前至少有一次互联网访问权限,服务器证书验证就会起作用.但是,如果执行恢复出厂设置且设备直…

asp.net缓存(二)

ASP.NET页面局部缓存 有时缓存整个页面是不现实的,因为页的某些部分可能在每次请求时都需要变化。在这些情况下,只能缓存页的一部分。顾名思义,页面部分缓存是将页面部分内容保存在内存中以便响应用户请求,而页面其他部分内容则为…

学习C# - Hello,World!

第一天学C#,开始学着写一些学习笔记,看了一下传智播客的视频,按照传智播客的教学顺序,开始学习。 class Program{static void Main(string[] args){Console.WriteLine("Hello World!");//自动添加回车换行Console.Write("Hell…

android获取button宽度,android – 如何获得Button的高度和宽度

我创建了一系列按钮.现在我想找到按钮的高度和宽度,为此我使用了getWidth()和getHeight().但问题是它总是返回0.为什么会发生这种情况?我发送了我的代码,请检查是否有任何问题.int x,y;LinearLayout layoutVertical (LinearLayout) findViewById(R.id.liVLayout);L…

java执行sql列名无效_嵌套异常是java.sql.SQLException:无效的列名ORACLE

我尝试在Java中使用JdbcTemplate执行以下oracle查询:select RESOURCE_IDfrom REPRO_PRINTING_JOBwhere (USER_ID? and PRINTING_CENTER_ID?)group by RESOURCE_IDunion allselect RESOURCE_IDfrom REPRO_PRINTING_JOB_OLDwhere (USER_ID? and PRINTING_CENTER_ID…

(七)Maven使用的最佳实践

这里说一下在使用Maven过程中不是必须的,但十分有用的几个实践,关键时刻或许能解决您的问题。 1.设置MAVEN_OPTS环境变量 通常需要设置MAVEN_OPTS的值为-Xms128m -Xmx512m,因为Java默认的最大可用内存往往不能够满足Maven运行的需要&#xff…

android beam传输速率,无线网络的速率为何不能达到最大值

1、无线速率可以达到最大值,只是发送速率和传输流量是两个概念,通俗点讲,无线的发送速率是把信号以指定速率发出去(信号好的时候以高速率发,信号差的时候以低速率发)。传输流量是指单位时间内传输的数据量,大部分用户关…

【SMTP 补录 Apache服务】

【补录,续】1.【配置空壳邮件接受】【mta】【前置:在/etc/named.rfc1912.zones 添加一个可以接受邮件的域hxl.org(与你数据库中写的向对应),这个域的所在ip就是你机子的,因为要从你的机子转发】 【配置该机的vim/etc/…

image打开rgb16 qt_QT中显示图像数据

一般图像数据都是以RGBRGBRGB……字节流的方式(解码完成后的原始图像流),我说成字节流,那就表明R,G,B的值各占一个字节,在编程时表示的就是unsigned char * data。我们先来看一下QT中的QImage对象。在加载data数据前&a…

开启chrome默认支持ipv6

在快捷方式后面的属性后面输入 --enable-ipv6 以下为转载: [转载]chrome开启或关闭IPV6方法 (2012-05-27 17:54:06) 转载▼ 标签: 转载 分类: 技术 原文地址:chrome开启或关闭IPV6方法作者:余鲲涛 chrome和firefox都是…

Nginx安装部署

转:http://www.cnblogs.com/zhuhongbao/archive/2013/06/04/3118061.html Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开…

android ble 连续读写,Android BLE实现对蓝牙的读写

【实例简介】通过修改官方的demo实现对蓝牙的读写操作,详细http://blog.csdn.net/chenfengdejuanlian/article/details/45787123【实例截图】【核心代码】BluetoothLe_demo0└── BluetoothLe_demo0├── AndroidManifest.xml├── bin│ ├── AndroidManife…

一分钟经理人

原创2016-12-0858沈剑 零、缘起近期公司再做管理者培训,偶老大推荐了一本薄薄的《一分钟经理人》,斯宾塞.约翰逊,花了1小时读完有感,沉淀一篇阅读笔记,故有此文。一、前言常见经理人有两类:(1&a…