原文地址:learning-to-code-420-hours-later-how-to-teach-yourself-python-for-free

说明:有些网址需要FQ。

  • 大约在1.5年前,我开始自学python编程。今天,我对于完成我的项目感到自信。

  • 老实说,我认为对于我能够码出中级初学者级别的代码感到有点自豪。在过去的几个月持续快速提高后,我现在已经过了编程拐点--Coding Inflection Point。这意味着我已经内化了多数python编程的基本诀窍和模式,现在某些情况下实际依赖写好的例子去写代码。

  • 如果你平行学习口语,那么你能够立刻用你新掌握的语言进行基本的交流。然而,不管你表达是多么原始,往往伴随着小词汇量的错误与特征。你必须查找词典或者。有时候,在你讨论更多复杂的内容时,你不得不放弃(但是你将会使用这种洞察力来为以后提高)。直到你对你学的新技能搞到兴奋。

  • 之后,我想要简单的总结下我怎样去自学Python编程。这将会是我的一些系列非正式文章的最后一篇,从现在开始,它将是唯一重要的一篇,让我们去看看:

我学代码需要花费多久时间?

  • 在2016年,我每个工作周大约用两个小时学习,所以这样来说总共用了100小时。今年,我尝试投资一个工作周到8-10小时。那产生40(一年大约有40个周)x8小时,那么我在这个工程上总共花费的时间将达到420小时。所以我们看起来在差不多2.5个月进行密集型代码Bootcamp的时间投资,但是扩展到20多个月中。新手培训通常需要花费许多钱。我不会花费一分钱。

阻碍是什么?

  • 如果你真的想要学习编程,除了找到自己需求和优先考虑时间之外,我可以看到唯一的其他阻碍将是缺乏自律与耐力。对于我来说,决定一个我想要完成目标使我保持活力,如果我失败的时候,我会经历一个巨大的失望。每个人有不同的想法。某些人可能更喜欢依赖外部压力来拉动,比如设计到合作伙伴的责任等或者通过承诺万一失败后支付大量资金来保证。实际上,随着我博客文章的进度,我感受到增加的外部压力。另一些人非常喜欢有老师,作业和考试的正规课程。如果这中情况下,我自己的经历将不会有太多的价值。重要的是你了解你是适合哪一种学习类型。

我是怎么做到以及使用了什么资源?

  • 我按照时间顺序列了一些网站与资源。
  1. 我开始用一种非常棒的方式学习Codecademy’s Python课程。

  2. 随着我完成the Codecademy课程,我从Learn Python the Hard Way教程继续跟着学习。

  3. 下一个学习是Google’s Python Class

  4. 当正在学Google’s Python Class的时候,我开始去构建我自己的小程序,例如能在本地运行的简单聊天室。我发现不仅学习新的东西与从Python的课程中解决任务是重要的,而且我已经学习到的听到的保持练习也是重要的。一旦你理解Python中循环,列表,字典以及函数是如何工作的,并且你能去创建这些内容,学习进度是明显加快。

  5. 在我完成谷歌的Python课程后并当我自己创建小程序后,我继续纵读并从Automate the Boring Stuff With Python解决问题,跟着Invent with Python。后一个网站教你如何用Python构建基本的游戏,那真是非常有趣。现在,当另一些人仍然理的解有点困难的时候,一些任务实际开始的太早。所以,我挑选了一些我感到符合我知识等级的内容。

  6. 我继续从Practice Python网站中解决所有的任务。现在,我开始厌倦我编程例子中重复的代码==。

  7. 我按照这个教程去发布一个用Python与Django框架技术的极其简单的博客web网站。那个仍然是有点挑战,但是给了我第一次了解Python代码如何在web程序中集成。我也在Github注册了一个帐号,Github是一个非常多开发者聚集以及分享代码的地方。

  8. 读了关于Python的数据分析与可视化激励我关注这个话题一段时间,因为他为我的写作与工作提供了有趣的前景。我可能不需要提及数据在当今世界的日益增长的作用。

  9. 从这里开始,我用简单的数据可视化来玩。我第一次抓了API(Hacker News),其次是Reddit’s API。能够将我新掌握的技能与其他感兴趣的领域结合起来,是充实且激动的。

  10. 我教自己(像在其他情况下大量使用stackoverflow.com,其中相关代码的问题绝大部分已经被回答过了)连接到Google’s QPX Express API去查询机票的数据。使用它,我构建了一个本地运行的搜索引擎。令人沮丧的是,这个API被限制每天只有50次查询()。

    另外,我可能在下个月是繁忙的为了去开发最优化的查询机票工具并上线它。

  11. 目前,在通过本教程进行可视化潜在市场,我继续使用Python模块Matplot 与Pandas来研究数据可视化领域的几件事情。尽管我绝大部分只是重复造轮子(通常比原来的更糟糕),但我的志向是把我感兴趣的领域与写代码联合起来。那将是有更多的乐趣。

下一步是什么?

  • 虽然我此刻将要完成Python项目,但是这并不意味着我现在将停止学习。只需要几个星期直到我仍然摇摇欲坠的Python技能基础将彻底恶化。所以我将保持写代码状态并尝试发现使用适合我普遍的主题例子。数据分析与可视化吸引我很多,但是挑战同样存在。在过去,我读一篇博客文章(我很遗憾没找到它)描述自学编程的某人是怎样经历一个非常不合规律的学习曲线,随着快速改善的交替循环,其次是,停滞,沮丧的周期。目前看来,我好像处于高原状态,似乎并没有提高我的技能,偶尔,甚至会纠结于简单的东西。但是只要我不间断的练习与学习,下一个周期将会成长更快。

  • 我从主观意识来写这篇文章,但是我希望很明显它将是几乎每个人能做到这一点。我的最后一个建议:从我的社交媒体中挤出点时间去学习编程。你会惊讶你会有多远做到这一点。

  • 如果你有任何问题,请在评论中提出来。

