惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

爱范儿
爱范儿
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
WordPress大学
WordPress大学
Y
Y Combinator Blog
I
InfoQ
美团技术团队
罗磊的独立博客
B
Blog RSS Feed
GbyAI
GbyAI
小众软件
小众软件
IT之家
IT之家
Engineering at Meta
Engineering at Meta
Blog — PlanetScale
Blog — PlanetScale
V
V2EX
Last Week in AI
Last Week in AI
酷 壳 – CoolShell
酷 壳 – CoolShell
Jina AI
Jina AI
MyScale Blog
MyScale Blog
博客园 - 聂微东
Microsoft Security Blog
Microsoft Security Blog
博客园 - 【当耐特】
Apple Machine Learning Research
Apple Machine Learning Research
The GitHub Blog
The GitHub Blog
T
The Blog of Author Tim Ferriss

blag

SQLite prefixes its temp files with `etilqs_` - blag Setsum - order agnostic, additive, subtractive checksum - blag Oldest recorded transaction - blag Replacing a cache service with a database - blag SQLite commits are not durable under default settings - blag PSA: SQLite WAL checksums fail silently and may lose data - blag Rickrolling Turso DB (SQLite rewrite in Rust) - blag Collection of insane and fun facts about SQLite - blag How bloom filters made SQLite 10x faster - blag In search of a faster SQLite - blag Galloping Search - blag Building a distributed log using S3 (under 150 lines of Go) - blag Zero Disk Architecture - blag PSA: Most databases do not do checksums by default - blag PSA: SQLite does not do checksums - blag Disaggregated Storage - a brief introduction - blag Why does SQLite (in production) have such a bad rep? - blag SQLite Slaps - blag Now - blag Snapshot Testing - blag Win: contribution to libSQL (SQLite) codebase - blag Errata in Hekaton MVCC paper - blag Internet is wholesome: MVCC edition - blag It is becoming difficult for me to be productive in Python - blag MongoDB secondary only index - blag Introducing CaskDB – a project to teach you writing a key-value store - blag Recurse Center: Winter Break - blag Recurse Center Day 24: Hacking Go compiler to add a new keyword - blag Recurse Center Day 20: Django v4 upgrade (from v1) - blag Recurse Center Day 19 - blag
Learning C - blag
2024-03-02 · via blag

I am beginning to learn C, and I asked for resources on the same. Here is what I got:

  1. K&R C book - This is the OG book. It is short and concise. However, it is old now and has some minor bad practices/incorrect code apparently.
  2. Modern C by Jens Gustedt - This is a more modern book. However, the book expects that you know some C and can be difficult for someone new like me to pick up. This book is also available for free online.
  3. Effective C by Robert C. Seacord - Another introductory alternative. This also teaches modern practices and is beginner friendly.

Advice

I asked my fren, Mr. xyz, a C veteran who has worked in various domains from battery controllers to databases, for advice on learning C. The advice I received:

Follow these books (in order):

  1. K&R C
  2. Programming in the UNIX Environment
  3. Programming Abstractions in C

An alternate path:

  1. Effective C
  2. Modern C

K&R style and modern style are different, but both are prevalent in different areas. Start with one, completely understand the philosophy, idioms, and patterns, and then move to the other.

Do the K&R and Programming Abstractions in C exercises in the modern style. These exercises are invaluable. They may seem simple, but they are a pretty good test of understanding C.

The depth comes only when you work with simple code and see how small changes can have big effects.

Cthulhu

The very apt cover of Effective C:

C for Cthulhu

My goals are:

  • Port CaskDB to C
  • Make a major contribution to libSQL