大家好,我是赛博红兔。今天再来和大伙聊聊天,上一期的聊天播客的反响很不错,一下子就成了这个频道互动性最好的一期。很多朋友告诉我,他们非常享受这种轻松愉悦的对话方式。看了大家在节目下方给我的留言,也给了我不少的启发和思考。所以我决定让这个聊天环节成为我们的一个小传统。另外,我一直在思考,是不是该开一个互动邮箱。你们可以直接发我一些困扰良久的问题,或者是对于频道更新的任何想法,甚至是晚饭吃了什么好吃的,统统发过来。频道里的留言排版比较杂乱,而且陌生人有限制,会遗漏不少留言。但是,我在想,或许我们应该等到我们的频道再壮大一些,到5000粉吧,再开启这个邮箱,这样我们就能确保有足够的声音和力量,让这个互动变得更有意义、更加丰富。所以,如果你期待这样一个直接交流的窗口,那就来帮忙推荐给你的朋友,多多三连我的视频,壮大我们的频道。
今天和大伙来聊聊从频道开播以来,关于Python你们问我最多的三个问题。我们从轻松的开始。第一个是“你视频里演示的代码字体是什么?VS Code的主题又是什么?”我在这里先统一回复一下,我VS Code里用的字体叫作JetBrains Mono,图标主题是Material Icon Theme,背景色主题是Atom One Dark Theme。关于字体、主题还有VS Code大部分的设置,其实我在《和我一起玩Python》第22集“下载安装及设置VS Code”都有介绍过了,没看过的朋友们顺着我贴在节目下方的链接去看看。
选择心仪的字体,就像挑选最舒服的鞋子,走得远,码得久。我就说一说,我是怎么挑选自己喜欢的编程字体的,大家顺着这个思路去找。首先是等宽性:书法里有一句话叫‘墨法有矩,字如方圆’。等宽字体就是每个字符都占用相同的空间,这能让代码保持对齐、工整。然后是字符区分度,好的编程字体会让相似的字符(比如数字“0”和字母“O”,还有数字“1”,小写字母“l”和大写字母“I”)这些容易区分,让你在编写或审查代码时发生混淆。接着是可读性和舒适度:字体大小、间距(包括字符间距和行间距)应该适中,在长时间盯着屏幕看的时候可以减轻眼睛的疲劳。在这些基础上,选择一款符合你个人审美的字体,就能让编程变得更加享受。大伙可以去GitHub,Google Fonts,或者编程社区和论坛搜索你喜欢的字体。这里再推荐一些:火狐浏览器那公司开发的Fira Code,微软的Consolas,Adobe的Source Code Pro,都是流行款字体。至于,VS Code的图标和背景色主题,你直接去VS Code的左侧栏里扩展界面搜索那些流行的主题,挑一个自己喜欢的就好了。好吧,我再推荐几个,图标主题:vscode-icons,Monokai Pro。背景色主题:Night Owl,Dracula Official,SynthWave ’84。
第二个问题是“机器学习相关的新节目什么时候出啊?”这个问题挺受大家关注的,毕竟机器学习现在可是热门中的热门。在回答这个问题之前,我想先和大家分享一下,频道目前开启的几个项目和我们的未来计划。首先是《和我一起玩Python》系列的高阶教程。这个系列的思维导图已经和大家见面了,包含了网络爬虫、办公自动化、应用软件UI设计这些热门的话题。另外,为了让大家更好地入门机器学习,我们还要介绍三个非常重要的Python库:numpy、pandas、和matplotlib。Numpy让我们可以进行高效的数值计算,Pandas则是处理和分析数据的利器,而Matplotlib让数据可视化变得简单直观。除此之外,还有一个Jupyter Notebook的教程,在上面调试机器学习的代码更加直观。然后一个是《Python五分钟》,主要讲的是Python编程的一些技巧和妙招,在五分钟左右时间和大家分享一些实用、有趣的编程知识。再一个是《Python味觉代码》,虽然这个系列的浏览量不高,但它结合联想记忆,讲解了Python中最常用的函数和方法,是构建Python学习体系架构中不可忽视的一部分。我有点强迫症,想要为初学Python的朋友搭建一套尽可能完整的学习架构。未来,除了继续填补这些“大坑”,我们还计划引入机器学习和游戏制作的内容。机器学习不仅涉及算法的理解和应用,还需要掌握大量的数据处理、模型训练、以及结果评估的实战技能。所以大家对我未来的更新有什么好的建议,都可以来和我聊聊,每个兔粉的声音都很重要。一个人要制作如此大量的内容,实属不易。所以啊,还是那句话,如果你喜欢这个频道,三连、打赏、充电,帮我“养肝”,咱们一起加油!
最后一个问题比较沉重,但是我收到这样的留言很多:“我年纪挺大了,现在开始学习Python编程,还来得及吗?还学得会吗?对今后的职业发展还有用吗?”看到这些问题时,我的心情复杂极了。我告诉你,频道里超过30%的朋友都是30岁以上的。所以今天,我就想对这部分的朋友说说我的看法。先说我的结论,不论你的年龄多大,都不应该是学习编程和进入编程领域的障碍。困住你的不是年龄,而是你的对自己的认知。我上一期聊起过养成习惯首先最重要的是什么?自我的认知。哀莫大于心死,最可怕的就是你自己都觉得自己“老了”。在当下快节奏的社会,你很容易听信计算机科学或者软件工程领域的每个从业者都是从年轻时就开始的,就像是你们看到的新闻报道、微博头条、视频播客,似乎每个大牛都提到他们是如何在八岁时开始编程的,然后通过拆解计算器、读码器、甚至温度计,并将它们重新编程成游戏,诸如此类的疯狂项目。因此,在你30多岁、40多岁、50多岁,甚至更老才开始学习编程的时候。就会陷入这种感觉,总感觉你在追赶其他所有人但是根本没有机会赶上这些人。如果你相信这是一个年轻人的游戏,而且唯一具有竞争力的你必须是21岁,在清华、北大、哈佛、麻省获得了计算机科学学位,那么,你会失去所有尝试做这件事的动力,因为你会对自己说,为什么要尝试呢?我想告诉你一些关于我是如何开始的,首先我学习阶段的专业不是计算机科学方向。我的第一节语言课是在本科选修了C语言,那会儿为了期末大作业,在学期的最后用它编写了一个类似《劲舞团》的游戏。到了毕设的时候,因为做的是机器臂的控制,所以自学编写C++去操控一张叫PCI-8136的控制卡。到我硕士阶段,要去模拟仿真动力系统,自学了Matlab。直到后来搞理论研究了,才真正开始系统地学习编程语言的框架。在我真正需要去弄懂这些东西的时候,我总是因为年轻时没有更认真地对待它而感到自责,我会想,哇,如果我在大学时期就这么专注,在编写大型项目的时候,我肯定会比现在上手起来好很多。但你们知道吗?从我开通这个频道之后,我会收到不少初中高中生甚至小学生朋友发来的消息,他们问我同样的问题,我是不是现在开始学Python太晚了?因为他们认识的周围同学、朋友早已经开始学习了。更夸张的是什么?我自己认识的一些才6、7岁的小宝宝们,都开始报名上那些专门的乐高编程、图形编程班了。总会有人开始得比你更早,有更多的经验,在这个社会结构老龄化,内心负担幼龄化的时代,你和我说说到底几岁算是老人了呢?想想看,曾经那些会发电子邮件的年轻人,怎么笑看那些依旧笔耕不辍、坚持手写信件的前辈。然后,同样这批在实体店里逛到脚软的年轻人,又轮到被崇尚网购的下一代嘲笑了。如今,这些曾经的网购达人们,正面临着拥抱AI和智能技术的年轻人的超越。时间就这样滚滚向前,技术日新月异,每一代人似乎都注定要从“新潮一族”演变成别人眼里的所谓的“老派角色”,在新技术和新观念面前找寻自己的人生意义。
现在我们很清楚正在经历人口老龄化的萌芽阶段,伤痛都是真实的、强烈的。我目前是在美国工作,预计到2030年,65岁及以上的人口将占美国总人口的近四分之一。我来聊聊我熟悉的这个人才市场,这个已经在老龄化风暴中的社会是怎么样的。在宏观层面上,年龄歧视当然有,社会上的资源总是会被青春的思维、创新的理念和迅捷的执行力所吸引。但在微观层面上,有很多公司非常渴望,有经验及阅历的软件开发人员加入他们的公司,帮他们赚更多的钱。顺便说一下,美国人的简历上没有年龄,性别,人种之类的信息,都属于严格的个人隐私,在招聘的时候雇主是无权来询问你这些。归根结底,所有公司都想赚钱,所以他们很乐意雇佣一位40岁或者50岁的软件开发人员,甚至是返聘退休人员。但这位软件开发人员必须能够产生与他们支付的价值相匹配的价值。比方说,如果我要雇你作为一名软件开发人员,比如我支付你10万美元起薪,那么你必须至少增加我的利润那么多,当然甚至更多。你懂我的意思吧?你必须能够证明为什么一家公司能够抛开年龄来雇佣你。比方说,你拥有多年工作经验。你通常能够更快地识别和解决问题,在面对复杂情况时的应变能力和决策质量更胜一筹。你能利用所积累的经验使公司能够预见潜在的陷阱和机遇,从而为他们节省宝贵的时间和资源。再者,你有跨学科的专业背景在创新和解决问题时能够跳出传统框架,采取更为全面和创新的方法,它能够帮助公司开拓新的业务领域,或者在现有领域中寻找到新的增长点。更重要的是,你的生活阅历、职业精神、责任感以及对工作的热爱和承诺,能够为团队树立榜样,提升整个组织的工作氛围和文化。现在,你再来想想你的焦虑,完全是整个社会对你的歧视,还是因为你Python没有学好?还是你自己缺乏上面讲的那些优势?
最后我要聊的是,如果编程比如说Python是你喜欢的事情,不管出于什么理由,你是为了科学研究也好,多一门生计的本领也好,只要你确定学Python是你感兴趣愿意去付出的事情。坚持做下去,它带来的回报其实是很迅速的。当我和你们一样真正开始努力学习Python的时候,我真的只用了大约一到两年的时间就达到了我觉得可以真正为我关心的项目做出贡献的程度,可以开始做一些有意义的工作。我会告诉问我这个问题的朋友,如果他们真的喜欢编程,那么别废话,从现在开始学习永远都不会太晚。你真正应该关注的是去确定学习目标,明确你想通过学习编程达到什么目的,比如说转职或者去升职。研究细分你未来的计算机技术方向的职业规划,比如网页开发、数据分析或软件开发,等等。然后,根据学习目标选择编程语言。比如,网页开发可以从HTML、CSS和JavaScript开始,数据分析、机器学习那就去学习Python。培养必要的编程技能,尽可能多地去练习,构建很多的项目,创建很多的作品集,让你获得知识,经验和口碑,利用的自身的优势去面试并最终获得一份工作。如果你现在正在关注咱们这个频道,我感觉你就没有放弃。但你仍然有点犹豫,因为你觉得在你的年龄,你无法去学习那么多。你觉得30岁是你大脑的顶峰了,然后随着年龄的增长,做什么事情就会慢慢下降。这里,我想起之前看过的一本书叫《大脑的可塑性》(The brain that changes itself)。这本书讲的是,一位精神科医生探索了大脑如何能够在遭受损伤后自我修复,以及人们如何能够重新配置大脑以应对各种挑战。我读了这本书,它完全改变了我对我的大脑以及它如何工作的看法,特别是随着年龄的增长,你的大脑仍然可以在高水平上运作。这本书特别关注的一个方面是中风的患者,这意味着他们大脑的一部分实际上已经死亡。传统医学认为,这样的情况是无法改善的,然而,通过持续和有针对性的练习,他们仍然能够恢复大部分的运动功能,甚至还能够返回工作岗位,我认为这非常了不起,也挑战了关于年龄对学习能力有限制的传统观念。
在人生的这场旅程中,我们每个人都是海上的船,面对着时代的风浪,我们时而乘风破浪,时而退回港湾。真正能让我们抵达远方的,不是年轻的肉体,也不是岁月的沉淀,而是那颗永不言弃、勇于学习探索的心。好了,今天我就聊这么多!喜欢听的给我投个币、点个赞,多多给我留言交流。那就下期再会啦!

Leave a comment