ฝึกพูดภาษาอังกฤษด้วยเทคนิค Shadowing จากวิดีโอ: 12 Important Concepts In the Age of AI Software Development

เลือกโหมดฝึก

แต่ละโหมดจะเปิดห้องฝึกแบบเต็มจอ

164 ประโยค
หากประโยคสั้นหรือยาวเกินไป กดที่ Edit เพื่อปรับแก้
1
Hey guys, so obviously things are changing.
2
They have changed a lot over the past couple years, especially the past year, and it's only speeding up.
3
And we've gone from kind of a standard workflow of writing
4
code to using different AI tools with more attention on things like planning, reading, reviewing, and testing code.
5
Now with that said, just because you won't be writing as much code anymore, or maybe not even writing any code,
6
it doesn't mean that you shouldn't understand what's going on and what the AI is generating.
7
I think being able to read code is now one of the most important skills.
8
So I think the focus is shifting a bit.
9
Fundamentals like functions, loops, conditionals, data types, that's all still a must.
10
You have to learn those.
11
Without those, you're pretty much going to be lost.
12
But it's less important to memorize every function or method in a language or a library or framework.
13
Most developers were looking that stuff up before anyway.
14
I think what really matters now is why it belongs there, the data that it's working with,
15
and just how it fits into the rest of the project.
16
So in this video, I want to go over the concepts
17
that I think are most important to understand if you're going to be using AI as a developer.
18
And this is not a full lesson on each one.
19
It's more of a checklist of things to pay attention to when AI gives you code.
20
So let's get into it.
21
So before we dive in, this video is sponsored by CodeRabbit.
22
You know that feeling when a PR comes in and there's 47 files changed, GitHub just throws them at you alphabetically.
23
There's no sense of what depends on what, there's no logical order.
24
And now that AI is writing more of our code, these PRs are only getting bigger.
25
So CodeRabbit review was built specifically for this.
26
It reorganizes the diff into groups of related changes with ordered layers
27
so that Foundational stuff like data models come before the code
28
that depends on them and every layer has an AI summary
29
and inline diagrams You can also drop inline comments You can navigate with keyboard shortcuts
30
and you can submit your github review without ever leaving the tab It's also opt -in per reviewer
31
so your teammates who prefer the default github experience can just ignore it entirely
32
And it's free to try right now during early access comment.
33
You can read more about it in the link in the description below.
34
All right, guys, so we're going to cover a bunch of very important concepts, and I'm not going to just define what that concept is, but I'm going to relate it to agentic coding.
35
And of course, these are important regardless, even, you know, long before AI, but I'm going to, like I said, relate them to coding with AI.
36
Now, the first three are very closely related, and they're about the flow of your program.
37
So number one is control flow.
38
And this is the order that your code runs in.
39
So what happens first, what happens next, what happens if something is true, and so on.
40
And this includes things like if statements, loops, try catch blocks.
41
And this matters because AI can generate code that looks clean, but the path through that code could do things like return too early,
42
or maybe it skips validation, or maybe the error handling is in the wrong place.
43
So if you can't follow the flow, then you can't really debug the program.
44
Now, number two, as I said, is related to number one, it's data flow.
45
So data flow is how much, sorry, not how much, but how data moves through your application, and where does it come from, where does it end up,
46
and what changes along the way.
47
So for instance, a very common data flow pattern that we see in is where it starts from a user, right?
48
Usually within a form, within a web page, it gets sent to an API, it gets stored in the database, comes back as JSON, and then it shows up in the UI.
49
Now, this matters because AI might generate multiple files for one feature.
50
And if you can trace the data from that initial user action to the database and back to the screen,
51
that whole feature starts And this is what happens when something goes wrong.
52
So a request fails, a value is missing, a user enters bad data, a database query throws an error.
53
There's a lot of different things obviously that can cause errors and a lot of beginners
54
they only think about the happy path, right?
55
But real software has, it has to handle failure.
56
And AI can generate code that works when everything's perfect, but it all falls apart when something unexpected happens.
57
And I see this over and over again.
58
So you really need to ask, where can this fail?
59
And what happens if it does?
60
And does the user or the developer get a useful message to work with?
61
All right.
62
So you got control flow, data flow, and error flow, So the next one is scope.
63
And scope is where things like variables and functions and other values, it's where they're available in your code.
64
So if a variable is created inside of a specific function, can you use it outside of that function?
65
And the answer is usually no. That's scope.
66
And this matters because AI might create a variable in one place and try to use it somewhere else.
67
Or you might move code around and suddenly something breaks because that variable doesn't exist in that part of the program.
68
this value created where can it be accessed and who's allowed to change it Number five is input and output.
69
I would say most useful pieces of code, they usually take something in and give something back.
70
So if you think about a function, for example, it might take in a user ID and it might return the entire user.
71
An API endpoint might take form data and return a success message.
72
A component might take props and render something on the screen.
73
you can check if the function expects the right arguments, if it returns the right data, and if it fits in with the rest of the app.
74
Number six is state.
75
So state is data that changes over time.
76
And this could be something like a logged in user, a shopping cart, a form input, a loading status, or just data stored in a database.
77
And a lot of bugs happen when the program thinks that the state is one thing, but it's actually something else.
78
So AI might put state in the wrong place, it might it.
79
It might update one thing but forget to update something else.
80
So you want to pay attention to where state lives, who can change it, and what should happen when it changes.
81
Now the next three concepts are closely related to each other
82
and probably the most important in my opinion
83
because they all relate to just how files are created and put together in an efficient way.
84
So number seven, the first one of these three is abstraction.
85
So abstraction is hiding complexity behind something simpler to use.
86
So for example, a function called create user, it might validate input, it might hash a password, save a record to the database, and return the new user.
87
But from the outside, you just see a function called create user.
88
So AI will create abstractions constantly, helpers, services, hooks, middleware, utilities, all that.
89
And good abstraction makes code easier to use and files just to figure out what's happening.
90
So there is a fine line between, you know, too little abstraction and too much.
91
Now, modularity number eight is closely related to abstraction.
92
So once you start hiding logic behind functions and components and services,
93
the next question is where those pieces should live and what each one should be responsible for.
94
So instead of having Routes, controllers, models, components, utilities.
95
I could go on and on.
96
Config files.
97
The idea is simple, though.
98
It's each piece should have a job, right?
99
So you have routes.
100
They handle requests.
101
Controllers or handlers, they decide what happens.
102
Models deal with data.
103
Components deal with UI.
104
Utilities, they handle reusable helper logic.
105
So good modularity makes the code base much easier to navigate,
106
much easier to read, much easier to have multiple team members work on it and so on.
107
Now, number nine, architecture is the overall structure of the application.
108
So where does the front end live?
109
Where does the back end live?
110
The database?
111
How do they communicate?
112
What files are responsible for what?
113
And you don't need to be a software architect, but you should understand the basic shape of what you're building.
114
And this matters because with AI, you need to know where to point it.
115
You know, if you want to add an endpoint, where should that go?
116
If you want to change how data is displayed, is that the front end, is that the back end, or is it both?
117
You don't need every detail memorized, but you should understand the map.
118
So just to kind of recap those three concepts, you have abstraction, which is mostly about simplifying pieces of logic,
119
modularity, which is about organizing those pieces, as a whole and how everything fits together.
120
Now, the reason that this stuff is more important than ever, at least in my opinion, is because AI can generate a lot of code very quickly,
121
but it doesn't always understand the long -term shape of your project, no matter how much context you give it.
122
It might solve the immediate problem, but put the logic in the wrong place or create an unnecessary abstraction, duplicate something that already exists.
123
And that's the difference between agentic coding and vibe coding.
124
is basically saying build this feature and you just accept whatever comes back
125
and just hope it works and doesn't wreck something else.
126
Where a more serious AI workflow is being able to say, you know, this logic belongs in a service, not in a component, or this helper is unnecessary.
127
That's why when I use AI, I use very specific workflows along with skills and agents, sub -agents that let me make all those decisions.
128
I'm going to be using in my next video to really show you what, what I think a good AI workflow looks like.
129
So next we have side effects and side effects are when code changes something outside of itself.
130
So returning a value from a function is one thing, but five other things may happen as a result of that.
131
So things like updating a database, writing to a file, sending an email, modifying state, those can all be side effects.
132
So a function that has no side effects and just simply takes in and give something back, that's called a pure function.
133
And this matters because side effects are where a lot of bugs happen, right?
134
So they make code harder to predict because the function isn't just giving something back, it's changing the world around it in some way.
135
And AI will often mix pure logic and side effects together.
136
So it helps to be able to look at the code and ask, is this just calculating a value or is it changing something somewhere else that I need to know about?
137
Next we have the request response cycle and this one is really geared more toward obviously web development.
138
So in a browser a user will click a button, the browser sends a request, the server receives it, runs some code, maybe talks to a database and then sends a response back.
139
So if you understand that cycle then frameworks like Express,
140
Laravel, Django, Rails or whatever else they start to make a lot more sense and different frameworks have different syntax
141
But a lot of them are solving the same basic problem and doing the same thing, which is receiving a request, doing some work and returning a response.
142
And I would also lump in just like APIs or REST APIs in this as well.
143
So knowing HTTP status codes, knowing the different methods and so on.
144
So next is concurrency.
145
So concurrency is when multiple things are happening during the same period of time.
146
So maybe you have multiple API requests running, users editing data at the same time, background jobs processing, things like that.
147
And this can get tricky because bugs can happen based on timing, right?
148
Something works fine once but breaks when two things happen at nearly the same time.
149
of video conversions, so basically videos to articles, and one job might be processing, another might be waiting, and another might fail,
150
and then another might finish right as the UI is trying to update.
151
So I had a Big issue with that that I worked on for a week straight.
152
So you don't need to be a concurrency expert right away, but you should understand that software doesn't always just run in a perfect neat line.
153
And AI can handle the simple case, but you still need to think about what happens when that timing gets messy.
154
All right.
155
So I know that that was a lot, but the point of this is not to have you master all of this before touching AI.
156
Nobody masters all this overnight.
157
I certainly haven't even come close.
158
The point of this is that there are concepts
159
that you want to keep learning as you build
160
and as you learn because AI can generate code but you still need to understand the shape of what it's generating.
161
And the better you understand these concepts,
162
the better you can just getting AI to write code,
163
but knowing whether that code actually makes sense.
164
All right, so hope you guys enjoyed it, and I will see you next time.

