Go Time: Golang, Software Engineering - 是时候行动了! 封面

是时候行动了!

It's Go Time!

本集简介

在本期开播首秀中,Erik、Brian和Carlisia将分享近期吸引他们关注的Go语言动态、节目内容预告、听众互动方式等话题,正式拉开节目序幕。 加入讨论 Changelog++会员可支持我们的工作,深入技术核心并去除广告。立即加入! 赞助商: Linode——我们首选的云服务器。每月仅需5美元即可获得高效SSD云服务器,使用优惠码changelog2017还可享4个月免费服务! Fastly——我们的带宽合作伙伴。Fastly提供快速、安全且可扩展的数字体验,助您超越传统CDN,体验强大的边缘云平台。 嘉宾阵容: Erik St. Martin —— GitHub、X Carlisia Thompson —— GitHub、LinkedIn、X Brian Ketelsen —— GitHub、X 节目笔记: Go 1.6.1和1.5.4版本发布,修复了两项安全问题。 Visual Studio Code已成为相当顺手的Go开发工具。虽然它不会取代我使用的vim-go,但其表现令人印象深刻。——Brian Ketelsen 《华盛顿邮报》工程团队发表题为《拥抱Go——一门现代编程语言》的文章 提交你的首个PR Go 1.6中的HTTP/2与http2实现 GopherJS项目 Go语言Mithril绑定库 Vecty框架 Go GetDoc工具 vim模式插件 atom-vim-mode-plus插件 通过GitHub联系我们 新手专属通道 Rancher平台 Vim编辑器 发现遗漏或错误?欢迎提交PR!

双语字幕

仅展示文本字幕,不包含中文音频;想边听边看,请使用 Bayt 播客 App。

Speaker 0

是时候开始Go了。

It's Go time.

Speaker 0

这是一档每周播出的节目,我们将邀请特别嘉宾,围绕Go编程语言、社区及其相关话题展开有趣讨论。

This is a weekly podcast featuring special guests where we'll discuss interesting topics around the Go programming language, the community, and everything in between.

Speaker 0

无论你现在正在使用Go语言还是有意向学习,这档节目都适合你。

If you currently write Go or aspire to, this is the show for you.

Speaker 0

今天我们准备了一场精彩的节目。

We've got a great show lined up today.

Speaker 0

这是我们的首期节目,我们会先简单介绍一下,聊聊节目的主旨,然后讨论一些我们想分享的新闻动态。

This is our first episode, so we're gonna do some brief introductions and talk a little bit about what the show is about, and then we've got some news items that we'd like to talk about.

Speaker 0

话不多说,我是Eric St。

With that said, I'm Eric St.

Speaker 0

Maarten。

Maarten.

Speaker 0

我从2011年左右就开始用Go语言编程了,大概就是那时候。

I've been programming in Go since about 2011, I think it was.

Speaker 0

我是GopherCon的联合组织者,和布莱恩·凯特尔森一起,他现在也在这里。

I'm co organizer of GopherCon, along with Brian Kettleson, who is also here with us.

Speaker 0

布莱恩,打个招呼吧。

Brian, say hello.

Speaker 1

你好。

Hello.

Speaker 0

你要不要简单介绍一下自己?

You want tell everybody a little bit about yourself?

Speaker 1

当然。

Sure.

Speaker 1

我是布莱恩·凯特尔森。

I'm Brian Kettleson.

Speaker 1

我从2010年开始接触Go语言,正如埃里克提到的,我们共同创立了Gopher Academy并创办了GopherCon,因为我们想要一个能参加的会议,而当时没人做这件事。

I've been doing Go since 2010, And like Eric mentioned, co founded Gopher Academy and started GopherCon because we wanted a conference to go to, and nobody else was doing it.

Speaker 1

真是的。

Darn it.

Speaker 0

我们需要更多会议。

We need more conferences.

Speaker 0

确实需要更多会议。

Definitely need more conferences.

Speaker 1

确实如此。

We do.

Speaker 1

很高兴看到全球范围内Go语言会议的爆发式增长。

I'm really glad to see the explosion of Go conferences around the world.

Speaker 0

另外,Carlesia Campos也和我们在一起。

And, we also have Carlesia Campos here with us.

Speaker 0

Carlesia,你好吗?

Carlesia, how are you?

Speaker 2

你好,Eric。

Hi, Eric.

Speaker 2

你好,Brian。

Hi, Brian.

Speaker 2

也向听众们问好。

And hi to the listeners.

Speaker 2

我在一家网络科技初创公司担任后端开发。

I work as a back end developer for a net tech startup.

Speaker 2

我常驻在圣地亚哥。

I'm based in San Diego.

Speaker 2

我初次接触Go是在去年参加GopherCon大会时,然后就爱上了它。

My first contact with Go was when I went to GopherCon last year, and I fell in love.

Speaker 2

那感觉太棒了。

It was great.

Speaker 2

在我看来它融合了我喜欢的多种语言特性,从那以后我就一直在研究它。

It seemed to me like it brought together features of different languages that I liked, and I've been playing with it since.

Speaker 2

我还是GoBridge的联合创始成员之一。

I'm also a co founding member of GoBridge.

Speaker 2

和你们创办大会的初衷类似,我希望能有学习Go的资料,同时帮助任何想学习Go的人。

And kind of like the same reason you guys won the conferences, I wanted to have material to learn Go and also help whoever wanted to learn Go.

Speaker 2

所以我很高兴GoBridge能实现这一目标。

So I'm glad that GoBridge exists to do that.

Speaker 0

不。

No.

Speaker 0

这太棒了。

That's excellent.

Speaker 0

我想,这档节目里我们所有人都有个共同的爱好,就是倡导社区精神,鼓励人们接触这门我们热爱的语言和技术。

I think, I think that's kind of a shared love of all of us here on the show is just kind of advocating community and advocating people get into this language and technology we love.

Speaker 0

希望凭借我们不同的背景和经历,能为听众带来一些见解,并介绍他们可能尚未熟悉的内容。

And hopefully, with our different backgrounds and experiences, we can bring some insights to the listeners and also introduce them into things that they might might not already be familiar with.

Speaker 0

说到这里,有个固定环节我们会讨论一些新闻动态、活动资讯,以及我们通过邮件、社交媒体等渠道发现的任何有趣文章。

With that being said, one of the segments that will be a common thread is we'll talk about some news and events and any interesting articles that have come across our emails and social media and everywhere we find the things.

Speaker 0

除了特邀嘉宾外,接下来几期节目我们还安排了许多非常有趣的嘉宾。

Along with having some special guests, we've actually got quite a few really interesting guests lined up for the next couple of episodes.

Speaker 0

所以请务必持续关注。

So definitely stay tuned for those.

Speaker 0

如果还没订阅的话,请务必订阅。

If you haven't already, please subscribe.

Speaker 0

最简单的方式是访问gotime.fm,你也可以在那里订阅每周通讯。

The easiest way to do that is to go to gotime.fm, and you can also subscribe to the weekly newsletter there.

Speaker 0

