.NET专家Dino Esposito:“不要成为下坡火车上的乘客”

Dino只来过明斯克一次,我们设法在他为.Net-chikov进行的讲座之间与他进行了交流。 我们决定不再陌生,并与Dino不仅谈论工作,还谈论书籍,未来以及40岁以后的生活。


图片

迪诺,您最近发行了新书《 Programming ASP.NET Core》 告诉我们为什么我们应该阅读它?

我将简要介绍一下:这是另一本典型的技术书籍。 但是其中的每个问题都是在现实世界中考虑的,问题并没有脱离现实。 我之所以这样写,是因为盲目遵循理想不是我的食谱。 谁支配他们无关紧要:Microsoft,社区中的同事或其他任何人。 我重新检查了一切。 也许是因为我是一个古老而明智的怀疑者(笑)。

图片

因此,我检查了我在本书中写的所有内容,包括所有的技术细节和术语。 我没有使用Core,但我编写了演示程序,试图从生产中成为一个人。 我想我做到了:这本书中的每条建议都是我的经验,它有助于解决现实中人们可能遇到的问题。

您有很多书籍(约15本),还有技术文章。 您如何使用这种方法进行管理?

顺便说一句,我经常不得不回答这个问题。 人们不相信我仍然可以工作,他们认为这是我的掩护。 这在一定程度上是正确的。 因为我不在办公室工作。 我不是开发人员或架构师,而是顾问。 因此,我不忙于全职。 这是我有意识的选择。 我从未想过要深入研究这些过程。

现在,如果我有第二人生,我肯定会全职工作。 但是我和其他人一样,只有一个人,因此我写书并享受它。

您提到您是一名顾问。 您的名字与许多公司和项目相关。 您如何与JetBrains和Microsoft合作?

好吧,在微软,我不再工作了...

怎么了

因为Microsoft将我所做的事情外包了。 我和他们有合同,我得到了薪水。 但是自从我们上一次合作以来已经过去了大约五年。

如果突然看起来如此,这并不会让我感到不安。 事实是,在过去10到15年中,发生了很多变化。 首先,您需要公司中的联系人,需要联系,您正在寻找可以写信以解决某些问题或获得一些演示的人员。 如今,许多事情都是开放的,代码是开放的,如果您自己了解主题中的某些内容,您不再需要与其他人见面。

我现在要说一句奇怪的话,但是我从未去过Redmond或Seattle,也从未去过Microsoft在美国的办公室。 我什至从未参加过Microsoft MVP峰会。 主要是因为我有太多事情要做。 但是现在我要去顶峰了,以比喻的方式说,我要吃得足够多,然后再减掉多余的磅(笑)。

JetBrains有一个不同的故事。 我们有合同。 但是,实际上,我按需工作。 他们有9至5在办公室的全职员工。他们写文章,在会议上讲话。 我也写文章,有时拍摄视频,进行网络研讨会。 但是-根据要求。

也就是说,不是全力以赴吗?

这可能看起来很奇怪或不寻常,因为这不是在采访中通常所说的。但是要付出数年的代价。 这是人的本性,无事可做。 当您用尾巴越过40马克时,您的大脑开始变得懒惰。 创意无处不在,您不再需要即时掌握所有内容,要了解某些东西,您需要花费更多的时间。 当然,有个好消息:您可以通过经验来弥补这些缺点,您可以看到全局,您是一个很好的讲故事的人。 但是,要从头开始创建一些东西-不,不要在40岁以后。例如,看看伟大的科学家。 最好的发现是在他30岁左右时做出的。

现在,在我这一生的这段时间里,对我来说,帮助某人找到更好的解决方案,推荐一些东西,而不是自己创造一些东西,变得更加容易和有效。

图片

您在建筑领域有很多工作。 您认为什么样的看起来像是一个很酷的现代Web应用程序? 他们将在5-10年后发生什么?

哦,直到最近我还是很难回答,但现在我知道了答案。 今年,微软宣布了Blazor内部项目。 甚至描述也听起来很有希望。 这是一个熟悉的html和C#,可以在Web汇编中进行编译,并且可以在任何浏览器中使用。 最重要的是,这是浏览器中的C#代码。 我认为这是Silverlight或其外观。

如果我们谈论尚不存在的东西以及五年内将达到顶峰的东西,那么我将命名这个特定领域-一个可以编译和转换的代码。 当然,也许有更好的方法将JavaScript转换为HTML或将TypeScript转换为JavaScript,但是使用Blazor转录C#并开始在浏览器中使用WebAssembly ...听起来更好,而且确实具有创新性。

那么安全性呢?

如果我们仍在谈论Blazor,则可以找到一种将数据传输到Blazor并对其进行操作的方法。 我想这更多是关于UI的数据。 从本质上讲,这在某种程度上是Microsoft的Angular。

Angular,React和今天工作正常; 它们有许多HTTP服务器,并且可以处理请求,而不是HTML和TypeScript。 从这个意义上讲,它们将保留与Blazor和MVC相同的方法,并在WebAssembly中进行编译,以便应用程序的表示层(用Blazor编写)仅生成HTML显示,并且所有敏感逻辑都在服务器端执行。

在我的梦中,所有这些曾经变成了现实。 然后,您可以在网络上编写Windows应用程序。 在任何平台上。

图片

前景广阔。 现在怎么办 一个很酷的现代Web应用程序应该是什么样?

现在,后端取决于您的目标。 我看到很多使用Angular的公司,而且有多少次我没有问为什么,答案从未令我满意。 我相信他们可以不用Angular就能做到。 而且他们应该,因为Angular使您不断地对其进行研究,所以它一直在变化。 要使用它,您必须具有非常特定的开发人员技能。 相反,如果我运行MVC,则可以用Java,Java堆栈或Microsoft堆栈(甚至是PHP)编写。 也就是说,如果我在Angular上工作,我只会认识他。 恐怕和他在一起,我们都是下坡火车的乘客。 它肯定会在2或3年后消失。 您需要花时间为另一趟火车买票。

文章作者:Ksenia Rabchinskaya

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


All Articles