ดาวน์โหลดแอป

ทุกอย่างที่ต้องใช้เพื่อพูดได้คล่อง

AI ให้คะแนนการออกเสียงให้คะแนนทุกประโยค
ฝึก IPAเชี่ยวชาญทุกเสียง
คำศัพท์สร้างคลังคำของคุณ
เกมคำศัพท์เล่นไปเรียนไป

ช่องเดียวกัน

FOR YOU

วิดีโอแนะนำ

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

บทเรียนฝึกพูดระดับ B2 นี้ใช้วิดีโอ “12 Important Concepts In the Age of AI Software Development” เป็นสื่อ คำที่ถูกพูดซ้ำบ่อยที่สุด: code, function, happen, user, flow วิดีโอนี้มี 164 ประโยค และ 2352 คำ สำหรับฝึกพูดตาม ช่วงที่มีเสียงพูดยาว 14:00 ผู้พูดพูดด้วยความเร็วเป็นธรรมชาติ ประมาณ 168 คำต่อนาที ใกล้เคียงกับบทสนทนาในชีวิตประจำวัน 84% ของคำอยู่ใน 3,000 คำที่ใช้บ่อยที่สุดในภาษาอังกฤษ ส่วนที่เหลือควรดูไว้ก่อนเริ่มฝึก

