请问是我道行不够还是上司跟不上潮流?
入职不久的前端开发,最近参与一个模块的调整作业,模块本身多人接手过所以 es5 es6 都有。 用 es6 的 filter 方法处理了几个 api 接收的数据, 完后 codereview,上司说不行非让我用 for 循环写,理由如下
1.他看不懂,原因是他虽然也懂前端但是主要负责后端,原话:java 里没有 filter 2.他看不懂就没法排错,万一写错他不知道哪错了 3.新特性不够稳定,兼容性有问题,显然他不懂 bable 4.万一我休息遇到 bug,for 他会改 5.for 也罢 filter 也罢最后都能用,为什么不用大家都懂的
虽然我给他普及了相关知识,可还是被无情拒绝。 当时我是很生气的,这明明就是 js 基础了,2021 年还有这种人? 不过事后一想,上司的做法不能说全错,毕竟他是要对项目负责的,稳是第一位。
公司还行,但是没有干长的打算 如此别说是参与内卷了,不仅啥都学不到,技术退步肯定是必然的。 请问各位遇到这种事情会怎么办?
104
BUHeF254Lpd1MH06 2021-06-04 10:20:13 +08:00 1
@murmur 缓缓的打出一个问号?
|
105
cking 2021-06-04 10:20:20 +08:00 1
Java 没有 filter????? 1202 年了 还这么保守?
|
106
myCupOfTea 2021-06-04 10:20:36 +08:00
你不会用 can I use 查一下打他脸吗 也就 ie 不支持罢了
|
107
windyCity1 2021-06-04 10:22:11 +08:00
@iMusic #102 不至于只是新人可能这样,工作 4~5 年的,基本还是会 jq 的
|
108
ALVC666 2021-06-04 10:22:53 +08:00
吃瓜看大佬们独领风骚
|
109
wupher 2021-06-04 10:23:49 +08:00
我有个旧组件写了个 Rust 版,结果运维和领导都婉言……
|
110
iMusic 2021-06-04 10:24:44 +08:00
@windyCity1 但是会 jQuery 的现在还搞前端基本也会学至少一个框架啊,而新人就未必会学 jQuery
|
111
marcong95 2021-06-04 10:25:43 +08:00
@murmur #94 所以你说用库是宁愿
import { filter } from 'lodash' const filtered = filter(xxx, x => x) 也不愿直接 const filtered = xxx.filter(x => x) 吗?这就有点难理解了。。。 |
112
iseki 2021-06-04 10:30:56 +08:00 via Android
filter 并没有引入新的语法啊,那依然是一个库函数
|
113
yousabuk 2021-06-04 10:31:10 +08:00 via iPhone
怼他,看不懂去学啊?
|
114
murmur 2021-06-04 10:31:53 +08:00
@marcong95 这是沟通的技巧,毕竟别人在带团队,招什么级别的人是别人说了算
凡事都有的折衷,而不是别人不认你的语法糖就给人鄙视一顿,毕竟 es5 以上就可以跑 es6 babel 后的东西了 那就是说 es6 的语法糖核心部分都能用库来解决(说服别人) |
115
monkeyWie 2021-06-04 10:32:07 +08:00
正常操作,我们空降的 JAVA 架构师连 swagger 都没听过还不一样指指点点
|
116
bzw875 2021-06-04 10:37:31 +08:00
很好解决,担责的问题,前端遇到 bug 你来解决。你休息的时候出现 bug 你要过来。前端代码全部你写,或者后端也开发你来审查。
|
117
snail00 2021-06-04 10:38:09 +08:00
正常操作, java 里边, 我用新特性, 用设计模式, 然后其他人不愿意维护, 怕改错了, 然后就怎么简单怎么来, 做完大家都能维护, 自己的工期压力也小.
|
118
UBcai 2021-06-04 10:41:41 +08:00
大佬考虑稳定,你考虑自己技能提高。只不过大佬 java8 的 filter 都不知道就有点离谱。
|
120
play78 2021-06-04 10:45:47 +08:00
到时候出现 bug,代码跑不起来,人先跑了
|
122
slipkinem 2021-06-04 10:48:18 +08:00 via iPhone
这种情况听老板的,然后代码写成屎,私下多学习,然后跳槽进大厂 /涨工资
|
123
IvanLi127 2021-06-04 10:49:31 +08:00
我遇到过类似的事情,2020 年,技术主管不会 angular 2+,非要在新项目用 angular.js 写页面。公司之前没有 web 前端的历史项目。 这个主管对代码格式要求挺高,但是就是不用 eslint,说不想增加他不熟悉的东西,也不想增加复杂度,然后我们提交代码全部要对 import 、函数、变量声明进行字母表序排序。。。天天教育我们不要有思维惯性,我觉得他已经固化得无药可救了。
试用期过完后的第一天我离职了,空降了个啥玩意,人家国外团队非常棒的后端代码他也要推倒重来,换了个自己搞的框架,这种人搞政治的吧 |
124
marcong95 2021-06-04 10:52:11 +08:00
@murmur #114 哦哦哦,那你的意思就是说,跟类似楼主上司的人沟通的时候,不要说 xxx.filter 是新语法,而是说这是某个库添加的功能?
|
125
murmur 2021-06-04 10:54:46 +08:00
@marcong95 我会直接写成 ArrayUtils.filter(xxx),如果这都看不懂那真的是无法沟通,但是很明显楼主还没沟通到这一步
不要期望主后端的人对前端多了解,我见过很多写后端的,连 arr.join 拼接字符串都不会 |
126
yazinnnn 2021-06-04 10:58:04 +08:00
我使用 kotlin + arrow 做的一个服务根本没法交接出去.......
|
127
grewer 2021-06-04 10:58:46 +08:00
稳定不是借口, 说到底还是 lead 不行, 怕自己控制不住
|
128
clf 2021-06-04 10:58:54 +08:00
换一家公司呗。
|
129
limuyan44 2021-06-04 10:59:58 +08:00 2
本站是不是因为前阵子出圈了风气越来越怪,你作为一个需要亲自帮下属擦屁股的 leader,新来一个手下一边处处透露着要走,一边往项目里加自己不懂的,你会先怪自己不去学习还是先保证项目的稳定呢,我估计各位一定是先扇自己俩巴掌问一句为什么别人会你不会然后默默主动学习。
|
130
fanyingmao 2021-06-04 11:03:09 +08:00
我现在呆的要我接手 14 年的老代码,本来想滚的,结果说让我用 ts 做新项目,但还是要排查一些老项目的问题。做这行最讨厌接二手代码,因为老代码我入职几天就跑了几次了。
|
132
charlie21 2021-06-04 11:15:23 +08:00 4
两层管理:
leader A1 <- 精通架构 // 偶尔不得不(承担某种责任?)亲自下场编码 lz <- 精通 js 花式语法糖 💥 三层管理: leader A2 <- 精通架构 leader B2 <- 既略懂 架构,又略懂 js 花式语法糖 💧 lz <- 精通 js 花式语法糖 四层管理: leader S3 <- 精通某几种后端架构,吃老本真的是能吃到死 leader A3 <- 精通某几种前端架构,(不得不?)紧跟 js 时代步伐 leader B3 <- 既略懂 架构,又略懂 js 花式语法糖 💧 lz <- 精通 js 花式语法糖 故而,公司管理太扁平了也不好。归根到底,内因是人脑容量不够还爱瞎承担责任的问题,外因是分工精细化趋势的副作用的问题 这里给出的建议是去一家有 leader B2 或 leader B3 + leader A3 的人员配置的公司,对其它公司不要保有错误期待。当然有时候其它公司能开工资很高、短期福利很好 ... 但长期不利于职业发展,如果你非要把 js 这种弱智玩意当作职业发展根基的话。 |
133
zzczzc 2021-06-04 11:16:53 +08:00 via iPhone
谁说 java 没有 filter ?难道 jdk8 都不用吗?
|
134
shyangs 2021-06-04 11:18:41 +08:00
Java 8 有 filter.
不過部分人可能時間停留在 jdk1.5, 1.6, 1.7 的年代. |
135
YidaZh 2021-06-04 11:19:32 +08:00 1
记得那还是在 16 年,我到了一个传统技术团队,页面都是 JSP 前后端一起的那种。
当年还比较年轻,一进去 Vue Element Webpack 一顿撸,那会儿这些东西远没现在这么普及,leader 也没管我,毕竟产出是 ok 的。 可是,我干了不到一年后提桶跑路了,接手我的工作是一位外包同事,跑路后还经常问我问题。。。我后悔了,觉得草率了,可能不该这么激进的,比如说不上 webpack npm,直接 vue 和 elment 的 script 引入,会不会更好。。 |
136
fueen 2021-06-04 11:20:47 +08:00
如果是上司的视角来发个帖吐槽,这里的人就又会把矛头对准你了
|
137
otakustay 2021-06-04 11:23:07 +08:00
@murmur 恰恰相反,BAT 肯定是会 jQuery 的比会三大框架的多,区区“会”而已,基本可以认为 BAT 的前端是 100%会 jQuery
|
138
Felldeadbird 2021-06-04 11:26:45 +08:00
你的上司有点坐井观天,不思进取了。如果没什么提升空间,建议做得差不多就走人。
|
139
szq8014 2021-06-04 11:38:03 +08:00
@qwerthhusn Stream.of(1,2,3) 就行了, 2333
|
141
waiaan 2021-06-04 11:44:56 +08:00
你上司说的也有道理,作为他已经不仅仅是考虑技术问题了。
|
142
cwp374240920 2021-06-04 11:49:23 +08:00
这...贵司居然还有 code review?
|
143
theprimone 2021-06-04 11:49:57 +08:00
看了这么多讨论,属实妹想到一个 filter 语法能上升这么高的层面。。。
|
144
love 2021-06-04 11:52:56 +08:00 5
术高莫用!!!
array.filter() 这种高科技由于过于艰深,普通人无法理解其运行原理,上司禁用这种大招情有可原 |
145
ericgui 2021-06-04 11:53:02 +08:00
简单来说,又到了你离职的时候了
|
146
nicebird 2021-06-04 11:53:55 +08:00
- 基本上是上司不行,可以考虑跑路
- 按照上司说的做,领导的话听呗 |
147
flytsuki 2021-06-04 11:55:45 +08:00
老项目的话我连 lambda 都不写,新项目直接 vite+ant design 各种新特性起飞
|
148
hanxiV2EX 2021-06-04 11:59:42 +08:00 via Android
oceanbase 也不允许这些复杂的语法
|
149
fengxianqi 2021-06-04 11:59:53 +08:00
这样的 leader 居然还能做到 code review,我是没有想到的。。。
|
150
asdf123101 2021-06-04 12:03:33 +08:00 via Android
Java 有 filter 。但是这种团队合作的事情写成什么样都无所谓,反正测试一写结果对就算完事了。不让用就不让用呗。以后你自己的主导项目随便弄成什么样都行。
|
151
mudssky 2021-06-04 12:13:39 +08:00
用 typescript,编译成 es5 就行了
|
153
mxT52CRuqR6o5 2021-06-04 12:18:50 +08:00 via Android 1
你要这么去理解这个上司,他对数组的认识就只有数组长度和下标取值,那些数组方法看都不会的看一眼的,全部通过 for 来完成,力求通过学习最少的知识完成图灵完备的编程需求,工作经验就是使用仅有的一点点编程知识也能顺利完成各种不同的需求
|
154
walpurgis 2021-06-04 12:24:22 +08:00 via Android
具体问题具体分析吧,如果是一个不太稳定的组件功能,谨慎不用是能理解的
如果连 filter 都不让用,意味着 map reduce 等函数式方法肯定也不能用,身为技术负责人不懂这些也太水了,不值得追随 |
155
seakingii 2021-06-04 12:25:45 +08:00
你没有错,你的上司也没有错,错的是这个世界,错的是 Javascript 语言(滑稽)....
|
156
7gugu 2021-06-04 12:26:57 +08:00 via iPhone
有合理的理由就好了啦🤷♂️
反正工资照出,代码照写就好了,不强迫,老大说啥是啥 |
158
rioshikelong121 2021-06-04 12:28:57 +08:00
走人。
|
159
py2ex 2021-06-04 12:30:40 +08:00 2
quote
java 里没有 filter 震惊,你老板可能用的是 Java 7 其实按照约定的代码规范来就行了,比如他新加的,不允许使用 es 特性, 标注是他发起的,群发所有人 开发中这条规则给人造成不方便了就 cue 他;有人违反了这条规则就 cue 他;这条规则导致事故--虽然不太,可能就 cue 他 在团队中工作不太可能完全根据自己的想法来;可以考虑找一个别的更加开放的团队 |
160
seakingii 2021-06-04 12:31:49 +08:00 1
听我的,公司项目按公司标准做,想自我提高 ,你可以私下自己做自己的项目,或者参与开源项目,想怎么用就怎么用
|
161
stockmaster 2021-06-04 12:35:25 +08:00
换组吧。这样的老板,楼主真可怜。
|
162
MarkLeeyun 2021-06-04 12:38:06 +08:00
直接离职。。。
|
163
jiangzhuo 2021-06-04 12:45:15 +08:00
看標題以爲是繼特斯拉以後,蔚來 es6 也被禁了。
|
165
potatowish 2021-06-04 12:48:02 +08:00 via iPhone
@Navee 很多人? 估计都是四五十岁的老程序员,学不动了吧
|
166
xwayway 2021-06-04 12:50:33 +08:00
刚好相反,我们是必须用 filter,不准 for
|
167
encro 2021-06-04 12:50:38 +08:00
你用 es6,
自动编译成 es5 给他看。。。。 这下能看懂了吧? 我们在前端支付项目也禁止直接使用 es6, 但是理由是有部分老用户还在用 iphone6,7, 而且不升级系统,JS 错误会导致不能支付,编译的话加了一堆不要的东西,没必要。 |
168
RomeoHong 2021-06-04 12:51:46 +08:00
@antiquezzz 我看你不靠谱,为什么要招进来?我看你不靠谱,你就是不靠谱!我看你不靠谱,你是不是想要偷东西了!我看你不靠谱,你是不是想撂挑子了!
|
169
littlewing 2021-06-04 12:52:05 +08:00
跑路吧
我相信,过 100 年后你来问他,他仍然不懂,仍然不稳定,仍然不会 |
170
no1xsyzy 2021-06-04 12:52:09 +08:00
Haskell 连 for 都没有,我觉得不能用 for 写,必须全用 Monad 写
do a <- [1,2,3] b <- if a `mod` 2 == 0 then [a] else [] return b 不影响 Haskell 比 Java 更稳定啊 https://www.foxhound.systems/blog/why-haskell-for-production/ |
171
royzxq 2021-06-04 12:54:56 +08:00 17
没屏蔽 murmur 就是为了看能有多搞笑, 果然又出来讲笑话了。
另外一个 Array.prototype.filter 能整出这么多事真有意思 |
172
jklopsdfw 2021-06-04 13:01:45 +08:00
有点离谱,语法糖不语法糖根本不是关键问题,讨论里强调语法糖的大概只是想争赢讨论。关键是什么写法不容易出错,只能说你领导和正常人的理解不同吧,filter 又不是什么奇怪的抽象
|
173
antiquezzz 2021-06-04 13:08:03 +08:00
@RomeoHong 1.你可以建议法律把试用期设置为违法,面试成功就是正式员工; 2.招人也是有目的性的,领导焦头烂额的只想找一个听话的,结果愣是各种跳脱,绝大部分公司都是业务导向的; 3.人与人之间的信任不是见一面就能建立的,不先证明自己就要求别人信任可太幼稚了
|
175
yyzcl 2021-06-04 13:21:32 +08:00 via iPhone
一个出了好多年的语法都不让用,还是用看不懂这个理由,这人是有多不思进取
如果是讲究兼容,生产代码用 Babel 转译一下即可 |
176
hyy1995 2021-06-04 13:23:33 +08:00
小公司就是这样的,更奇葩的上司我都见过,要么努力跳槽去大厂,要么忍,就这么简单,没必要发帖
|
177
IsaacYoung 2021-06-04 13:23:54 +08:00 via iPhone
别问 问就是跑路
|
178
DOLLOR 2021-06-04 13:24:50 +08:00
难怪都说 java 卷,自己卷就算了还带着其他领域一起卷。
|
179
feikeq 2021-06-04 13:48:56 +08:00
听领导的啊,不然这领导你来当,信不信你当领导后到时也像他一样甚至比他更苛刻。
|
180
hui9000 2021-06-04 13:50:55 +08:00 1
解释了领导不行,不解释公司不行,话都让你们说了,你在公司代码就是服务公司服务业务的,用什么不行;老纠结啥循环,不要为杠而杠,为了证明领导 sb,公司 sb,对你自己有啥价值。
|
181
unco020511 2021-06-04 13:52:56 +08:00
这么说吧,曾经我因为使用 lambda 表达式和上司吵了一架,那次之后他就好多了
|
182
seki 2021-06-04 13:57:14 +08:00 4
一看这个标题我就知道会有 murmur,啊哈哈
我建议跑路吧,1202 年了连 filter 都不能用的环境,对工作经验积累没什么正向收益 |
183
chniccs 2021-06-04 14:06:29 +08:00 1
其实人家上司能承认看不懂,就已经很不错了,还有他的出发点也是好的。至少比那些看不懂还装懂的人好多了
|
184
zzlatan 2021-06-04 14:07:24 +08:00
哪个公司,想去了,这工资好混啊。
jQuery 才是真理! |
185
souths 2021-06-04 14:21:04 +08:00
公司的项目领导说啥就是啥,自己的项目想怎么来就怎么来,工作内容不喜欢就换啊
|
186
h1104350235 2021-06-04 14:22:40 +08:00
要么提桶,要么自己当领导
|
187
limuyan44 2021-06-04 14:23:15 +08:00
@RomeoHong 别逗了,按他的描述这技术公司水平就那样,谁也不是外行,你觉得是写 filter 的时候想离职的,还是见到这公司的代码想离职的,既然有离职的想法,作为老大自然要保证项目的稳定,另外说一句,虽然本站风气是 leader 是垃圾架构技术不如我,但是一个正常的老大是肯定看得出组里同学的离职想法的。
|
188
gablic 2021-06-04 14:23:41 +08:00
害,看标题我以为是蔚来,那没事了
|
189
ayase252 2021-06-04 14:26:27 +08:00 via iPhone
都 2021 年了不能用 ES6,还留着干啥
|
190
SmiteChow 2021-06-04 14:37:39 +08:00
你是干活的,不是来帮助公司革新技术的,看清自己的职责。
|
192
method 2021-06-04 14:45:35 +08:00
快离职吧。
|
193
Kamiyu0087 2021-06-04 14:53:57 +08:00
神特么 Java 没有 filter,你上司看来还停留在 Java6
|
194
dream4ever 2021-06-04 14:56:58 +08:00
@vvv7000 React,Vue,Angular 。
|
195
leexy 2021-06-04 14:59:16 +08:00
六字真言?
|
196
JokeEnd 2021-06-04 15:00:25 +08:00
别人带着前几年一二线流行的技术带到三四线的 leader 比比皆是,多想想人家能成为 leader 的原因。
|
197
Torpedo 2021-06-04 15:05:06 +08:00
这也能扯到 java 我也是醉了。。。
js 里用个 filter 不是很正常么。。。我寻思这也不是啥高级特性啊 这和其他语言也没啥关系吧。你面试个前端,不会 filter,你会给他过么 就因为 leader 写 java,很多人就觉得 leader 这么想是对的? 确定不是在给 java 招黑吗? |
198
ciki 2021-06-04 15:22:23 +08:00
这种就是老油条,PUA,兼职 s,b
|
200
CodeUtils 2021-06-04 15:25:31 +08:00
你这上司菜得就离谱
|