到底怎样才不算是搬砖、API Caller、Crud Boy?

2019-07-06 05:35:53 +08:00
 ericgui
本人尝试着用 rust 写个编译器

一方面写不出来
二方面,就算是写出来了,大概率火不起来,只能止步于玩具

所以,请教方家,到底怎样才能脱离搬砖、API Caller、Crud Boy 的层次?

程序员在技术上到底有没有核心竞争力?
8542 次点击
所在节点    程序员
21 条回复
mcfog
2019-07-06 06:54:44 +08:00
对比软件工程和普通的比如建筑工程,你会发现软件工程师的一个特殊的特点是他即是方案的设计规划者,又是实施者

众所周知工地工人的核心竞争力就是工作量,对比程序员如果你的角色停留在实施者,那么核心竞争力也只能是工作量,福音战士
而设计者的核心竞争力就多的多了,不妨看看 这个 https://gist.github.com/mcfog/70411189992cee788f15c21f68bba1ae
orzorzorzorz
2019-07-06 07:13:29 +08:00
标题中的三个概念不能一概而论。后两者是前者的工作内容,前者是后两者的工作思想,且不以个人意志为转移。一方面,环境是主要因素,个人的上限取决于公司或者直接领导的上限,个人的努力在某种程度上是没有意义的。另一方面,个人的综合素质和能力的提升速度是决定能否快速进阶的关键因素,在这个层面上,个人的上限即是天花板。这两者并不矛盾,但在进阶路上缺一不可。环境好,但容易使人产生虚无的个人膨胀;个人极其崇尚努力,则会容易成为”奋斗逼“。只有二者和谐统一,才有可能到达”专家“这个层次。

正文中的”尝试写编译器“这一行为在个人的编码能力与和 hr 吹逼能力的提升是显著的,但”求火“的心态是要不得的。著名前端 ui 库 vue 作者曾称,vue 在最初时也只是个模仿 angular 的玩具,尤后续多年对代码的热忱和坚持才是 vue 成功的关键因素。最近一段时间,他也在个人媒体帐号发文,说”学会编译原理就能为所欲为“。从批判的角度来分析,不会编译原理确实不会让个人失去目前的”饭碗“,但从长远来看,其收益不下于”打开一扇新世界的大门“,对个人编码能力的提升更是不言而喻。在”格局“提升的同时,也会提升个人的自信感,在于 hr 交涉时也会顺利不少。

技术在”程序员“职业生涯中的作用举足轻重,但也是限制其进步的一道枷锁。如果说对代码的组织和管理能力是”硬能力“,那与团队的沟通及项目落地能力就是”软能力“。”硬能力“提升到极致就会成为科研工作者,”软能力“提升到极致,则会成为优秀的管理者。两者得兼,则是某个领域的”大牛“。由此管中可窥,能力提升是好,但如果没有提升到天花板以上,也就是突破职业的层面,那就只能是”程序员“。

---
最近在练申论,上面这些的人话版本是:
想脱离板砖层次,你得极致刻苦,不局限于想火,不怕被人说称奋斗逼,还得有个有能力、能赏识、能提拔你的领导
程序员没前途,但敲代码的有
VDimos
2019-07-06 08:15:42 +08:00
这几个差得有点儿远
mengzhuo
2019-07-06 08:55:21 +08:00
别人都是自嘲,你当真了。

各种语言的 VM BOY , RUNTIME BOY
操作系统的 SYSCALL BOY
各大 CPU 厂商的 instruction BOY
各种外设厂商的标准化 BOY

计算机的精髓就是加逻辑层,方便使用的同时多了很多概念,能拆解出在 API 的耗时,性能分析,底层涉及的原理就可以了。最常见的考题是从鼠标点一下链接,到看见网页,这中间都经历了什么。
alpha2016
2019-07-06 08:56:36 +08:00
除了资本家,都是搬砖的,就是小工和长工的区别,资本家是给国家搬砖的。
shujun
2019-07-06 09:17:07 +08:00
从需求源头出发,用程序去解决实际问题的时候,并没想过是 API caller 还是 CRUD boy。更多的是希望用更好的设计来保证产品满足当前功能,又具备扩展性,便于管理等。
lowman
2019-07-06 09:43:59 +08:00
作为一个被 V2EX 封过号的程序员, 我的竞争力估计也就只剩下划水了(毕竟总是被说是水军), 等攒够了钱, 就回老家卖方便面. 连深圳户口都没有, 就算来了深圳, 我也不敢说自己是深圳人. 反正是在 CRUD BAD BOY 的路上, 渐行渐远, 然后每天用一些微不足道的成绩欺骗自己. 不管怎么样, 码还是要撸的..........
mikulch
2019-07-06 09:50:12 +08:00
@alpha2016 朋友,这可是有区别的。
软件工程师,或者程序员,和普通的工地技术人员和制造业技术人员本质的区别是什么。
是软件工程师基本不依赖生产资料。或者说生产资料的成本极低。一台电脑。

而其他的技术人员,必须依赖资本家的生产资料。这在话语权上就有了本质上的区别。
huijiewei
2019-07-06 10:13:35 +08:00
不知道为啥都瞧不起 crud,是觉得自己写的烂所以 crud 都是烂代码?
hmxxmh
2019-07-06 11:18:01 +08:00
@huijiewei 是觉得是个人就能写
Takamine
2019-07-06 11:24:31 +08:00
除开一些写出真的作品的大神之外。
个人觉得是那些在业务抽象和运用语言特性都很厉害的人。
当然也还是有点怕那些套设计模式花式炫技的大佬:doge:。
charlie21
2019-07-06 12:37:07 +08:00
四个字:设计模式
一个字:IoC
charlie21
2019-07-06 12:40:32 +08:00
再下来就是 写 SDK,写机器人,写机械臂
Leigg
2019-07-06 12:47:15 +08:00
优化现有的设计,做个优秀的 boy
xuanbg
2019-07-06 16:47:51 +08:00
大家都在写代码解决问题,你看别人说要用缓存,你也用缓存,你看别人说要用 MQ,你也用 MQ。。。问题虽然解决了,但这知识和经验却不是你自己的。换一个类似的问题,你也许可以解决,但问题如果表面上看起来完全不同,你还是不知道怎么解决。

要如何摆脱这种局面呢,我的经验就是多去探究问题的本质。抓住了问题的本质,就不需要别人来告诉你怎么解决。你最多就是百度一下某某工具怎么使用而已,要用什么工具,你心里早就有数了。
qwz
2019-07-06 20:58:21 +08:00
是不是 "搬砖、API Caller、Crud Boy" 有那么重要么
只要是一线开发者就是哼哧哼哧的技术工人啊
做设计(业务代码交给代码仔)也只是个工头
enaxm
2019-07-07 07:25:36 +08:00
https://mp.weixin.qq.com/s/o5kX0rfpWmDardxcfwo4wA

学 java 的时候总有人抱着语言特性框架特性不撒手,推荐一下上面的文章
liuzhiyong
2019-07-07 14:39:58 +08:00
大部分工作就是搬砖,这个工作机会多呀。个人感觉脱离搬砖,反而难得搞到好工作。
koebehshian
2019-07-07 22:16:44 +08:00
搬砖是重复性的劳动,精于搬砖意味着有深度而无广度。所以多尝试搬不同的砖,增加广度。
applehater
2019-07-08 00:55:05 +08:00
@qwz 管项目,指派人力才是工头,做设计还是 D-Boy

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/580499

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX