MoreRSS

site iconafoo | 王福强修改

连续创业者,20多年互联网与金融技术经验,前阿里巴巴高级技术专家,现福强科技CEO,分享技术、管理、商业和AI知识。
请复制 RSS 到你的阅读器,或快速订阅到 :

Inoreader Feedly Follow Feedbin Local Reader

afoo | 王福强的 RSS 预览

AI 研发时代的范式迁移

2026-03-17 00:00:00

AI 研发时代的范式迁移 -王福强的个人博客:一个架构士的思考与沉淀

AI 研发时代的范式迁移

王福强

2026-03-17


前后端分离不再是最佳实践

前后端分离是基于专业化角度,通过分工来提高交付效率的实践。

因为人的时间精力和专注力是有限的,能达到全栈能力的人极少(而且即便是有全栈能力,再扩大到产品、设计这些领域,依然是短板),所以,我能就必须通过组织结构的调整来提高整体交付效率。

有了AIAD之后,个人的能力边界极大提高了,每个人不再应该按照专业能力划分责任范围,而应该按照产品、业务、场景等粒度进行映射。

MonoRepo 应该成为主流

过去为了提高交付效率,将工作拆分成细粒度的微服务等形式, 对应的物理形式也是一个个细粒度的project。

AIAD加持下,AI Agents其实更习惯全量吸收,如果还是采用过去细粒度project的组织形式, AI Agents就得添加补救措施,比如claude code允许--add-dir <path>添加当前项目目录以外的内容,原因就是上下文范围不够。

所以,现在更适合MonoRepo,也就是所有相关物料, 不管是产品文档、设计文档、架构文档、API规范、源代码、CICD配置,等等,全都放在一个目录下面,然后全都交给AI Agent。

团队成员只要根据业务线职能配合核心专业能力调动Agents开展工作就可以了。

所有物料都在当前MonoRepo里,也不用再“文档交办”传来传去。

多平台特定方案优先于跨平台一体化方案

过去限于资本和人力的限制,一开始就搞多平台方案,各方面压力都比较大,一个是资金投入多,一个是凑齐多平台研发成员难,所以才会有跨平台方案的崛起,只要基于一套技术方案搞研发,最后框架和方案自动支持复制和分发到多平台。

但有了AI加持之后,情况变了。

AIAD带来了10+的研发效率提升,构建多平台应用也不再需要专职的研发人员日积月累经验,直接可用。

所以,从一开始就根据多个平台各自的特点构建应用应该成为AI研发时代的最佳实践。

而且,每个平台的发布流程和资质审查等,其实也是倾向于各自平台自己的技术栈,所以,采用每个平台特定的技术栈,在审查这些层面也降低了门槛。(比如JavaFX框架虽然可以开发一个应用,然后win/macos/linux下都能跑,但假如要上架macos的app store,签名和公证这些要求就很难饶过了,最后只能自行分发,享受不到app store的流量加持)

Distill instead of reuse

重用,在过去是最佳实践,在今天,却不一定了。

根据当前应用需要,可以让AI Agents直接从现有系统或者模块中抽取最小必要的逻辑或者代码,不但省去了依赖巨大非必要模块的问题,还能进一步定制。

当然, 重用不是没用了,只是很多地方没必要了。

容错思维而不是异常思维

过去研发是一心想要封堵所有错误,但概率系统里,错误或者幻觉反而是难免的,我们要学会的是容错,允许犯错,只不过,犯错后后续支撑流程就可以了。

过去其实也是有错误支撑流程,不过更多叫故障。

只不过,错误并不是你不让它发生,它就不会发生了。




「福强私学」来一个?

「福强私学」, 一部沉淀了个人成长、技术与架构、组织与管理以及商业上的方法与心法的百科全书。

footer img for kb.afoo.me

开天窗,拉认知,订阅「福报」,即刻拥有自己的全模态人工智能。

订阅「福报」
Copyright © 王福强个人版权所有 - Since 2004 (Everything is homebrewed with Pandoc and Markdown, little Scala also included.)

claude code with qwen3.5 via ollama

2026-03-05 00:00:00

claude code with qwen3.5 via ollama -王福强的个人博客:一个架构士的思考与沉淀

claude code with qwen3.5 via ollama

王福强

2026-03-05


ollama run qwen3.5:9b然后:

curl http://localhost:11434/api/chat \
  -d '{
    "model": "qwen3.5:9b",
    "messages": [{"role": "user", "content": "tell me a joke"}],
    "stream": false
  }'

