资讯专栏INFORMATION COLUMN

我从编程教室毕业

wind5o / 2533人阅读

摘要:本文的作者是之前编程教室的实训生之一,原本在汽车制造车间里工作,后来成功转行为一名程序员,从事车载语音识别相关软件的开发。通过编程教室的公众号看到先生招实训生的公告,毛遂自荐之后拿到,然后从就职的车企辞职,来到上海。

这篇文章在我的草稿箱里躺了有一年多,今天总算是发出来了。本文的作者是之前编程教室的实训生之一,原本在汽车制造车间里工作,后来成功转行为一名程序员,从事车载语音识别相关软件的开发。这是他个人转行过程中的一些经验分享。  

今天发这篇文章的另一个原因,是文中的这个 实训生计划,又开启了Crossin 本人线下指导,不收费用。 如果你对此有兴趣,在看完前人的经验之后,可 移步公众号(Crossin的编程教室)了解一下

希望编程教室的存在可以让更多人走上自己想要的路。

*

2017.9.27 我从编程教室毕业

我叫周鑫鑫,如果你经常关注“ crossin的编程教 室”公众号的话,那你应该对我有印象,编程教室一些文章出自我手,2017.9.27 我从编程教室毕业,去到一家语音识别相关的公司,开始新的征程。

2016.9 通过编程教室的公众号看到 Crossin 先生招实训生的公告,毛遂自荐之后拿到 offer, 然后从就职的车企辞职,来到上海。

经过一年的学习,机缘巧合通过猎头知道目前的公司产业跟汽车有一定关系,个人非常感兴趣,最终也顺利拿到 offer,Crossin 先生了解之后也非常尊重我的意愿,然后让我总结一下这一年,给编程教室的学员以及想转行的同学一个参考。

说实话,我是很幸运的,在 Crossin 先生的指导下完成从新手程序员到初级程序员的过程。有工作经验的同学都应该清楚,在新手阶段有大神带会成长得非常快,事实也是如此,每当遇到困难的时候,写代码没有头绪的时候,找 bug 找的心累的时候,Crossin 总会给出适时的建议,真的是说不完的感谢。

还在编程教室学习的同学,请好好珍惜手上的资源,好好利用起来。

接下来是正文

这一年,都做了什么

凭着记忆我大概回忆一下,这一年我都学习了哪些内容:

Python 基础:

笨办法学 Python

Crossin的编程教室 图文教程

廖雪峰 Python 教程

Python标准库保守估计 10% 内容

伯克利 cs51 课程

SICP 前 3 章

Python 核心编程前 5 章

Data Structures and Algorithms Using Python

Fluent Python

Web 端:

Django 1.10 60% 的官方文档

W3S Css 教程

W3S Html 教程

W3S Javascript 教程

W3S jQuery 教程 3 遍

Bootstrap 官方文档 3 遍

微信小程序官方文档

echarts 官方文档 3 遍

爬虫端:

requests 官方文档

scrapy 官方文档 60% 的内容

bs4 官方文档 3 遍

pyquery 官方文档

其中 web 和爬虫知识大部分转化为了项目:

Crossin的编程实验室

http://lab.crossincode.com/

其他:

peewee 官方文档 60% 的内容

jieba 官方文档

leetcode 刷题 60+

Mysql 必知必会

google + stackoverflow

Crossin 先生的言传身教

其实可以看出,我是个忠于官方文档的开发者,以上提到的官方文档并不只是走马观花的一掠而过,而是实实在在的 把文档中给出的示例代码都敲过一遍 ,虽然费时费力,但的确物有所值。这一年算努力,不算拼命,这是自己对自己的评价。

基础,程序员的立身之本

因为针对的是 Python,所以这里讲的基础至少为 数据结构与算法 + 熟练使用Python 。其实在日常的开发中,很少会遇到高深的算法或者复杂的数据结构,但还是得抽出时间学习。

