查看原文
其他

9000字拆解JetBrains:屡次拒绝融资的Geek创业成功之路

阿法兔 阿法兔研究笔记 2022-04-18

19世纪下半期,俄国科学技术有了很大发展,也出现了很多杰出的科学家。比较知名的有数学家契贝舍夫,北欧第一位女教授科瓦列夫斯卡娅,化学家门捷列夫,数学家吉米多维奇等。但是,到了近现代,却很少在新闻里看到俄罗斯人的创业公司。


但本文中的JetBrains公司,三名创始人都是写代码的俄罗斯Geek出身,毕业于圣彼得堡国立大学,这家公司创立于2000年互联网泡沫破灭之际,从来没有拿过任何外部的资金,但是却走出了属于自己的一条路。2021年11月29日,JetBrains 在官方博客宣布,推出轻量级编辑器 Fleet,并称其为“下一代 IDE”,对标微软的Visual Studio Code。


关于JetBrains的创业和发展,究竟是一个怎样的故事?JetBrains的发展究竟给我们带来了怎样的启示?计算机语言流行的背后有哪些时代原因?到底什么是真正的工程师文化?这是本文试图探讨的几个问题。

作者 | 阿法兔

本文结构

1.公司简介

2.综述和商业模式

  • 什么是IDE?

  • JetBrains的产品有哪些?

  • 收费模式是怎样的?

3.公司发展历程(各个编程语言IDE推出的背景)

  • 什么是Jbuilder

  • .Net流行的背景是什么?

  • 持续集成是啥?出现的背景是什么?

  • 为什么Ruby on Rails会火?

  • MPS是什么?

  • Web2.0带来了什么语言(JS PHP Python)的流行趋势?为啥?

  • 什么是面向对象编程?

  • 什么是反编译器?

  • Kotlin语言为啥把JetBrains带上了商业巅峰?

  • Go语言为什么会流行?

4.JetBrains的成功之处在哪?

  • 分析JetBrains的成功要素

  •  对于JetBrains公司,有哪些和其他公司不一样?

  • 总结


公司简介


我们并没有收入增长目标,JetBrains做的所有工作都是为了让软件开发本身成为舒适和充满创造性的过程。如今我们的目标是,在其他场景扩张这一理念。

                                                —JetBrains

2000 年,互联网泡沫破灭导致许多年轻的科技公司倒闭,投资者在这个时候大幅度停止投资,而此时,却有三位俄罗斯软件工程师Sergey Dmitriev 、Eugene Belyaev和 Valentin Kipyatkov却逆势创业进入了开发生态系统,在捷克布拉格创立了 JetBrains(原名IntelliJ Software)。

三位创始人收到第一笔款项高兴的照片,现在他们都已财务自由 图片:JetBrains官网二十多年后的2021年,在没有引入任何外部投资的情况下,JetBrains从一个布拉格的小公司逐渐发展成为在五个国家有9个办公室的明星公司。

公司旨在为软件开发人员和项目经理制作工具,主要业务是为编程语言Java、Groovy、Kotlin、Ruby、Python、PHP、C、Objective-C、C++、C#、Go、JavaScript等提供集成开发环境(IDE)(下文我们会对什么是IDE,进行具体解释)

目前的世界500强企业中, 约有430 家是JetBrain的客户,包括花旗集团、谷歌和大众汽车等巨头,JetBrains主要的编程工程中心位于圣彼得堡,约有一半的员工位于俄罗斯。
JetBrains的主要客户:图片来自JetBrains官网
综述和商业模式

