跟讀練習: 7 Programming myths that waste your time - 通過影片學習英語口語

選擇練習模式

每種模式都會開啟全屏練習室。

69 句
如果句子過短或過長,請點選 Edit 進行調整。
1
Recently, I unlocked a new achievement in life, a midlife crisis, when I came to the realization that I've spent most of my adult life writing code.
2
And most of that code is total garbage.
3
It's code that never saw the light of a production server and was either abandoned, refactored, or left to rot in the graveyard of GitHub.
4
As I reflected upon this further, I realized that many of the best practices, the hot game-changing frameworks, and the perfect folder structures didn't actually matter to the end user.
5
I wasted countless hours chasing programming dragons that made me feel more productive, but ultimately led nowhere.
6
In today's video, we'll debunk 9 smart ideas that waste your time as a programmer.
7
And for each myth, we'll look at how it lures you in, why it's actually a trap, and most importantly, how to not do the things that I have done.
8
Now, one of the main goals of this channel is to
9
show you the latest tech you need to use to be relevant, but it's actually a myth that you need to use the latest tech to be relevant.
10
In fact, you might even become more hireable by focusing on old dinosaur technologies, like WordPress and PHP still runs most of the web applications out there,
11
Java runs most of the enterprise world, most databases are SQL-based, and C++ runs most of the low-level systems.
12
However, there are shiny new replacements for tech like this, including Next.js, Kotlin, NoSQL, and Rust.
13
And the lure is a massive feeling of FOMO if you're not mastering the bleeding edge of these so-called superior technologies.
14
To be clear, I'm not discouraging you from learning these, they're awesome, but it's important to understand that most of the real world,
15
where the jobs exist, are not going to change their dinosaur tech stacks anytime soon.
16
The critical banking systems still run on COBOL, and Java will still be powering 3 billion devices long after everybody watching this is dead.
17
Most CTOs are smart enough to know that if it ain't broke, don't fix it.
18
Here's a real-life example.
19
A few years ago, engineers from Twitter released a hot new database called Fauna.
20
It was a pretty solid product and I even made a video about it, but the technology was proprietary, VC-funded, and like most startups, the business failed recently.
21
They have no choice but to shut down their servers, and if you were an early adopter, you're now screwed, and would have been much better off with a boring SQL database.
22
Adopting tech too early is one thing, but adhering to programming dogma can waste even more time.
23
The problem with programming is that there are many different ways to solve the same problem, but some people out there believe that there's only one true way to write code.
24
Some common cults out there include the object-oriented purists and the functional programming extremists.
25
I've been a member of both cults and have learned a lot from them, but dedicating your entire life to just one of them is a waste of time.
26
I mostly code in JavaScript, which is a multi-paradigm language that can satisfy all of these cults.
27
In 2018, functional programming was having a renaissance in web development.
28
Back then, if you used classes in your code, you were literally Hitler, and I found myself bending over backwards to try to do everything in the most functional way possible.
29
No mutable state and higher order functions everywhere.
30
But a few years later, after the spell wore off, I eventually realized that classes can be pretty useful, and my code today often includes a combination of things I've learned from both of these cults.
31
But another time waster to watch out for is Clean Code, which comes from a legendary book written by Uncle Bob Martin known as the Handbook for Agile Software Craftsmanship.
32
Most of the advice in this book is great.
33
Use meaningful names, write small functions, use consistent formatting, and so on.
34
But some of the advice is a little more nuanced, like the dry principle of don't repeat yourself, which means you shouldn't duplicate or write the same code over and over again.
35
And on the surface, that seems like a good idea.
36
But also when you try too hard to keep things clean, you might end up with an endless layer of wrappers, interfaces, and pointless indirection.
37
It's paralysis by analysis, and you end up spending more time refactoring than building actual features that people want.
38
I think a better acronym would be RUG, repeat until good.
39
Duplicate code at first and then pull it into a single abstraction after the repetition becomes painful.
40
Clean code also recommends test-driven development, and testing can be extremely valuable, but it's a myth that 100% test coverage means that your code is well protected.
41
Your boss, who has no programming experience, is likely a big fan of code coverage tooling
42
that will show how much of your source code is executed when a test suite is run.
43
It's interesting, but optimizing for 100% coverage is often a huge waste of time
44
and can often be misleading because high coverage does not equal high quality.
45
Optimizing for coverage encourages developers to write pointless tests that just touch lines and not catch real bugs.
46
And even worse than wasting time, it provides a full sense of security.
47
And then on top of that, it makes your CI builds even slower, which is going to cost you more money.
48
When it comes to test coverage, it's quality, not quantity, that matters.
49
But one thing that truly must matter is performance.
50
Well, actually, it's a myth that you should always optimize for performance.
51
Yet another time waster is benchmarking and optimizing code that just doesn't run at the scale to justify those optimizations.
52
It's far more important to make sure that your code is correct
53
and then only optimize for performance when it becomes painfully obvious that your code sucks in production.
54
On a similar note, you also don't need to optimize your cloud infrastructure like you're about to scale like Facebook.
55
Like, I used to think that I needed this complex, serverless, microservice architecture with global sharding and edge caching, but it turns out that one small VPS is perfectly fine for my five users.
56
Then finally, that brings us to the elephant in the room, the myth that AI is about to replace all programmers soon.
57
There's some awesome AI code writing tools out there, but it's becoming more and more clear that many programmers are now wasting a bunch of time relying too much on AI.
58
For example, Claude Sonnet 3.7 is really good at writing code, but it's also notoriously verbose.
59
You might ask it to build a simple website, and it'll just randomly engineer some new JavaScript framework from scratch.
60
And because you forgot how to write code, you'll just approve it and move on with your life.
61
AI programming tools are both the greatest productivity booster I've ever seen in my life, but when used improperly, they can also be the biggest time waster.
62
The key to success is to have a solid foundation in problem solving, and you can start building that foundation for free today thanks to this video's sponsor, Brilliant.
63
A hard truth is that code is useless if you don't understand the math and computer science behind it.
64
Brilliant helps you learn these concepts quickly by providing short, fun, interactive lessons, which is a method proven to be six times more effective than watching video lectures.
65
But most importantly, you'll build critical thinking skills through problem solving, not memorizing.
66
Before you try to jump into vibe coding, I'd highly recommend taking their thinking and code course to build a timeless problem solving foundation, where you'll learn how to actually think like a programmer.
67
Try everything Brilliant has to offer for free for 30 days by visiting brilliant.org slash fireship
68
or scan the QR code on screen and get 20% off an annual premium subscription.
69
Thanks for watching and I will see you in the next one.