คำศัพท์สำคัญในวิดีโอนี้

คำที่ยากที่สุด 15 คำในวิดีโอ พร้อมคำอ่านและความหมาย:

คำศัพท์คำอ่านความหมาย
helper คำนาม/ˈhɛlpɚ/ผู้ช่วย
memorize คำกริยา/ˈmɛm.əˌɹaɪ̯z/จดจำ
depend คำกริยา/dɪˈpɛnd/พึ่ง
reviewer คำนามนักวิจารณ์
shortcut คำนาม/ˈʃɔːtkʌt/ทางลัด
beginner คำนาม/bəˈɡɪnɚ/มือใหม่
syntax คำนาม/ˈsɪn.tæks/วากยสัมพันธ์
hash คำนาม/ˈhæʃ/ความยุ่งเหยิง
query คำนาม/ˈkwɪɹ.i/สอบถาม
lump คำนาม/lʌmp/ก้อน
diagram คำนาม/ˈdaɪ.ə.ɡɹæm/ไดอะแกรม, แผนผัง
calculate คำกริยา/ˈkælkjʊleɪt/คำนวณ
cart คำนาม/kɑɹt/เกวียน, รถ
password คำนาม/ˈpæs.wɜɹd/รหัสผ่าน, รหัส
predict คำกริยา/pɹɪˈdɪkt/ทำนาย