不过这种情况下,thinking mode太耗时间:

## 这种方式只是过滤输出,但thinking过程依然存在,只是不显示,所以时长该在还在。
🍀 LuckyJohn💫 af:~/ $ curl http://localhost:11434/api/chat \                                                                                                                                            [12:01:58]
  -d '{
   "model": "qwen3.5:9b",
   "messages": [{"role": "user", "content": "tell me a joke"}],
        "options": {
                "stop": ["<thought>", "</thought>"],
                "temperature": 0.7
        },
   "stream": false
  }'
{"model":"qwen3.5:9b","created_at":"2026-03-05T04:05:38.453523Z","message":{"role":"assistant","content":"Why did the scarecrow win an award?\n\nBecause he was **outstanding in his field**! 🌽","thinking":"Thinking Process:\n\n1.  **Analyze the Request:**\n    *   User: \"tell me a joke\"\n    *   Intent: The user wants to hear a joke for entertainment.\n    *   Tone: Lighthearted, fun, simple, appropriate for general audiences.\n\n2.  **Select a Joke:**\n    *   Criteria: Needs to be generally understandable, not too niche, not offensive, and ideally have a clear punchline.\n    *   Option 1: A pun (e.g., \"Why did the scarecrow...\").\n    *   Option 2: A situational joke (e.g., about animals or everyday life).\n    *   Option 3: A classic short joke.\n\n    *Selection:* Let's go with a classic, clean, slightly punny one. The \"scarecrow\" joke is very popular. Or maybe the \"parallel lines\" math joke? No, let's try something about animals or daily life. How about the \"why don't scientists trust atoms?\" joke? That's a classic. Or the \"I told my wife she was drawing her eyebrows too high.\"\n\n    Let's pick a funny one-liner or a short setup-punchline.\n    *Joke:* Why did the scarecrow win an award? Because he was outstanding in his field!\n\n    *Alternative:* What do you call a fake noodle? An impasta.\n\n    *Alternative:* Parallel lines have so much in common. It's a shame they'll never meet. (Too nerdy?)\n\n    Let's go with the \"scarecrow\" one, it's safe and classic. Or maybe something slightly more conversational.\n    Actually, let's try this one:\n    \"Why don't eggs tell jokes? They'd crack each other up.\"\n\n    Let's choose a good, reliable one.\n    \"What do you call a bear with no teeth? A gummy bear.\" (Simple)\n    \"I'm on a seafood diet. I see food and I eat it.\" (Classic)\n\n    Let's go with the \"seafood\" one or the \"scarecrow\". Scarecrow is good.\n    Wait, let's try a slightly more modern/relatable one.\n    \"Why couldn't the bicycle stand up by itself? It was two tired!\"\n\n    Okay, I'll pick the \"scarecrow\" joke. It's wholesome.\n    Actually, the \"I'm on a seafood diet\" is also very common and short.\n    Let's go with the \"scarecrow\".\n\n3.  **Draft the Response:**\n    *   Deliver the joke clearly.\n    *   Keep it friendly.\n\n4.  **Review against constraints:**\n    *   No harmful content.\n    *   Short and sweet.\n\n5.  **Final Polish:**\n    \"Why did the scarecrow win an award? Because he was outstanding in his field!\"\n\n    Let's add a little emoji for flavor.\n\n    Wait, I'll offer two options or just one good one. One is usually better to avoid decision fatigue.\n    Let's go with:\n    \"I told my wife she was drawing her eyebrows too high. She looked surprised.\"\n    That's a visual pun joke, often well-received.\n\n    Okay, let's stick with the classic Scarecrow one. It's very recognizable.\n    Or the \"Parallel lines\" one is a bit dry.\n    Let's try: \"Why don't skeletons fight each other? They don't have the guts.\"\n\n    Okay, I'll go with the \"scarecrow\" joke. It's safe.\n\n    Wait, let me pick a slightly funnier one.\n    \"What do you call a factory that makes okay products? A satisfactory.\" (Too wordy)\n    \"Why did the math book look sad? Because it had too many problems.\"\n\n    Okay, I'll use the \"scarecrow\" joke. It's a crowd-pleaser.\n    Actually, let's try this one:\n    \"A man walks into a library and asks for a book on paranoia. The librarian whispers, 'There are some books in the back that might interest you...'\"\n\n    That's good. But maybe too complex.\n\n    Let's go with the simple \"scarecrow\" joke.\n    \"Why did the scarecrow win an award? Because he was outstanding in his field!\"\n\n    Okay, ready to output.cw"},"done":true,"done_reason":"stop","total_duration":79915253167,"load_duration":121717125,"prompt_eval_count":14,"prompt_eval_duration":926116750,"eval_count":978,"eval_duration":77819193917}%