下載應用

流利口語所需的一切

AI 發音評分逐句打分
音標練習掌握每個音
詞彙學習建立你的詞庫
詞彙遊戲邊玩邊學

同頻道

FOR YOU

推薦影片

本課的詞彙與口語要點

這段影片共有 69 個句子、1366 個單詞可供跟讀。 講話部分時長為 6:18。 說話人語速較快,每分鐘約 217 個詞,會出現較多連讀和弱讀。 只有 80% 的單詞屬於英語最常用的 3,000 詞,詞彙難度較高。

影片中的重點詞彙

影片中 15 個不太常見的單詞,附發音和釋義:

  • myth /mɪθ/ (名詞) — 迷思. A traditional story which embodies a belief regarding some fact or phenomenon of experience, and in which often the forces of nature and of the soul are…
  • solve /sɒlv/ (動詞) — 解決 /解決. To find an answer or solution to a problem or question; to work out.
  • programmer /ˈpɹoʊɡɹæmɚ/ (名詞) — 程式設計師 /程式設計師, 程式員 /程式員. One who writes computer programs.
  • database /ˈdeɪtəˌbeɪs/ (名詞) — 資料庫 /資料庫. A collection of (usually) organized information in a regular structure, usually but not necessarily in a machine-readable format accessible by a computer.
  • functional /ˈfʌŋkt͡ʃənəl/ (形容詞) — 功能的. In good working order.
  • server /ˈsɝvɚ/ (名詞) — 伺服器 /伺服器, 伺服器. A program that provides services to other programs or devices, either in the same computer or over a computer network.
  • framework /ˈfɹeɪm.wɜːk/ (名詞) — 骨架, 框架. A support structure comprising joined parts or conglomerated particles and intervening open spaces of similar or larger size.
  • importantly /ɪmˈpɔɹ.tənt.li/ (副詞) — 重要的是.... Used to mark a statement as having importance.
  • dinosaur /ˈdaɪnəsoɹ/ (名詞) — 恐龍 /恐龍. Those animals of the clade Dinosauria that existed during the Triassic, Jurassic and Cretaceous periods and are now extinct.
  • duplicate /ˈd(j)uː.plɪˌkeɪt/ (動詞) — 複製 /複製. To make a copy of.
  • consistent /kənˈsɪs.tənt/ (形容詞) — 一貫的 /一貫的. Of a regularly occurring, dependable nature.
  • format /ˈfɔːɹ.mæt/ (名詞) — 格式, 開本 /開本. The layout of a publication or document.
  • lesson /ˈlɛs.ən/ (名詞) — 課業 /課業, -課 /-課. A section of learning or teaching into which a wider learning content is divided.
  • cloud /ˈklaʊ̯d/ (名詞) — йүн, 雲 /雲. A visible mass of water droplets suspended in the air.
  • infrastructure /ˈɪnfɹəˌstɹʌkt͡ʃə/ (名詞) — 基礎設施 /基礎設施. An underlying base or foundation for a building, organization, or system.

