{
  "site": "https://tw93.fun",
  "description": "Every post on Tw93's blog, Chinese and English, newest first. Full text: /api/posts.jsonl and /api/en/posts.jsonl, or the markdownUrl of a post.",
  "count": 85,
  "englishCount": 83,
  "posts": [
    {
      "title": "在快 AI 时代，如何做一款慢产品？",
      "date": "2026-10-26",
      "language": "zh-CN",
      "summary": "距离写完上一篇《Mole 出 Mac 版后，用户教会了我做产品》已经过去两个多月。这段时间里，Mole 从 1.13 一路发到了 1.18，加上了 AI 工具清理和系统数据清理，Windows 版也在 10 月 14 日晚上发了出来，GitHub 上的 Star 一转眼也到了 72.9K。",
      "categories": [
        "Thought"
      ],
      "url": "https://tw93.fun/2026-10-26/mole-product.html",
      "markdownUrl": "https://tw93.fun/2026-10-26/mole-product.md",
      "translation": {
        "language": "en-US",
        "title": "How to Build a Slow Product in the Fast AI Era",
        "url": "https://tw93.fun/en/2026-10-26/mole-product.html",
        "markdownUrl": "https://tw93.fun/en/2026-10-26/mole-product.md"
      }
    },
    {
      "title": "How to Build a Slow Product in the Fast AI Era",
      "date": "2026-10-26",
      "language": "en-US",
      "summary": "It has been a little over two months since I wrote the previous post, “From Mole CLI to Mole for Mac: What I Learned”. In that time Mole went from 1.13 all the way to 1.18, added AI tool cleanup and System Data cleanup, the Windows version shipped on the evening of October 14, and the GitHub repository quietly passed 72.9K stars.",
      "categories": [
        "Thought"
      ],
      "url": "https://tw93.fun/en/2026-10-26/mole-product.html",
      "markdownUrl": "https://tw93.fun/en/2026-10-26/mole-product.md",
      "translation": {
        "language": "zh-CN",
        "title": "在快 AI 时代，如何做一款慢产品？",
        "url": "https://tw93.fun/2026-10-26/mole-product.html",
        "markdownUrl": "https://tw93.fun/2026-10-26/mole-product.md"
      }
    },
    {
      "title": "你不知道的客户端开发：AI 时代下的选型、原生与借力",
      "date": "2026-10-22",
      "language": "zh-CN",
      "summary": "发现不少小伙伴很好奇我是怎么用 Mac 来开发 Windows 软件的，以及 Windows 软件现在一般用什么技术栈来实现，刚好我这段时间也在做类似的事情，来和大伙随便聊聊关于多端技术选择的思考。",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/2026-10-22/desktop.html",
      "markdownUrl": "https://tw93.fun/2026-10-22/desktop.md",
      "translation": {
        "language": "en-US",
        "title": "You Don't Know Client Development: Stack, Native, and Leverage in the AI Era",
        "url": "https://tw93.fun/en/2026-10-22/desktop.html",
        "markdownUrl": "https://tw93.fun/en/2026-10-22/desktop.md"
      }
    },
    {
      "title": "You Don't Know Client Development: Stack, Native, and Leverage in the AI Era",
      "date": "2026-10-22",
      "language": "en-US",
      "summary": "Quite a few folks have been curious how I build Windows software on a Mac, and what stack Windows apps are usually built with these days. As it happens, I have been doing similar work recently, so here are some casual thoughts on choosing technology across multiple clients.",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/en/2026-10-22/desktop.html",
      "markdownUrl": "https://tw93.fun/en/2026-10-22/desktop.md",
      "translation": {
        "language": "zh-CN",
        "title": "你不知道的客户端开发：AI 时代下的选型、原生与借力",
        "url": "https://tw93.fun/2026-10-22/desktop.html",
        "markdownUrl": "https://tw93.fun/2026-10-22/desktop.md"
      }
    },
    {
      "title": "Mole 出 Mac 版后，用户教会了我做产品",
      "date": "2026-08-16",
      "language": "zh-CN",
      "summary": "最近我写了不少关于独立开发的思考，想着汇总一下，就把 Mole 从开源 CLI 做到 Mac 付费软件这一路聊一聊，当时是怎么想的，哪些事情做下来有用。",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/2026-08-16/mole-mac.html",
      "markdownUrl": "https://tw93.fun/2026-08-16/mole-mac.md",
      "translation": {
        "language": "en-US",
        "title": "From Mole CLI to Mole for Mac: What I Learned",
        "url": "https://tw93.fun/en/2026-08-16/mole-mac.html",
        "markdownUrl": "https://tw93.fun/en/2026-08-16/mole-mac.md"
      }
    },
    {
      "title": "From Mole CLI to Mole for Mac: What I Learned",
      "date": "2026-08-16",
      "language": "en-US",
      "summary": "Lately I've piled up a lot of thoughts on indie development and wanted to pull them together, so this is the story of taking Mole from an open source CLI to a paid Mac app. What I was thinking at the time, and which parts actually turned out to matter.",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/en/2026-08-16/mole-mac.html",
      "markdownUrl": "https://tw93.fun/en/2026-08-16/mole-mac.md",
      "translation": {
        "language": "zh-CN",
        "title": "Mole 出 Mac 版后，用户教会了我做产品",
        "url": "https://tw93.fun/2026-08-16/mole-mac.html",
        "markdownUrl": "https://tw93.fun/2026-08-16/mole-mac.md"
      }
    },
    {
      "title": "你不知道的具身智能：从小机器狗到 Optimus",
      "date": "2026-06-07",
      "language": "zh-CN",
      "summary": "今年 4 月我组装了一台小机器狗，做的过程在推特上发过几条，大伙应该都刷到过，从买零件、装结构，到最后它能听懂指令、走两步、还能对话几句。",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/2026-06-07/robot.html",
      "markdownUrl": "https://tw93.fun/2026-06-07/robot.md",
      "translation": {
        "language": "en-US",
        "title": "You Don't Know Embodied AI: From a Tiny Robot Dog to Optimus",
        "url": "https://tw93.fun/en/2026-06-07/robot.html",
        "markdownUrl": "https://tw93.fun/en/2026-06-07/robot.md"
      }
    },
    {
      "title": "You Don't Know Embodied AI: From a Tiny Robot Dog to Optimus",
      "date": "2026-06-07",
      "language": "en-US",
      "summary": "In April I assembled a small robot dog. I posted a few clips on X while I was building it, so some of you probably saw the parts, the frame, and the final moment when it could hear a command, walk a couple of steps, and say a few lines back.",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/en/2026-06-07/robot.html",
      "markdownUrl": "https://tw93.fun/en/2026-06-07/robot.md",
      "translation": {
        "language": "zh-CN",
        "title": "你不知道的具身智能：从小机器狗到 Optimus",
        "url": "https://tw93.fun/2026-06-07/robot.html",
        "markdownUrl": "https://tw93.fun/2026-06-07/robot.md"
      }
    },
    {
      "title": "你不知道的 GEO：AI 可见性的原理、实践与取舍",
      "date": "2026-05-01",
      "language": "zh-CN",
      "summary": "这几天有几个小伙伴@我说，他们在向 AI 提问时，自己的开源工具被主动推荐了。之前啥也没做居然也能被收录，我就想顺手花一个小时把站内内容结构化梳理一下。改完后随手发了条推特，大伙挺感兴趣，索性把完整的思路和配置写成一篇文章，方便大家查找和参考。",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/2026-05-01/ai-visibility.html",
      "markdownUrl": "https://tw93.fun/2026-05-01/ai-visibility.md",
      "translation": {
        "language": "en-US",
        "title": "You Didn't Know GEO: AI Visibility Principles, Practices, and Trade-offs",
        "url": "https://tw93.fun/en/2026-05-01/ai-visibility.html",
        "markdownUrl": "https://tw93.fun/en/2026-05-01/ai-visibility.md"
      }
    },
    {
      "title": "You Didn't Know GEO: AI Visibility Principles, Practices, and Trade-offs",
      "date": "2026-05-01",
      "language": "en-US",
      "summary": "A few friends pinged me recently saying my open source tools were showing up when they asked AI questions. I hadn't done anything deliberate, so I figured: why not spend an hour structuring things properly? After doing it, I fired off a quick tweet, but the notes were messy. People seemed genuinely interested, so I decided to write it up as a proper article for reference.",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/en/2026-05-01/ai-visibility.html",
      "markdownUrl": "https://tw93.fun/en/2026-05-01/ai-visibility.md",
      "translation": {
        "language": "zh-CN",
        "title": "你不知道的 GEO：AI 可见性的原理、实践与取舍",
        "url": "https://tw93.fun/2026-05-01/ai-visibility.html",
        "markdownUrl": "https://tw93.fun/2026-05-01/ai-visibility.md"
      }
    },
    {
      "title": "你不知道的 AI Coding：非技术人的上手、场景与实战",
      "date": "2026-04-26",
      "language": "zh-CN",
      "summary": "上个月在公司里给产品和业务的小伙伴分享了下如何上手 AI Coding，加上最近又发了条推特，聊到不少同学因为订阅门槛没机会用上一线 AI Coding 工具，方法和习惯不花钱就能先学，索性把上手这部分整理出来。不少人用 Claude Code 其实是卡在使用命令行的第一步，看到只有字符的终端会觉得是给程序员用的，自己肯定搞不定。其实门槛没想象的高，会用豆包这类对话框 AI 的人花点时间也能上手，剩下的就是慢慢习惯把执行权交给它。",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/2026-04-26/ai-coding.html",
      "markdownUrl": "https://tw93.fun/2026-04-26/ai-coding.md",
      "translation": {
        "language": "en-US",
        "title": "You Don't Know AI Coding: A Non-Engineer's Guide to Getting Started, Scenarios, and Practice",
        "url": "https://tw93.fun/en/2026-04-26/ai-coding.html",
        "markdownUrl": "https://tw93.fun/en/2026-04-26/ai-coding.md"
      }
    },
    {
      "title": "You Don't Know AI Coding: A Non-Engineer's Guide to Getting Started, Scenarios, and Practice",
      "date": "2026-04-26",
      "language": "en-US",
      "summary": "Last month I ran an internal session walking product and business folks through how to get started with AI Coding. That deck eventually grew into this post. A lot of people get stuck at the very first step, the command line. Staring at a terminal that's just characters on a screen, they assume it's a programmer-only tool and they'll never figure it out. The bar is lower than it looks. If you can use a chatbot like ChatGPT, you can get going on Claude Code with a bit of time. The rest is just slowly getting comfortable handing the execution over to it.",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/en/2026-04-26/ai-coding.html",
      "markdownUrl": "https://tw93.fun/en/2026-04-26/ai-coding.md",
      "translation": {
        "language": "zh-CN",
        "title": "你不知道的 AI Coding：非技术人的上手、场景与实战",
        "url": "https://tw93.fun/2026-04-26/ai-coding.html",
        "markdownUrl": "https://tw93.fun/2026-04-26/ai-coding.md"
      }
    },
    {
      "title": "在 AI 时代，我是如何深入学习一个技术领域的",
      "date": "2026-04-06",
      "language": "zh-CN",
      "summary": "想和大伙聊聊，在 AI 时代我是怎么深入学习一个技术领域的。没有 AI 之前，更多是看书、翻这个领域国内外有名的人的博客，然后摘抄记录到笔记本，速度挺慢，但很有学习的乐趣。比如当时学 WebGL，学懂一个东西差不多要半年空闲时间，慢但快乐。",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/2026-04-06/learn.html",
      "markdownUrl": "https://tw93.fun/2026-04-06/learn.md",
      "translation": {
        "language": "en-US",
        "title": "How I Turn Learning Into a Workflow in the AI Era",
        "url": "https://tw93.fun/en/2026-04-06/learn.html",
        "markdownUrl": "https://tw93.fun/en/2026-04-06/learn.md"
      }
    },
    {
      "title": "How I Turn Learning Into a Workflow in the AI Era",
      "date": "2026-04-06",
      "language": "en-US",
      "summary": "Before AI, my way of learning was much more old school. I would read books, go through the blogs of well-known people in a field, both in China and outside China, and keep taking notes along the way. It was slow, but there was real joy in it. I still remember learning WebGL like that. Understanding it took me almost half a year of spare time, and I loved every bit of it.",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/en/2026-04-06/learn.html",
      "markdownUrl": "https://tw93.fun/en/2026-04-06/learn.md",
      "translation": {
        "language": "zh-CN",
        "title": "在 AI 时代，我是如何深入学习一个技术领域的",
        "url": "https://tw93.fun/2026-04-06/learn.html",
        "markdownUrl": "https://tw93.fun/2026-04-06/learn.md"
      }
    },
    {
      "title": "你不知道的大模型训练：原理、路径与新实践",
      "date": "2026-04-03",
      "language": "zh-CN",
      "summary": "在写完《你不知道的 Claude Code：架构、治理与工程实践》、《你不知道的 Agent：原理、架构与工程实践》后，我想着继续来写第三篇，这次打算挑战下自己来梳理一下大模型训练到底怎么回事，这篇文章争取让非专业背景的人也能读得懂。",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/2026-04-03/llm.html",
      "markdownUrl": "https://tw93.fun/2026-04-03/llm.md",
      "translation": {
        "language": "en-US",
        "title": "You Don't Know LLM Training: Principles, Pipelines, and New Practices",
        "url": "https://tw93.fun/en/2026-04-03/llm.html",
        "markdownUrl": "https://tw93.fun/en/2026-04-03/llm.md"
      }
    },
    {
      "title": "You Don't Know LLM Training: Principles, Pipelines, and New Practices",
      "date": "2026-04-03",
      "language": "en-US",
      "summary": "After writing \"The Claude Code You Don't Know\" and \"The AI Agents You Don't Know,\" I wanted to tackle a third installment. This time I pushed myself to work through how large model training actually works, and tried to write something that a non-specialist reader could follow.",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/en/2026-04-03/llm.html",
      "markdownUrl": "https://tw93.fun/en/2026-04-03/llm.md",
      "translation": {
        "language": "zh-CN",
        "title": "你不知道的大模型训练：原理、路径与新实践",
        "url": "https://tw93.fun/2026-04-03/llm.html",
        "markdownUrl": "https://tw93.fun/2026-04-03/llm.md"
      }
    },
    {
      "title": "杀死那个手工程序员",
      "date": "2026-03-30",
      "language": "zh-CN",
      "summary": "标题来自 12 年前我很喜欢的一首万青的歌《杀死那个石家庄人》的改写，虽然歌里写的不是一回事，但那种看着熟悉世界一点点被替换掉的感觉，还真有点像。",
      "categories": [
        "Thought"
      ],
      "url": "https://tw93.fun/2026-03-30/kill.html",
      "markdownUrl": "https://tw93.fun/2026-03-30/kill.md",
      "translation": {
        "language": "en-US",
        "title": "The Death of the Manual Programmer",
        "url": "https://tw93.fun/en/2026-03-30/kill.html",
        "markdownUrl": "https://tw93.fun/en/2026-03-30/kill.md"
      }
    },
    {
      "title": "The Death of the Manual Programmer",
      "date": "2026-03-30",
      "language": "en-US",
      "summary": "My title reworks the name of a song by Omnipotent Youth Society that I loved twelve years ago. The song is about something different, but that feeling of watching a familiar world slowly get replaced does feel similar.",
      "categories": [
        "Thought"
      ],
      "url": "https://tw93.fun/en/2026-03-30/kill.html",
      "markdownUrl": "https://tw93.fun/en/2026-03-30/kill.md",
      "translation": {
        "language": "zh-CN",
        "title": "杀死那个手工程序员",
        "url": "https://tw93.fun/2026-03-30/kill.html",
        "markdownUrl": "https://tw93.fun/2026-03-30/kill.md"
      }
    },
    {
      "title": "你不知道的 Agent：原理、架构与工程实践",
      "date": "2026-03-21",
      "language": "zh-CN",
      "summary": "研究完 Claude Code 的架构之后，发现自己对 Agent 底层的理解还不够深入，加上团队在 Agent 方向已经有不少业务落地，但一直缺少一份系统梳理，所以又补了一轮资料、开源实现和轻量实验，把控制流、上下文工程、工具设计、记忆、评测和安全这些问题重新串了一遍。",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/2026-03-21/agent.html",
      "markdownUrl": "https://tw93.fun/2026-03-21/agent.md",
      "translation": {
        "language": "en-US",
        "title": "You Don't Know AI Agents: Principles, Architecture, and Engineering Practices",
        "url": "https://tw93.fun/en/2026-03-21/agent.html",
        "markdownUrl": "https://tw93.fun/en/2026-03-21/agent.md"
      }
    },
    {
      "title": "You Don't Know AI Agents: Principles, Architecture, and Engineering Practices",
      "date": "2026-03-21",
      "language": "en-US",
      "summary": "After studying Claude Code's architecture, I realized I still didn't understand agents well enough. Our team had already deployed agents in several projects, but I hadn't put that experience together. I went back through the literature, open-source implementations, and my own code to work through control flow, context engineering, tool design, memory, evaluation, and security.",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/en/2026-03-21/agent.html",
      "markdownUrl": "https://tw93.fun/en/2026-03-21/agent.md",
      "translation": {
        "language": "zh-CN",
        "title": "你不知道的 Agent：原理、架构与工程实践",
        "url": "https://tw93.fun/2026-03-21/agent.html",
        "markdownUrl": "https://tw93.fun/2026-03-21/agent.md"
      }
    },
    {
      "title": "你不知道的 Claude Code：架构、治理与工程实践",
      "date": "2026-03-12",
      "language": "zh-CN",
      "summary": "我把最近半年用 Claude Code 积累的一些实际经验分享给大伙，两个账号每月氪金 40 刀。这篇文章主要围绕上下文管理、Skills、Hooks、Subagents、Prompt Caching 以及 CLAUDE.md 的设计展开，重点讨论怎样让协作过程更稳定、更可控，偏工程师技术视角的最佳实践，欢迎大伙一起交流。",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/2026-03-12/claude.html",
      "markdownUrl": "https://tw93.fun/2026-03-12/claude.md",
      "translation": {
        "language": "en-US",
        "title": "You Don't Know Claude Code: Architecture, Governance, and Engineering Practices",
        "url": "https://tw93.fun/en/2026-03-12/claude.html",
        "markdownUrl": "https://tw93.fun/en/2026-03-12/claude.md"
      }
    },
    {
      "title": "You Don't Know Claude Code: Architecture, Governance, and Engineering Practices",
      "date": "2026-03-12",
      "language": "en-US",
      "summary": "I'm sharing what I've learned from six months of using Claude Code across two accounts. It covers context management, Skills, Hooks, Subagents, prompt caching, and CLAUDE.md design, with a focus on making collaboration more reliable and easier to control and check.",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/en/2026-03-12/claude.html",
      "markdownUrl": "https://tw93.fun/en/2026-03-12/claude.md",
      "translation": {
        "language": "zh-CN",
        "title": "你不知道的 Claude Code：架构、治理与工程实践",
        "url": "https://tw93.fun/2026-03-12/claude.html",
        "markdownUrl": "https://tw93.fun/2026-03-12/claude.md"
      }
    },
    {
      "title": "连龙虾都不会装的人，怎么会用龙虾呢？",
      "date": "2026-03-07",
      "language": "zh-CN",
      "summary": "今天看腾讯大厦装龙虾这件事，挺有感触。最近很多大厂都在疯狂让一线非技术员工去安装龙虾，网上甚至真有 500 上门安装服务。大家都在拼命找使用场景，拼命要求落地，拼命证明这个东西已经重要到不能错过，整个过程让我有一种很强的赛博科技折叠感。",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/2026-03-07/openclaw.html",
      "markdownUrl": "https://tw93.fun/2026-03-07/openclaw.md",
      "translation": {
        "language": "en-US",
        "title": "Installing OpenClaw Isn't the Same as Using It",
        "url": "https://tw93.fun/en/2026-03-07/openclaw.html",
        "markdownUrl": "https://tw93.fun/en/2026-03-07/openclaw.md"
      }
    },
    {
      "title": "Installing OpenClaw Isn't the Same as Using It",
      "date": "2026-03-07",
      "language": "en-US",
      "summary": "Watching people flock to Tencent Tower to get OpenClaw installed today gave me a lot to think about. Many big tech companies are aggressively pushing non-technical frontline employees to install this AI tool, and I've even seen people online offering home installation for 500 RMB. Everyone's desperately searching for uses for it, demanding results, and trying to prove this thing is too important to miss. The whole thing feels like people living in different technological worlds, folded into the same place.",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/en/2026-03-07/openclaw.html",
      "markdownUrl": "https://tw93.fun/en/2026-03-07/openclaw.md",
      "translation": {
        "language": "zh-CN",
        "title": "连龙虾都不会装的人，怎么会用龙虾呢？",
        "url": "https://tw93.fun/2026-03-07/openclaw.html",
        "markdownUrl": "https://tw93.fun/2026-03-07/openclaw.md"
      }
    },
    {
      "title": "比特币下跌时，我重新理解了大教堂与赌场",
      "date": "2026-02-01",
      "language": "zh-CN",
      "summary": "最近比特币从 12w 的高点回落到 7w 多，市场情绪再次走向恐慌。每当市场下跌时，我反而更容易去想，哪些东西更像赌场，哪些还在慢慢修建大教堂。价格的剧烈波动，更多来自赌场那一侧，而真正决定长期回报的，往往需要多年甚至几十年的持续投入。",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/2026-02-01/money.html",
      "markdownUrl": "https://tw93.fun/2026-02-01/money.md",
      "translation": {
        "language": "en-US",
        "title": "Bitcoin's Fall: Cathedral vs Casino",
        "url": "https://tw93.fun/en/2026-02-01/money.html",
        "markdownUrl": "https://tw93.fun/en/2026-02-01/money.md"
      }
    },
    {
      "title": "Bitcoin's Fall: Cathedral vs Casino",
      "date": "2026-02-01",
      "language": "en-US",
      "summary": "When Bitcoin falls, it becomes easier to distinguish between the casino and the cathedral. As Bitcoin dropped from its $120k peak to around $70k, panic swept through the market once again. During previous major stock market crashes. Price volatility is the casino's noise, while what truly determines long-term returns are those cathedrals that require a century of devotion yet continuously create structural value.",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/en/2026-02-01/money.html",
      "markdownUrl": "https://tw93.fun/en/2026-02-01/money.md",
      "translation": {
        "language": "zh-CN",
        "title": "比特币下跌时，我重新理解了大教堂与赌场",
        "url": "https://tw93.fun/2026-02-01/money.html",
        "markdownUrl": "https://tw93.fun/2026-02-01/money.md"
      }
    },
    {
      "title": "243 个工程师，最近一年买到的好东西",
      "date": "2026-01-24",
      "language": "zh-CN",
      "summary": "上周为了给团队同学买年夜饭礼物，在 X 上随口问大伙，最近一年，你买过最称心如意的东西是什么，或者说假如需要推荐一个你最想推荐的东西会是什么？可以是电子设备、软件、生活用品都可以。",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/2026-01-24/good.html",
      "markdownUrl": "https://tw93.fun/2026-01-24/good.md",
      "translation": {
        "language": "en-US",
        "title": "Best Purchases from 243 Engineers in the Past Year",
        "url": "https://tw93.fun/en/2026-01-24/good.html",
        "markdownUrl": "https://tw93.fun/en/2026-01-24/good.md"
      }
    },
    {
      "title": "Best Purchases from 243 Engineers in the Past Year",
      "date": "2026-01-24",
      "language": "en-US",
      "summary": "Last week, while shopping for New Year's Eve gifts for my team, I casually asked on X what the most satisfying purchase people made in the past year was. I received 243 responses, discovering countless great products ranging from essential tech to practical everyday items.",
      "categories": [
        "Life"
      ],
      "url": "https://tw93.fun/en/2026-01-24/good.html",
      "markdownUrl": "https://tw93.fun/en/2026-01-24/good.md",
      "translation": {
        "language": "zh-CN",
        "title": "243 个工程师，最近一年买到的好东西",
        "url": "https://tw93.fun/2026-01-24/good.html",
        "markdownUrl": "https://tw93.fun/2026-01-24/good.md"
      }
    },
    {
      "title": "2025 大语言模型年度回顾",
      "date": "2026-01-14",
      "language": "zh-CN",
      "summary": "花了一晚上时间把 Simon Willison’s Weblog 这篇 《2025:The year in LLMs》翻译完了，我觉得写得非常好，能够帮助我们很好看清楚去年这一年大模型领域发展的一切，希望可以给关注 AI 和投资 AI 的小伙伴一些输入。",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/2026-01-14/llm.html",
      "markdownUrl": "https://tw93.fun/2026-01-14/llm.md",
      "translation": null
    },
    {
      "title": "新一代工程师的破局与发展",
      "date": "2025-12-22",
      "language": "zh-CN",
      "summary": "最近在北京 AICon 上关于《新一代工程师的破局与发展-从岗位到能力的转型实践》的分享 PPT 转成图片放在这里，期待可以一起交流。",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/2025-12-22/engineer.html",
      "markdownUrl": "https://tw93.fun/2025-12-22/engineer.md",
      "translation": {
        "language": "en-US",
        "title": "Next-Gen Engineers: Breakthrough and Growth",
        "url": "https://tw93.fun/en/2025-12-22/engineer.html",
        "markdownUrl": "https://tw93.fun/en/2025-12-22/engineer.md"
      }
    },
    {
      "title": "Next-Gen Engineers: Breakthrough and Growth",
      "date": "2025-12-22",
      "language": "en-US",
      "summary": "Recently, I shared \"Breakthrough and Development of the Next Generation of Engineers - Practical Transformation from Position to Capability\" at AICon in Beijing. I have converted the PPT into images and posted them here, looking forward to exchanging ideas with you.",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/en/2025-12-22/engineer.html",
      "markdownUrl": "https://tw93.fun/en/2025-12-22/engineer.md",
      "translation": {
        "language": "zh-CN",
        "title": "新一代工程师的破局与发展",
        "url": "https://tw93.fun/2025-12-22/engineer.html",
        "markdownUrl": "https://tw93.fun/2025-12-22/engineer.md"
      }
    },
    {
      "title": "AI Coding 对于程序员的影响",
      "date": "2025-08-17",
      "language": "zh-CN",
      "summary": "在不到一个月使用 Claude Code $326 费用后，实际用了 $20 Pro + $50 充值，之前用了几个月的 Cursor 已经变成牛夫人了，用得好 AI 可以很轻松达到 P6+ 工程师的水平，对于一个工程师而言感觉到又惊喜又害怕。",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/2025-08-17/ai-coding.html",
      "markdownUrl": "https://tw93.fun/2025-08-17/ai-coding.md",
      "translation": {
        "language": "en-US",
        "title": "The Impact of AI Coding on Programmers",
        "url": "https://tw93.fun/en/2025-08-17/ai-coding.html",
        "markdownUrl": "https://tw93.fun/en/2025-08-17/ai-coding.md"
      }
    },
    {
      "title": "The Impact of AI Coding on Programmers",
      "date": "2025-08-17",
      "language": "en-US",
      "summary": "After using Claude Code for less than a month and spending $326 (actually $20 for Pro + $50 for top-up), the Cursor I had been using for a few months has become obsolete. Using AI well can easily help you reach the level of a senior engineer. As an engineer, I feel both amazed and concerned.",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/en/2025-08-17/ai-coding.html",
      "markdownUrl": "https://tw93.fun/en/2025-08-17/ai-coding.md",
      "translation": {
        "language": "zh-CN",
        "title": "AI Coding 对于程序员的影响",
        "url": "https://tw93.fun/2025-08-17/ai-coding.html",
        "markdownUrl": "https://tw93.fun/2025-08-17/ai-coding.md"
      }
    },
    {
      "title": "工程师如何更好投资",
      "date": "2025-07-17",
      "language": "zh-CN",
      "summary": "团队内部的一次简单分享，周末抽空随便理了理，聊聊工程师如何更好投资，由于买美股风险很高，不建议大家参照，需要有自己的判断，当做我在瞎说来看随便看看就好了。",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/2025-07-17/money.html",
      "markdownUrl": "https://tw93.fun/2025-07-17/money.md",
      "translation": {
        "language": "en-US",
        "title": "How Engineers Can Invest Better",
        "url": "https://tw93.fun/en/2025-07-17/money.html",
        "markdownUrl": "https://tw93.fun/en/2025-07-17/money.md"
      }
    },
    {
      "title": "How Engineers Can Invest Better",
      "date": "2025-07-17",
      "language": "en-US",
      "summary": "A simple sharing within the team, I took some time on the weekend to sort it out and talk about how engineers can invest better. Since buying US stocks is very risky, I don't recommend that you follow it. You need to have your own judgment. Just treat it as me talking nonsense and take a casual look.",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/en/2025-07-17/money.html",
      "markdownUrl": "https://tw93.fun/en/2025-07-17/money.md",
      "translation": {
        "language": "zh-CN",
        "title": "工程师如何更好投资",
        "url": "https://tw93.fun/2025-07-17/money.html",
        "markdownUrl": "https://tw93.fun/2025-07-17/money.md"
      }
    },
    {
      "title": "从 iPhone 换到 Android 的体验",
      "date": "2025-07-10",
      "language": "zh-CN",
      "summary": "对于一个十多年 iPhone 用户，切到 Android 差不多一个月样子，选的 OPPO 一个机器，比想象中迁移成本小很多，而且谁能想到 Android 变成了主力机，想和大伙随便聊聊这个过程想法的变化。",
      "categories": [
        "Life"
      ],
      "url": "https://tw93.fun/2025-07-10/android.html",
      "markdownUrl": "https://tw93.fun/2025-07-10/android.md",
      "translation": {
        "language": "en-US",
        "title": "Experience of Switching from iPhone to Android",
        "url": "https://tw93.fun/en/2025-07-09/android.html",
        "markdownUrl": "https://tw93.fun/en/2025-07-09/android.md"
      }
    },
    {
      "title": "Experience of Switching from iPhone to Android",
      "date": "2025-07-09",
      "language": "en-US",
      "summary": "For a user who has been using an iPhone for more than ten years, I switched to Android for about a month. I chose an OPPO device. The migration cost was much smaller than I imagined, and who would have thought that Android would become my main phone. I want to chat with everyone about the changes in my thoughts during this process.",
      "categories": [
        "Life"
      ],
      "url": "https://tw93.fun/en/2025-07-09/android.html",
      "markdownUrl": "https://tw93.fun/en/2025-07-09/android.md",
      "translation": {
        "language": "zh-CN",
        "title": "从 iPhone 换到 Android 的体验",
        "url": "https://tw93.fun/2025-07-10/android.html",
        "markdownUrl": "https://tw93.fun/2025-07-10/android.md"
      }
    },
    {
      "title": "别相信直觉 - 读书笔记",
      "date": "2024-10-13",
      "language": "zh-CN",
      "summary": "最近看完了「别相信直觉」用数据思维获取你想要的生活这本小书，比较简单好读，基本上花一下午就可以看完，把生活中可能会遇到的婚恋、育儿、财富、创业、运气、外貌、快乐、痛苦都给讲了讲，把里面有一些有意思的观点记录到这里。",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/2024-10-13/intuition.html",
      "markdownUrl": "https://tw93.fun/2024-10-13/intuition.md",
      "translation": {
        "language": "en-US",
        "title": "\"Don't Trust Your Gut\" - Book Notes",
        "url": "https://tw93.fun/en/2024-10-13/intuition.html",
        "markdownUrl": "https://tw93.fun/en/2024-10-13/intuition.md"
      }
    },
    {
      "title": "\"Don't Trust Your Gut\" - Book Notes",
      "date": "2024-10-13",
      "language": "en-US",
      "summary": "I recently finished reading \"Don't Trust Your Gut: Use Data to Get the Life You Want.\" It's a relatively simple and easy read—you can finish it in an afternoon. It covers topics you might encounter in life, such as love and marriage, parenting, wealth, entrepreneurship, luck, appearance, happiness, and pain.",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/en/2024-10-13/intuition.html",
      "markdownUrl": "https://tw93.fun/en/2024-10-13/intuition.md",
      "translation": {
        "language": "zh-CN",
        "title": "别相信直觉 - 读书笔记",
        "url": "https://tw93.fun/2024-10-13/intuition.html",
        "markdownUrl": "https://tw93.fun/2024-10-13/intuition.md"
      }
    },
    {
      "title": "聊聊未来技术趋势",
      "date": "2024-09-09",
      "language": "zh-CN",
      "summary": "最近在团队的一个分享，基于自己对 AI、投资、下一代技术的一些理解，结合网络上的报告、资料、论文、财报等简单梳理了下，假如有不懂的名词可以问 GPT，希望你开心，但不要在不懂市场的情况下基于此去投资，风险会很高。",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/2024-09-09/future.html",
      "markdownUrl": "https://tw93.fun/2024-09-09/future.md",
      "translation": {
        "language": "en-US",
        "title": "Talking about Future Technology Trends",
        "url": "https://tw93.fun/en/2024-09-09/future.html",
        "markdownUrl": "https://tw93.fun/en/2024-09-09/future.md"
      }
    },
    {
      "title": "Talking about Future Technology Trends",
      "date": "2024-09-09",
      "language": "en-US",
      "summary": "This is a recent sharing within the team, based on my own understanding of AI, investment, and next-generation technologies, combined with reports, materials, papers, financial reports, etc. from the internet. If you don't understand some terms, you can ask GPT. I hope you enjoy it, but please don't invest based on this without understanding the market, as the risks are very high.",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/en/2024-09-09/future.html",
      "markdownUrl": "https://tw93.fun/en/2024-09-09/future.md",
      "translation": {
        "language": "zh-CN",
        "title": "聊聊未来技术趋势",
        "url": "https://tw93.fun/2024-09-09/future.html",
        "markdownUrl": "https://tw93.fun/2024-09-09/future.md"
      }
    },
    {
      "title": "置身事内 - 读书笔记",
      "date": "2024-06-30",
      "language": "zh-CN",
      "summary": "最近把「置身事内 - 中国政府与经济发展」这本书读完了，去年粗读了下，最近趁着杭州持续下雨呆家里听着雨声看看书很自在，是一本可以读两遍的好书，花了点时间把一些不错的观点摘抄备忘。",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/2024-06-30/china.html",
      "markdownUrl": "https://tw93.fun/2024-06-30/china.md",
      "translation": {
        "language": "en-US",
        "title": "Stepping Inside - Book Notes",
        "url": "https://tw93.fun/en/2024-06-30/china.html",
        "markdownUrl": "https://tw93.fun/en/2024-06-30/china.md"
      }
    },
    {
      "title": "Stepping Inside - Book Notes",
      "date": "2024-06-30",
      "language": "en-US",
      "summary": "I recently finished reading \"Stepping Inside - The Chinese Government and Economic Development\". I had a quick read last year, and recently, while it was raining continuously in Hangzhou, I stayed at home listening to the rain and reading, which was very pleasant. It's a good book that's worth reading twice. I spent some time transcribing some good points for future reference.",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/en/2024-06-30/china.html",
      "markdownUrl": "https://tw93.fun/en/2024-06-30/china.md",
      "translation": {
        "language": "zh-CN",
        "title": "置身事内 - 读书笔记",
        "url": "https://tw93.fun/2024-06-30/china.html",
        "markdownUrl": "https://tw93.fun/2024-06-30/china.md"
      }
    },
    {
      "title": "我居然用回有线耳机了",
      "date": "2024-05-08",
      "language": "zh-CN",
      "summary": "男人的快乐，我居然用回有线耳机了，最近周末抽时间去线下试了不少好耳机，最后很意外买了索尼这款 MV1 开放式监听耳机，也不降噪还有线，却出奇的喜欢，想和大伙聊聊我的选择过程。",
      "categories": [
        "Life"
      ],
      "url": "https://tw93.fun/2024-05-08/sony.html",
      "markdownUrl": "https://tw93.fun/2024-05-08/sony.md",
      "translation": {
        "language": "en-US",
        "title": "I Actually Went Back to Wired Headphones",
        "url": "https://tw93.fun/en/2024-05-08/sony.html",
        "markdownUrl": "https://tw93.fun/en/2024-05-08/sony.md"
      }
    },
    {
      "title": "I Actually Went Back to Wired Headphones",
      "date": "2024-05-08",
      "language": "en-US",
      "summary": "A man's happiness can be simple. I actually went back to wired headphones. I spent some time on weekends trying out a lot of good headphones offline, and surprisingly ended up buying these Sony MV1 open-back monitor headphones. They don't have noise cancellation and are wired, but I love them. I want to share my selection process with you all.",
      "categories": [
        "Life"
      ],
      "url": "https://tw93.fun/en/2024-05-08/sony.html",
      "markdownUrl": "https://tw93.fun/en/2024-05-08/sony.md",
      "translation": {
        "language": "zh-CN",
        "title": "我居然用回有线耳机了",
        "url": "https://tw93.fun/2024-05-08/sony.html",
        "markdownUrl": "https://tw93.fun/2024-05-08/sony.md"
      }
    },
    {
      "title": "埃隆·马斯克传 - 读书笔记",
      "date": "2024-04-14",
      "language": "zh-CN",
      "summary": "最近利用早上的阅读时间陆陆续续把《埃隆·马斯克传》给看完了，很推荐工程师同学一读，虽然平时马斯克在 X 上表现有些奇怪，其实在书里其实是一个实打实的工程师，很擅长将技术和商业以及成本控制结合的一个牛人，不过也有不少缺点的一个人，随手记录一些文字用于备忘。同样看完这本书，作为特斯拉股东，愿意继续持有。",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/2024-04-14/musk.html",
      "markdownUrl": "https://tw93.fun/2024-04-14/musk.md",
      "translation": {
        "language": "en-US",
        "title": "Elon Musk - Book Notes",
        "url": "https://tw93.fun/en/2024-04-14/musk.html",
        "markdownUrl": "https://tw93.fun/en/2024-04-14/musk.md"
      }
    },
    {
      "title": "Elon Musk - Book Notes",
      "date": "2024-04-14",
      "language": "en-US",
      "summary": "I recently finished reading \"Elon Musk\" during my morning reading time. I highly recommend it to fellow engineers. Although Musk sometimes acts strangely on X, the book reveals him as a true engineer, a genius skilled at combining technology, business, and cost control, but also a person with many flaws. I'm jotting down some notes for my own reference. After reading this book, as a Tesla shareholder, I am willing to continue holding.",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/en/2024-04-14/musk.html",
      "markdownUrl": "https://tw93.fun/en/2024-04-14/musk.md",
      "translation": {
        "language": "zh-CN",
        "title": "埃隆·马斯克传 - 读书笔记",
        "url": "https://tw93.fun/2024-04-14/musk.html",
        "markdownUrl": "https://tw93.fun/2024-04-14/musk.md"
      }
    },
    {
      "title": "我的极简生活经验",
      "date": "2024-03-03",
      "language": "zh-CN",
      "summary": "想和大伙随便聊聊的极简主义，我挺喜欢这种生活方式，但并不是说每个人需要极简，有的人喜欢收藏，有喜欢购物买很多东西，让自己舒心的生活方式我觉得都挺好的。但假如你也喜欢简单生活方式，或者有点儿强迫症，那这些小建议可能适合你。",
      "categories": [
        "Life"
      ],
      "url": "https://tw93.fun/2024-03-03/simple.html",
      "markdownUrl": "https://tw93.fun/2024-03-03/simple.md",
      "translation": {
        "language": "en-US",
        "title": "My Minimalist Living Experience",
        "url": "https://tw93.fun/en/2024-03-03/simple.html",
        "markdownUrl": "https://tw93.fun/en/2024-03-03/simple.md"
      }
    },
    {
      "title": "My Minimalist Living Experience",
      "date": "2024-03-03",
      "language": "en-US",
      "summary": "Just want to casually talk about minimalism with everyone. I quite like this lifestyle, but that doesn't mean everyone needs to be a minimalist. Some people enjoy collecting things, some love shopping and buying lots of stuff. I think any lifestyle that makes you comfortable is good. But if you also like a simple way of living, or maybe you're a bit of a perfectionist, then these little tips might suit you.",
      "categories": [
        "Life"
      ],
      "url": "https://tw93.fun/en/2024-03-03/simple.html",
      "markdownUrl": "https://tw93.fun/en/2024-03-03/simple.md",
      "translation": {
        "language": "zh-CN",
        "title": "我的极简生活经验",
        "url": "https://tw93.fun/2024-03-03/simple.html",
        "markdownUrl": "https://tw93.fun/2024-03-03/simple.md"
      }
    },
    {
      "title": "我的年度工具折腾之旅",
      "date": "2024-02-09",
      "language": "zh-CN",
      "summary": "最近趁着过年有空，将一年自己使用的比较不错的 Mac 软件、网站、生活好物给整理了一下，保持着简单易用美观的原则，期待当你有同样选择纠结的时候的一些帮助。",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/2024-02-09/tools.html",
      "markdownUrl": "https://tw93.fun/2024-02-09/tools.md",
      "translation": {
        "language": "en-US",
        "title": "My Favorite Tools and Gadgets",
        "url": "https://tw93.fun/en/2024-02-09/tools.html",
        "markdownUrl": "https://tw93.fun/en/2024-02-09/tools.md"
      }
    },
    {
      "title": "My Favorite Tools and Gadgets",
      "date": "2024-02-09",
      "language": "en-US",
      "summary": "Recently, taking advantage of the holiday downtime, I organized some of the best Mac software, websites, and lifestyle products I've used over the year. Following the principles of simplicity, usability, and aesthetics, I hope this can offer some guidance when you face similar choices.",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/en/2024-02-09/tools.html",
      "markdownUrl": "https://tw93.fun/en/2024-02-09/tools.md",
      "translation": {
        "language": "zh-CN",
        "title": "我的年度工具折腾之旅",
        "url": "https://tw93.fun/2024-02-09/tools.html",
        "markdownUrl": "https://tw93.fun/2024-02-09/tools.md"
      }
    },
    {
      "title": "My Open Source Growth Journey",
      "date": "2024-01-13",
      "language": "en-US",
      "summary": "A sharing at Microsoft Shanghai Github Universe 2023, mainly about the interesting things I've done in open source for 9 years since university, and the experience of how to build a good open source product. I hope it can provide some input to friends who love open source. The on-site sharing video is at the end of the article, and interested friends can watch it.",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/en/2024-01-13/open.html",
      "markdownUrl": "https://tw93.fun/en/2024-01-13/open.md",
      "translation": {
        "language": "zh-CN",
        "title": "我的开源成长之旅",
        "url": "https://tw93.fun/2024-01-12/open.html",
        "markdownUrl": "https://tw93.fun/2024-01-12/open.md"
      }
    },
    {
      "title": "我的开源成长之旅",
      "date": "2024-01-12",
      "language": "zh-CN",
      "summary": "在微软上海 Github Universe 2023 的一个分享，主要是讲我从大学开源到现在 9 年做的一些有趣的事情，以及如何做好一个开源产品的经验，希望可以给热爱开源的朋友一些输入。",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/2024-01-12/open.html",
      "markdownUrl": "https://tw93.fun/2024-01-12/open.md",
      "translation": {
        "language": "en-US",
        "title": "My Open Source Growth Journey",
        "url": "https://tw93.fun/en/2024-01-13/open.html",
        "markdownUrl": "https://tw93.fun/en/2024-01-13/open.md"
      }
    },
    {
      "title": "我居然 30 岁了",
      "date": "2023-12-30",
      "language": "zh-CN",
      "summary": "过完今晚我居然就满 30 岁了，一直很无耻的感觉自己才 24 岁，虽然在这之前，我更无耻的认为自己才 18 岁，真不敢想象时间怎么过得这么快，年纪好像是一个从山顶滚下来的轮子，随着时间拉长越滚越快。虽然经历越来越丰富，但一年的时间长度感知明显比小时候得短很多，还是会有些惋惜和遗憾。",
      "categories": [
        "Thought"
      ],
      "url": "https://tw93.fun/2023-12-30/30.html",
      "markdownUrl": "https://tw93.fun/2023-12-30/30.md",
      "translation": {
        "language": "en-US",
        "title": "I'm Actually 30 Years Old",
        "url": "https://tw93.fun/en/2023-12-30/30.html",
        "markdownUrl": "https://tw93.fun/en/2023-12-30/30.md"
      }
    },
    {
      "title": "I'm Actually 30 Years Old",
      "date": "2023-12-30",
      "language": "en-US",
      "summary": "After tonight, I'll actually be 30 years old. I've shamelessly felt like I was only 24, and before that, even more shamelessly thought I was 18. I can't believe how fast time flies. Age feels like a wheel rolling down a mountain, gaining speed as time stretches on. Although my experiences are becoming richer, the perceived length of a year is significantly shorter than when I was a child, and I still feel some regret and melancholy.",
      "categories": [
        "Thought"
      ],
      "url": "https://tw93.fun/en/2023-12-30/30.html",
      "markdownUrl": "https://tw93.fun/en/2023-12-30/30.md",
      "translation": {
        "language": "zh-CN",
        "title": "我居然 30 岁了",
        "url": "https://tw93.fun/2023-12-30/30.html",
        "markdownUrl": "https://tw93.fun/2023-12-30/30.md"
      }
    },
    {
      "title": "不喜欢前端娱乐圈这种氛围",
      "date": "2023-12-26",
      "language": "zh-CN",
      "summary": "其实我个人挺不喜欢「前端娱乐圈」这种氛围，最近推上还出现了前端之十二生肖，一时不知道是自嘲还是娱乐。",
      "categories": [
        "Thought"
      ],
      "url": "https://tw93.fun/2023-12-26/fe.html",
      "markdownUrl": "https://tw93.fun/2023-12-26/fe.md",
      "translation": {
        "language": "en-US",
        "title": "Disliking the Drama in the Frontend Community",
        "url": "https://tw93.fun/en/2023-12-23/fe.html",
        "markdownUrl": "https://tw93.fun/en/2023-12-23/fe.md"
      }
    },
    {
      "title": "Disliking the Drama in the Frontend Community",
      "date": "2023-12-23",
      "language": "en-US",
      "summary": "Personally, I really dislike the \"drama\" atmosphere in the frontend community. Recently, the \"Twelve Zodiac Animals of Frontend\" even appeared on Twitter. For a moment, I couldn't tell if it was self-deprecation or entertainment.",
      "categories": [
        "Thought"
      ],
      "url": "https://tw93.fun/en/2023-12-23/fe.html",
      "markdownUrl": "https://tw93.fun/en/2023-12-23/fe.md",
      "translation": {
        "language": "zh-CN",
        "title": "不喜欢前端娱乐圈这种氛围",
        "url": "https://tw93.fun/2023-12-26/fe.html",
        "markdownUrl": "https://tw93.fun/2023-12-26/fe.md"
      }
    },
    {
      "title": "日本东京&大阪游记",
      "date": "2023-12-17",
      "language": "zh-CN",
      "summary": "11月底去日本玩了5天，第二次去日本玩，想用这篇文章来记录一下看到、听到、和本地朋友聊天等方式下和自己固有想法不一样的地方，或者说是我自己的独特感受，可能有偏差欢迎指出，也希望给后面去玩的朋友一些输入。",
      "categories": [
        "Life"
      ],
      "url": "https://tw93.fun/2023-12-17/jp.html",
      "markdownUrl": "https://tw93.fun/2023-12-17/jp.md",
      "translation": {
        "language": "en-US",
        "title": "Travelogue of Tokyo & Osaka, Japan",
        "url": "https://tw93.fun/en/2023-12-17/jp.html",
        "markdownUrl": "https://tw93.fun/en/2023-12-17/jp.md"
      }
    },
    {
      "title": "Travelogue of Tokyo & Osaka, Japan",
      "date": "2023-12-17",
      "language": "en-US",
      "summary": "I went to Japan for 5 days at the end of November, my second trip to Japan. I want to use this article to record what I saw, heard, and discussed with local friends that differed from my preconceived notions, or rather, my unique feelings. Any deviations in my understanding are welcome to be pointed out, and I hope to provide some input for friends planning to visit later.",
      "categories": [
        "Life"
      ],
      "url": "https://tw93.fun/en/2023-12-17/jp.html",
      "markdownUrl": "https://tw93.fun/en/2023-12-17/jp.md",
      "translation": {
        "language": "zh-CN",
        "title": "日本东京&大阪游记",
        "url": "https://tw93.fun/2023-12-17/jp.html",
        "markdownUrl": "https://tw93.fun/2023-12-17/jp.md"
      }
    },
    {
      "title": "我的咖啡机入门实践",
      "date": "2023-11-20",
      "language": "zh-CN",
      "summary": "如何不到一千块钱实现每天好喝咖啡自由？想通过这篇短文来给大伙分享一下我的咖啡机购买使用以及配件选择的经验，属于最近买得最有生活意义的一个物件。",
      "categories": [
        "Life"
      ],
      "url": "https://tw93.fun/2023-11-20/coffee.html",
      "markdownUrl": "https://tw93.fun/2023-11-20/coffee.md",
      "translation": {
        "language": "en-US",
        "title": "My Entry-Level Coffee Machine Practice",
        "url": "https://tw93.fun/en/2023-11-20/coffee.html",
        "markdownUrl": "https://tw93.fun/en/2023-11-20/coffee.md"
      }
    },
    {
      "title": "My Entry-Level Coffee Machine Practice",
      "date": "2023-11-20",
      "language": "en-US",
      "summary": "How to achieve daily delicious coffee freedom for less than a thousand yuan? I want to share my experience in purchasing, using, and selecting accessories for my coffee machine through this short article. It's one of the most meaningful items I've bought recently.",
      "categories": [
        "Life"
      ],
      "url": "https://tw93.fun/en/2023-11-20/coffee.html",
      "markdownUrl": "https://tw93.fun/en/2023-11-20/coffee.md",
      "translation": {
        "language": "zh-CN",
        "title": "我的咖啡机入门实践",
        "url": "https://tw93.fun/2023-11-20/coffee.html",
        "markdownUrl": "https://tw93.fun/2023-11-20/coffee.md"
      }
    },
    {
      "title": "My Entry-Level Cycling Practice",
      "date": "2023-10-26",
      "language": "en-US",
      "summary": "I bought a Dahon P8 and really love it. I want to organize a best practice guide for beginner cyclists, hoping to provide some reference for those who want to start cycling. Haha, if you want to copy my homework, feel free to do so.",
      "categories": [
        "Life"
      ],
      "url": "https://tw93.fun/en/2023-10-26/dahang.html",
      "markdownUrl": "https://tw93.fun/en/2023-10-26/dahang.md",
      "translation": {
        "language": "zh-CN",
        "title": "我的自行车入门实践",
        "url": "https://tw93.fun/2023-10-06/dahang.html",
        "markdownUrl": "https://tw93.fun/2023-10-06/dahang.md"
      }
    },
    {
      "title": "新一代前端发展的困境与破局",
      "date": "2023-10-25",
      "language": "zh-CN",
      "summary": "在重庆前端大会上的一个分享，对象为 React/Vue 出来之后的新一代前端开发者，在造轮子时代已经过去、国内前端环境很卷的情况下，前端工程师的成长路径相比之前要难不少，在这些困境下，分享如何以一种新的方式破局，用前端技术去真正解决业务难题，提升产品工程师实力，让自己以最不卷的方式成长起来。",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/2023-10-25/new-fe.html",
      "markdownUrl": "https://tw93.fun/2023-10-25/new-fe.md",
      "translation": {
        "language": "en-US",
        "title": "Next-Gen Frontend: Dilemma and Breakthrough",
        "url": "https://tw93.fun/en/2023-10-25/new-fe.html",
        "markdownUrl": "https://tw93.fun/en/2023-10-25/new-fe.md"
      }
    },
    {
      "title": "Next-Gen Frontend: Dilemma and Breakthrough",
      "date": "2023-10-25",
      "language": "en-US",
      "summary": "A sharing at the Chongqing Front-End Conference, targeting a new generation of front-end developers who emerged after React/Vue. With the era of reinventing the wheel over and the highly competitive domestic front-end environment, the growth path for front-end engineers is much more difficult than before. In these dilemmas, I share how to break through with a new approach, using front-end technology to truly solve business problems, enhance product engineer capabilities, and grow in the least competitive way.",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/en/2023-10-25/new-fe.html",
      "markdownUrl": "https://tw93.fun/en/2023-10-25/new-fe.md",
      "translation": {
        "language": "zh-CN",
        "title": "新一代前端发展的困境与破局",
        "url": "https://tw93.fun/2023-10-25/new-fe.html",
        "markdownUrl": "https://tw93.fun/2023-10-25/new-fe.md"
      }
    },
    {
      "title": "我的自行车入门实践",
      "date": "2023-10-06",
      "language": "zh-CN",
      "summary": "买了一辆大行 P8 很是喜欢，想来整理一个入门者自行车周边的最佳实践，希望可以给想骑车的小伙伴一些入门参考，哈哈有想抄作业的可以抄一抄。",
      "categories": [
        "Life"
      ],
      "url": "https://tw93.fun/2023-10-06/dahang.html",
      "markdownUrl": "https://tw93.fun/2023-10-06/dahang.md",
      "translation": {
        "language": "en-US",
        "title": "My Entry-Level Cycling Practice",
        "url": "https://tw93.fun/en/2023-10-26/dahang.html",
        "markdownUrl": "https://tw93.fun/en/2023-10-26/dahang.md"
      }
    },
    {
      "title": "我的家庭影院入门实践",
      "date": "2023-09-29",
      "language": "zh-CN",
      "summary": "分享一下 Apple TV + 索尼 + 回音壁 + 后环绕音箱 组成的家庭影音搭建过程，不少朋友想要详细教程，我随便写了下给大伙参考，欢迎交流。",
      "categories": [
        "Life"
      ],
      "url": "https://tw93.fun/2023-09-29/tv.html",
      "markdownUrl": "https://tw93.fun/2023-09-29/tv.md",
      "translation": {
        "language": "en-US",
        "title": "My Entry-Level Home Theater Practice",
        "url": "https://tw93.fun/en/2023-09-29/tv.html",
        "markdownUrl": "https://tw93.fun/en/2023-09-29/tv.md"
      }
    },
    {
      "title": "My Entry-Level Home Theater Practice",
      "date": "2023-09-29",
      "language": "en-US",
      "summary": "Sharing the process of building a home audio-visual system consisting of Apple TV + Sony + Soundbar + Rear Surround Speakers. Many friends wanted a detailed tutorial, so I casually wrote one for everyone's reference. Welcome to discuss.",
      "categories": [
        "Life"
      ],
      "url": "https://tw93.fun/en/2023-09-29/tv.html",
      "markdownUrl": "https://tw93.fun/en/2023-09-29/tv.md",
      "translation": {
        "language": "zh-CN",
        "title": "我的家庭影院入门实践",
        "url": "https://tw93.fun/2023-09-29/tv.html",
        "markdownUrl": "https://tw93.fun/2023-09-29/tv.md"
      }
    },
    {
      "title": "该以一种怎么样的心态来对待开源",
      "date": "2023-09-18",
      "language": "zh-CN",
      "summary": "最近好几位我喜欢的开发者被开源工作影响到了心情，加上国内的开源环境氛围不是很好，想碎碎念来聊一下，对于开发者和使用者，我们应该以一种怎么样的心态来对待开源，让自己可以持续的快乐写自己喜欢的代码。可能有些我理解偏差地方，很欢迎大伙指出。",
      "categories": [
        "Thought"
      ],
      "url": "https://tw93.fun/2023-09-18/open.html",
      "markdownUrl": "https://tw93.fun/2023-09-18/open.md",
      "translation": {
        "language": "en-US",
        "title": "The Right Mindset for Open Source",
        "url": "https://tw93.fun/en/2023-09-18/open.html",
        "markdownUrl": "https://tw93.fun/en/2023-09-18/open.md"
      }
    },
    {
      "title": "The Right Mindset for Open Source",
      "date": "2023-09-18",
      "language": "en-US",
      "summary": "Recently, several developers I admire have been affected by open source work, and the domestic open source environment is not very good. I want to talk about what kind of mindset developers and users should have towards open source so that we can continue to happily write code we like. There might be some misunderstandings on my part, and I welcome everyone to point them out.",
      "categories": [
        "Thought"
      ],
      "url": "https://tw93.fun/en/2023-09-18/open.html",
      "markdownUrl": "https://tw93.fun/en/2023-09-18/open.md",
      "translation": {
        "language": "zh-CN",
        "title": "该以一种怎么样的心态来对待开源",
        "url": "https://tw93.fun/2023-09-18/open.html",
        "markdownUrl": "https://tw93.fun/2023-09-18/open.md"
      }
    },
    {
      "title": "2023 我的浏览器折腾之旅",
      "date": "2023-08-20",
      "language": "zh-CN",
      "summary": "浏览器应该是不少同学电脑上使用频次最高的应用，对强迫症而言，会经常将干活的工具折腾到好用的状态。去年有写过我的 Mac 软件折腾之旅，经过一年的迭代变化，打算今年继续写，刚好有朋友问我用的是什么浏览器，那就从「2023 我的浏览器折腾之旅」开始吧。",
      "categories": [
        "Creation"
      ],
      "url": "https://tw93.fun/2023-08-20/edge.html",
      "markdownUrl": "https://tw93.fun/2023-08-20/edge.md",
      "translation": {
        "language": "en-US",
        "title": "My 2023 Browser Tinkering Journey",
        "url": "https://tw93.fun/en/2023-08-20/edge.html",
        "markdownUrl": "https://tw93.fun/en/2023-08-20/edge.md"
      }
    },
    {
      "title": "My 2023 Browser Tinkering Journey",
      "date": "2023-08-20",
      "language": "en-US",
      "summary": "The browser is likely the most frequently used application on many people's computers. For those of us with a penchant for optimization, we often tinker with our work tools until they're in a state of peak usability. Last year, I wrote about my journey tinkering with Mac software. After a year of iterations and changes, I plan to continue writing this year, starting with \"My 2023 Browser Tinkering Journey,\" especially since a friend recently asked me which browser I use.",
      "categories": [
        "Creation"
      ],
      "url": "https://tw93.fun/en/2023-08-20/edge.html",
      "markdownUrl": "https://tw93.fun/en/2023-08-20/edge.md",
      "translation": {
        "language": "zh-CN",
        "title": "2023 我的浏览器折腾之旅",
        "url": "https://tw93.fun/2023-08-20/edge.html",
        "markdownUrl": "https://tw93.fun/2023-08-20/edge.md"
      }
    },
    {
      "title": "Pake：用 Rust 和 Tauri 把网页打包成桌面应用",
      "date": "2023-08-03",
      "language": "zh-CN",
      "summary": "上周四在掘金的跨端技术分享上的一个主题，将 Pake 开源过程中的一些思考和经验分享给大家，同时也聊了聊前端、Rust、开源、技术产品化的一些自己想法，文章中有对应的分享稿、视频、知识点梳理等内容。",
      "categories": [
        "Creation"
      ],
      "url": "https://tw93.fun/2023-08-03/pake.html",
      "markdownUrl": "https://tw93.fun/2023-08-03/pake.md",
      "translation": {
        "language": "en-US",
        "title": "Pake: Turn Any Web Page into a Lightweight Desktop App",
        "url": "https://tw93.fun/en/2023-08-03/pake.html",
        "markdownUrl": "https://tw93.fun/en/2023-08-03/pake.md"
      }
    },
    {
      "title": "Pake: Turn Any Web Page into a Lightweight Desktop App",
      "date": "2023-08-03",
      "language": "en-US",
      "summary": "A topic from last Thursday's cross-platform technical sharing event at Juejin. I shared some thoughts and experiences from the open-sourcing process of Pake, and also discussed some of my ideas about front-end, Rust, open source, and technology productization. Interested friends are welcome to communicate, and please point out any unclear parts.",
      "categories": [
        "Creation"
      ],
      "url": "https://tw93.fun/en/2023-08-03/pake.html",
      "markdownUrl": "https://tw93.fun/en/2023-08-03/pake.md",
      "translation": {
        "language": "zh-CN",
        "title": "Pake：用 Rust 和 Tauri 把网页打包成桌面应用",
        "url": "https://tw93.fun/2023-08-03/pake.html",
        "markdownUrl": "https://tw93.fun/2023-08-03/pake.md"
      }
    },
    {
      "title": "译·如何做出伟大的工作",
      "date": "2023-07-20",
      "language": "zh-CN",
      "summary": "最近「黑客与画家」的作者出了一篇新的文章《How To Do Great Work / 如何做出伟大的工作》，写得特别好，很符合我的胃口，我用 ChatGPT4 给翻译了一下，帮大伙省下 Token，全文很长，可以有空时候细看。",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/2023-07-20/great.html",
      "markdownUrl": "https://tw93.fun/2023-07-20/great.md",
      "translation": null
    },
    {
      "title": "香港和想象中不一样的地方",
      "date": "2023-07-02",
      "language": "zh-CN",
      "summary": "第一次去香港，平时旅游不太喜欢赶场打卡，反而喜欢观察人文环境，发现不少和想象中不一样的地方，放到这里随便聊聊。",
      "categories": [
        "Life"
      ],
      "url": "https://tw93.fun/2023-07-02/hongkong.html",
      "markdownUrl": "https://tw93.fun/2023-07-02/hongkong.md",
      "translation": {
        "language": "en-US",
        "title": "Hong Kong: Not What I Expected",
        "url": "https://tw93.fun/en/2023-07-02/hongkong.html",
        "markdownUrl": "https://tw93.fun/en/2023-07-02/hongkong.md"
      }
    },
    {
      "title": "Hong Kong: Not What I Expected",
      "date": "2023-07-02",
      "language": "en-US",
      "summary": "My first trip to Hong Kong was not about ticking off tourist spots but rather observing the culture and environment, leading to discoveries quite different from what I had imagined. Here's a casual chat about those observations.",
      "categories": [
        "Life"
      ],
      "url": "https://tw93.fun/en/2023-07-02/hongkong.html",
      "markdownUrl": "https://tw93.fun/en/2023-07-02/hongkong.md",
      "translation": {
        "language": "zh-CN",
        "title": "香港和想象中不一样的地方",
        "url": "https://tw93.fun/2023-07-02/hongkong.html",
        "markdownUrl": "https://tw93.fun/2023-07-02/hongkong.md"
      }
    },
    {
      "title": "全飞秒近视手术过程和恢复记录",
      "date": "2023-05-17",
      "language": "zh-CN",
      "summary": "5月中旬做了一个全飞秒近视手术，在这里记录一下当天、术后的感受，希望可以给到好奇的同学一些参考。",
      "categories": [
        "Life"
      ],
      "url": "https://tw93.fun/2023-05-17/eyes.html",
      "markdownUrl": "https://tw93.fun/2023-05-17/eyes.md",
      "translation": {
        "language": "en-US",
        "title": "My SMILE Eye Surgery Experience",
        "url": "https://tw93.fun/en/2023-05-17/eyes.html",
        "markdownUrl": "https://tw93.fun/en/2023-05-17/eyes.md"
      }
    },
    {
      "title": "My SMILE Eye Surgery Experience",
      "date": "2023-05-17",
      "language": "en-US",
      "summary": "I had a SMILE myopia surgery in mid-May. I'm recording my feelings on the day of the surgery and after the surgery here, hoping to provide some reference for curious friends.",
      "categories": [
        "Life"
      ],
      "url": "https://tw93.fun/en/2023-05-17/eyes.html",
      "markdownUrl": "https://tw93.fun/en/2023-05-17/eyes.md",
      "translation": {
        "language": "zh-CN",
        "title": "全飞秒近视手术过程和恢复记录",
        "url": "https://tw93.fun/2023-05-17/eyes.html",
        "markdownUrl": "https://tw93.fun/2023-05-17/eyes.md"
      }
    },
    {
      "title": "改良了下传说中最快的终端",
      "date": "2023-02-06",
      "language": "zh-CN",
      "summary": "好久没有折腾电脑的命令行终端工具了，之前用了好多年的 iTerm2，也尝试过 Hyper、Warp、Wez's、Kitty 等，要么冷启动慢，要么不太顺手。",
      "categories": [
        "Creation"
      ],
      "url": "https://tw93.fun/2023-02-06/alacritty.html",
      "markdownUrl": "https://tw93.fun/2023-02-06/alacritty.md",
      "translation": {
        "language": "en-US",
        "title": "Improvements to the Legendary Fastest Terminal",
        "url": "https://tw93.fun/en/2023-02-06/alacritty.html",
        "markdownUrl": "https://tw93.fun/en/2023-02-06/alacritty.md"
      }
    },
    {
      "title": "Improvements to the Legendary Fastest Terminal",
      "date": "2023-02-06",
      "language": "en-US",
      "summary": "It's been a while since I tinkered with command-line terminal tools on my computer. After using iTerm2 for many years, due to being part of the aesthetics crowd, I started using Hyper last year, paired with Oh My Zsh, and it's been pretty smooth, except for the somewhat slow cold start. I've also tried others like Warp, Wez's, Kitty, etc., but none felt quite right.",
      "categories": [
        "Creation"
      ],
      "url": "https://tw93.fun/en/2023-02-06/alacritty.html",
      "markdownUrl": "https://tw93.fun/en/2023-02-06/alacritty.md",
      "translation": {
        "language": "zh-CN",
        "title": "改良了下传说中最快的终端",
        "url": "https://tw93.fun/2023-02-06/alacritty.html",
        "markdownUrl": "https://tw93.fun/2023-02-06/alacritty.md"
      }
    },
    {
      "title": "什么是比较好的低代码产品",
      "date": "2023-01-02",
      "language": "zh-CN",
      "summary": "说到低代码，喜欢的人特别喜欢，不喜欢的人很不喜欢，此外也有“假装”去喜欢的，也有喜欢得不明不白的，我现在对于低代码是有点儿喜欢的那种，不过只限于在特定领域，实现需求的速度比熟练工程师写代码要快的场景，最近在思考团队下一步的提效方式，来看看业界开源的低代码产品，说不定会有一些输入。",
      "categories": [
        "Thought"
      ],
      "url": "https://tw93.fun/2023-01-02/low-code.html",
      "markdownUrl": "https://tw93.fun/2023-01-02/low-code.md",
      "translation": {
        "language": "en-US",
        "title": "Building Good Low-Code Products",
        "url": "https://tw93.fun/en/2023-01-02/low-code.html",
        "markdownUrl": "https://tw93.fun/en/2023-01-02/low-code.md"
      }
    },
    {
      "title": "Building Good Low-Code Products",
      "date": "2023-01-02",
      "language": "en-US",
      "summary": "When it comes to low-code, there are those who love it passionately and those who are decidedly less enthusiastic. There are also those who \"pretend\" to like it and others who like it without really understanding why. Currently, I find myself somewhat fond of low-code, but only within specific domains where it can significantly speed up the development process compared to traditional coding by skilled engineers. Lately, I've been contemplating the next steps for team efficiency and decided to explore the open-source low-code products in the industry, which might offer some insights.",
      "categories": [
        "Thought"
      ],
      "url": "https://tw93.fun/en/2023-01-02/low-code.html",
      "markdownUrl": "https://tw93.fun/en/2023-01-02/low-code.md",
      "translation": {
        "language": "zh-CN",
        "title": "什么是比较好的低代码产品",
        "url": "https://tw93.fun/2023-01-02/low-code.html",
        "markdownUrl": "https://tw93.fun/2023-01-02/low-code.md"
      }
    },
    {
      "title": "工程师如何明白的做事情",
      "date": "2022-12-09",
      "language": "zh-CN",
      "summary": "最近给团队同学的一个分享，作为工程师而言如何明白的做事情。",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/2022-12-09/talk.html",
      "markdownUrl": "https://tw93.fun/2022-12-09/talk.md",
      "translation": {
        "language": "en-US",
        "title": "How Engineers Can Do Things Clearly",
        "url": "https://tw93.fun/en/2022-12-09/talk.html",
        "markdownUrl": "https://tw93.fun/en/2022-12-09/talk.md"
      }
    },
    {
      "title": "How Engineers Can Do Things Clearly",
      "date": "2022-12-09",
      "language": "en-US",
      "summary": "A recent sharing with the team on how engineers can do things clearly.",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/en/2022-12-09/talk.html",
      "markdownUrl": "https://tw93.fun/en/2022-12-09/talk.md",
      "translation": {
        "language": "zh-CN",
        "title": "工程师如何明白的做事情",
        "url": "https://tw93.fun/2022-12-09/talk.html",
        "markdownUrl": "https://tw93.fun/2022-12-09/talk.md"
      }
    },
    {
      "title": "普通人如何不被 OpenAI 取代？",
      "date": "2022-12-04",
      "language": "zh-CN",
      "summary": "今天试了试 OpenAI 的一些功能，通过主题来记录一下使用场景，发现了不少他强于普通人的地方，那么我们怎么在认知和能力方面不被他取代呢？",
      "categories": [
        "Thought"
      ],
      "url": "https://tw93.fun/2022-12-04/openai.html",
      "markdownUrl": "https://tw93.fun/2022-12-04/openai.md",
      "translation": {
        "language": "en-US",
        "title": "How Ordinary People Can Avoid Being Replaced by OpenAI?",
        "url": "https://tw93.fun/en/2022-12-04/openai.html",
        "markdownUrl": "https://tw93.fun/en/2022-12-04/openai.md"
      }
    },
    {
      "title": "How Ordinary People Can Avoid Being Replaced by OpenAI?",
      "date": "2022-12-04",
      "language": "en-US",
      "summary": "Today I tried some features of OpenAI and recorded the usage scenarios by topic. I found many areas where it is stronger than ordinary people. So how can we avoid being replaced by it in terms of cognition and ability?",
      "categories": [
        "Thought"
      ],
      "url": "https://tw93.fun/en/2022-12-04/openai.html",
      "markdownUrl": "https://tw93.fun/en/2022-12-04/openai.md",
      "translation": {
        "language": "zh-CN",
        "title": "普通人如何不被 OpenAI 取代？",
        "url": "https://tw93.fun/2022-12-04/openai.html",
        "markdownUrl": "https://tw93.fun/2022-12-04/openai.md"
      }
    },
    {
      "title": "用 Pake 打包了个极简 Twitter",
      "date": "2022-11-05",
      "language": "zh-CN",
      "summary": "一个很简单的用 Rust 打包网页生成很小的 Mac App 工具，底层使用 Tauri，当前支持微信读书、Twitter、语雀、RunCode、Witeboard、Flomo、Vercel 等。",
      "categories": [
        "Creation"
      ],
      "url": "https://tw93.fun/2022-11-05/pake.html",
      "markdownUrl": "https://tw93.fun/2022-11-05/pake.md",
      "translation": {
        "language": "en-US",
        "title": "Building a Minimalist Twitter with Pake",
        "url": "https://tw93.fun/en/2022-11-05/pake.html",
        "markdownUrl": "https://tw93.fun/en/2022-11-05/pake.md"
      }
    },
    {
      "title": "Building a Minimalist Twitter with Pake",
      "date": "2022-11-05",
      "language": "en-US",
      "summary": "A simple tool for packaging web pages into lightweight Mac apps using Rust, built on Tauri. Currently supports WeChat Reading, Twitter, Yuque, RunCode, Witeboard, Flomo, Vercel, and more.",
      "categories": [
        "Creation"
      ],
      "url": "https://tw93.fun/en/2022-11-05/pake.html",
      "markdownUrl": "https://tw93.fun/en/2022-11-05/pake.md",
      "translation": {
        "language": "zh-CN",
        "title": "用 Pake 打包了个极简 Twitter",
        "url": "https://tw93.fun/2022-11-05/pake.html",
        "markdownUrl": "https://tw93.fun/2022-11-05/pake.md"
      }
    },
    {
      "title": "潮流周刊 100 期，做了个官网",
      "date": "2022-10-22",
      "language": "zh-CN",
      "summary": "之前潮流周刊放到了 Github 上，不是太好用，趁着国庆那几天，学习了下 Astro ，自己设计开发了一个潮流周刊的官网，终于感觉舒服一些了，分享出来给大家。",
      "categories": [
        "Creation"
      ],
      "url": "https://tw93.fun/2022-10-22/weekly.html",
      "markdownUrl": "https://tw93.fun/2022-10-22/weekly.md",
      "translation": {
        "language": "en-US",
        "title": "Trendy Weekly 100th Issue, Made a Website",
        "url": "https://tw93.fun/en/2022-10-22/weekly.html",
        "markdownUrl": "https://tw93.fun/en/2022-10-22/weekly.md"
      }
    },
    {
      "title": "Trendy Weekly 100th Issue, Made a Website",
      "date": "2022-10-22",
      "language": "en-US",
      "summary": "Before, Trendy Weekly was put on Github, which was not very easy to use. Taking advantage of the National Day holiday, I learned Astro and designed and developed a website for Trendy Weekly myself. It finally feels more comfortable. Sharing it with everyone.",
      "categories": [
        "Creation"
      ],
      "url": "https://tw93.fun/en/2022-10-22/weekly.html",
      "markdownUrl": "https://tw93.fun/en/2022-10-22/weekly.md",
      "translation": {
        "language": "zh-CN",
        "title": "潮流周刊 100 期，做了个官网",
        "url": "https://tw93.fun/2022-10-22/weekly.html",
        "markdownUrl": "https://tw93.fun/2022-10-22/weekly.md"
      }
    },
    {
      "title": "妙言：给工程师用的原生 Markdown 笔记应用",
      "date": "2022-09-09",
      "language": "zh-CN",
      "summary": "这篇文章主要想给大家介绍一下妙言的功能清单，为啥更适合工程师使用，也包括个人对于产品本身的一些想法。",
      "categories": [
        "Creation"
      ],
      "url": "https://tw93.fun/2022-09-09/miaoyan.html",
      "markdownUrl": "https://tw93.fun/2022-09-09/miaoyan.md",
      "translation": {
        "language": "en-US",
        "title": "MiaoYan: A Native Markdown Editor for macOS",
        "url": "https://tw93.fun/en/2022-09-09/miaoyan.html",
        "markdownUrl": "https://tw93.fun/en/2022-09-09/miaoyan.md"
      }
    },
    {
      "title": "MiaoYan: A Native Markdown Editor for macOS",
      "date": "2022-09-09",
      "language": "en-US",
      "summary": "This article mainly introduces the feature list of MiaoYan, why it is more suitable for engineers, and some personal thoughts on the product itself.",
      "categories": [
        "Creation"
      ],
      "url": "https://tw93.fun/en/2022-09-09/miaoyan.html",
      "markdownUrl": "https://tw93.fun/en/2022-09-09/miaoyan.md",
      "translation": {
        "language": "zh-CN",
        "title": "妙言：给工程师用的原生 Markdown 笔记应用",
        "url": "https://tw93.fun/2022-09-09/miaoyan.html",
        "markdownUrl": "https://tw93.fun/2022-09-09/miaoyan.md"
      }
    },
    {
      "title": "如何做一个产品工程师？",
      "date": "2022-07-29",
      "language": "zh-CN",
      "summary": "最近给团队同学的一个分享，从前端工程师的视角来看如何做成一个产品开发工程师。",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/2022-07-29/pd-code.html",
      "markdownUrl": "https://tw93.fun/2022-07-29/pd-code.md",
      "translation": {
        "language": "en-US",
        "title": "How to be a Product Engineer?",
        "url": "https://tw93.fun/en/2022-07-29/pd-code.html",
        "markdownUrl": "https://tw93.fun/en/2022-07-29/pd-code.md"
      }
    },
    {
      "title": "How to be a Product Engineer?",
      "date": "2022-07-29",
      "language": "en-US",
      "summary": "A recent sharing with the team, from the perspective of a front-end engineer, how to become a product development engineer.",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/en/2022-07-29/pd-code.html",
      "markdownUrl": "https://tw93.fun/en/2022-07-29/pd-code.md",
      "translation": {
        "language": "zh-CN",
        "title": "如何做一个产品工程师？",
        "url": "https://tw93.fun/2022-07-29/pd-code.html",
        "markdownUrl": "https://tw93.fun/2022-07-29/pd-code.md"
      }
    },
    {
      "title": "如何给你的代码祝寿",
      "date": "2022-07-09",
      "language": "zh-CN",
      "summary": "最近 XRender 3 岁了，之前玩过的 gource 和 ffmpeg，想着可以用这两个库给她开源这一路来的历程当做一个故事给播放出来。",
      "categories": [
        "Creation"
      ],
      "url": "https://tw93.fun/2022-07-09/code.html",
      "markdownUrl": "https://tw93.fun/2022-07-09/code.md",
      "translation": {
        "language": "en-US",
        "title": "How to Celebrate Your Code's Birthday",
        "url": "https://tw93.fun/en/2022-07-09/code.html",
        "markdownUrl": "https://tw93.fun/en/2022-07-09/code.md"
      }
    },
    {
      "title": "How to Celebrate Your Code's Birthday",
      "date": "2022-07-09",
      "language": "en-US",
      "summary": "Recently XRender turned 3 years old. I had played with gource and ffmpeg before, thinking I could use these two libraries to play the journey of her open source as a story.",
      "categories": [
        "Creation"
      ],
      "url": "https://tw93.fun/en/2022-07-09/code.html",
      "markdownUrl": "https://tw93.fun/en/2022-07-09/code.md",
      "translation": {
        "language": "zh-CN",
        "title": "如何给你的代码祝寿",
        "url": "https://tw93.fun/2022-07-09/code.html",
        "markdownUrl": "https://tw93.fun/2022-07-09/code.md"
      }
    },
    {
      "title": "大环境不好的情况下如何🐶着",
      "date": "2022-07-01",
      "language": "zh-CN",
      "summary": "大概是今年4月份给团队同学的一个分享，归档于博客，来聊聊作为一个国内的开发工程师，如何在大环境不好的情况🐶着变强。",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/2022-07-01/gou.html",
      "markdownUrl": "https://tw93.fun/2022-07-01/gou.md",
      "translation": {
        "language": "en-US",
        "title": "How to Survive and Thrive in a Tough Environment",
        "url": "https://tw93.fun/en/2022-07-01/gou.html",
        "markdownUrl": "https://tw93.fun/en/2022-07-01/gou.md"
      }
    },
    {
      "title": "How to Survive and Thrive in a Tough Environment",
      "date": "2022-07-01",
      "language": "en-US",
      "summary": "Probably a sharing to the team in April this year, archived in the blog. Let's talk about how a domestic development engineer can survive and become stronger when the environment is bad.",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/en/2022-07-01/gou.html",
      "markdownUrl": "https://tw93.fun/en/2022-07-01/gou.md",
      "translation": {
        "language": "zh-CN",
        "title": "大环境不好的情况下如何🐶着",
        "url": "https://tw93.fun/2022-07-01/gou.html",
        "markdownUrl": "https://tw93.fun/2022-07-01/gou.md"
      }
    },
    {
      "title": "2022 年我的 Mac 软件折腾之旅",
      "date": "2022-06-25",
      "language": "zh-CN",
      "summary": "何为差生文具多，看完这个你就清楚了， 用于2022年6月16日团队双周会的一个快闪分享。",
      "categories": [
        "Creation"
      ],
      "url": "https://tw93.fun/2022-06-25/mac.html",
      "markdownUrl": "https://tw93.fun/2022-06-25/mac.md",
      "translation": {
        "language": "en-US",
        "title": "My Mac Software Setup in 2022",
        "url": "https://tw93.fun/en/2022-06-25/mac.html",
        "markdownUrl": "https://tw93.fun/en/2022-06-25/mac.md"
      }
    },
    {
      "title": "My Mac Software Setup in 2022",
      "date": "2022-06-25",
      "language": "en-US",
      "summary": "Why do poor students have so much stationery? You'll understand after reading this. A quick share for the team bi-weekly meeting on June 16, 2022.",
      "categories": [
        "Creation"
      ],
      "url": "https://tw93.fun/en/2022-06-25/mac.html",
      "markdownUrl": "https://tw93.fun/en/2022-06-25/mac.md",
      "translation": {
        "language": "zh-CN",
        "title": "2022 年我的 Mac 软件折腾之旅",
        "url": "https://tw93.fun/2022-06-25/mac.html",
        "markdownUrl": "https://tw93.fun/2022-06-25/mac.md"
      }
    },
    {
      "title": "妙言 Markdown 编辑器介绍",
      "date": "2022-06-13",
      "language": "zh-CN",
      "summary": "最近将自己两年前做的一个 macOS 的 Markdown 笔记应用给完善了一下，放出来给大伙试试。",
      "categories": [
        "Creation"
      ],
      "url": "https://tw93.fun/2022-06-13/a-good-markdown.html",
      "markdownUrl": "https://tw93.fun/2022-06-13/a-good-markdown.md",
      "translation": {
        "language": "en-US",
        "title": "Introduction to MiaoYan Markdown Editor",
        "url": "https://tw93.fun/en/2022-06-13/a-good-markdown.html",
        "markdownUrl": "https://tw93.fun/en/2022-06-13/a-good-markdown.md"
      }
    },
    {
      "title": "Introduction to MiaoYan Markdown Editor",
      "date": "2022-06-13",
      "language": "en-US",
      "summary": "Recently I refined a macOS Markdown note application I made two years ago and released it for everyone to try.",
      "categories": [
        "Creation"
      ],
      "url": "https://tw93.fun/en/2022-06-13/a-good-markdown.html",
      "markdownUrl": "https://tw93.fun/en/2022-06-13/a-good-markdown.md",
      "translation": {
        "language": "zh-CN",
        "title": "妙言 Markdown 编辑器介绍",
        "url": "https://tw93.fun/2022-06-13/a-good-markdown.html",
        "markdownUrl": "https://tw93.fun/2022-06-13/a-good-markdown.md"
      }
    },
    {
      "title": "你居然还在用 WebStorm ？",
      "date": "2021-07-09",
      "language": "zh-CN",
      "summary": "那么到底 WebStorm 更香在哪儿，周末花了个下午怼篇文章来开一个 “历史倒车轮“，给大伙介绍一下「如何用上 WebStorm 最新正版？」「如何让 WebStorm 好用不卡？」，以及「WebStorm 香的地方在哪里？」",
      "categories": [
        "Creation"
      ],
      "url": "https://tw93.fun/2021-07-09/webstorm.html",
      "markdownUrl": "https://tw93.fun/2021-07-09/webstorm.md",
      "translation": {
        "language": "en-US",
        "title": "You Are Still Using WebStorm?",
        "url": "https://tw93.fun/en/2021-07-09/webstorm.html",
        "markdownUrl": "https://tw93.fun/en/2021-07-09/webstorm.md"
      }
    },
    {
      "title": "You Are Still Using WebStorm?",
      "date": "2021-07-09",
      "language": "en-US",
      "summary": "What makes WebStorm worth using over VS Code in 2021? I spent an afternoon writing this comprehensive guide covering how to obtain a genuine license, how to optimize WebStorm for blazing speed on macOS, and where its IDE features truly shine.",
      "categories": [
        "Creation"
      ],
      "url": "https://tw93.fun/en/2021-07-09/webstorm.html",
      "markdownUrl": "https://tw93.fun/en/2021-07-09/webstorm.md",
      "translation": {
        "language": "zh-CN",
        "title": "你居然还在用 WebStorm ？",
        "url": "https://tw93.fun/2021-07-09/webstorm.html",
        "markdownUrl": "https://tw93.fun/2021-07-09/webstorm.md"
      }
    },
    {
      "title": "为啥两年前的 APP 这么好用？",
      "date": "2021-06-09",
      "language": "zh-CN",
      "summary": "在 21 年 6月初苹果 WWDC 2021 发布会第二天，iOS 15 开发者测试版就放出来了，我这个软件尝鲜强迫症患者忍不住就立马更新了",
      "categories": [
        "Thought"
      ],
      "url": "https://tw93.fun/2021-06-09/app.html",
      "markdownUrl": "https://tw93.fun/2021-06-09/app.md",
      "translation": {
        "language": "en-US",
        "title": "Why Were APPs Two Years Ago So Easy to Use?",
        "url": "https://tw93.fun/en/2021-06-09/app.html",
        "markdownUrl": "https://tw93.fun/en/2021-06-09/app.md"
      }
    },
    {
      "title": "Why Were APPs Two Years Ago So Easy to Use?",
      "date": "2021-06-09",
      "language": "en-US",
      "summary": "On the second day of the Apple WWDC 2021 conference in early June 2021, the iOS 15 developer beta was released. As a software early adopter with OCD, I couldn't help but update it immediately.",
      "categories": [
        "Thought"
      ],
      "url": "https://tw93.fun/en/2021-06-09/app.html",
      "markdownUrl": "https://tw93.fun/en/2021-06-09/app.md",
      "translation": {
        "language": "zh-CN",
        "title": "为啥两年前的 APP 这么好用？",
        "url": "https://tw93.fun/2021-06-09/app.html",
        "markdownUrl": "https://tw93.fun/2021-06-09/app.md"
      }
    },
    {
      "title": "Github 居然可以这么玩",
      "date": "2020-07-17",
      "language": "zh-CN",
      "summary": "让你的Github个人页，变成一个博客首页，同时每天自动更新信息展示",
      "categories": [
        "Creation"
      ],
      "url": "https://tw93.fun/2020-07-17/markdown.html",
      "markdownUrl": "https://tw93.fun/2020-07-17/markdown.md",
      "translation": {
        "language": "en-US",
        "title": "Github Can Be Played Like This?",
        "url": "https://tw93.fun/en/2020-07-17/markdown.html",
        "markdownUrl": "https://tw93.fun/en/2020-07-17/markdown.md"
      }
    },
    {
      "title": "Github Can Be Played Like This?",
      "date": "2020-07-17",
      "language": "en-US",
      "summary": "Make your Github profile page a blog homepage, and automatically update information display every day.",
      "categories": [
        "Creation"
      ],
      "url": "https://tw93.fun/en/2020-07-17/markdown.html",
      "markdownUrl": "https://tw93.fun/en/2020-07-17/markdown.md",
      "translation": {
        "language": "zh-CN",
        "title": "Github 居然可以这么玩",
        "url": "https://tw93.fun/2020-07-17/markdown.html",
        "markdownUrl": "https://tw93.fun/2020-07-17/markdown.md"
      }
    },
    {
      "title": "我的 2020 🔥软件分享",
      "date": "2020-05-27",
      "language": "zh-CN",
      "summary": "给内部同学分享常用的一些 Mac 软件",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/2020-05-27/good-app.html",
      "markdownUrl": "https://tw93.fun/2020-05-27/good-app.md",
      "translation": {
        "language": "en-US",
        "title": "My 2020 🔥 Software Sharing",
        "url": "https://tw93.fun/en/2020-05-27/good-app.html",
        "markdownUrl": "https://tw93.fun/en/2020-05-27/good-app.md"
      }
    },
    {
      "title": "My 2020 🔥 Software Sharing",
      "date": "2020-05-27",
      "language": "en-US",
      "summary": "Sharing some commonly used Mac software with internal colleagues.",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/en/2020-05-27/good-app.html",
      "markdownUrl": "https://tw93.fun/en/2020-05-27/good-app.md",
      "translation": {
        "language": "zh-CN",
        "title": "我的 2020 🔥软件分享",
        "url": "https://tw93.fun/2020-05-27/good-app.html",
        "markdownUrl": "https://tw93.fun/2020-05-27/good-app.md"
      }
    },
    {
      "title": "运营后台的交互设计分享",
      "date": "2020-03-18",
      "language": "zh-CN",
      "summary": "给内部同学分享的中后台交互设计的思考",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/2020-03-18/how-to-do-design.html",
      "markdownUrl": "https://tw93.fun/2020-03-18/how-to-do-design.md",
      "translation": {
        "language": "en-US",
        "title": "Operation Backend Interaction Design Sharing",
        "url": "https://tw93.fun/en/2020-03-18/how-to-do-design.html",
        "markdownUrl": "https://tw93.fun/en/2020-03-18/how-to-do-design.md"
      }
    },
    {
      "title": "Operation Backend Interaction Design Sharing",
      "date": "2020-03-18",
      "language": "en-US",
      "summary": "Thoughts on Mid-backend Interaction Design Shared with Internal Colleagues",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/en/2020-03-18/how-to-do-design.html",
      "markdownUrl": "https://tw93.fun/en/2020-03-18/how-to-do-design.md",
      "translation": {
        "language": "zh-CN",
        "title": "运营后台的交互设计分享",
        "url": "https://tw93.fun/2020-03-18/how-to-do-design.html",
        "markdownUrl": "https://tw93.fun/2020-03-18/how-to-do-design.md"
      }
    },
    {
      "title": "产品和开源分享",
      "date": "2019-11-25",
      "language": "zh-CN",
      "summary": "关于如何做小的技术产品以及应该以什么心态看待开源的一次分享。",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/2019-11-25/product-and-github.html",
      "markdownUrl": "https://tw93.fun/2019-11-25/product-and-github.md",
      "translation": {
        "language": "en-US",
        "title": "Product and Open Source Sharing",
        "url": "https://tw93.fun/en/2019-11-25/product-and-github.html",
        "markdownUrl": "https://tw93.fun/en/2019-11-25/product-and-github.md"
      }
    },
    {
      "title": "Product and Open Source Sharing",
      "date": "2019-11-25",
      "language": "en-US",
      "summary": "A sharing about how to make small technical products and what mindset to have toward open source.",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/en/2019-11-25/product-and-github.html",
      "markdownUrl": "https://tw93.fun/en/2019-11-25/product-and-github.md",
      "translation": {
        "language": "zh-CN",
        "title": "产品和开源分享",
        "url": "https://tw93.fun/2019-11-25/product-and-github.html",
        "markdownUrl": "https://tw93.fun/2019-11-25/product-and-github.md"
      }
    },
    {
      "title": "CreateJS 新司机开车指南",
      "date": "2018-07-28",
      "language": "zh-CN",
      "summary": "最近在对前端互动游戏技术一些学习和探索，恰逢上一个小游戏使用了 CreateJS 技术，借此文对其使用做一次备忘，同时让想用 CreateJS 写小游戏的同学可以快速上手。",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/2018-07-28/createjs.html",
      "markdownUrl": "https://tw93.fun/2018-07-28/createjs.md",
      "translation": {
        "language": "en-US",
        "title": "CreateJS Beginner's Guide",
        "url": "https://tw93.fun/en/2018-07-28/createjs.html",
        "markdownUrl": "https://tw93.fun/en/2018-07-28/createjs.md"
      }
    },
    {
      "title": "CreateJS Beginner's Guide",
      "date": "2018-07-28",
      "language": "en-US",
      "summary": "Recently I've been exploring front-end interactive game tech, and built a small game with CreateJS. This post serves as a personal reference and a quick-start guide for anyone looking to build mini web games with CreateJS.",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/en/2018-07-28/createjs.html",
      "markdownUrl": "https://tw93.fun/en/2018-07-28/createjs.md",
      "translation": {
        "language": "zh-CN",
        "title": "CreateJS 新司机开车指南",
        "url": "https://tw93.fun/2018-07-28/createjs.html",
        "markdownUrl": "https://tw93.fun/2018-07-28/createjs.md"
      }
    },
    {
      "title": "《黑客与画家》读书笔记",
      "date": "2018-07-08",
      "language": "zh-CN",
      "summary": "最近在看《黑客与画家》这一本书，主要介绍黑客即优秀程序员的爱好和动机，讨论黑客成长、黑客对世界的贡献以及编程语言和黑客工作方法等所有对计算机时代感兴趣的人的一些话题，本文用于记录读书过程中的一些笔记和思考。",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/2018-07-08/hacker.html",
      "markdownUrl": "https://tw93.fun/2018-07-08/hacker.md",
      "translation": {
        "language": "en-US",
        "title": "Reading Notes on \"Hackers and Painters\"",
        "url": "https://tw93.fun/en/2018-07-08/hacker.html",
        "markdownUrl": "https://tw93.fun/en/2018-07-08/hacker.md"
      }
    },
    {
      "title": "Reading Notes on \"Hackers and Painters\"",
      "date": "2018-07-08",
      "language": "en-US",
      "summary": "Recently I am reading the book \"Hackers and Painters\", which mainly introduces the hobbies and motivations of hackers, i.e., excellent programmers, discusses hacker growth, hacker's contribution to the world, programming languages and hacker working methods, and other topics for everyone interested in the computer age. This article is used to record some notes and thoughts during reading.",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/en/2018-07-08/hacker.html",
      "markdownUrl": "https://tw93.fun/en/2018-07-08/hacker.md",
      "translation": {
        "language": "zh-CN",
        "title": "《黑客与画家》读书笔记",
        "url": "https://tw93.fun/2018-07-08/hacker.html",
        "markdownUrl": "https://tw93.fun/2018-07-08/hacker.md"
      }
    },
    {
      "title": "Weex Ui 半年开源之路",
      "date": "2018-03-31",
      "language": "zh-CN",
      "summary": "Weex Ui 于去年9月30日开源后，距离今天刚好半年时间，本文打算从起源、定位、现状、发展、展望这5部分来给大家分享 Weex Ui 半年的开源之路。",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/2018-03-31/weex-ui-report.html",
      "markdownUrl": "https://tw93.fun/2018-03-31/weex-ui-report.md",
      "translation": {
        "language": "en-US",
        "title": "Weex Ui Half-Year Open Source Road",
        "url": "https://tw93.fun/en/2018-03-31/weex-ui-report.html",
        "markdownUrl": "https://tw93.fun/en/2018-03-31/weex-ui-report.md"
      }
    },
    {
      "title": "Weex Ui Half-Year Open Source Road",
      "date": "2018-03-31",
      "language": "en-US",
      "summary": "Weex Ui was open sourced on September 30 last year. It has been exactly half a year since today. This article intends to share the Weex Ui half-year open source road from 5 parts: origin, positioning, status quo, development, and outlook.",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/en/2018-03-31/weex-ui-report.html",
      "markdownUrl": "https://tw93.fun/en/2018-03-31/weex-ui-report.md",
      "translation": {
        "language": "zh-CN",
        "title": "Weex Ui 半年开源之路",
        "url": "https://tw93.fun/2018-03-31/weex-ui-report.html",
        "markdownUrl": "https://tw93.fun/2018-03-31/weex-ui-report.md"
      }
    },
    {
      "title": "iOS 中的 JS",
      "date": "2018-03-17",
      "language": "zh-CN",
      "summary": "最近主要在研究 iOS 中的 JS 这一块内容，打算从 为什么不能单纯地搞前端、JSCore 的原理和通信机制、OC 底层 Runtime 原理、如何通过 JS 任意修改 iOS 的运行结果 这4部分来阐述，旨在让前端和 iOS 开发同学更加了解跨端开发的原理，并知晓他俩结合起来做哪些意想不到的事情做。",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/2018-03-17/js-in-ios.html",
      "markdownUrl": "https://tw93.fun/2018-03-17/js-in-ios.md",
      "translation": {
        "language": "en-US",
        "title": "JS in iOS",
        "url": "https://tw93.fun/en/2018-03-17/js-in-ios.html",
        "markdownUrl": "https://tw93.fun/en/2018-03-17/js-in-ios.md"
      }
    },
    {
      "title": "JS in iOS",
      "date": "2018-03-17",
      "language": "en-US",
      "summary": "A deep dive into how JavaScript interacts with iOS across four areas: why frontend tech alone isn't enough on mobile, JavaScriptCore communication mechanisms, Objective-C Runtime internals, and how to patch native iOS logic dynamically from JS. Written to help frontend and mobile engineers bridge the gap.",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/en/2018-03-17/js-in-ios.html",
      "markdownUrl": "https://tw93.fun/en/2018-03-17/js-in-ios.md",
      "translation": {
        "language": "zh-CN",
        "title": "iOS 中的 JS",
        "url": "https://tw93.fun/2018-03-17/js-in-ios.html",
        "markdownUrl": "https://tw93.fun/2018-03-17/js-in-ios.md"
      }
    },
    {
      "title": "该以怎样的心态对待开源？",
      "date": "2018-02-11",
      "language": "zh-CN",
      "summary": "知乎的一个问答记录，`该以怎样的心态对待开源`?",
      "categories": [
        "Thought"
      ],
      "url": "https://tw93.fun/2018-02-11/open-source.html",
      "markdownUrl": "https://tw93.fun/2018-02-11/open-source.md",
      "translation": {
        "language": "en-US",
        "title": "What Mentality Should Be Used to Treat Open Source?",
        "url": "https://tw93.fun/en/2018-02-11/open-source.html",
        "markdownUrl": "https://tw93.fun/en/2018-02-11/open-source.md"
      }
    },
    {
      "title": "What Mentality Should Be Used to Treat Open Source?",
      "date": "2018-02-11",
      "language": "en-US",
      "summary": "A Q&A record on Zhihu, `What mentality should be used to treat open source?`",
      "categories": [
        "Thought"
      ],
      "url": "https://tw93.fun/en/2018-02-11/open-source.html",
      "markdownUrl": "https://tw93.fun/en/2018-02-11/open-source.md",
      "translation": {
        "language": "zh-CN",
        "title": "该以怎样的心态对待开源？",
        "url": "https://tw93.fun/2018-02-11/open-source.html",
        "markdownUrl": "https://tw93.fun/2018-02-11/open-source.md"
      }
    },
    {
      "title": "iOS Primer for Frontend Engineers (Part 1)",
      "date": "2018-02-08",
      "language": "en-US",
      "summary": "Around Double 11 last year, I began diving into iOS to diagnose several Weex performance bottlenecks, and recently started contributing to iOS feature development. Taking this opportunity to document fundamental iOS concepts for my own reference, and to help fellow frontend engineers make sense of native iOS code and core mobile architecture.",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/en/2018-02-08/ios-1.html",
      "markdownUrl": "https://tw93.fun/en/2018-02-08/ios-1.md",
      "translation": {
        "language": "zh-CN",
        "title": "写给前端看的 iOS 梳理 (上)",
        "url": "https://tw93.fun/2018-02-07/ios-1.html",
        "markdownUrl": "https://tw93.fun/2018-02-07/ios-1.md"
      }
    },
    {
      "title": "写给前端看的 iOS 梳理 (上)",
      "date": "2018-02-07",
      "language": "zh-CN",
      "summary": "去年双十一为了排查一些 Weex 性能问题开始接触 iOS 相关学习，恰逢今年 1 月份开始慢慢参与 iOS 业务开发，借此机会整理一下 iOS 开发中的一些基础知识，用于备忘，同时旨在通过系列文章让前端同学在日后碰到 iOS 的代码可以看懂，方便更好的理解端上的一些原理。",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/2018-02-07/ios-1.html",
      "markdownUrl": "https://tw93.fun/2018-02-07/ios-1.md",
      "translation": {
        "language": "en-US",
        "title": "iOS Primer for Frontend Engineers (Part 1)",
        "url": "https://tw93.fun/en/2018-02-08/ios-1.html",
        "markdownUrl": "https://tw93.fun/en/2018-02-08/ios-1.md"
      }
    },
    {
      "title": "Web 计算机图形学(上)",
      "date": "2017-04-21",
      "language": "zh-CN",
      "summary": "Web前端技术中和图形学挂钩的大致是 CSS3 的动画变换、SVG、Canvas、WebGL 这一些东西，但是前端工程师大多只停留在上层 API 操作方面，对于图形学的原理，譬如 GPU、三维空间、光照、纹理、层次模型可能不是很了解。在研究完 SVG 相关内容后，对底层的一些技术有一些兴趣，加上对这一块属于空白区，故花了几天时间对图形学基本进行学习，记录于此 ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/2017-04-21/web-and-cg.html",
      "markdownUrl": "https://tw93.fun/2017-04-21/web-and-cg.md",
      "translation": {
        "language": "en-US",
        "title": "Web Computer Graphics (Part 1)",
        "url": "https://tw93.fun/en/2017-04-21/web-and-cg.html",
        "markdownUrl": "https://tw93.fun/en/2017-04-21/web-and-cg.md"
      }
    },
    {
      "title": "Web Computer Graphics (Part 1)",
      "date": "2017-04-21",
      "language": "en-US",
      "summary": "Web front-end technologies related to graphics are roughly CSS3 animation transformation, SVG, Canvas, WebGL. However, front-end engineers mostly only stay at the upper-level API operation aspect. They may not know much about the principles of graphics, such as GPU, three-dimensional space, lighting, texture, hierarchical models. After studying the content related to SVG, I have some interest in some underlying technologies. Plus this piece belongs to a blank area, so I spent a few days learning graphics basically and recorded it here ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/en/2017-04-21/web-and-cg.html",
      "markdownUrl": "https://tw93.fun/en/2017-04-21/web-and-cg.md",
      "translation": {
        "language": "zh-CN",
        "title": "Web 计算机图形学(上)",
        "url": "https://tw93.fun/2017-04-21/web-and-cg.html",
        "markdownUrl": "https://tw93.fun/2017-04-21/web-and-cg.md"
      }
    },
    {
      "title": "SVG 新司机开车指南",
      "date": "2017-01-26",
      "language": "zh-CN",
      "summary": "SVG 其相关特性远比想象中要强，本文首先介绍下SVG的相关定义、优缺点和 Demo，接下来会介绍它的相关语法和动画，最后告诉大家如何使用和优化 SVG。确保大家一小时内可以开车上路，来不及解释了，快上车 ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/2017-01-26/SVG.html",
      "markdownUrl": "https://tw93.fun/2017-01-26/SVG.md",
      "translation": {
        "language": "en-US",
        "title": "SVG New Driver's Guide",
        "url": "https://tw93.fun/en/2017-01-26/SVG.html",
        "markdownUrl": "https://tw93.fun/en/2017-01-26/SVG.md"
      }
    },
    {
      "title": "SVG New Driver's Guide",
      "date": "2017-01-26",
      "language": "en-US",
      "summary": "SVG related features are much stronger than imagined. This article first introduces the relevant definitions, advantages and disadvantages and Demo of SVG. Next, it will introduce its relevant syntax and animation. Finally, tell everyone how to use and optimize SVG. Ensure that everyone can drive on the road within an hour. Too late to explain, get on the bus quickly ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/en/2017-01-26/SVG.html",
      "markdownUrl": "https://tw93.fun/en/2017-01-26/SVG.md",
      "translation": {
        "language": "zh-CN",
        "title": "SVG 新司机开车指南",
        "url": "https://tw93.fun/2017-01-26/SVG.html",
        "markdownUrl": "https://tw93.fun/2017-01-26/SVG.md"
      }
    },
    {
      "title": "Hello Weex",
      "date": "2017-01-06",
      "language": "zh-CN",
      "summary": "本周给部门同学分享了《Hello Weex》这个 Topic，现整理成文字版本，分享给关注 Weex 的同学，主要涉及 Module && Component、Weex Architecture、 Weex Others ...",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/2017-01-06/Hello-Weex.html",
      "markdownUrl": "https://tw93.fun/2017-01-06/Hello-Weex.md",
      "translation": {
        "language": "en-US",
        "title": "Hello Weex",
        "url": "https://tw93.fun/en/2017-01-06/Hello-Weex.html",
        "markdownUrl": "https://tw93.fun/en/2017-01-06/Hello-Weex.md"
      }
    },
    {
      "title": "Hello Weex",
      "date": "2017-01-06",
      "language": "en-US",
      "summary": "This week I gave an internal sharing on \"Hello Weex\" to my department colleagues, and adapted it into an article for anyone following Weex development. It covers Modules vs. Components, Weex Architecture, and best practices.",
      "categories": [
        "Share"
      ],
      "url": "https://tw93.fun/en/2017-01-06/Hello-Weex.html",
      "markdownUrl": "https://tw93.fun/en/2017-01-06/Hello-Weex.md",
      "translation": {
        "language": "zh-CN",
        "title": "Hello Weex",
        "url": "https://tw93.fun/2017-01-06/Hello-Weex.html",
        "markdownUrl": "https://tw93.fun/2017-01-06/Hello-Weex.md"
      }
    },
    {
      "title": "Generators and Channels in JavaScript",
      "date": "2016-09-20",
      "language": "zh-CN",
      "summary": "以下这篇文章是对 Generator 和 Channel 的一个介绍，如果你对 Promise，Generator，Coroutine 和 Channel 有过了解，可以直接跳到 Using Generators and Channels with React 这部分，虽然接下来这些案例可能不是很适合真实的项目环境，但是它可以看成一个起点，尝试通过这种方法来实践可能出现的地方 ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/2016-09-20/generators-and-channels-in-javascript.html",
      "markdownUrl": "https://tw93.fun/2016-09-20/generators-and-channels-in-javascript.md",
      "translation": {
        "language": "en-US",
        "title": "Generators and Channels in JavaScript",
        "url": "https://tw93.fun/en/2016-09-20/generators-and-channels-in-javascript.html",
        "markdownUrl": "https://tw93.fun/en/2016-09-20/generators-and-channels-in-javascript.md"
      }
    },
    {
      "title": "Generators and Channels in JavaScript",
      "date": "2016-09-20",
      "language": "en-US",
      "summary": "The following article is an introduction to Generator and Channel. If you have learned about Promise, Generator, Coroutine and Channel, you can skip directly to the Using Generators and Channels with React part. Although these cases may not be very suitable for real project environments, it can be seen as a starting point, try to practice possible places through this method ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/en/2016-09-20/generators-and-channels-in-javascript.html",
      "markdownUrl": "https://tw93.fun/en/2016-09-20/generators-and-channels-in-javascript.md",
      "translation": {
        "language": "zh-CN",
        "title": "Generators and Channels in JavaScript",
        "url": "https://tw93.fun/2016-09-20/generators-and-channels-in-javascript.html",
        "markdownUrl": "https://tw93.fun/2016-09-20/generators-and-channels-in-javascript.md"
      }
    },
    {
      "title": "React Native 动画研究",
      "date": "2016-06-05",
      "language": "zh-CN",
      "summary": "本次专题文章的题目为《ReactNative 动画研究》，既然叫研究，那我们就争取一次将 RN 动画相关的内容都说清楚，提出问题-论证问题-解决问题的方式来研究 ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/2016-06-05/thinking-about-react-native-animated.html",
      "markdownUrl": "https://tw93.fun/2016-06-05/thinking-about-react-native-animated.md",
      "translation": {
        "language": "en-US",
        "title": "React Native Animation Research",
        "url": "https://tw93.fun/en/2016-06-05/thinking-about-react-native-animated.html",
        "markdownUrl": "https://tw93.fun/en/2016-06-05/thinking-about-react-native-animated.md"
      }
    },
    {
      "title": "React Native Animation Research",
      "date": "2016-06-05",
      "language": "en-US",
      "summary": "The title of this special article is \"ReactNative Animation Research\". Since it is called research, we strive to clarify the content related to RN animation at once, researching in the way of posing questions - proving questions - solving questions ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/en/2016-06-05/thinking-about-react-native-animated.html",
      "markdownUrl": "https://tw93.fun/en/2016-06-05/thinking-about-react-native-animated.md",
      "translation": {
        "language": "zh-CN",
        "title": "React Native 动画研究",
        "url": "https://tw93.fun/2016-06-05/thinking-about-react-native-animated.html",
        "markdownUrl": "https://tw93.fun/2016-06-05/thinking-about-react-native-animated.md"
      }
    },
    {
      "title": "我对 Flexbox 布局模式的理解",
      "date": "2015-10-17",
      "language": "zh-CN",
      "summary": "Flexbox，一种 CSS3 的布局模式，也叫做弹性盒子模型，用来为盒装模型提供最大的灵活性 ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/2015-10-17/the-thinking-about-flexbox.html",
      "markdownUrl": "https://tw93.fun/2015-10-17/the-thinking-about-flexbox.md",
      "translation": {
        "language": "en-US",
        "title": "My Understanding of Flexbox Layout Mode",
        "url": "https://tw93.fun/en/2015-10-17/the-thinking-about-flexbox.html",
        "markdownUrl": "https://tw93.fun/en/2015-10-17/the-thinking-about-flexbox.md"
      }
    },
    {
      "title": "My Understanding of Flexbox Layout Mode",
      "date": "2015-10-17",
      "language": "en-US",
      "summary": "Flexbox, a CSS3 layout mode, also known as the flexible box model, is used to provide maximum flexibility for the box model ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/en/2015-10-17/the-thinking-about-flexbox.html",
      "markdownUrl": "https://tw93.fun/en/2015-10-17/the-thinking-about-flexbox.md",
      "translation": {
        "language": "zh-CN",
        "title": "我对 Flexbox 布局模式的理解",
        "url": "https://tw93.fun/2015-10-17/the-thinking-about-flexbox.html",
        "markdownUrl": "https://tw93.fun/2015-10-17/the-thinking-about-flexbox.md"
      }
    },
    {
      "title": "浅谈面向对象的 JavaScript",
      "date": "2015-06-09",
      "language": "zh-CN",
      "summary": "最近在学习 Ross Harmes/Dustin Diaz 写的《JavaScript 设计模式》，大概将此书看了两遍，很有收获。此书适合于想深入学习JavaScript的同学，用来增加你的内功。能够帮助你增强对JavaScript面向对象的理解，同时学习各种具体的设计模式，懂得应该在什么场合使用这些设计模式，以及如何实现它们，写出更优雅的代码。这篇文章用于总结我的读书笔记 ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/2015-06-09/Talking-about-JavaScript-design-patterns1.html",
      "markdownUrl": "https://tw93.fun/2015-06-09/Talking-about-JavaScript-design-patterns1.md",
      "translation": {
        "language": "en-US",
        "title": "Brief Talk on Object-Oriented JavaScript",
        "url": "https://tw93.fun/en/2015-06-09/Talking-about-JavaScript-design-patterns1.html",
        "markdownUrl": "https://tw93.fun/en/2015-06-09/Talking-about-JavaScript-design-patterns1.md"
      }
    },
    {
      "title": "Brief Talk on Object-Oriented JavaScript",
      "date": "2015-06-09",
      "language": "en-US",
      "summary": "Recently I read \"Pro JavaScript Design Patterns\" by Ross Harmes and Dustin Diaz twice and took extensive notes. The book is ideal for developers looking to deepen their grasp of JavaScript fundamentals and object-oriented paradigms, explaining when to reach for specific design patterns and how to implement them cleanly. Below is a summary of my notes.",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/en/2015-06-09/Talking-about-JavaScript-design-patterns1.html",
      "markdownUrl": "https://tw93.fun/en/2015-06-09/Talking-about-JavaScript-design-patterns1.md",
      "translation": {
        "language": "zh-CN",
        "title": "浅谈面向对象的 JavaScript",
        "url": "https://tw93.fun/2015-06-09/Talking-about-JavaScript-design-patterns1.html",
        "markdownUrl": "https://tw93.fun/2015-06-09/Talking-about-JavaScript-design-patterns1.md"
      }
    },
    {
      "title": "Can We Do Better Than The Click?",
      "date": "2015-03-30",
      "language": "zh-CN",
      "summary": "响应用户的输入可以说是我们做界面开发的核心。为了构建可响应的 Web 产品，g关键是理解触摸、鼠标、指针、键盘操作和浏览器的工作原理是。你可能在手机浏览器中经历过 300 ms 的延迟或者通过触摸来滚动带来的不爽。在本文中，我们将介绍事件级联和使用这些知识来实现演示一个点击事件，支持许多输入方法但是又没有违反像 Opera Mini 这一类的代理浏览器规则...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/2015-03-30/Browser-input-Events.html",
      "markdownUrl": "https://tw93.fun/2015-03-30/Browser-input-Events.md",
      "translation": {
        "language": "en-US",
        "title": "Can We Do Better Than The Click?",
        "url": "https://tw93.fun/en/2015-03-30/Browser-input-Events.html",
        "markdownUrl": "https://tw93.fun/en/2015-03-30/Browser-input-Events.md"
      }
    },
    {
      "title": "Can We Do Better Than The Click?",
      "date": "2015-03-30",
      "language": "en-US",
      "summary": "Responding to user input is the core of our interface development. To build responsive Web products, the key is to understand how touch, mouse, pointer, keyboard operations and browsers work. You may have experienced a 300 ms delay in mobile browsers or discomfort caused by scrolling through touch. In this article, we will introduce event cascading and use this knowledge to implement a demo of a tap click event, which supports many input methods without violating the proxy browser rules like Opera Mini ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/en/2015-03-30/Browser-input-Events.html",
      "markdownUrl": "https://tw93.fun/en/2015-03-30/Browser-input-Events.md",
      "translation": {
        "language": "zh-CN",
        "title": "Can We Do Better Than The Click?",
        "url": "https://tw93.fun/2015-03-30/Browser-input-Events.html",
        "markdownUrl": "https://tw93.fun/2015-03-30/Browser-input-Events.md"
      }
    },
    {
      "title": "深入浅出 Nodejs 读书笔记",
      "date": "2015-03-01",
      "language": "zh-CN",
      "summary": "今天终于把朴灵老师写的《深入浅出 Node.js》给学习完了, 这本书不是一本简单的 Node 入门书籍，它没有停留在 Node 介绍或者框架、库的使用层面上，而是从不同的视角来揭示 Node 自己内在的特点和结构。建议有一定 Node 基础或者做过 Node 方面的小项目的同学阅读，看完以后你的思维会有很奇特的碰撞，我看的时候就常常会有这样的想法:“哦，原来这个功能是这样实现的哦”。下面这篇文章是我第二次阅读《深入浅出 Node.js》的一些学习记录，并且通过百度脑图这个工具来画出思维导图，每天将自己的学习总结写在这篇文章下面 ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/2015-03-01/shen-ru-qian-chu-nodejs-reading-mind-map.html",
      "markdownUrl": "https://tw93.fun/2015-03-01/shen-ru-qian-chu-nodejs-reading-mind-map.md",
      "translation": {
        "language": "en-US",
        "title": "Reading Notes on \"Pro Node.js\"",
        "url": "https://tw93.fun/en/2015-03-01/shen-ru-qian-chu-nodejs-reading-mind-map.html",
        "markdownUrl": "https://tw93.fun/en/2015-03-01/shen-ru-qian-chu-nodejs-reading-mind-map.md"
      }
    },
    {
      "title": "Reading Notes on \"Pro Node.js\"",
      "date": "2015-03-01",
      "language": "en-US",
      "summary": "Today I finally finished reading \"Pro Node.js\" (深入浅出 Node.js) by Pu Ling. Rather than a surface-level introductory text on framework APIs, it dissects Node's internal architecture from the ground up. Highly recommended for developers who already have some Node background. Reading it sparks countless \"aha!\" moments about how runtime internals really work. Below are my notes and mind maps from my second read-through.",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/en/2015-03-01/shen-ru-qian-chu-nodejs-reading-mind-map.html",
      "markdownUrl": "https://tw93.fun/en/2015-03-01/shen-ru-qian-chu-nodejs-reading-mind-map.md",
      "translation": {
        "language": "zh-CN",
        "title": "深入浅出 Nodejs 读书笔记",
        "url": "https://tw93.fun/2015-03-01/shen-ru-qian-chu-nodejs-reading-mind-map.html",
        "markdownUrl": "https://tw93.fun/2015-03-01/shen-ru-qian-chu-nodejs-reading-mind-map.md"
      }
    },
    {
      "title": "使用 React 提高 Angular 的渲染性能",
      "date": "2015-02-23",
      "language": "zh-CN",
      "summary": "当你使用 Angular 的时候你遇到过性能问题吗？使用 React 可以使页面渲染得更快。下面通过几个案例来对比用React 来渲染 Angular 和直接使用 Angular 来渲染之间的性能差异 ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/2015-02-23/angular-react.html",
      "markdownUrl": "https://tw93.fun/2015-02-23/angular-react.md",
      "translation": {
        "language": "en-US",
        "title": "Using React to Improve Angular's Rendering Performance",
        "url": "https://tw93.fun/en/2015-02-23/angular-react.html",
        "markdownUrl": "https://tw93.fun/en/2015-02-23/angular-react.md"
      }
    },
    {
      "title": "Using React to Improve Angular's Rendering Performance",
      "date": "2015-02-23",
      "language": "en-US",
      "summary": "Have you ever encountered performance problems when using Angular? Using React can make pages render faster. Below, through several cases, compare the performance differences between using React to render Angular and directly using Angular to render ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/en/2015-02-23/angular-react.html",
      "markdownUrl": "https://tw93.fun/en/2015-02-23/angular-react.md",
      "translation": {
        "language": "zh-CN",
        "title": "使用 React 提高 Angular 的渲染性能",
        "url": "https://tw93.fun/2015-02-23/angular-react.html",
        "markdownUrl": "https://tw93.fun/2015-02-23/angular-react.md"
      }
    },
    {
      "title": "前端开发流程工具 Yeoman",
      "date": "2015-02-21",
      "language": "zh-CN",
      "summary": "在上一篇文章中我们介绍了可以帮助我们自动管理和运行各种JavaScript任务的Grunt，再上一篇文章我们介绍了前端包管理器Bower，这篇文章我们来介绍Yeoman这个神奇的脚手架，Yeoman是Google的团队和外部贡献者团队合作开发的，他的目标是通过Grunt（一个用于开发任务自动化的命令行工具）和Bower（一个HTML、CSS、Javascript和图片等前端资源的包管理器）的包装为开发者创建一个易用的工作流。下面我给大家大致来介绍下这个神奇的工具 ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/2015-02-21/yeoman-grunt-bower-3.html",
      "markdownUrl": "https://tw93.fun/2015-02-21/yeoman-grunt-bower-3.md",
      "translation": {
        "language": "en-US",
        "title": "Front-end Development Workflow Tool Yeoman",
        "url": "https://tw93.fun/en/2015-02-21/yeoman-grunt-bower-3.html",
        "markdownUrl": "https://tw93.fun/en/2015-02-21/yeoman-grunt-bower-3.md"
      }
    },
    {
      "title": "Front-end Development Workflow Tool Yeoman",
      "date": "2015-02-21",
      "language": "en-US",
      "summary": "In the previous article, we introduced Grunt, which can help us automatically manage and run various JavaScript tasks. In the article before that, we introduced the front-end package manager Bower. In this article, we come to introduce Yeoman, a magical scaffold. Yeoman is developed by the Google team and a team of external contributors. Its goal is to create an easy-to-use workflow for developers through the packaging of Grunt (a command line tool for development task automation) and Bower (a package manager for front-end resources such as HTML, CSS, JavaScript, and images). Below I will briefly introduce this magical tool to everyone ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/en/2015-02-21/yeoman-grunt-bower-3.html",
      "markdownUrl": "https://tw93.fun/en/2015-02-21/yeoman-grunt-bower-3.md",
      "translation": {
        "language": "zh-CN",
        "title": "前端开发流程工具 Yeoman",
        "url": "https://tw93.fun/2015-02-21/yeoman-grunt-bower-3.html",
        "markdownUrl": "https://tw93.fun/2015-02-21/yeoman-grunt-bower-3.md"
      }
    },
    {
      "title": "前端开发流程工具 Grunt",
      "date": "2015-02-18",
      "language": "zh-CN",
      "summary": "在上面一篇文章中，我们介绍了前端的包管理器 Bower，这次我们来了解前端应用开发流程工具 Grunt，在JavaScript 开发过程中，我们常常会遇到一些重复性的任务，譬如检查语法是否正确，压缩代码，合并文件，要是以前我们会选择不同的工具来完成不同的任务，但是这样感觉既复杂又耗时，但是现在有了 Grunt，Grunt 就是为了解决这些问题而发明的一个工具，可以帮助我们自动管理和运行各种 JavaScript 任务，简化我们的工作流程 ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/2015-02-18/yeoman-grunt-bower-2.html",
      "markdownUrl": "https://tw93.fun/2015-02-18/yeoman-grunt-bower-2.md",
      "translation": {
        "language": "en-US",
        "title": "Front-end Development Workflow Tool Grunt",
        "url": "https://tw93.fun/en/2015-02-18/yeoman-grunt-bower-2.html",
        "markdownUrl": "https://tw93.fun/en/2015-02-18/yeoman-grunt-bower-2.md"
      }
    },
    {
      "title": "Front-end Development Workflow Tool Grunt",
      "date": "2015-02-18",
      "language": "en-US",
      "summary": "In the previous article, we introduced the front-end package manager Bower. This time, we come to understand the front-end application development workflow tool Grunt. In the process of JavaScript development, we often encounter some repetitive tasks, such as checking if syntax is correct, compressing code, and merging files. In the past, we would choose different tools to complete different tasks, but this felt both complex and time-consuming. But now with Grunt, Grunt was invented precisely to solve these problems. It can help us automatically manage and run various JavaScript tasks, simplifying our workflow ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/en/2015-02-18/yeoman-grunt-bower-2.html",
      "markdownUrl": "https://tw93.fun/en/2015-02-18/yeoman-grunt-bower-2.md",
      "translation": {
        "language": "zh-CN",
        "title": "前端开发流程工具 Grunt",
        "url": "https://tw93.fun/2015-02-18/yeoman-grunt-bower-2.html",
        "markdownUrl": "https://tw93.fun/2015-02-18/yeoman-grunt-bower-2.md"
      }
    },
    {
      "title": "前端开发流程工具 Cmder 和 Bower",
      "date": "2015-02-17",
      "language": "zh-CN",
      "summary": "前端开发的确不是以前那种前端开发，如果说我们过去的前端开发是处于“刀耕火种”时代，那么现在的前端开发无疑已经进入了\"工厂生产\"的时代。近几年，随着Nodejs的出现，伴随着出现了很多优秀的前端开发管理工具，极大的方便着我们的前端开发，的确 Nodejs 是上帝送给我们前端开发工程师最好的礼物。下面几篇文章我给大家来介绍一些前端开发过程中需要用到的优秀的工具：Cmder、Bower、grunt、Yeoman ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/2015-02-17/yeoman-grunt-bower-1.html",
      "markdownUrl": "https://tw93.fun/2015-02-17/yeoman-grunt-bower-1.md",
      "translation": {
        "language": "en-US",
        "title": "Front-end Development Workflow Tools Cmder and Bower",
        "url": "https://tw93.fun/en/2015-02-17/yeoman-grunt-bower-1.html",
        "markdownUrl": "https://tw93.fun/en/2015-02-17/yeoman-grunt-bower-1.md"
      }
    },
    {
      "title": "Front-end Development Workflow Tools Cmder and Bower",
      "date": "2015-02-17",
      "language": "en-US",
      "summary": "Front-end development is indeed not the same as before. If we say that our past front-end development was in the \"slash-and-burn\" era, then current front-end development has undoubtedly entered the era of \"factory production\". In recent years, with the emergence of Node.js, many excellent front-end development management tools have appeared, which greatly facilitates our front-end development. Indeed Node.js is the best gift from God to our front-end development engineers. In the following articles, I will introduce some excellent tools needed in the front-end development process: Cmder, Bower, Grunt, Yeoman ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/en/2015-02-17/yeoman-grunt-bower-1.html",
      "markdownUrl": "https://tw93.fun/en/2015-02-17/yeoman-grunt-bower-1.md",
      "translation": {
        "language": "zh-CN",
        "title": "前端开发流程工具 Cmder 和 Bower",
        "url": "https://tw93.fun/2015-02-17/yeoman-grunt-bower-1.html",
        "markdownUrl": "https://tw93.fun/2015-02-17/yeoman-grunt-bower-1.md"
      }
    },
    {
      "title": "JavaScript编程实践过程中性能的优化",
      "date": "2015-02-16",
      "language": "zh-CN",
      "summary": "每种编程语言都有它的“痛点”，并且随着时间的推移，它存在的低效模式也不断发展。JavaScript提出了一些独一无二的性能挑战，这与你代码组织的方式有关，随着Web应用变得越来越高级，包含的JavaScript代码也越来越多，各种模式与反模式也逐渐出现，为了编写更高效的代码，请牢记这些编程实践 ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/2015-02-16/High-Performance-JavaScript-7.html",
      "markdownUrl": "https://tw93.fun/2015-02-16/High-Performance-JavaScript-7.md",
      "translation": {
        "language": "en-US",
        "title": "Performance Optimization in JavaScript Programming Practices",
        "url": "https://tw93.fun/en/2015-02-16/High-Performance-JavaScript-7.html",
        "markdownUrl": "https://tw93.fun/en/2015-02-16/High-Performance-JavaScript-7.md"
      }
    },
    {
      "title": "Performance Optimization in JavaScript Programming Practices",
      "date": "2015-02-16",
      "language": "en-US",
      "summary": "Every programming language has its \"pain points,\" and over time, its existing inefficient patterns also continue to develop. JavaScript presents some unique performance challenges, which are related to the way your code is organized. As web applications become more advanced and contain more and more JavaScript code, various patterns and anti-patterns gradually appear. To write more efficient code, please keep these programming practices in mind ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/en/2015-02-16/High-Performance-JavaScript-7.html",
      "markdownUrl": "https://tw93.fun/en/2015-02-16/High-Performance-JavaScript-7.md",
      "translation": {
        "language": "zh-CN",
        "title": "JavaScript编程实践过程中性能的优化",
        "url": "https://tw93.fun/2015-02-16/High-Performance-JavaScript-7.html",
        "markdownUrl": "https://tw93.fun/2015-02-16/High-Performance-JavaScript-7.md"
      }
    },
    {
      "title": "Ajax 性能的优化",
      "date": "2015-02-14",
      "language": "zh-CN",
      "summary": "Ajax 是高性能 JavaScript 的基础，它可以通过延迟下载体积较大的资源文件来使页面加载更快，它通过异步的方式在客户端和服务器之间传递数据，从而避免页面资源一窝蜂的下载。它甚至可以只用一个 HTTP 请求就获得整个页面的资源。选择合适的传输方式和最有效的数据格式，可以显著改善用户和网站的交互体验 ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/2015-02-14/High-Performance-JavaScript-6.html",
      "markdownUrl": "https://tw93.fun/2015-02-14/High-Performance-JavaScript-6.md",
      "translation": {
        "language": "en-US",
        "title": "Ajax Performance Optimization",
        "url": "https://tw93.fun/en/2015-02-14/High-Performance-JavaScript-6.html",
        "markdownUrl": "https://tw93.fun/en/2015-02-14/High-Performance-JavaScript-6.md"
      }
    },
    {
      "title": "Ajax Performance Optimization",
      "date": "2015-02-14",
      "language": "en-US",
      "summary": "Ajax is the foundation of high-performance JavaScript. It can make page loads faster by delaying the download of larger resource files. It passes data between the client and the server asynchronously, thereby avoiding batch downloading of page resources. it can even get resources for the entire page with just one HTTP request. Choosing appropriate transmission methods and most effective data formats can significantly improve the interaction experience between users and websites ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/en/2015-02-14/High-Performance-JavaScript-6.html",
      "markdownUrl": "https://tw93.fun/en/2015-02-14/High-Performance-JavaScript-6.md",
      "translation": {
        "language": "zh-CN",
        "title": "Ajax 性能的优化",
        "url": "https://tw93.fun/2015-02-14/High-Performance-JavaScript-6.html",
        "markdownUrl": "https://tw93.fun/2015-02-14/High-Performance-JavaScript-6.md"
      }
    },
    {
      "title": "高性能 JavaScript - 快速响应的用户界面",
      "date": "2015-02-12",
      "language": "zh-CN",
      "summary": "有一句话很有道理：“如果 JavaScript运行了整整几秒钟，那么很有可能是你做错了什么......”，如果界面在 100 毫秒内响应用户输入，用户会认为自己在“直接操作界面中的对象”。超过 100 毫秒意味着用户感觉自己与界面失去了联系。JavaScript 和用户界面更新在同一个进程中运行，因此一次只能处理一件事情。这意味着当 JavaScript 代码在运行时，用户界面不能响应输入，反之亦然。高效地管理UI线程就是要确保 JavaScript 不能运行太长时间，以免影响用户体验。管理好 JavaScript 的运行时间对 Web 应用的性能非常重要 ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/2015-02-12/High-Performance-JavaScript-5.html",
      "markdownUrl": "https://tw93.fun/2015-02-12/High-Performance-JavaScript-5.md",
      "translation": {
        "language": "en-US",
        "title": "High Performance JavaScript - Rapidly Responding User Interface",
        "url": "https://tw93.fun/en/2015-02-11/High-Performance-JavaScript-5.html",
        "markdownUrl": "https://tw93.fun/en/2015-02-11/High-Performance-JavaScript-5.md"
      }
    },
    {
      "title": "High Performance JavaScript - Rapidly Responding User Interface",
      "date": "2015-02-11",
      "language": "en-US",
      "summary": "There is a saying that makes sense: \"If JavaScript runs for whole seconds, then it is very likely that you have done something wrong...\", if the interface responds to user input within 100 milliseconds, users will think they are \"directly manipulating objects in the interface\". More than 100 milliseconds means users feel they have lost contact with the interface. JavaScript and user interface updates run in the same process, so only one thing can be handled at a time. This means that when JavaScript code is running, the user interface cannot respond to input, and vice versa. Efficiently managing the UI thread is to ensure that JavaScript cannot run for too long, lest it affect the user experience. Managing the running time of JavaScript is very important for the performance of Web applications ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/en/2015-02-11/High-Performance-JavaScript-5.html",
      "markdownUrl": "https://tw93.fun/en/2015-02-11/High-Performance-JavaScript-5.md",
      "translation": {
        "language": "zh-CN",
        "title": "高性能 JavaScript - 快速响应的用户界面",
        "url": "https://tw93.fun/2015-02-12/High-Performance-JavaScript-5.html",
        "markdownUrl": "https://tw93.fun/2015-02-12/High-Performance-JavaScript-5.md"
      }
    },
    {
      "title": "JavaScript 的算法和流程控制性能优化",
      "date": "2015-02-07",
      "language": "zh-CN",
      "summary": "如同其他编程语言，代码的写法和算法会影响 JavaScript 的运行时间，与其他语言的不同的是，JavaScript 的可用资源有限，因此优化技术更为重要，这个学习笔记主要是从 JavaScript 的循环、条件语句、递归这三个方面的一些奇淫技巧来优化 JavaScript 的性能 ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/2015-02-07/High-Performance-JavaScript-4.html",
      "markdownUrl": "https://tw93.fun/2015-02-07/High-Performance-JavaScript-4.md",
      "translation": {
        "language": "en-US",
        "title": "Algorithm and Flow Control Performance Optimization of JavaScript",
        "url": "https://tw93.fun/en/2015-02-07/High-Performance-JavaScript-4.html",
        "markdownUrl": "https://tw93.fun/en/2015-02-07/High-Performance-JavaScript-4.md"
      }
    },
    {
      "title": "Algorithm and Flow Control Performance Optimization of JavaScript",
      "date": "2015-02-07",
      "language": "en-US",
      "summary": "Like other programming languages, code writing and algorithms will affect the running time of JavaScript. Unlike other languages, JavaScript has limited available resources, so optimization techniques are more important. this study note mainly optimizes JavaScript performance from three aspects of JavaScript loops, conditional statements, and recursion ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/en/2015-02-07/High-Performance-JavaScript-4.html",
      "markdownUrl": "https://tw93.fun/en/2015-02-07/High-Performance-JavaScript-4.md",
      "translation": {
        "language": "zh-CN",
        "title": "JavaScript 的算法和流程控制性能优化",
        "url": "https://tw93.fun/2015-02-07/High-Performance-JavaScript-4.html",
        "markdownUrl": "https://tw93.fun/2015-02-07/High-Performance-JavaScript-4.md"
      }
    },
    {
      "title": "JavaScript 的 DOM 编程性能优化",
      "date": "2015-02-06",
      "language": "zh-CN",
      "summary": "DOM 是 Document Object Model 的缩写，中文叫做文档对象模型，是一个与语言无关的，用户操作 XML 和 HTML 文档的应用程序接口。在浏览器中，主要与HTML文档打交道，在 Web 应用中也经常需要检索XML文档，DOM API用于访问文档中的数据。John Hevatin有一次演讲说过一个贴切的比喻，把 DOM 和 JavaScript 各自想象成一个岛屿，它们直接用收费桥梁连接，ECMAScript 每次访问DOM，都要经过这个桥，并交纳“过桥费”，过的桥越多交的费用也越多，因此要想减少费用就得少过桥，我们这里就来学习如何来优化这个问题 ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/2015-02-06/High-Performance-JavaScript-3.html",
      "markdownUrl": "https://tw93.fun/2015-02-06/High-Performance-JavaScript-3.md",
      "translation": {
        "language": "en-US",
        "title": "DOM Programming Performance Optimization of JavaScript",
        "url": "https://tw93.fun/en/2015-02-06/High-Performance-JavaScript-3.html",
        "markdownUrl": "https://tw93.fun/en/2015-02-06/High-Performance-JavaScript-3.md"
      }
    },
    {
      "title": "DOM Programming Performance Optimization of JavaScript",
      "date": "2015-02-06",
      "language": "en-US",
      "summary": "DOM is an abbreviation for Document Object Model. It is a language-independent application program interface for users to manipulate XML and HTML documents. In browsers, it mainly deals with HTML documents. In web applications, XML documents also often need to be retrieved. DOM API is used to access data in documents. John Hevatin once gave a pertinent metaphor in a speech, imagining DOM and JavaScript as islands respectively, they are directly connected by a toll bridge. Every time ECMAScript accesses DOM, it has to pass through this bridge and pay a \"bridge fee\". The more bridges passed, the more fees paid. Therefore, if you want to reduce costs, you have to cross the bridge less. Here we come to learn how to optimize this problem ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/en/2015-02-06/High-Performance-JavaScript-3.html",
      "markdownUrl": "https://tw93.fun/en/2015-02-06/High-Performance-JavaScript-3.md",
      "translation": {
        "language": "zh-CN",
        "title": "JavaScript 的 DOM 编程性能优化",
        "url": "https://tw93.fun/2015-02-06/High-Performance-JavaScript-3.html",
        "markdownUrl": "https://tw93.fun/2015-02-06/High-Performance-JavaScript-3.md"
      }
    },
    {
      "title": "JavaScript 的数据访问性能优化",
      "date": "2015-02-05",
      "language": "zh-CN",
      "summary": "JavaScript 中有四种基本的数据存取位置：直接量、变量、数组元素和对象成员。和其他语言一样，数据的存储位置会很大的影响其读取速度 ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/2015-02-05/High-Performance-JavaScript-2.html",
      "markdownUrl": "https://tw93.fun/2015-02-05/High-Performance-JavaScript-2.md",
      "translation": {
        "language": "en-US",
        "title": "Data Access Performance Optimization of JavaScript",
        "url": "https://tw93.fun/en/2015-02-05/High-Performance-JavaScript-2.html",
        "markdownUrl": "https://tw93.fun/en/2015-02-05/High-Performance-JavaScript-2.md"
      }
    },
    {
      "title": "Data Access Performance Optimization of JavaScript",
      "date": "2015-02-05",
      "language": "en-US",
      "summary": "There are four basic data storage locations in JavaScript: literals, variables, array elements, and object members. Like other languages, the storage location of data will greatly affect its reading speed ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/en/2015-02-05/High-Performance-JavaScript-2.html",
      "markdownUrl": "https://tw93.fun/en/2015-02-05/High-Performance-JavaScript-2.md",
      "translation": {
        "language": "zh-CN",
        "title": "JavaScript 的数据访问性能优化",
        "url": "https://tw93.fun/2015-02-05/High-Performance-JavaScript-2.html",
        "markdownUrl": "https://tw93.fun/2015-02-05/High-Performance-JavaScript-2.md"
      }
    },
    {
      "title": "Vue、Angular、Avalon 框架比较",
      "date": "2015-02-04",
      "language": "zh-CN",
      "summary": "前端开发已经不是前几年的那种前端开发了，已经有农业时代进入工业时代了，这几年出现了很多优秀的 JavaScript 方面的 MVVM 框架，今天我来比较下 Vue，Angular，Avalon 这些框架优缺点 ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/2015-02-04/vue-angular-avalon-1.html",
      "markdownUrl": "https://tw93.fun/2015-02-04/vue-angular-avalon-1.md",
      "translation": {
        "language": "en-US",
        "title": "Comparison of Vue, Angular, Avalon Frameworks",
        "url": "https://tw93.fun/en/2015-02-04/vue-angular-avalon-1.html",
        "markdownUrl": "https://tw93.fun/en/2015-02-04/vue-angular-avalon-1.md"
      }
    },
    {
      "title": "Comparison of Vue, Angular, Avalon Frameworks",
      "date": "2015-02-04",
      "language": "en-US",
      "summary": "Front-end development is no longer the front-end development of a few years ago. It has entered the industrial era from the agricultural era. In recent years, many excellent MVVM frameworks in JavaScript have appeared. Today I compare the advantages and disadvantages of frameworks like Vue, Angular, Avalon ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/en/2015-02-04/vue-angular-avalon-1.html",
      "markdownUrl": "https://tw93.fun/en/2015-02-04/vue-angular-avalon-1.md",
      "translation": {
        "language": "zh-CN",
        "title": "Vue、Angular、Avalon 框架比较",
        "url": "https://tw93.fun/2015-02-04/vue-angular-avalon-1.html",
        "markdownUrl": "https://tw93.fun/2015-02-04/vue-angular-avalon-1.md"
      }
    },
    {
      "title": "JavaScript 的加载和执行性能优化",
      "date": "2015-02-03",
      "language": "zh-CN",
      "summary": "管理浏览器中的JavaScript代码是一个棘手的问题，因为代码在执行过程中会阻塞浏览器的其他进程，比如用户界面的绘制。每次遇到 script 标签，页面都必须停下来等待代码下载（如果是外链文件）并执行，然后继续处理其他部分。尽管如此，还是有一些方法减少 JavaScript 对性能的影响 ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/2015-02-03/High-Performance-JavaScript-1.html",
      "markdownUrl": "https://tw93.fun/2015-02-03/High-Performance-JavaScript-1.md",
      "translation": {
        "language": "en-US",
        "title": "JavaScript Loading Performance",
        "url": "https://tw93.fun/en/2015-02-03/High-Performance-JavaScript-1.html",
        "markdownUrl": "https://tw93.fun/en/2015-02-03/High-Performance-JavaScript-1.md"
      }
    },
    {
      "title": "JavaScript Loading Performance",
      "date": "2015-02-03",
      "language": "en-US",
      "summary": "Managing JavaScript code in browsers is a tricky problem because code execution blocks other browser processes, such as user interface painting. Every time a script tag is encountered, the page must stop and wait for the code to download (if it is an external file) and execute, and then continue to process other parts. Despite this, there are still some ways to reduce the impact of JavaScript on performance ...",
      "categories": [
        "Study"
      ],
      "url": "https://tw93.fun/en/2015-02-03/High-Performance-JavaScript-1.html",
      "markdownUrl": "https://tw93.fun/en/2015-02-03/High-Performance-JavaScript-1.md",
      "translation": {
        "language": "zh-CN",
        "title": "JavaScript 的加载和执行性能优化",
        "url": "https://tw93.fun/2015-02-03/High-Performance-JavaScript-1.html",
        "markdownUrl": "https://tw93.fun/2015-02-03/High-Performance-JavaScript-1.md"
      }
    }
  ]
}