## 这种方式是正常的disable掉thinking mode
🍀 LuckyJohn💫 af:~/ $ curl http://localhost:11434/api/chat \                                                                                                                                            [12:05:38]
  -d '{
   "model": "qwen3.5:9b",
   "messages": [{"role": "user", "content": "tell me a joke"}],
        "options": {
                "stop": ["<thought>", "</thought>"],
                "temperature": 0.7
        },
   "think": false,  
   "stream": false
  }'
{"model":"qwen3.5:9b","created_at":"2026-03-05T04:08:27.629941Z","message":{"role":"assistant","content":"Why don't scientists trust atoms?\n\nBecause they **make up everything**! 🤓⚛️"},"done":true,"done_reason":"stop","total_duration":2170299292,"load_duration":123259625,"prompt_eval_count":16,"prompt_eval_duration":351902542,"eval_count":23,"eval_duration":1670221332}%                                                  🍀 LuckyJohn💫 af:~/ $

另外,可以让claude code配合ollama一起使用:

ANTHROPIC_BASE_URL="http://localhost:11434" ANTHROPIC_AUTH_TOKEN="ollama" claude --model qwen3.5:9b 

NOTE

使用最新版的ollama launch claude --model qwen3.5:9b命令一键启动也可以,背后的机制相当于是先ollama run启动服务之后,再启动claude code。




「福强私学」来一个?

「福强私学」, 一部沉淀了个人成长、技术与架构、组织与管理以及商业上的方法与心法的百科全书。

footer img for kb.afoo.me

开天窗,拉认知,订阅「福报」,即刻拥有自己的全模态人工智能。

订阅「福报」
Copyright © 王福强个人版权所有 - Since 2004 (Everything is homebrewed with Pandoc and Markdown, little Scala also included.)

分享关于 AI 的 7 个 KeeNotes

2026-02-24 00:00:00

分享关于 AI 的 7 个 KeeNotes -王福强的个人博客:一个架构士的思考与沉淀

分享关于 AI 的 7 个 KeeNotes

王福强

2026-02-24


1

toC的80%长尾非标场景,其实挺适合AI和Vibe Coding的,但ToB可能很多场景更需要的是”可控迭代”。

提效自然需要,但假如没法可控迭代,那么效率崩塌也是会提前的挺快的。

其实,今天的AI,很多时候干得其实就是上一个代际多维表格干得事情,解决那永远的低频、非标的80%场景,只不过这些场景会随着环境因素而有所改变,或者纯粹是再做一遍。

2

共性问题问AI是比较match的场景

比如一个问题我搞不定, 很多人也会搞不定, 但搞定的人是怎么做到的? 问问AI就找到了答案

其实,这就是群体智能(swarm intelligence)的体现, 因为AI现在的底层机理,其实就是统计和概率

3

建造新的,毁灭旧的

就跟战争一样

打造武器毁灭基础设施

战后再打造生产工具,舍弃旧的武器

总有build,只是板块轮动罢了

嗯,我说的是AI, 也可以泛化。

4

即使你build x for agents, 做了2A业务, 也不意味着build x for people的生意就没人做了, 所有的ToB/ToG/ToV/ToC/ToA生意,都是同时存在的,只是看哪种更适合你,哪种你更有竞争力,哪种你的胜率更大.

只选择适合你的生意!

其它生意, 即使你干了,也不一定能在市场竞争中胜过竞争对手.

5

最好的模型才值得硬件专有化

其次才是适合你盈利场景的模型

单纯17000 tokens/ 每秒

看这很爽

但llama除了开始的启蒙

早就没人用了吧?

6

为了充分利用Agents的能力, 现在MCP和CLI工具成了香饽饽。

AI Agents Make CLI Great Again

7

vibe时代, 数据库和协议定义,依然是最紧要最马虎不得的地方!!!




「福强私学」来一个?

「福强私学」, 一部沉淀了个人成长、技术与架构、组织与管理以及商业上的方法与心法的百科全书。

footer img for kb.afoo.me

开天窗,拉认知,订阅「福报」,即刻拥有自己的全模态人工智能。

订阅「福报」
Copyright © 王福强个人版权所有 - Since 2004 (Everything is homebrewed with Pandoc and Markdown, little Scala also included.)

成为AI高手,只需这4招!

