大佬们一般都是怎么学习新技术的? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
kikione
V2EX    程序员

大佬们一般都是怎么学习新技术的?

  •  
  •   kikione 2021-01-22 15:46:09 +08:00 8010 次点击
    这是一个创建于 1724 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我一般先找个博文了解一下,然后在 github 上找个源码看,学会使用。 然后找本书看,了解原理。 最后才去看文档。

    第 1 条附言    2021-01-23 17:36:50 +08:00
    在 github 找相关项目学习。。。。 不是看源码,打错了
    45 条回复    2021-01-24 16:42:56 +08:00
    lincya
        1
    lincya  
       2021-01-22 15:51:14 +08:00   3
    bilibili
    AoEiuV020
        2
    AoEiuV020  
       2021-01-22 15:57:27 +08:00   12
    上班后就不怎么学习了,最近想学学 python, 突然发现四年前就学过了,还留了些代码在 github 上,而我完全不记得了,
    raaaaaar
        3
    raaaaaar  
       2021-01-22 15:57:58 +08:00 via Android   1
    要看什么技术,如果是语言,框架什么的,就看点基础,然后直接上项目,边做边学,如果比较深就要看书了
    darknoll
        4
    darknoll  
       2021-01-22 16:17:54 +08:00
    先用起来再说,光看源码有啥用,看了一会就忘了
    luozhiyun
        5
    luozhiyun  
       2021-01-22 16:57:29 +08:00   1
    一般的情况下会先去看文档,然后买书看,最后有不理解的就看源码。然后写下总结,避免忘记。具体的可以去我博客里看看: https://www.luozhiyun.com
    yangchuansheng33
        6
    yangchuansheng33  
       2021-01-22 17:01:45 +08:00
    直接看这里: https://fuckcloudnative.io
    freebird1994
        7
    freebird1994  
       2021-01-22 17:11:00 +08:00 via Android
    @yangchuansheng33 这个域名好评
    paoqi2048
        8
    paoqi2048  
       2021-01-22 17:44:28 +08:00
    进群听人吹,讨论新技术,然后就直接开始
    Austin2035
        9
    Austin2035  
       2021-01-22 18:58:40 +08:00   3
    一上来就看源码,学个屁。
    limuyan44
        10
    limuyan44  
       2021-01-22 19:35:50 +08:00
    有官网先看官网找个 quick start 整一波,找找 github 代码看看实践,没官网拉倒不学了。
    boris93
        11
    boris93  
       2021-01-22 19:45:39 +08:00 via Android
    实战
    之前想学 Go 语言,于是就一边看官方教程一边写,做了个小玩意出来
    其他工具也是要么自己用,要么公司项目要用,一边用一边学
    zm8m93Q1e5otOC69
        12
    zm8m93Q1e5otOC69  
       2021-01-22 20:06:21 +08:00   2
    那你挺牛的,先看源码再看文档
    z7356995
        13
    z7356995  
       2021-01-22 20:14:49 +08:00 via Android
    如果是和现有知识结构跨度不大,先 hello world 整起来,边看文档,示例边撸,如果跨度比较大,如如何用 ae 做一个电影特效,就去看视频教程
    salmon5
        14
    salmon5  
       2021-01-22 20:30:08 +08:00 via Android
    我一般 kernel.org 下代码看
    leafre
        15
    leafre  
       2021-01-22 20:37:50 +08:00
    老了,学不动了 ,等死呢
    killeder
        16
    killeder  
       2021-01-22 20:57:49 +08:00
    啥叫新技术,为啥要学习新技术呢
    Kirsk
        17
    Kirsk  
       2021-01-22 21:01:39 +08:00
    不知道怎样才算学 直接上直接用
    q447643445
        18
    q447643445  
       2021-01-23 00:45:48 +08:00   3
    快 28 了 学不动了, 等死
    easylee
        19
    easylee  
       2021-01-23 00:54:21 +08:00
    博主说的应该是 github 找个使用该技术的项目看源码,我是这么干的
    nightwitch
        20
    nightwitch  
       2021-01-23 01:29:03 +08:00   1
    先找 mit/stanford/cmu 等名校有没有相关课程的公开课,上佳为有视频 + 课件 + 作业;中等是有课件 + 作业;最次是只有课件或者只有作业。这种适合系统学习知识。

    至于某些框架怎么用之类的,一般直接翻文档和 github 上的 example 对着模仿就行,比较好的方法就是试试把多个 example 的内容想办法融合到一个工程里面,慢慢就熟悉了。
    stevefan1999
        21
    stevefan1999  
       2021-01-23 01:46:47 +08:00
    真正的大牛不新技的,ta 造新技,甚至科技
    NVDA
        22
    NVDA  
       2021-01-23 07:09:21 +08:00 via iPhone
    不学,偶尔在 knowledge sharing 上听到什么有意思的东西会去看看相关的 doc 。
    下班以后坚决不拿工作的事情折腾自己,这是底线。
    VeryEase
        23
    VeryEase  
       2021-01-23 08:55:25 +08:00
    我学习的新技术全部是被需求逼的,自己从来没主动学过
    VeryEase
        24
    VeryEase  
       2021-01-23 08:56:52 +08:00
    补充一下,“怎么” 学习新技术, 先看官方文档, 再看大神的技术分享, 最后自己实操, 然后各种折腾踩坑
    young1lin
        25
    young1lin  
       2021-01-23 09:41:54 +08:00
    实用类的,先用吧,比如 Docker,你不写个 Dockerfile,不用一些 docker ps 之类的命令。你了解一些概念,还是没用的。这些官方都有教你的,看官方文档就好了。

    要深入了解的,比如 HBase 、Hive 之类的,都已经很成熟的东西了,其实可以直接看书。你会发现很多技术,都是相通的。例如一般的数据库都有 WAL ( Write-ahead-logging,在 MySQL 里面是 redo 、undo )的概念,还有 LRU 缓存到内存的东西,还有选主的 Raft 算法等等。这些都是基本差不多的东西,直接快速阅读就行了。

    我还是觉得看书比看视频好一些,因为看视频是别人嚼碎了,喂到你嘴里的。看书,最起码,你是要主动去思考一些东西。多画图总结,这样记得牢,有空的话,教给不会的人(费曼学习法)。

    没有人他妈用都没用过,上来直接源码的,这不有毒吗?你要知道这个东西是干什么的?解决了什么问题?我该怎么用?然后熟练之后,再去看看书,这样学得快。如果你已经在这些域已经是大牛了(例如你在数据库方面已经是掌握得不错的了,然后看其他数据存储方面的,很快),你可以直接看源码。
    nismison2
        26
    nismison2  
       2021-01-23 10:04:09 +08:00 via iPhone
    bilibili+1,挑个讲课方式比较好的,把课 2 倍速刷完,掌握基本概念,稍微记住一些要点,像什么声明变量的课程啥的可以选择性跳过,刷完直接开始写项目,自己随便想个点子就开始写,碰到不会的可以回去翻翻视频,也可以直接查,差不多就是这么个流程,写多了自然就会了,从来不看书
    xiaomu8
        27
    xiaomu8  
       2021-01-23 10:50:33 +08:00 via iPad   1
    最后发现还是看书最靠谱
    kele1997
        28
    kele1997  
       2021-01-23 11:30:31 +08:00   8
    可以看看陈浩(左耳朵耗子) 的博客说过类似的内容

    我参考后总结了一下
    1. 首先要搞清楚为什么会有这个技术,要不然平白无故多个技术,有毛用?
    2. 其次要明白这个技术,解决了那些问题?怎样解决的?
    3. 然后了解下这个技术在解决了一部分问题的同时,又带来了哪些问题呢?
    4. 最后这项技术底层是用了什么样的设计思想,或者 linux 相关的系统功能呢?
    5. 看文档,了解设计和架构之后,才去看源码。

    PS: 我说的可能有问题,希望各位补充改正
    就 docker 举例

    1. 首先 docker 不是虚拟化,而是容器化,主要解决的问题应该是资源隔离
    2. docker 可以减少运维问题,将运行环境封装到 docker 容器内部,同样地我们也可以对某个容器做精细的资源控制
    3. docker 的本机网络是通过网桥,性能不错。但跨节点的化基本就要通过转发来实现。转发肯定会带来损耗。而且 docker 容器内部最好不要写,要挂卷写。
    4. docker 底层隔离使用了 linux namespace , cgroupfs, 网桥,unionfs 等技术。k8s 跨节点网络使用的 netfilter, vxlan 等技术
    5. 看文档,看看别人的使用实践

    我觉得学习某个技术的底层实现最好落到 os 层面比较好,然后再看这种技术本身的时候,我们可以从底层来思考。比如 docker 本机上的网络通信是通过网桥的,因此本机容器的网络包会发送到网络栈的内核二层交换机上,然后在发送到用户空间。而跨机器的访问,是通过 netfilter 等规则实现的,这个损耗就要大一些。

    很多技术都是基于 os 的,很多技术都是组合使用了多种 os 的功能
    deargodfrey
        29
    deargodfrey  
       2021-01-23 11:55:09 +08:00
    真的不难,看 doc 自己调用演练一下很快就能上手的,尤其语言其实各自之间都是有共通之处的,包括很多人说很难的 rust 我也觉得还好
    justin2018
        30
    justin2018  
       2021-01-23 12:19:22 +08:00
    教英语的同学表示 英语语法这么多年还是那样 每天好枯燥 太没成就感

    我是多么羡慕他~
    fiveelementgid
        31
    fiveelementgid  
       2021-01-23 13:17:12 +08:00 via Android
    不是大佬,刚看到帖子没有回答
    推荐纸质书籍,不过可能知识比较老旧
    没纸质书籍就直接去啃官方的 Documents/Guide/fundamental
    Coding 的时候就对着 Reference 写就行了
    fox0001
        32
    fox0001  
       2021-01-23 14:01:06 +08:00
    @darknoll #4 对,先拿来干点什么。用起来就会去理解、深入~
    lix7
        33
    lix7  
       2021-01-23 14:46:00 +08:00
    先看源码再看文档,牛逼了
    skypyb
        34
    skypyb  
       2021-01-23 15:03:00 +08:00
    球球你们别学了, 我真的赶不上了
    catch
    35
    catch  
       2021-01-23 17:16:14 +08:00 via iPhone
    你们学吧,我主动退出内卷
    CrazyRundong
        36
    CrazyRundong  
       2021-01-23 17:18:16 +08:00 via iPhone
    Google/Wikipedia 搜关键词,看看这项技术是不是有用 /感兴趣 /好玩。然后看官方文档的 get started 或者靠谱的系统性的书籍的 introduction 部分,来对技术和其中的主要概念有个大致的整体了解。之后就可以用到自己的项目中,边实践边探索细节,顺便看看有没有什么可以完善 /回馈社区的部分。

    说实话,学一个 well defined 新技术比摸黑 research 轻松太多了,楼上一堆叫着学不动的活该到时被优化。
    onec
        37
    onec  
       2021-01-23 17:23:42 +08:00
    看官网的快速开始,跑个简单 demo,一步步照着官网例子加功能
    yangchuansheng33
        38
    yangchuansheng33  
       2021-01-23 17:51:01 +08:00
    @freebird1994 嘻嘻
    ruyuejun
        39
    ruyuejun  
       2021-01-23 18:23:33 +08:00   1
    边学边写文档,怕忘了,写了三年,居然。。。。。十万多字: https://github.com/overnote
    gowk
        40
    gowk  
       2021-01-23 18:27:32 +08:00 via Android
    @ruyuejun 牛逼
    GG668v26Fd55CP5W
        41
    GG668v26Fd55CP5W  
       2021-01-23 18:40:54 +08:00 via iPhone   1
    四个字:用以致学,某 youtuber 说真正掌握一门语言需要用这门语言至少写五个不同类型的项目。
    felixcode
        42
    felixcode  
       2021-01-23 18:54:20 +08:00 via Android
    @AoEiuV020
    python 升 3.x 后,2.x 的记忆自动删除
    laminux29
        43
    laminux29  
       2021-01-23 20:37:53 +08:00
    王者段位的做法是:

    1.预判:先看特性,猜测它的理论依据与实现思路,然后花点时间想想,如果自己来做,应该如何设计。

    2.验证:去找 Demo,验证一下猜测对不对,查漏补缺。

    3.测试:看文档,做小规模测试。
    xxoolltt
        44
    xxoolltt  
       2021-01-23 20:39:19 +08:00 via iPhone
    大佬一般都是创造新技术
    potatowish
        45
    potatowish  
       2021-01-24 16:42:56 +08:00 via iPhone
    先看源码相当于劝退
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2687 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 10:01 PVG 18:01 LAX 03:01 JFK 06:01
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86