Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >国内怎么就做不出 IDEA 那样的产品?

国内怎么就做不出 IDEA 那样的产品?

作者头像
芋道源码
发布于 2022-07-04 05:17:34
发布于 2022-07-04 05:17:34
52400
代码可运行
举报
文章被收录于专栏:芋道源码1024芋道源码1024
运行总次数:0
代码可运行

点击上方“芋道源码”,选择“设为星标

管她前浪,还是后浪?

能浪的浪,才是好浪!

每天 10:33 更新文章,每天掉亿点点头发...

源码精品专栏

来源:zhihu.com/question/537774494/

answer/2534015588


知乎上有一个提问:

分享一个很有意思的回答。

我是一名 JetBrains 的忠实粉丝。我学习编程语言的经历大概有 10 年左右,使用 JetBrains 大概有 7 年左右。

在这么多年的学习编程和使用 JetBrains 全家桶的过程中,我认为 JetBrains 的成功不仅仅是技术原因,还有的是产品上面的创新,而这些创新都离不开大型软件工程的实战经验,因为只有经历过大型软件工程的开发与不断迭代过程,才知道一款优秀的 IDE 里面需要什么功能,哪些功能能够帮助程序员高效地开软件。

网传 JetBrains 的 IDEA 系列最早的“杀手锏”功能是 refactor (rename)重构功能。例如在 IDEA 中你可以使用 Shift+F6 快速将一个变量改名,并且这个改名操作将应用到所有 引用了该变量的代码。这就需要 IDEA 对整个项目中的所有代码做 parser,追踪他们之间的引用关系。这类功能的背后离不开强大的代码静态分析技术。

所以做专业软件,首先是需要有技术方面的支持。其次是产品方面的设计考量IDEA 的重构功能极为强大,包括各种强大的 extract,路径移动等。

IDEA 的强大远不如此。它的功能包括但不限于

  • 图形化 debug
  • 图形化 git 操作,一键 rebase
  • 代码结构梳理,也就是左下角那个 structure 功能区(自从用过 CLion 之后我在也没用过 source insight 了)
  • 代码收藏,同样对 trace code 友好
  • 和各大主流框架和编程语言的紧密结合(例如 WebStorm 对 npm 有极为强大的支持,能够分析 scripts 和 .nvm 自动选择合适的 node.js 版本启动 script,能够自动分析 node_modules 判断当前依赖是否匹配 package.json 等)
  • 最新推出的 code with me 功能,在疫情远程工作的大背景下,这个功能能够方便同事之间在无法物理接触的情况下进行手把手 debug
  • generator(例如 JavaBean 中的 getter setter 方法可以一键生成),也可以配置 live template 和 file template,例如我写 React.js 的时候经常会有很多重复性的样板代码,例如 const {children} = this.props,这个我就配置为 cctp,我只要按下cctp再按 tab 就能快速输入更多功能就不说了

想到以上这些功能的创意,需要 JetBrains 的产品经理需要有极长时间的一线 coding 经验,并且这些软件工程项目的质量要求很高(如果是屎山项目,也就没有用到重构功能的必要性),尤其是经历过从 0 搭建起一个项目,并且后面又遇到需要重构的情况。

而我国做不出来这类软件,原因也主要有如下:

  • 有极长 coding 经验的人没有国外那么多,大部分是在2010年之后的互联网红利开始才学习 coding 的,甚至很多是生化环材转码。人少,那么诞生出这些天才产品经理的几率也更少
  • 大部分人还是有一种“勤劳的守旧”观念,也就是认为使用工具提升生产力是一种偷懒和投机取巧的表现,推崇使用 vim 等高门槛和学习曲线陡峭的软件是一种“技术能力强”,“能吃苦学习”的习惯。
  • 优秀的产品经理需要跨界经验,例如 JetBrains 的产品经理肯定不仅仅是画个原型图和写个 PRD 那么简单,这些都需要深入一线软件行业,掌握大量工程师人脉,和非常多的软件工程师交流,了解他们真正需要什么。站在他们的角度思考一款优秀的 IDE 应该要给我带来什么样的功能。国内 一些PM 论坛的交流内容还是以互联网 APP 产品为主,这类产品的 PM 还是停留在学校学学 UI 设计,出来跟着“人人都是产品经理”的网课学学做 PPT 画原型图写 PRD 的水平。PM 的上限水平过低,缺乏垂直行业的经验与人脉导致了做不出顶级的工业软件缺乏工程师文化。
  • 所谓工程师文化,指的就是产品进步是由工程师推动,工程师使用科学技术提升产品的用户体验,可靠性,安全性等。由于各种环境原因。真正拥有“工程师心态”在人群中还是偏少数,抱有“功利心”去读书刷 GPA,去工作刷 KPI ,很难诞生优秀的专业软件。缺乏工程师文化的根本还是和经济基础与分配平衡有关,经济基础过差的情况下,大家会更容易选择保守,保守则不容易引发对创新的思考。而分配平衡过差,则会导致“工程师”们更倾向于使用“技巧”去内卷抢得少数资源,而非使用“科学技术”去创造更多资源与价值。 奶粉钱,产假,房价,教育公平,没有好的环境就留不住顶尖的工程师与专业的