2026-02-11 00:00:00

成为AI高手,只需这4招! -王福强的个人博客:一个架构士的思考与沉淀

成为AI高手,只需这4招!

王福强

2026-02-11


要想成为 AI 高手,不是靠更聪明或更有经验,而是靠建立更好的“系统”。

大多数人把 AI 当搜索引擎用(问完即走),而高手会将 AI 整合进可复用的工作流中。

以下是让你可以超越 97% 用户的 4 个关键 AI 技能 以及 1 个核心筛选原则

1. 打造“粘性”工作流 (Sticky AI Workflows)

不要每次都从零开始,建立一套让你“回不去”的高效系统:

  • 文档链接化: 把 AI 对话的链接直接粘贴到你的工作文档(如 Word/Google Docs)中。下次需要修改或继续时,点击链接直接回到当时的对话语境,而不是去翻找历史记录。
  • 复用成功提示词:
    • 使用 文本扩展工具(如 FooSnippets):设置快捷键,输入简码自动展开成常用的长提示词。
    • 建立 提示词库(Notion/Excel/KeeNotes):保存效果好的提示词,并在不同模型间复用。
  • 利用“Project”功能: 在 ChatGPT 或 Claude 中使用 Project(项目)功能。把背景资料、说明文档传进去,这样在这个项目里的所有新对话都自动拥有上下文,不用每次费口舌解释背景。

2. 系统化提示词工程 (Prompt Engineering)

别再只说“帮我写个商业计划书”,那是垃圾输入=垃圾输出。使用 6 步提示词框架

  1. Role (角色): 定义 AI 是谁(你是专家…),给谁看,什么语气。
  2. Task (任务): 用动词明确指令(撰写、分析、总结…)。
  3. Context (背景): 提供“单一事实来源”,给足数据和背景资料。
  4. Examples (示例): 给 AI 看“什么是好的结果”(Few-shot prompting),这能统一风格。
  5. Output (输出): 指定格式(表格、代码、段落长度)。
  6. Constraints (约束): 明确“不要做什么”,防止 AI 跑偏或废话连篇。

3. AI 工具栈策略 (AI Tool Stacking)

不要陷入“工具焦虑症”,也不要为了用新工具而用新工具。

  • 原则:保持工具栈精简。
  • 分类:
    • 通用型 (Generalist): ChatGPT, Claude, Gemini(主力军,解决 80% 问题)。
    • 专用型 (Specialist): Gamma (PPT), Lovable (编程), Perplexity (搜索)。
  • 操作方法: 先用通用型 AI 尝试解决 -> 如果效果不好,再问通用型 AI“推荐哪个专用工具” -> 只有真的必要时才引入新工具。

4. 验证框架 (Validation Framework)

AI 会“一本正经地胡说八道”(幻觉)。在专业场景下,必须有验证机制:

  • 使用有据可查的工具: 使用 NotebookLMPerplexity,它们会基于你提供的文档或实时搜索结果回答,有引用来源。
  • 自我评估提示词: 要求 AI 给自己的回答打“置信度分数”,或者命令它“如果不知道就说不知道,不要瞎编”。
  • 交叉验证 (Cross-check): 像自动驾驶的双系统备份一样。用 Claude 去检查 ChatGPT 写的内容,让不同的 AI 互相找茬。

🎁 额外赠送:如何判断什么该自动化?

不要试图自动化所有事情,否则会适得其反。

只有满足以下 3 点的任务才值得花时间去搞 AI 自动化:

  1. Repeatable (可重复): 经常发生的任务。
  2. Digital (数字化): 已经在电脑/手机上操作的任务。
  3. Predictable Output (结果可控): 你很清楚“好的结果”长什么样。

总之,别做只会提问的“游客”,要做会建立系统、会管理工具、懂得验证结果的“AI 经理人”。




「福强私学」来一个?

「福强私学」, 一部沉淀了个人成长、技术与架构、组织与管理以及商业上的方法与心法的百科全书。

footer img for kb.afoo.me

开天窗,拉认知,订阅「福报」,即刻拥有自己的全模态人工智能。

订阅「福报」
Copyright © 王福强个人版权所有 - Since 2004 (Everything is homebrewed with Pandoc and Markdown, little Scala also included.)

从《太平年》看职场典型三大代表

2026-02-07 00:00:00

从《太平年》看职场典型三大代表 -王福强的个人博客:一个架构士的思考与沉淀

从《太平年》看职场典型三大代表

王福强

2026-02-07


这阵子一直在刷一个剧: 《太平年》

