“是时候走出前端了”:Andrey Sitnik讨论社区停滞,开源问题,而不仅仅是



Evil Martians的 Andrey Sitnik是前端最著名的俄罗斯名字之一:他的PostCSSAutoPrefixer项目拥有数万个GitHub明星。 但是由于安德烈(Andrei)居住在纽约并在整个星球上旅行,所以您很少在俄罗斯找到他。

5月,他将在圣彼得堡举行的HolyJS会议上,HolyJS程序委员会成员Dmitry Dmitry Makhnev MakhnevMaxim Yuzva对此进行了详细询问。 为什么Andrei认为前端停滞不前,而我们的项目的代码太膨胀了? 不同国家的IT社区之间有什么区别? 如何学习英语,为什么它没有看起来那么重要? 2016年在HolyJS上提出的Logux项目在哪里?

关于当前项目


德米特里:首先,简单介绍一下您自己-您在哪里,在做什么。

Andrey:我叫Andrey Sitnik,我住在纽约,但我经常旅行。 通常,他们是通过开源和表演来认识我的-因为现在流行说“ IT领域的媒体品牌”。 我不能说我真的应该得到它,但是运气对我有所帮助。

除了开源之外,我还在Twitter @ LinguoPunk@ LostInWiki上的Wikipedia和争取性实证主义的斗争中促进语言多样性。

德米特里:您现在正在从事哪些项目?

安德鲁:在开源中,有几个支持项目,其中最著名的是PostCSS和Autoprefixer。 也许PostCSS现在正在稍微激活:Alexey Bondarenko对API 进行了非常大的更新,因此可能很快就会发布大版本。

Autoprefixer即将发布。 我们现在唯一能看到的就是Grid对IE 10-11的支持,但是由于Rachel Andrew的抵制 (进展非常积极) Rachel Andrew一直在积极地推广Grid。 她是一个非常有名的人,她不喜欢任何可以在CSS中自动执行任何操作的工具-如此艰辛的斗争。 而且由于它的反对,不幸的是,该功能并未特别普及。

德米特里:瑞秋如何阻止您制造乐器?

安德鲁:该工具不会干扰任何事情,它可以工作。 但是开源与编程无关,开源与社会和社会化有关。 如果没有人使用您的产品或谈论其产品,则没有动力去做。 结果,它打击了开发人员并继续这样做的动力。 很少有人谈论他们的英雄主义,但他们仍然是伟大的伙伴和真正的英雄。

实际上,我们意识到了我们想要并且可能做到的一切,甚至在自动网格的支持下甚至有一个疯狂的主意,这在此规范上通常是不可能的,但是这些家伙想出了如何通过巧妙地结合选择器魔术来做到这一点。

通常,支持PostCSS和Autoprefixer,很少添加功能,而大多数只是小的功能,但Logux正在积极开发中。 今年,我想将更多精力投入到文章上,而不是一个特定的开源项目。

德米特里(Dmitry):您做了很多解雇,但是在2016年HolyHo 演讲后,关于洛克斯(Logux)的消息,您真的听不见他发生了什么事吗?

安德鲁:这是一个很好的问题,因为它提出了一个非常有趣的话题。 事实是,分发软件的方式不同。

使用开源不是某种理性的决策。 时装业最好地描述了软件开发。 首先,技术选择是时尚,炒作和类似事物。

因此,有几种促进新解决方案的策略。 例如,当出现某种东西时,它仍然没有按预期的方式工作,但是由于担心错过一些巨大的东西,人们很快就会大肆宣传,开始锯切并将其置于工作状态。

好的方法是,超过一半的流行开源项目只是令人作呕。 相反,围绕它们的炒作与代码的质量以及组织者的支持水平完全不一致。 但是由于很多人马上坐在炒作火车上,所以该项目得以幸存并继续存在。

例如,Babel插件不具有异步性。 您不能在插件内部创建异步函数,这是一个可怕的问题,我不知道它是如何投入生产的,因为它极大地限制了庞大的Babel应用程序市场。 但是他是这样写的,他的体系结构也是如此。 通天塔很有趣。

这是一种传播方式:说“一切都消失了,如果您不按明天学习-一切,则市场将需要具有三年使用该技术经验的人。” 但是还有另一种方式。 例如,在React中,他们的做法有所不同:首先,他们在自己的环境中“烹饪”,然后提出了一个或多或少已准备好投入生产的项目。 当然,悬而未决的问题是他准备生产的准确程度如何,但是很显然,框架并不是100%准备就绪的。