420小时学习代码之后:如何教你免费自学Python的更多相关文章

  1. 只有20行Javascript代码!手把手教你写一个页面模板引擎

    http://www.toobug.net/article/how_to_design_front_end_template_engine.html http://barretlee.com/webs ...

  2. java反射机制学习代码

    根据 http://www.iteye.com/topic/137944 文档进行学习 代码如下: package reflectTest; import java.lang.reflect.*; i ...

  3. 从原理到代码:大牛教你如何用 TensorFlow 亲手搭建一套图像识别模块 | AI 研习社

    从原理到代码:大牛教你如何用 TensorFlow 亲手搭建一套图像识别模块 | AI 研习社 PPT链接: https://pan.baidu.com/s/1i5Jrr1N 视频链接: https: ...

  4. 教你用一行Python代码实现并行(转)

    教你用一行Python代码实现并行 本文教你通过一行Python实现并行化. Python在程序并行化方面多少有些声名狼藉.撇开技术上的问题,例如线程的实现和GIL,我觉得错误的教学指导才是主要问题. ...

  5. 如何免费使用GPU跑深度学习代码

    从事深度学习的研究者都知道,深度学习代码需要设计海量的数据,需要很大很大很大(重要的事情说三遍)的计算量,以至于CPU算不过来,需要通过GPU帮忙,但这必不意味着CPU的性能没GPU强,CPU是那种综 ...

  6. 常用统计分析python包开源学习代码 numpy pandas matplotlib

    常用统计分析python包开源学习代码 numpy pandas matplotlib 待办 https://github.com/zmzhouXJTU/Python-Data-Analysis

  7. 教你如何学python

    首先,你要有自信心,要明确学习目的.学Python,可以解决在软件使用中所遇到的问题,可以为找到理想工作添加重要砝码.还能锻炼思维,使我们的逻辑思维更加严密:能不断享受到创新的乐趣,将走在高科技的前沿 ...

  8. 孤荷凌寒自学python第八十二天学习爬取图片2

    孤荷凌寒自学python第八十二天学习爬取图片2 (完整学习过程屏幕记录视频地址在文末) 今天在昨天基本尝试成功的基础上,继续完善了文字和图片的同时爬取并存放在word文档中. 一.我准备爬取一个有文 ...

  9. 孤荷凌寒自学python第八十一天学习爬取图片1

    孤荷凌寒自学python第八十一天学习爬取图片1 (完整学习过程屏幕记录视频地址在文末) 通过前面十天的学习,我已经基本了解了通过requests模块来与网站服务器进行交互的方法,也知道了Beauti ...

随机推荐

  1. DNS,TCP,IP,HTTP,socket,Servlet概念整理

    DNS,TCP,IP,HTTP,socket,Servlet概念整理   常见的协议虽然很容易理解,但是看了之后过一段时间不看还是容易忘,笔记如下,比较零碎,勉强供各位复习.如有错误欢迎指正.   D ...

  2. Spring mybatis源码篇章-MybatisDAO文件解析(一)

    前言:通过阅读源码对实现机制进行了解有利于陶冶情操,承接前文Spring mybatis源码篇章-SqlSessionFactory 加载指定的mybatis主文件 Mybatis模板文件,其中的属性 ...

  3. 【PHP】数据类型转换

    PHP的数据类型转换属于强制转换,允许转换的PHP数据类型有: (int).(integer):转换成整形 (float).(double).(real):转换成浮点型 (string):转换成字符串 ...

  4. dubbo-zookeeper(续)

    本篇为继上一篇的续篇,主要内容分为以下几点: 1.zookeeper集群 2.web管理平台 3.dubbo配置说明 接下来我们开始继续吧. 一.zookeeper集群 顾名思义也就是多台zookee ...

  5. Android百度地图开发-第一篇:申请、搭建百度地图

    一.前言 这是第一篇关于Android使用百度地图的学习记录,主要记录: 1.在百度地图开发者平台上申请API Key. 2.在自己的应用中加入百度地图的Android版SDK. 3.在自己的应用中显 ...

  6. efcore 配置链接sqlserver 记录

    本文将在asp.net core api 项目中使用efcore corefirst模式 简单配置链接sqlserver数据库,以及简单的数据库迁移操作 一 新建项目 1. 首先我们先用vs2017 ...

  7. NYOJ--21--bfs--三个水杯

    /* 输入 第一行一个整数N(0<N<50)表示N组测试数据 接下来每组测试数据有两行,第一行给出三个整数V1 V2 V3 (V1>V2>V3 V1<100 V3> ...

  8. Mongodb相关 (Shell命令 / mongoose)

    Mongodb相关 1.创建一个文件夹作为数据库存放的目录 2.打开cmd cd到Mongodb/bin目录去 3.执行mongod --dbpath "第一项创建的文件夹(数据库数据存放目 ...

  9. python3.4下django集成使用xadmin后台

    环境:window7 x64.python3.4.django1.10 一.pip install xadmin安装报错 1.使用pip install xadmin命令安装可能报如下错误: 2.解决 ...

  10. 使用DbFunctions来解决EF按照日期分组数据

    如下一张表 要进行MyDate的date部分进行分组,我们会发现如下写法会报异常 那么如何才能使linq正确转化为sql语句呢,这就要使用到了DbFunctions这个工具类 转到定义可以看到此类在e ...