产品经理,知乎都说烂了的事情就没必要提了。。。

做工业软件,最好就需要是这个领域的工程师直接转行来做工业软件的产品经理,因为只有自己行业的人才最了解自己人。而我们的现状是连抱有工程师思想以及拥有工程师文化的公司都非常稀少,更别指望真正的工程师们在拥有丰富经验之后转行 PM ,然后设计优秀的工业软件帮助我们加速生产效率,解放生产力。

最后再谈谈 JetBrains 在获客与留存方面做的努力很多工业软件都有 help 帮助文档。

但是大家可以扪心自问一下,你们真的有看过专业软件的 IDE 吗?你们有点开过专业软件的 help 菜单吗?

以 JetBrains 家的 goland 为例,当你初次安装时时,首次启动软件会显示引导画面,里面会使用言简意赅的文档和样例代码帮助你快速掌握这款 IDE 的各类 feature

如图所示,这是 goland 的 learn 功能,而图上此时此刻显示的则是如何使用快捷键快速删除代码行或者换行,以及将过长可变参数的代码自动转换为可读性较强的多行格式

无论是样例代码,还是帮助文档的文案,他们都设计得言简意赅,而且即使是英文,也是选择了计算机领域常见的英文单词,不会对非英语母语人士造成太多障碍。

只有当用户能够很快学习上手你的软件,那么你才能长久留存客户。而这一点,在我见过的绝大多数驰名全球的顶级专业软件(包括设计领域的 Adobe 全家桶,电子工程领域的 MATLAB,Cadance ICC、Altium Designer、TI 德州仪器的 LabView 和 Multisim,Intel Quartus,Xilinx Vivado)都做得非常差,基本没有像 JetBrains 那样提供言简意赅的解释和恰到好处的样例代码让你快速上手。

一款专业软件令人难以上手,学习门槛极高,也是很难留存客户的。而 JetBrains 在快速入门与帮助文档的细节设计上绝对可以说是优秀至极。

评论区也有人讨论 vim 是否适应键盘操作?或者 vim 是否有在 ssh 上面直接编辑代码这种场景。

首先是键盘适应方面,如果你有深入使用过JetBrains,其实会发现 IDEA 的纯键盘操作效率并不比vim低,你想要的所有功能都有默认快捷键,没有的话也能自己配置,并且这个配置是云端同步的,我在公司电脑,自己的surface平板电脑和家里的游戏机上全平台同步。而且自动完成可以根据自己的coding领域习惯写自定义live template。

最后是ctrl+shift+a以及alt+enter几乎可以在任何地方完成绝大部分写代码的常用操作。我并没有觉得vim在这方面有比JetBrains的效率高多少。

另外就是 ssh 直接编辑代码这种场景。

我认为这种场景是非常危险且不规范的做法。真正符合工程化的项目都是本地使用 IDE 编辑,IDE 的静态分析功能帮你检查出可能出错的地方,确认没问题后,用版本控制工具提交,提交过程 IDEA 会跑代码格式化,lint 规则检查,import 优化,清理 unused 代码,自动帮你做 GPG git 签名。