Logux是客户端/服务器通信系统。 查询的概念(无论是GraphQL还是Ajax)都不适合不稳定的Internet,并且只能在令人作呕的情况下使用-这是大多数站点已知的问题。 Logux是一种不同的方法,因此,从技术上讲,它是一个非常大的解决方案。 这个想法并不新鲜,有很多这样的解决方案,但是它们失败了,这让我感到担心。 甚至GraphQL都发出了可怕的吱吱声,这应该已经教了些什么。

我的观点是,炒作并不适合此类任务。 我们无法做出决定,以使每个人都参与其中,一切顺利。 当我们立即为前端和后端提供解决方案时,尝试在炒作中将其全部淘汰,将导致社区之间的对抗。

因此,我决定不使用Logux来执行此操作,但是我们会谨慎而缓慢地进行操作,并在项目内部进行准备。 整整一两年的时间里,我们在Amplifer中煮了Logux,将其用于不同的项目,并观察了支持者的反应。 我试图解释一下,然后进行演示,现在Dima Salakhutdinov将去Ruby-confu 讨论 Logux,以便我们可以看到它们的反应,以及如何将PR提供给后端。 因为本着“炒作”的精神告诉他们我们对前端供应商说的话是错误的,所以在那儿行不通。

德米特里:为什么不起作用?

安德鲁:后端切换到停滞不前或支持的系统:近年来,实际上没有任何发展。 结果,它们具有不同的优先级:当您每六个月没有新框架时,它将影响您。 它们在Rust或Go中,但在Ruby中-有什么新功能? 结果,人们专注于另一个。 当然,我大大简化了,后端后端也有所不同。

我想在后端和客户端上正确分发它,我想提供一个可以实际使用的现成解决方案,我们已经在生产环境中对其进行了实际测试。 在2017-2018年,我们已经有0.2的工作版本,但是没有可扩展性。 我们有一个想法,如何扩展,对于PR来说就足够了,但实际上这是错误的。

相反,当您无法理解时,我们将处理实际的而不是理论的可扩展性问题,而您不知道在什么时候。 在Logux中,我们认真地对系统进行了泵送:例如,我们可以轻松地一次在多台服务器上提升服务器,并使用一个命令来增加它们的数量。

在没有真正的分析之前,这样做是毫无意义的。 因为没有它,您将无法理解插头的位置。 您可以随意缩放,但事实证明,有一个地方无法缩放。 因此,我们有一个真正可以扩展的代码,以及大量的分析功能:花费多少时间,花费多少时间,收到多少请求,您可以看到插头从哪里开始。 例如,通过每秒的操作数或通过用户数,服务器上的所有这些问题都可以不同地解决。

德米特里:听起来很有趣。 而且,据我了解,该计划在不久的将来足够大吗?

Andrei:是的,我们已经完成了实际应用的计划,我现在将发布0.3版本并编写不足以进行大规模应用的扩展坞。 而且代码很好。

关于Nano ID和快速互联网


德米特里:您已经谈到了互联网连接的话题:每个人都习惯于我们的互联网稳定,良好的事实,但实际上一切都完全错误。 在这里,不可能不注意包的大小和其他事项,请记住您的项目Nano ID。 为什么这么困扰你? 让我们从大小开始。

安德烈:对我来说,当每个人都拥有正常的互联网时,这不是在“节省比赛费用”吗? 好问题。

Nano ID是一个141字节的库,可生成ID。 当我们从200字节减少它时,这没有任何实际意义,但是这是时候考虑它的“政治宣言”。

JS大小是一个有趣的问题。 首先,编译器无法解决问题,反之亦然:大多数捆绑器错误地合并,显着增加了大小或使用效率低下。

互联网连接速度不断增长的事实是事实,而事实并非如此。 互联网加速发展后,各国便宣布自己处在一切不利的境地,例如在中非。 同时也出现了新市场-例如,移动市场。 还有一个棘手的问题:下载速度不断提高,但网站加载速度却不快。 如果将站点的页面大小除以网络速度,则可以检查一些LTE,该LTE应该会快速打开所有内容。

