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

你会因为工作天天写屎山,因此打算自己做个不屎山的业余项目吗?

  •  
  •   Kathy1989 · 45 天前 · 6365 次点击
    这是一个创建于 45 天前的主题,其中的信息可能已经有所发展或是发生改变。
    工作中免不了屎山,特别是国内所谓的敏捷开发

    屎山写多了,担心自己变成屎山思维,你会不会想自己做个不屎山的业余项目

    时间被公司榨干的人应该没空考虑
    66 条回复    2024-05-30 19:13:58 +08:00
    sidyhe
        1
    sidyhe  
       45 天前   ❤️ 8
    屎山是规律, 哪怕只有你一个人的项目, 代码量上来了一样是屎山
    能在模块边界处隔离屎山已经是一个非常好的框架了 (方便替换与重构)
    高内聚, 低耦合. 内聚的地方屎就屎吧, 先做出来, 如果还有精力优化再说
    过来人的经验
    wu67
        2
    wu67  
       45 天前   ❤️ 6
    没那个精力, 一天对着电脑 8 个多小时之后, 下班时我的狗眼已经块睁不开了, 更别说写自己的项目.
    stew5566
        3
    stew5566  
       45 天前   ❤️ 1
    上班认真吧,下班就没精力搞这些,人的精力总是有限的;
    上班不认真吧,下班有精力搞自己的东西,但是现在这大环境内心总是觉得忙一点稳,会有点恐惧
    SilencerL
        4
    SilencerL  
       45 天前
    屎山是每个项目的终点不管是个人还是工作项目(
    lychee930224
        5
    lychee930224  
       45 天前   ❤️ 11
    质疑屎山,理解屎山,成为屎山。
    byqtxdy07
        6
    byqtxdy07  
       45 天前
    @stew5566 所以我选择上班认真搞自己的东西(doge
    zealic
        7
    zealic  
       45 天前   ❤️ 6
    凡人老,就会死,化为黄土一抔。
    代码旧,将腐化,聚成屎山一座。

    没有什么精妙的设计敌得过一句:"时代变了,大人!",也即是:"食大便了,码农!"。
    1252603486
        8
    1252603486  
       45 天前
    项目如果不进行持续不间断的重构的话,是一定会变成屎山的,不是说你最开始抱着不写屎山代码的要求就不会变成屎山的,大部分时候重构又没有绩效,除了好维护,和修改成本底,所以屎山是每个项目的必经之路
    mandex
        9
    mandex  
       45 天前
    业余时间带娃;不搞这些。😁
    wlingxiao
        10
    wlingxiao  
       45 天前
    你以为代码屎山是谁写出来的?
    opengps
        11
    opengps  
       45 天前
    以前空闲时间多,确实用自己的业余时间在自己的环境下做了点尝试,所以我才有了这个网站
    kkkiio
        12
    kkkiio  
       45 天前 via iPhone   ❤️ 2
    会。
    我最近打算用新语言改写一个开源项目,其中一个目的就是实验各种理论,例如现代语言特性在实际工程中有多大帮助。
    如果不实际试试,怎么知道哪些问题是人为造成的,是有解决方法的。我之前在一个公司里陷入了习得性无助状态,那里很多问题过了两年都没改善,换个环境后才发现问题是可以解决的。
    duron600
        13
    duron600  
       45 天前
    不要太自信。
    solangm
        14
    solangm  
       45 天前
    不会,我业余项目也是屎山。
    angrylid
        15
    angrylid  
       45 天前 via Android   ❤️ 2
    你看动物世界里面,狮子都用排泄物标记领地。
    归根结底,人不过对他人的气味尤其感到恶心罢了。
    dudubaba
        16
    dudubaba  
       45 天前   ❤️ 1
    刚入行时我觉得写的每一行代码都要追求完美,干了几年后,去 TM 的,赶紧写完下班!年龄大了哪天失业还不知道呢,满脑子都是失业后怎么搞钱!
    shuxhan
        17
    shuxhan  
       45 天前
    代码能跑就行,我已经没有精力去写优雅的代码了 😁
    baiyaoqiang
        18
    baiyaoqiang  
       45 天前
    @dudubaba 卧槽,你说出了我的心声,知己呀
    bug123
        19
    bug123  
       45 天前
    当然有,维护好多年了,也赚了不少
    SJH0402
        20
    SJH0402  
       45 天前
    @dudubaba 我现在就处在 "写的每一行代码都要追求完美"这个阶段,但是国内的敏捷开发遍地开花,一度搞得有点抑郁
    Goooooos
        21
    Goooooos  
       45 天前
    写出来没收益
    Building
        22
    Building  
       45 天前
    自己的项目没人帮你 Review ,更屎山,特别是命名,心情好的时候用狗的名字命名都没问题,两个月一看不知道自己写了啥
    YuanJiwei
        23
    YuanJiwei  
       45 天前
    业余和我一起搞独立产品吧,注重代码质量和可维护性 React + Golang + PostgreSQL
    fstar
        24
    fstar  
       45 天前
    有个自己写的开源业余项目,写了一年多,已经是屎山了,到处都是 "TODO: 待优化" 的注释
    LancerComet
        25
    LancerComet  
       45 天前
    写个人项目只是个自我实现罢了,跟工作屎不屎关系不大,另外个人项目纯粹靠热情,热情来自生活状态,没有就算了
    Northxw
        26
    Northxw  
       45 天前
    刚毕业的前两年,简直无法理解屎山代码,但是它确实能跑起来且产出报告。

    慢慢的发现自己无法容忍屎山,看着真 ™ 的难受。开始每天高强度重构屎山框架、屎山代码 (非领导要求,处于本能的优化)。

    再慢慢的发现,完全没有那么多的时间精力搞了,就算搞好了看的舒心了,在领导看来,它不还是那样,有啥区别???

    嗯,没毛病,既然这样,就理解屎山(没办法做到自己的代码成为屎山,就理解一下别人在项目紧张的情况下写好的屎山)
    guoshim
        27
    guoshim  
       45 天前   ❤️ 1
    屎山是大部分软件工程的必然结果,而工程师们要做的是尽量延缓 codebase 变屎山的速度,在可维护性与交付效率之间取得平衡。可以说,这也是工程师的核心竞争力之一。需要有良好的代码规范,及时的重构,科学的团队管理。
    haneki
        28
    haneki  
       45 天前
    但是我的业余项目也挺屎山的。
    wuzhewuyou
        29
    wuzhewuyou  
       44 天前 via Android
    不会,正如我每次工作中遇到 xx ,感慨自己以后一定要系统学一下,实际就是项目完了,再也没多看一眼
    chaoschick
        30
    chaoschick  
       44 天前 via Android
    杀一人为罪,杀万人为雄,杀百万为雄中雄
    当屎山堆到一定程度 我觉得就不应该成为屎山了 他已经形成一种风格 一种规则了
    SodaPopBoy
        31
    SodaPopBoy  
       44 天前 via Android
    当你想着以后再解决的时候,大概率以后就这样了
    RightHand
        32
    RightHand  
       44 天前 via Android
    除开业务变更的问题,我能保证不屎,但同事不行。个人项目只要还在维护就不可能屎(自己的需求也不会瞎变)。另外说个暴论:敏捷就是屎。谁还记得软件开发有软件设计这一环?或许现代语言越来越不注重面向对象,越来越函数化,就是一种无声的抗争。
    wanqiangcrack
        33
    wanqiangcrack  
       44 天前
    是什么让你觉得你自己写就不是屎山?

    当你厌恶别人的代码的时候,别人同样也在厌恶你,一般情况都是这样的。
    wanqiangcrack
        34
    wanqiangcrack  
       44 天前
    @RightHand 敏捷或不敏捷取决于行业需求, 工业软件不会寻求敏捷,因为他们的需求更恒定,更稳定,且要求性能强 鲁棒性好,所以工业类软件一般都是干一把好多年,一用用个十多年。 互联网能这么搞么? 显然不行的。 选择什么开发模式只取决于你的客户需求。

    开发重要不重要呢, 其实开发在老板那没有那么重要,能带来需求的人更重要。 比如 销售。
    zhhqiang
        35
    zhhqiang  
       44 天前
    定制化严重,个人不适合。
    drymonfidelia
        36
    drymonfidelia  
       44 天前 via iPhone
    @byqtxdy07 上班搞自己的东西,法律意义上版权归老板。上班只适合摸鱼
    Seria
        37
    Seria  
       44 天前
    屎山是无规范无管理、分工不明确、需求快速变更迭代的实体表现。
    无论是个人,还是团队,最后都大多难逃这一点。
    andytao
        38
    andytao  
       44 天前
    一个人开发 [袋鼠数据库工具] 五年了,代码超 10W 行,由于功能迭代较快,不断在升级和进化,历史遗留情况越来越多,已经有屎山的既视感了;
    https://github.com/dbkangaroo/kangaroo

    一个人的项目况且如此,多人参与的项目可想而知更加复杂和屎山化;

    一个业务生命力越长,功能特性越多,参与的人越多,屎山化是必然,没有银弹;必须不断重构和解耦。
    EndlessMemory
        39
    EndlessMemory  
       44 天前
    只能减慢屎山的速度,各类需求一多,代码就很容易腐化
    andytao
        40
    andytao  
       44 天前
    兄弟们,要有董存瑞的牺牲精神,勇敢的向屎山进军,哈哈哈哈哈哈
    RightHand
        41
    RightHand  
       44 天前 via Android
    @wanqiangcrack 那只是个人暴论,不必深究。软件设计在实际中(尤其国内),确实一点都不重要
    blinue
        42
    blinue  
       44 天前
    我写自己的项目会花很多时间来优化和重构,和实现新功能一样重要。工作时屎山已经品尝够多了,在自己的项目里呼吸一下新鲜空气
    likunyan
        43
    likunyan  
       44 天前
    就算自己的代码,刚开始写得很规范,到最后有些不会,妥协了,就屎山了。
    panlista
        44
    panlista  
       44 天前
    经典的倒排期导致我不得不写屎山代码
    weixind
        45
    weixind  
       44 天前
    绝大部分程序员,认真写也是屎山。能力不够,你懂吧?
    lizhisty
        46
    lizhisty  
       44 天前
    业余和我一起搞独立产品吧,注重代码质量和可维护性 flutter+ Golang(go nunu) + mysql
    wanqiangcrack
        47
    wanqiangcrack  
       44 天前
    @RightHand 不是不重要,这个是要看需求的。 正儿八经的工业软件都是需要非常良好的设计才行的, 不然制造业可是不买账的,三天两头做更新,修 bug 修着修着公司就给修没了。 至于 C 端的需求,则没有那么紧要了,所以所谓 OTA 天天打补丁就经常见了。 最大的转变的典型就是微软的 windows windows 在 8.1 版本之前,c 端的稳定性也是足够的,因为测试的非常充分,鲍尔默时代对软件质量是有追求的, 咖喱佬上来之后,就不再重视 C 端体验了,靠不断地刷版本打 patch 去修复一些本可以不需要出现的 bug 和问题。 C 端的需求是不怎么被重视的,当然未来可能会所改变。
    Hopetree
        48
    Hopetree  
       44 天前
    随着时间的拉长,项目的扩展,最终都会走向屎山,公司项目一开始也不是屎啊
    dislazy2023
        49
    dislazy2023  
       44 天前
    只要和业务相关的,如果业务的走向是一个曲折路线,是必然的,技术人应该更多的是用技术实现需求,做好前期的架构设计
    jiminjohn0402
        50
    jiminjohn0402  
       44 天前
    业余继续工作吗?还是业余和工作不区分?
    ChainLock
        51
    ChainLock  
       44 天前
    @dudubaba 真相了
    easymbol
        52
    easymbol  
       44 天前
    开始时是想着控制,越写越控制不了靠近屎山
    swim2sun
        53
    swim2sun  
       44 天前
    只打算自己做个赚钱的业余项目,管它屎山不屎山
    laobobo
        54
    laobobo  
       44 天前
    那屎山不就是自己堆的么 哈哈
    wqhui
        55
    wqhui  
       44 天前
    东西多了,没有整理就变屎山罢了
    Greendays
        56
    Greendays  
       44 天前
    自己写的屎山,难道也要抱怨吗?别人写的可能会吧。
    dif
        57
    dif  
       44 天前
    没时间,要有时间我也不会堆屎了。
    kios
        58
    kios  
       44 天前
    没时间
    a771507192
        59
    a771507192  
       44 天前
    没啥用,敏捷开发就别想保证代码质量了
    cmsyh29
        60
    cmsyh29  
       44 天前
    屎山挺好的 说明业务更迭多 不会轻易放弃
    cokyhe
        61
    cokyhe  
       43 天前
    写着写着发现最后都是屎山
    xiangbohua
        62
    xiangbohua  
       43 天前
    自己项目写的就没有屎山了?
    所谓屎山无非就是理想和现实的妥协,不用太纠结吧,设计的时候设计好点能缓解一些。
    janus77
        63
    janus77  
       43 天前
    人是不可能一辈子不写屎山的,你做这个项目的意义是什么呢,为了证明自己?真没必要
    想想你用着写屎山赚来的钱维持生活,是不是有种被骑在头上的感觉。
    当然,这是建立在你极度想要逃离屎山的基础上。如果你没有逃离的想法,那生活依然美好。
    所以,放弃挣扎吧
    z1154505909
        64
    z1154505909  
       43 天前
    我在维护一堆屎山,都快把我的开发热情干没了
    idragonet
        65
    idragonet  
       43 天前
    不会,因为会发现自己业余写得项目更屎山!
    linyongxin
        66
    linyongxin  
       43 天前
    吹成神的张小龙已经变成张小聋,微信已经成为手机里最大的一坨屎山。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1055 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 18:48 · PVG 02:48 · LAX 11:48 · JFK 14:48
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.