跟讀練習: Creator of C# and TypeScript: "AI will NEVER Replace Coders, Here's Why" | Anders Hejlsberg - 通過影片學習英語口語
選擇練習模式
每種模式都會開啟全屏練習室。
215 句
如果句子過短或過長,請點選 Edit 進行調整。
1
Will AI replace software engineers?
2
I am highly skeptical.
3
Who's going to make the AI?
4
AI is not going to innovate.
5
Someone has to design the CPU, the operating system.
6
AI is not going to do that.
7
What are your opinions on vibe coding?
8
That doesn't really bring a lot to the table anyway.
9
That code has to come from somewhere.
10
It's not all going to be generated by AI.
11
When people are learning to code, what are some common mistakes you see people make?
12
Not spending enough time.
13
How this industry makes progress.
14
What was the story of you creating C Sharp?
15
Well the story probably starts like with my Today I'm sitting down with Anders Halsberg, a technical fellow at Microsoft, to talk about the future of coding and AI.
16
If you're in computer science or are a tech beginner, you need to pay attention.
17
Because Anders is not just a tech leader, but he is the literal creator of programming languages C sharp and TypeScript.
18
And so when he talks about AI and coding, he is speaking from decades worth of experience.
19
And he dispels a lot of the lies and nonsense people have been spewing about AI.
20
Plus, if you want to succeed and actually get ahead of most developers, he shares some crazy behind-the-scenes stories from building C Sharp and TypeScript,
21
and I am confident that will change the way you think about coding projects going into the future.
22
So a lot of value to unpack in this video, and let's get to it right away.
23
In the world of AI that we live in today, a lot of people are even questioning, is it worth learning how to code?
24
Oh, I absolutely think it's worth learning how to code.
25
Programming languages and code is how AI expresses itself.
26
And there's a whole different world from AI below
27
that has to exist that AI assumes the existence of in the code that it generates.
28
That code has to come from somewhere.
29
It's not all going to be generated by AI.
30
What are your opinions on Vibe coding is going to replace coders?
31
I am highly skeptical.
32
For a lot of stuff that is rote, how many times can you write this to-do list app?
33
AI in its training set has seen it a gazillion times, so it can riff over that.
34
And it can actually get more and more creative now.
35
But when it comes down to business logic or you've got to invent something, that's how this industry makes progress, right?
36
That's not going to come from AI.
37
True, true.
38
Like understanding the fundamentals.
39
Yesterday, I got the opportunity to have a quick chat with Satya.
40
I had asked him beginner level skills people need to know when they're getting into tech.
41
He mentioned understanding the architecture.
42
That's something AI can help you generate the code, but it won't do the fundamental design, which comes from the human mind.
43
And you designed languages such as C-sharp and TypeScript, and were very cognizant what problems you were trying to solve.
44
Rewinding the clock a little bit, what was the story of you creating C Sharp?
45
Well, the story probably starts like with my previous endeavor there at a company called Borland, where I wrote Turbo Pascal and then worked also as the architect of a product called Delphi.
46
This was all about making programmers more productive, rapid application development, and we competed with Microsoft's marquee product, Visual Basic.
47
Right.
48
And, you know, if you can't beat them, join them.
49
So I joined Microsoft in 96.
50
There was this thing called Visual Basic that was super easy to write apps in.
51
And then there was this thing called C++ that is where all the expressiveness and performance was available.
52
And people really wanted a little bit of both.
53
And so we set out to create that sort of best of both worlds, the best of both worlds, you know, something that gave you the power and expressiveness of C++,
54
but with the ease of use of Visual Basic.
55
With a bunch of modern infrastructure behind it, called .NET.
56
Are there any examples of features of the language that did both so you could explain to us?
57
Things like properties and events.
58
There were object-oriented programming languages already, but everyone was working with this notion of properties on their objects and events on their objects.
59
But no programming languages had given first-class treatment to them before.
60
Do you have any example of a great project to create with C-sharp?
61
Any kind of web backend or REST API or write a game.
62
I mean, like Unity, right?
63
Like a third of the world's C-sharp programmers write games.
64
It almost doesn't matter what you write.
65
Once you start writing code, you start understanding how programming languages work and how to build data structures and how to get performance, how to measure performance.
66
When you're learning, it's less important exactly what you write, but just the fact that you're writing.
67
You could go write a framework or set a collection classes if you wanted to, it doesn't matter.
68
Yeah, and did you think that C Sharp would be as big as it got to today?
69
No, of course not.
70
You never know, right?
71
I mean, and yes, C Sharp, I am very proud that it stood the test of time.
72
In fact, I was talking to someone earlier today
73
that it's 25 years since we released C Sharp at the 2000 Professional Developers Conference.
74
So 25 years, that's a long time for something to still be around and in widespread use.
75
Fast forwarding a little into your journey.
76
So TypeScript, right?
77
Can you give us the story of that and what problem you were trying to solve?
78
Really quick, as a software engineer, you would think writing code is what slows me down.
79
But it's actually the small tasks that pile up the most.
80
That's when I started using Superhuman Mail, which manages my inbox and keeps me organized without all the back and forth.
81
And now I can connect it to tools like ChatGPT or Claude and actually manage my inbox from there.
82
Let your AI agents run your inbox and calendar.
83
Let me show you how I use this.
84
I connected Superhuman Mail to Claude, and now I can run everything from here.
85
One thing I use a lot is cross-tool workflows.
86
For example, I can ask it to look through recent emails and summarize anything important, then send that straight into Slack.
87
Or after meetings, I can have a draft of follow-ups based on my notes without opening my inbox.
88
It removes a lot of the small tasks that usually add up.
89
If you're afraid of your email sounding too AI-generated, you can insert rules just using no em dashes
90
or ellipses to ensure you're all good to go and that it is in your tone of voice.
91
The beauty is these rules will apply every time without having to edit each time to match your voice and tone.
92
The biggest game changer for me was the AI to help me actually prepare for the day.
93
It can collect all the tasks and insights that I have and help me create a to-do list.
94
Set it up once and stay in control all year.
95
Sign up for a superhuman mail today and get one month free with my link.
96
Make sure to sign up for the business plan if you want to connect CLAW, ChatGPT, and other AI tools.
97
And now back to the video.
98
Well, Timescript, the story probably starts about 15 years ago when a team at Microsoft, the Outlook team, came to us, and I was doing C Sharp at the time,
99
and they came to us and they asked, hey, could you guys productize this thing called Script Sharp?
100
And I'm like, what's Script Sharp?
101
Well, it's this thing that takes C Sharp and cross compiles it to JavaScript.
102
Okay.
103
And I'm like, okay.
104
And why would someone want to do that?
105
Well, we do that because that's the only way that we can get great tooling and scalability for a large project.
106
And we're writing this enormous app in JavaScript because at the time,
107
everyone was moving to the browser and JavaScript as the true cross-platform solution.
108
You know, there was like a whole diversity of device form factors coming out like phones and tablets and the PC wasn't,
109
you couldn't just assume that it was going to run on a PC.
110
And so browser was it.
111
And HTML5 had happened and you could actually write decent UI, right?
112
And so people were just writing enormous apps in JavaScript and having a very hard time doing it.
113
And this team had chosen to solve the problem by writing the app in C Sharp and cross-compiling it to JavaScript.
114
And I'm like, but that's crazy.
115
Surely you're not going to write best of breed JavaScript apps by writing them in C Sharp.
116
Wouldn't you rather write them in JavaScript? what is it about JavaScript that's broken and can we fix it?
117
And so that was sort of the genesis of TypeScript, fixed JavaScript, if you will.
118
Make it usable for large scale projects and add those things to the language
119
that are necessary such that we can build great tooling on top.
120
And in particular, that meant adding a static type system to the language.
121
We then enable the ability to write great tool that you see in say, Visual Studio Code and our language.
122
So more like the developer experience exactly
123
because that's ultimately where the productivity comes from right it's like having things like statement completion
124
and code navigation and seeing red squigglies when you make a mistake
125
and whatever that's what developers love
126
that stuff yeah once you give it to them you can never take it away again yeah
127
so python developers might disagree slightly but well they might
128
but you know what i don't know that people are writing million line apps or programs in Python to the same extent.
129
Once something gets big enough, you really do need these things.
130
That readability in TypeScript.
131
Yeah.
132
As the creator of C-sharp and TypeScript, when people are learning to code, what are some common mistakes you see people make?
133
Not spending enough time learning the basic principles and really sort of understand what is it I'm doing?
134
What is a variable really?
135
And what is an array?
136
And what is a data structure?
137
And how do pointers work?
138
Once you grok
139
that, then it doesn't really matter what language you're in you
140
know that's just a veneer on top of the semantics right
141
but really understanding the semantics is super important because
142
that allows you to think in a more abstract fashion
143
if you don't get that deeper understanding of it then you're sort of thinking at
144
that veneer syntactic level of what do i have to write
145
but you're not really understanding why you're writing it interesting
146
if i'm a beginner in tech and i wanted to get hired at a big tech a company like Microsoft, what is your number one piece of advice?
147
Write a bunch of open source code, put it on GitHub, that becomes your resume.
148
There's nothing like demonstrating the ability to code.
149
And a fantastic way to demonstrate that is by building stuff and putting it out in the open.
150
Yeah.
151
So don't sit on it, share it.
152
Yeah.
153
And particularly with AI in the world that we live in, are there certain problems that you would choose to tackle?
154
It depends on what kind of programming excites you, because there are many different things you could do.
155
Some people like building apps, the UI aspect of it
156
and the experience of the app other people like systems like stuff
157
that doesn't have a ui at all or
158
but it's like they're into making it perform incredibly well
159
and you know that some people like the theory of it all right and
160
so there are many different ways you can dive into it
161
i mean for me i've always been fascinated with writing efficient data structures
162
and understanding how they work how does a hash table work?
163
Why does it work?
164
And how do I make it more efficient?
165
How can I structure the data in my program the right way?
166
Because ultimately, that's where the performance comes from.
167
Right, right.
168
Exactly.
169
Exactly.
170
It's like the small design choices that affect so much.
171
And do you think a computer science degree is worth it?
172
Oh, I definitely think so.
173
You know, I was sort of somewhat self-taught because at the time I went to college back in Denmark, I grew up in Denmark,
174
The engineering school I went to didn't even have computer science yet.
175
They started it the following year, right?
176
But I was like in the late 70s.
177
You could go to the other university for computer science, but I was doing engineering.
178
And so a lot of things I sort of had to learn by myself by doing.
179
Boy, I could have saved a lot of time by getting an education
180
that allows you to understand like the history of programming.
181
And like we've talked about here, like what is a programming language?
182
What are the principles of programming?
183
What is data structures?
184
What are databases?
185
What are operating systems? like all of this stuff it certainly
186
helps to have a passion for it you know for me i sometimes joke i never had a real job
187
because i was always doing my hobby coding was always my hobby right then i was fortunate yeah
188
if you aim to do your best work you there's got
189
to be a bit of passion in it you know right for sure
190
and one final question will ai replace software engineers no who's gonna make the AI, right?
191
And who's going to make the programming languages that the AI expresses itself in?
192
And who's going to write the frameworks that the AI talk?
193
I mean, no, AI is an accelerant and it's going to change the way that we do things.
194
And it's going to remove a lot of grunt work
195
that we don't need to do anymore because AI can help us do it, but it'll allow us to focus more on the creative side because AI is not going to innovate.
196
It's not going to like, Bing, have this crazy idea I had in the shower this morning, you know, AI doesn't work that way.
197
Right, right.
198
So right now, as a software engineer, we code five years from now when AI is more into the workflow.
199
More pervasive.
200
What do you see software engineers do?
201
AI will be able to do a lot of that grunt work.
202
But like I said, there's still the deeper side of the science.
203
These frameworks that you have to target, someone has to design the CPU, someone has to design the operating systems.
204
There's plenty left.
205
Someone has to get the right idea
206
and devise the right data structure for sharding this app so our startup can grow fast or what have you, right?
207
AI is not going to do that, but it's going to help you with these like, yeah, okay, the grunt work of writing a test for a pull request is fine.
208
That doesn't really bring a lot to the table anyway.
209
So yeah, hand that off.
210
Sweet.
211
Well, that's about all I have in this video.
212
I really hope that you guys enjoyed it.
213
And if you did, make sure to hit the like button and subscribe if you haven't already.
214
If you're interested in my absolutely free tech newsletter, link for that down below in the description.
215
And if you're interested in watching the conversation I had with the CEO of Microsoft, Satya Nadella, you might want to click right here.
同頻道
FOR YOU
推薦影片
背景與上下文
在今天這個AI日益發展的時代,人們對未來的程式設計及其與人工智慧的關係產生了諸多疑問。安德斯·赫爾斯伯格(Anders Hejlsberg)作為C#和TypeScript程式語言的創始人,擁有數十年的豐富經驗,他在一次訪談中對此發表了獨到的見解。他堅信,儘管AI在技術領域正在取得進展,但真正的程式設計創造力和創新來自於人類的思維,而不是機器。通過他的故事和經驗,學習者可以更深入地理解程式設計的基礎和未來的方向。
日常交流的五個常用短語
- AI將不會取代程式設計師。 - 這個觀點提醒大家,儘管AI能夠處理一些程式碼生成,但它無法真正創新。
- 程式語言是AI表達自我的方式。 - 理解這一點有助於學習者認識到,程式碼在AI背後扮演的核心角色。
- 基礎邏輯和設計來自人腦。 - 學會重視邏輯思維和設計思路,是程式設計成功的關鍵。
- 學習程式設計是絕對值得的。 - 安德斯強調了程式設計技能在未來發展的重要性。
- 人類的經驗是不可替代的。 - 他提醒我們,許多行業進步依賴於人類的獨創性和實踐。
逐步跟讀指南
為了有效掌握影片中的對話內容,以下是一個逐步跟讀的練習建議:
- 首先,觀看影片並聽取安德斯的講話,注意聽他使用的短語和表達方式。
- 接下來,選擇五個日常交流的常用短語,上面提供的短語是很好的起點。
- 使用看YouTube學英語,暫停並重復他的話,確保模仿語音語調。儘量做得像他一樣流利。
- 在跟讀時,嘗試理解這些表達的意義,這將幫助你更好地記憶和運用這些短語。通過shadow speak的形式,記錄自己的跟讀,對照影片查詢不足之處。
- 最後,利用shadowing site進行反覆練習,鞏固所學的語句和表達,逐漸提高自己的說英語水平。
通過這一練習,你不僅可以提升英語口語能力,還能加深對程式設計和AI之間關係的理解,為未來的技術學習做好準備。
影片中的語法
說話人最常用的結構,並附上影片中的原話:
| 結構 | 影片中的用法 |
|---|---|
| 現在完成時 have/has + 過去分詞 — 過去發生但與現在仍有關聯的事 | has seen · i've always been fascinated · we've talked |
| 被動語態 be + 過去分詞 — 強調發生了什麼,而不是誰做的 | be generated · been fascinated |
什麼是跟讀法?
跟讀法 (Shadowing) 是一種有科學依據的語言學習技巧,最初開發用於專業口譯員的培訓,並由多語言者Alexander Arguelles博士普及。這個方法簡單而強大:您在聽英語母語原聲的同時立即大聲重複——就像是一個延遲1-2秒緊跟說話者的影子。與被動聽力或語法練習不同,跟讀法強迫您的大腦和口腔肌肉同時處理並模模擬實的講話模式。研究表明它能顯著提高發音準確性,語調,節奏,連讀,聽力理解和口語流利度——使其成為雅思口語備考和真實英語交流最有效的方法之一。















