Skip to content

Commit c0d2daf

Browse files
committed
add post: english for programmers
1 parent ef0a8f9 commit c0d2daf

File tree

28 files changed

+2550
-79
lines changed

28 files changed

+2550
-79
lines changed
File renamed without changes.

content/posts/2025-09-09_evolution-of-ai-coding.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
+++
2-
date = '2025-09-10T8:00:00+08:00'
2+
date = '2025-09-11T8:00:00+08:00'
33
draft = false
44
title = 'The Evolution of Coding in the AI Era'
55
tags = ['LLMs']
66
+++
7+
78
文章翻译: [The Evolution of Coding in the AI Era](https://thebootstrappedfounder.com/the-evolution-of-coding-in-the-ai-era/)
89

910
## 人工智能时代的编码演变
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
+++
2+
date = '2025-09-10T8:00:00+08:00'
3+
draft = true
4+
title = 'Building REST APIs wiht Python'
5+
tags = ['REST']
6+
+++
7+
Lines changed: 112 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,112 @@
1+
+++
2+
date = '2025-09-11T8:00:00+08:00'
3+
draft = false
4+
title = 'English for Programmers - 01'
5+
tags = ['English']
6+
+++
7+
8+
# Unit 1. Implementing Code
9+
This unit will cover:
10+
- Use technical verbs to **accurately define tasks** and actoins
11+
- Write **commit messages** in the corret Git format
12+
- Confidently **name** the **symbols** used when writing code
13+
- Understand **vocabulary** for **syntax** and programming rule
14+
15+
## vocaluary - action verbs 动词词汇
16+
He **optimised** the queries to improve the response time.
17+
- **optimised**: 提高 (improved)
18+
19+
Can you **implement** the new feature we discussed yesterday?
20+
- **implement**: 实现 (put int action)
21+
22+
The team will **integrate** a third-party API to get real-time data.
23+
- **intergrate**: 整合 (combine)
24+
25+
As our user base grows, we'll need to **scale** our infrastructure.
26+
- **scale**: 扩展 (increase capacity)
27+
28+
Have you had a chance to **refactor** the code yet?
29+
- **refactor**: 重构 (change)
30+
31+
The process it taking too long. How can we **streamline** it?
32+
- **straemline**: 简化 (simplify)
33+
34+
Let's **execute** the script before we go for lunch.
35+
- **execute**: 执行 (run)
36+
37+
The settings haven't been **configured** yet.
38+
- **configured**: 配置 (set up)
39+
40+
> Note: optimise spelling
41+
> British English '-ise' vs. Amercian English '-ize'
42+
43+
## grammar - imperative present tense 语法: 祈使现在时
44+
- Imperative 祈使语气: 用来下达命令、发出请求、给予指示或建议的语气. 核心功能是告诉某人做某事.
45+
- Present Tense 现在时: 这里的"现在时"并不是指描述现在正在发生的动作, 而是指这个动词形式
46+
47+
For readability and consistency in commit messages within a team, Git recommends using the **Impreative Present Tense**.
48+
Git 建议使用祈使命令式编写提交信息, 编写时将其看成给版本控制和其他开发者看的命令.
49+
50+
> Tip: message 应该描述这个修改将实现的功能, 而不是已经编写的功能.
51+
> 下面是一个例子:
52+
53+
| Recommended | Not Recommended |
54+
| :-: | :-: |
55+
| Add new feature for user authentication. Resolve issue with data validation | Added a new feature for user authentication. Resolved the issue with data validation |
56+
57+
> 当编写 imperative 句子的时候, 可以省略 a/an/the
58+
59+
### Keyboard Symbols 键盘符号
60+
想象一下, 你在一个团队中合作, 当他们查看你的代码并给予建议的时候, 某人说:
61+
"Can you try replacing the **asterisk** with an **ampersand** and adding a **tilde** after the **pipe**?"
62+
63+
Me: ???
64+
65+
| Symbol | English |
66+
| :-: | :-: |
67+
| `!` | exlamation mark |
68+
| `#` | hash |
69+
| `^` | caret |
70+
| `&` | ampersand |
71+
| `*` | asterisk |
72+
| `(` | bracket |
73+
| `~` | tilde |
74+
| `\|` | pipe |
75+
| `\` | backslash |
76+
77+
| Symbol | English |
78+
| :-: | :-: |
79+
| `"` | double quote |
80+
| `'` | single quote |
81+
| `/` | forward slash |
82+
| `:` | colon |
83+
| `;` | semicolon |
84+
| `<` | angle bracket |
85+
| `,` | comma |
86+
| `{` | curly bracket |
87+
| `[` | square bracket |
88+
| `_` | underscore |
89+
| `-` | hypen |
90+
91+
1. *Kebab case* is a naming convention where all letters are lowercase and words are sperated by **hypen**.
92+
e.g. `my-variable`
93+
94+
2. *Sanke case* is a naming convention where all letters are lowercase and words are separated by **underscore**.
95+
e.g. `my_variable`
96+
97+
3. Many programming languages ues **single qoutes** or **double qoutes** to denote strings.
98+
e.g. `"my variable"`
99+
100+
4. HTML tags are enclosed in **angle brackets**.
101+
e.g. `<div>`
102+
103+
| 常见命名风格 | 形式示例 | 常见场景 | 特点 / 备注 |
104+
| :-: | :-: | :-: | :-: |
105+
| **camelCase 驼峰式** | `userProfile` | JavaScript 变量、函数名; Java、C# 方法名 | 首字母小写,后续单词首字母大写 |
106+
| **PascalCase 大驼峰** | `UserProfile` | 类名(Java、C#、TypeScript)、组件名(React) | 每个单词首字母大写 |
107+
| **snake\_case 蛇形命名** | `user_profile` | Python 变量/函数名; 数据库字段 | 单词用 `_` 分隔, 全小写 |
108+
| **SCREAMING\_SNAKE\_CASE 全大写蛇形** | `MAX_VALUE` | 常量(C、Python、Java) | 全大写 + 下划线 |
109+
| **kebab-case 烤肉串式** | `user-profile` | URL、CSS 属性、CSS 类名、配置项、文件名 | 单词用 `-` 分隔, 全小写. 不能当变量名(`-` 被视为减号) |
110+
| **Train-Case 标题式 / Header-Case** | `User-Profile` | 文档标题、部分配置(HTTP Header: `Content-Type`) | 类似 PascalCase, 但用 `-` 分隔 |
111+
| **dot.case** | `user.profile` | 部分配置文件、键路径(MongoDB、Elasticsearch) |`.` 分隔单词 |
112+
| **Space Case** | `User Profile` | UI 文本、自然语言 | 单词直接空格分隔(不用于代码)|

public/archives/index.html

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -51,11 +51,14 @@
5151
<span class="max-w-[4rem] md:max-w-none truncate">Home</span></a></li><li class="flex items-center gap-1 md:gap-2 min-w-0"><span class="text-muted-foreground/50 flex-shrink-0"><svg class="h-4 w-4" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7"/></svg>
5252
</span><span class="text-foreground flex items-center gap-0.5 md:gap-1 font-medium min-w-0 flex-shrink-0"><svg class="h-4 w-4" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M5 8h14M5 8a2 2 0 110-4h14a2 2 0 110 4M5 8v10a2 2 0 002 2h10a2 2 0 002-2V8m-9 4h4"/></svg>
5353
<span class="max-w-[3rem] md:max-w-none truncate">Archives</span></span></li></ol></nav><header class=mb-8><div class="mb-4 flex items-center gap-3"><svg class="h-6 w-6" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M5 8h14M5 8a2 2 0 110-4h14a2 2 0 110 4M5 8v10a2 2 0 002 2h10a2 2 0 002-2V8m-9 4h4"/></svg><h1 class="text-foreground text-3xl font-bold">Archives</h1></div><p class="text-muted-foreground mb-6">Browse all articles in chronological order and discover what interests you.</p><div class="text-muted-foreground flex items-center gap-4 text-sm"><div class="flex items-center gap-1"><svg class="h-4 w-4" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z"/></svg>
54-
<span>40 posts total</span></div><div class="flex items-center gap-1"><svg class="h-4 w-4" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5A2 2 0 003 7v12a2 2 0 002 2z"/></svg>
55-
<span>Timeline view</span></div></div></header><div class=relative><div class="bg-border absolute top-0 bottom-0 left-4 w-0.5"></div><div class=mb-12><div class="relative mb-8 flex items-center"><div class="bg-primary absolute left-0 z-10 flex h-8 w-8 items-center justify-center rounded-full"><svg class="h-4 w-4 text-primary-foreground" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5A2 2 0 003 7v12a2 2 0 002 2z"/></svg></div><div class=ml-12><h2 class="text-foreground text-2xl font-bold">2025</h2><p class="text-muted-foreground text-sm">38
56-
posts</p></div></div><div class="relative mb-8"><div class="relative mb-4 flex items-center"><div class="bg-accent border-background absolute left-2 z-10 h-4 w-4 rounded-full border-2"></div><div class=ml-12><h3 class="text-foreground text-lg font-semibold">September 2025</h3><p class="text-muted-foreground text-xs">7
57-
posts</p></div></div><div class="ml-12 space-y-3"><article class="group bg-card border-border hover:bg-accent/50 rounded-lg border p-4 transition-all duration-300"><div class="flex items-center justify-between gap-4"><div class="min-w-0 flex-1"><h4 class="text-foreground group-hover:text-primary mb-3 font-medium transition-colors duration-200"><a href=/posts/the-evolution-of-coding-in-the-ai-era/ class=block>The Evolution of Coding in the AI Era</a></h4><div class="text-muted-foreground flex items-center gap-4 text-xs"><div class="flex items-center gap-1"><svg class="h-3 w-3" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5A2 2 0 003 7v12a2 2 0 002 2z"/></svg>
58-
<time datetime=2025-09-10>09-10</time></div><div class="flex items-center gap-1"><svg class="h-3 w-3" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 8v4l3 3m6-3A9 9 0 113 12a9 9 0 0118 0z"/></svg>
54+
<span>41 posts total</span></div><div class="flex items-center gap-1"><svg class="h-4 w-4" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5A2 2 0 003 7v12a2 2 0 002 2z"/></svg>
55+
<span>Timeline view</span></div></div></header><div class=relative><div class="bg-border absolute top-0 bottom-0 left-4 w-0.5"></div><div class=mb-12><div class="relative mb-8 flex items-center"><div class="bg-primary absolute left-0 z-10 flex h-8 w-8 items-center justify-center rounded-full"><svg class="h-4 w-4 text-primary-foreground" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5A2 2 0 003 7v12a2 2 0 002 2z"/></svg></div><div class=ml-12><h2 class="text-foreground text-2xl font-bold">2025</h2><p class="text-muted-foreground text-sm">39
56+
posts</p></div></div><div class="relative mb-8"><div class="relative mb-4 flex items-center"><div class="bg-accent border-background absolute left-2 z-10 h-4 w-4 rounded-full border-2"></div><div class=ml-12><h3 class="text-foreground text-lg font-semibold">September 2025</h3><p class="text-muted-foreground text-xs">8
57+
posts</p></div></div><div class="ml-12 space-y-3"><article class="group bg-card border-border hover:bg-accent/50 rounded-lg border p-4 transition-all duration-300"><div class="flex items-center justify-between gap-4"><div class="min-w-0 flex-1"><h4 class="text-foreground group-hover:text-primary mb-3 font-medium transition-colors duration-200"><a href=/posts/english-for-programmers-01/ class=block>English for Programmers - 01</a></h4><div class="text-muted-foreground flex items-center gap-4 text-xs"><div class="flex items-center gap-1"><svg class="h-3 w-3" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5A2 2 0 003 7v12a2 2 0 002 2z"/></svg>
58+
<time datetime=2025-09-11>09-11</time></div><div class="flex items-center gap-1"><svg class="h-3 w-3" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 8v4l3 3m6-3A9 9 0 113 12a9 9 0 0118 0z"/></svg>
59+
<span>2
60+
min</span></div></div></div></div></article><article class="group bg-card border-border hover:bg-accent/50 rounded-lg border p-4 transition-all duration-300"><div class="flex items-center justify-between gap-4"><div class="min-w-0 flex-1"><h4 class="text-foreground group-hover:text-primary mb-3 font-medium transition-colors duration-200"><a href=/posts/the-evolution-of-coding-in-the-ai-era/ class=block>The Evolution of Coding in the AI Era</a></h4><div class="text-muted-foreground flex items-center gap-4 text-xs"><div class="flex items-center gap-1"><svg class="h-3 w-3" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5A2 2 0 003 7v12a2 2 0 002 2z"/></svg>
61+
<time datetime=2025-09-11>09-11</time></div><div class="flex items-center gap-1"><svg class="h-3 w-3" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 8v4l3 3m6-3A9 9 0 113 12a9 9 0 0118 0z"/></svg>
5962
<span>9
6063
min</span></div></div></div></div></article><article class="group bg-card border-border hover:bg-accent/50 rounded-lg border p-4 transition-all duration-300"><div class="flex items-center justify-between gap-4"><div class="min-w-0 flex-1"><h4 class="text-foreground group-hover:text-primary mb-3 font-medium transition-colors duration-200"><a href=/posts/dealing-with-grabage-in-python/ class=block>Dealing With Grabage in Python</a></h4><div class="text-muted-foreground flex items-center gap-4 text-xs"><div class="flex items-center gap-1"><svg class="h-3 w-3" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5A2 2 0 003 7v12a2 2 0 002 2z"/></svg>
6164
<time datetime=2025-09-08>09-08</time></div><div class="flex items-center gap-1"><svg class="h-3 w-3" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 8v4l3 3m6-3A9 9 0 113 12a9 9 0 0118 0z"/></svg>

0 commit comments

Comments
 (0)