pythoncamp0

背景介绍

IT行业技术人员,学过 QBasic 语言

学习动机

最初决定报名 py 班,只是想跟着 大妈 学敲代码,无脑跟随。正式进入 py的课程后,才发现 大妈 在下一盘很大的棋。 不仅仅是传授编程本身,而是习得编程思维,掌握一个完整的项目开发生态链!

时间精力

py课程 的这段时间,看视频和课程作业是工作之余时间拼凑的,后期项目的时间分配颗粒比较大,主要在双休进行。

工具使用

  • git

    • 非常强大的版本控制工具
    • 不需要通过 拷贝、重命名 进行备份,可以在任意提交的版本之间切换
  • 自主学习,并将过程写成 教程 记录下来,教会半年前的自己

    • 很多别人的教程,即使写得再详细、再浅显,也会有自己认为需要补充修改的地方
    • 遇到的坑不可能完全一样,跌进去,解决了,就成为了自己的经验,当然要记下来
    • 从一片空白和未知,经过一番艰苦的折腾,顺利完成,记录这个过程的思考、尝试,形成自己的学习模式
  • 抛弃 微信,在 邮件列表 提问和讨论

    • 邮件列表是优雅的异步沟通工具,有充足的思考时间,完善待发送的内容
    • 回复讨论,主题明确
    • 内容可以永久地保存,便于回溯
    • 学习正确地提问,让别人对你的问题有兴趣,知道如何帮你
    • 邮件列表里最好每封邮件都大致看一遍,很可能自己后面会遇到同样的问题
  • 团队沟通

    • 最好的方法当然还是 F2F,时间和空间 完全交汇,可以很高效的讨论
    • 经过班长推荐,才知道 google docs 可以很方便地共享文件、多人同时在线编辑文档
    • gotomeeting 和 skype 都是很不错的多地在线沟通软件
  • 编程习惯

    • 将一个复杂功能,分解成无数个模块,每个模块实现单一的功能
    • 对于代码的完善和生长,在当前可运行代码的基础上不断小幅度调整
    • 搭建测试环境,获得修改后的即时反馈
    • 不要重复造 轮子 ,复制、修改别人已有的代码,为自己所有。不浪费时间,也能提升自己的水平
    • MVP,先完成一个 最小可用的产品 ,然后不断迭代完善
  • github

    • 将有意义的代码版本推送 github,每次的改动可以很明显地看出来
    • fork,开源,别人好的项目可以拿过来自己继续开发
    • PR,协同开发,别人可以提交增加或修改的代码,进行完善
    • wiki,存放项目所有的相关开发文档和教程
    • issue,对于代码的疑问,可以留言讨论

项目过程中遇到的问题 & 给未来学员的建议 及时邮件汇报进展,大妈们可以对一些决定做出判断和指导,以免选择不合适的方法和工具,产生较大的时间成本。