有两本进阶书籍切切实实的帮助到了我,不管是在找工作方面还是学习编程方面。一是 Data Structures and Algorithms Using Python, 然后是 Fluent Python ,看完前者可以去 leetcode 开始刷题,看完后者你会对 Python 这门语言有一个全新的认识。

以我目前的基础知识,还远远谈不上扎实,只是说应付普通的开发工作足矣。在接下来的日子里,还需要花时间精力深入下去。

一些方法

在这一年的学习过程中,个人认为一些好用有价值的方法:

1. 不停地写代码

快速提高编程水平的方法就是不停的写代码

编程一年,我在 github 上建立了 26 个仓库,近 300 次 commit 。不停的做一些小的项目,不管是 django 也好,爬虫也好,小程序也好,前端也好,都在不停的学习,不停的写。这对我在编程方面的成长非常重要。

以下的几个方法都是在勤写代码的基础上总结出来的。

2. 扩展阅读

这一年我读了很多文档 ,其中一些比如 bs4 / requests 文档是一次性从头到尾读一遍,另外还有一些是不可能一次性读完的,比如 Python 标准库, Django官方文档,scrapy官方文档等等。

对于某些庞大文档,要抱着打持久战的准备, 一个很好的方法就是一次读完一个 topic , 比如有一次 Crossin 先生让我写一篇关于有序字典(OrderedDict) 的文章,了解到 OrderedDict 是 collections 下的一个数据类型后,我顺便就把 collections 下的所有数据类型简单过了一遍。之所以提到这个是因为在面试中,我用 collections.Counter 解决了一道编程题,面试官继续问我关于 collections 还了解哪些内容?我反手就开始如数家珍地讲起 namedtuple/Userdict/DefaultDict/ChainMap 等等。

同样的道理适用于 Python 标准库中的 re 模块,functools 模块,itertools 模块,random模块等等, 不用每次都详细地过一遍,这很费时费力,但至少有个印象 ,之后再次遇到的时候,再仔细阅读,反复几次下来,自然而然就可以信手拈来了。

3. Pythonic

来自知乎: Pythonic 就是以 Python 的方式写出简洁优美的代码。

来自我: Pythonic 的程度就是对 Python 的熟悉程度。

举几个简单的例子,就可以体会到:

1、1 到 100 求和:


# 普通方法 
total = 0 
for i in range(1,101):
    total += i
print(total) 
 
# Pythonic 的写法: 
print(sum(range(101))) 

2、 两个列表以键值的形式生成字典:


s1 = ["a", "b", "c"] 
s2 = [1, 2, 3]  
# 普通方法 
dct = {} 
for i in range(len(s1)):    
    dct[s1[i]] = s2[i]
print(dct)  

# Pythonic 的写法 
print(dict(zip(s1, s2))) 

这两个例子只是抛砖引玉。对于普通的写法来说,任何一个学习Python一个月的同学都能写出来,但 Pythonic 的写法就需要对 Python 了解得深入一些才行了。知识本身不难,但需要时间去学习掌握。

Pythonic 没有止境,这应该作为日常积累的一部分。不用刻意的去收集,而是在阅读他人的代码的时候,看到好的片段,立马模仿一遍,转为自己的知识即可, 积硅步,至千里

4. 养成良好的编码规范

编码规范对我来说意味着两方面, 一是书写规范,二是文档规范。

说来惭愧,我自己是近两三个月才开始慢慢注意到这方面,权当给初学的同学的忠告,请 从一开始就遵照 PEP8 规范写代码 ,嫌麻烦可以使用 PyCharm,这个编辑器自带规范检查。

文档尽可能写的详细些 ,一是可以边写代码边整理自己的思路,二是之后不管是自己维护还是其他人阅读,都能很快的理解你写的代码。

从一开始就把事情做好,这总是没错的。

转行,容易也不容易

辞职,就是一念之间。

2016.9.12 我给 crossin 发的邮件,2016.9.18 拿到 offer 当天就口头辞职,2016.10.4 来到上海。完成从汽车工程师到码农的心态转变只用了 6 天。

果断的前提是想清楚:

想清楚自己是否对编程有兴趣?