刚刷到胡进思废钱弘倧(老七)前后的剧情,发现里面几个人物的表现很经典…

这三大典型就是:

  1. 胡进思
  2. 水丘昭券
  3. 元相公

胡进思属于当权派典型代表,通常属于权力部门领导,表现出来的往往强势,让人忌惮,当然,也会让人觉得飞扬跋扈。 这或许也是老七跟他不对付的一个主要原因。

这类人有两个典型解决,一个是胡进思/司马懿这种, 处乱世,博弈空间更大,所以,遇到老大想搞他的时候,他还有挣扎的空间;

另一个就是白起这种,无处他投,老大赐死,那只能就范;

常青树不多,毕竟,用完就扔的也不少,比如来俊臣 🤣

水丘属于实干派,技术官僚,王安石一类的,对官家来说,绝对放心那种,但对人性、人事和权力斗争这些其实不如当权派看得明白,跟对老大还好,跟错老大(比如老七这种),结局也挺悲催。

水丘给职场人最大的警示就是,主明不明,自己有时候说了不算。太过热心甚至越权得罪小人,得先掂量下自己能不能承受招惹的因果。

这方面,第三个典型就做得比较好了,元相公,中庸派,或者说明哲保身派。

你说元相公看不透整个朝堂的势力格局吗?他看得透透儿的,但他分寸拿捏的也绝对到位。该说的说,不该说的不说。 看到水丘请求留下跟老七一对一谈话,他犹豫了下还是闭嘴了,🤣

元相公升一个级别就是冯道,而冯道之所以10朝元老不倒,也是因为他年轻的时候差点儿被刘守光给刀了,所以后面明白了,自己就是一个打工的,不该管的事儿,别吓操心🤣, 从这个角度来说,“吃亏要趁早”绝对是对的🤣




「福强私学」来一个?

「福强私学」, 一部沉淀了个人成长、技术与架构、组织与管理以及商业上的方法与心法的百科全书。

footer img for kb.afoo.me

开天窗,拉认知,订阅「福报」,即刻拥有自己的全模态人工智能。

订阅「福报」
Copyright © 王福强个人版权所有 - Since 2004 (Everything is homebrewed with Pandoc and Markdown, little Scala also included.)

免费!免费!免费! FooSnippets正式上架MacOS AppStore!

2026-02-04 00:00:00

免费!免费!免费! FooSnippets正式上架MacOS AppStore! -王福强的个人博客:一个架构士的思考与沉淀

免费!免费!免费! FooSnippets正式上架MacOS AppStore!

王福强

2026-02-04


首先,你肯定疑惑, FooSnippets是个啥东东?

假如你使用MacOS系统,

假如你是MacOS老用户,

你大概率听说过Text Expander这类软件

也就是你输入简单的字词,它自动帮你替换成你想要它替换的内容。(技术术语一般叫 macro/宏

福强老师用了10多年的Dash.app也属于这类软件。

去年, CodeBuddy 刚出来的时候,

TVP组织大家发挥创意搞创作

我就尝试复刻了一个类似的工具产品,

不过当时起名字叫 Prompt Manager

后来,在 “吃自己狗粮 (Eat one’s own dog food)”的过程中,

发现还有很多不方便的点

所以就做了一些改进

稍加打磨之后发现用起来还算顺手

就发布到了 App Store 分享给大家(过程中经历了四、五次被打回重审😂)

一个是回馈 Code Buddy 当时的免费额度

一个是回馈一直关注我的同学(要不啥产品都收费,显得我小气,哈哈哈哈)

现在这个工具产品以 FooSnippets 的名字发布

Foo(福)+ Snippets(功能)之意

虽然现在很多人都语音输入 + Vibe Coding了

但我相信

FooSnippets 还是可以帮助很多人管理自己的私有知识资产 🤪

哦,对了

你可以从 这里 直达 FooSnippets 的 App Store 位置然后安装。

二维码就不放了,毕竟不符合桌面端用户的习惯和设备属性。

毕竟,FooSnippets 只面向 MacOS桌面端用户。

快去试试吧~




「福强私学」来一个?

「福强私学」, 一部沉淀了个人成长、技术与架构、组织与管理以及商业上的方法与心法的百科全书。

footer img for kb.afoo.me

开天窗,拉认知,订阅「福报」,即刻拥有自己的全模态人工智能。

订阅「福报」
Copyright © 王福强个人版权所有 - Since 2004 (Everything is homebrewed with Pandoc and Markdown, little Scala also included.)