zib
V2EX  ›  问与答

为什么编程对我就像母语?

  •  
  •   zib · Nov 6, 2022 via Android · 13186 views
    This topic created in 1464 days ago, the information mentioned may be changed or developed.
    本人不是码农,写代码纯属爱好,看到现在儿童 IT 教育这么火突然有这种疑问。

    我生在一个工程师家庭,上中学的时候自学的编程,过程就是没事干安装了一个编程环境,打开帮助文档,照葫芦画瓢就开始写。对我来说编程就是一个娱乐活动,初期类似于在红白机上打坦克,后来像搭乐高,再后来像盖房。一直觉得编程语言这么符合逻辑,就像在说一种自己本来就会的母语。

    其实我学人类语言也是如此,看到语法书就感觉这语法这么有逻辑,感觉我自己也可以写一本语法书。

    请问我为什么会有这种感觉?是普遍现象么?一般人学习编程和学习语言障碍在哪里?
    108 replies  •  2022-11-08 22:52:22 +08:00
    1  2  
    ❮ ❯
    Bingchunmoli
    Bingchunmoli
    Nov 6, 2022 via Android
    1
    因为没有卷
    Carseason
    Carseason
    Nov 6, 2022❤️27
    2
    优质的家庭条件,没有压力的生活,不错的天赋
    Chemist
    Chemist
    Nov 6, 2022 via iPhone❤️7
    3
    因为你有个好爹
    JQSM
    JQSM
    Nov 6, 2022❤️1
    4
    学语言最大的障碍是背单词,而学编程甚至都不用背单词,当然简单很多。
    GP1
    GP1
    Nov 6, 2022❤️16
    5
    投胎投的好,你投胎到农村家庭就知道编程很难了。
    thunderw
    thunderw
    Nov 6, 2022❤️1
    6
    这就叫你有编程思维,是一种天赋。有很多人说话就没有逻辑性,明明说的是汉语,写的是汉字,但他写出来东西你看着就头疼。你写的这段就完全没这个问题。
    kingpo
    kingpo
    Nov 6, 2022
    7
    你不知道的是,有的人,打第一行代码,第一个程序,即使仔仔细细对着抄,都一定会遇到各种各样的错误,真有这样的存在
    xtreme1
    xtreme1
    Nov 6, 2022
    8
    我不知道你有没有给某些初高中生辅导过课业,
    如果碰上那种例子的话你就知道了, 有些人天生不适合任何需要逻辑的事情, 不单是编程.
    xtreme1
    xtreme1
    Nov 6, 2022
    9
    @xtreme1 而且智商完全正常.
    DrakeXiang
    DrakeXiang
    Nov 6, 2022
    10
    编程从来难的都不是语法吧,大家都会说中文,但是出口成章的就很少。编程的门槛一直都不高,只要会基本的英语和逻辑思维就可以开始,少儿编程都能这么火就能看出来,小朋友的水平就已经够了。实际劝退的都是因为枯燥,没兴趣,技术更新快学不动,你因为有兴趣所以会自己装环境看文档,就像一般人玩游戏会自己查攻略
    ershierdu
    ershierdu
    Nov 6, 2022
    11
    op 不是专业选手,有可能只是没接触到难的部分?

    不过 op 的这种上手能力肯定比绝大部分人都强了
    googlefans
    googlefans
    Nov 6, 2022
    12
    障碍就在于 大学时候老师讲的都懂
    但是让做个完整的工程项目 就不知道如何下手
    Aixiaoa
    Aixiaoa
    Nov 6, 2022 via iPhone❤️1
    13
    逻辑性强吧。
    我个人喜欢在脑海里想一遍要做的事情,会按照时间顺序做步骤拆解,甚至会拆解到像小学题那种边烧饭边刷牙的多线程.
    对我来说,我就像一台机器忠实的执行我自己写的逻辑.
    对别人来说,我就是一个有点死板的人
    Yourshell
    Yourshell
    Nov 6, 2022 via Android
    14
    先介绍一下你在这方面有什么成就有更有说服力吧
    ih8es9OIzne0959p
    ih8es9OIzne0959p
    Nov 6, 2022❤️1
    15
    单方面强调天赋的我是极力反驳的,我认同高一的时候班主任说的一句话“如果能把同学们的大脑中负责畏惧的那一块脑区域删除,再加上三年的刷题训练,哪里不会学哪里,哪怕只有三年级知识也足以上本科了。”。 编程就是像搭积木,有的人就是很有天赋但我认为说白了平时接触的多或者比较简单,就算再有天赋我觉得也是熟能生巧或者理解的比较深刻,但是到没接触过的逻辑事件的就 GG 了(大部分),比如给你一堆基础原件搞一个冯诺依曼架构或者其他架构现代计算机的演示架构模型之类的,或者让你设计一种运算器,类似于 cpu 只有加法器哪又是怎么实现加减乘除的,浮点数是怎么存储计算的能否设计的比现在的标准效率接近,浮点和整数是怎么转换的类似于这种的接触过之后也不算难,但是只靠天赋实现我也觉得的不可能。
    westoy
    westoy
    Nov 6, 2022 via Android
    16
    那你有没有系统的写过一个几万行的程序呢?

    real world 没那么完美的,再热爱也逃脱不了一边吐一边写,甚至一些底层选手还需要用一些很脏的手法去处理玄学问题

    距离产生美
    charlie21
    charlie21
    Nov 6, 2022 via iPhone
    17
    语法感好
    cnin0770
    cnin0770
    Nov 6, 2022 via iPad❤️12
    18
    有啥作品吗 看看 github ?
    ration
    ration
    Nov 6, 2022 via Android❤️1
    19
    能手写一个 B+树吗
    potatowish
    potatowish
    Nov 6, 2022 via iPhone❤️2
    20
    因为你有个码爹,如果你觉得自己有天赋,不妨晒晒自己的作品更有说服力
    qsmd42
    qsmd42
    Nov 6, 2022
    21
    不同语言的语法可能大相径庭 都能跟你的逻辑符合吗?
    MasterofNone
    MasterofNone
    Nov 6, 2022
    22
    我赞同上面说的没有卷,如果卷起来了就很痛苦
    wuzhewuyou
    wuzhewuyou
    Nov 6, 2022❤️13
    23
    要不来个难度大点的?编译器,数据库,操作系统?

    看您的母语还够不够用?
    SuperMild
    SuperMild
    Nov 6, 2022
    24
    这个很好理解,上中学的时候,就有同学数学很好,但英语学得很痛苦;另外有的同学语文、英语很高分,但数学不管怎么学都很低分。有的人体育好,有的人音乐好,各有各的天赋,也各有各的苦手。
    billzhuang
    billzhuang
    Nov 6, 2022 via iPhone
    25
    赶紧成为码农
    Cu635
    Cu635
    Nov 6, 2022
    26
    说明 lz 做事有条理有逻辑。编程只不过是把“该怎么做事”的步骤给详细的一步一步的告诉电脑而已。
    allpass
    allpass
    Nov 6, 2022
    27
    作品在那里?
    calon
    calon
    Nov 6, 2022
    28
    说明你是混入人类的机器奸细,应该趁早自首 233 。
    bitdepth
    bitdepth
    Nov 6, 2022
    29
    來,寫個 opencl
    gohuntsuan
    gohuntsuan
    Nov 6, 2022❤️4
    30
    看成了编程对我就像母猪
    icyalala
    icyalala
    Nov 6, 2022
    31
    看来这是个不知道自己是机器人的机器人~~
    zxCoder
    zxCoder
    Nov 6, 2022
    32
    说明你牛逼
    2NUT
    2NUT
    Nov 6, 2022
    33
    说明可能上辈子也是程序员

    这辈子发誓不当程序员但是把编程作为爱好
    MEIerer
    MEIerer
    Nov 6, 2022
    34
    天赋加环境
    followztx
    followztx
    Nov 6, 2022
    35
    文档换成英文的试试
    jancing
    jancing
    Nov 6, 2022
    36
    OP 的意思应该是说编程“语言”对 TA 就像母语吧。写程序就像用母语写文章那样对吗?
    (要不你试试用熟悉的编程语言写个它的编译器,毕竟从“母语”级别的使用者角度来看,“自举”是很关键的一步)
    Windn0
    Windn0
    Nov 6, 2022 via iPhone❤️4
    37
    show your code
    TcDhl
    TcDhl
    Nov 6, 2022❤️2
    38
    Hello?
    look look you code?
    look look you github?

    并不影响阅读
    leonshaw
    leonshaw
    Nov 6, 2022
    39
    学了几种编程语言?都是母语?
    Tumblr
    Tumblr
    Nov 6, 2022
    40
    OP 的编程技能明显是比母语强的。

    虽然同为”语言“,但我们一般不会把程序语言和传统的表达语言放在一起,说对编程语言的掌握“像母语”,你不会在简历里把你的编程能力写成“母语级别”,只会是什么了解、熟悉、掌握、精通之类的,就好像你不会说你骑自行车熟练了说“我觉得自己骑自行车就像说母语一样”,虽然能明白你要表达的意思,但是总会让人觉得奇怪。
    zm8m93Q1e5otOC69
    zm8m93Q1e5otOC69
    Nov 6, 2022
    41
    因为你有个好爹
    CEBBCAT
    CEBBCAT
    Nov 6, 2022
    42
    你还没有说清楚你理解的简单是怎样的简单,你看到的困难是什么样的困难。

    目前来看最可能的是你才只学了 hello world 。标准库 API 、系统调用、系统设计,计算机网络,都是要花费时间学习的。
    pkwenda
    pkwenda
    Nov 6, 2022
    43
    著名演员孙海英自述:文革前生长在三个文工团混住的部队大院,能人辈出,以至于去了所谓的学校读书之前:“声、台、形、表” 早已熟烂于心,远超同龄人,如果没有后天的刻意练习,生长环境有很大因素,这是优势,而且我觉得现在家长盲目追求的单纯的 儿童 IT 教育完全无法替代成长环境。
    asanelder
    asanelder
    Nov 6, 2022
    44
    "没事干安装了一个编程环境,打开帮助文档"

    您要把编程看作以上工作, 那么, 说实话, 几十种语言对俺来说都是母语.

    什么 go, java, c++, scala, js, c#, python, 通通不在话下
    LiubaiQ
    LiubaiQ
    Nov 6, 2022
    45
    小孩子学任何东西都很快,只要有环境,脉脉上有个腾讯的老哥发帖教孩子刷 leetcode ,而且刷得还挺好的,我觉得没必要过于强调生物学上的天赋、遗传,环境因素同等重要。
    IDghyg5839
    IDghyg5839
    Nov 6, 2022
    46
    凡尔赛
    astkaasa
    astkaasa
    Nov 6, 2022❤️8
    47
    装了个好 B
    plodderales0o
    plodderales0o
    Nov 6, 2022
    48
    尽管如此,你甚至都没在写代码上获得什么成就,甚至都不是码农。
    interim
    interim
    Nov 6, 2022
    49
    show me the code
    zwdsix
    zwdsix
    Nov 6, 2022
    50
    因为你是万中无一的天才。只要看过一些影视作品就知道,里面的天才都类似这样的,比如看到整个世界都是种种数字之类的。
    xgdgsc
    xgdgsc
    Nov 6, 2022 via Android
    51
    你小时候如果经常下棋,可能数学好,然后编程就好
    Joker123456789
    Joker123456789
    Nov 6, 2022
    52
    因为你还停留在玩的阶段,编程语言的语法 都是很简单的,什么语言都一样,就那么几个,变量,常量,集合,数组,if ,循环,脑子正常的人都能在几天内学到熟悉(滚瓜烂熟需要 时间积累,但是仅仅熟悉 几天肯定够了)。

    难的是应用到现实中,解决实际问题。
    LindsayZhou
    LindsayZhou
    Nov 6, 2022
    53
    我也觉得是因为你学的不多。
    我记得我大一的时候跟人说过,我看 C++ Primer 跟看小说一样轻松。
    wa007
    wa007
    Nov 6, 2022
    54
    感觉是你的逻辑初始化的时候,就是被有极强逻辑性的编程语言初始化的,所以以后看什么都是这样。
    好逻辑控吧。
    这样挺快乐的吧,哈哈哈哈哈哈。
    James369
    James369
    Nov 6, 2022
    55
    编程不难?,刚开始是不难。。
    但模块一多,复杂度一高,条件一多,考虑前后兼容,需求时常变更,组件时常升级,考虑各种适配,等等等。。
    编程的复杂度将呈非线性上升,不上升也行,bug 将不断上升,bug 不上升也可以,时间成本将不断上升。。

    这就是业余玩家和职业选手的区别。
    levelworm
    levelworm
    Nov 6, 2022
    56
    编程主要是解决问题,而不是语言问题。举个例子编译原理、操作系统这两个要有一些造诣,就不是会语言能够解决的。
    Aloento
    Aloento
    Nov 6, 2022
    57
    是否有一种可能是赛博新人类
    maddot
    maddot
    Nov 6, 2022
    58
    发 github 来看看是不是真这样
    toneal
    toneal
    Nov 6, 2022
    59
    念头是学编程的时候 已经输了一半
    什么是学? 买一堆书 按章节一点点抠 慢慢只见树木 深陷森林

    正确的插入姿势就像完美的爱情 是双向奔赴自然 0 距离
    学了一堆 pua 心法 看了一硬盘的江户 188 招
    碰见妹子还是完犊子 除了花钱买 别无他法

    自我总结这些年一直学不会的问题 主要还是一开始就错了
    为了学而学 没有初心 没有正确的目的性

    也许 一开始 有个改变世界的梦想 碰巧需要用到编程
    可能离楼主境界近一点吧
    danhahaha
    danhahaha
    Nov 6, 2022
    60
    我自己放飞自由拼积木也有这种感觉,尤其是小孩,3,4 岁上手就可以拼,并不是多聪明,是因为乐高设计牛逼,各种模块随便拼都可以凑到一起,容错率极高,非常有成就感,但是直到有一天看了 youtube 的某个高手视频,心水不已,想要拼出一个来,结果按照人家视频一步一步拼了整整俩天,最后放弃了
    achira
    achira
    Nov 6, 2022❤️17
    61
    因为一般人想不到那么夸张的词来赞誉自己
    byte404
    byte404
    Nov 6, 2022 via Android
    62
    呃。。。编程语法很难吗???????????不会吧,不会吧。难点不是做项目吗,不是排 BUG 吗?? 编程语言我学了十几个,语法我感觉都很容易,但我用的也就一两个。
    luomu24
    luomu24
    Nov 6, 2022
    63
    没有展示自己水平的例子作证,很难确定这是个真实讨论贴,还是吹逼秀贴。
    xuanbg
    xuanbg
    Nov 6, 2022
    64
    写代码确实很简单,就和把自己心里的想法说出来一样简单。这大概是我考虑事情从来不绕圈子的缘故吧。

    我见过太多理不清思路,总是在无用的表面细节上饶老绕去不得要领的同事了,真的是很难理解他们的想法。而且你指出关键点也没用,他们根本抓不住,沟通起来真的太累了。
    EminemW
    EminemW
    Nov 6, 2022
    65
    因为你爹。。
    littlewing
    littlewing
    Nov 6, 2022
    66
    问一个问题:你现在的工作是编程吗?如果是的话,佩服你;如果不是的话,可以去试试
    fakeshadow
    fakeshadow
    Nov 7, 2022
    67
    不要用你的爱好去比较别人的专业。
    arischow
    arischow
    Nov 7, 2022 via iPhone
    68
    GitHub ?
    shm7
    shm7
    Nov 7, 2022
    69
    楼主有时间可以不用去玩没啥意思的 Demo ,去做做编译器和底层实现的工作,或者参加些混乱变成比赛。
    addou
    addou
    Nov 7, 2022 via Android
    70
    环境很重要
    Yuchen
    Yuchen
    Nov 7, 2022
    71
    因为你是天之骄子
    你不去当码农简直就是这个世界的损失
    riceathome
    riceathome
    Nov 7, 2022
    72
    学外语看懂语法远远不够 八字还没一撇呢 你实际运用一下就知道了
    maemolee
    maemolee
    Nov 7, 2022
    74
    所以你编程这么牛逼,有什么作品可以展示一下吗?
    Daiwf
    Daiwf
    Nov 7, 2022
    75
    你是世界上最优秀的程序员,程序之母,逻辑之神。我将称你为 NB God
    SinceJune
    SinceJune
    Nov 7, 2022
    76
    其实我学人类语言也是如此 敢情之前还不是个人。
    gps949
    gps949
    Nov 7, 2022
    77
    那么你的母语是 Fortran 、Basic 、C 、Pascal 、Delphi 、Visual Basic 、C++、Java 、PHP 、C#、.NET 、Haskell 、Lisp 、JavaScript 、SQL 、Python 、Go 、Rust 、Dart 、Kotlin 、Object-C 、易语言、Perl……当中的哪一种呢?
    limerence
    limerence
    Nov 7, 2022
    78
    别人牛逼是因为作品,你牛逼是因为你自己觉得自己牛逼
    dqzcwxb
    dqzcwxb
    Nov 7, 2022
    79
    拿业余挑战别人专业
    shijingshijing
    shijingshijing
    Nov 7, 2022
    80
    不知道楼主能不能讲出一口流利的汇编?
    wangyzj
    wangyzj
    Nov 7, 2022❤️1
    81
    老哥,你夸张了

    编程顶多逻辑清楚,单词认识,正常人就可以猜到大意,就好比你上学英语老师教你各种语法,但你跟老外交流的时候你发现老外的语法都是错误一样,因为人都不傻

    母语就不一样了,如果编程语言中出现类似这种语句:“下回没没就没没,没了就是没了,告你别别就别别,别个个瞎别了”

    很多男孩对编程都充满了兴趣,但早期门槛会劝退很多人,但恰巧,你的家庭让你能够轻易的跨过这个门槛
    而已
    bytesfold
    bytesfold
    Nov 7, 2022❤️1
    82
    知道的越多的人越知道自己的无知,你怎么这么自信
    storyxc
    storyxc
    Nov 7, 2022
    83
    talk is cheap
    loading
    loading
    Nov 7, 2022
    84
    最复杂的中文你都掌握了,编程语言真的是太简单了。
    twor2
    twor2
    Nov 7, 2022
    85
    为什么去火星对我如此简单?
    别人都说去火星很难,但我却发现很简单,就想回老家一样。
    难道就只有我一个人这样吗?
    jmc891205
    jmc891205
    Nov 7, 2022
    86
    编程和语言的难点都不在于语法。。。
    nyakoy
    nyakoy
    Nov 7, 2022
    87
    期待 op 出的书
    gimp
    gimp
    Nov 7, 2022
    88
    “其实我学人类语言也是如此” —— 敢问楼主可是蜥蜴人
    leimao
    leimao
    Nov 7, 2022
    89
    Most programming languages are Turing complete.
    y835L9DyC5XD09kq
    y835L9DyC5XD09kq
    Nov 7, 2022
    90
    v 我 repo 看看实力
    Dogtler
    Dogtler
    Nov 7, 2022
    91
    因为你没有遇到奇形怪状的需求追着屁股后面跑,只凭观察和兴趣探索到编程。
    ksc010
    ksc010
    Nov 7, 2022
    92
    @GP1 我也是农村出来的;拿所谓的环境来说真的一般,初中第一次摸计算机,一共没上了几节课。高中一样很少,学习计算机相关的知识几乎全靠购买过期的电脑杂志;《电脑爱好者》《网游世界》等等;“首次学习”编程 一个是高中数据有堂课将的是逻辑关系之类的,另外就是杂志上有一篇文章教如何编程,这篇算是我的编程启蒙了。
    这个东西兴趣关系很大,在这就是所谓的天赋了
    novolunt
    novolunt
    Nov 7, 2022
    93
    一叶障目 不见泰山
    luofan004
    luofan004
    Nov 7, 2022
    94
    如果我是 op ,一定晒出 github 亮瞎你们这群 B
    pkoukk
    pkoukk
    Nov 7, 2022
    95
    找一个全新的语言,写个五子棋小游戏吧,不要引用现成的库
    如果你觉得非常轻松和愉快,那么你就是真的非常有天赋
    Ashore
    Ashore
    Nov 7, 2022
    96
    一眼丁真,鉴定为假
    Ashore
    Ashore
    Nov 7, 2022
    97
    V2EX 第 594680 号会员,加入于 2022-09-18 23:06:00 +08:00
    lifesimple
    lifesimple
    Nov 7, 2022
    98
    「自学的编程,过程就是没事干安装了一个编程环境,打开帮助文档,照葫芦画瓢就开始写」这也谈不上天赋吧,谁写个新语言的 hello world 不是这么来的
    masker
    masker
    Nov 7, 2022 via Android
    99
    🎣死🐴。
    去学一学计算机原理,操作系统,别只会打嘴炮。
    shijingshijing
    shijingshijing
    Nov 7, 2022
    100
    @twor2 你是懂楼主的。
    1  2  
    ❮ ❯
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   985 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 184ms · UTC 22:06 · PVG 06:06 · LAX 14:06 · JFK 17:06
    ♥ Do have faith in what you're doing.