问题是实际的站点加载速度取决于其他参数。 例如, 往返次数 。 事实是,当信号到达并返回时,在请求和第一个字节之间不可避免地要经过一段时间。 这个时间很长,最多500毫秒 。 首先,由于光速,其次,设备很慢。 而且,如果您的文件又互相加载,则该站点将变慢。

幸运的是,我们很久以前就发现了这个问题,并学会了解决方法。 但是她不是唯一的一个。 最近,我们遇到了另一个问题:事实证明,问题不在Internet上,而是在编译速度上。 事实是,易于下载和显示1 MB的图片,而1 MB的JavaScript对于浏览器则要重2-3倍,因为它需要编译。 并且JS的数量正在增长。 这是低速站点的一个客观问题。

您可以使用方法巧妙地解决研究站点的问题。 我们有一个重1 MB的网站。 有“信息量”的概念。 兆字节不仅仅是行数,它还包含此代码中的多少含义。 一个站点需要1 MB的存储量应该有多复杂? 网站上确实有如此多的用户案例,因此必须涵盖如此之多的代码量?

实际上,这种情况很少。 Linux内核中有如此之多的需求,但站点上却没有。 因此,我们有很多冗余代码。

Nano ID运动的意义不是要保存每个字节,而是要思考:“捆绑包中有什么? 我到底有1 MB到底是什么? 我无法完成需要这么大容量的任务。” 在大多数站点上,未使用75%的代码。 Nano ID反对我们向用户发送此代码。

当我们开始思考为什么不使用太多代码时,我们了解到,如果不是一个庞大的团队,那么就无法手动编写1 MB的代码。 这比多年来可以编写的常规“战争与和平”要多,并且由于相互依赖性,代码很难编写。

通常,此卷是库。 Moment.js的著名故事:您将其连接起来,由于webpack操作的特殊性,它会将每种语言加载到您的网站上 。 并且有很多类似的情况。

一次,我需要在Logux中生成一个唯一的ID,我使用了一个库,然后发现它的大小为100KB。 为什么我需要那么多才能生成随机ID?

这种大小通常是由于库开发人员拼写错误而造成的。 因此,主要思想是使用大小限制,以便库开发人员控制其项目的大小。 像ESLint一样,只是用于库大小。 我们立即看到可以将大量的库减半。

德米特里:在您看来,问题不仅仅在于代码的大小,还在于开发工具的方法吗? 如果我将库导出为对象而不是单个函数,并且我自己承担的风险没有连接Google Closure编译器,那么没人会削减我任何东西。 除了编写代码之外,问题还会更深吗?

安德鲁:我不会说摇树问题确实很重要,因为它不适用于JavaScript。 每个人都认为trichashing可以解决问题,但是没有。 最常见的问题是不同的:包装在做什么。 他们使用一些Rollup ,将整个项目打包到一个文件中,事实证明,例如,依赖项打包在其中。 这是一个很大的问题,在“大小限制”的帮助下,我们大大减少了一个库,因为我们删除了每个项目中可能重复出现的依赖项。

第二个问题是他们不小心使用了Node.js中的某些API。 例如,有一个库choo.js- “紧凑JS框架”,他们在其中使用Node.js-module断言检查传入的参数。 它加载几乎4 KB。 为了建立一个很小的库,我们额外提供了4 KB。

这样的问题比使用树的目的更为普遍。

最好的建议是将程序集中的文件拆分,让单独的文件中有单独的函数。 但最常见的问题是不同的。 只需使用--why选项运行Size Limit,即可查看使用模块时webpack嵌入的大量垃圾。

马克西姆:那么事实证明,使用webpack进行组装是不好的举止吗?

安德鲁:看着谈论什么。 如果您创建一个库,则很可能不需要webpack。 您只有不到1%的用户想要单独的文件,同时最好强迫他们使用Webpack,因为他们将您的库插入为到另一个文件的链接,并且网站速度会变慢。

但是用户从何处收集您的图书馆,人们从何处收集您的网站-实际上,没有什么区别。 我们习惯于前端,如果您错误地使用了库,那么一切都会变得很糟糕,如果您今天不从webpack切换到Parcel,那么一切都会再见,您是一个糟糕的开发人员。 不,老实说,不要在乎这些工具。

webpack有很多问题,这是一个不好的捆绑器,但是如果它对您有用,那就继续努力。 我看到了他帮助解决问题的项目,尽管事实上这是最被遗弃的项目之一。 例如,那里有一个来自俄罗斯的支持css-loader。 这是一个真正的英雄,但是如果他很忙-就是这样,没有人可以解决您的问题,但是有很多问题。