我们也希望大家能在Twitter上通过@gottime.fm联系我们,提出任何你想听我们解答的问题,无论是针对即将到来的嘉宾还是一般性问题?

We also would like to advocate for everybody to hit us up on Twitter at gotime.fm with any questions you'd like to hear us answer, questions for guests we have coming up, questions in general?

Speaker 1

反馈、评论、赞美、表扬。

Feedback, comments, praise, kudos.

Speaker 2

有想推荐的访谈嘉宾吗?

Suggestions for guests to be interviewed?

Speaker 0

对。

Yeah.

Speaker 0

当然。

Definitely.

Speaker 0

我们很乐意听取大家的意见,看看应该邀请谁上节目。

We'd love to hear from everybody, people we should invite on the show.

Speaker 0

社区里有太多优秀人才,我觉得我们完全可以邀请他们上节目。

There's so many great people in the community that I think that we could get on here.

Speaker 0

既然说到这个,让我们开始讨论一些新闻吧。

I guess with that being said, let's open this up to some news.

Speaker 0

这周有人通过邮件或社交媒体看到什么有趣的事情吗?

Does anybody have anything interesting that's come across through email and social media this week?

Speaker 1

我有。

I do.

Speaker 1

我认为最重要的新闻是Go 1.6.1和1.5.4版本发布了。

I think the the biggest new thing that came out was, Go 1.6.1 and 1.5.4 were released.

Speaker 1

虽然只是Windows和CryptoLibs的小型安全问题,但大家都应该更新。

Small security issues, on Windows and CryptoLibs, but everybody should update.

Speaker 1

现在真的没有理由继续使用Go 1.4了,所以请立即升级到1.5.4或1.6.1版本。

There's really no reason to be using Go 1.4 anymore, so Go update to 1.5.4 or 1.6.1 now.

Speaker 1

这可是个大新闻。

That's a big one.

Speaker 0

那么这些版本更新实际上修复了几个CVE安全漏洞,对吧?

And now those releases were actually a couple of CVE security vulnerabilities, right?

Speaker 0

我记得其中一个与DLL注入有关,另一个我记不清了。

Know that one was related to DLL injection, and I forget what the other one was.

Speaker 1

如果我没记错的话,Windows那个漏洞会允许程序动态加载与Go可执行文件同目录下的任意DLL。

If I remember right, the Windows one, would allow a program to load any DLL dynamically that happened to be in the same library as the executable Go file.

Speaker 1

所以这个问题已经修复了。

So that was fixed.

Speaker 1

另一个漏洞则与加密库有关,它们没有对传入大整数库的数字进行边界检查。

And then the other one had something to do with, the crypto libraries not checking bounds on numbers that they sent into the big integer library.

Speaker 1

我记得这主要影响了HTTPS客户端证书和GoSSH客户端。

I think it specifically affected HTTPS client certificates and GoSSH clients.

Speaker 0

没错。

That's right.

Speaker 0

我隐约记得这件事。

I think I vaguely remember that.

Speaker 0

这涉及到能够利用该漏洞对二进制文件发起拒绝服务攻击。

It was something pertaining to being able to, create, denial of service attacks on binaries that leveraged that.

Speaker 1

没错。

Right.

Speaker 1

接下来我要说的大新闻是,如今Go语言编辑器的爆发式增长。

So the next big news item I have is, the explosion in Go editors these days.

Speaker 1

如果你关注我的推特,就知道我对Vim和VimGo的永恒热爱。

If you follow me on Twitter, you know my undying love for Vim and VimGo.

Speaker 1

不过说真的,现在有很多优秀的编辑器都提供了良好的Go语言支持。

But, really, there's a lot of great editors out there right now that have good Go support.

Speaker 1

这周我在三大主流平台上都试用了Visual Studio Code。

I played with Visual Studio Code on all three major platforms this week.

Speaker 1

我在Mac、Linux和Windows上都进行了体验。

I played on Mac, I played on Linux, and I played on Windows.

Speaker 1

不得不说,它与环境的集成效果真的让我印象深刻。

And I have to say I'm I'm really impressed the integration with the environment.

Speaker 1

调试功能在所有平台都能用。

The debugging worked everywhere.

Speaker 1

所有工具都运行良好。

All of the tools work well.

Speaker 1

如果你喜欢界面更正式的文本编辑器,Visual Studio Code非常棒。

If you're somebody that likes a more formal looking text editor, Visual Studio Code is awesome.

Speaker 1

Atom编辑器这周有个大更新。

The Atom editor got a big update this week.

Speaker 1

我想现在应该是1.6版本了。

I think it's at 1.6 now.

Speaker 2

是1.7版本。

It's 1.7.

Speaker 1

1.7。

1.7.

Speaker 1

好的。

Okay.

Speaker 1

我这周收到了一个重大更新。

So I got a big update this week.

Speaker 1

而且Go工具看起来也非常棒。

And the Go tools there look fantastic too.

Speaker 1

所以如果你喜欢纯文本编辑器,现在确实有很多优秀的代码编辑选择。

So there's really a lot of great options for editing code if you like just text editors.

Speaker 1

还有IntelliJ平台上针对Go语言的大型插件也非常出色。

And then the IntelliJ big plug in for for Go and on the Idea platform is awesome.

Speaker 1

它看起来真的很不错。

It looks really good.

Speaker 1

所以如果你不介意使用大型IDE,那么带Go插件的IntelliJ也很棒。

So if you don't mind having that big IDE, then IntelliJ with the, Go plug in is amazing too.

Speaker 0

那么Carlicia,你是Atom用户对吧?

And, Carlicia, you're an atom user, aren't you?

Speaker 2

是的。

I am.

Speaker 2

铁杆粉丝。

Diehard fan.

Speaker 0

我一直想爱上这些新工具,但可能是我太固守自己的习惯了。

So I I keep wanting to love these things, but I think I guess I'm too stuck in my ways.

Speaker 0

那你对新版本感觉如何?

So how how have you been liking the new update?

Speaker 2

其实从1.6版本开始,我今天才注意到1.6引入的一些功能,这个话题可以聊很久。

Well, I since one one point six had I actually just today, I noticed some features that 1.6 introduced, and I can't go and talk about this stuff forever.

Speaker 2

不过我希望我们能专门做一期节目来讨论编辑器和各种Go工具。

But just I hope we will have an episode just to talk about editors and the tool different go tools in each editor.

Speaker 2

到时候我再详细说说。

And so I'll talk more about it then.

Speaker 2

我想说的是,我对Visual Studio产生了浓厚兴趣,因为我看到Go社区里很多我敬佩的人都在用VS配合Go包,他们非常喜欢。

I wanted to say though that for Visual Studio, I got very interested in checking it out because I see people who are very that I admire in the Go community using Visual Studio with Go packages, and they are loving it.

Speaker 2

我尝试过两次,但实在搞不明白怎么用。

And I tried it twice, and I couldn't get my head wrapped around it.

Speaker 2

我对编辑器简直痴迷到极点,所以我很愿意去探索新功能。

And I totally geek out on editors, so I was willing to go out there and look for stuff.

Speaker 2

所以我希望有人能做个视频教程,向我们展示所有功能。

