{
    "componentChunkName": "component---src-templates-blog-blog-detail-tsx",
    "path": "/blog/old-and-new-friends-in-tidb-hackathon",
    "result": {"pageContext":{"blog":{"id":"Blogs_431","title":"老朋友新朋友，抱紧“大腿”，冲击第一名！ | TiDB Hackathon 选手访谈","tags":["TiDB Hackathon 2022"],"category":{"name":"社区动态"},"summary":"TiDB Hackathon 2022 已经进入倒计时，距离决赛日还有不到一周时间，今年由于赛制的变化，初赛提前到了赛前（10 月 17 日），你已经准备好自己项目的 RFC 了吗？","body":"目前，[TiDB Hackathon 2022](https://tidb.net/events/hackathon2022) 已经进入倒计时，距离决赛日还有不到一周时间，今年由于赛制的变化，初赛提前到了赛前（10 月 17 日），你已经准备好自己项目的 RFC 了吗？如果还没有，请注意 10 月 17 日是 RFC 收集最后截止日，如果还没有报名或准备 RFC 的小伙伴，要抓紧时间啦！\n\n为了帮助大家更从容地参加比赛，TiDB 社区本期访谈中采访了三位 Hackathon 参赛选手，他们有第一次参加的，也有参加 2 届的选手，希望通过访谈为大家分享一下他们的参赛经验。已经报名参加本届 Hackathon 的选手或是对 Hackathon 感兴趣的小伙们，值得一看！\n\n## 俞平\n\n第一位选手是来自 P 社内核组的俞平同学，他至今有两次 Hackathon 的经验，前年作为技术小组帮助选手解决问题，去年首次下场参赛。今年更是信心满满，决定向奖项发起冲击！\n\n以下为俞平同学的访谈记录：\n\n**Q 去年 TiDB Hackathon 中的参赛项目是什么**？\n\n**俞平**：去年我报名了生态组，是和两位社区的小伙们一起组队参加的。他们日常工作中就在用 TiDB 支持业务，遇到的最大问题是在用 TiCDC 做同步时，如果一个单表特别大的话，现有 TiCDC 的设计会有一些限制。所以，我们就把优化这个问题作为参赛题目，希望降低一些这个问题的限制。最后虽然离理想状态还有些距离，但也算有些效果，重在参与嘛。\n\n**Q 你是如何找到项目 idea 灵感的**？\n\n**俞平**：在 Hackathon 比赛中主要有两类 idea：一种是有趣好玩的，也是我比较喜欢的。将那种脑洞比较大，甚至有些不太正经的的想法带入项目中，比如去年用 minecraft 来展示 Chaos Mesh 运作方式的项目，前年用 VR 飞机驾驶舱的方式来展现 TiDB 运维的项目，我觉得这些 idea 真的非常棒；另一种就是像我们一样，在平时使用 TiDB 的过程中觉得有什么地方是可以优化提升的，那就可以将这个作为 idea 来参加比赛。\n\n**Q 在你眼中，这些年 TiDB Hackathon 有哪些变化**？\n\n**俞平**：我觉得 TiDB Hackathon 的内核其实一直没有改变过，借这个大赛大家可以有一个展示自己创意的机会。从比赛上来说，奖品越来越丰富，组织越来越完善了，去年设置了 4 个赛道，大家可以在不同赛道里比赛，能更好地找到自己的 idea。今年虽然改为 2 个赛道，但类别感觉更清晰了。产品赛道更偏向 TiDB 的内核，应用赛道更偏向业务场景，从 TiDB 的角度看，这两个方面都是紧密结合的领域。另外，今年我发现主办方从赛制上降低了了初赛的难度，大家可能终于可以不那么卷了。\n\n**Q 今年已经参赛了吗**？\n\n**俞平**：今年有一位大佬邀请我抱他的“大腿”，于是我和其他几位小伙伴就毫不犹豫地与大佬一起组队报名了。我们的队名叫“摸鱼就好”，项目应该属于产品组。\n\n**Q 开始写 RFC 了吗？有没有什么小技巧分享**？\n\n**俞平**：今年不让抢跑，所以还没有提交 RFC。写 RFC 有点类似于写设计文档，我的经验是主要由三个部分组成：首先要讲清楚我要做一个什么东西，这个东西长什么样子，它要解决什么问题，它的适用场景是什么，甚至可能它不解决什么样的问题。从这些方面把项目进行清晰的定义，这是比较重要的第一步；接下来就是介绍采取什么技术方案，曾经考虑过的备选方案是哪些，做了哪些权衡最终选择了当前技术方案；最后，还要加上做过哪些测试与验证。如果大家不知道怎么写，其实也可以查看一下往期的 RFC 是怎么写的，网上应该都可以查到。\n\nRFC 毕竟是文字的东西，在答辩里可以再加一些文字之外的东西，比如我这个 idea 产生的背景是什么，我们在过程中是怎么讨论的，有一个怎么样的心路历程，这样可以让评委更好理解，印象更深刻。\n\n**Q 今年有什么期待**？\n\n**俞平**：大佬说我们今年的项目冲击第一名还是有希望的，我尽力而为吧。\n\n## 夏力维\n\n下面这位选手是十年全栈工程师夏力维，前齐书在线即时文档工具早期工程师，多年创业，历经协同文档、O2O、美妆、工厂自动化运营脚本，堪称全能型选手。\n\n以下为夏力维同学的访谈记录：\n\n**Q 你都参加过哪些比赛类活动**？\n\n**夏力维**：自 2011 年参加“硅谷-上海黑客马拉松”后，我开始在技术社区活动较为积极参与。曾参与过由 AVOSCloud Hackathon 和 Autodesk 组织的 AEC Hackathon，并获得前三。在新技术体验和使用中，感受到了来自前沿科技公司对于新技术的普及与推广力度。在这个时代，没有那么商业与限制，更多是对于更好的技术与业务运用的结合，能看到平时看不到的技术应用和视野拓展。\n\n**Q TiDB Hackathon 有哪些方面吸引你**？\n\n**夏力维**：我很早就通过上海的 GDG 技术社区听说过 TiDB 的使命，我自己是 Bret Taylor 的忠实追随者，在数据结构部分有继承 FriendFeed 思想的 DB 方案产品，在面对 TiDB 时，期待有更好的结合。\n\n**Q 今年从什么渠道了解到 Hackathon？你选择哪个赛道**？\n\n**夏力维**：有一个友人推荐了项目，她老公是《剑指 Offer》的作者，也非常推荐 TiDB 的活动。我选择了应用组赛道，倒不是觉得这个赛道压力小，而是觉得这个赛道能够验证数据管理的过程中，其实是可以实现更高扩容性能的。今年也期待看到更多可以落地的应用产品，并且让很多人看到并能参与进来。\n\n**Q 队伍名字是什么？参赛项目是什么**？\n\n**夏力维**：我的队名叫 HOTPOOR，一个人的全栈工程师队伍。我的项目是像做 PPT 一样做网站建设，并且直接可用。而不是仅仅像 Figma 做设计，或者 Axure 做原型，对标产品 Gamma.app ，但要更自由。\n\n## 杜志刚\n\n最后这位选手是在软件开发行业拥有 20 年的工作经验的杜志刚。在中国 10 年，主要做编码工作；在日本 10 年，主要也是做编码工作，不同的是能吃到寿司和纳豆:P  。从 2018 年开始通过 Kubecon 了解到 TiDB，从此一发不可收拾，沉醉于 TiDB 的学习上。目前已经加入 P 社，从事日本本地的技术支持工作。\n\n**Q 去年你带来的是什么项目？能给其他选手分享一下提 idea 的经验或灵感吗**？\n\n**杜志刚**：去年我们带来了 [Ti-Click](/blog/ti-click) 的社区雏形，希望能让应用开发者用户更多地了解 TiDB，更好地使用 TiDB。PingCAP 目前在应用开发者方面做得还不够，包括 MySQL 生态圈的各种库和框架对 TiDB 的最佳适配还不够，比如 TiDB 可以更好地横向扩展，那么连接池也应该有所调整以便能用上新结点。课题很多，希望更多的应用开发者参加到 Hackathon 里来，从应用开发者角度出发，把 TiDB 玩得更好。\n\n**Q 在你眼中， 这些年来 TiDB Hackathon 有哪些变化**？\n\n**杜志刚**：今年的变化感觉比较大，从赛制上讲这次更加公平，不抢跑，限定 2 天编码，更接近极客精神；最吸引我的地方是可以感受到 TiDB 热情的社区氛围，观摩各路大神的精彩成果。\n\n同时，今年的赛道设置为 TiDB 产品组和应用组。我觉得应用组的增设非常好，因为我应用开发经验更多，更适合在这个领域施展。期待 TiDB“出圈” ，产品组固然很好很强大，但是局限于产品组来的人估计也都是老面孔了。应用组可以吸引更多的开发者来关注 TiDB，让 TiDB 的生态变得更强。\n\n**Q 目前是否已经组队？项目是什么方向**？\n\n杜志刚：我们的队伍还是叫 Ti 可立刻，打算继续从应用开发的角度或 DBA 的角度来寻找 idea，我们队的目标是面向 TiDB 的应用开发者服务。我们会根据主流编程语言推出一系列项目模版，内置应用程序使用 TiDB 的最佳实践，让应用程序最佳化使用 TiDB，少走弯路。同时我们还和 TiDB Cloud 一键集成，并且也针对应用开发者的本地开发需求和 CI 环境，提供 gitpod 和 docker-compose 方案，使得应用开发者省去配置这些周边环境的工作，集中精力实现自己的业务逻辑。\n\n**Q 作为老选手，你们 RFC 准备应该也比较有经验，有没有一些小技巧可以分享给今年的小伙伴们呢**？\n\n**杜志刚**：其实谈不上什么经验。不过我想它类似工作报告，只要表达清楚为什么做/要做什么/怎么做就好了。\n\n**Q 对自己的项目在比赛中有什么期待**？\n\n**杜志刚**：期待以此为契机，让 TiDB 的应用开发生态发展得更好。\n\n**Q 有没有一些其他参赛经验想分享给其他小伙伴的**？\n\n**杜志刚**：我仅参加过一年，经验不多。我自己想的是，好好享受社区的火热气氛，燃烧自己的热情，享受 Hackathon 的这个过程。\n\n通过三位选手的分享，想必也为大家提供了一些参赛经验和项目思路。总结一下，项目创意可以从平时遇到的问题出发，最好能做得好玩有趣一些。写 RFC 关键要写清楚项目的目标、解决哪些问题、适用场景、技术方案以及验证测试 DEMO。**关于如何设计 RFC，大家也可以看一下官方模板**：https://asktug.com/t/topic/903770\n\n最后，敲黑板说重点：**10 月 17 日是 RFC 收集最后截止日**，还没有报名或准备 RFC 的小伙伴要抓紧时间啦，赶上最后一班车~\n\n了解 [TiDB Hackathon 2022](https://tidb.net/events/hackathon2022) 更多详情，立即报名参加吧！","date":"2022-10-14","author":"PingCAP","fillInMethod":"writeDirectly","customUrl":"old-and-new-friends-in-tidb-hackathon","file":null,"relatedBlogs":[{"relatedBlog":{"body":"![hackathon 2022 kv.jpeg](https://img1.www.pingcap.com/prod/hackathon_2022_kv_000f450a54.jpeg)\n\n一年一度的 TiDB Hackathon 又来啦！\n\n[TiDB Hackathon 2022](https://tidb.net/events/hackathon2022) 主题为「**Possibility at Scale**」，9 月 13 日正式开启，线下决赛将在 2022 年 10 月 22 - 23 日举行。期待与你一起打破传统技术边界，突破固有思维局限，用 TiDB 释放创新的更多可能性。\n\n本届 TiDB Hackathon 将面向更广泛人群，分为**应用组**与 **TiDB 产品组**两大赛道。无论你是应用开发者、数据库开发者、数据库上下游生态从业人员，还是数据库使用者，都可以找到适合自己的方向，一起“玩转” TiDB。\n\nTiDB Hackathon 报名通道于 2022 年 9 月 13 日正式开启，**选手们可以自行组队参赛，通过初赛甄选后，将在现场完成 Coding 及决赛答辩，优胜队伍将获得奖金、技术和资源商的支持**。大赛评委阵容豪华，数据库领域资深专家、社区技术大牛、顶级投资人代表将对项目进行深度点评。此外，还有顶级投资人全程参与评选，让你的实力被更多人看到。\n\n**扫描下图二维码，立即报名参赛**，或前往 [TiDB Hackathon 2022](https://tidb.net/events/hackathon2022) 活动页报名。\n\n![报名参赛.jpeg](https://img1.www.pingcap.com/prod/_f7bfacf978.jpeg)\n\n从 2017 年到 2022 年，TiDB Hackathon 不断升级，吸引了全球 1000 + 技术爱好者参与，先后诞生了诸如 UDF 引擎、TiExec、TiMatch 等深受好评的硬核项目，也有 zh.md、TiDB 驾驶舱、pCloud 等新颖有趣的项目。同时，部分优秀项目还在海内外媒体平台获得了多重曝光，借助 TiDB 社区力量为项目提供更多生命力。\n\n在 TiDB Hackathon ，你可以尽情发挥想象力与创造力，全情投入，实现自己的 idea。我们希望你可以永葆对技术的热情与好奇心，在代码的世界中勇敢探索、一往无前。我们在 TiDB Hackathon 2022 等你，期待与你共赴这场技术盛宴！\n\n## 赛事亮点\n\n🌟 **奖金丰厚**\n\n大赛总奖金池高达 35 万元，奖项多达 10+ 个，涵盖各个方向，力求全方位挖掘各参赛项目的价值。\n\n🌟 **各路大神同台竞技**\n\n技术大神齐聚一堂，上演“神仙打架”，场面超燃。高手之间的巅峰对决，精彩纷呈，让人大开眼界。\n\n🌟 **高质量交流**\n\n数据领域知名专家、社区技术大牛担任大赛评委，对项目进行深入点评，还有顶级投资人全程参与评选，你将不止收获硬核的技术反馈，还会获得前瞻性启发。\n\n🌟 **优秀项目专题采访**\n\n大赛结束后，我们将对优秀项目进行专题采访，在海内外技术圈多重曝光，提升优秀项目的知名度，借助 TiDB 社区力量为项目提供更多生命力。\n\n## 丰厚奖金\n\n**奖金池 35 万元，10+ 奖项，20+ 获奖团队**\n\n![丰厚奖金.jpeg](https://img1.www.pingcap.com/prod/_d265519d19.jpeg)\n\n**神秘定制社区周边**\n\n![定制社区周边.jpeg](https://img1.www.pingcap.com/prod/_c6c05c4a61.jpeg)\n\n## 参赛对象\n\n不管你是数据库内核工程师、数据库生态上下游开发者，还是应用开发者，只要你有 idea，都可以报名参赛，一展你的风采！\n\n## 赛道设置\n\n**应用组**\n\n以体现 TiDB 产品价值为主，基于 TiDB 之上实现代码开源的产品、工具、应用等均可。部署方式上，更推荐基于 Cloud 构建 TiDB 相关应用。推荐领域：游戏、电商、金融科技、公益等。\n\n**TiDB 产品组**\n\n为 TiDB 内核产品以及 TiCDC、TiDB Lightning、TiUP 等周边工具的性能、稳定性、易用性或功能等各方面做出提升。\n\n## 赛程安排\n\n- 报名：即日起 - 10 月 17 日，开启报名\n\n- 组队：9 月 17 日，参加「非正式会谈 — 创意脑暴会」，获取项目灵感（详见下方介绍）\n\n- 线上初赛：报名后 -  10 月 17 日，提交 RFC 进入初赛环节\n\n- 名单公布：10 月 19 日，查看决赛入围名单\n\n- 现场 Coding & 决赛：10 月 22 日 - 10 月 23 日，现场 Coding & 决赛答辩\n\n![比赛日程.png](https://img1.www.pingcap.com/prod/_357da0cc3c.png)\n\n## 评委阵容\n\n数据库领域知名专家、社区技术大牛、顶级投资人代表等担当评委，还有顶级投资人全程坐镇，对比赛项目深入点评。\n\n![评委.png](https://img1.www.pingcap.com/prod/_db0a886a7b.png)\n\n<center>（评委按姓名首字母排序）</center>\n\n比赛有输赢，技术无高低。即便最终未能问鼎巅峰，朝着心之所向全力冲刺依旧是一段值得回忆的旅程。秉承不断突破和创造的黑客精神，来一场技术的狂欢盛宴吧。放码过来！\n\n## 创意脑暴会给你灵感\n\n**TiDB Hackathon 2022 非正式会谈 —— 创意脑暴会**来啦，这里有超多 idea，特邀东旭以及资深架构师们在线脑暴，给你超丰富项目灵感。9月17日 本周六 10:30-12:00（GTM+8），线上见～\n\n![创意脑暴.jpeg](https://img1.www.pingcap.com/prod/_a800efa48b.jpeg)\n\n## 合作伙伴\n\n![合作伙伴.png](https://img1.www.pingcap.com/prod/_c6b365d0d3.png)\n\n了解 [TiDB Hackathon 2022](https://tidb.net/events/hackathon2022) 更多精彩！\n\n","author":"PingCAP","category":3,"customUrl":"tidb-hackathon-2022-is-coming","fillInMethod":"writeDirectly","id":426,"summary":"一年一度的 TiDB Hackathon 又来啦！TiDB Hackathon 2022 主题为「Possibility at Scale」,9 月 13 日正式开启，线下决赛将在 2022 年 10 月 22 日 23 日举行。","tags":["TiDB Hackathon 2022"],"title":"TiDB Hackathon 2022丨总奖金池超 35 万！邀你唤醒代码世界的更多可能性！"}},{"relatedBlog":{"body":"![banner.jpeg](https://img1.www.pingcap.com/prod/banner_6e96e050b4.jpeg)\n\n一年一度黑客们的狂欢——[TiDB Hackathon 2022](https://tidb.net/events/hackathon2022) 报名已开启，万元奖金等你来拿，还有技术专家、顶级投资人全程坐镇，你的实力将被更多人看到。\n\nTiBD Hackathon 2022 ·「Possibility at Scale」，邀请你一起打破传统技术边界，突破固有思维局限，用 TiDB 释放创新的更多可能性。\n\n悄悄说：今年真的不卷，值得一试！\n\n两大赛道，任选：\n\n- 应用组：推荐噢，因为特别奖项更多！\n\n以体现 TiDB 产品价值为主，使用 TiDB 构建代码开源的产品、工具、应用等均可。部署方式上，更推荐基于 Cloud 构建 TiDB 相关应用。常见应用领域：游戏、电商、金融科技、公益等。\n\n- TiDB 产品组：延续传统，保持初心\n\n为 TiDB 内核产品以及 TiCDC、TiDB Lightning、TiUP 等周边工具的性能、稳定性、易用性或功能等各方面做出提升。\n\n扫描下方二维码立即报名参与！\n\n![报名.jpeg](https://img1.www.pingcap.com/prod/_3b43724e2f.jpeg)\n\n听说你想参加 TiDB Hackathon，却没有 idea？\n\n别担心，脑洞达人东旭和他的架构师朋友们在创意脑暴会上分享的项目 idea 都整理好啦，快来看看有没有你感兴趣的~（ps：搭配视频查看 idea 详细介绍，效果更佳哦~） \n\n**创意贡献嘉宾**\n\n黄东旭 PingCAP 联合创始人兼 CTO\n\n姚维 PingCAP 全球社区生态负责人\n\n张兴晔 多点系统架构师\n\nCheng Chen PingCAP Product Manager\n\n[脑暴会视频](https://www.bilibili.com/video/BV1yG411u7N9/)\n\n## 应用组\n\n![应用组.jpeg](https://img1.www.pingcap.com/prod/_e769b14808.jpeg)\n\n今年应用组的决赛参赛项目仅要求是 demo 级别的，例如以下项目示例：\n\n- OSS Insight：https://ossinsight.io/\n\n这是一个基于 TiDB 实现的，数十亿 GitHub events 数据构建的洞察工具。只要你会写 SQL，就可以基于 Docusaurus、Apache ECharts 构建一个强大、酷炫的数据洞察工具。\n\n- TiDB & Snowflake Demo：https://tidb-snowflake-e-commerce-demo.vercel.app/\n\n这是一个基于 TiDB 和 Snowflake 构建的电子商务系统，该系统使用了 TiDB 强大的实时 HTAP 能力和 Snowflake 的离线分析能力，来处理系统中大量的数据。\n\n- Ti-Click：http://ide.ti-click.com/\n\n这是 TiDB Hackathon 2021 的 20 强项目之一，项目通过在线 IDE 的方式，快速搭建基于 TiDB 的 Example App 的开发和在线编译的实验室，可帮助开发者快速学习 TiDB。\n\n- Bookshop\n\n这是一个基于 TiDB 搭建的在线书店应用，你可以通过它来学习如何导入表结构和数据，以及如何基于这些数据来编写 SQL。\n\n[这篇文章](https://docs.pingcap.com/zh/tidb/stable/dev-guide-bookshop-schema-design)也以 Bookshop 应用的数据表结构和数据为基础来编写示例 SQL，为你介绍如何导入该应用的表结构和数据，以及其数据表结构的定义。\n\n- Gitpod\n\n对于 TiDB 初学者，我们基于 Gitpod，提供了一个云原生开发环境的使用帮助，你可以直接从你的浏览器或桌面 IDE 启动一个远程的 TiDB 开发环境，快速体验 TiDB 的能力。我们编写了全新的 TiDB 开发者文档，这份文档可以帮助应用开发者，在最短时间内上手 TiDB。\n\nTiDB 开发者文档：https://docs.pingcap.com/zh/tidb/stable/dev-guide-overview\n\n## TiDB 产品组\n\n![TiDB 产品组.jpeg](https://img1.www.pingcap.com/prod/Ti_DB_77ad779a1c.jpeg)\n\n## 彩蛋组\n\n彩蛋组不可更改 TiDB/TiKV 源码，仅可使用插件方式进行 Hack。\n\n![彩蛋组.jpeg](https://img1.www.pingcap.com/prod/_f6b386df89.jpeg)\n\n希望可以给你一些方向与灵感！更多项目 idea 也可以来 [Hackathon 2022 创意库](https://asktug.com/t/topic/933124)找灵感。\n\n看到这么多 idea，你是否跃跃欲试了呢？\n\n热爱编程，勇于探索，就能参赛\n\n你离万元大奖只有一个报名的距离~\n\n了解 [TiDB Hackathon 2022 ](https://tidb.net/events/hackathon2022)更多详情！","author":"PingCAP","category":3,"customUrl":"hackathon-idea-list-for-reference","fillInMethod":"writeDirectly","id":427,"summary":"一年一度黑客们的狂欢——TiDB Hackathon 2022 报名已开启，万元奖金等你来拿，还有技术专家、顶级投资人全程坐镇，你的实力将被更多人看到。","tags":["TiDB Hackathon 2022"],"title":"Hackathon idea 清单出炉，总有一款适合你"}},{"relatedBlog":{"body":"[TiDB Hackathon 2022](https://tidb.net/events/hackathon2022) 正在火热报名中，截止目前已经收到 230+ 位参赛者报名，组队近 60 组。想必各位选手已经摩拳擦掌，开始准备自己项目的 RFC 了。\n\n在等待比赛日的这段时间，**TiDB 社区采访了多位 Hackathon 参赛选手，通过访谈为大家分享一下他们对 Hackathon 的理解和感悟，同时探讨开源给他们的个人生活和工作带来了哪些改变**。当然，作为老选手，也会有极其珍贵的参赛经验分享。已经报名参加本届 Hackathon 的选手或是对 Hackathon 感兴趣的小伙们，赶紧看过来！\n\n今天与大家见面的参赛选手是**目前在南京邮电大学读研三的陆涣冰同学**，其实他的专业方向本来是卫星通信，但内心却十分热爱计算机底层技术，业余时间基本 all in 在开源分布式数据库上。\n\n## 本期嘉宾：陆涣冰\n\n> 涣冰同学与 TiDB Hackathon 的缘分源自研一那年：当时看到比赛的信息后就非常想参加，但苦于自己技术水平不够，同时也没找到人组队，差点错过。幸好当时社区的运营同学给了很多鼓励，并说明个人参赛也是规则允许的，这才被引入了 Hackathon 这条路。之后涣冰就一发不可收拾，研一、研二、研三接连三届都参加了 TiDB Hackathon。\n\n以下为采访记录：\n\n**Q 为什么选择单刷的方式参加 TiDB Hackathon**？  \n\n**陆涣冰**：其实单刷主要是因为自己想做的一些东西，对于很多人而言比较抽象，比较困难。举例来说，我去年做的题目就是用 eBPF 去加速 TiDB 的底层存储路径。这个项目可能需要比较多的底层知识的铺垫，当时问了一圈发现没人对此感兴趣，最终还是自己一个人参赛。其实拿不拿奖无所谓，玩得开心就好。**参加 TiDB Hackathon 帮我整个研究生的三年开了一个头，之后我又参加了各种开源的比赛**，比如阿里的天池数据库大赛、open Euler 高校开发者大赛等等。  \n\n我能开启这条路要感谢两个人。第一个人就是当时的社区运营 yanqing，她对我有某种程度上的知遇之恩，如果没有她我后面的这些经历应该都不存在。第二个人是当时在 P 社实习时的 mentor 施闻轩，他对于我在技术上理解的影响是比较深远。\n\n**Q 最早是在什么时候对编程感兴趣的**？  \n\n**陆涣冰**：我本科的专业是网络工程，研究生的专业是信息网络，乍一听起来好像都是计算机学科的分支。那时候其实走了一段弯路，当时整个人掉进了安全的圈里，觉得黑客好酷，什么病毒、逆向都觉得非常酷。**但是在深入学习了安全一段时间，就感觉做安全好玩归好玩，但是真的要把这个当做职业，心里感觉还是缺了一点什么**。在 2019 年 2 月 1 日，那天是我的生日，所以我印象特别清晰，在跟朋友聊天时，我问自己以后确定要做安全了吗？还是想更深入地写代码？因为当时身边很多做安全的朋友只是敲敲命令行跑跑脚本，感觉中国的安全确实青黄不接，厉害的确实非常厉害，但菜的实在是太菜了。那时候我这方面的技能，不谦虚地讲可以说是炉火纯青了，但是写代码的功底还是一塌糊涂。   \n\n和来自美团、百度的一些圈内朋友聊了聊，他们建议可以考虑一下前端业务应用开发或编译器、数据库、操作系统等更底层的开发。当时也是年少无知，就说要不学个数据库吧。于是从那天就一直学到了今天，然后就发现**一入数据库深似海，这里面的东西实在是太庞大了。不仅要有系统知识，还要涉及编译器的知识，分布式的知识**。伴随着这个学习过程，自己编码的水平也逐渐上来了。  \n \n说实话，身边除了自己，再也找不到第二个人做软件开发或者数据库开发。平时在学校的教研室里基本清一色都是前端开发，这三年来，就我一个人坐电脑前自学了三年。在接触到 PingCAP 时，有一种突然找到组织的感觉。\n\n**Q 开源带来的乐趣或收益是什么**？  \n\n**陆涣冰**：学习数据库的时候其实已经对开源有了一定的认知，基本上 99% 的知识全部来自于开源，无论对操作系统还是对计算机体系的理解，基本都是构建于开源软件之上的。第一次接触 Linux，我发现这不就是我想要的操作系统？**大家都能改、都能用，改完还能 push 进项目里，开放给别人用。某种程度上开源可以汇聚全人类的智慧去做一些事情**。当然开源协作也会有很多问题，比如贡献的代码好不好，有没有漏洞，能不能和别人达成一致协商等等。有些项目写一半甚至不写了，开发者跑了，撂挑子了，这都很常见。包括开源项目的商业化，哪些拿过来可以做出自己的东西，哪些可以二次开发拿去卖，哪些行为是违规的，都需要开源参与者去考虑。  \n\n但那时我还只是开源的使用者，到了读研之后，借由数据库才慢慢把手伸得更远一点，开始把自己的代码贡献给别人。\n\n**Q TiDB Hackathon 与其他比赛在体验上有什么区别**？  \n\n**陆涣冰**：那实在是太多了。**第一还是人**，PingCAP 这边的小助手实在是太热情了，工作做得非常好。我参加了三年，基本上会和每一届的小助手成为朋友。第二点是 Hackathon 的所有项目都构建在 TiDB 之上，**TiDB 有非常多的文档，有对于内核、原理的解读，我认为这点在众多参与过的比赛、项目中可以说是最优秀的**。这些工作大大减少了开发者想深入了解 TiDB 所需要的时间。举个例子，我在参加某个比赛的时候，他们就干巴巴地放出赛题以及代码框架，剩下就全部交给你自己了，非常不容易上手，新手非常难做。而 TiDB 的源码与文档可以帮助开发者在比赛中减少非常多的时间。  \n \n也说说不足，我已经参加了三届，感觉其实有很多 idea 都是前面已经做过的，总会被不断掏出来翻新。建议官方可以把过往的项目整理出来，避免后面的重复。去年有人说 Hackathon 是不是已经没有太多 idea 可以提了，其实我认为随着 TiDB 的发展，加了很多新的 feature 后 TiDB 已经变得越来越复杂，大家原本对于 TiDB 3.0、4.0 的理解放在 6.0 上可能就不适用了，需要再花大精力去做一些有比较有意思的东西。但这可能就需要花很长时间读源码，深入了解 6.0 的设计，这对于外面想参加的人来说就非常困难，所以他们才会说能做的变少了。其实不是变少了，是难度变得太高了，花费的时间成本更高了。\n\n**Q 作为老选手，能不能给新选手分享一下 Hackathon 创意的灵感**？  \n\n**陆涣冰**：其实我有一个想法，有一天我们能把编译器、数据库、操作系统打通，把数据库直接放在与操作系统一样的等级上去。我的所有灵感一直都是围绕这个愿望出发的，**不要为了比赛而想点子，而是为了做出自己理想中的那个数据库，让现在的数据库朝着理想中数据库出发，看看还有什么缺的地方，一步一步实现**。  \n \n我今年的思路其实和东旭之前的想法很相似，TiDB 后端现在存储引擎用的是 target 编码，先前计算机如果出了问题，都可以通过添加一层中间件或者中间层来解决。那我就想能不能添加这样一个中间层，把 TiDB 和 TiKV 解耦，让后面的存储引擎能够无缝切换。这是我今年想做的事情，但是不知道能不能做成功，做成什么样子。  \n \nLinux 内核进入 6.2 版本之后， Rust for Linux 基本上就能稳定了，**当 Rust 进入 Linux 内核之后，能与数据库更深层次的互动**。这个就是我讲的把操作系统与数据库放在同一个 level，其实一直在朝这个目标在走。\n\n**Q 今年是你第三次参加 TiDB Hackathon，你觉得这些年有哪些变化**？  \n\n**陆涣冰**：作为一名底层开发者，**TiDB Hackathon 最吸引我的就是比较硬核的技术，比如 TiDB 先进的存储引擎、高效的性能，它能勾起我们的好奇心，去发掘一下这个数据库到底牛在哪**。  \n\n如果是对于前端开发者而言，TiDB Hackathon 对他们的吸引力就是**借由 TiDB 能去开发一些有意思的应用**，比如说无缝切换，比如更 native 的云原生基础组件，甚至替换 Kubernetes 里的某些功能等等。  \n \n我看到今年的赛制发生了一些变化，比如去年大多数比赛环节都安排在 48 小时里，初赛、决赛答辩，时间安排得满满当当。但今年主办方把初赛提前了，这能让选手们准备得更充分。参加 TiDB Hackathon 的大部分选手都是有工作经验的，或者是有 TiDB 使用经验的。他们对于这个数据库有着非常深的理解，可以借由 Hackathon 的机会把一些 actions 提前给做了。**但是对于外面的学生或者不是太熟悉 TiDB 架构的人而言，比赛周期的延长就非常有意义了**，他们能够有更充足的时间去阅读源码或者阅读文章，加深理解，能把 demo 做得更好一些。我第一届参赛时连 demo 都没有，根本来不及做。   \n\n另外，其实这些年我发现身边做底层开发的小伙伴虽然越来越多，但仍旧是杯水车薪。更多的人还是应用开发者，他们关心如何用数据库，而不是开发数据库，所以应用开发这个赛道的增加就很有意义了。应用开发者可以尽可能发挥，用这个数据库做出一些非常有意思的应用，展现出 TiDB 的更多可能性。\n\n**Q 参赛经验分享**  \n\n**陆涣冰**：想 idea 的时候千万不能闭门造车，要集思广益，收集一下已有的 RFC 或者 AskTUG 论坛里的一些问题，看一看 TiDB 的痛点在哪儿；再从评委的角度去想一想，是不是能第一时间 get 到你的想法。  \n\n我其实还没正式开始写 RFC，我的习惯是先把想法写在纸上，确定好了再腾到电脑上。**写 RFC 首当其冲是要表明你的目的，做这个东西是为了解决什么问题；其次描述一下项目的背景，让评委能明白这个项目的定位是在 TiDB 的哪一个技术分支里面；除此之外，要把图画好，这样才能讲好你的故事**。我第一次 demo 都没做出来，所以答辩的结果也就不尽如人意。第二次答辩确确实实把这个东西做出来了，做得是不是完美其实没有关系，大部分选手时间都一样紧张，关键在于能把你想做的事情、要做的事情、已经做过的事情讲明白就 OK 了。至于什么花里胡哨的画图、图表、效果，都是锦上添花的东西。\n\n关于如何设计 RFC ，可以参考这里：https://asktug.com/t/topic/903770\n\n我从本科到现在，参加了百余场比赛，而且每一场都是单刷。其实参加这些比赛的初衷是想把技术学好，想能为别人再做点什么事情，能做出来一些更实用的东西当然最好，不会太过于关注奖品、名次这些事情，更多还是关注于自己的项目和想法有没有实现。即便没有得到评委的认可，也是自己花时间和精力做出来的，这些写过的代码，对于自己的提升是 100% 是有帮助的。\n\n💡 看过涣冰的经历，你心动了吗？了解 [TiDB Hackathon 2022](https://tidb.net/events/hackathon2022) 更多详情，立即报名参加吧！","author":"PingCAP","category":3,"customUrl":"participated-in-hackathon-3-times-alone","fillInMethod":"writeDirectly","id":429,"summary":"在等待比赛日的这段时间，TiDB 社区采访了多维 Hackathon 参赛选手，通过访谈为大家分享一下他们对 Hackathon 的理解和感悟，同时探讨开源给他们的个人生活和工作带来了哪些改变。","tags":["TiDB Hackathon 2022"],"title":"单刷 3 届 Hackathon，朝着理想中的数据库出发丨TiDB Hackathon 选手访谈"}}]}}},
    "staticQueryHashes": ["1327623483","1820662718","3081853212","3430003955","3649515864","4265596160","63159454"]}