本周是正式开始学习Python的第一周。很久不写代码了,毕业第5年了,期间几乎没怎么动过手。这段时间比较规律、密集的学习又让我找回了当时的感觉,还不算陌生,我挺喜欢的这种能实实在在看到自己知识增长的状态,每一个小case的成功运行都能带来很多成就感。对于Python的学习,我有一些自己的想法和学习体会,分享一下。

  1. 学习Python的初衷

  我的本职是产品经理,职业年龄4岁,产品经验主要面向教育行业和AI领域。决心开始学习Python是很多机缘巧合交织下的结果,有很多故事可以说,但我的初衷是以下几点:

  (1)我崇尚技术,希望自己成为一名技术型产品经理。从创业者心态上来说,内外兼修才能更能运筹帷幄。

  (2)人工智能是我选定的未来的方向。2018年初正式接触了AI,并开始做AI的应用落地,一路上听了很多“PPT型产品”的夸夸其谈,也清醒地意识到到技术发展现状距离美好想象的差距。我坚信,AI是未来不可阻挡的发展方向,我会朝着这个方向持续学习、不断精进。Python作为学习AI的基础,是我必须要掌握的技能,所以我来了。

  (3)最后一点原因是,听说Python很简单。工作以来,我丢掉了很多作为程序员的好习惯,从逻辑思维方式到工作风格上,都不尽如人意。Python作为一门“友好型”的语言,是我重返战场的很好的选择。

  2. 编程学习所必需的目标感

  学习的第一周,把Python的基础性知识重温了一遍,老师帮忙安排了结构合理、内容精当的课程资源,整个学习过程很是轻松愉快。但产品经理职业病犯了,我观察总结出了我作为学习者的一个很重要的诉求,那就是编程学习所必须的目标感,特别是针对初学者。编程是一项应用型的技能,是通过各种工具进行逻辑上的拆解组合,以最终达到解决问题的目的,学习的内容其实是如何使用工具,以及如何进行逻辑上的拆解组合,是相对抽象的小颗粒度的学习内容。正是由于编程学习具有这样的特点,就导致了学习者需要比较强烈、明确的目标感做驱动,才能让整个学习路径更清晰,主动学习的意愿也会提高。在这一周时间里,我问自己最多的一个问题是:我能用这个知识点干嘛?如果我想要解决XX问题,要学到什么程度、还需要什么知识?如果把编程课程以应用型的目标结果为导向的思路去做设计,应该会比现有的知识体系效果更好一些。

  3. 学习的方式——给初学者的学习建议

  (1)自学:学编程,拿来主义是绝对行不通的。自学是非常必要的技能之一,也应该是学编程最常应用的学习方式。千万不要指望能有一个人像小学老师一样一笔一划手把手地教,这样是不可能学有所成的。

  (2)举一反三、触类旁通:学习的是方法和某一个案例,而在应用的时候遇到的具体情况和之前学到的案例肯定不是百分百一致的,灵活地处理不同的边界问题。可以在学习过程中就多尝试几个应用例,这是个积累的过程。

  4. 读代码比写代码更难

  每个人有自己的代码风格,以学习为目的的代码阅读,需要去粗取精,快速肢解代码结构,找到最核心的自己所需要的部分,然后“精读”。说实话,我的体会是读比写更难。也正因如此,在自己写代码的时候,要从头就贯彻良好的代码风格,保持优秀的可读性。

  5. 敬畏习惯的力量

  每天100行代码,这是我和老师做的对赌协议中的一条。我已经习惯了这种每日任务的压迫感,过去将近一年时间里,基本有保持每天做工作思考和内容输出,偶尔中断。

  我很清楚自己的自制力和毅力不足,习惯拖延,也很容易放过自己,很能偷懒。我好像和“好习惯”格格不入,很难很难按照目标去坚持做一件事,去形成一种习惯;甚至在坚持了很长时间之后,还可以很容易就没什么缘由的中断放弃…现在的我虽然本质还是这样,没能洗心革面,做到完全改掉这些坏毛病,但我心中对习惯多了一种敬畏,我不再那么抗拒。我相信,会越来越好的。