So I'm hoping somebody is going to do, like, a video walkthrough showing us all the features.

Speaker 2

如果有人已经做过了,请告诉我们,因为听起来很棒,但我还没找到。

If somebody has already done that, please let us know because sounds awesome, but I didn't get it.

Speaker 0

我不断看到这些新编辑器和IDE推出,每次我都想尝试使用。

I keep seeing these editors come out and IDEs, and I'm like, I wanna use it.

Speaker 0

但每次试用后,我都只想换回原来的工具。

And every time I try, I'm just like, I want them back.

Speaker 0

我只想用回原来的工具。

I want my them back.

Speaker 0

说到这个,新闻方面,他们刚刚发布了Vim 8,我对此非常期待,相信Brian也是。

And speaking of which, I mean, news wise, they just announced Vim eight, which I'm pretty excited about, and I'm sure Brian is too.

Speaker 1

是啊。

Yeah.

Speaker 1

这可是大事。

That's big.

Speaker 0

尤其是异步功能方面。

So and especially with the async functionality.

Speaker 0

对吧?

Right?

Speaker 0

我的意思是,这曾是人们构建类似IDE功能时最大的痛点之一——在后台执行构建、测试等操作时,不得不使用各种临时变通方案来实现Vim中的异步任务。所以我认为这将会彻底改变插件开发的格局。

I mean, that's been one of the biggest pain points with people creating IDE like functionality, doing builds and tests and things like that in the background, is that there were all these little hacky workarounds for doing asynchronous tasks inside of Vim, so I think that that's really gonna change the game for, the ability for plugins to be built.

Speaker 1

是啊,我很好奇现在Vim八发布了异步支持功能后,NeoVim生态会如何发展。

Yeah, I'm curious to see, where the NeoVim world ends up now that Vim eight is announced with the asynchronous support.

Speaker 1

如果Vim八的异步支持与NeoVim的实现不同,我认为这对社区将产生不利影响。

It will be I think detrimental to the community if the async support in Vim eight is different than the ones in NeoVim.

Speaker 1

希望它们最终能基本兼容,不要让所有插件都得为不同环境维护不同分支。

I hope that they end up being roughly compatible and it doesn't make all of these plugins have to have different forks for different environments.

Speaker 1

我已经把NeoVim作为主力编辑器用了两年了。

I've been using NeoVim for two years now as my primary editor.

Speaker 1

再加上Vim Go,一旦你拥有了异步功能,我的意思是,这简直是无敌的。

And along with Vim Go, once you add the asynchronous capabilities, I mean, you just you can't go wrong.

Speaker 1

能够异步运行Go测试并在状态栏弹出结果显示通过或失败,这种感觉真的太棒了。

It's it's really awesome to be able to just run your Go tests asynchronously and get a pop up in your in your status bar that tells you whether they pass or fail.

Speaker 1

Go编译也是同理。

Same with your Go builds.

Speaker 1

要知道,Vim Go中的异步功能确实非常、非常出色。

Know, that that async capability is is really, really nice in Vim Go.

Speaker 0

你知道,这挺有意思的。

You know, that's funny.

Speaker 0

我看那个Vim公告时甚至没想过:这对NeoVim意味着什么?

I hadn't even considered that when I was looking at that Vim announcement that what does this do for NeoVim?

Speaker 0

我知道NeoVim除了异步功能外还有其他目标,但它诞生的初衷就是担心Vim会基本保持现状。

I know NeoVim has, you know, some additional goals on top of just the async functionality, but the whole reason it was created was kind of this whole fear that, you know, Vim was gonna kind of stay mostly the same.

Speaker 0

所以我在想他们会合并开发力量,还是像你说的那样继续维护不同的分支

So I wonder whether they'll merge efforts or whether they'll continue to, like you said, maintain different forks or

Speaker 1

是啊,这将会很有意思。

Yeah, it'll be interesting to see.

Speaker 0

不过话虽这么说,我们有点跑题了,从Go聊到VIM去了。

But with that being said, we're we're kinda going VIM instead of, Go here.

Speaker 2

对。

Yeah.

Speaker 2

但说到工具,我想提一下这周出现的一篇文章。

But talking about tools, I wanted to mention this article that came up this week.

Speaker 2

是《华盛顿邮报》的某个人写的,讲的是关于Go语言真正出色的特性。

It was somebody from the Washington Post talking about really neat things about Go.

Speaker 2

其中当然包括工具链。

And one of the things, of course, is the tooling.

Speaker 2

我超级喜欢这篇文章。

And I absolutely love this article.

Speaker 2

它让我感到内心温暖又舒适,因为并非所有事情都是完美的。

It made me feel just fuzzy and warm inside because not everything's perfect.

Speaker 2

万物皆有缺陷,诸如此类。

Everything has flaws, etcetera.

Speaker 2

但我读那篇文章时一直在点头,对对对。

But I was reading the article and I was going, yep, yep, yep.

Speaker 2

你知道,我们提到了所有让Go语言如此出色的原因。

You know, we mentioned the all of the what makes Go super awesome.

Speaker 2

当我第一次接触Go时,我想,天哪,我得打这么多字。

And when I had my first contact with Go, I thought, oh my gosh, I have to type so much.

Speaker 2

如果我想打这么多字,我当初就该继续用Java。

If I wanted to type so much, I would have stayed doing Java.

Speaker 2

这是什么鬼?

And what is this?

Speaker 2

但还是让我试试看吧。

But let me check it out.

Speaker 2

既然大家都说它很棒,那我就坚持用下去。

Everybody's saying it's great, so let me just stick with it.

Speaker 2

这种情况持续了很久,直到我发现了那些工具。

And that continued for a long time until I found out about the tools.

Speaker 2

比如Go的导入功能——至少在Atom编辑器里,我现在已经离不开它了。

And Go imports, for example, at least in Atom, I cannot live without it.

Speaker 2

我曾经在很长一段时间里都不知道这个功能的存在。

Once I've I went forever without knowing about it.

Speaker 2

所有那些你最初觉得可能是烦恼的小问题,只要使用这些工具就会消失,这正是我们在这里讨论的内容。

And all of these neat little, annoyances that you initially think might be annoyances, They just go away with using these tools, which is what we are talking about here.

Speaker 2

所以如果你想了解Go语言的优势,这篇文章绝对值得一读。

So the article is really well worth a read if you want to get familiar with what Go has to offer.

Speaker 2

文章标题叫《拥抱Go:一门现代编程语言》。

It's called Embrace Go, a modern programming language.

Speaker 2

不知道你们对此是否已经有什么看法?

And I don't know if you guys already have something to say about it.

Speaker 0

这是《华盛顿邮报》的那篇文章吗?

And this is the Washington Post article?

Speaker 2

是的,是的。

Yeah, yeah.

Speaker 2

华盛顿邮报正在使用Go语言。

And they are using Go at the Washington Post.

Speaker 2

此外,他们还在进行这个CORO项目,看起来是为出版业社区打造的一个平台。

And also, they are doing this CORO project, which is, it seems to be a platform for communities for the publishing industry.

Speaker 2