如果我说您应该停止使用webpack,那仅仅是因为有更好的收集器。 但是,再次尝试一个新项目,不要在旧项目上进行更改。 尽管实际上它们并不影响我们创建代码的方式,但是我们对框架和工具进行了大量自慰。

为什么炒作火车和贵族不好


Maxim:您刚才谈到避免使用Webpack而是使用较酷的捆绑器。 你们这样的人的这种推荐可能会引起炒作吗? 与其推荐使用新的东西,不如说“让我们推高并再次使webpack变得更好”?

安德鲁:好问题。 一方面,当在不理解上下文的情况下察觉到这样的评论时,确实存在问题。 但是还有另一个问题:我担心停滞。

事实是前端停滞不前。 直到我们生命的尽头,我们将生活在React的主持下-没有一个新的框架可以取代它,因为获得了关键的质量。 就像在后端语言中一样:旧语言不会被新语言击败,因为除了一些狭窄的任务之外,没有临界的数量和过渡条件。 现在前端已经开始。

框架和构建系统的停滞意味着一个很大的问题:将教我们如何生活的人们的停滞。 我们现在看到这一点,因为前端的明星仍然是一样的,因此,新的明星将不会出现。 人的停滞也意味着思想的停滞。 到目前为止,我们已经通过间接参数看到了这一点,同时有足够的惯性来带来新的想法。 但是您参加会议时,一切都是一样的,这确实让我感到沮丧。 我认为,该是打破前端世界的时候了。

这就像Java-一个巨大的市场,一切都很好,但是没有什么新鲜的。 如何解决这个问题-我不知道。 但这就是我淹没小项目并不断为其提供建议的原因之一。

老实说,webpack很难重写,它的创建者并不关心DX的质量,他是自己写的,几乎没有与用户交流。 此外,还有一些架构问题,使其很难重写。 Webpack团队中有些人会诚实地尝试做得很好,但是有很多困难使我们无法做到这一点。

有一个社区,以及将其移至何处-稳定并添加旧工具或使用新工具-我没有答案。

在理想的世界中,我们不会产生使用旧工具不好的感觉,但是会在新项目中使用新工具。 而且我不知道如何创建它。 确实,提出了错误的建议,人们因使用“错误”的东西而开始毒害他人。

马克西姆:您认为,像微软和Facebook这样的大公司是否有可能开始购买webpack和Babel这样的大型开源项目?

安德鲁:要买-不。 只要社区带来新想法,这对他们就没有好处,这是真正的商业利益。 他们控制它们;它的工作方式不同。

不幸的是,这个问题已经出现在前端,但是并不能表示该公司购买了一些东西,而是因为我们有一些恒星不会改变,所以他们总是在楼上并说出我们将如何做。编写代码。 他们彼此了解,彼此接触并要求他们做某事比较容易。 因此,他们的意见比其他人的意见更重要。 这是在社会上创造精英的经典系统。

如果没有社会电梯系统,这就会导致一个事实,即精英分子受到保护,思想变得陈旧。 问题不是公司控制他们,而是由一小部分人决定我们将拥有哪个前端。 浏览器的工作方式完全由一小组使用Chrome的人员决定。 如果Chrome继续受欢迎,那么将会出现大问题。

— , . , - , : , . , , , , . , , .

: « » - , ?

: . , , — . , , [] . ?

: , . - , , - , .

: , . , — , , 37signals DHH .

, , , . , , , - . , , .

, . , IT .

DHH , , : , , , . , .

: . -, - - , , ?

: Vue.js. , React, , React. , : , .

« , , », , 20–30% . — . , , Google .

Google , , . , - Instagram Facebook, , , , . . , Vue : , React .

, Vue , . , , . — , , win/win. - .

, , , -, - , , , , - .


: , .

: . : , , -.

, — : , , . « ». , , , , .

-, , 99- . , Size Limit, , , , , Size Limit .

, : - , , , , , , . , , . .

. — « , Google», « , Google, , 99% ».

, , . , , . : , , .

, - pull request Babel, , - . , , — , .

, , - . , , . , .

— - . , PostCSS , , CSS-. Autoprefixer , Compass, , Compass , , , , Opera .

, , , . Accessibility, , URL, , . , — , . , , , Autoprefixer.

, , , , , , , .

