宝玉
3个月前
看到这条留言有感而发随手写了一点:为什么依赖“自驱”的学习这么难坚持? 答案很简单:你没有获得持续的正反馈。 所有依赖自驱的学习,想要有效果,都离不开两个核心引擎:正反馈和学习循环。 🆙 引擎一:正反馈(提供动力的“燃料”) 正反馈,就是那些能让你“爽”到的点,是你坚持下去的核心动力。 比如说: - 你写下 "Hello World",代码真的运行输出了。 - 你写的一个小脚本,真的帮你节省了半小时的重复劳动。 - 你做的小软件,真的帮朋友解决了一个棘手的问题。 这些,都是价值千金的正反馈。 相反,什么是负反馈? 比如说: - 花了一整天搭环境,最后还是跑不起来。 - 花了一个通宵调试,Bug 还是没找到。 - 精心写了很久的软件,压根没人用。 人是无法靠意志力对抗持续的负反馈的。 一直得不到正反馈,放弃才是最符合人性的选择。 ♻️ 引擎二:学习循环(内化技能的“发动机”) 光有“爽感”还不够,那可能只是短暂的兴奋。想真正“学会”,你需要一个能不断运转的发动机,一个把知识内化为自己真正技能的完整闭环。 拿学习编程来说,这个循环至少包含这三步: 1. 学习理论知识(学) 这是基础。通过看书、视频、课程,学习算法、数据结构、设计模式等。这是你的“弹药库”。 2. 动手实践(练) 这是最最最重要的部分。你必须去写代码、编译、运行、调试、修复错误,才能把抽象的概念具体化。 为什么现在都强调“干中学”?因为你看再多游泳视频,不下水,你永远学不会游泳。 很多人学不好编程,不是因为理论不懂,而是因为练得太少。 3. 解决真实问题(思) “练”一定会遇到问题。新手和高手的区别,就在于此。 你必须经历分析问题 -> 尝试解决 -> 撞墙 -> 查资料 -> 解决问题的完整过程。人,只有在解决问题的挣扎中,才能真正积累经验,掌握知识。 请注意:这一步,是 AI 无法替代的。 AI 可以帮你写出代码,但它无法帮你体验那个“从卡住到豁然开朗”的完整思考过程。这个经验,必须你自己去赚取。 那些所谓的高手,不过就是这个循环跑得多了,积累了海量的“问题-解决方案”范式,仅此而已。 关键:让“循环”产生“反馈” 现在我们把两个引擎连起来: > “学习循环”是产生“正反馈”的最佳途径。 当你完整地跑完一次循环(比如,学了一个新框架,动手做出了个小功能,并解决了所有Bug),你获得的正反馈是巨大的! 这种“我能行”的成就感,会给你充足的“燃料”,让你兴奋地开启下一次循环。 如何打造你自己的“正反馈学习循环”? 场景一:“简单模式”(在企业中) 在企业里有个巨大的好处:你不需要自己找循环,公司会“喂”给你。 - 接任务(识别问题) - 了解需求(学习理论) - 动手开发(动手实践) - 联调测试(解决问题) - 上线发布(获得正反馈:任务完成/用户使用) 而且,你身边有同事和导师。遇到问题,总有人帮你。如果你的 Leader 水平很高,能“刚刚好”给你安排那些“跳一跳才够得着”的活,你的成长会快到飞起。 场景二:“困难模式”(独自摸索) 如果你是一个人学习,情况会难很多,你必须刻意为自己设计这个循环。这里有几个关键建议: 1. 从 Side Project 开始,而且必须“小” 不要一上来就想做“一个 ChatGPT”。你的目标是快速获得正反馈。 - 一个自动签到的脚本。 - 一个批量处理图片的小工具。 - 一个帮你管理书单的简单网站。 谨记:先去发现你或朋友身边的“真实需求”再动手,成功率最高。 2. 把 AI 当“领航员”,别当“代驾” AI 是革命性的工具,但它很容易中断你的学习循环。 ❌错误用法(代驾): “帮我写一个xxx功能的代码。” -> 你只是复制粘贴,错过了“实践”和“解决问题”的环节。 ✅正确用法(领航员): “我遇到了xx错误,可能是什么原因?” “我想实现xx功能,有哪几种方案对比?” 如果你只是让 AI 帮你完成,你永远无法真正掌握知识,循环没有跑通。 3. 用“费曼学习法”倒逼理论输入 很多人“干中学”久了,会变成“野路子”,只知其然不知其所以然,很快会遇到瓶颈。 怎么办?用“教”来倒逼“学”。 把你项目中的思考、遇到的坑、解决方案,记录下来,尝试分享出去(写博客、做分享)。为了能给别人“讲明白”,你就必须去补习那些背后的理论知识,确保自己真的懂了。 这,就是最高效的理论学习方式之一。 4. 别闷头造车,去社区“求助”和“帮助” 一个人学习,最怕卡在一个问题上几天都出不来,负反馈爆棚。 AI 能解决一部分,但很多复杂或特定领域的问题,还得靠人。 我们这一代程序员成长时,都泡在 CSDN 论坛、Stack Overflow、知乎里。当你在社区里提问,得到解答,是正反馈;当你用你的经验去解答别人的问题,更是强烈的正反馈。 真正的成长,从来不发生在看视频或者让 AI 写代码的舒适区里,而是来自“学习 -> 实践 -> 解决问题”这个完整、甚至有些痛苦的循环。 可以从一个身边的小问题开始:动手去解决它,积累经验,获取正反馈!
Andy Stewart
3个月前
这个只是我的个人观点 不代表业界观点,大家只参考,别喷 其实图形库从原理上有几种做法: 1. 游戏这种:没有任何控件库的概念,所有画面都是手绘的,控件无非就是 “素材 + 坐标 + 事件回调” 的组合,没有任何秘密,这样手绘做界面的方法,最硬核也最难。很多人说,前端生态这么牛逼的情况下,为啥要自虐?我能说的是,任何一个游戏开发者出来都可以吊打前端,因为他懂了图形学最基本的方法,任何画面、控件、动画和高级列表对于他来说,不过是数学公式。而很多前端的水平其实非常水,不说自绘了,如果脱离现成控件库,他都没法用CSS从头撸控件出来 2. 第二种方式就是Gtk/Qt/MFC这种控件库:原生平台、性能最好,所有的控件都满足,性能最好,坏处是要整高级控件,自绘控件要从头整,生产效率不如Web生态 3. 第三种就是传统Web技术,老的程序员估计还记得JQuery,就是针对DOM元素暴力的查询后,魔改CSS和JS来实现各种牛逼的效果 4. 第四种就是React/Vue/Angular这种技术,通过前后端分离,结合了控件(组件)概念和CSS生态,最开始React/Angular肯定是鼻祖,但是Angular现在基本上退出竞争。React肯定是技术最先进的,但是Vue更接地气,更简单,中文生态非常好。所以,回答你的问题,React和Vue都可以,我以前就是游戏开发者这类程序员,所以,我的概念里,React/Vue从原理上差不球太多,Vue更简单,招人也更容易。如果要学习,我建议两种都学,因为本质上差别不大。两种学习好找工作一点,公司用啥,你就用啥 5. 第五种就是Flutter这种,直接通过Skia抽象出一种2D矢量图库,然后再之上统一控件库。我对Flutter和RN这种技术一直不感冒,我觉得就是玩具。但凡要做商业化程序,一定会遇到iOS/Android API不一样的地方,大量写Workaround的代码,而且Flutter的控件库生态和Web差太远了。Google和苹果反正都要一直竞争,与其Flutter夹生憋屈整,还不如界面就用React/Vue,底层用原生代码写,这也是懒猫微服跨平台框架移动端的技术选择。虽然重,但胜在可控而且迭代速度快呀 好了,最后回答你的问题,图形学要每种都要学,当你有一天能达到游戏程序员的境界,你就会像我这样看前端,前端每天都在无聊的事情整花活,动不动就标题党 Next Framework。 给我一块Canvas就够了,一个像素可以画全世界! 喜欢我故事的朋友欢迎点转、收藏、转发 喜欢我们团队的大佬,欢迎购买懒猫微服和懒猫AI算力舱,你的支持就是我持续写文章的动力,感谢老板,祝老板发大财!