我对这个项目不太熟悉,但我知道比尔·肯尼迪曾协助他们推进这个项目。

I'm not very familiar with it, but I know, for example, Bill Kennedy has helped them with that project.

Speaker 2

他一直说这个项目很棒。

And he keeps saying it's great.

Speaker 2

非常棒。

It's great.

Speaker 2

我对这个项目了解不多。

I don't I'm not very familiar with it.

Speaker 2

我很希望能邀请华盛顿邮报的人来聊聊,谈谈那个项目以及他们如何在邮报中应用Go语言。

I would love to have somebody from The Washington Post come and talk about it, about both that project and how they're using Go at The Washington Post.

Speaker 1

我读了那篇文章,最让我不满的是他在博客帖子的标签里加了GopherCon,但全文根本没提GopherCon。

So I read the article, and my big complaint is he tagged it with GopherCon in the tags on the blog post, but doesn't mention GopherCon anywhere.

Speaker 1

这算怎么回事?用了GopherCon标签却没有任何相关内容?

Is going on with the GopherCon tag and no GopherCon content?

Speaker 2

他有添加相关链接。

He links to it.

Speaker 1

在哪儿?

Where?

Speaker 2

他链接了GopherCon官网,还链了Gopher Academy的一篇博客。

He links to GopherCon, and he links to a blog on the Gopher Academy.

Speaker 1

哦,有意思。

Oh, interesting.

Speaker 2

当提到'势头'这个词时,它链接到了GopherCon。

When it when, the word momentum, it's linked to GopherCon.

Speaker 1

哦,不错。

Oh, nice.

Speaker 2

而且他还链接了一篇关于SEO的博客。

And there is a he links to blog that SEO.

Speaker 0

哇。

Wow.

Speaker 0

卡莱尔简直像是记住了每个词链接到哪里。

Carlisle has got, like, memorization of what word is linked.

Speaker 2

那是因为他高亮了'momentum'这个词,我当时想看看他指向什么,所以注意到了。

That's It's because I he's he highlighted momentum, I said, Eona wanted to see what he was pointing to, so I noticed.

Speaker 0

其实我还没机会读那篇文章,所以对我来说读起来应该会很有趣。

And I actually haven't had a chance to read the article yet, so I think it'll be interesting for me to read.

Speaker 0

不过说到发展势头,当我们回顾这门语言这些年的成长历程时,真的令人震惊。

But, I mean, speaking of momentum, I mean, like, when we look at the language and how it's grown over the years, it's just staggering.

Speaker 0

它爆发式增长的速度,以及纷纷加入并开始发布Go应用案例的公司数量,简直让人难以置信。

Just blows my mind just how fast it blew up and the number of companies that, have kind of jumped on board and have started releasing information about stuff that they're building with Go.

Speaker 0

感觉几乎每天都有新的财富100强公司表示:没错,我们也在用Go。

It seems like every day there's there's a new, you know, Fortune 100 company being like, yep, we're using it too.

Speaker 1

是啊。

Yeah.

Speaker 1

不过我觉得这是把双刃剑,当你在Hacker News或Reddit上看到那些'因为改用Go语言世界就天翻地覆'的夸张言论时。

I I think it's it's a double edged sword though because when you read Hacker News or, you know, Reddit, you expect to see these gigantic, the world changed because we moved to Go.

Speaker 1

实际上更多是一种温和的兴奋。

And and it's really more of a soft excitement.

Speaker 1

你知道,人们正在逐步将所有东西迁移到Go,这感觉不像革命。

You know, people are gradually updating all of their things to Go, and it doesn't feel revolutionary.

Speaker 1

更像是进化。

It feels evolutionary.

Speaker 1

我觉得有很多...不知道用'积压的失望'这个词是否准确。

And I I think there's a lot of, I don't know if pent up disappointment is the right word for it.

Speaker 1

但人们期待某种惊天动地的变革,但实际上并不存在。

But I think people are expecting some gigantic big bang, and there just isn't one.

Speaker 1

这只是一股自下而上、遍地开花的Go语言采用浪潮。

It's just this groundswell of of grassroots Go adoption everywhere.

Speaker 1

而且它在TOB指数上的表现并不理想。

And it it doesn't read well in, like, the TOB index.

Speaker 1

这确实有点奇怪。

It just it's it's strange.

Speaker 1

Go语言的采用情况其实非常顺利。

Go adoption is is going really well.

Speaker 1

只是从外部看不出来。

It just doesn't look like it externally.

Speaker 0

是啊。

Yeah.

Speaker 0

我想确实是这样。

And I guess that's true.

Speaker 0

对吧?

Right?

Speaker 0

很多人都在内部项目中使用它,只是可能没有大肆宣扬。

A lot of people are using it for internal projects and just probably not as vocal about it.

Speaker 0

你知道吗?

You know?

Speaker 0

我是说,一个草根层面的例子就是上周发布的鲍尔新闻,对吧?

And I mean, one example of of kind of little grassroots type things is the Bauer news that came out, was it last week?

Speaker 0

一周前

A week

Speaker 1

之前?

before?

Speaker 1

对,上周。

Yeah, last week.

Speaker 0

是的。

Yeah.

Speaker 0

他们重写了部分API,我记得是为了获取包的功能,对吧?

And they rewrote part of their, API for, I think it was fetching the packages, wasn't it?

Speaker 1

对,提供鲍尔资产服务。

Yeah, serving up Bauer assets.

Speaker 0

是的,我是说,这太棒了。

Yeah, so I mean, that's awesome.

Speaker 0

我是说,他们能发布这些信息也很棒,对吧?

I mean, and it's great that they release that information too, right?

Speaker 0

你会好奇JavaScript社区怎么看这件事,他们并没有真正自用这些改动,对吧?

And you wonder how the JavaScript community sees that, that they didn't kind of dog food, right?

Speaker 1

嗯,希望他们都和我们一样务实且反对教条主义。

Well, hope they're all as pragmatic and anti dogma as we are.

Speaker 1

要知道,应该为工作选择合适的工具,而在那个案例中他们向自己证明了Go就是那个工作的合适工具。

You know, you use the right tool for the job, and in that case they proved to themselves that Go was the right tool for that job.

Speaker 1

要知道,有些地方我目前还不想用Go。

You know, there are there are places where I wouldn't want to yet use Go.

Speaker 1

我能想到一些Go难以应用的领域,比如移动开发。

I can think of a few places that Go is difficult to use, like mobile development.

Speaker 1

但你必须使用合适的工具。

But you gotta use the right tool.

Speaker 1

是啊。

Yeah.

Speaker 2

我认为这与我们没有看到大规模转向Go语言的趋势有很大关系,因为人们可能会说,'哦,我想要这个功能'。

And I think that has to a lot to do with how we are not seeing these huge, trends towards moving to Go because people might want might say, Oh, I wanna have this feature.

Speaker 2

我想要那个功能。

I wanna have that feature.

Speaker 2

让我们实现这个功能,这样我就能做X了,没有这个功能我就做不到,或者会非常麻烦。

Let's implement this feature so I can do X, which I cannot do unless I have this feature, or it would just be so annoying.

