ฝึกพูดภาษาอังกฤษด้วยเทคนิค Shadowing จากวิดีโอ: 7 Programming myths that waste your time

กำลังสร้างบทเรียน...
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.

คำศัพท์และข้อสังเกตด้านการพูดสำหรับบทเรียนนี้

วิดีโอนี้มี 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.
  • server /ˈsɝvɚ/ (คำนาม) — เซิร์ฟเวอร์. A program that provides services to other programs or devices, either in the same computer or over a computer network.
  • dinosaur /ˈdaɪnəsoɹ/ (คำนาม) — ไดโนเสาร์. Those animals of the clade Dinosauria that existed during the Triassic, Jurassic and Cretaceous periods and are now extinct.
  • 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.
  • encourage /ɪnˈkʌɹ.ɪd͡ʒ/ (คำกริยา) — ให้กำลังใจ, ส่งเสริม. To mentally support; to motivate, give courage, hope or spirit.
  • chase /t͡ʃeɪs/ (คำกริยา) — กวด. To follow at speed.
  • architecture /ˈɑː.kɪˌtɛk.t͡ʃə/ (คำนาม) — สถาปัตยกรรม. The art and science of designing and managing the construction of buildings and other structures, particularly if they are well proportioned and decorated.
  • suck /sʌk/ (คำกริยา) — ดูด. To use the mouth and lips to pull in (a liquid, especially milk from the breast).
  • dragon /ˈdɹæɡən/ (คำนาม) — มังกร, นาค. In European mythologies, a gigantic beast, typically reptilian with leathery bat-like wings, lion-like claws, scaly skin and a lizard-like body, often a…
  • layer /ˈleɪ̯ɚ/ (คำนาม) — ชั้น. A single thickness of some material covering a surface.

การออกเสียงที่ควรระวัง

ผู้พูดใช้รูปย่อและรูปลดเสียง 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 เป็นพิเศษ

ไวยากรณ์ในวิดีโอนี้

โครงสร้างที่ผู้พูดใช้บ่อยที่สุด พร้อมคำพูดจริงจากวิดีโอ:

โครงสร้างในวิดีโอ
Present perfect have/has + กริยาช่อง 3 — เหตุการณ์ในอดีตที่ยังเกี่ยวข้องกับปัจจุบันI've spent · have done · I've been
Relative clauses who / which + อนุประโยค — ข้อมูลเพิ่มเติมเกี่ยวกับคนหรือสิ่งของJavaScript, which is · yourself, which means · slower, which is

เทคนิค Shadowing คืออะไร?

Shadowing เป็นเทคนิคการเรียนรู้ภาษาที่ได้รับการรับรองทางวิทยาศาสตร์ พัฒนาขึ้นสำหรับการฝึกนักแปลมืออาชีพ วิธีการนี้เรียบง่ายแต่ทรงพลัง: คุณฟังเสียงภาษาอังกฤษจากเจ้าของภาษาและพูดตามทันที — เหมือนเงาที่ตามผู้พูดด้วยช่วงเวลาห่าง 1-2 วินาที การวิจัยแสดงว่าเทคนิคนี้ปรับปรุงความแม่นยำในการออกเสียง ทำนองเสียง จังหวะ การเชื่อมเสียง การฟังเข้าใจ และความคล่องแคล่วในการพูดได้อย่างมีนัยสำคัญ

เทคนิค shadowing: อ่านคู่มือฉบับเต็มทีละขั้นตอน →