首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Coding
V2EX  ›  程序员

请某 211 教授及研究生写的代码 大家品品

  •  3
     
  •   ml1344677 · 11 天前 · 17963 次点击

    QnPzgf.png QnPX4I.png

    节选 我寻思着你这 rule1,2,5 3 和 4 不吉利还是咋的? 其他逻辑部分不用说了 一坨屎 现在我要把他们团队的代码整合上线 真的要吐了

    第 1 条附言  ·  11 天前
    1.给了远超过行业平均水平的钱
    2.内容是关于将业务人员写的规则转化为代码的任务
    3.希望这些人以后成为某些人的同事 嘻嘻
    4.记得好好搞研究 多发点论文哦
    157 回复  |  直到 2019-12-10 16:27:42 +08:00
    1  2  
        101
    VEEX6   11 天前
    一看就是堆代码量完成任务的,正常人都知道写个数组循环
        102
    Chrisplus   11 天前
    so......what?
        103
    27   11 天前
    @felixlong 字典有 1w 个的话,平均和 map 查询 O(1)的时间相比就会慢 1 万倍
        104
    HhZzXx   11 天前
    繁简转换这种,用数组是 OK 的,比起 hashmap 效率也更高,因为一方面占空间小,从而对 cache 更友好,另一方面常用的字集中放在一起,也对 cache 友好。用 hashmap 难以做 cache 优化。
    至于去除标点符号,图片中的写法效率很低。
        105
    HhZzXx   11 天前
    继续繁简转换这个,需要利用字的编码等技巧使得可以 O(1)地从数组中获得所需的 index
        106
    threebr   11 天前
    码农的代码是产品, 搞科研的代码跑出来的结果才是产品, 代码写成什么样大多数人不关心
        107
    iceEar   11 天前   ♥ 20
    做研究就是这样,代码能跑通就行。因为研究过程从来就不是一条路直接走通的,中间会有各种弯路, 所以代码就是各种尝试的过程,打满了各种补丁,怎么快怎么来。不过,正常情况下,在实现了最终想要的效果之后,会先 clean code,再进行 release。
    你遇到的这种情况,有多种可能。第一,你们公司上面的人,在乎的就是跟高校合作,混个名声,而高校那边就是为了拿点项目经费。这样就好办事了,随便搞点东西跑通了,交差就是。各取所需,留下垃圾;第二,项目本身没问题,但是在项目进行过程中,贵司进行和高校对接的人,态度蛮横,居高临下,瞧不起人,让对方研究生觉得十分不爽,故意埋坑。
    楼主不用为研究生担忧,这帮人毕业走上工作岗位,不会写出这种代码。211 研究生虽然水,但智商也是正常的,不会随意写出这种代码。多花时间和他们沟通,完善调整代码,不要浪费时间在这里盲目自大,冷嘲热讽秀优越。祝项目顺利。
        108
    Jrue0011   11 天前
    业务需求是实现一个规则引擎吗...为什么不用现成的? 另外如果本科学过正则而没用上那应该是人的问题,如果没学过的话其实还好吧...
        109
    wangxiaoaer   11 天前   ♥ 2
    都在说用循环,我寻思这东西不是一个正则搞定的吗?
        110
    just1   11 天前 via Android
    @wenzichel 很多的是与其他领域的结合进行研究,这个如果你大学好好上不应该不知道。你当软件工程研究代码怎么写比较好看?
        111
    zhangdawei   11 天前
    给一个科研机构做项目写代码,....
        112
    fengpan567   11 天前
    又不是不能用
        113
    dengbt   11 天前
    写的通俗易懂,清晰明了。
        114
    namek   11 天前
    一行搞定
        115
    Geo200   11 天前
    说用数组那些是认真的吗?为什么不用正则?
        116
    shyrock   11 天前
    刚毕业的研究生是 0 经验,未毕业的研究生是负经验。
    这代码怎么了?
        117
    youngpier   11 天前
    @iceEar 同意,特别是很多老师根本不 care 企业合不合作,你司就是求着人家办事想说自己有产学研的经验混个 title。各取所需没啥,高校代码本来就是跑通了就行。PS: 很多其实根本通不过测试环境。 牛逼的学生也不会把精力放在横向项目上,主要还是低年级学生练手打杂。
        118
    leavic   11 天前
    按行数收钱
        119
    fatpower   11 天前
    研究生又不是专业写代码的,LZ 这个优越感真是莫名其妙。人家要出来工作两年说不定比你还强
        120
    darkalien   11 天前
    没毛病,功能 OK。非常常见的现象,见怪不怪。
        121
    simo   11 天前
    你看到的代码只是最后结果,不能反推出产生原因和演变过程,可能的话,跟作者当面聊聊会有收获。
    举个例子,可能对方是编程新手,或者一开始只过滤一个字符,不定期的切换开发者同时加一条过滤,为了省事,每个开发者都不愿意重构?最后反正就这么长了
        122
    lepig   11 天前
    这种就是实现就行 管你什么代码质量。 所以 导致接手的时候 想骂他祖宗
        123
    hjw45611   11 天前
    有个朋友是 211、985 院校的研究生,他毕业论文里的论点数据图都是我帮他 P 出来的
        124
    vipcc   11 天前 via Android
    加油写好代码
        125
    ethanSong   11 天前
    昨天我好朋友还跟我说,导师把他拉出去背锅去了,一问说导师找的项目,7 个任务的项目一年完成了一个,现在甲方过来问咋回事.....我朋友被拉去背锅了,朋友目前在上海某 985 读研一。
        126
    by73   11 天前
    学术界向来如此,搞理论的跟搞工程的不一样。。要求学术界代码水平跟工业界持平,难度是等价于要求工业界的理论水平跟学术界持平。就简单来说,大家经常用语言敲代码,但是有谁能认认真真学下去 PL 的?

    扯点题外话,我有幸参观过学校 OJ 的源码,那才叫一个“辣眼”,听闻都是每年找几个毕业生(本科)给这个系统缝缝补补,就当毕设了。一群跟我一样没真正耕过田的去耕田,结果多数就是像楼主贴的这种代码一样。

    嘛,上级交给你的工作还是要完成的,大家都是为了一口饭。。
        127
    12tall   10 天前
    大四毕业设计就差不多是这样的风格,有一个 bug 和指导老师找了一下午,现在想忘都忘不掉,30 多页 C~~~
        128
    drawstar   10 天前
    。。。
    我觉得能在最短时间内实现所要的功能,跑起来就行。
    就像某个命令要重复执行三次,我肯定会复制三行不会写个 for 循环
        129
    hyserendipity   10 天前
    不不不,你想多了,这个全部是那个研究生写的,教授只会时不时 check 一下是否写完了。
        130
    Lykr   10 天前   ♥ 1
    @a7217107 为什么都在洗?这做不好不该不喷么?人家尊重你 211 教授头衔,给你高价,无论是自己敲还是学生敲,也得对得起这个价格吧,写的一手烂代码,说什么搞科研,被层层剥削也太逗了?你捞油水变成我的错了?
    另外,我很奇怪,都说术业有专攻,211 计算机教授带的是土木工程研究生吗?

    首先,我觉得楼上大多数都不是洗,只是客观地表示了自己的理解。

    这个代码屎不屎?当然屎。但作为成年人了,应该知道很多事情不是非黑即白的,看问题要一分为二。

    楼主这个帖子充满了主观臆断,“某”字这么一用等于一上来就给所有 211 的教授和研究生扣上帽子,对他们批判一番,读起来就是“211 高校的教授和研究生水平不行”的意思,我觉得这不是一个楼上有些人说的“只是摆个现象给大家看”的客观理性的态度。

    继续回答你的问题。

    首先,有没有想过,为什么这个代码这么烂,还能到上线这一步,外包的项目有没有“验收”,合同里有没有对代码质量的规定?楼主不满的对象应该是“某 211 教授及研究生”吗?谁是敌人?谁是朋友?你和楼主犯了类似的错误。

    其次,你觉得是因为企业“尊重 211 教授头衔”,才给高价的去做的,这个想法本身就是错误的。至于原因,很多人已经讲过了,这里就不再赘述了。当然,除了别人讲的那些外,其实里面还有很多 PY 交易。你只要知道,企业和高校的高层没有一个傻子,大部分情况下对于双方的高层来说是共赢的。

    至于你说的,“无论是自己敲还是学生敲,也得对得起这个价格吧”,“写的一手烂代码,说什么搞科研,被层层剥削也太逗了”:举个例子,你们公司有 5 个程序员,老板接了个两个月的项目,合同额 30 万,你们公司老板不可能敲代码吧?但是它一次性拿走 25 万,剩下的 5 万分给你们 5 个,一个月平均一个人能拿 5000,你觉得合理吗?我现在告诉你,高校的情况现在是,教授导师不停地接项目,一个项目几十万,上百万甚至上千万的都有,但干事的研究生能拿多少全凭导师一句话,就我了解目前最高的是中科院那边的研究生,一个月能有 3000,其他学校每个月大概是 300~1000,更有甚者一分钱都不给,拿毕业来要挟学生。我寻思 996 那会不都说拿多少钱,干多少活吗?此外,研究生还要干科研的任务,需要做 PPT,写专利,看论文,写论文,找工作……

    “你捞油水变成我的错了?”:还是那个问题。谁是敌人?谁是朋友?

    “都说术业有专攻,211 计算机教授带的是土木工程研究生吗?”:没错,术业有专攻,但计算机专业,尤其是研究生阶段,内部还会细分为很多不同的“术”,不是所有的计算机专业的研究生都能写好工程项目。觉得所有计算机专业的学生都能写一手优美的业务代码,就和觉得计算机专业毕业之后都应该会修电脑一样……
        131
    shaozhiyuan   10 天前
    。。。这都有人洗吗。。
        132
    hyy1995   10 天前
    有的人就是真的只会读书,我见过。。。
        133
    mxT52CRuqR6o5   10 天前 via Android
    代码肯定是烂的,锅甲方自己得背一半,行情没了解清楚
        134
    zunceng   10 天前
    教授开发了一个程序可以把文字编译成代码。。。我编不下去了
        135
    justforlook44444   10 天前
    @ml1344677
    送给你 4 个字,夜郎自大。
    教授还帮你写代码呢,数钱都忙不过来。
        136
    superrichman   10 天前 via iPhone
    想想自己最开始写代码的样子 其实只要能跑就很开心了。
        137
    UnknownR   10 天前 via iPad
    @djs 难道袁隆平不种地?
        138
    mediapig89   10 天前
    @UnknownR 就是因为袁隆平种地所以他是工程院院士。杨振宁不会实验却是科学院院士。明白了么?
    拿出一段没有上下文的代码出来喷是没有意义的。
        139
    cyannnna   10 天前
    @iceEar 确实是这样。不过学界和业界脱节严重也是有目共睹的
        140
    callofmx   10 天前
    计算机研究生, 教授绝大多数是菜逼, 学校里 没钱, 没场景, 没数据, 做个屁计算机
        141
    secondwtq   10 天前
    @callofmx 你这话有点毛病,需要“场景”和“数据”的不是“计算机”。
    先把这部分“计算机研究生”排除出去再说剩下的 ...
        142
    djs   10 天前
    @UnknownR #137 要是袁老不会种地不得被你们喷死?
        143
    zetary   10 天前
    虽然可以理解,但是看着真的难受
        144
    whwq2012   10 天前
    这是 python 吧,用 python 的 list 装这些不就优雅多了
        145
    zappos   10 天前 via Android   ♥ 1
    只能说你的耐性真好。。。换成我就直接开喷了
        146
    jzq526   10 天前
    以前有篇文章,提到代码编写级别,最差的就是学习级别的,因为在学习,所以没有章法。然后就是能用级别的,作者本人是个大学教授,他特别说明,科研方面的代码,基本上都是能用级别的,应该就是你列出来的这种。
        147
    pingpingping   10 天前
    白猫黑猫抓到老鼠就是好猫
        148
    mskf   10 天前
    某 211 大学的教授和研究生+某个本科生的聊天记录:

    [图片]

    这就是你写的代码? python 课怎么上的?算法课怎么上的?害想不想保研了?
        149
    guabimian   10 天前   ♥ 2
    计算机这行你要把科研和工程能力分开就是扯淡 国内绝大多数科研做的就是工程研究,
    工程能力超低,连落地都搞不了,怎么做数据验证?

    不要再意淫天然认为 title 高的人工程能力差是因为他们科学理论研究强,忽悠能力强是真的。

    学术搞的好的工程能力不会太差。
        150
    mshadow   10 天前
    当你明白,世界上 99%的代码都是 shit 的时候,就会非常淡定了
        151
    NotFoundEgg   10 天前
    所以人家是教授啊 而大部分程序员都是搬砖的
        152
    sayano   10 天前
    这要是 cs 科班写的可以直接喷了....我一个非科班都弄不出这玩意来
    不过为啥会觉着老板会亲自写代码呢...配上这个标题很容易让人觉着酸吧
        153
    learnshare   10 天前
    没啥好洗的,8 年前的大学老师还在讲:你们不要学 JS,这玩意都没法调试
    然而 8 年前 jQuery 都开始下坡了
        154
    shuizhengqi   10 天前
    震惊,王坚居然不会使用数组循环,甚至不能手写红黑树,这个院士一定是有阴谋!
        155
    Blacate   10 天前
    哈哈哈 我我觉得我毕设的代码也和这个差不多
    开始前:我一定要按照代码规范 把代码写的赏心悦目
    进行中:今天好累哦 就玩手机休息一天把
    deadline 前: 代码就先糊起来再说吧 等有空了再重构一下
    答辩后:卧槽 这什么代码这么丑 算了 以后也不要用了 就这样吧
        156
    xsen   8 天前
    @canyue7897 你没看过开源的操作系统 /rtos 或浏览器的代码,就不要瞎逼逼,自以为是

    当然,从这个事情我也就理解有个冷笑话了:
    就是为什么国内各种大厂小厂开源的东西都不多——据说,是因为大部分都写的很烂,开源出来丢不起这个人

    不知道为什么,985/211 的研究生,还是 IT 相关专业的研究生,写成这样的代码还有人各种洗,真的不可思议
        157
    wind315   3 天前 via iPhone
    我不如,因为完全没看明白怎么回事
    1  2  
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   3360 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 29ms · UTC 10:16 · PVG 18:16 · LAX 02:16 · JFK 05:16
    ♥ Do have faith in what you're doing.