Speaker 2

但这并不是Go语言的核心思想。

But that's not what Go is all about.

Speaker 2

如果你深入了解一下,Go语言过去的一些版本确实有改进,但语法没有任何变化。

If you dig a little deeper, there were some releases, some of the past releases of Go, they had improvements, but there were no syntax changes.

Speaker 2

就像弗朗西斯说的那样,这本身就是一种特性。

And like Frances came out and said, that's a feature.

Speaker 2

语法没有改变这一事实,本身就是一种特性。

The fact that the syntax didn't change, that is a feature in itself.

Speaker 2

这充分体现了Go语言的设计哲学。

And that says everything about the philosophy of Go.

Speaker 2

它不是万能的。

It's not to be used for everything.

Speaker 2

它只适用于特定场景。

It's to be used for specific things.

Speaker 2

但在这些特定场景下,它确实表现得非常出色。

But those specific things, it does it does them really well.

Speaker 2

所以

So

Speaker 0

不过我觉得我们总是渴望熟悉的东西,对吧?

I think we covet the things we know, though, right?

Speaker 0

你知道,我们本能地会想抓住那些熟悉的事物,特别是在高压环境下只想尽快完成任务时。

You know, so we naturally wanna grasp to the things that we're familiar with, and especially when you're in kind of like a high stakes environment where you're just trying to get stuff done.

Speaker 0

于是你伸手去拿某个用过无数次的工具或技巧,却发现它不在那里,这种感觉很痛苦。

So you reach for some tool or technique that you're, you know, done a million times before and it's not there and it feels painful.

Speaker 0

我是说,我亲眼看着Brian开始用Vim,这对他来说完全是件不自然的事。

I mean, I was around watching Brian adopt Vim, and it just seemed like this completely unnatural thing for him.

Speaker 0

而且,他想要理解,他知道人们用这个很高效也很喜欢,但每次用起来就是觉得别扭。

And, like, he he wanted to understand, like, he knows people are productive with this and they love it, but he just you know, every time it just felt unnatural.

Speaker 0

有时候你得把自己放在那种思维框架里,接受它的本质,然后你才能开始理解人们对它的热爱。

And sometimes you just kinda have to put yourself in the frame of mind of, you know, somebody in that and and just kind of accept it for what it is, and then you kinda start to to see the love that people have for it.

Speaker 1

是啊。

Yeah.

Speaker 1

我相信这有个学习曲线——你总想用习惯的方式做事,最终放弃后才开始尝试理解新工具的使用方式。

I'm sure there's some sort of learning graph for that where, you you try to do the things that you're used to, and eventually you give up and then try to understand how to do it the way of the tool that you're using.

Speaker 1

对我来说,从Ruby转过来是个非常痛苦的过程。

And for me, was a very painful project, a process coming from Ruby.

Speaker 1

我总试图用Go写Ruby风格的代码,然后对效果感到失望。

I kept trying to write Ruby code in Go and being disappointed in how well it worked.

Speaker 1

直到你开始用Go的思维方式思考,真正理解这种思维后,一切才会变得顺畅。

It wasn't until you start to put yourself in the Go mindset and understand what that Go mindset is that things really click nicely.

Speaker 2

是啊。

Yeah.

Speaker 2

我之前说过。

I've said this before.

Speaker 2

Go语言确实需要一定的坚持,可能大多数事情都是如此。

There has to be some stick to it ness with Go and probably with most things.

Speaker 2

但可以肯定的是,只要你坚持一下,你就会明白。

But definitely, if you stick to it a little bit, you will see it.

Speaker 0

你知道,这很有趣。

You know, it's interesting.

Speaker 0

Brian和我与Manning出版社就《Go实战》这本书进行了几次交流。

So Brian and I had a couple conversations with Manning publishers with the Go in Action book.

Speaker 0

有趣的是他们一直在强调这个观点——Go语言的杀手锏是什么?

And it was funny because they kept pressing this idea of, you know, what's the silver bullet?

Speaker 0

你知道,Go语言最吸引人的一句话卖点是什么?

You know, what's that one line selling point for Go?

Speaker 0

要知道,Brian和我反复讨论并与Bill Kennedy交流时达成的共识是——Go语言没有所谓的银弹。

And, you know, the thing Brian and I kept coming back to and, you know, talking with Bill Kennedy too when we're all kinda collaborating on this effort was there's no silver bullet.

Speaker 0

对吧?

Right?

Speaker 0

它既包含现有的所有特性,也包含那些不存在的特性。

There's it's it's all the things that are there, and it's all the things that aren't.

Speaker 0

正是所有这些细微之处共同构成了这门语言的趣味性和独特性,而不是像单子之类的大概念。

It's all the little things collectively that make it such a fun and interesting language, and it's it's not this huge thing like, you know, monads or or or whatever.

Speaker 0

我必须提一下单子。

I had to say monad.

Speaker 0

必须的。

I had to.

Speaker 1

谢谢。

Thank you.

Speaker 1

感谢你提到这个。

Thanks for getting that in there.

Speaker 1

我认为Go语言最突出的一个特点是——我在推特上看到过无数次这样的说法——人们说Go是为程序员优化的,因为阅读代码是开发者最重要的日常工作,而Go代码非常易读。

I think if one thing sticks out for Go, though, and I've seen, it, especially on Twitter a million times, it's people saying that Go is optimized for programmers because reading code is the most important thing that a developer does, and Go is really easy to read.

Speaker 1

我今天早上或昨天还看到一条推文表达了同样的观点。

I saw a tweet, I think this morning or yesterday, the same thing.

Speaker 1

你知道,一旦我的团队能高效阅读Go代码,我们就一致认为Go是我们的最佳选择,因为阅读Go代码真的很简单。

You know, once once my developers were able to read Go efficiently, we all decided that Go was the place for us to be because reading Go code is is simple.

Speaker 1

很容易理解代码在做什么。

It's easy to understand what's happening.

Speaker 1

当然,还有其他语言也很有趣、很酷炫、很吸引人。

And, you know, there are other languages that are interesting and sexy and exciting.

Speaker 1

比如Scala就是个很好的例子。

You know, Scala is a great example.

Speaker 1

但要理解Scala程序的运行逻辑,简直需要博士学位。

But, you know, trying to understand what happens in a Scala program, it takes a PhD.

Speaker 1

我反正搞不定。

I can't do it.

Speaker 1

我这个人没什么意思。

I'm not interesting.

Speaker 1

不。

No.

Speaker 2

说到了解Go并坚持使用它,其实还有另一个工具——或者说倡议——我前段时间刚接触过,最近又再次遇到了。

Talking about getting to know Go and sticking to it, there is another tool, well, I should say initiative that I came across some time ago and recently again.

Speaker 2

它叫做'你的第一个PR'。

It's called Your First PR.

Speaker 2

有个Twitter账号叫Your First PR,还有对应的网站和GitHub仓库。

There is a Twitter handle called Your First PR, and there is a website and a GitHub repo.

Speaker 2

本质上,这是个旨在汇聚从未参与过开源贡献人群的倡议。

