从2019年4月初开始自学Python,2019年4月12日在CSDN发表第一篇博文,时光如梭,一晃眼两年过去了。
这两年是个人工作二十多年以来投入精力学习最多的两年,基本上近乎90%的晚上都坚持学习到晚上11点,学新知识、做测试、查资料、写博文总结…,同时在CSDN平台也从一个小菜鸟成为了8级的老菜鸟。今天就来写写这两年在CSDN的这些事。
所有在CSDN的“成绩”,可以从这张小小截图中体现:
这些里面最应该称得上成绩的应该是1079篇文章和近2万粉丝(还差几百个),当然文章里有水文、粉丝里有僵尸粉,不过文章都是自己学习经验的总结,花了很多精力总结的,粉丝呢,应该大部分从我的博文中曾经获得了些自己关注的知识吧。
还有个成绩,就是侥幸获得了CSDN 2020年的博客之星第三名,真的是自己都意想不到,名不符实,机缘之下侥幸而已。
这首先得感谢那些支持的朋友和粉丝,正是有大家的支持,才在投票阶段侥幸进了前二十,其次得感谢CSDN的投票规则,只有在CSDN 2021年前注册博主才能投票,很大程度上防止了刷票行为,最后是庆幸自己有几篇有一定内容的文章,当时灵机一动将其置顶了,估计影响了最后评委们的打分。正是因这些因素,最终才出乎意料地让老猿得到这个名次。
总之,这2年有点小成绩,但也真只是小成绩而已。
感谢CSDN提供的空间,让老猿这个宅家的人认识了好些个新朋友,从他们那直接或间接的得到了支持、学到了知识、增长了见识,他们有CSDN真正的大佬、CSDN的工作人员。尤其感谢这些朋友:
要谢谢的人还很多,就不一一介绍了。
也许是老猿的博客并不高深,在CSDN这个平台上,通过CSDN博客留言、CSDN私信留言以及微信公众号留言咨询的朋友并不多,一周有个1-3个,碰到这种情况只要有时间老猿都会尽力,大部分情况能解决,少数超出自己能力范围的只有抱歉。大部分人解决问题后会真诚地表示感谢,也有部分回复之后杳无音信,不知道是否解决。有时也会请大家帮忙点赞支持一下,有次有个博友问了两次问题给了好几个赞,心中还是蛮欣喜的。
帮助别人解决问题,确实让人心情愉悦!
还有回有个博主想请老猿帮忙写个视频处理系统,因担心Moviepy性能不足误了人家的事,给一篇文章请他下载附件试用一下,后来他订了moviepy音视频开发专栏付费专栏,这个事情就没有然后了,我也没问,虽然真能挣几万块钱很让人惊喜,但机会没到也不能强求,只要真正能帮助到人也就是写博客的意义了。
这两年老猿发布了十多个专栏,目前发布的专栏主要有如下:
其中黄色标记的是还未完结的专栏,以上专栏中有四个付费专栏,销售最好的是《使用PyQt开发图形界面Python应用》,其次是《moviepy音视频开发专栏》,再次是还在更新的《OpenCV-Python初学者疑难问题集》,最后是刚完结价格最低的《Python爬虫入门》,以上四个专栏都有对应的免费专栏。付费专栏销售量每周大概在40-100名之间浮动,看到年底是否足够老猿换一台新便携。
如果有老师授课,学习起来肯定是事半功倍,如果没老师找本好的教程也可以,否则就是事倍功半。
老猿开始学Python时,依赖的是《零基础学Python》(老齐(qiwsir))、《Python基础教程》第3版(Magnus Lie Hetland著,袁国忠译)这两本书,学习起来效率就比较高。后来学习PyQt和Moviepy时,基本没有找到参考的教程,PyQt是结合Qt Designer的控件以及官网资料来学习的,Moviepy是参考官方资料加上阅读源码,后面这两个进展就慢很多。现学习OpenCV-Python,虽然网上资料丰富,但对于一个缺乏图像处理基础知识的人还是远远不够,导致进展非常缓慢,昨天刚下了本冈萨雷斯的《数字图像处理》,准备好好补补基础知识。
学习都是有某种动力驱动的,有明确的方向,由于知识一般都是成体系的,提前规划好学习路线,由浅入深的学习,做好相关计划及准备工作,对提升学习效率有着非常重要的作用。
例如学习PyQt前,必须先学习基础的Python知识,然后了解PyQt程序的基本构成框架、信号和槽的知识、Model/View的框架、再研究各控件的功能和使用,而控件的研究可以结合Qt Designer的控件栏列表进行。
不同的博主有不同的写作风格,如果博文要受欢迎,首先要有自己独特的内容优势,二是要容易被搜索到,要容易搜索到又需要比较好的标题。怎么算好的内容和标题,这方面其实各有各的见解。
关于博文内容首先要有原创性,其次要写得清楚明白,最好有案例,这是最基本的要求。
另外关于发文,老猿一个有水文之嫌的做法是,除了成体系的知识内容介绍,就是针对自己花大力气研究清楚的一些小知识点单独发文,可以弥补成体系的知识内容介绍在搜索单个的知识点时不容易被搜索到的缺点,不但方便别人查找,自己有时也用得着。
老猿这2年千余文灌水方法:
每个人有不同学习习惯,老猿的学习习惯其实可能并不太适合大多数人,因为效率太低,个人认为大部分情况应该还是没找对资料。
老猿是个比较纠结的人,对学习过程中遇到的细小问题都不想放过,在学习PyQt、Moviepy以及OpenCV时,针对有些基本没有公开资料的知识点,为了研究清楚,通过查资料、做测试、阅读官方文档甚至阅读源码的方式去研究,为了弄清一个问题花3-5天是很常见的,有时甚至需要花超过一个月的时间。例如为了研究清楚OpenCV的形态变换的原理,就花了近一个月的时间,而学习仿射变换,也花了一个多月时间,期间还花时间温习了线性代数的知识,最后觉得能自圆其说了才开始写博文总结。
知识还是在学校有老师教时学习效率最高,所以在校的同学,如果有机会听到老师讲你感兴趣的内容是最幸福的,当然如果不感兴趣则另说了。不过是否感兴趣也跟个人的经历相关,想当年在学校学习线性代数自己也是苦瓜脸,现在回头温习时觉得这门课非常有意思。
很多学C语言和Java的人有点瞧不起Python,老猿在Java方面只有数千行的自学经验,因此主要谈谈C和Python。老猿C和C++语言有大几十万行学习和项目实施编写经验,从类的多态性、多线程处理、底层硬件接口开发、程序性能、程序产权保护上Python肯定差很多,但Python有如下三大优势:
1、很Pythonic风格的代码,如变量无需定义变量类型、鸭子类型、序列类型、迭代、类的字典数据、装饰器等待,这些特色给开发带来了代码的精简、提高了代码的复用度;
2、强大的扩展库,如numpy、TensorFlow、YOLO、PyQt、OpenCV-Python、Moviepy等等,这些库大大的扩展了Python的功能,以至于想实现一个新功能时,都先去查查有没有对应的Python扩展库,简直没有Python做不到只有想不到的功能库;
3、新手比较容易上手,由于语法简单、没有严格的类型检查、变量无需单独定义、鸭子类型的支持等,使得Python很容易学和使用。
老猿暂时就想到这么多,应该还有些其他优势,大家可以在评论区补充一下。
其实C与Python的对比,有点类似汇编和C的对比,这么多年过去了,用C越来越多,但汇编并没消亡,在某些方面使用还是挺多,只是二者的应用场景越来越有区隔,老猿认为C和Python也是如此,不过如果Python在短板方面能进一步优化一下则更好。
以上是个人入驻CSDN两年的一些情况和感想,相比真正的大佬们来说,老猿还有很长的一段路要赶,因此需要分外珍惜时间,所谓“学问无遗力,功夫老始成”,学习要起到效果是需要时间的,所以“老骥明知桑榆晚,不用扬鞭自奋蹄”。
愿与所有尚在成长阶段希望成为大佬的博友们一起共勉!大家相互学习、交流,一起加油、一起进步!
标题换了n次,倒数第二次标题叫《两年CSDN 千余文两万粉 桑榆虽晚莫蹉跎》,后来看了沉默王二大佬的《11 年了,我在 CSDN 被访问 800 万+次! 被点赞 3.5 万+次,被收藏 9.6 万+次!》,最终决定改成这个直抒胸臆的标题,做一回标题党。如果是被标题骗进来觉得浪费时间的,老猿非常抱歉!