: ? , , , JavaScript , , . , ?

: , , — , . — .

: . , , , .

: , , , , , . , . , .

- , … PostCSS , , . , , . - -, , , , , .

: ?

: , , .

: , , , ?

: , , , , - , , , , , . : « Open Collective , , ».

, . . . , , , . « , , . Open Collective, , . , , , ».

, Babel webpack. : « , . issue, Open Collective , ». , . , — . , , . , .

, , . -, issue, , maintainer, , , , . , issue, : «, , , . . , , ?» . , «», . , , .

: - , - ?

: . . , JavaScript , . , Ruby , JavaScript. . - , . , , JavaScript.

: , pet project . , , : , , -, , . , , ?

: - . , . , , .

« ». . , . , . — , , maintainer , , - .

, . , , . , , , issue, - , , , .

, ? 没办法 , , , . , , .

: , ?

: , . . . , .

: , , . , . , -, , . , , .

, . , 10, , , , , .

: , , ? , - : « , ».

: , , , . , . , . «» — , , — . , , - PostCSS. .

, - , . - : , , , , , .

— . , , , , , , . , . — , . , .

,


德米特里:您说过PostCSS有助于旅行。 您旅行了多少,如何将其与工作结合起来?

安德鲁:老实说,工作做得更好。 我短途旅行后刚到达纽约。 这是一段艰难的旅程,摩洛哥的互联网贫乏,无法工作,但实际上我每天都做一些有用的事情:写了一篇文章,我使用了一种全新的技术建立了两个站点。

到达纽约,坐着看YouTube。 我旅行时正常高效地工作。 在一个地方,我立即变成了华夫饼干,躺在沙发上。 我旅行是为了提高生产力,因此合并很容易。

唯一的规则:不要以为一天就能在一个新的城市观看它。 带来巨大的利润。 不要以为您会到处走,您的工作方式实际上是一样的。 您将成为一名普通的土耳其自由职业者,他会醒来工作,在街上吃饭,工作,看电视节目和睡觉。 如果您每两周不超过一次更换城市,那么一切都会好起来的。 没有特别的问题。

马克西姆:每个人都知道英语知识是必要的,但学习起来并不容易。 你有很好的背景吗? 你从哪儿学到好英语?

安德鲁:你在笑吗? 我的英语真恶心。 我在Lingvopank提出这个话题。 我们习惯于说语言是规则,尤其是在有毒的俄罗斯文化中,我们不断批评不同的人。 我们已经习惯了这样一个事实:如果您说错了,那一切都是不好的。

实际上,语言是一种交流系统,只要您能理解,一切都很好。 我们不了解语言是如何重复的。 就像CD或QR码。 您知道QR码可以被销毁,并且仍然可读吗? 因为有用于复制信息的特殊算法。 关键是您不需要了解该语言,您需要能够使用该语言进行交流。

当我不再害怕时,我在语言上的主要进步就发生了。 我们都感到害怕,因为我们在学校和互联网上经常被欺负-一个可怕的俄罗斯推特,他们在这里把错别字归咎于我们而不是反思想。 实际上,俄罗斯人英语很好。 从这些是紧密相关的语言开始:不是某些中文,因为您通常使用不同的语言系统。 我们无法想象,像世界其他地方一样,情况甚至更糟。

俄罗斯处于正常水平。 当然,这比挪威和仅需学习该语言的类似小国更糟糕,因为没有内容。 但是其余的俄罗斯人英语说得很好,没有问题。 主要规则-不要害怕,只是交流,切换到手语,在讨论之前喝一杯(这有助于理解简单的事情真的很重要)。

第二点-带字幕的观看系列,确实有帮助。

旅行,只需学习语言。

最重要的是-尝试说话。

我们害怕这种语言,因为在俄罗斯有一个问题:我们与外界的交流很少。 一方面,这很好,因为有一个内部市场,可以让一些小人们出来。 由于语言障碍,Yandex脱离了Google的垄断地位,因此,程序员可以攀登的社交电梯也非常多,这在西方国家是绝对不可能的。

但是作为回报,存在一个市场封闭的问题,我们不要向外看,所有崛起的人,真的好家伙,不要去西方,因为他们害怕英语。 我的建议是拥有两个Twitter帐户,用俄语写一个以帮助您的文化(这也很重要),并用英语进行练习。 用英语写作时,您会理解这并不困难。 唯一的问题是,很少有人会读你的书,因为在西方,有足够多的人阅读你的书,但是无论如何,关键的数量正在增加,您将获得150-300名读者。