So basically, it's an initiative to bring together people who have never contributed to open source.

Speaker 2

我们希望如果你想尝试Go并在寻找项目创意,可以直接参与这个平台,找到可实践的项目来锻炼你的Go技能和开源贡献能力。

And we are hoping that if you want to do Go and are looking for ideas for projects, just hop on this and find out things that you can do and practice your goal and practice your open source contribution.

Speaker 2

这个平台试图搭建桥梁,连接那些寻找开源贡献机会的人与拥有项目并需要他人解决问题的维护者。

And so tries to bridge people who are looking for opportunities to contribute to open source, with maintainers who have projects and have issues for people to solve, for people to implement.

Speaker 2

作为维护者,你需要找到适合开源新手的议题。

Now, the way it works is you, as a maintainer, have to find the issues that will be appropriate for a first time open source contributor.

Speaker 2

你可以通过推特向他们提交议题,或者直接在他们的代码库中添加议题。

And you would tweet at them the issue, or you would go on their repo and add an issue there.

Speaker 2

我想你也可以提交一份筛选过的议题列表,比如标记为'需要帮助'或'新手友好'的议题。

And I would imagine that you can also submit a list of filtered issues that maybe you tag with, for example, Help Wanted or Beginner Friendly.

Speaker 2

网站上有两篇文章,其中一篇我很久前读过并且非常喜欢。

And there are two articles on that website, one that I had read some time ago and I absolutely loved.

Speaker 2

这篇文章叫《仅限首次贡献者》。

It's called First Timers Only.

Speaker 2

我强烈建议维护者们阅读这篇文章。

And I highly suggest people who are maintainers to read that.

Speaker 2

我相信你一定会从中获得很多灵感。

You just I'm sure you're going to get a lot of ideas.

Speaker 2

我希望Go社区能不断壮大,让更多人接触并有机会学习实践,无论最终是否坚持使用,至少你尝试过了。

And I hope the Go community will grow and more people will be exposed to it and have a chance to learn about it, practice, and maybe you'll stick to it or not, but at least you'll give it a shot.

Speaker 2

所以这是个绝佳的机会。

So this is a great opportunity.

Speaker 2

从事开源开发的人可以利用这个获取帮助。

And people who are doing open source development, you can use this to get help.

Speaker 2

所以这是双赢的局面。

So it's a win win all around.

Speaker 2

我们常说编程就是要多写代码,对吧?

And we always say that coding is about coding more, right?

Speaker 2

通过编程你会变得更擅长编程。

You get better coding by coding.

Speaker 2

另外也常说,如果你是开发者,就要与人合作,融入开发者社区,而开源贡献对此非常有益。

And also, always say, if you're a developer, get together with people, get together with developer community, and open source contribution is great for that.

Speaker 2

所以我认为这简直是完美的选择。

So it's just perfect all around, I think.

Speaker 2

你们觉得呢?

What do you guys think?

Speaker 0

是的,我的意思是,我一直倡导每个人都应该为开源做贡献。

Yeah, mean, I've always been an advocate of everybody contributing to open source.

Speaker 0

我认为害怕被拒绝也是阻止很多人参与的原因之一。

And I think that fear of rejection keeps a lot of people from it too.

Speaker 0

不过那些小规模的任务确实是个很好的切入点。

But yeah, those bite sized chunk things I think are a great way.

Speaker 0

而且我认为还需要明白,你看到别人提交的代码通常都不是初稿,对吧?

And I think also accepting that know that the code that you see people deliver is not their first pass, right?

Speaker 0

就像大家总有个印象,觉得喜欢的程序员能一次写出完美代码。但有时候任何解决方案都比没有强。我经常告诉那些在代码评审中受挫的人,被提修改意见不等于被拒绝。

Like everybody has this perception of, you know, their favorite programmer and they just, you know, spew golden code on pass one, and, you know, sometimes they sometimes any solution is better than no solution, and, I've commonly told people that kind of feel bad during code reviews and having pull requests rejected that and not necessarily rejected, but feedback, right?

Speaker 0

比如'如果采用X方案性能会更好'或'用Y方法代码会更整洁'这类反馈要明白——解决问题本身才是最难的环节。

Like, oh, well, it would be more performant if you did x or it would be cleaner if you did y, that to understand that solving the problem is the hardest part.

Speaker 0

要知道,看着别人的解决方案然后想着怎么优化总是比较容易的,对吧?

That, you know, it's easy to look at somebody's solution and to think about how to mold that a little better, right?

Speaker 0

这毕竟是在已有基础上迭代,而不是从零开始解决问题。

It's an iteration of something that already exists versus solving the initial problem.

Speaker 0

我认为如果你走出舒适区,可以从他人和项目中学习很多,通过深入研究源代码。

And I think that if you step out of your comfort zone, you can learn a lot from other people and projects and digging around in source code.

Speaker 1

完全同意。

Absolutely.

Speaker 1

我认为首次为任何开源项目做贡献都是一个巨大的障碍。

I think making your first contribution to any open source project is a gigantic barrier.

Speaker 1

作为程序员,我们本地能做的很多事情在远程或分布式项目中会变得困难得多。

There's so much that we as programmers can do locally that that becomes much more difficult when you're doing it on a remote or distributed project.

Speaker 1

你知道,整个关于git、拉取请求、分支、合并的概念,如果第一次尝试都会让人望而生畏。

You know, that the whole concept of git and pull requests and branches and merging and, all you of that is is, intimidating if it's the first time you've tried it.

Speaker 1

所以保持耐心很重要。

So having patience is important.

Speaker 1

这是我们经常在Slack的Gopher社区里努力做的——用大量耐心(抱歉口误)不带评判地引导人们轻松完成整个流程,帮助他们做出贡献。

You know, that's one of the things that we try to do in Slack a lot with the Gopher Slack is, walk people through the whole process easily without judgment and and with lots of patient to lots of patience, excuse me, to, to help them contribute.

Speaker 1

因为一旦他们首次贡献取得成功,你知道就会有第二次、第三次。

Because once they have a great success on that first contribution, you know there's gonna be a second and a third.

Speaker 1

你正在培养下一代开源软件开发者。

You're preparing the next generation of OSS developers.

Speaker 0

不过我认为关于Go社区最棒的一点就是他们的包容性,这也是个很好的观点。

I think it's a great point though too about one of the things that's, so great about the Go community is how inviting they are.

Speaker 0

记得早期我刚加入时,社区里有很多学术界人士。

You know, I remember in the early days when I joined, it was a lot of academic people.

Speaker 0

要知道,我并没有在大学里学过这些东西。

And, you know, I I didn't go to college for this stuff.

Speaker 0

虽然我已经从业多年且擅长自己的工作,但缺乏某些人那样的学术背景,最初确实会感到胆怯,但每个人都那么平易近人。

I've been doing it a number of years and I feel I'm good at what I do, but I don't have the academic background that some of these people do and you feel intimidated coming into it and everybody's so approachable.

Speaker 0

无论你与谁交谈,大家都会坐下来热情讨论这门语言,只要有能力帮助和教导他人,他们就会这么做。