如果是公司或者开源组织机构的项目,还会自动帮你更新 copyright,然后做 TODO 检测,code analysis,git hook,最后 push 代码后,CI/CD平台开始跑单元测试集成测试等,全部通过后则自动由 CI 平台通过 SSH 发布到生产环境。

如果你的代码经常需要直接 SSH 连上去直接用 vim 修改,没有经过任何工程化工具的前置处理以及 code review,那么我只能说你的项目非常不规范,开发这种不规范的项目当然体验不到 IDE 能够带来的好处。



欢迎加入我的知识星球,一起探讨架构,交流源码。加入方式,长按下方二维码噢

已在知识星球更新源码解析如下:

最近更新《芋道 SpringBoot 2.X 入门》系列,已经 101 余篇,覆盖了 MyBatis、RedisMongoDB、ES、分库分表、读写分离、SpringMVC、Webflux、权限、WebSocket、Dubbo、RabbitMQ、RocketMQ、Kafka性能测试等等内容。

提供近 3W 行代码的 SpringBoot 示例,以及超 4W 行代码的电商微服务项目。

获取方式:点“在看”,关注公众号并回复 666 领取,更多内容陆续奉上。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
文章有帮助的话,在看,转发吧。谢谢支持哟 (*^__^*
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-07-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 芋道源码 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
为什么国内做不出 JetBrains 那样的产品?
我是一名 JetBrains 的忠实粉丝。我学习编程语言的经历大概有 10 年左右,使用 JetBrains 大概有 7 年左右。
小林coding
2022/10/27
3920
为什么国内做不出 JetBrains 那样的产品?
为什么国内做不出 JetBrains 那样的产品?
知乎上有一个提问: 图片 分享一个很有意思的回答。 作者:昌维 | 来源:https://www.zhihu.com/question/537774494/answer/2534015588 1 我是一名 JetBrains 的忠实粉丝。我学习编程语言的经历大概有 10 年左右,使用 JetBrains 大概有 7 年左右。 在这么多年的学习编程和使用 JetBrains 全家桶的过程中,我认为 JetBrains 的成功不仅仅是技术原因,还有的是产品上面的创新。 而这些创新都离不开大型软件工程的实战经验
程序猿DD
2022/07/07
3690
为什么国内做不出 JetBrains 那样的产品?
为什么国内做不出 JetBrains 那样的产品?
这是「进击的Coder」的第 696 篇分享 来源:Python 编程时光 “ 阅读本文大概需要 9 分钟。 ” 知乎上有一个提问: 分享一个很有意思的回答。 作者:昌维 | 来源:https://www.zhihu.com/question/537774494/answer/2534015588 1 我是一名 JetBrains 的忠实粉丝。我学习编程语言的经历大概有 10 年左右,使用 JetBrains 大概有 7 年左右。 在这么多年的学习编程和使用 JetBrains 全家桶的过程中,我认为
崔庆才
2022/07/26
8020
为什么国内做不出 JetBrains 那样的产品?
为何 JetBrains 公司做 IDE 就可以养活自己,而国内公司却很难做到?
点击关注公众号,Java干货及时送达 作者:昌维 来源:https://www.zhihu.com/question/537774494/answer/2534015588 知乎上有一个提问: 分享一个很有意思的回答。 1 我是一名 JetBrains 的忠实粉丝。我学习编程语言的经历大概有 10 年左右,使用 JetBrains 大概有 7 年左右。 在这么多年的学习编程和使用 JetBrains 全家桶的过程中,我认为 JetBrains 的成功不仅仅是技术原因,还有的是产品上面的创新。 而这些创新
Java技术栈
2022/08/25
8520
为何 JetBrains 公司做 IDE 就可以养活自己,而国内公司却很难做到?
春节挣一波快钱,Top 19 接私活平台
点击上方“芋道源码”,选择“设为星标” 管她前浪,还是后浪? 能浪的浪,才是好浪! 每天 10:33 更新文章,每天掉亿点点头发... 源码精品专栏 原创 | Java 2021 超神之路,很肝~ 中文详细注释的开源项目 RPC 框架 Dubbo 源码解析 网络应用框架 Netty 源码解析 消息中间件 RocketMQ 源码解析 数据库中间件 Sharding-JDBC 和 MyCAT 源码解析 作业调度中间件 Elastic-Job 源码解析 分布式事务中间件 TCC-Transaction
芋道源码
2022/03/04
1.3K0
四步组建高效机器学习团队
在过去的几年里,机器学习得到了巨大的发展。但是,机器学习作为一门年轻的学科,其团队的管理方式却更加年轻。今天,许多机器学习经理被推到管理岗位是出于需求,或者是因为他们是最好的个人贡献者,而且其中许多人来自纯学术背景。在一些公司,工程或产品负责人被指派在没有任何机器学习实战经验的情况下构建新的机器学习功能。
AI研习社
2020/02/24
8130
四步组建高效机器学习团队
『曲』径通幽:探秘硅谷产品世界
曾任Facebook产品经理。在Facebook期间负责视频相关的产品,包括网红社区、视频体验、音乐等产品线。同时,她还管理着一个40人的产品研发团队,领导并发布过多个千万级用户产品。在加入Facebook之前,她曾在Instagram、微软担任产品经理,在上市之前的Atlassian公司负责过市场营销和商业拓展等方面的工作。
用户1682855
2018/11/23
5190
猿创征文|产品工具-面向综合效能提升的工具库
作为一名从软件工程师出身的产品,一个软件或者产品的上限是由开发者和设计者本身的综合素养和能力决定的,而下限是由团队的综合效能的产出去决定的,君子不器体现了以人为本的核心思想,善假于物是在了解了工具和问题的特质后,采用合适的工具和方法,提高我们的效率,构建自己的核心知识体系,并且应用到工作中去解决实际问题。 同时,君子不器 成己达人。感谢CSDN的这次工具分享活动,提供了来自各个行业的创作者一个交流的机会,通过交流和对比印证,学习到了很多实用的东西:
破晓之翼
2022/11/18
4090
猿创征文|产品工具-面向综合效能提升的工具库
Cloud IDE 是不是一个伪命题
编者按:去年 11 月初,GitPod 在 A 轮融资中获得 2500 万美元,以兑现 Cloud Development Environments 的承诺。一周后,GitHub 宣布 CodeSpaces 将面向所有 GitHub 用户开放,每周免费使用 60 小时。这让人感觉好像我们突然就发展到了“云端开发元年”。代码编辑器几乎是每个开发人员每天都在使用的工具,不少人老早就认为开发环境最终会迁移到云端,这种创新理应在软件行业中迅速推进,但这个演变过程实际上持续了很多年,也比我们想象中的难很多。国内 CO
深度学习与Python
2023/03/29
1.1K0
Cloud IDE 是不是一个伪命题
硅谷没有产品经理
在国内,产品经理是非常核心的角色,然而在硅谷,工程师才是灵魂,拥有产品设计的决策权。谷歌的比例大概是1比8,一个产品经理配8个工程师。Facebook在200个工程师的时候,只有不到10个产品经理。
IT阅读排行榜
2018/08/15
9970
硅谷没有产品经理
悄悄告诉你,在硅谷,有一种工作比程序员挣得多
不管在上地、南山还是硅谷,程序员从来都是高薪的代名词。即使是两年前,硅谷的实习工程师的年薪就已经达到了81600美元(超过人民币56万),相当于美国平均工资的两倍。
量子位
2018/11/08
9510
「DevOps」闲聊我心中的运维开发
在我入职上家公司的运维部之前,我所以为的运维工程师只是修修电脑,拉拉网线,布布机器。
前端劝退师
2019/08/16
1.6K1
「DevOps」闲聊我心中的运维开发
IDEA公司再发新神器!超越 VS Code 骚操作!
点击上方“芋道源码”,选择“设为星标” 管她前浪,还是后浪? 能浪的浪,才是好浪! 每天 10:33 更新文章,每天掉亿点点头发... 源码精品专栏 原创 | Java 2021 超神之路,很肝~ 中文详细注释的开源项目 RPC 框架 Dubbo 源码解析 网络应用框架 Netty 源码解析 消息中间件 RocketMQ 源码解析 数据库中间件 Sharding-JDBC 和 MyCAT 源码解析 作业调度中间件 Elastic-Job 源码解析 分布式事务中间件 TCC-Transaction
芋道源码
2022/05/23
3810
IDEA公司再发新神器!超越 VS Code 骚操作!
对AI产品经理的一知半解
对产品的定义随着时光的变迁往往有着不同的内涵,同样的,对产品经理的理解也可能有着不同的认知。
半吊子全栈工匠
2019/12/26
4740
4月热招职位 | 开发/运维/测试/安全/产品/UED
伴随着这乍暖还寒的天气, 携程技术中心最新一波岗位火热出炉, 包含开发/运维/测试/安全/产品/UED多个领域, 以下岗位工作地点均在上海哦 简历投递邮箱:tech@ctrip.com 直达用人部门 邮件标题:【应聘职位】+【姓名】 开发类 1、云平台架构师 岗位职责: 1. 负责混合云的架构设计和构建,解决多厂商,多region,多网络间的资源调度问题。 2. 负责团队内部的Code Review,提升团队的技术实力。 3. 参与项目的技术选型和技术攻关。 任职要求: 1. 本科及以上学历,5年相关工作经
携程技术
2018/07/05
7390
IDEA 2022.2 发布,骚操作,跟不上
点击上方“芋道源码”,选择“设为星标” 管她前浪,还是后浪? 能浪的浪,才是好浪! 每天 10:33 更新文章,每天掉亿点点头发... 源码精品专栏 原创 | Java 2021 超神之路,很肝~ 中文详细注释的开源项目 RPC 框架 Dubbo 源码解析 网络应用框架 Netty 源码解析 消息中间件 RocketMQ 源码解析 数据库中间件 Sharding-JDBC 和 MyCAT 源码解析 作业调度中间件 Elastic-Job 源码解析 分布式事务中间件 TCC-Transaction
芋道源码
2022/07/19
6770
IDEA 2022.2 发布,骚操作,跟不上
别怪程序员——都是项目经理的错
别怪程序员——都是项目经理的错 现在有很多糟糕的软件。不可靠,不稳定,不安全,不可用。这些软件是如此糟糕,以致于有些人要求监管软件开发和限制专业软件开发人员为“软件工程师”,以便于软件工程师能够保持专业水准,避免因为疏忽或玩忽职守而被指责。 认可方式可以确保每个开发软件的人具备一定的知识和能力。但是,专业开发人员也不能保证良好的软件。即使是训练有素、经验丰富并全力以赴的开发人员,他们创建的软件,也不能保证都是良好的软件。这是因为大多数影响软件质量的决定,不是由开发人员下的——而是由企业中的其他人决定的。(比
用户1289394
2018/02/27
8040
别怪程序员——都是项目经理的错
IT行业专业知识及术语,最值得你收藏的一波干货!
目前比较流行的开发语言有哪些?Java、Python、JavaScript、C#(C Sharp)、C、C++、、PHP、Ruby等
一墨编程学习
2018/12/26
6.3K0
观点的碰撞
几周前我写了一篇文章,《对几个软件开发传统观点的质疑和反驳》,微博上、独立域名的博客上,还有 ITEye 网站上,都有一些评论的朋友给了我许多事实和观点。我觉得这些评论,似乎都有理由,无所谓对错,这些是有价值和有意义的文字。相较于那些“ 顶”、“ 支持”、“SB”、“ 沙发”…… 纯灌水或者是没什么意义的信息垃圾,这些文字要显得珍贵得多。
四火
2022/07/15
4110
IntelliJ IDEA 2022正式发布!这次打死我也不更了。。
点击上方“芋道源码”,选择“设为星标” 管她前浪,还是后浪? 能浪的浪,才是好浪! 每天 10:33 更新文章,每天掉亿点点头发... 源码精品专栏 原创 | Java 2021 超神之路,很肝~ 中文详细注释的开源项目 RPC 框架 Dubbo 源码解析 网络应用框架 Netty 源码解析 消息中间件 RocketMQ 源码解析 数据库中间件 Sharding-JDBC 和 MyCAT 源码解析 作业调度中间件 Elastic-Job 源码解析 分布式事务中间件 TCC-Transaction
芋道源码
2022/04/18
3.7K0
IntelliJ IDEA 2022正式发布!这次打死我也不更了。。
相关推荐
为什么国内做不出 JetBrains 那样的产品?
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验