影片中出現的短語動詞

  • come from (動詞) — 來自 /來自. To have as one's origin, birthplace or nationality.
  • end up (動詞) — 到達. To bring to a conclusion.
  • look at (動詞) — 觀察 /觀察, 看. To observe or watch.
  • turn out (動詞) — 原來 /原來. To end up; to result.

需要注意的發音

說話人用了 24 次縮略和弱讀形式,例如 don't, I've, you'll。請按聽到的簡短形式來說。

  • “th” 音: myth /mɪθ/, mathematics /mæθ(.ə)ˈmæt.ɪks/
  • “sh” 和 “zh” 音: subscription /səbˈskɹɪpʃən/, realization /ˌɹɪə.laɪˈzeɪ.ʃən/, optimization /ˌɑptəmaɪˈzeɪʃən/, cache /kæʃ/, benchmark /ˈbɛn(t)ʃmɑːk/
  • 長單詞——注意重音位置: importantly /ɪmˈpɔɹ.tənt.li/, infrastructure /ˈɪnfɹəˌstɹʌkt͡ʃə/, superior /sʊˈpɪɹ.i.ɚ/, architecture /ˈɑː.kɪˌtɛk.t͡ʃə/, legendary /ˈlɛd͡ʒ.ənˌdɛɹ.i/

如何用這段影片練習

  1. 先完整聽一遍影片,不要開口,記下不認識的單詞。
  2. 先用 0.75 倍速逐句跟讀,熟練之後再回到正常速度。
  3. 錄下自己的聲音並與原聲對比,特別注意 myth, solve, programmer 這類單詞。

影片中的語法

說話人最常用的結構,並附上影片中的原話:

結構影片中的用法
現在完成時 have/has + 過去分詞 — 過去發生但與現在仍有關聯的事I've spent · have done · I've been
定語從句 who / which + 從句 — 補充說明人或事物JavaScript, which is · yourself, which means · slower, which is

什麼是跟讀法?

跟讀法 (Shadowing) 是一種有科學依據的語言學習技巧,最初開發用於專業口譯員的培訓,並由多語言者Alexander Arguelles博士普及。這個方法簡單而強大:您在聽英語母語原聲的同時立即大聲重複——就像是一個延遲1-2秒緊跟說話者的影子。與被動聽力或語法練習不同,跟讀法強迫您的大腦和口腔肌肉同時處理並模模擬實的講話模式。研究表明它能顯著提高發音準確性,語調,節奏,連讀,聽力理解和口語流利度——使其成為雅思口語備考和真實英語交流最有效的方法之一。

影子跟讀法: 閱讀完整分步指南 →