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

2016 一个想做架构师的码农

  •  
  •   88250 ·
    88250 · 2016-12-30 10:07:44 +08:00 · 6624 次点击
    这是一个创建于 2886 天前的主题,其中的信息可能已经有所发展或是发生改变。

    工作

    今年在房星主要负责了几个项目的技术设计和实现:

    • Protyle:敏感数据存取
    • CC:呼叫中心
    • Shotgun:房源群发
    • Spider:房源爬取
    • Auto:项目自动部署平台
    • StarChart:户型图测绘,以链家作为对标
    • SymX:企业内网论坛
    • Petal:配置中心,才开的新坑

    技术架构方面服务化的 Java 技术栈基本铺好路了,接力棒开始交给了其他伙伴。

    房源群发和爬取这个看上去有内容可做,不过泼冷水的是 58 已经上线了集客家,也是做房客源推荐、群发的,然而就在前不久我已经向老板请缨明年去专职做这一块了,怎么办 :joy:

    三十而立

    hi,你们想过当你40岁以后你能做什么吗?

    能力与价值

    今年开始奔四了,但我才刚意识到一个现实:我的能力不足以支撑我的生活。据说人最痛苦的事情之一就是实力不足以支撑其野心。

    在工作上,公司给了我一个较自由的定位,我也一直在问自己,到底能为公司创造什么价值?目前除了上面那堆破代码,我没能创造出什么价值,而一年过去了。无论是对公司还是个人来说,时间都是非常宝贵的,“天下武功,无坚不摧,唯快不破”。

    我不希望过几年以后会变成依靠资历经验的 PPT 架构师,但我希望写代码能成为副业。怎么实现呢?没想好,也许我就是想太多做太少了。

    持续学习,持续解决问题吧。

    Bootstrapping

    Bootstrapping 即引导/启动,比如当我们按下计算机电源按钮后到操作系统启动这个过程,比如某语言编译器自举实现。这里我想比喻的是创业初期都必须面对的首要问题:如何将事情启动起来。一旦运转起来后,就是不断调整和加速了。启动过程其实是在解决核心矛盾:构想在实现时必要的输入,最小输入下换回最大价值。

    比如:

    • B 端用户还是 C 端用户切入
    • PGC 还是 UGC 为主
    • 做发布源还是聚合分发
    • 分布式还是中心化
    • 是工具还是社交

    等等这些其实是问题根源,如果没考虑清楚说明思路还不清晰到能够创业,还需要再思考再观察。

    大 V

    大概是 4 月份的时候通过 GitHub repo 邮件邀请了一些大 V 加入 B3log 开源),引起 justjavac强烈不满,现在想想自己确实很傻,继续安静地开源,他们那个圈子不适合我。

    今年掀起的直播热把很多人相当网红的欲望点燃了,知识变现的方式也逐渐清晰了,但问题是真的有那么简单么,没持续干货输出的话对得起雪亮眼睛的群众么。我本来也燃了,搞了两次后灭了,下次直播就直接打码吧,兴许在直播时别人还能帮发现 bug....

    有不少人建议我出书,但关键问题是我写不出来啊,写代码已经是我目前的极限了,我但凡有那水平,写代码就真成副业了 :joy:

    开源

    NetBeans

    Oracle 甩锅给 Apache 后还需要一定时间才能稳定下来,不过新版的 NetBeans Logo 提案感觉很不错:

    9d92a47b01674f59939d57e51e9d0631-nblogo.png

    B3log

    B3log@GitHub 已经陆续加入了一些伙伴,也有伙伴开始 create/fork repo 到 org 中了。最令人高兴的是 Solo, Wide, Sym 这三个项目也加入了不少贡献者,在开发、设计、推广等方面都在推动着项目,这样的开源是我一直所期望的,相信这也是很多有着 开源情结 的开发者所向往的。

    今年抖机灵做了一个 QQ 聊天机器人小薇,这是一个典型的使用各种开源项目、在线服务强行粘合的程序。腾讯的 QQ Web 接口虽然不稳定而且限制很多,但令我没想到的是居然还是有一些人通过小薇的易用性进行各种商业的推广。我的视角太开发者,在别人看来程序只是一个工具,我却为之倾注了情感。

    功能困境

    开源项目你做的功能少了,有人说你系统简陋,什么都不能完成;你做的功能多了,有人说你系统太复杂,不够人性化。

    这就是业务型开源程序的困境,就算博客、社区这样“小”业务的开源程序也同样存在,因为程序最终服务的是有特定功能需求的端用户。从这个角度看,业务型开源项目的组织方式是以项目创始人的 目标 最为相关,后续参与进来的贡献者都是在帮助他完成目标。当然,这个目标有时很简单,就是希望自己好用,也希望有其他用户来使用这个程序。

    基础技术开源程序就不存在这个困境,因为可选替代很少甚至没有,而这部分开源项目的目标是大公司之间博弈决定的,他们更偏向于技术规范/标准的制定。

    GitHub

    2016 年我的 GitHub 时间线:

    3a962f3209684b498c0347c33ee92cba-github2016.png

    每天都提交一点东西,文档也好,代码也好,就像浇花一样。

    另外,请不要问我为什么有那么多时间搞这些、是不是工作不饱和、是不是单身狗等奇怪的问题,因为你肯定没在半夜 push 过 GitHub :smirk:

    坚持

    不存在所谓的坚持,做任何事总是有动机并且需要有正向结果驱动的。做了这么多年的开源,我集结了一个社群,认识了一些朋友,和他们一起撸过相同的代码,碰撞过差到不能再差的 idea……

    从中我得到了一些建议,而把这些建议付诸于实践,最后得到可验证的结果就是我继续推进 B3 的理由。所以根本不存在所谓的坚持,这是一件很自然的事情。说到底,自己做的架构,该自己写的代码终究是需要自己来写,对自己负责,对用户负责。

    黑客派

    起名小达人自认为的巅峰之作被 12 岁网瘾少年认为是黑客基地。

    黑客派取自《黑客与画家》,Hacker 就是黑客,Painter 就是画家,分别取前三个字母就构成了 https://hacpai.com,派字含有画家风格流派之意。

    黑客派 2016 年注册了 3.5K 用户,离 10W 的小目标又近了一步....

    技术

    Hybrid

    入门了 Unity ,以 Java 的风格写了些 C#。

    我发现最新、最火的一些技术(框架)越来越热衷于将一个语音编译成另一个语言、桥接,比如 Unity、React Native、Dart。以前我只觉得 JVM 系内各种语言已经很复杂了,这下好,直接是不同语系的。

    APP 的混合开发也从 Webview 嵌入变成了整合另一个项目的导出,比如 Unity 和 React Native 都可以导出 Android、iOS 项目,然后再将导出的项目通过代码方式整合进已有的原生项目中。目前看上去没什么大碍,但我担心膨胀下去 IDE 会罢工的。还好我是服务端开发,不是全栈工程师,就凑下热闹。

    Java

    Java 9 明年就发布了,目前我个人还停留在 7 的规范下,明年是应该在开源中用下新特性了。另外,Latke 也是时候翻新一下了,自己用的轮子总得是最圆的吧。

    golang

    作为前排吃瓜群众,我认为 golang 已经很好用,足够解决我面对的问题。事实上,今年在没怎么大更新的前提下 Wide 依然保持了 B3 系开源项目受关注度第一的位置,这足以说明 golang 的魅力。

    另外,“golang 在国内比国外火”的观点我不敢苟同,仅就 Wide 而言,大部分 PR、issue 都是歪果仁创建的,问题描述和代码补丁都很 nice,很多时候我也疑惑:这帮人都不用搬砖的吗?也许他们确实不用搬....


    明年该干嘛还是干嘛,在固化的阶级中继续挣扎。

    38 条回复    2016-12-31 19:50:00 +08:00
    madman
        1
    madman  
       2016-12-30 10:18:36 +08:00
    佩服楼主!
    Mistwave
        2
    Mistwave  
       2016-12-30 10:45:00 +08:00 via iPhone
    impressive
    wxl1380610
        3
    wxl1380610  
       2016-12-30 10:48:47 +08:00
    大牛
    88250
        4
    88250  
    OP
       2016-12-30 10:48:57 +08:00
    @Mistwave
    @madman

    多谢关注,一起加油
    kangsg219
        5
    kangsg219  
       2016-12-30 10:49:34 +08:00
    有追求!不过考虑换个更好的平台对你发展会更好!
    88250
        6
    88250  
    OP
       2016-12-30 10:55:24 +08:00
    @kangsg219 5 年前在过你隔壁厂房 :)
    kangsg219
        7
    kangsg219  
       2016-12-30 10:59:33 +08:00
    @88250 还愿意来杭州吗?
    iannil
        8
    iannil  
       2016-12-30 11:01:34 +08:00
    2017 年加油,写过 58 的车源群发和车源抓取,接力棒也已交给他人..23333
    88250
        9
    88250  
    OP
       2016-12-30 11:11:27 +08:00
    @kangsg219 谢谢好意,但是现在拖家带口的就不来了
    @iannil 好多都是假信息,也是醉了,哈哈
    huiyadanli
        10
    huiyadanli  
       2016-12-30 11:22:44 +08:00   ❤️ 1
    那些大 V 很多不都是娱乐圈的么(滑稽)
    EarlGrey
        11
    EarlGrey  
       2016-12-30 11:28:14 +08:00
    佩服楼主!
    hantsy
        12
    hantsy  
       2016-12-30 11:33:26 +08:00
    我的 Github : 879 contributions in the last year
    Durandal01
        13
    Durandal01  
       2016-12-30 11:46:19 +08:00   ❤️ 1
    Shutgun 这名字…莫名的有攻击性啊, 2333.

    等工作中其他事情渐渐多起来,写代码就自然而然成副业啦……然而并不开心。
    hantsy
        14
    hantsy  
       2016-12-30 11:47:29 +08:00   ❤️ 1
    NetBeans 我从 3.5 就开始用了,一直用到现在,曾经给 NetBeans 写过一个插件支持 Apache Click 框架,

    https://github.com/hantsy/click4nb

    后来 Apache Click 这个项目死了,我也没再更新了。
    hantsy
        15
    hantsy  
       2016-12-30 12:08:11 +08:00
    >开源项目你做的功能少了,有人说你系统简陋,什么都不能完成;你做的功能多了,有人说你系统太复杂,不够人性化。

    这个实话。

    我目前开源的项目几乎都是 Sample ,一般只要在一直更新的都基本五脏俱全,包含很多项目的积累,并有详细的 README 和大量的 Wiki Pages 来记录开发技术细节,希望能够直到一点作用就是授之以渔。

    遗憾的,不少国内的人一上来就直接运行,根本就没看过基本的 README 和 Wiki ,然后各种报怨 。更有甚者,邮件发过来恶语相向也有遇到。
    88250
        16
    88250  
    OP
       2016-12-30 12:24:56 +08:00
    @hantsy 握手
    lusizeng
        17
    lusizeng  
       2016-12-30 12:55:27 +08:00
    膜拜大牛
    eimsteim
        18
    eimsteim  
       2016-12-30 13:23:39 +08:00
    mark ,下班看
    eurry
        19
    eurry  
       2016-12-30 13:25:48 +08:00
    非常棒
    Charkey
        20
    Charkey  
       2016-12-30 14:24:02 +08:00
    膜拜一下。我得向你学习学习
    nsa
        21
    nsa  
       2016-12-30 14:27:46 +08:00 via iPhone
    hacpai 观光团过境
    renyiqiu
        22
    renyiqiu  
       2016-12-30 14:49:41 +08:00 via iPhone
    楼主你可有时间休息
    countdown
        23
    countdown  
       2016-12-30 15:08:16 +08:00
    求 hacpai 邀请码啊
    88250
        24
    88250  
    OP
       2016-12-30 16:28:09 +08:00
    zengfxios
        25
    zengfxios  
       2016-12-30 16:33:33 +08:00
    求分享一个 邀请码,谢谢!
    88250
        26
    88250  
    OP
       2016-12-30 16:44:29 +08:00
    @zengfxios 注册贴里有的,就不在这里发了,请理解。
    az999
        27
    az999  
       2016-12-30 17:03:00 +08:00
    确实佩服,我的发型也在向 lz 靠齐。。。
    lifesimple
        28
    lifesimple  
       2016-12-30 18:02:06 +08:00
    昆明租房好便宜啊 ,我特么现在的十平米单间房租能在昆明租个百来平的套间啊...
    justyy
        29
    justyy  
       2016-12-30 18:04:57 +08:00
    牛人, 没有 博客么?
    hugo775128583
        30
    hugo775128583  
       2016-12-30 18:49:42 +08:00 via Android
    谢谢大牛的分享!
    努力朝大牛看齐
    bigzhu
        31
    bigzhu  
       2016-12-30 20:58:31 +08:00 via Android   ❤️ 1
    年终总结啊,认真看完了。
    昆明少有的认真钻研写代码的程序员

    感觉真是要感谢房星,让不少呆在昆明的优秀程序员能生活无忧。
    88250
        32
    88250  
    OP
       2016-12-30 21:14:44 +08:00
    xiaoyangsa
        33
    xiaoyangsa  
       2016-12-30 21:37:55 +08:00
    搞不懂,房星到底什么鬼。单看这个东西,似乎实在虎口夺食。难搞
    justyy
        34
    justyy  
       2016-12-30 21:49:07 +08:00
    @88250 向牛人看齐。。。 打个广告,我的中文博客是 https://justyy.com 英文 是 https://helloacm.com https://codingforspeed.com 欢迎回访
    xiaoyangsa
        35
    xiaoyangsa  
       2016-12-30 22:03:38 +08:00
    上面的话冒昧了。了解了下,线下强硬的团队+线上。确实是最好的发展路线。
    88250
        36
    88250  
    OP
       2016-12-30 23:08:39 +08:00
    sangmingming
        37
    sangmingming  
       2016-12-31 11:07:14 +08:00
    楼主厉害了
    beidouxun
        38
    beidouxun  
       2016-12-31 19:50:00 +08:00 via Android
    @hantsy 项目开源还是不开源!什么时候开源!有讲究吗?我自己写了个问答、文章管理系统。在考虑是否开源,会不会有人说我写的烂。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   4289 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 01:06 · PVG 09:06 · LAX 17:06 · JFK 20:06
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.