【学习博客】Python学习初体验的更多相关文章

  1. 【Go 入门学习】第一篇关于 Go 的博客--Go 爬虫初体验

    一.写在前面 其实早就该写这一篇博客了,为什么一直没有写呢?还不是因为忙不过来(实际上只是因为太懒了).不过好了,现在终于要开始写这一篇博客了.在看这篇博客之前,可能需要你对 Go 这门语言有些基本的 ...

  2. python学习博客地址集合。。。

    python学习博客地址集合...   老师讲课博客目录 http://www.bootcdn.cn/bootstrap/  bootstrap cdn在线地址 http://www.cnblogs. ...

  3. 深度学习之TensorFlow安装与初体验

    深度学习之TensorFlow安装与初体验 学习前 搞懂一些关系和概念 首先,搞清楚一个关系:深度学习的前身是人工神经网络,深度学习只是人工智能的一种,深层次的神经网络结构就是深度学习的模型,浅层次的 ...

  4. JAVA学习博客---2015-8

    八月份的学习博客,今天已经是九月四号了,补上吧.现在我又回到C++了,JAVA的基本的东西都懂了,但是更好的掌握JAVA,我必须原路返回去学习C++,当初为了更快的学JAVA,其实我得C++都是跳着看 ...

  5. JAVA学习博客---2015.5

    上一次的学习博客写的和流水账差不多,有点生硬的和背目录一样,所以既然学习的目的是程序,那么这个月的学习博客就用程序来说点东西吧.这个月看了一些C和JAVA的视频,开始看别人写的程序,能看的懂但是自己去 ...

  6. JAVA学习博客----2015.4

    这是开始写的第一篇学习博客,记录一下每个月的学习进度和掌握程度,因为这是第一次写学习博客而且已经看编程方面的书已经有几个月了,所以这一篇学习博客可能看似有些乱或者篇幅太长.从十二月的<程序员教程 ...

  7. java JDK8 学习笔记——助教学习博客汇总

    java JDK8 学习笔记——助教学习博客汇总 1-6章 (by肖昱) Java学习笔记第一章——Java平台概论 Java学习笔记第二章——从JDK到IDEJava学习笔记第三章——基础语法Jav ...

  8. javascript - 浏览TOM大叔博客的学习笔记

    part1 ---------------------------------------------------------------------------------------------- ...

  9. android开发进阶学习博客资源

    Android开发者博客推荐 Android入门级 - 罗宪明 http://blog.csdn.net/wdaming1986 Android入门级 - 魏祝林 http://blog.csdn.n ...

  10. js便签笔记(12)——浏览TOM大叔博客的学习笔记 part2

    1. 前言 昨天写了<js便签笔记(11)——浏览TOM大叔博客的学习笔记 part1>,简单记录了几个问题.part1的重点还是在于最后那个循环创建函数的问题,也就是多个子函数公用一个闭 ...

随机推荐

  1. python成长之路八 -- 内置函数

    1,python内置函数     内置函数     abs() dict() help() min() setattr() all()  dir()  hex() next()  slice()  a ...

  2. 日志收集-Elk6

    一:前言 ELK是三个开源软件的缩写,分别表示:Elasticsearch , Logstash, Kibana , 它们都是开源软件.新增了一个FileBeat,它是一个轻量级的日志收集处理工具(A ...

  3. window.onload和document.ready

    浏览器解析大致有以下几个步骤: (1)    解析HTML结构 (2)       加载外部脚本和样式 (3)       解析并执行脚本代码 (4)       构造HTML DOM 模型 (5)  ...

  4. Java8的flatMap如何处理有异常的函数

    Java8的flatMap函数,作用是:如果有值,为其执行mapping函数返回Optional类型返回值,否则返回空Optional. 见到的映射函数往往都只有一句话,连大括号都不需要加的,如下: ...

  5. MT【228】整数解的个数

    求方程$x+y+z=24$的整数解的个数,要求$1\le x\le 5,12\le y\le 18,-1\le z\le12$ 解:设$a_r$是方程$X+Y+Z=r$的满足上述要求的整数解的个数,那 ...

  6. 【BZOJ2302】[HAOI2011]Problem C(动态规划)

    [BZOJ2302][HAOI2011]Problem C(动态规划) 题面 BZOJ 洛谷 题解 首先如果\(m=0\)即没有特殊限制的话,那么就和这道题目基本上是一样的. 然而这题也有属于这题的性 ...

  7. 【BZOJ2244】[SDOI2011]拦截导弹(CDQ分治)

    [BZOJ2244][SDOI2011]拦截导弹(CDQ分治) 题面 BZOJ 洛谷 题解 不难发现这就是一个三维偏序+\(LIS\)这样一个\(dp\). 那么第一问很好求,直接\(CDQ\)分治之 ...

  8. 手动实现staticmethod和classmethod装饰器

    首先,staticmethod和classmethod装饰器是通过非数据描述符实现的.用法简单,这里就不细说了. 这里主要分析一下staticmethod和classmethod是如何通过描述符实现的 ...

  9. windows下用bat启动jar包,修改cmd标题(title)

    新建start.bat,输入以下内容即可. @echo off title myprogress-%date%-%time%-%cd% java -jar myprogress.jar

  10. JS中every()和some()的用法

    every()与some()方法都是JS中数组的迭代方法. every()是对数组中每一项运行给定函数,如果该函数对每一项返回true,则返回true. some()是对数组中每一项运行给定函数,如果 ...