今天,VS Code 五岁了。
时光飞逝,岁月如梭。今天,VS Code 迎来了 5 岁的生日。
回想起 VS Code 发布的那一天,仿佛还在昨天。
回顾 VS Code 这五年的发展,总是能给我们开发者带了无限的惊喜。
- 2015 年4 月 29 日,在微软 Build 2015 大会上,微软发布了 Visual Studio Code 第一个预览版本。
- 2015 年 11月 18 日,微软的 Visual Studio Code 团队将Visual Studio Code在GitHub上开源,并采用MIT许可证,同时宣布将支持扩展功能。
- 2016 年 4月 14 日,Visual Studio Code 正式版发布,版本号为1.0.0。
- 2017 年 11月 15 日,在微软 Connect(); 2017 大会上,微软宣布 Visual Studio Code 的月活跃用户达到了260 万。
- 2018 年 5月 7 日,在微软 Build 2018 大会上,微软发布了 Visual Studio Live Share 插件,使得开发者可以在Visual Studio Code 或者 Visual Studio IDE 中进行实时的协同开发和调试。
- 2018 年 9月 10 日,微软发布了 GitHub Pull Requests 插件,使得开发者可以在 Visual Studio Code 轻松 review 和管理 GitHub pull requests。这也是微软在收购 GitHub 后,Visual Studio Code团队和 GitHub 团队一次非常良好的合作。
- 2019 年 5月 2 日,在 PyCon 2019大会上,微软发布了 VS Code Remote Development,可以帮助开发者在容器,物理或虚拟机,以及Windows Subsystem for Linux (WSL) 中实现无缝的远程开发。
- 2019 年11 月 4 日,在微软 Ignite 2019 大会上,,微软正式发布了 Visual Studio Online,一个由云服务支撑的开发环境。除了支持通过浏览器连接到Visual Studio Online 云开发环境,也支持 Visual Studio Code 和 Visual Studio。
回想我这几年来的成长,也与 VS Code 密切相关。从码农、到做产品、到布道师、再到构建社区,我与 VS Code 共同成长。
码农
曾经我也是一个普普通通的 CRUD Boy,可能就是大家所说的码农吧。直到那一天,我遇见了 VS Code,改变由此开始。
做产品
打造一款 VS Code 插件主要包括四个阶段:设计、实现、推广和维护。作为一个开发者,我们往往会把大多数的时间放在实现上(也就是编写代码),但韩老师认为一个好的产品是万万离不开设计、推广和维护这三个方面的。也正是因为意识到了设计、推广和维护的重要性,韩老师才能打造出超过一千万下载量的 Code Runner 插件。如果你 100% 的时间都只是花在编写代码上,那你真的只是码农了,你的产品是没有灵魂的。
布道师
鲁迅先生为什么要弃医从文?
就算我开足马力,也只是写了 20 多个 VS Code 插件。如果我能把 VS Code 传播给更多的开发者,就算只吸引 1000 个开发者,一人写一个 VS Code 插件,那也是 1000 个插件。广大开发者的力量是无比强大的!
当然,我不是弃码从文,我是边码边文。
授人以鱼不如授人以渔。在 PyCon、JS Conf、.NET Conf、COSCon、Microsoft Tech Summit、Google Developer Group、GitHub 官方见面会、VS Code Day 等大会上,你都能看到韩老师的身影。除了 PHPCon,我可能都参加了呢~
构建社区
到如今,我不只是一个人,我们是数以百万计的 VS Code 爱好者,我们是一个社区,一起打造 VS Code 中文社区!
感谢 VS Code 给我们开发者带来了无限的精彩。相信未来 VS Code 会更好!
我永远不会忘记,那些年,我们一起追的 VS Code。
我是韩老师,我为 VS Code 带眼。
更多最新的 VS Code 热门文章、使用技巧、插件推荐、插件开发攻略等,请关注“玩转VS Code”公众号!