It doesn't matter who it is you talk to, everybody sits down and everybody's just excited about the language, and if they can help and teach people, they do it.

Speaker 0

我认为这正是让我一直留在这个社区的原因之一。

And I think that's one of the things that's kind of kept me around.

Speaker 1

确实。

Yeah.

Speaker 1

我完全赞同这一点。

I couldn't agree with that more.

Speaker 1

我最初为Go语言做的贡献简直糟糕透顶。

My first my first Go contributions were brutal, terrible.

Speaker 1

我发布的第一个开源项目,记得是在Go邮件列表上宣布的,就是那个Go Golang公告列表之类的。

The first open source thing that I released, I think I announced it on the Go mailing list, the Go Golang announced list or whatever it was.

Speaker 1

然后立刻就有三四个人跳出来指出我代码中的错误。

And, three or four people immediately chimed in with corrections to my awful code.

Speaker 1

但他们态度非常礼貌友善,完全没有'你是白痴我们讨厌你'那种感觉。

And they did it in a very polite and inviting way, not in a you're an idiot, we hate you kind of way.

Speaker 1

这为我奠定了对整个Go社区的第一印象。

And that was that was that set the tone for the whole Go community for me.

Speaker 0

那么卡莱西娅,你刚加入时与现有社区互动的体验如何?

And how about, Carlesia, what was your experience kind of coming in and interacting with the existing community?

Speaker 2

我最初的互动就是认识大家,然后完全被接纳了——尽管我当时还不是Go开发者。

My first interactions were just getting to know people and being completely absorbed in because I wasn't a Go developer.

Speaker 2

没人在意。

Nobody cared.

Speaker 2

完全是这样,我当时在GopherCon大会上。

Totally, I was at GopherCon.

Speaker 2

每个人都和我交谈。

And everybody talked to me.

Speaker 2

我就是那种会主动接近任何人打招呼的人,比如‘嘿,最近怎么样?’

I am the kind of person who just goes up to every so I go up to anyone and say, Hey, what's up?

Speaker 2

你是做什么的?

What do you do?

Speaker 2

跟我聊聊你自己吧。

Tell me about you.

Speaker 2

那几天我一直在这样做,认识了很多朋友。

And I was doing that throughout all the days and got to know so many people.

Speaker 2

这让人感到非常温暖。

It was very heartwarming.

Speaker 2

我还认识了Women Who Go组织的女性成员们。

And I got to know the women at Women Who Go.

Speaker 2

我结识了Go社区的许多新开发者。

I got to meet many new developers in the Go community.

Speaker 2

所以那是我第一次,真正意义上的初次接触。

So that was my first, very first contact.

Speaker 2

我觉得这也算社区互动,不仅仅是开源贡献,对吧?

And I think that counts as community contact as well, not just contributing to open source, right?

Speaker 2

我还没有做过代码贡献,主要是在Go Bridge项目上贡献了一些教学材料。

I haven't done code contributions, just mostly contributing to material for Go Bridge as far as Go goes.

Speaker 2

实际上,我想在开源贡献方面做得更好。

I'm actually, I want to get better at open source contribution.

Speaker 2

这也是我对这些事情如此感兴趣的原因之一。

So that's one of the reasons why I'm so interested in these things.

Speaker 0

是啊,我是说从小任务开始,对吧?

Yeah, and I mean, small tasks, right?

展开剩余字幕(还有 84 条)
Speaker 0

我是说,维护一个开源项目需要大量工作。

I mean, maintaining an open source project is a lot of work.

Speaker 0

很多人都是在业余时间做这件事,而贡献就像是感谢他们的一种方式。

A lot of people do this in their spare time, and contributing is kind of like a means of thanking them.

Speaker 0

对吧?

Right?

Speaker 0

人们会感激任何能得到的帮助,哪怕是最小的零碎任务。

People are grateful for any help they can get, even the smallest bite sized tasks.

Speaker 0

说到感谢开源项目,Brian,你最近发起了这个#自由软件周五的标签活动。

And, speaking of thanking open source projects, Brian, you've, recently started this whole free software Friday hashtag.

Speaker 1

是啊。

Yeah.

Speaker 1

Eric,这是你做过最自然的转场了。

That's the best segue you've ever made, Eric.

Speaker 1

我很感谢。

I appreciate it.

Speaker 1

我想大概是在11月开始的,当时写了一篇博客,讲述有人感谢我做的某个开源项目时那种美好的感觉,以及我多么认为开源开发者普遍都很享受这种被认可的感觉。

I started this in, I think, November with a a blog post about how good it felt to have someone thank me for a particular open source project that I did and how much I feel like, open source developers in general just enjoy that that concept of appreciation.

Speaker 1

在开源世界里,我们常常是自食其力。

We often scratch our own itches in the open source world.

Speaker 1

我们开发自己需要的工具,因为我们需要它;我们发布它,因为我们相信开源。

We we build a tool that we need because we need it, and we release it because we believe in open source.

Speaker 1

但当你收到一条推文,或是GitHub仓库里不是问题而是感谢的issue时,那种感觉真的很棒。

But it's kind of fun when you get a tweet or, even an issue on your GitHub repository that isn't really an issue, it just says thanks.

Speaker 1

于是我在Twitter上创建了一个叫'自由软件星期五'的标签,每周五早上9点我都在日历上设了提醒。

So I started a hashtag on Twitter called Free Software Friday, where I actually put a calendar event in my calendar every morning, every Friday morning at 9AM.

Speaker 1

我会回想过去一周用过的、真心感激的开源项目。

I think of the open source projects that I really appreciate that I might've used over the last week.

Speaker 1

然后向这些项目或我认识的维护者公开致谢。

And I just send a shout out to either the project or the maintainer if I know them.

Speaker 1

而且我想在播客里延续这个传统,因为让那些辛勤付出的人知道他们的时间奉献被珍视,这很重要。

And, I I wanna continue that here in the podcast because it's important to let the people know that are working so hard that you appreciate the things that they're they're giving their time for.

Speaker 0

我同意。

I agree.

Speaker 0

我觉得那简直是黄金地段。

I think that's, you know, prime real estate there.

Speaker 0

我非常想向所有人致谢,感谢那些我们日常使用的工具,它们帮助我们高效工作,无需投入大量时间就能构建出酷炫有趣的项目。

I I would love to reach out and, thank everybody for all the tools that we use on a daily basis that help us, be productive and and build cool and interesting projects without having to invest so much time.

Speaker 0

那我们何不快速轮流感谢一下本周各自最喜爱的项目呢?

So why don't we quickly go around and, thank your, favorite project or projects for this week?

Speaker 0

布莱恩,你想先开始吗?

Brian, you wanna kick it off?

Speaker 1

当然。

Sure.

Speaker 1

上周我花了一些时间使用Rancher Labs的Rancher,它出色地管理了整个生产环境中的Docker体验,这让我非常惊叹。

I spent a little bit of time using Rancher from Rancher Labs this past week, and I was really amazed at how nicely it managed, the whole Docker experience in production.

Speaker 1

因此我要向他们大声致谢,感谢他们将这个项目开源并公开可用。

