时光飞逝,岁月如梭。今天,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 五岁了。的更多相关文章

  1. python学习笔记(五岁以下儿童)深深浅浅的副本复印件,文件和文件夹

    python学习笔记(五岁以下儿童) 深拷贝-浅拷贝 浅拷贝就是对引用的拷贝(仅仅拷贝父对象) 深拷贝就是对对象的资源拷贝 普通的复制,仅仅是添加了一个指向同一个地址空间的"标签" ...

  2. (五岁以下儿童)NS3样本演示:桥模块演示样品csma-bridge.cc凝视程序

    (五岁以下儿童)NS3:桥模块演示样品csma-bridge.cc凝视程序 1.Ns3 bridge模csma-bridge.cc演示示例程序的目光 // Network topology // // ...

  3. linux下一个Oracle11g RAC建立(五岁以下儿童)

    linux下一个Oracle11g RAC建立(五岁以下儿童) 四.建立主机之间的信任关系(node1.node2) 建立节点之间oracle .grid 用户之间的信任(通过ssh 建立公钥和私钥) ...

  4. PE文件结构(五岁以下儿童)基地搬迁

    PE文件结构(五岁以下儿童) 參考 书:<加密与解密> 视频:小甲鱼 解密系列 视频 基址重定位 链接器生成一个PE文件时,它会如果程序被装入时使用的默认ImageBase基地址(VC默认 ...

  5. 程序员与年龄:四十岁普通开发、三十五岁首席架构、三十岁基层Leader

    最近,有一个词儿特别热门--躺平.有没有人跟你说过:"躺平说起来容易,做起来更容易." 和躺平相对的是另外一个词--内卷,群聊的时候,已经很多次看过草卷起来了.jpg表情包.某些节 ...

  6. Android五岁了

    今日(2013-9-24),谷歌开源系统Android迎来了它5岁的生日. 时间过得真快啊!当时的android并不被人看好,而现在的android已经成为了全球最大的智能手机操作系统.而现在的诺基亚 ...

  7. Servlet(五岁以下儿童)web.xml一些常用的配置

    (1)lode-on-startup,这Servlet该项目启动时它将被称为(从主要的电话init办法,为了安全起见,一般不应为Servlet建立URL制图).一些数据通常被用作前处理,或使用多线程建 ...

  8. ExtJs4得知(五岁以下儿童)主要的Ext分类

    Ext类是ExtJs最常见的.最基本的类,它是一个全局对象,它封装了全班.辛格尔顿和 Sencha 该方法提供了一种有用的库. 嵌套在该命名空间中一个较低的水平最用户界面组件. 但是提供了很多有用的功 ...

  9. Scrapy研究和探索(五岁以下儿童)——爬行自己主动多页(抢别人博客所有文章)

    首先.在教程(二)(http://blog.csdn.net/u012150179/article/details/32911511)中,研究的是爬取单个网页的方法.在教程(三)(http://blo ...

随机推荐

  1. 3.用IntelliJ IDEA 创建Maven

    一.File→New→ Project (需要下载安装配置Maven等,这些步骤省略) 二.Maven→org.apache.maven.archetypes:maven-archetype-quic ...

  2. Sql练习201908210951

    表结构: create table SalePlan ( PlanId ,) primary key, GoodsId int, PlanPrice decimal(,) ); go create t ...

  3. 利用data文件恢复MySQL数据库

    背景:测试服务器 MySQL 数据库不知何种原因宕机,且无法启动,而原先的数据库并没有备份,重新搭建一个新服务器把原data 复制出来 进行恢复 1 尽量把原data复制出来(一个都不要少以防意外 其 ...

  4. CSAPP实验——DataLab

    任务:按照要求补充13个函数,会限制你能使用的操作及数量 bitXor(x,y) 只使用 ~ 和 & 实现 ^ tmin() 返回最小补码 isTmax(x) 判断是否是补码最大值 allOd ...

  5. Spring IOC/ AOP 笔记

    扫描 Bean 以下主要是使用基于注解方式配置 组件扫描(一般用于自己写的类) 添加 @Component 注解,被扫描到后自动作为 Bean 组件 @ComponentScan 扫描配置的位置,将添 ...

  6. Java 使用InputStream笔记

    当我们要从网络下载资源时,使用类似如下方法来获取InputStream实例: URLConnection connection = new URL("http://www.XXXX.XXX& ...

  7. 基于Taro.js和微信小程序云开发的移动端校园平台——《我的衡师》

    我学校教务处目前仅有电脑端,并不适配移动端,电脑端也只能使用IE6浏览器访问,兼容性差.我在没有api接口的情况下,通过Carles和Postman抓包,用node.js爬虫实现了后台和小程序的对接. ...

  8. 29 collection 集合体系结构

    /*collection:采集 * ArrayList * 集合的体系结构: * 由于不同的数据结构(数据的组织,存储方式),所以Java为我们提供了不同的集合, * 但是不同的集合他们的功能都是相似 ...

  9. java添加对象成功后想知道当前添加对象的id

    我使用的是springboot Mybatis写的项目,结构如下 mapper.xml(以下2个属性必须要有,主键id 一般是自动生成的) mapper.java  (注意新增的返回值不需要,一般情况 ...

  10. https的秘钥公钥以及之间的会话流程

      一 共享秘钥 1.1 概念 共享秘钥和我们生活中同一把锁的钥匙概念类似,对同一把锁来说,加锁时使用什么钥匙,解锁也必须使用同样的钥匙. 1.2 共享秘钥在HTTP传输中的缺点 以共享密钥方式加密时 ...