参加在俄罗斯举行的英语会议,这并不可怕,没有人会冒犯您,一切都很好。

德米特里:您是否建议尝试移动一段时间以学习该语言,如果可以的话,在哪里?

安德鲁:为了摆脱恐惧,任何旅行都足够。 但是,如何进一步学习是一个好问题。 老实说,我不知道,我不太了解该语言。 但是我可以说,当您在纽约的一次集会上讲话时,即使听众几乎听不到您的口音,也是如此,因为一半的听众来自印度,一半的听众来自中国。

我还能说些其他话。 在俄罗斯,有一种流行的叙事需要受到指责,到处都是好:“在俄罗斯,一切都不好,我会抛弃,我会很高兴。” 老实说-这是最好不要被引导的动机。 因为叙述是非常古老的,从历史上看我们知道它在18至19世纪是行不通的。 在其他国家,根本没有更好的选择。 存在基本的管理问题,但迟早它们会出现在任何国家。

当您有任务时,存在选择问题,并且可以通过不同的方式解决。 例如,我们希望清洁街道,为此,实际上,我们需要一个集权的社会。 为此,必须压制所有认为错误的人,例如在美国。 有一个非常严格的内部规则和制衡机制,以决定谁应该思考,实际上美国在这方面与中国相似。 只是规则不言而喻,而国家却没有这样做,而是社会在做。

我不会说有一个明确的解决方案,那就是哪里有更好的解决方案-断路,或者社会说您应该如何思考。 但这不是二进制的解决方案,而是政治和社会学问题。 概述:通常其他国家在某些方面会更好,因为在其他地方则更糟。

最好不要马上走动,而要环游世界,然后您就会意识到,准备好要付出的东西以换取其他东西,通常很重要。 有了这种了解,您就可以选择可以搬到的国家。 然后正常移动。

但老实说,您不会幸福,因为移民的第一波总是经历着可怕的痛苦,被压抑,在搬家后您将失去整个社交圈。

德米特里:我想知道其他国家的俄罗斯开发商社区有什么区别。

安德烈:谈到国家,这是一个有趣的情况。 首先,实际上有一个严格的实施哲学体系。 她一直都是,他们有严格的惩罚制度,例如,公共骚扰。 但是该系统相当老,并且可以正常使用。 坦白说,老实说,她经常使用正确的思想进行传播,而错误的思想则过多地在地面上传播。

主要思想是为了快速传播良好做法,文化中存在非常刻板的思维。 那里有大量的程序员不会犯愚蠢的错误,因为每个人都被要求这样写,每个人都这样写。 相反,推广您的想法非常困难。

而且有一种特殊的闲聊文化-欺负错误的想法会造成社会紧张,在美国有很多国家,他们不知道如何不进行欺负就如何进行相互冲突的交流话题,因此有一个停止主题列表。

这是社区中最重要的社会差异。 优点-易于攀登,并真正照顾到人们不会受到伤害。 您来了,每个人都很友好,一切都很好,只要您是遵守规则的普通人即可。

第二个有趣的特征是,他们通常会支付mitap的费用,象征性的价格为5-10美元,用于食品。 再次,因为资本主义。

德米特里:如果不是美国,还有其他国家?

安德鲁:第二,以我研究社区的方式,这就是中国。 很多开发人员都有一个有趣的功能,另一方面,他们有一个有趣的格式-很少有网络。 通常关闭,邀请您参加“特别早餐”,与社区领袖一起举行。 另一方面,参加会议的人们真的是在谈论复杂的话题并吸收新知识。 老实说,所有这些功能都不是框架。 社区是多种多样的,中国有足够的无政府主义者;在美国,也有很多人反对禁令。 好吧,在俄罗斯有热情好客,有礼貌和善良,而不是小批评家。

中国的另一个有趣的特征是它们是封闭的,有一个独立的世界,这既是一个正负号。 他们有很多成就,因为他们有发展的地方。 另一方面,像俄罗斯一样,他们因无法实现自己的发展而遭受极大的痛苦。 尽管他们通常会说英语,但所有会说汉语的人都不敢说“一般”一词。