กริยาวลีที่คุณจะได้ยิน

คำศัพท์ความหมาย
come back คำกริยากลับมา

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

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

โครงสร้างในวิดีโอ
Passive voice be + กริยาช่อง 3 — เน้นสิ่งที่เกิดขึ้น ไม่ใช่ผู้กระทำbe lost · is sponsored · was built
Present perfect have/has + กริยาช่อง 3 — เหตุการณ์ในอดีตที่ยังเกี่ยวข้องกับปัจจุบันhave changed · we've gone · haven't even come
Relative clauses who / which + อนุประโยค — ข้อมูลเพิ่มเติมเกี่ยวกับคนหรือสิ่งของabstraction, which is · modularity, which is · thing, which is

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

ผู้พูดใช้รูปย่อและรูปลดเสียง 25 ครั้ง เช่น doesn't, I'm, don't ให้พูดแบบสั้นตามที่ได้ยิน

  • เสียง “sh” และ “zh”: abstraction /æbˈstɹæk.ʃn̩/, shortcut /ˈʃɔːtkʌt/, conditional /kənˈdɪʃ.ə.nəl/, hash /ˈhæʃ/, validation /ˌvæl.əˈdeɪ.ʃən/
  • คำยาว — ลงเสียงหนักให้ถูกพยางค์: concurrency /kəŋˈkʌɹənsi/, developer /dɪˈvɛləpɚ/, unnecessary /ʌnˈnɛs.əˌsɛɹ.i/, conditional /kənˈdɪʃ.ə.nəl/, validation /ˌvæl.əˈdeɪ.ʃən/

เสียงที่คนไทยมักออกเสียงยาก:

  • เสียงท้ายคำ — ออกเสียงให้ครบ ไม่เปลี่ยนเป็นตัวสะกดแบบไทย: memorize /ˈmɛm.əˌɹaɪ̯z/, syntax /ˈsɪn.tæks/, conditional /kənˈdɪʃ.ə.nəl/, hash /ˈhæʃ/, organize /ˈɔɹɡənaɪz/
  • /v/ — ไม่ใช่ /w/ ให้ฟันบนแตะริมฝีปากล่าง: variable [ˈvæɹ.i.ə.bl̩], developer /dɪˈvɛləpɚ/, navigate /ˈnæv.ɪ.ɡeɪt/, validate /ˈvæl.ɪ.deɪt/, validation /ˌvæl.əˈdeɪ.ʃən/
  • /z/ — เสียงก้อง ไม่ใช่ /s/: memorize /ˈmɛm.əˌɹaɪ̯z/, browser /ˈbɹaʊ.zəɹ/, organize /ˈɔɹɡənaɪz/

วิธีฝึกกับวิดีโอนี้

  1. ฟังวิดีโอให้จบหนึ่งรอบโดยยังไม่ต้องพูด แล้วจดคำที่ยังไม่รู้จัก
  2. เริ่มที่ความเร็ว 0.75× พูดตามทีละประโยค แล้วกลับไปใช้ความเร็วปกติเมื่อเริ่มคล่อง
  3. อัดเสียงตัวเองแล้วเทียบกับต้นฉบับ โดยสังเกตคำอย่าง helper, memorize, depend เป็นพิเศษ

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

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

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