V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
int64ago
V2EX  ›  职场话题

一个创业团队把代码写成这样,你身边有这样的吗?

  •  
  •   int64ago · 2015-05-07 20:53:04 +08:00 · 7831 次点击
    这是一个创建于 3492 天前的主题,其中的信息可能已经有所发展或是发生改变。

    还是不上截图了……就语言描述下吧

    背景是这样的,一个创业团队中途走了一个技术人员,我就被临时工了……(因为觉得用的技术还是挺新的,于是才愿意尝试下的)

    然后进去后看了几天遗留的代码,大概总结就是:
    托管在 bitbucket 的,然后后台代码的 commits log 几乎清一色的 "fix bug"
    Android 的项目代码结构及命名就更让我抓狂了, myActivity.java/myActivity_1.java/myActivity_2.java/myActivity_old.java/...

    git 感情被用来当网盘备份使了……

    然后,因为大家都有各自的事,于是不在一起办公,讨论的话非要我加什么 qq/weixin 群,协作糟糕的很, 很多事情讨论不清,那么多协作交流工具不用……

    不知道这种情况,你们周边遇到的多不多,很纳闷……

    第 1 条附言  ·  2015-05-07 22:35:14 +08:00
    看来是我大惊小怪了……
    81 条回复    2015-05-31 14:38:23 +08:00
    Septembers
        1
    Septembers  
       2015-05-07 20:55:23 +08:00 via Android
    建议尽早离开
    int64ago
        2
    int64ago  
    OP
       2015-05-07 20:56:03 +08:00
    @Septembers 我只是临时工,学生赚点生活费而已
    Septembers
        3
    Septembers  
       2015-05-07 20:57:51 +08:00 via Android
    Septembers
        4
    Septembers  
       2015-05-07 20:58:10 +08:00 via Android
    @int64ago 不能要求使用邮件沟通吗?
    wy315700
        5
    wy315700  
       2015-05-07 20:58:26 +08:00
    估计那个技术人员就是这么走的。。。
    int64ago
        6
    int64ago  
    OP
       2015-05-07 20:58:58 +08:00
    @Septembers 我都是主动发邮件的,但是我不能要求别人啊,毕竟临时工……
    evlos
        7
    evlos  
       2015-05-07 20:59:12 +08:00
    工资 = 精神损失费,如果什么时候你得到的精神损失费无法补偿你的精神损失了,就离开吧。
    lifanxi
        8
    lifanxi  
       2015-05-07 20:59:53 +08:00   ❤️ 1
    > commits log 几乎清一色的 "fix bug"

    这种太常见了,我所在的某大厂,照样有“XX研发专家”是这样写commit log的,而且比"fix bug"还不像话,他统一都写“modified by xx”,xx是他的名字。
    coney
        9
    coney  
       2015-05-07 20:59:54 +08:00
    一般这样的就是自己都发现程序没法往下写了。。赶紧走人。坐等接盘侠接盘。。
    int64ago
        10
    int64ago  
    OP
       2015-05-07 21:00:31 +08:00
    @evlos 啊啊啊 我本来就不打算留啊,我纳闷的是,是不是很多创业的都这样干啊,这太恐怖了
    int64ago
        11
    int64ago  
    OP
       2015-05-07 21:01:58 +08:00
    @lifanxi 这我在另外的地方也见过,吓鸟,关键是 user.name/gmail 也不设置,都是 root@localhost
    jiang42
        12
    jiang42  
       2015-05-07 21:03:15 +08:00
    @int64ago 根据我这几天面试的经验来看,上海地区10家创业公司里大概有两家是靠谱的。。。敏捷开发是这类公司最好的借口。
    int64ago
        13
    int64ago  
    OP
       2015-05-07 21:03:55 +08:00
    @jiang42 你是面试官还是求职者啊?
    gDD
        14
    gDD  
       2015-05-07 21:07:59 +08:00 via iPhone
    @lifanxi 默默看了一眼你的 profile,嗯,是杭州某大厂。
    SeanChense
        15
    SeanChense  
       2015-05-07 21:14:54 +08:00   ❤️ 1
    给别人写外包 commit 几乎都是 update

    待过的一家创业公司很严谨,commit 写的清清楚楚;
    各个 branch 的生存周期;
    ticket 的任务追踪,每个 dev 的 branch 按照 ticket 的编号来;
    code review 完毕 branch#xx push 到 testing
    ryanking8215
        16
    ryanking8215  
       2015-05-07 21:17:59 +08:00
    我都是写在ChangeLog里,commit只写比较重要的修改。有这样做的吗?
    remotejob
        17
    remotejob  
       2015-05-07 21:19:20 +08:00   ❤️ 1
    这个说明你们公司面试有问题?
    viator42
        18
    viator42  
       2015-05-07 21:20:10 +08:00
    项目一旦急起来有时候规范什么的就顾不上了.git log有时候不写,但取个有意义的变量名这是必须的吧.
    em70
        19
    em70  
       2015-05-07 21:28:19 +08:00
    @int64ago 你不能拿大公司的管理水平来要求创业公司,创业公司首要目标是生存,开发规范肯定不会是公司特别重视的地方,既然你看到了问题,跟老大提出来,尽量能帮团队规范化就行了.
    killpanda
        20
    killpanda  
       2015-05-07 21:31:14 +08:00 via iPhone   ❤️ 1
    之前的接口 removeDiary 是取消收藏,myDynamic 是我的动态…
    siteshen
        21
    siteshen  
       2015-05-07 21:32:01 +08:00
    Slack 要翻墙,微信总体挺好,不过电脑上每天都要登录太麻烦。
    staticor
        22
    staticor  
       2015-05-07 21:32:16 +08:00
    正常的现象, 既然来吐槽 还是应该选对节点
    michaelye1988
        23
    michaelye1988  
       2015-05-07 21:32:38 +08:00
    myActivity.java/myActivity_1.java/myActivity_2.java/myActivity_old.java/...

    这样的写法我觉得一个大学生,稍微有点项目经验也不至于这样写吧~
    uniquecolesmith
        24
    uniquecolesmith  
       2015-05-07 21:35:14 +08:00
    我想知道,如何赚外快,业余贡献代码~~
    kxxoling
        25
    kxxoling  
       2015-05-07 21:48:10 +08:00
    见过写 fox bug 的。
    yangqi
        26
    yangqi  
       2015-05-07 21:56:30 +08:00
    创业公司很正常,这些技术细节开始根本不重要,创业公司开始主要的是客户和市场,为了生存下去
    jiang42
        27
    jiang42  
       2015-05-07 22:11:01 +08:00
    @int64ago 求职者~应届生
    int64ago
        28
    int64ago  
    OP
       2015-05-07 22:24:07 +08:00
    @SeanChense 是你写 "update" 还是看到别人写啊?
    int64ago
        29
    int64ago  
    OP
       2015-05-07 22:25:07 +08:00
    @staticor 算我大惊小怪了
    FradSer
        30
    FradSer  
       2015-05-07 22:26:40 +08:00
    多,太多了……
    kimmykuang
        31
    kimmykuang  
       2015-05-07 22:26:55 +08:00
    wiki+commit 进行issue track会比较好
    yanjunjie
        32
    yanjunjie  
       2015-05-07 22:29:51 +08:00
    创业公司,有的确实不规范!
    shippo7
        33
    shippo7  
       2015-05-07 23:21:59 +08:00
    很多创业团队都是找临时工拼凑,为了便宜,少发点工资。大家来了就是混工资,反正应付完今天的工作就行,实在干不下去就走找下一家。这种团队钱花完了也就散了
    zoosucker
        34
    zoosucker  
       2015-05-07 23:30:01 +08:00
    这不算什么,我见过写if (1==1) {// 一堆操作的}, 最后出了问题很久才发现,小公司没有人检查你的代码写的好不好,实现功能就行了,boss只要能run,才不管你的代码好不好维护...
    jun4rui
        35
    jun4rui  
       2015-05-07 23:32:12 +08:00
    我见过电信内部有个代码循环n次就把代码复制n份的……

    我还见过中国某大型数据提供商给了个怎么都不会有结果的SQL语句(WHERE i.ic_num='90011941' AND i.trn_dt>'0001-12-31' AND i.trn_dt<'0001-12-31' )

    见过有到现在还在用SQLServer2000的Oracle认证DBA

    见过还在用几年前的tomcat绿色版直接解压从来不关注补丁漏洞也从来不升级的架构师





    SeanChense
        36
    SeanChense  
       2015-05-07 23:35:58 +08:00 via iPhone
    @int64ago 我自己写的 update 囧
    int64ago
        37
    int64ago  
    OP
       2015-05-07 23:51:56 +08:00
    @jun4rui 好可怕啊~~~(作周润发状)
    cbsheng
        38
    cbsheng  
       2015-05-08 00:02:29 +08:00
    @int64ago 这生活费赚得很是心累啊。。。干久了对身体不好
    donghouhe
        39
    donghouhe  
       2015-05-08 00:07:19 +08:00 via Android   ❤️ 1
    好久以前我就是用复制粘贴代替循环,写了一个5M的源码文件,我骄傲地告诉自己我写了50万行代码了,我是大牛了!
    guoer
        40
    guoer  
       2015-05-08 00:09:10 +08:00
    命名中英混合怎么破
    kukat
        41
    kukat  
       2015-05-08 00:29:14 +08:00
    我见过git commit log是这样的
    backup 2015-05-01
    backup 2015-05-02
    ...
    backup 2015-05-08


    尼玛daily backup做的挺好啊
    int64ago
        42
    int64ago  
    OP
       2015-05-08 00:30:48 +08:00
    @kukat 感觉像是脚本跑的
    adspe
        43
    adspe  
       2015-05-08 08:00:41 +08:00 via iPad
    像是我高中时候的风格。
    xunfeng
        44
    xunfeng  
       2015-05-08 08:25:54 +08:00
    哎,更离谱的我都见过。碰到有人把图片命名为 1.png 2.png ..... 初始化控件直接就一个for循环,把循环的index ( 其实他写的是 i,你懂得),格式化成图片的名字 1.png,2.png ....,本来我以为这特效已经很duang辣,没想到有个二级菜单 居然用两层for循环。。。
    lucifer9
        45
    lucifer9  
       2015-05-08 08:38:34 +08:00
    见过变量命名用a to z,然后aa to zz的么
    joshualeung
        46
    joshualeung  
       2015-05-08 09:17:24 +08:00
    这是得有多懒才会这样命名!
    caiya21
        47
    caiya21  
       2015-05-08 09:24:50 +08:00 via iPhone
    做技术时要有追求,看来我司的代码管理还是相当合理的
    Phoinikas
        48
    Phoinikas  
       2015-05-08 09:37:43 +08:00
    一个函数,上半部分使用参数,中间把参数赋给一个局部变量,下半部分又用局部变量了。
    一个函数,在堆里分配了内存,初始化,然后赋值给局部变量,然后下面又用局部变量。。。函数结束还没把分配的内存释放。
    需要相同或者类似的功能直接把大段源码拷过去。。两个几千行代码的类,至少一半以上的功能相同或相似。

    我只想说,不规范的团队接手别人的项目就是个巨大的坑。
    init
        49
    init  
       2015-05-08 09:39:09 +08:00   ❤️ 1


    我同事给我说, 写代码不要给别人添麻烦 也不要给自己找麻烦, 自己写的代码要付得起责任, 无论维护也好还是留给其他人做资料也好,都要规范, 起名最起码要做到见名知意。 刚开始不注意 ,所以遇到很多麻烦事, 现在好很多, 毕竟我是个新人 能带我飞我确实挺感激他的
    recall704
        50
    recall704  
       2015-05-08 10:06:17 +08:00
    @ryanking8215 有,我就是专门有个文件来存放修改记录,svn 或 git 只简单写写大概信息.
    simapple
        51
    simapple  
       2015-05-08 10:21:54 +08:00
    好吧 我也经常把不知道怎么描述的 commit 写个fixbug
    yangxiongwei
        52
    yangxiongwei  
       2015-05-08 10:37:26 +08:00   ❤️ 4

    是时候上这张图了
    v3u3i87
        53
    v3u3i87  
       2015-05-08 10:52:17 +08:00
    坑爹,现在很多的。。
    fxxkgw
        54
    fxxkgw  
       2015-05-08 11:30:35 +08:00
    受不了你们这些矫情仔。。
    在不仅仅是世界500强公司,一个函数几千行,茫茫多的ifdef endif来区分几十种不同产品,十多年的代码,经过成百上千的不同水平和习惯的程序员之手,你还敢设想会好成什么样?
    zythum
        55
    zythum  
       2015-05-08 11:34:13 +08:00
    commits log 其实我感觉并不重要。代码逻辑清晰。注释或者文档详细就可以了。
    civet
        56
    civet  
       2015-05-08 11:59:06 +08:00
    算好了,我的队友commits log根本没作用,全打1
    只有我在用sourceTree,其他全在用乌龟git
    至于代码质量就别提了
    yangmls
        57
    yangmls  
       2015-05-08 12:10:18 +08:00
    @civet 乌龟有啥问题?对于日常要求,我感觉两者用着差不多。
    FifiLyu
        58
    FifiLyu  
       2015-05-08 12:52:25 +08:00
    @Phoinikas 哈哈!我也做了别人的接盘侠。然后,发现各种复制的代码,各种功能重复,也就是只要实现功能就是好的。彻底无语。

    一眼看懂代码?不要想了,变量名基本都是f、a、b、q等,很多时候再来一个“美丽”的循环,我就疯了。
    FifiLyu
        59
    FifiLyu  
       2015-05-08 12:54:42 +08:00
    我也在创业公司。至少,我手上的事情对得起拿的工资和良心。
    1天的工作量,我会报3天。老板催,我就说这个必须这么久。一步步搞定,自己掌握进度。
    pepsin
        60
    pepsin  
       2015-05-08 13:08:41 +08:00
    说正常的估计都是来自即将倒闭的公司
    tension2012
        61
    tension2012  
       2015-05-08 13:12:29 +08:00
    我见过,用mysql,从来不建索引的, 不会用ConcurrentHashMap,只知道synchronized
    zichen0422
        62
    zichen0422  
       2015-05-08 13:39:43 +08:00
    话说我也是这么提交代码的 :
    前几行注明是怎么修改 比如修改了什么地方
    后两行 就是fix bug 和 modify by xxxx
    cougar
        63
    cougar  
       2015-05-08 13:42:47 +08:00
    几年前,很正经的写log,现在在小公司根本连fix bugs都不写的。。。。因为某种程度上根本没想到过有人会接手的,哎,坏毛病
    ttph1oc
        64
    ttph1oc  
       2015-05-08 14:27:47 +08:00
    90%创业单位都是这样,我觉得这也是90%创业单位活不下来的次要原因之一。
    dingyaguang117
        65
    dingyaguang117  
       2015-05-08 14:46:10 +08:00 via iPhone
    @yangmls 应该是海龟吧
    est
        66
    est  
       2015-05-08 14:50:16 +08:00   ❤️ 2
    每当看到有人吐槽各自厂里git用得混乱,我就回一句:


    你们见过4kw用户的生产环境系统是在正式服上用root直接开发的10多个人用同一个git帐号提交是“update by xxx”所有修改只有一个master分支最新提交还是1个月前的直到有一天一个逗比用了一个中文branch名字把git web显示工具搞挂了 这种团队吗?
    Tiande
        67
    Tiande  
       2015-05-08 14:59:12 +08:00
    @est 一看到没标点,就知道是真的在吐槽了。
    hia hia hia hia
    xiaogui
        68
    xiaogui  
       2015-05-08 15:00:14 +08:00
    @xunfeng 循环图片这个牛逼呀
    cdxem713
        69
    cdxem713  
       2015-05-08 15:32:52 +08:00
    刚招来的前端,说是代码写了5年了。变量命名各种拼音缩写,一个class的CSS全写在一行里面,做页面就是Develop tools里面慢慢调,调到可以正常显示就算完成了
    jiangzhuo
        70
    jiangzhuo  
       2015-05-08 16:57:33 +08:00
    不要跟它們浪費生命了 快撤
    saybye
        71
    saybye  
       2015-05-08 17:04:05 +08:00
    MARK 另外问下协作交流工具有哪些呢?
    kingname
        72
    kingname  
       2015-05-08 17:07:34 +08:00
    @coney 彪哥又遇到你了~
    kawaiiushio
        73
    kawaiiushio  
       2015-05-09 00:49:23 +08:00
    @saybye trello slack 微信 qq
    gateswong
        74
    gateswong  
       2015-05-09 03:17:45 +08:00 via Android
    感觉进一个好公司真的重要啊,最重要的是还要有一个好leader

    我的实习就教会了我很多好习惯,老大说你commit的时候要make sense,用尽量简短的话语写清楚修改了什么

    还有各种coding style要保持一致啊什么的
    coney
        75
    coney  
       2015-05-09 11:16:51 +08:00
    @kingname 么么哒~
    SeanChense
        76
    SeanChense  
       2015-05-11 13:07:16 +08:00 via iPhone
    233333

    我今天谈了个外包,目测跟你是同一个公司
    int64ago
        77
    int64ago  
    OP
       2015-05-11 14:40:24 +08:00
    @SeanChense 好的 欢迎来,我最经要开始重构代码了,你倒好 IOS还没人动,你可以安心的规范写代码了
    SeanChense
        78
    SeanChense  
       2015-05-11 19:41:00 +08:00
    @int64ago 还没答应下来,还没谈好呢。主要是不知道要多少钱合适 囧
    int64ago
        79
    int64ago  
    OP
       2015-05-11 22:27:18 +08:00
    @SeanChense 按月算还是按项目结?
    ianisme
        80
    ianisme  
       2015-05-18 23:38:13 +08:00
    @jiang42 哈哈 敏捷开发,哇哈哈。我想起了之前公司的一个人,哇哈哈
    ddou
        81
    ddou  
       2015-05-31 14:38:23 +08:00 via iPad
    @jiang42 敏捷就是死在这些人手里
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1045 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 22:12 · PVG 06:12 · LAX 14:12 · JFK 17:12
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.