今天,VS Code 五岁了。的更多相关文章
- python学习笔记(五岁以下儿童)深深浅浅的副本复印件,文件和文件夹
python学习笔记(五岁以下儿童) 深拷贝-浅拷贝 浅拷贝就是对引用的拷贝(仅仅拷贝父对象) 深拷贝就是对对象的资源拷贝 普通的复制,仅仅是添加了一个指向同一个地址空间的"标签" ...
- (五岁以下儿童)NS3样本演示:桥模块演示样品csma-bridge.cc凝视程序
(五岁以下儿童)NS3:桥模块演示样品csma-bridge.cc凝视程序 1.Ns3 bridge模csma-bridge.cc演示示例程序的目光 // Network topology // // ...
- linux下一个Oracle11g RAC建立(五岁以下儿童)
linux下一个Oracle11g RAC建立(五岁以下儿童) 四.建立主机之间的信任关系(node1.node2) 建立节点之间oracle .grid 用户之间的信任(通过ssh 建立公钥和私钥) ...
- PE文件结构(五岁以下儿童)基地搬迁
PE文件结构(五岁以下儿童) 參考 书:<加密与解密> 视频:小甲鱼 解密系列 视频 基址重定位 链接器生成一个PE文件时,它会如果程序被装入时使用的默认ImageBase基地址(VC默认 ...
- 程序员与年龄:四十岁普通开发、三十五岁首席架构、三十岁基层Leader
最近,有一个词儿特别热门--躺平.有没有人跟你说过:"躺平说起来容易,做起来更容易." 和躺平相对的是另外一个词--内卷,群聊的时候,已经很多次看过草卷起来了.jpg表情包.某些节 ...
- Android五岁了
今日(2013-9-24),谷歌开源系统Android迎来了它5岁的生日. 时间过得真快啊!当时的android并不被人看好,而现在的android已经成为了全球最大的智能手机操作系统.而现在的诺基亚 ...
- Servlet(五岁以下儿童)web.xml一些常用的配置
(1)lode-on-startup,这Servlet该项目启动时它将被称为(从主要的电话init办法,为了安全起见,一般不应为Servlet建立URL制图).一些数据通常被用作前处理,或使用多线程建 ...
- ExtJs4得知(五岁以下儿童)主要的Ext分类
Ext类是ExtJs最常见的.最基本的类,它是一个全局对象,它封装了全班.辛格尔顿和 Sencha 该方法提供了一种有用的库. 嵌套在该命名空间中一个较低的水平最用户界面组件. 但是提供了很多有用的功 ...
- Scrapy研究和探索(五岁以下儿童)——爬行自己主动多页(抢别人博客所有文章)
首先.在教程(二)(http://blog.csdn.net/u012150179/article/details/32911511)中,研究的是爬取单个网页的方法.在教程(三)(http://blo ...
随机推荐
- linux部署win服务 dotnet mono jexus
.Net Core (dotnet C#应用) dotnet 可以用在linux上运行 C#应用 适用于 SSO 统一身份认证系统 # 安装依赖 yum install libunwind yum i ...
- Activiti网关--排他网关
排他网关 1.什么是排他网关 排他网关(也叫异或(XOR)网关,或叫基于数据的排他网关),用来在流程中实现决策. 当流程执行到这个网关,所有分支都会判断条件是否为true,如果为 true 则执行该分 ...
- 字典树基础进阶全掌握(Trie树、01字典树、后缀自动机、AC自动机)
字典树 概述 字典树,又称单词查找树,Trie树,是一种树形结构,是一种哈希树的变种.典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计.它 ...
- Golang 实现 Redis(4): AOF 持久化与AOF重写
本文是使用 golang 实现 redis 系列的第四篇文章,将介绍如何使用 golang 实现 Append Only File 持久化及 AOF 文件重写. 本文完整源代码在作者GithubHDT ...
- 页面静态化--Thymeleaf
1.Thymeleaf简介 官方网站:https://www.thymeleaf.org/index.html Thymeleaf是用来开发Web和独立环境项目的现代服务器端Java模板引擎. Thy ...
- 三通道低功耗ASK低频唤醒接收器PAN3501完全替代AS3933/GC3933
低频唤醒接收器PAN3501软硬件兼容AS3933/GC3933,且新增了寄存器功能,可直接替换,供应稳定,高性价比. 产品介绍: PAN3501是一款最多三个通道接收的低功耗ASK接收机,可用 ...
- zabbix模板的自动发现规则(ldd)实现被监控项自动发现
zabbix模板的自动发现规则(ldd)实现被监控项自动发现 自动发现规则(ldd)用途说明 在zabbix自带的linux模板的自动发现规则中,有一个Mounted filesystem disco ...
- go中的面向对象总结
我们总结一下前面看到的:Go 没有类,而是松耦合的类型.方法对接口的实现. OO 语言最重要的三个方面分别是:封装,继承和多态,在 Go 中它们是怎样表现的呢? 封装(数据隐藏):和别的 OO 语言有 ...
- 页面存在多个url,使用jmeter进行遍历操作
有一次遇见一个问题:进入网站后,有多个相同的url,但是仅url后面的路径中id有区别,如下图:这时我想要遍历点击查看url详情内容:那么就可以使用一个“逻辑控制器---foreach控制器” 如下: ...
- Java队列学习第一篇之列介绍
Java并发之显式锁和隐式锁的区别 在面试的过程中有可能会问到:在Java并发编程中,锁有两种实现:使用隐式锁和使用显示锁分别是什么?两者的区别是什么?所谓的显式锁和隐式锁的区别也就是说说Synchr ...