我们先理解一个概念:什么是IDE?
IDE=编辑器+附带一系列的开发工具链
IDE(IDE,Integrated Development Environment )集成开发环境,主要是给工程师 编写代码使用的,是用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器调试器图形用户界面等工具。早期的编程语言在送进编译器处理之前,必须要先经过流程图、撰写表格、打卡,所以当时并不需要IDE,从开始在主机终端机开发程序,IDE才渐渐的成为必要的工具。
Basic是第一个有IDE的编程语言,同时也是第一个可以直接在主机或终端机前开发程序,它的IDE(Dartmouth Time Sharing System的一部份)是采取命令行的方式,并不像现代的IDE使用选单和图形化。但是他良好的整合了编辑、档案、管理、编译调试、执行等功能,符合现代化IDE的特性。
如果再说的形象一点,可以用大家都用的Office Word来打个比方:
早期的Word,就是在屏幕上打字。现在的Word,集成了很多新的功能功能。这些被集成进来的功能,对于写作者而言,就是他的“IDE”。
JetBrains的产品有哪些?

JetBrains产品的主要用户分为三大类:首先是开发者(工程师),然后是技术团队(To B),以及下一代学员和教育工作者。

收费模式

JetBrains公司的发展历程

纵观JetBrains的发展史,我们也可以看到一部计算机语言的流行史,究竟JetBrains推出的每种语言IDE的背后,有怎样的宏观背景呢?
21年前,在捷克布拉格,有三位俄罗斯工程师Sergey Dmitriev、Eugene Belyaev和Valentin Kipiatkov在Together Soft工作,用Jbuilder做开发。
注:Jbuilder是Borland公司开发的可视化Java开发工具。它是在Java2平台上开发商业应用程序、数据库、发布程序的优秀工具。它支持J2EE,所以程序员可以快速的转换企业版Java应用程序。

Borland软件公司(NASDAQ:BORL),总部位于美国加州的软件公司,以提供软件开发生命周期所需的各种工具,以及已经变成今天的Delphi的Turbo Pascal而闻名于世。2009年5月6日,Micro Focus宣布以7500万美元收购Borland(以后有机会本兔会写它的故事)。

公司提供的软件和服务有助于人员、流程、技术的配合,以使软件的商业价值最大化。在软件开发公司领域 Borland 公司几乎是高品质软件代名词!DOS时代 Borland Turbo C/C++独领风骚,风靡全球,DOS时代最强大的开发工具。
2000年前后,创业小队发现,想在Jbuilder中进行编写代码的其他功能查询,Jbuilder无法满足需求,为了解决这个问题,2000年2月1日,他们就在布拉格创立了一家命为Inellij的公司(JetBrains的前身)推出的首个工具叫做Intellij Renamer,早期Renamer是以JBuilder插件的形式销售。
2001年,JetBrains的第一款产品IntelliJ IDEA,就是在之前的基础上又加入了许多开发过程中需要的工具而诞生的。IntelliJ IDEA是基于Java开发的集成开发环境,就像文字工作者需要用到Word,IntelliJ IDEA也能极大方便程序员的工作,在出现后就受到热捧。
IntelliJ首次发布后,迅速流行,之后获评为基于Java的最佳编程工具,将NetBeans、Eclipse和JDeveloper等成熟工具排挤在外。谷歌在2014年发布的Android开源开发环境也是基于IntelliJ IDEA的。该IDE支持许多其他编程语言,如Python、Lua和Scala。
IntelliJ被认为是基于Java的最佳编程工具之一的最大原因是它的辅助功能,这使得它易于使用,并使由它创建的程序非常好地设计,具有先进的错误检查功能,可以更快、更容易地检查错误。

每一个公司他这个成长历史都和当时的上下文有很大的关系,那么2001年,各类编程的宏观环境是怎样的?
2000年前后,C语言市场占有率远远超过Java,C++排第3但是JetBrains一开始并没有为C++开发IDE,而选择了Java,促使它作这个决定的初衷是什么呢?这就很有意思了
资料来源:https://www.tiobe.com/tiobe-index/
一种观点是,在当时C语言和C++被Borland公司和Microsoft把持了,于是JetBrains选择从Java开始,弯道超车。
之后JetBrains持续推出新产品。
2004年,JetBrains推出 ReSharper™的早期访问计划(EAP),ReSharper可以帮Microsoft Visual Studio成为一个更佳的IDE,可以增加C#和Visual Basic .Net开发效率。
Resharper是一个插件,以前Microsoft Visual Studio有些功能没有,Resharper做了很多新技巧:

使用ReSharper,用户可以进行深度代码分析,智能代码协助,实时错误代码高亮显示,解决方案范围内代码分析,快速代码更正,一步完成代码格式化和清理,业界领先的自动代码重构,高级的集成单元测试方案,和强大的解决方案内导航和搜索。实质上,ReSharper特征可用于C#,VB.Net,XML,XAML,和构建脚本。ReSharper还为C#和VB.Net提供了增强的交叉语言功能,它使开发者可以有效的控制.Net混合项目。
随着2004年.Net语言逐渐流行,JetBrains开始推出针对.Net的工具。
.Net流行的背景是什么?
2004年,时任微软产品管理总监John Montgomery表示:微软全球范围.Net开发者约有250万人。财富100强公司中,有超过60%的人使用.Net开发。根据Forrester的数据,2004年在北美,56%的企业选择.Net来满足他们的开发需求。而44%的企业选择J2EE。在2005年Codeguru的论坛中,有工程师讨论道:Windows XP、Windows Vista和Windows 7都已经安装了.Net框架,这意味的当时的发展方向(2005年前后,Windows 2000 Windows98的用户相对更多)。
2005年,JetBrains推出dotTrace。dotTrace是.Net应用的性能剖析。它的痕迹在各种.Net和.Net核心应用,如WPF和通用Windows平台,ASP.NET,Windows和WCF服务,Silverlight和单元测试的瓶颈。
随着工程文化和应用场景的进一步流行,2006年,JetBrains推出持续集成工具TeamCity
持续集成(Continuous Integration)是啥?(以下回答摘自阮一峰老师的博客http://www.ruanyifeng.com/blog/2015/09/continuous-integration.html)
互联网软件的开发和发布,已经形成了一套标准流程,最重要的组成部分就是持续集成(Continuous integration,简称CI)。持续集成指的是,频繁地(一天多次)将代码集成到主干,好处主要有两个:
  • 快速发现错误。每完成一点更新,就集成到主干,可以快速发现错误,定位错误也比较容易。

  • 防止分支大幅偏离主干。如果不是经常集成,主干又在不断更新,会导致以后集成的难度变大,甚至难以集成。


持续集成的目的,就是让产品可以快速迭代,同时还能保持高质量。它的核心措施是,代码集成到主干之前,必须通过自动化测试。只要有一个测试用例失败,就不能集成。Martin Fowler说过,"持续集成并不能消除Bug,而是让它们非常容易发现和改正。”
持续集成出现的背景是什么?

持续集成(Continuous integration)是一种软件开发实践,即团队开发成员经常集成它们的工作,通过每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽早地发现集成错误。
之后,随着Web应用程序的发展,更多适用于不同场景的语言逐渐流行起来。Ruby on Rails就是其中的代表之一,这也是2008年:JetBrains推出Ruby on Rails的IDE RubyMine 的背景。
2008年:JetBrains推出Ruby on Rails的IDE RubyMine。

为什么Ruby on Rails会火?
Ruby on Rails在2005年的出现,很大地影响了web应用程序的开发:无缝数据库表创建、迁移和视图支架等创新特性对今天仍然有着很大影响:许多其他语言框架借鉴了Ruby on Rails的思想,包括Python的Django、Perl的Catalyst、PHP中的CakePHP、Laravel、Groovy中的Grails、Elixir中的Phoenix、Scala中的Play和Node.js中的Sails.js等。使用Ruby on Rails的著名网站包括Airbnb、Bloomberg、Crunchbase、Dribble、和GitHub等。
2007年,苹果公司发现 Ruby on Rails 开发者有一大部分都是使用 MAC 后,在 OS 上面狂推猛推用力推 Ruby on Rails,我们可以发现,商业公司对语言的推广会让这门编程语言快速流行。
Rails 不仅仅是一个运行时网络应用框架,本身包含了丰富的脚本来帮你完成程序基本骨架的工作。(Apple的)OSX 10.5 Leopard 會直接 Boundle 進去 Ruby 1.8.6,Rails ,Mongrel,Capistrano 。
2009年:JetBrains 推出MPS
什么是MPS?(https://www.prnasia.com/story/16187-1.shtml)MPS是一个专业软件开发环境,用于创建新的客户语言,扩展现存的语言,并且使用它们来开发软件。MPS也是一个创建Domain Specific Languages (DSLs)领域特定语言的开发工具。不熟悉编程的领域专家也能使用MPS创建的DSL。

MPS的主要目标是让创建新的语言和扩展现存语言变得尽可能的简单。它的高级属性能够定义语言的类型系统,系统规定参数和专有编辑器用于创建新的,强大的,容易使用的语言。MPS使用有生产力的实现方式:语言能够在高层次描述,MPS生成其他语言可编译的代码,尤其是Java。

小宇宙爆发年 :2010年推出WebStorm PhpStorm PyCharm dotCover  

2010年前后,宏观背景再次发生变化:Web 2.0的迅速流行,Chrome的兴起,V8架构导致了JS引擎速度提升,人们发现了浏览器可以做出可以使用的应用出来,浏览器写UI,调试各方面,快速的把桌面应用往网页应用搬运。

在这样的背景下,2010年,JetBrains公司推出JavaScript开发工具WebStorm,被很多JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScriptIDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。
JavaScript流行的原因:2009年,Ryan Dahl创建Node.js,带来了网络浏览器之外的JavaScript使用的大幅增长。
多年前的前端,呈现给用户的都是静态页面,asp等后台技术承担了几乎所有逻辑运算与处理的能力,那是个用拨号上网的年代,一个网页载入10几秒很平常,那时候的JS多半用来做弹窗,警告,以及华而不实的小动画(鼠标跟随,雪花等 )。

后来随互联网的发展,人们发现所有东西交给后台处理不仅反应慢同时服务器压力很大,于是当年的浏览器厂商前驱Netscape开始大力支持JavaScript,随后IE也开始做JS支持,表单验证等常用行为开始转向前端由JS完成,服务器在负载与时间响应上开始得到解放,人们也尝到了甜头。
但是,JS真正流行是伴随着web2.0开始的。web app概念越来越流行,网站越来越复杂,需要JS完成的任务越来越多,与此同时相关标准(W3C)的出台也推动了这门技术的推广与发展。从JS的发展史可以看出JS的诞生彻彻底底就是为互联网技术而生的,所以JS的流行根本动力源自于互联网技术的兴盛,github上托管的开源代码量JS长久居于榜首,JS越来越复杂能做的事情越来越多,之后html5的热炒和流行,让JS的地位更加稳固,在开发后台的时候你有很多语言可以选择(Aps,.Net,Java,C,C#...),但是前端除了JS几乎没有第二, 不过相较于C等低级语言他还很弱,限制太多,这主要是JS运行的平台(浏览器)与接触的对象(直接面对用户 )和相关安全问题有关, 未来JS的发展或许会在这方面突破,发展成为一门更加复杂的编译型语言,这依赖于标准的建立,市场的需求以及平台的支持。https://zhidao.baidu.com/question/511802273.html

在此同时,传说中“世界上最好的编程语言“PHP”开始流行,2010年,JetBrains公司推出PhpStorm:PhpStorm 是 PHP的 IDE,支持 Symfony、Laravel、Drupal、WordPress、Laminas、Magento、Joomla!、CakePHP、Yii 等各种主流框架。
PHP为什么会流行?
语言开源+灵活(说白了就是程序员在写网页的时候,要写逻辑怎么办?那PHP提供一种方式,就是把网页代码跟代码逻辑直接混在一块儿,写PHP就可以干这样的事情,所以它流行起来了),PHP在Web2.0时代迅速流行。
2010年前后,很多编程语言都被设计成面向对象的,这也是编程中的一种惯例,因为面向对象编程有助于更有效地组织数据。程序员们经常争论什么时候需要面向对象的编程。PHP支持面向对象的编程,但也可以在没有它的情况下运作。
面向对象编程: 面向对象编程,是一种方法,是一种世界观,一种建模的方法。

在面向对象编程的世界里,我们把我们所要编程的对各种各样的东西,抽象为了一个个具有名称的对象,称之为对象的一个东西,每一个对象,它具备了某一些行为以及一些属性,而整个我们所要编写的这个程序,它由一个个对象,它们之间的相互通信和协作来达成。
函数式编程,在早期就比如说性能不够高,是内存占用高,而面向对象这种方式其实是在命令的方式,命令式编程上去加一种抽象的手段就可以达到的,它不影响对于编程这种范式,这种颠覆性的改变。
2010年,JetBrains推出Python IDE PyCharm。
Python什么时候开始流行?为什么?
Guido van Rossum在 1980 年代创建 Python 时,他确保将其设计为通用语言。python 流行的主要原因主要是语法简单,开源(免费)因此即使是业余开发人员也可以轻松阅读和理解,同时又赶上机器学习和爬虫需求的时代。人们还可以通过更改 python 的代码库来快速进行实验,21世纪,进入人工智能时代,作为一种解释型语言,Python的不需要配置环境、开源、简单易学,为设计图形用户界面提供了很多可能性,这使得它在各种开发人员中更加流行。
2010年,JetBrains推出dotCover,这是知名捷克知名VS插件ReSharper开发商JetBrains公司为.Net开发人员所提供的代码覆盖工具,能够帮助开发人员分析.Net中的单元测试覆盖率,提供可视化的代码覆盖信息。它是JetBrains的一部分。.Net工具家族中还包括ReSharper, dotTrace和dotPeek。

2011年:JetBrains推出AppCode dotPeek  
JetBrains dotPeek 1.1是JetBrains公司发布的一款免费的.Net反编译器。反编译来源生成项目之后,用户不需要离开dotPeek就能够浏览项目文件。
反编译器:可以通过对别人写好的程序进行逆向分析和研究等工作,推导出产品所使用的思路、原理、结构、算法、处理过程、运行方法等设计要素。例如写程序的工程师离职了,可以通过反编译把之前写好的代码逻辑倒推出来。
2012年推出Kotlin语言神话的起点——为Java程序员的心灵而战
我们来看一下Kotlin的介绍:或许是纪念自己的家乡和母校,JetBrians的2012年发布的开源语言Kotlin(俄语Ко́тлин),以圣彼得堡附近的一个岛屿命名。这个岛地图如下:
图片来源:Wiki百科
在2010年前后,还发生了一件这样的大事:Java的所有者甲骨文公司,对安卓进行了起诉,起诉原因是认为谷歌抄袭了甲骨文的源代码,侵犯了专利,索赔90亿美元,这都给谷歌启用Kotlin语言创造了部分前提。
就是2012年Kotlin的推出,给JetBrains的而后辉煌奠定了基础。

Kotlin的特性有哪些?
Kotlin是开源、静态类型的编程语言,由JetBrains推出。
它的特性:面向对象,并支持函数式编程特性,主要是为JVM(Java虚拟机)设计的。也就是说Kotlin与Java完全兼容。例如,工程师可以很容易地在Kotlin的项目中使用Java库,而且Kotlin可以提供很多开箱即用的东西,不仅可以用Kotlin来做一个代码后端服务器,也可以编写Andriod应用,甚至是使用Kotlin Native的iOS应用...Kotlin甚至可以编译成JavaScript。
它最近的成功源于其用于 Alphabet Inc. 的 Android 的开源 Kotlin 编程语言。2019 年,谷歌宣布 Android 开发是“Kotlin 优先”,使其成为全球最受欢迎的移动操作系统的首选语言。谷歌表示,超过 60% 的专业 Android 开发人员使用 Kotlin,包括谷歌本身,谷歌利用它来设计地图、家庭和 Play 应用程序
kotlin因为太好了,就被Google钦定为Java的继任者。
2014年,JetBrains推出代码审查工具(Polyglot code review tool)Upsource推出.Net内存分析工具dotMemory,还推出了PyCharm教育版—PyCharm Edu ,教育版相对适合新人,也是培养未来种子用户的好方法(毕竟计算机要从娃娃抓起)
2015年:推出针对C和C++语言 的IDE CLion,还推出DataGrip (一款数据库管理客户端工具,可以让开发者跨平台管理数据库,它整合了主流数据库,方便连接到数据库服务器,执行sql、创建表、创建索引以及导出数据等。
2016年:推出 Rider,JetBrains Rider 是一款基于 IntelliJ 平台和 ReSharper 的跨平台 .Net IDE
同年推出 Toolbox App ,这是一个JetBrains出品的可以管理所有工具的工具:比如说IDEA,Android Studio,PyCharm,WebStorm等,打开工程项目时,不用先打开IDE再打开项目。有了Toolbox App,只要点击项目,Toolbox会帮助我们在IDE里打开项目。
2017年前后,随着技术的进一步发展,Go语言迅速流行。
Go为什么会流行?
首先从语言来说,Go编译部署快,有优势。
不同语言都有一个比较适合的场景,比如Python适合数据分析,人工智能方面的。go的话适合网络编程这一块儿。比起Java的繁杂,go简洁多了。比起Python的编译慢,go快多了。比起c++的内存泄露问题,go相对来说就不用管太多。编译部署快,有优势
从公司和商业化来说,Go语言 是Google的亲儿子,字节跳动优先拥抱go,这就像就像前几年百度拥抱PHP,Java成为了阿里的首选。大厂的选择对go也有一定的推动作用。
从成本来说, 用go确实占资源比Java少很多(因为go编译后就是二进制,在计算机上面运行的就是二进制了。机器码了,Java编译后 还有垃圾回收器,解释器之类,go的一个协程占的内存就很小,几k,Java的线程占的空间就1-2M)。企业应用,规模大了,降本增效也是一定要考虑的。
从社区影响力来说,每一年的Gopher大会规模越来越大,影响力也越来越大。还有举办的Meetup也不少,go的影响力和活跃度逐步在扩大。
从技术本质来说, 本身技术更新就是很快的,公司和个人都想用新的东西,创新的东西,性能好的东西,以此来提升自己,和吸引人才。
从市场发展上来说,云原生的发展,k8s和docker这些云原生的项目也都是go写的。一样语言想要有一个好的发展,一定要有比较顶级的应用。这一点,Java相关的项目在Apache就发展得很好。
在这样的场景下,2017年,JetBrains推出Go语言开发IDE工具GoLand 。

而后2018年,推出Datalore Marketplace 测试版:一款Web智能应用程序,主要功能是数据分析,且在 Python 中可以可视化显示结果。
2019年,JetBrains发布Space,主要目标是用Kotlin实现跨平台开发。
如何评价Space? JetBrians 的CEO Shafirov说,JetBrains 发现现有选项无法满足其不断增长的劳动力需求后,决定推出名为 Space 的计划。
Space 侧重于统一整个组织的工具和信息,使团队之间和整个公司范围的协作都更加高效。在 Space 提供的平台上,团队成员可以进行沟通,分享信息和协作处理项目,从而打破组织中固有的孤岛。无论是开发者、设计师、管理人员,还是其他类型的角色,都能在 Space 的帮助下提高工作效率,充分释放潜力。
还推出了学习平台JetBrains Academy ,鼓励大家通过实践来学习如何编写代码。首先全面地学习理论,然后立即通过构建有效的应用程序将理论付诸实践。在与 JetBrains IDE 集成的基于项目的学习环境中,深入研究 Java、Python 和其他编程语言。
2020年推出Ktor.Ktor是JetBrains 官方出品的互联应用框架。使用该框架非常易于开发异步的服务器与客户端,并且能够充分利用 Kotlin 以及协程的优势。
2019年,JetBrains 开源了IntelliJ IDEA 社区版

为什么要开源?
其实是出于企业战略的考虑:IDEA是当时市面上唯一收费的非开源IDE,如果彻底开源,那么收费用户就会流失,但是不开源,用户就会被其他竞品抢走。所以最后的决策是面向市场,基本功能社区版开源,高级版继续收费。

2020年,JetBrains时任CEO Shafirov说,JetBrains的目标用户主要是IT部门,所提供的的各种工具,有一批忠实的开发者用户。约有950万工程师使用JetBrains软件,其中20%是付费客户。

2021年11月29日,JetBrains 在官方博客宣布,推出轻量级编辑器 Fleet,并称其为“下一代 IDE”,对标微软的Visual Studio Code。
JetBrains的成功之处在哪?
Jetbrains是如何做到这一点的?

1.缓慢而稳定地朝着正确的方向发展。

10年前,Eclipse是一个巨大的力量。像Borland这样的开发工具公司由于Eclipse是免费的,基本上扼杀了开发工具市场而被 "黯然失色 "并关闭。Jetbrains也被认为最终会死亡。

但是,Jetbrains一直在不断地努力,根据当时的市场格局和趋势,选择了面向程序员这个用户群体,做到极致。他们选择了适合自己的节奏的发展方式,并且持续迭代、改进,并听取用户的意见,目前Jetbrains的市场份额远远大于Eclipse。

2. 产品至上

产品至上是一句看起来很简单的话,但是想要做到并不容易,Jetbrains的产品性能是这个公司在永远追求的方向。可以发现,Jetbrains提供的每个IDE,市场上都有对应的其他公司出品的免费替代品,无论是Eclipse、Visual Studio还是Sublime Text。

像Eclipse和Visual Studio,背后有巨大的资源和巨头支持,他们会获得更多的发展空间。但是用户还是会为Jebrains的IDE付费,原因只有一个——产品质量满足了用户的需求。JetBrains的工程师文化,所有的开发行为都是用户视角,自己就是自己 "非常苛刻的客户"。通常当用户和设计者是同样视角的时候,美妙的产品就会出现。

JetBrains现任CEO Maxim 是不是很Geek

3. 持续迭代

Jetbrains有耐心通过迭代持续更新产品。任何产品的初版都很难成为杀手级应用,但到了V3或V4版,我们可以发现,JetBrains在同类产品中成为一匹黑马。对大多数产品和公司来说,一夜之间的成功通常只是一个神话。Jetbrains信奉这个观点,持续迭代改进,专注走好自己的路,直到远超出竞争对手一大截。

虽然持续迭代,听起来很简单,但反观JetBrains的竞争对手,似乎并没有这样做:

例如,Visual Studio在每次发布时,会IDE做最小化的更新,但是应用新版本的原因通常是它支持最新的.Net版本或最新的C++编译器。也有用户认为,Visual Studio的IDE部分已经落后了很多,所以Jetbrains在销售Visual Studio的Resharper插件时才赚了不少钱。

Eclipse更是已经放弃人生,甚至多年来都懒得更新其网站。

4. 坚实的核心技术

迭代之所以对Jetbrains有效,是因为这家公司长期以拥有坚实的核心技术基础为目标。

以C++、C#和TypeScript IDE为例,JetBrains花时间为每一种语言编写自己的解析器和代码分析。尽管他们本可以走更简单的路线:例如使用微软提供的 "'Language Service",或者(在C++场景)写一个无法解复杂代码的基本解析器。

然而,通过长时间投入,追求卓越,最终开发出了市场上最好的产品。

5. 坚持朴素的工程作风

Jetbrains的核心技术包括,只是用Java编写的增量解析器和词法分析器,通过Swing APIs在桌面上呈现。没有使用大数据、Hadoop、Kafka、NodeJS或任何其他 "很酷很时尚 "技术。他们没有做出只是服务于一种时尚和流行趋势的技术决定:比如把整个IDE放在云端。Jetbrains之所以竞争如此之小,是因为很少有初创公司和程序员愿意学习和接受朴素的技术。

对于JetBrains公司,有哪些奇特的要素?

1. 不重视销售

用户购买Jetbrains的IDE是因为喜欢。不需要和 "客户经理 "谈话来购买,销售人员也不会联系任何公司的技术服务部来推销它。

2. 没有太多内容营销

Jetbrains的官网只有产品公告。他们最接近内容营销的是每月一次的Java通讯。这与典型的由风险投资支持的 "企业初创公司 "形成鲜明对比,后者有 "企业销售 "人员在打电话,公司预算的50%以上用于营销和销售。

在Hadi Hariri介绍Jetbrains Rider C# IDE的演讲中,有人问他如何比较Rider和Visual Studio。Hadi的回答很简单:"你上手试试吧,如果你觉得Jetbrains更好,就使用它"。这就说明了Jetbrains对其产品是多么的自信。

总结
Jetbrains是一个硅谷风投机构少有关注独角兽:它完全自给自足,自负盈亏,这些建立在坚实的核心技术上。它顽强地度过了企业的艰难时期,并通过持续开发迭代更好的产品而在市场上占据了一席之地。

创造编程语言这件事情,本身就是一件很酷的事,JetBrains选择把它付诸实践,然后推广开来,形成了影响力。今天所有的国内外高大上的互联网大厂和Top级的公司,为什么没有去做这样一件事情呢?


*感谢技术生活进化论所有朋友们对笔者多年来一如既往的支持

*感谢汪Sir、陌上尘、Rolle、tison、YanX、Ygy、Yerik在专业知识上给予的帮助

*感谢卫Sir、庄Sir、适兕


参考文献:

1.https://www.bloomberg.com/news/articles/2020-12-18/czech-startup-founders-turn-billionaires-without-vc-help

2.https://en.wikipedia.org/wiki/JetBrains

3.JetBrains:三个程序员用付费产品打赢了IBM的开源,还“做大做强”了-IT经理世界2018-12-27

4.https://movingfulcrum.com/jetbrains-the-unicorn-silicon-valley-doesnt-like-to-talk-about/

5.https://baike.baidu.com/item/%E9%9B%86%E6%88%90%E5%BC%80%E5%8F%91%E7%8E%AF%E5%A2%83/298524?fromtitle=IDE&fromid=8232086&fr=aladdin

6.https://en.wikipedia.org/wiki/JetBrains

7.https://en.wikipedia.org/wiki/Borland

8.我要创办一家公司,干翻JetBrains和IDEA!-Original 码农翻身刘欣 码农翻身2021- 9-23

9.https://www.slideshare.net/intelliyole/from-renamertopolyglotide

10.https://resources.jetbrains.com/storage/products/jetbrains/docs/corporate-overview/en-us/jetbrains_corporate_overview.pdf  

11.https://www.sergeydmitriev.com/

12.https://www.infoq.com/articles/jetbrains-developer-tools/bb23

13.https://baike.baidu.com/item/Resharper/6157088?fr=aladdin

14.https://www.zdnet.com/article/jetbrains-starts-adding-remote-dev-functionality-on-ides-and-introduces-fleet/

15.https://movingfulcrum.com/jetbrains-the-unicorn-silicon-valley-doesnt-like-to-talk-about/

16.https://www.solvusoft.com/zh-cn/file-extensions/software/jetbrains/dottrace/

17.https://baike.baidu.com/item/DotCover/7930577?fr=aladdin

18.https://baike.baidu.com/item/AppCode/1331480?fr=aladdinhttps://blog.csdn.net/qq_24342739/article/details/99821442

19.https://en.wikipedia.org/wiki/PHP

20.https://www.prnewswire.com/news-releases/jetbrains-headquarters-on-the-move-176576971.html

21.https://news.ycombinator.com/item?id=9712641

22.https://baike.baidu.com/item/JBuilder/148031?fr=aladdin

23.https://blog.csdn.net/qq_24342739/article/details/99821442  

24.https://www.codeproject.com/Articles/7109/Why-NET

25.https://forums.codeguru.com/showthread.php?490464-Why-is-NET-so-popular

26.https://blog.csdn.net/qq_24342739/article/details/99821442  


【阅读更多】


本文还有不足之处,如果您对开源领域,或者IDE,或者您也是程序员背景想要讨论创业,有什么其他建议,也欢迎在后台留言:)兔兔看到会加您微信:)

期待可以和有缘看到本文的朋友共同进步。


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存