想清楚自己是否对目前的工作失去了信心?

想清楚自己是否可以抛弃之前的积累?

想清楚自己是否能够将姿态放到最低,从 0 开始学习一门新事物?

……

一年的时间说短不短,说长不长,经过了很多曲折,也收获了很多乐趣。对我来说,是值得的。

最后

到上海第 8 个月的时候,一次偶然的机会,从路边的草丛里捡回了 小白 ,小家伙长得很快,让我荣幸成为了一名有猫的程序员。

奉上几张猫片:

════

其他文章及回答:

如何自学Python|新手引导|精选Python问答|Python单词表|人工智能|嘻哈|爬虫|我用Python|高考|requests|AI平台|计算机视觉

欢迎搜索及关注: Crossin的编程教室

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/43219.html

相关文章

  • 一名非典型二流学生的自述 | 我是如何从菜鸟进化到辣鸡的

    摘要:嗨,我是积极废人,我是摩卡先生,现在是一所二流学院的大二学生。我不反感他,因为他说的没错,我就是个菜鸟啊。一个彻头彻尾的菜鸟。保持对成功的渴望,继续当自己的傻瓜我是摩卡先生,谢谢你的阅读,期待我后续的文章吧 showImg(https://segmentfault.com/img/bVbbjDc); 人们总是一边不相信鸡汤,一边又奢望鸡汤在关键时刻能够拉自己一把。事先说明,这是一碗有...

    molyzzx 评论0 收藏0
  • 一名非典型二流学生的自述 | 我是如何从菜鸟进化到辣鸡的

    摘要:嗨,我是积极废人,我是摩卡先生,现在是一所二流学院的大二学生。我不反感他,因为他说的没错,我就是个菜鸟啊。一个彻头彻尾的菜鸟。保持对成功的渴望,继续当自己的傻瓜我是摩卡先生,谢谢你的阅读,期待我后续的文章吧 showImg(https://segmentfault.com/img/bVbbjDc); 人们总是一边不相信鸡汤,一边又奢望鸡汤在关键时刻能够拉自己一把。事先说明,这是一碗有...

    khs1994 评论0 收藏0
  • 苹果财报数据分析

    摘要:而且苹果也提供了专门的页面供下载你可以手动下载不同格式的年报数据。反过来,这两年国行销量下降,对苹果也是很伤注年数据实为大中华区。 苹果昨天夜里发布了今年份儿的新手机: iPhone Xs 、史上最大款 iPhone Xs Max ,以及史上最贵廉价版 iPhone Xr 。 看着动辄万元的价格,我不禁摸了摸自己的腰。 showImg(https://segmentfault.com/...

    yearsj 评论0 收藏0
  • 如何保持学习编程的动力

    摘要:上次翻过一篇我是如何在自学编程个月后找到工作的,是一个编程自学者的经验之谈。如果你想通过学习编程来改善你的生活,你不该总想着这些快速成功的案例。 有人问我, Reddit 是什么网站,我想了下说: 美国贴吧 。 但话说回来,关注了一阵子我发现,Reddit 上的讨论真要比贴吧不知道高到哪里去了,甚至比不少知乎回答要有价值。而且感觉下面的讨论氛围也更好些。 我在上面关注了 learnpr...

    lastSeries 评论0 收藏0
  • 讲讲自己前端培训的亲身经历,给想去IT培训的人一些建议

    摘要:看到网上各种说达内怎么怎么滴,我以自己亲身经历来讲讲我在达内的这段经历吧。事先申明,中国很多城市都有达内,每个城市很可能不只一个达内培训区,并且达内每一培训期的情况可能不一样。我只讲我培训时所在的达内培训区。这些就是在达内个月基本的生活了。 看到知乎上很多说培训班出来的人咋个了,甚至还有人说培训3个月怎么能和大学四年如一日努力学习的人相比。想着我也是培训出来的,那么就我自身经历说一说吧...

    chunquedong 评论0 收藏1

发表评论

0条评论

最新活动
阅读需要支付1元查看
<