So I I wanna give them a a huge shout out for making that open source and available.

Speaker 1

相比Kubernetes这类工具,Rancher对初学者来说没那么吓人,但它拥有许多强大功能和友好的界面。

It's it's a little bit less intimidating than something like Kubernetes when you're starting off, but it has a lot of really powerful features and a nice interface.

Speaker 1

它让使用变得简单。

It makes it easy to use.

Speaker 1

所以我一定要为Rancher点赞。

So I definitely want to shout out to Rancher.

Speaker 0

不,这很棒。

No, that's great.

Speaker 0

我是说,所有这些容器项目都太有意思了。

I mean, all these container projects have been so interesting.

Speaker 0

可惜我自己还没玩过Rancher,看来得把它加到周末黑客清单里了。

And Rancher is unfortunately one I have not played with myself, but I think I need to add that to my list for, weekend hackery.

Speaker 2

它只支持Linux吗?

Is it just for Linux?

Speaker 1

是的,仅支持Linux。

Yes, is.

Speaker 1

这是一个容器编排工具。

It's a container orchestration tool.

Speaker 1

所以它只能部署在能运行Docker的环境上。

So it only deploys on things that well, it it deploys on anything that runs Docker.

Speaker 1

严格来说,既然现在Mac和Windows也能运行某种形式的Docker,它就不再仅限于Linux了。

So I guess technically now that the Macs and Windows run a form of Docker, it's not just for Linux anymore.

Speaker 1

我纠正一下,它不限于Linux,但主要还是用于Linux。

So I correct myself, it's not just for Linux, but it is just for Linux.

Speaker 0

Carlisa,这周你想感谢谁呢?

And Carlisa, who would you like to thank this week?

Speaker 2

哦,我最近完全沉迷于我的编辑器。

Oh, I totally geeked out on my editor just recently.

Speaker 2

我时不时就会这样。

I do that every once in a while.

Speaker 2

我想感谢V Mode Plus的创建者。

And I wanted to thank the person who created V Mode Plus.

Speaker 2

他只有一个用户名。

He only has a handle.

Speaker 2

是C9MD。

It's C9MD.

Speaker 2

这是基于Vimmodes构建的。

And that was built on top of Vimmodes.

Speaker 2

这两个是Adam的包,让你能使用Vim。

And those two are packages for Adam, just so you can use Vim.

Speaker 2

他对我帮助极大,因为我确实喜欢Vim也想用它,但总会遇到卡住的时候,这时我就激活Atom的原生界面。

He's hugely helpful for me because I do like Vim and I want to use it, but get to a point that I get stuck, and that's where I use I activate just the Atom interface.

Speaker 2

非常值得一试,尤其是Vimode Plus的新功能。

So very worth checking out, especially the new features with plus Vimode Plus.

Speaker 2

我发现其中一个是搜索功能。

One of them that I realized was the search functionality.

Speaker 2

它实现了高亮增量搜索、搜索计数器,还有许多其他新特性。

It gets highlighting incremental search, search counter, and there are many other new things.

Speaker 2

谢谢。

So thank you.

Speaker 0

说到Vim,我要感谢Vim本身。

And speaking of Vim, I would like to thank Vim itself.

Speaker 0

而且,我想我得来个三连谢,因为Vim、Arch Linux和i3窗口管理器,这些就像是我所有工作的基石。

And, I I guess I have to do kind of a a triplet here because Vim, Arch Linux, and I three Window Manager, those are, like, the core things everything else I do built on top of.

Speaker 0

所以我觉得没有

So I think without any

Speaker 1

它们

of them

Speaker 0

没错。

exactly.

Speaker 0

这就是我想说的词。

That's the word I'm looking for.

Speaker 0

所以我想,没有它们中的任何一个,我的效率都会大打折扣。

So I I guess without any of them, I would not be nearly as productive.

Speaker 1

是的。

Yeah.

Speaker 1

在我心中,Vim、Arch和i3几乎已经成为我的信仰了。

That that in in my mind, Vim, Arch, and I three are almost religion for me at this point.

Speaker 0

我们会转化更多人。

And we'll convert more.

Speaker 0

我们会转化更多人。

We'll convert more.

Speaker 1

这才是真正的开发之道。

The one true way to develop.

Speaker 0

对于任何想联系开源维护者、项目或支持开源工作者的公司的人,一定要在周五关注并使用Twitter上的#FreeSoftwareFriday标签。

So for anybody else who wants to reach out to, open source, maintainers or projects in general or companies that support people who work on these open source initiatives, definitely follow and reuse the Free Software Friday hashtag on Twitter on Fridays.

Speaker 0

说到这里,该结束节目了。

And I guess with that being said, time to close out the show.

Speaker 0

感谢在座的各位参与这次通话并进行了精彩的讨论。

I want to thank everybody here on the panel for, jumping on this call and having some good conversations.

Speaker 0

我要感谢所有现在的听众,以及那些即将被现有听众通过推荐访问gotime.fm而吸引来的未来听众们。

I want to thank all the current listeners and all the future ones that the current listeners are going to pull in by sending them to gotime.fm.

Speaker 1

是啊。

Yeah.

Speaker 1

别忘了你可以通过访问gotime.fm或推特@gottime来分享这期节目。

Don't forget that you can share this show by finding us at gotime.fm or tweeting gotime.

Speaker 1

fm。

Fm.

Speaker 0

没错。

Yes.

Speaker 0

还有,就像我们节目早些时候提到的,一定要给我们发送问题。

And definitely, as we mentioned earlier in the show, send us questions.

Speaker 0

把你想在节目中见到的人选推荐给我们,或者如果你自己想上节目,也一定要通过那里联系我们。

Send us people you'd like to see on the show or if you wanna come on the show, definitely reach out to us there.

Speaker 0

我们还设置了GitHub仓库,如果你更喜欢这种方式,可以在github.com/gotimefm/ping提交issue来讨论这些事项。

We also have GitHub set up where issues can be open for these things if you prefer that, which is github.com/gotimefm/ping.

Speaker 0

那么话已至此,我想跟大家说下周再见啦。

And with that being said, I guess goodbye everybody until next week.

Speaker 0

下周我们节目将迎来一位特别嘉宾。

And next week, we have a special guest coming on the show.

Speaker 2

科里。

Cory.

Speaker 0

对,科里·拉努。

Yeah, Cory Lanou.

Speaker 0

哇,我刚才脑子突然短路了。

Wow, I lost my head there.

Speaker 2

我懂你意思。

I gotcha.

Speaker 0

是的,科里会来和我们聊聊社区话题,我想这是大家都能产生共鸣的内容。

Yeah, Cory will be coming on to talk a bit about community and I think that's something we can all relate to.

Speaker 0

那就下周见啦。

So until next week.

Speaker 0

再见,各位。

Bye, everybody.

Speaker 2

再见。

Goodbye.

Speaker 2

这次很有趣。

This was fun.

Speaker 2

再见。

Goodbye.

关于 Bayt 播客

Bayt 提供中文+原文双语音频和字幕,帮助你打破语言障碍,轻松听懂全球优质播客。

继续浏览更多播客