接下来是日本。 尽管事实上这是一个计算机国家,拥有先进技术的超级大国,但编程却被认为比管理更糟糕。 人们认为,与管理人员不同,编程是一种低劳动的工作:他们告诉对方,然后他编写代码。 结果,这里没有社区,IT的发展也很糟糕,创业公司的发展却比该国的能力差得多。 没有硅谷的“天才程序员”。 由于传统社会的原因,从事IT行业的女性人数远少于中国。 在中国,一切都很好-尽管有成长的空间,但很多中国女性的观点和经验都很有趣。

有一个很好的巴西社区。 西班牙裔国家没有,因为每个人都面向美国。 法国也有一个良好的内部社区。

但是在斯里兰卡,IT社区的一切情况都非常糟糕,因为当他们嫁给一个女孩(通常是通过家人)时,她的父亲问道:“您与谁打交道?” 这里有一份“正确的”职业白名单,而程序员还没有加入。 因此,尽管有很多潜在的优势,但程序员却很少:金钱,移民的可能性。 一个好父亲会感激他给女儿一个好手,但这没有发生,因为该清单尚未更新。

我建议您在中国和印度会议上发言:到那里很容易(他们很乐意从外面接受一个人),并且您在不会害怕的环境中练习英语,因为没有人真的会英语并且每个人都说错了。

理想会议


德米特里:如果我们谈论会议,参加演讲者的决定性因素是什么?

安德鲁:对我而言,决定性因素是会议的召开。 尽管有时候,如果我的路线经过某些国家,我同意人们不太方便参加的会议,只是为了提出报告。

我认为会议价格很高是一个大问题。 我知道会议需要赚钱,这没有问题,但是有些JSConf花费了惊人的500美元,并且坦率地说,他们将钱花在了可以节省的事情上。 例如,在晚宴上,最有影响力的晚会,虽然我坦白地说,我宁愿喝些不愉快的啤酒,但这样会吸引很多人。

高昂的价格导致演讲者对与观众交流不感兴趣,有时很难支持这个话题,因为在会议上,只有大公司的员工(CRDT最佳JS实现的创建者Viktor Grishchenko的同一创造者)来不了,因为票价非常昂贵。 有很多保存方法,需要应用,昂贵的票证是错误的。 会议应该是可访问的。

我经常同意参加一次小型会议,以使每个人都能正常访问网络。 而且在许多会议上,对话比在票价高的会议上要好。 这是我的方法。

德米特里:没有会议就不好了吗? 关于联网,可访问性以及其他内容已经很清楚了吗?

安德烈:恩,作为演讲者,我非常感谢舞台前有计时器。 在这方面,在HolyJS,一切都很专业,我喜欢表演的组织。 通常,网络连接是关键,人们参加会议不是为了了解知识,阅读文章要比报告容易,而是为了拥有归属感。

社区是会议中最重要的事情。 您正在说话的感觉,以及您内心的某些变化,您知道一些事情。 有一个好主意,就是我们的社会缺乏对“为什么”的理解。 我们去参加会议以了解为什么我们要做所有这些事情。 一个好的会议可能会解决这个问题。

德米特里:你说“不是为了知识”,这是一个非常有争议的问题。 您是否愿意参加一个会议,召集一群来自不同社区的具有非常基本主题的人参加?

安德烈:是的,那当然很有趣。

德米特里:那会比有严肃而有力的报告的会议有趣吗?

安德烈:我认为这两种方法都是好的,这里没有问题。

德米特里:可能是最后一个问题。 您对HolyJS有什么期望?

安德鲁:晚会! 在2016年,它被直接认为是我一生中最好的之一,然后一切都井井有条。

德米特里:您建议这次做些什么来使它变得更好? 想要参加派对吗?

安德鲁:我会尝试与当地的杂货店组织。 我们有很多本地会议,当他们有机会自己做点事情时,结果真是太酷了-有很多有创造力的人,需要给他们机会。 如果所有本地集会的组织者或其主要发言人都获得免费门票或某种帮助,那就太好了。

在最近的HolyJS (圣彼得堡,5月24日至25日)上,Andrei将谈论有关促进开源项目的更多信息。 除他以外,还有JS开源的许多其他重要人物:从Ryan Dahl(Node.js,Deno)到Michel Weststrate(MobX,Immer)。 有关其报告主题的所有详细信息都在网站上 ,可以在该网站上购买票,然后逐渐变得更加昂贵。

Source: https://habr.com/ru/post/zh-CN444652/


All Articles