<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>编程 on 王建硕的博客</title><link>https://home.wangjianshuo.com/tags/%E7%BC%96%E7%A8%8B/</link><description>Recent content in 编程 on 王建硕的博客</description><generator>Hugo</generator><language>en</language><lastBuildDate>Tue, 26 May 2026 09:00:00 +0800</lastBuildDate><atom:link href="https://home.wangjianshuo.com/tags/%E7%BC%96%E7%A8%8B/index.xml" rel="self" type="application/rss+xml"/><item><title>ccglass 0.6.0 版本新功能</title><link>https://home.wangjianshuo.com/cn/20260526_ccglass-0-6-0-%E7%89%88%E6%9C%AC%E6%96%B0%E5%8A%9F%E8%83%BD.htm</link><pubDate>Tue, 26 May 2026 09:00:00 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20260526_ccglass-0-6-0-%E7%89%88%E6%9C%AC%E6%96%B0%E5%8A%9F%E8%83%BD.htm</guid><description>&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2026/05/2887-cover.png" fetchpriority="high" /&gt;
&lt;/p&gt;
&lt;p&gt;ccglass 是我自己写的小工具——一个本地的日志反向代理 + 网页面板，让你看见自己的 coding agent 到底往模型发了什么。&lt;/p&gt;
&lt;p&gt;claude-trace 这些挺好的工具，因为 Claude 改了架构没法继续用了，我又有自己的研究需求，就写了一个。没想到在 Github 上拿到了 300 个星星，说明是大家共同的痛点，所以前不久花了些时间维护（其实，所谓的维护，就是在 issue 后面 @claude 一下，然后把它提的 PR 认真地看一遍）。&lt;/p&gt;</description></item><item><title>程序员「瞬间」失业了——但程序员永远不会失业</title><link>https://home.wangjianshuo.com/cn/20260524_%E7%A8%8B%E5%BA%8F%E5%91%98-%E7%9E%AC%E9%97%B4-%E5%A4%B1%E4%B8%9A%E4%BA%86%E2%80%94%E2%80%94%E4%BD%86%E7%A8%8B%E5%BA%8F%E5%91%98%E6%B0%B8%E8%BF%9C%E4%B8%8D%E4%BC%9A%E5%A4%B1%E4%B8%9A.htm</link><pubDate>Sun, 24 May 2026 09:10:00 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20260524_%E7%A8%8B%E5%BA%8F%E5%91%98-%E7%9E%AC%E9%97%B4-%E5%A4%B1%E4%B8%9A%E4%BA%86%E2%80%94%E2%80%94%E4%BD%86%E7%A8%8B%E5%BA%8F%E5%91%98%E6%B0%B8%E8%BF%9C%E4%B8%8D%E4%BC%9A%E5%A4%B1%E4%B8%9A.htm</guid><description>&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2026/05/2878-cover.png" fetchpriority="high" /&gt;
&lt;/p&gt;
&lt;p&gt;一个朋友前几天跟我聊天，很得意地说，他现在 80% 的代码已经是 AI 写的了。我很惊讶，问他你为什么还要写那 20%？你不应该写，一行都不应该写。&lt;/p&gt;
&lt;p&gt;我问他，你会去改汇编语言吗？汇编语言本来就该由 C、Python 编译出来，由编译器去写，由 CPU 去执行。人站在汇编语言这一侧折腾干嘛呢？除非那是网络最底层的 kernel，否则一般的程序，你去碰它干嘛。&lt;/p&gt;</description></item><item><title>程序员的鄙视链</title><link>https://home.wangjianshuo.com/cn/20260524_%E7%A8%8B%E5%BA%8F%E5%91%98%E7%9A%84%E9%84%99%E8%A7%86%E9%93%BE.htm</link><pubDate>Sun, 24 May 2026 09:09:00 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20260524_%E7%A8%8B%E5%BA%8F%E5%91%98%E7%9A%84%E9%84%99%E8%A7%86%E9%93%BE.htm</guid><description>&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2026/05/2877-cover.png" fetchpriority="high" /&gt;
&lt;/p&gt;
&lt;p&gt;我跟很多人聊过一个问题：到底什么叫程序员？有意思的是，每个人对程序员的定义，都是把自己屁股后面那根线画下来——线以内是程序员，线以外不算。我把自己划进去，把比我「低」的那批人划出去。&lt;/p&gt;</description></item><item><title>ccglass 全自动解决 issue 的工作流是如何配置的</title><link>https://home.wangjianshuo.com/cn/20260524_ccglass-%E5%85%A8%E8%87%AA%E5%8A%A8%E8%A7%A3%E5%86%B3-issue-%E7%9A%84%E5%B7%A5%E4%BD%9C%E6%B5%81%E6%98%AF%E5%A6%82%E4%BD%95%E9%85%8D%E7%BD%AE%E7%9A%84.htm</link><pubDate>Sun, 24 May 2026 09:02:00 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20260524_ccglass-%E5%85%A8%E8%87%AA%E5%8A%A8%E8%A7%A3%E5%86%B3-issue-%E7%9A%84%E5%B7%A5%E4%BD%9C%E6%B5%81%E6%98%AF%E5%A6%82%E4%BD%95%E9%85%8D%E7%BD%AE%E7%9A%84.htm</guid><description>&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2026/05/2870-cover.png" fetchpriority="high" /&gt;
&lt;/p&gt;
&lt;h1 id="有人给我提了个-bug我一行没改ai-自己提了-pr"&gt;有人给我提了个 bug，我一行没改，AI 自己提了 PR&lt;/h1&gt;
&lt;p&gt;今天发生一件小事。&lt;/p&gt;
&lt;p&gt;我有个开源的小工具叫 ccglass，是给 AI 编程 agent 做的一个日志面板——agent 在背后跟大模型说了什么、报了什么错，它都实时显示出来。东西不大，几个文件。&lt;/p&gt;</description></item><item><title>ccglass 0.3.0 新功能发布</title><link>https://home.wangjianshuo.com/cn/20260523_ccglass-0-3-0-%E6%96%B0%E5%8A%9F%E8%83%BD%E5%8F%91%E5%B8%83.htm</link><pubDate>Sat, 23 May 2026 09:00:00 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20260523_ccglass-0-3-0-%E6%96%B0%E5%8A%9F%E8%83%BD%E5%8F%91%E5%B8%83.htm</guid><description>&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2026/05/2866-cover.png" fetchpriority="high" /&gt;
&lt;/p&gt;
&lt;p&gt;上周我写了个 ccglass，能看到 Claude Code 在背地里跟大模型说了什么。那时候它还只是个看请求的小工具——左边一列请求，右边几个标签页，system、messages、tools 摊开给你看。&lt;/p&gt;</description></item><item><title>我写了个 ccglass，看看 Claude Code 向大模型发了什么</title><link>https://home.wangjianshuo.com/cn/20260522_%E6%88%91%E5%86%99%E4%BA%86%E4%B8%AA-ccglass-%E7%9C%8B%E7%9C%8B-Claude-Code-%E5%90%91%E5%A4%A7%E6%A8%A1%E5%9E%8B%E5%8F%91%E4%BA%86%E4%BB%80%E4%B9%88.htm</link><pubDate>Fri, 22 May 2026 09:00:00 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20260522_%E6%88%91%E5%86%99%E4%BA%86%E4%B8%AA-ccglass-%E7%9C%8B%E7%9C%8B-Claude-Code-%E5%90%91%E5%A4%A7%E6%A8%A1%E5%9E%8B%E5%8F%91%E4%BA%86%E4%BB%80%E4%B9%88.htm</guid><description>&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2026/05/2865-cover.png" fetchpriority="high" /&gt;
&lt;/p&gt;
&lt;p&gt;我做了个工具，叫 ccglass，能直接看到 Claude Code 发给大语言模型的所有后台信息。&lt;/p&gt;
&lt;p&gt;这事原来 claude-trace 之类的工具能干。但 Claude Code 从 node 升级成二进制文件以后，它们&lt;strong&gt;全都用不了了&lt;/strong&gt;。&lt;/p&gt;</description></item><item><title>「驾驭工程」——程序员真正要学的新功课</title><link>https://home.wangjianshuo.com/cn/20260516_%E9%A9%BE%E9%A9%AD%E5%B7%A5%E7%A8%8B-%E2%80%94%E2%80%94%E7%A8%8B%E5%BA%8F%E5%91%98%E7%9C%9F%E6%AD%A3%E8%A6%81%E5%AD%A6%E7%9A%84%E6%96%B0%E5%8A%9F%E8%AF%BE.htm</link><pubDate>Sat, 16 May 2026 09:03:00 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20260516_%E9%A9%BE%E9%A9%AD%E5%B7%A5%E7%A8%8B-%E2%80%94%E2%80%94%E7%A8%8B%E5%BA%8F%E5%91%98%E7%9C%9F%E6%AD%A3%E8%A6%81%E5%AD%A6%E7%9A%84%E6%96%B0%E5%8A%9F%E8%AF%BE.htm</guid><description>&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2026/05/2847-cover.png" fetchpriority="high" /&gt;
&lt;/p&gt;
&lt;p&gt;「&lt;strong&gt;离新技术越近的产业工人，往往是最惨的。&lt;/strong&gt;」&lt;/p&gt;
&lt;p&gt;任鑫在录《AI 炼金术》播客的时候，扔出来这一句，把我打了一下。&lt;/p&gt;
&lt;p&gt;我们在茶馆里聊到程序员和 AI 的关系，他举了一个我之前没想过的比方——&lt;/p&gt;</description></item><item><title>AI 时代，Python 已经是新的'汇编语言'了</title><link>https://home.wangjianshuo.com/cn/20260515_AI-%E6%97%B6%E4%BB%A3-Python-%E5%B7%B2%E7%BB%8F%E6%98%AF%E6%96%B0%E7%9A%84-%E6%B1%87%E7%BC%96%E8%AF%AD%E8%A8%80-%E4%BA%86.htm</link><pubDate>Fri, 15 May 2026 09:01:00 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20260515_AI-%E6%97%B6%E4%BB%A3-Python-%E5%B7%B2%E7%BB%8F%E6%98%AF%E6%96%B0%E7%9A%84-%E6%B1%87%E7%BC%96%E8%AF%AD%E8%A8%80-%E4%BA%86.htm</guid><description>&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2026/05/2843-cover.png" fetchpriority="high" /&gt;
&lt;/p&gt;
&lt;p&gt;那天和任鑫在茶馆里坐着喝茶，开完会，他突然说&amp;quot;不如我们录个播客吧&amp;quot;，于是我掏出两个手机，他掏出电脑，就开始录了。&lt;/p&gt;
&lt;p&gt;录的时候他第一句话基本上是：上一期你和徐文浩聊屎山代码，我现在就要开始 diss。&lt;/p&gt;</description></item><item><title>少跟 AI 聊天，多写程序</title><link>https://home.wangjianshuo.com/cn/20260515_%E5%B0%91%E8%B7%9F-AI-%E8%81%8A%E5%A4%A9-%E5%A4%9A%E5%86%99%E7%A8%8B%E5%BA%8F.htm</link><pubDate>Fri, 15 May 2026 09:00:00 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20260515_%E5%B0%91%E8%B7%9F-AI-%E8%81%8A%E5%A4%A9-%E5%A4%9A%E5%86%99%E7%A8%8B%E5%BA%8F.htm</guid><description>&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2026/05/2842-cover.png" fetchpriority="high" /&gt;
&lt;/p&gt;
&lt;p&gt;前两天和任鑫在茶馆里录播客，他来 diss 我，我也 diss 他，来来回回聊了两个小时。&lt;/p&gt;
&lt;p&gt;中间有一个点，我自己越想越觉得是这一两年我对 AI 看法里&lt;strong&gt;变化最大的一条&lt;/strong&gt;——&lt;/p&gt;</description></item><item><title>为什么还有人写代码？</title><link>https://home.wangjianshuo.com/cn/20260501_%E4%B8%BA%E4%BB%80%E4%B9%88%E8%BF%98%E6%9C%89%E4%BA%BA%E5%86%99%E4%BB%A3%E7%A0%81.htm</link><pubDate>Fri, 01 May 2026 19:39:38 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20260501_%E4%B8%BA%E4%BB%80%E4%B9%88%E8%BF%98%E6%9C%89%E4%BA%BA%E5%86%99%E4%BB%A3%E7%A0%81.htm</guid><description>&lt;p&gt;昨天有一个朋友跟我分享，他80%的代码已经是AI 写的了。我非常迷惑，特别不理解他手工写的那 20% 到底是什么样的代码？这些代码有多重要，值得手工去写？&lt;/p&gt;</description></item><item><title>AI 大模型的下一步，或许是 Google 早年的那种便宜的方案</title><link>https://home.wangjianshuo.com/cn/20230822_AI-%E5%A4%A7%E6%A8%A1%E5%9E%8B%E7%9A%84%E4%B8%8B%E4%B8%80%E6%AD%A5-%E6%88%96%E8%AE%B8%E6%98%AF-Google-%E6%97%A9%E5%B9%B4%E7%9A%84%E9%82%A3%E7%A7%8D%E4%BE%BF%E5%AE%9C%E7%9A%84%E6%96%B9%E6%A1%88.htm</link><pubDate>Tue, 22 Aug 2023 12:22:26 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20230822_AI-%E5%A4%A7%E6%A8%A1%E5%9E%8B%E7%9A%84%E4%B8%8B%E4%B8%80%E6%AD%A5-%E6%88%96%E8%AE%B8%E6%98%AF-Google-%E6%97%A9%E5%B9%B4%E7%9A%84%E9%82%A3%E7%A7%8D%E4%BE%BF%E5%AE%9C%E7%9A%84%E6%96%B9%E6%A1%88.htm</guid><description>&lt;p&gt;Google 早期的服务器的样子，这么多年在我脑子里，一直挥之不去，成为我对技术，对创业公司的理解的一个基准。&lt;/p&gt;
&lt;p&gt;这是 2007 年，我在硅谷的计算机博物馆看到的一台：‍‍‍‍‍‍‍‍‍&lt;/p&gt;</description></item><item><title>我刚写的 216 行代码的开源项目 Piiwee</title><link>https://home.wangjianshuo.com/cn/20230821_%E6%88%91%E5%88%9A%E5%86%99%E7%9A%84-216-%E8%A1%8C%E4%BB%A3%E7%A0%81%E7%9A%84%E5%BC%80%E6%BA%90%E9%A1%B9%E7%9B%AE-Piiwee.htm</link><pubDate>Mon, 21 Aug 2023 08:48:13 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20230821_%E6%88%91%E5%88%9A%E5%86%99%E7%9A%84-216-%E8%A1%8C%E4%BB%A3%E7%A0%81%E7%9A%84%E5%BC%80%E6%BA%90%E9%A1%B9%E7%9B%AE-Piiwee.htm</guid><description>&lt;p&gt;最近一周没有写文章，因为有的时间都用来做了一个我的开源项目 Piiwee 。写代码，对于我来说，是一个和打游戏，吸食毒品类似的行为，一开始就停不下来，所以侵占了所有写文章的时间。&lt;/p&gt;</description></item><item><title>为什么一遍一遍地重复，是大多数学习的必由之路？</title><link>https://home.wangjianshuo.com/cn/20230729_%E4%B8%BA%E4%BB%80%E4%B9%88%E4%B8%80%E9%81%8D%E4%B8%80%E9%81%8D%E5%9C%B0%E9%87%8D%E5%A4%8D-%E6%98%AF%E5%A4%A7%E5%A4%9A%E6%95%B0%E5%AD%A6%E4%B9%A0%E7%9A%84%E5%BF%85%E7%94%B1%E4%B9%8B%E8%B7%AF.htm</link><pubDate>Sat, 29 Jul 2023 22:21:39 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20230729_%E4%B8%BA%E4%BB%80%E4%B9%88%E4%B8%80%E9%81%8D%E4%B8%80%E9%81%8D%E5%9C%B0%E9%87%8D%E5%A4%8D-%E6%98%AF%E5%A4%A7%E5%A4%9A%E6%95%B0%E5%AD%A6%E4%B9%A0%E7%9A%84%E5%BF%85%E7%94%B1%E4%B9%8B%E8%B7%AF.htm</guid><description>&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2023/07/3053-8f520dfc.webp" fetchpriority="high" /&gt;
&lt;/p&gt;
&lt;p&gt;我对于任何我在乎的系统的核心的代码，最喜欢琢磨的方法，是打开开发环境，写一遍代码，完成功能，跑通，然后全选，删除（当然可以先备份一下），然后开始写第二遍。然后再全选，删除，写第三遍。一般说来，当一个系统自己写了超过十遍以后，会接近于自己的能力的极限，也会写出写出最优的代码，同时自己对于这个领域，可以自信的说，真的懂了。‍‍‍‍‍&lt;/p&gt;</description></item><item><title>好工程师和好财务也有相通之处</title><link>https://home.wangjianshuo.com/cn/20230727_%E5%A5%BD%E5%B7%A5%E7%A8%8B%E5%B8%88%E5%92%8C%E5%A5%BD%E8%B4%A2%E5%8A%A1%E4%B9%9F%E6%9C%89%E7%9B%B8%E9%80%9A%E4%B9%8B%E5%A4%84.htm</link><pubDate>Thu, 27 Jul 2023 23:58:02 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20230727_%E5%A5%BD%E5%B7%A5%E7%A8%8B%E5%B8%88%E5%92%8C%E5%A5%BD%E8%B4%A2%E5%8A%A1%E4%B9%9F%E6%9C%89%E7%9B%B8%E9%80%9A%E4%B9%8B%E5%A4%84.htm</guid><description>&lt;p&gt;周末和财务领域的好朋友 Matt Z. 一起聊天。我说到代码的结构能够看出来一个人的思维逻辑。Matt 说，这是不是和我们在做 Excel 的报表的时候，都会先辟出来一个区域叫做「核心假设」（Key Assumptions） 一个道理？&lt;/p&gt;</description></item><item><title>程序员的定义 以及新 AI 程序员的阶梯</title><link>https://home.wangjianshuo.com/cn/20230219_%E7%A8%8B%E5%BA%8F%E5%91%98%E7%9A%84%E5%AE%9A%E4%B9%89-%E4%BB%A5%E5%8F%8A%E6%96%B0-AI-%E7%A8%8B%E5%BA%8F%E5%91%98%E7%9A%84%E9%98%B6%E6%A2%AF.htm</link><pubDate>Sun, 19 Feb 2023 23:03:37 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20230219_%E7%A8%8B%E5%BA%8F%E5%91%98%E7%9A%84%E5%AE%9A%E4%B9%89-%E4%BB%A5%E5%8F%8A%E6%96%B0-AI-%E7%A8%8B%E5%BA%8F%E5%91%98%E7%9A%84%E9%98%B6%E6%A2%AF.htm</guid><description>&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2023/02/2949-5c21cf25.webp" fetchpriority="high" /&gt;
&lt;/p&gt;
&lt;p&gt;前几天我预测《&lt;a href="http://mp.weixin.qq.com/s?__biz=MjM5NzI0Mjg0MA==&amp;amp;mid=2652376324&amp;amp;idx=1&amp;amp;sn=711e8d358bcd864f753466119af384f8&amp;amp;chksm=bd305fb38a47d6a5b228272bca7dc32419e05a7588841423d8f6850a761147fef51bb123153d&amp;amp;scene=21#wechat_redirect"&gt;因为 ChatGPT，未来十年中国会新增五亿程序员&lt;/a&gt;》。朋友们纷纷追问：「你的程序员的定义是什么？」「只会问问题的人怎么能叫做程序员呢？」「你是不是在偷换概念？」‍‍‍‍‍‍‍&lt;/p&gt;</description></item><item><title>因为 ChatGPT，未来十年中国会新增五亿程序员</title><link>https://home.wangjianshuo.com/cn/20230214_%E5%9B%A0%E4%B8%BA-ChatGPT-%E6%9C%AA%E6%9D%A5%E5%8D%81%E5%B9%B4%E4%B8%AD%E5%9B%BD%E4%BC%9A%E6%96%B0%E5%A2%9E%E4%BA%94%E4%BA%BF%E7%A8%8B%E5%BA%8F%E5%91%98.htm</link><pubDate>Tue, 14 Feb 2023 19:02:57 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20230214_%E5%9B%A0%E4%B8%BA-ChatGPT-%E6%9C%AA%E6%9D%A5%E5%8D%81%E5%B9%B4%E4%B8%AD%E5%9B%BD%E4%BC%9A%E6%96%B0%E5%A2%9E%E4%BA%94%E4%BA%BF%E7%A8%8B%E5%BA%8F%E5%91%98.htm</guid><description>&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2023/02/2945-7111103f.webp" fetchpriority="high" /&gt;
&lt;/p&gt;
&lt;p&gt;我听过的最不可能的预测是「ChatGPT 会取代程序员的工作」。&lt;/p&gt;
&lt;p&gt;恰恰相反，因为 ChatGPT 等工具的出现，我断言未来的十年里，中国新增 5 亿以上的程序员。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;程序员的效率提升一直在飞速进行&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>轻轻松松搞懂椭圆曲线加密算法</title><link>https://home.wangjianshuo.com/cn/20220912_%E8%BD%BB%E8%BD%BB%E6%9D%BE%E6%9D%BE%E6%90%9E%E6%87%82%E6%A4%AD%E5%9C%86%E6%9B%B2%E7%BA%BF%E5%8A%A0%E5%AF%86%E7%AE%97%E6%B3%95.htm</link><pubDate>Mon, 12 Sep 2022 22:29:38 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20220912_%E8%BD%BB%E8%BD%BB%E6%9D%BE%E6%9D%BE%E6%90%9E%E6%87%82%E6%A4%AD%E5%9C%86%E6%9B%B2%E7%BA%BF%E5%8A%A0%E5%AF%86%E7%AE%97%E6%B3%95.htm</guid><description>&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2022/09/2916-a4fc5929.webp" fetchpriority="high" /&gt;
&lt;/p&gt;
&lt;p&gt;数学领域，我&lt;a href="http://mp.weixin.qq.com/s?__biz=MjM5NzI0Mjg0MA==&amp;amp;mid=2652375600&amp;amp;idx=1&amp;amp;sn=17bd2c0c346b7cbcd25604f713c9e8f5&amp;amp;chksm=bd3058878a47d19130610dd720b8e909ad32000071d95751daeda92d75cec9892b3a28f58ed6&amp;amp;scene=21#wechat_redirect"&gt;用吃奶的劲试着解释加密算法的数学原理&lt;/a&gt;，结果失败了，以至于需要写第二遍（&lt;a href="http://mp.weixin.qq.com/s?__biz=MjM5NzI0Mjg0MA==&amp;amp;mid=2652375965&amp;amp;idx=1&amp;amp;sn=b9e90876be03e40c1693c3d4b2e6cc1c&amp;amp;chksm=bd30592a8a47d03c78626cfaa7db3ade515c8168262cb3ae03b84df465592060a9ebdb2421a1&amp;amp;scene=21#wechat_redirect"&gt;有人没看懂？再次尝试讲解 RSA 加密算法&lt;/a&gt;）。&lt;/p&gt;
&lt;p&gt;这些还只是算数。椭圆曲线这样的听起来就高大上的东西，我本以为我不可能搞懂了。结果，自学了一下，发现居然原理惊人的容易（至于类似于 RSA 那样的手工可以求解，等以后小梅老师教了我再说吧）。&lt;/p&gt;</description></item><item><title>纪念互联网之子 Aaron Swartz - RSS, Creative Commons, Web.py, Reddit...</title><link>https://home.wangjianshuo.com/cn/20220816_%E7%BA%AA%E5%BF%B5%E4%BA%92%E8%81%94%E7%BD%91%E4%B9%8B%E5%AD%90-aaron-swartz-rss-creative-commons-web-py-reddit.htm</link><pubDate>Tue, 16 Aug 2022 23:55:40 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20220816_%E7%BA%AA%E5%BF%B5%E4%BA%92%E8%81%94%E7%BD%91%E4%B9%8B%E5%AD%90-aaron-swartz-rss-creative-commons-web-py-reddit.htm</guid><description>&lt;p&gt;在互联网上，Aaron Swartz 这位同学，不断的引起我的注意，好像我总是绕过不去他，不经意的就能看到他的作品，被他或多或少的影响。&lt;/p&gt;
&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2022/08/picture-189.jpg" fetchpriority="high" /&gt;
&lt;/p&gt;
&lt;p&gt;Aaron 的短暂的一生，完成了互联网领域绝大多数人无法企及的成就。我们随便列一些。&lt;/p&gt;</description></item><item><title>如何闭上眼睛默念咒语，就能生成自己的钱包</title><link>https://home.wangjianshuo.com/cn/20220816_%E5%A6%82%E4%BD%95%E9%97%AD%E4%B8%8A%E7%9C%BC%E7%9D%9B%E9%BB%98%E5%BF%B5%E5%92%92%E8%AF%AD%EF%BC%8C%E5%B0%B1%E8%83%BD%E7%94%9F%E6%88%90%E8%87%AA%E5%B7%B1%E7%9A%84%E9%92%B1%E5%8C%85.htm</link><pubDate>Tue, 16 Aug 2022 23:46:35 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20220816_%E5%A6%82%E4%BD%95%E9%97%AD%E4%B8%8A%E7%9C%BC%E7%9D%9B%E9%BB%98%E5%BF%B5%E5%92%92%E8%AF%AD%EF%BC%8C%E5%B0%B1%E8%83%BD%E7%94%9F%E6%88%90%E8%87%AA%E5%B7%B1%E7%9A%84%E9%92%B1%E5%8C%85.htm</guid><description>&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2022/08/picture-112.jpg" fetchpriority="high" /&gt;
&lt;/p&gt;
&lt;p&gt;昨天发出《&lt;a href="http://mp.weixin.qq.com/s?__biz=MjM5NzI0Mjg0MA==&amp;amp;mid=2652375001&amp;amp;idx=1&amp;amp;sn=52cf540e9c776f6e0ca23bd6d6d28a54&amp;amp;chksm=bd30556e8a47dc78090235c21477c2363802a8c086ee2bdb5fcbcde810f3c0adc4136753c3fe&amp;amp;scene=21#wechat_redirect"&gt;送你几个存有以太币的钱包、以及它们的密码&lt;/a&gt;》的文章以后，有工程师的朋友想知道关于密钥如何得出钱包地址的过程。我用代码回答一下这个问题。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;密钥&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;首先，你要先选一个密钥。这个密钥是从 0 到 2 的 256 次方之间的任意一个数字。&lt;/p&gt;
&lt;p&gt;6 也行，18 也行，3333333333，123123123123123123123123123123 都行。&lt;/p&gt;</description></item><item><title>买 NFT，实际是在买什么？从底层代码视角的分析</title><link>https://home.wangjianshuo.com/cn/20220816_%E4%B9%B0-nft%EF%BC%8C%E5%AE%9E%E9%99%85%E6%98%AF%E5%9C%A8%E4%B9%B0%E4%BB%80%E4%B9%88%EF%BC%9F%E4%BB%8E%E5%BA%95%E5%B1%82%E4%BB%A3%E7%A0%81%E8%A7%86%E8%A7%92%E7%9A%84%E5%88%86%E6%9E%90.htm</link><pubDate>Tue, 16 Aug 2022 23:45:37 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20220816_%E4%B9%B0-nft%EF%BC%8C%E5%AE%9E%E9%99%85%E6%98%AF%E5%9C%A8%E4%B9%B0%E4%BB%80%E4%B9%88%EF%BC%9F%E4%BB%8E%E5%BA%95%E5%B1%82%E4%BB%A3%E7%A0%81%E8%A7%86%E8%A7%92%E7%9A%84%E5%88%86%E6%9E%90.htm</guid><description>&lt;p&gt;0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D &lt;/p&gt;
&lt;p&gt;这串乱码是什么？&lt;/p&gt;
&lt;p&gt;这个 42 个字母组成的字符串，其实是一个地址，存在以太坊那个全球所有人公用的大表上。这个神秘的地址里存着什么呢？我们用 web3js 的代码 getCode 去拿一下：&lt;/p&gt;</description></item><item><title>关于非中心化自治组织 (DAO) 的醍醐灌顶时刻</title><link>https://home.wangjianshuo.com/cn/20220816_%E5%85%B3%E4%BA%8E%E9%9D%9E%E4%B8%AD%E5%BF%83%E5%8C%96%E8%87%AA%E6%B2%BB%E7%BB%84%E7%BB%87-dao-%E7%9A%84%E9%86%8D%E9%86%90%E7%81%8C%E9%A1%B6%E6%97%B6%E5%88%BB.htm</link><pubDate>Tue, 16 Aug 2022 23:43:42 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20220816_%E5%85%B3%E4%BA%8E%E9%9D%9E%E4%B8%AD%E5%BF%83%E5%8C%96%E8%87%AA%E6%B2%BB%E7%BB%84%E7%BB%87-dao-%E7%9A%84%E9%86%8D%E9%86%90%E7%81%8C%E9%A1%B6%E6%97%B6%E5%88%BB.htm</guid><description>&lt;p&gt;上一篇：&lt;a href="http://mp.weixin.qq.com/s?__biz=MjM5NzI0Mjg0MA==&amp;amp;mid=2652375199&amp;amp;idx=1&amp;amp;sn=bb2670e3ec50d4583a7b05dac4672f27&amp;amp;chksm=bd305a288a47d33ea474f36c8b26055f40cfbdd347a4e8e4dcacc124ef44b4993e37f6587763&amp;amp;scene=21#wechat_redirect"&gt;迷宫的入口是 DAO 软件&lt;/a&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;我们都有过一些特殊的时刻，仅仅瞟一眼一样原来没见过的东西，立刻就明白了它是什么，并且后面的很多年，这种认知就没有变过。这些时刻，被我称之为“醍醐灌顶时刻”。&lt;/p&gt;</description></item><item><title>IPFS 学习笔记</title><link>https://home.wangjianshuo.com/cn/20220816_ipfs-%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0.htm</link><pubDate>Tue, 16 Aug 2022 23:42:32 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20220816_ipfs-%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0.htm</guid><description>&lt;p&gt;这是一篇技术笔记，供自己备忘。&lt;/p&gt;
&lt;p&gt;IPFS 是一种很早很早就开始运行分布式的存储系统，据说《硅谷》美剧的Piped Piper 的原型就是类似于 IPFS 的系统。&lt;/p&gt;
&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2022/08/picture-57.jpg" fetchpriority="high" /&gt;
&lt;/p&gt;
&lt;p&gt;我其实非常着迷于 IPFS 这样的设计：对于一个文件产生一个哈希值，可以用这个哈希值访问到这个文件。&lt;/p&gt;</description></item><item><title>为什么说读代码像读小说？</title><link>https://home.wangjianshuo.com/cn/20210825_%E4%B8%BA%E4%BB%80%E4%B9%88%E8%AF%B4%E8%AF%BB%E4%BB%A3%E7%A0%81%E5%83%8F%E8%AF%BB%E5%B0%8F%E8%AF%B4%EF%BC%9F-2.htm</link><pubDate>Wed, 25 Aug 2021 15:54:46 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20210825_%E4%B8%BA%E4%BB%80%E4%B9%88%E8%AF%B4%E8%AF%BB%E4%BB%A3%E7%A0%81%E5%83%8F%E8%AF%BB%E5%B0%8F%E8%AF%B4%EF%BC%9F-2.htm</guid><description>&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2021/08/picture-51.jpg" fetchpriority="high" /&gt;
&lt;/p&gt;
&lt;p&gt;来， 随手那一小段 anime.js 的代码。看其中最简单的一段：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; str: a =&amp;gt; typeof a === &amp;lsquo;string&amp;rsquo;,&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;这一句，就看得出作者遣词造句的能力。&lt;/p&gt;
&lt;p&gt;比如，他用了三等号，就是 === ，而不是双等号 == 。这两个相等运算在这里都是可以使用的，运行结果其实是一样的，但是三等号更加准确的表达了这里作者想意图，就是要“严格相等，不仅仅值要相等，类型也要相等”。&lt;/p&gt;</description></item><item><title>7月10日SHAI上海人工智能聚会</title><link>https://home.wangjianshuo.com/cn/20210825_7%E6%9C%8810%E6%97%A5shai%E4%B8%8A%E6%B5%B7%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD%E8%81%9A%E4%BC%9A.htm</link><pubDate>Wed, 25 Aug 2021 13:22:29 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20210825_7%E6%9C%8810%E6%97%A5shai%E4%B8%8A%E6%B5%B7%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD%E8%81%9A%E4%BC%9A.htm</guid><description>&lt;p&gt;时间：2021年7月10日 2:30 - 4:30&lt;/p&gt;
&lt;p&gt;地点：五原路380号（近武康路口）&lt;/p&gt;
&lt;p&gt;大家可以在后台回复 “ 聚会 ” 获取参加快闪群的二维码。快闪群会在7月17日发放下一次聚会二维码之后解散。&lt;/p&gt;</description></item><item><title>好的工程师的 7 个加分项</title><link>https://home.wangjianshuo.com/cn/20210702_%E5%A5%BD%E7%9A%84%E5%B7%A5%E7%A8%8B%E5%B8%88%E7%9A%84-7-%E4%B8%AA%E5%8A%A0%E5%88%86%E9%A1%B9.htm</link><pubDate>Fri, 02 Jul 2021 11:37:31 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20210702_%E5%A5%BD%E7%9A%84%E5%B7%A5%E7%A8%8B%E5%B8%88%E7%9A%84-7-%E4%B8%AA%E5%8A%A0%E5%88%86%E9%A1%B9.htm</guid><description>&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2021/07/picture-261.jpg" fetchpriority="high" /&gt;
&lt;/p&gt;
&lt;p&gt;在所有职位中，工程师这个职位是我们团队人数最多的，我希望尽量长的时间保持工程师占总人数的 2/3 的比例。工程师的工作描述反而是最简单的，因为我们的工程师不分前端工程师，或者后端工程师，或者硬件工程师等种类，甚至暂时不分高级工程师，初级工程师等，而只有一个职位，就是工程师。&lt;/p&gt;</description></item><item><title>最新文章列表</title><link>https://home.wangjianshuo.com/cn/20210702_%E6%9C%80%E6%96%B0%E6%96%87%E7%AB%A0%E5%88%97%E8%A1%A8.htm</link><pubDate>Fri, 02 Jul 2021 11:32:40 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20210702_%E6%9C%80%E6%96%B0%E6%96%87%E7%AB%A0%E5%88%97%E8%A1%A8.htm</guid><description>&lt;p&gt;在测试 PIL 库的字体效果的时候，自己写了个好简单的 Python 程序，把自己的公众号的题图都变成这个样子。有人想用吗？反正做也做好了。&lt;/p&gt;
&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2021/07/picture-124.jpg" fetchpriority="high" /&gt;
&lt;/p&gt;
&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2021/07/picture-125.jpg" /&gt;
&lt;/p&gt;
&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2021/07/picture-126.jpg" /&gt;
&lt;/p&gt;
&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2021/07/picture-127.jpg" /&gt;
&lt;/p&gt;
&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2021/07/picture-128.jpg" /&gt;
&lt;/p&gt;
&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2021/07/picture-129.jpg" /&gt;
&lt;/p&gt;</description></item><item><title>为什么 1024 程序员节会让我有些不舒服呢</title><link>https://home.wangjianshuo.com/cn/20210517_%E4%B8%BA%E4%BB%80%E4%B9%88-1024-%E7%A8%8B%E5%BA%8F%E5%91%98%E8%8A%82%E4%BC%9A%E8%AE%A9%E6%88%91%E6%9C%89%E4%BA%9B%E4%B8%8D%E8%88%92%E6%9C%8D%E5%91%A2.htm</link><pubDate>Mon, 17 May 2021 23:15:10 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20210517_%E4%B8%BA%E4%BB%80%E4%B9%88-1024-%E7%A8%8B%E5%BA%8F%E5%91%98%E8%8A%82%E4%BC%9A%E8%AE%A9%E6%88%91%E6%9C%89%E4%BA%9B%E4%B8%8D%E8%88%92%E6%9C%8D%E5%91%A2.htm</guid><description>&lt;p&gt;对于 1024 这个横空出世的节日，我始终心里有些不舒服，却一直说不出来原因。我想，或许开始写些东西可以帮助自己挖掘出内心不舒服的原因。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;刻板印象的集中制作和传播&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>为什么代码总有可能变得更短？</title><link>https://home.wangjianshuo.com/cn/20210517_%E4%B8%BA%E4%BB%80%E4%B9%88%E4%BB%A3%E7%A0%81%E6%80%BB%E6%9C%89%E5%8F%AF%E8%83%BD%E5%8F%98%E5%BE%97%E6%9B%B4%E7%9F%AD%EF%BC%9F.htm</link><pubDate>Mon, 17 May 2021 23:15:06 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20210517_%E4%B8%BA%E4%BB%80%E4%B9%88%E4%BB%A3%E7%A0%81%E6%80%BB%E6%9C%89%E5%8F%AF%E8%83%BD%E5%8F%98%E5%BE%97%E6%9B%B4%E7%9F%AD%EF%BC%9F.htm</guid><description>&lt;p&gt;我曾冒着被程序员世界骂得体无完肤的风险，坚定的论断，&lt;a href="http://mp.weixin.qq.com/s?__biz=MjM5NzI0Mjg0MA==&amp;amp;mid=2652371662&amp;amp;idx=1&amp;amp;sn=88b1083dd05f1381eabb1beda7c47a54&amp;amp;chksm=bd3fa8798a48216f764c86605f36accd9d6164d19992bb5671a25bfa9ffbfcd7ae3bbaeacbe3&amp;amp;scene=21#wechat_redirect"&gt;越短的代码就是越好的代码&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;不接受抬杠，不接受反驳。😄 &lt;/p&gt;
&lt;p&gt;我经常问自己，为什么代码总能变得更短？&lt;/p&gt;
&lt;p&gt;同时，为什么把一个5行的代码编程4行基本不可能，但是把几万行的代码编程几千甚至几百行经常可以做到？&lt;/p&gt;</description></item><item><title>京东云试用报告</title><link>https://home.wangjianshuo.com/cn/20201230_%E4%BA%AC%E4%B8%9C%E4%BA%91%E8%AF%95%E7%94%A8%E6%8A%A5%E5%91%8A.htm</link><pubDate>Wed, 30 Dec 2020 22:54:32 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20201230_%E4%BA%AC%E4%B8%9C%E4%BA%91%E8%AF%95%E7%94%A8%E6%8A%A5%E5%91%8A.htm</guid><description>&lt;h2 id="登陆"&gt;登陆&lt;/h2&gt;
&lt;p&gt;京东智联云APP登陆和京东登录还是分开的，这个好处是什么呢？对于一个华为应用市场报告有9万次安装的app，作为主登陆，反而把京东APP的巨大的用户群的优势给去掉了。至少也应该是京东APP扫描二维码也可以登陆，京东智联云APP扫描也可以登陆，而且用的都应该是京东APP的登陆体系。&lt;/p&gt;</description></item><item><title>如何创造环境让孩子学习编程</title><link>https://home.wangjianshuo.com/cn/20200903_%E5%A6%82%E4%BD%95%E5%88%9B%E9%80%A0%E7%8E%AF%E5%A2%83%E8%AE%A9%E5%AD%A9%E5%AD%90%E5%AD%A6%E4%B9%A0%E7%BC%96%E7%A8%8B.htm</link><pubDate>Thu, 03 Sep 2020 15:18:03 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20200903_%E5%A6%82%E4%BD%95%E5%88%9B%E9%80%A0%E7%8E%AF%E5%A2%83%E8%AE%A9%E5%AD%A9%E5%AD%90%E5%AD%A6%E4%B9%A0%E7%BC%96%E7%A8%8B.htm</guid><description>&lt;p&gt;先说我的经历。&lt;/p&gt;
&lt;p&gt;我学习编程比较早，是在五年级结束的那个暑假，也就是1988年六月份。&lt;/p&gt;
&lt;p&gt;我学编程有这么几个机缘巧合。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;环境&lt;/strong&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;第一个机缘，是我出生在一个工程师家庭。爸爸是交大电机系毕业的，家里面各种电子相关的书比较多。我最早接触的是二极管三极管这样的电路，三、四年级的时候迷着做收音机，音乐门铃什么的，看的书也是《电子报》一类制作各种电器的。而电脑是因为其中有一本叫做《计算机台历》的，里面关于计算机的基础知识让我似懂非懂的看了两年。&lt;/p&gt;</description></item><item><title>链表，哈希，挖矿等 － 区块链技术学习笔记</title><link>https://home.wangjianshuo.com/cn/20200903_%E9%93%BE%E8%A1%A8%EF%BC%8C%E5%93%88%E5%B8%8C%EF%BC%8C%E6%8C%96%E7%9F%BF%E7%AD%89-%EF%BC%8D-%E5%8C%BA%E5%9D%97%E9%93%BE%E6%8A%80%E6%9C%AF%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0.htm</link><pubDate>Thu, 03 Sep 2020 15:17:52 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20200903_%E9%93%BE%E8%A1%A8%EF%BC%8C%E5%93%88%E5%B8%8C%EF%BC%8C%E6%8C%96%E7%9F%BF%E7%AD%89-%EF%BC%8D-%E5%8C%BA%E5%9D%97%E9%93%BE%E6%8A%80%E6%9C%AF%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0.htm</guid><description>&lt;p&gt;&lt;strong&gt;开篇&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;很多年没有看到像区块链这样有生命力的事物了。它像一个欣欣向荣的新大陆一样，把技术理想主义者，围观者，投资者，投机者，甚至流氓骗子各色人等聚集在一起。&lt;/p&gt;</description></item><item><title>智能合约，代币（Token）等 - 区块链技术学习笔记</title><link>https://home.wangjianshuo.com/cn/20200903_%E6%99%BA%E8%83%BD%E5%90%88%E7%BA%A6%EF%BC%8C%E4%BB%A3%E5%B8%81%EF%BC%88token%EF%BC%89%E7%AD%89-%E5%8C%BA%E5%9D%97%E9%93%BE%E6%8A%80%E6%9C%AF%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0.htm</link><pubDate>Thu, 03 Sep 2020 15:17:48 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20200903_%E6%99%BA%E8%83%BD%E5%90%88%E7%BA%A6%EF%BC%8C%E4%BB%A3%E5%B8%81%EF%BC%88token%EF%BC%89%E7%AD%89-%E5%8C%BA%E5%9D%97%E9%93%BE%E6%8A%80%E6%9C%AF%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0.htm</guid><description>&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2020/09/picture-87.jpg" fetchpriority="high" /&gt;
&lt;/p&gt;
&lt;p&gt;智能合约（Smart  Contract）是区块链一个重要的功能。说到智能合约，我们得把视野从比特币转到以太坊，因为完整的支持智能合约是以太坊和比特币的重大差别。&lt;/p&gt;</description></item><item><title>卷积网络 CNN 学习笔记之一：我们是怎么认识0的</title><link>https://home.wangjianshuo.com/cn/20200903_%E5%8D%B7%E7%A7%AF%E7%BD%91%E7%BB%9C-cnn-%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0%E4%B9%8B%E4%B8%80%EF%BC%9A%E6%88%91%E4%BB%AC%E6%98%AF%E6%80%8E%E4%B9%88%E8%AE%A4%E8%AF%860%E7%9A%84.htm</link><pubDate>Thu, 03 Sep 2020 15:12:02 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20200903_%E5%8D%B7%E7%A7%AF%E7%BD%91%E7%BB%9C-cnn-%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0%E4%B9%8B%E4%B8%80%EF%BC%9A%E6%88%91%E4%BB%AC%E6%98%AF%E6%80%8E%E4%B9%88%E8%AE%A4%E8%AF%860%E7%9A%84.htm</guid><description>&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2020/09/picture-32.jpg" fetchpriority="high" /&gt;
&lt;/p&gt;
&lt;p&gt;题图：Airbnb总部 绘于：2020年3月&lt;/p&gt;
&lt;p&gt;最近在做人工智能方面的探索的时候，深感能找到的材料中，按照一定步骤编程就能得出结果的信息很多，但大家都把这个过程视为一个黑盒子，常说，这个过程我们就不知道为什么了，反正结果就是计算机有智能了。&lt;/p&gt;</description></item><item><title>卷积网络 CNN 学习笔记之二：细节消失，抽象生成</title><link>https://home.wangjianshuo.com/cn/20200903_%E5%8D%B7%E7%A7%AF%E7%BD%91%E7%BB%9C-cnn-%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0%E4%B9%8B%E4%BA%8C%EF%BC%9A%E7%BB%86%E8%8A%82%E6%B6%88%E5%A4%B1%EF%BC%8C%E6%8A%BD%E8%B1%A1%E7%94%9F%E6%88%90.htm</link><pubDate>Thu, 03 Sep 2020 15:11:46 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20200903_%E5%8D%B7%E7%A7%AF%E7%BD%91%E7%BB%9C-cnn-%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0%E4%B9%8B%E4%BA%8C%EF%BC%9A%E7%BB%86%E8%8A%82%E6%B6%88%E5%A4%B1%EF%BC%8C%E6%8A%BD%E8%B1%A1%E7%94%9F%E6%88%90.htm</guid><description>&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2020/09/picture-30.jpg" fetchpriority="high" /&gt;
&lt;/p&gt;
&lt;p&gt;题图：香港的蜗居&lt;/p&gt;
&lt;p&gt;绘于：2020年3月&lt;/p&gt;
&lt;p&gt;上一篇：&lt;a href="http://mp.weixin.qq.com/s?__biz=MjM5NzI0Mjg0MA==&amp;amp;mid=2652371437&amp;amp;idx=1&amp;amp;sn=57a20e87ac2aaed52adfe3b0e6a1e4d8&amp;amp;chksm=bd3fab5a8a48224c62d0ac433d1c7e1336f41f01fdcd060c0123d93f2acabf24519951f77ebf&amp;amp;scene=21#wechat_redirect"&gt;卷积网络 CNN 学习笔记之一：我们是怎么认识0的&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;昨天留了个思考题，你的大脑是如何认识那个一圈的？&lt;/p&gt;
&lt;p&gt;在你翻看 &lt;a href="http://mp.weixin.qq.com/s?__biz=MjM5NzI0Mjg0MA==&amp;amp;mid=2652371437&amp;amp;idx=1&amp;amp;sn=57a20e87ac2aaed52adfe3b0e6a1e4d8&amp;amp;chksm=bd3fab5a8a48224c62d0ac433d1c7e1336f41f01fdcd060c0123d93f2acabf24519951f77ebf&amp;amp;scene=21#wechat_redirect"&gt;前一篇文章&lt;/a&gt; 以前，我再问你一个问题，你还记得上一次我们见到的 MNIST 数据集里面的那个 0 是如下哪一副吗？或者降低点难度，和如下哪一个 0 更接近呢？&lt;/p&gt;</description></item><item><title>卷积网络 CNN 学习笔记之三：卷积像卷地毯</title><link>https://home.wangjianshuo.com/cn/20200903_%E5%8D%B7%E7%A7%AF%E7%BD%91%E7%BB%9C-cnn-%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0%E4%B9%8B%E4%B8%89%EF%BC%9A%E5%8D%B7%E7%A7%AF%E5%83%8F%E5%8D%B7%E5%9C%B0%E6%AF%AF.htm</link><pubDate>Thu, 03 Sep 2020 15:11:26 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20200903_%E5%8D%B7%E7%A7%AF%E7%BD%91%E7%BB%9C-cnn-%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0%E4%B9%8B%E4%B8%89%EF%BC%9A%E5%8D%B7%E7%A7%AF%E5%83%8F%E5%8D%B7%E5%9C%B0%E6%AF%AF.htm</guid><description>&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2020/09/picture-23.jpg" fetchpriority="high" /&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a href="http://mp.weixin.qq.com/s?__biz=MjM5NzI0Mjg0MA==&amp;amp;mid=2652371437&amp;amp;idx=1&amp;amp;sn=57a20e87ac2aaed52adfe3b0e6a1e4d8&amp;amp;chksm=bd3fab5a8a48224c62d0ac433d1c7e1336f41f01fdcd060c0123d93f2acabf24519951f77ebf&amp;amp;scene=21#wechat_redirect"&gt;学习笔记之一：我们是怎么认识0的&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://mp.weixin.qq.com/s?__biz=MjM5NzI0Mjg0MA==&amp;amp;mid=2652371505&amp;amp;idx=1&amp;amp;sn=dc38b21c72f119b9d34362791d08cb45&amp;amp;chksm=bd3fa8868a48219016f6dbcc2149eff5128eb2231828a69aaadc152f1426fb05eb26ed95d353&amp;amp;scene=21#wechat_redirect"&gt;学习笔记之二：细节消失，抽象生成&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;总算可以正式开始讲卷积网络的工作原理了。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;过滤器像卷地毯一样卷过去&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2020/09/picture-24.jpg" /&gt;
&lt;/p&gt;
&lt;p&gt;上面的白纸就像图像，而我们现在拿一个红颜色的格子，这个格子是 3 x 3 ，里面写着9个数字。这 9 个数字开始是随机数，经过大量的训练以后开始不断的变得有意义。&lt;/p&gt;</description></item><item><title>卷积网络 CNN 学习笔记之四：最终形成判断</title><link>https://home.wangjianshuo.com/cn/20200903_%E5%8D%B7%E7%A7%AF%E7%BD%91%E7%BB%9C-cnn-%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0%E4%B9%8B%E5%9B%9B%EF%BC%9A%E6%9C%80%E7%BB%88%E5%BD%A2%E6%88%90%E5%88%A4%E6%96%AD.htm</link><pubDate>Thu, 03 Sep 2020 15:10:40 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20200903_%E5%8D%B7%E7%A7%AF%E7%BD%91%E7%BB%9C-cnn-%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0%E4%B9%8B%E5%9B%9B%EF%BC%9A%E6%9C%80%E7%BB%88%E5%BD%A2%E6%88%90%E5%88%A4%E6%96%AD.htm</guid><description>&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2020/09/picture-22.jpg" fetchpriority="high" /&gt;
&lt;/p&gt;
&lt;p&gt;题图：思南路别墅&lt;/p&gt;
&lt;p&gt;绘于：2020年4月17日&lt;/p&gt;
&lt;p&gt;&lt;a href="http://mp.weixin.qq.com/s?__biz=MjM5NzI0Mjg0MA==&amp;amp;mid=2652371437&amp;amp;idx=1&amp;amp;sn=57a20e87ac2aaed52adfe3b0e6a1e4d8&amp;amp;chksm=bd3fab5a8a48224c62d0ac433d1c7e1336f41f01fdcd060c0123d93f2acabf24519951f77ebf&amp;amp;scene=21#wechat_redirect"&gt;学习笔记之一：我们是怎么认识 0 的&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://mp.weixin.qq.com/s?__biz=MjM5NzI0Mjg0MA==&amp;amp;mid=2652371505&amp;amp;idx=1&amp;amp;sn=dc38b21c72f119b9d34362791d08cb45&amp;amp;chksm=bd3fa8868a48219016f6dbcc2149eff5128eb2231828a69aaadc152f1426fb05eb26ed95d353&amp;amp;scene=21#wechat_redirect"&gt;学习笔记之二：细节消失，抽象生成&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://mp.weixin.qq.com/s?__biz=MjM5NzI0Mjg0MA==&amp;amp;mid=2652371548&amp;amp;idx=1&amp;amp;sn=3c56ef4fd73a714c018ba954e44bc950&amp;amp;chksm=bd3fa8eb8a4821fd0fc757afe6e85b1989dfac9feafb0901c490f97537f600d4cf51b8b1253e&amp;amp;scene=21#wechat_redirect"&gt;学习笔记之三：卷积像卷地毯&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;上一次走到了卷积网络的第一步，就是用一个 3x3 的小矩阵就像探照灯一样，把图像扫一遍，就得到了第二层的网络。&lt;/p&gt;</description></item><item><title>卷积网络 CNN 学习笔记之五：就像医生看化验单</title><link>https://home.wangjianshuo.com/cn/20200903_%E5%8D%B7%E7%A7%AF%E7%BD%91%E7%BB%9C-cnn-%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0%E4%B9%8B%E4%BA%94%EF%BC%9A%E5%B0%B1%E5%83%8F%E5%8C%BB%E7%94%9F%E7%9C%8B%E5%8C%96%E9%AA%8C%E5%8D%95.htm</link><pubDate>Thu, 03 Sep 2020 15:10:31 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20200903_%E5%8D%B7%E7%A7%AF%E7%BD%91%E7%BB%9C-cnn-%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0%E4%B9%8B%E4%BA%94%EF%BC%9A%E5%B0%B1%E5%83%8F%E5%8C%BB%E7%94%9F%E7%9C%8B%E5%8C%96%E9%AA%8C%E5%8D%95.htm</guid><description>&lt;p&gt;&lt;a href="http://mp.weixin.qq.com/s?__biz=MjM5NzI0Mjg0MA==&amp;amp;mid=2652371437&amp;amp;idx=1&amp;amp;sn=57a20e87ac2aaed52adfe3b0e6a1e4d8&amp;amp;chksm=bd3fab5a8a48224c62d0ac433d1c7e1336f41f01fdcd060c0123d93f2acabf24519951f77ebf&amp;amp;scene=21#wechat_redirect"&gt;学习笔记之一：我们是怎么认识0的&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://mp.weixin.qq.com/s?__biz=MjM5NzI0Mjg0MA==&amp;amp;mid=2652371505&amp;amp;idx=1&amp;amp;sn=dc38b21c72f119b9d34362791d08cb45&amp;amp;chksm=bd3fa8868a48219016f6dbcc2149eff5128eb2231828a69aaadc152f1426fb05eb26ed95d353&amp;amp;scene=21#wechat_redirect"&gt;学习笔记之二：细节消失，抽象生成&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://mp.weixin.qq.com/s?__biz=MjM5NzI0Mjg0MA==&amp;amp;mid=2652371548&amp;amp;idx=1&amp;amp;sn=3c56ef4fd73a714c018ba954e44bc950&amp;amp;chksm=bd3fa8eb8a4821fd0fc757afe6e85b1989dfac9feafb0901c490f97537f600d4cf51b8b1253e&amp;amp;scene=21#wechat_redirect"&gt;学习笔记之三：卷积像卷地毯&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://mp.weixin.qq.com/s?__biz=MjM5NzI0Mjg0MA==&amp;amp;mid=2652371581&amp;amp;idx=1&amp;amp;sn=86418ad4a2f335940c113d2255515ed0&amp;amp;chksm=bd3fa8ca8a4821dc6cb766fc277114757e95ef3c40511cb008458506c3eafab37477dabd3ce2&amp;amp;scene=21#wechat_redirect"&gt;学习笔记之四：最终形成判断&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;今天，我们看上一次的代码跑起来是什么样子的。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;输入图像&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2020/09/picture-16.jpg" fetchpriority="high" /&gt;
&lt;/p&gt;
&lt;p&gt;这个是输入图像，维度是 28x28x1 。 这是 MNIST 图像集里面的第1002号数字。我用我的人脑处理了一下，觉得似乎是一个  &lt;strong&gt;1&lt;/strong&gt; 。我们看看电脑如何处理。&lt;/p&gt;</description></item><item><title>为什么说读代码像读小说？</title><link>https://home.wangjianshuo.com/cn/20200903_%E4%B8%BA%E4%BB%80%E4%B9%88%E8%AF%B4%E8%AF%BB%E4%BB%A3%E7%A0%81%E5%83%8F%E8%AF%BB%E5%B0%8F%E8%AF%B4%EF%BC%9F.htm</link><pubDate>Thu, 03 Sep 2020 08:35:04 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20200903_%E4%B8%BA%E4%BB%80%E4%B9%88%E8%AF%B4%E8%AF%BB%E4%BB%A3%E7%A0%81%E5%83%8F%E8%AF%BB%E5%B0%8F%E8%AF%B4%EF%BC%9F.htm</guid><description>&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2020/09/picture-1.jpg" fetchpriority="high" /&gt;
&lt;/p&gt;
&lt;p&gt;来， 随手那一小段 anime.js 的代码。看其中最简单的一段：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; str: a =&amp;gt; typeof a === &amp;lsquo;string&amp;rsquo;,&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;这一句，就看得出作者遣词造句的能力。&lt;/p&gt;
&lt;p&gt;比如，他用了三等号，就是 === ，而不是双等号 == 。这两个相等运算在这里都是可以使用的，运行结果其实是一样的，但是三等号更加准确的表达了这里作者想意图，就是要“严格相等，不仅仅值要相等，类型也要相等”。&lt;/p&gt;</description></item><item><title>如何判断一段程序是否优美？</title><link>https://home.wangjianshuo.com/cn/20200903_%E5%A6%82%E4%BD%95%E5%88%A4%E6%96%AD%E4%B8%80%E6%AE%B5%E7%A8%8B%E5%BA%8F%E6%98%AF%E5%90%A6%E4%BC%98%E7%BE%8E%EF%BC%9F.htm</link><pubDate>Thu, 03 Sep 2020 08:33:09 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20200903_%E5%A6%82%E4%BD%95%E5%88%A4%E6%96%AD%E4%B8%80%E6%AE%B5%E7%A8%8B%E5%BA%8F%E6%98%AF%E5%90%A6%E4%BC%98%E7%BE%8E%EF%BC%9F.htm</guid><description>&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2020/09/picture-6.jpg" fetchpriority="high" /&gt;
&lt;/p&gt;
&lt;p&gt;我喜欢的美好的东西，看似相隔很远，比如写文章，学习西班牙语，绘画，还有编程，却有着相同的本质 &amp;ndash; 使用一种简练的最基本的元素构建一个世界。可以像文章一样被读懂，西班牙语一样被听懂，像绘画一样被人看到，像程序一样被执行。&lt;/p&gt;</description></item><item><title>怎么没想到呢？</title><link>https://home.wangjianshuo.com/cn/20121101_%E6%80%8E%E4%B9%88%E6%B2%A1%E6%83%B3%E5%88%B0%E5%91%A2%EF%BC%9F.htm</link><pubDate>Thu, 01 Nov 2012 13:09:03 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20121101_%E6%80%8E%E4%B9%88%E6%B2%A1%E6%83%B3%E5%88%B0%E5%91%A2%EF%BC%9F.htm</guid><description>&lt;p&gt;1993年，Marc Andreessen写了一封很重要的&lt;a href="http://1997.webhistory.org/www.lists/www-talk.1993q1/0182.html"&gt;邮件&lt;/a&gt;：&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;I&amp;rsquo;d like to propose a new, optional HTML tag:&lt;/p&gt;
&lt;p&gt;IMG&lt;/p&gt;
&lt;p&gt;Required argument is SRC=&amp;ldquo;url&amp;rdquo;.&lt;/p&gt;
&lt;p&gt;This names a bitmap or pixmap file for the browser to attempt to pull
over the network and interpret as an image, to be embedded in the text
at the point of the tag&amp;rsquo;s occurrence.&lt;/p&gt;</description></item><item><title>EpicEditor － 前端的代码真奇妙</title><link>https://home.wangjianshuo.com/cn/20120908_epiceditor-%EF%BC%8D-%E5%89%8D%E7%AB%AF%E7%9A%84%E4%BB%A3%E7%A0%81%E7%9C%9F%E5%A5%87%E5%A6%99.htm</link><pubDate>Sat, 08 Sep 2012 21:23:58 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20120908_epiceditor-%EF%BC%8D-%E5%89%8D%E7%AB%AF%E7%9A%84%E4%BB%A3%E7%A0%81%E7%9C%9F%E5%A5%87%E5%A6%99.htm</guid><description>&lt;p&gt;var opts = {
container: &amp;rsquo;epiceditor&amp;rsquo;,
basePath: &amp;lsquo;/cn/2012/09/EpicEditor/epiceditor&amp;rsquo;,
clientSideStorage: true,
localStorageName: &amp;rsquo;epiceditor&amp;rsquo;,
parser: marked,
file: {
name: &amp;rsquo;epiceditor&amp;rsquo;,
defaultContent: &amp;lsquo;&amp;rsquo;,
autoSave: 100
},
theme: {
base:&amp;rsquo;/themes/base/epiceditor.css&amp;rsquo;,
preview:&amp;rsquo;/themes/preview/preview-dark.css&amp;rsquo;,
editor:&amp;rsquo;/themes/editor/epic-dark.css&amp;rsquo;
},
focusOnLoad: true,
shortcut: {
modifier: 18,
fullscreen: 70,
preview: 80,
edit: 79
}
}
var e = new EpicEditor(opts).load();&lt;/p&gt;
&lt;p&gt;看了sofish这个百姓网工程师团队的&lt;a href="http://engineer.baixing.com/265"&gt;blog&lt;/a&gt;，发现前端的很多东西实在太容易了。相当大的改变了我对编辑器的看法。随手用人家的代码做了个编辑器。真好用。&lt;/p&gt;
&lt;details class="comments"&gt;
&lt;summary class="comments-head"&gt;4 Comments&lt;/summary&gt;
&lt;div class="comment"&gt;yes&lt;div class="comment-meta"&gt;— yograj tiwari · 2012-10-02 17:18&lt;/div&gt;&lt;/div&gt;
&lt;div class="comment"&gt;Hi, I think your website might be having browser compatibility issues.&lt;br&gt;When I look at your blog site in Chrome, it looks fine but when opening &lt;br&gt;in Internet Explorer, it has some overlapping. I just wanted to give you a quick heads up!&lt;br&gt;Other then that, superb blog!&lt;div class="comment-meta"&gt;— Reggie · 2012-10-30 04:40&lt;/div&gt;&lt;/div&gt;
&lt;div class="comment"&gt;Just test&lt;div class="comment-meta"&gt;— Jack · 2012-09-09 17:09&lt;/div&gt;&lt;/div&gt;
&lt;div class="comment"&gt;Had been in actual fact searching for just an ordinary &lt;br&gt;shower enclosures before i found this web &lt;br&gt;site, wouldn&amp;#x27;t even know there were any such thing as a &amp;#x27;steam shower enclosure&amp;#x27;, incredible, might just have to have one&lt;br&gt;&lt;br&gt;my site :: steam shower whirlpool - Alberta -&lt;div class="comment-meta"&gt;— Alberta · 2014-06-14 00:12&lt;/div&gt;&lt;/div&gt;
&lt;/details&gt;</description></item><item><title>为什么百姓网开源？</title><link>https://home.wangjianshuo.com/cn/20120904_ccaeaeaeie.htm</link><pubDate>Tue, 04 Sep 2012 10:35:10 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20120904_ccaeaeaeie.htm</guid><description>&lt;p&gt;2012年9月6日，百姓网的第一批项目开源发布。其中包括前端的模版语言&lt;a href="http://github.com/baixing/jedi"&gt;Jedi&lt;/a&gt;（Hax的作品）和后端的数据访问层&lt;a href="http://graph.baixing.com"&gt;Baixing Graph API&lt;/a&gt;（小排作品）。这次发布是小范围的，仅仅是第一个尝试，以后每隔一段时间我们会把做出来的东西拿出来和大家分享。&lt;/p&gt;</description></item><item><title>Github vs SourceForge</title><link>https://home.wangjianshuo.com/cn/20120903_github_vs_sourceforge.htm</link><pubDate>Mon, 03 Sep 2012 12:43:44 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20120903_github_vs_sourceforge.htm</guid><description>&lt;p&gt;最近一直在用GitHub，再看一下SourceForge，对比一下。比如：&lt;/p&gt;
&lt;p&gt;比如这个项目：&lt;a href="https://github.com/mxcl/homebrew"&gt;https://github.com/mxcl/homebrew&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;再看看这个项目：&lt;a href="http://sourceforge.net/projects/clisp/"&gt;http://sourceforge.net/projects/clisp/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;感觉不一样吧？（不是比较两个项目，而是类似的项目放在不同的地方的感觉）&lt;/p&gt;</description></item><item><title>Solute to Hackers</title><link>https://home.wangjianshuo.com/cn/20120903_p874.htm</link><pubDate>Mon, 03 Sep 2012 11:27:31 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20120903_p874.htm</guid><description>&lt;p&gt;Look at this piece of code at the header of Hello Dolly plugin by Matt - maybe the first plugin of the WordPress system (you can always find this piece of code in any WordPress installation. Look for it in the /wp-content/plugins/ folder). Think about why the plugin has something to do with music! Think about why the description reads that way. What do you sense from a developer&amp;rsquo;s code?&lt;/p&gt;</description></item><item><title>一个建都的计划</title><link>https://home.wangjianshuo.com/cn/20120831_aeaeeece.htm</link><pubDate>Fri, 31 Aug 2012 15:13:16 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20120831_aeaeeece.htm</guid><description>&lt;p&gt;前天晚上我们打破了一个世界。面对我们自己给自己设置的边界，我摔了第一个盘子，大家都看到了，知道原来那些桌子架子上的碍着自己事儿的盘子是可以摔的。于是大家有跃跃欲试，准备跟着摔盘子。但问题是，不是摔了盘子就能解决问题的。我们重建的是什么，怎么重建？这是一个计划。&lt;/p&gt;</description></item><item><title>192行</title><link>https://home.wangjianshuo.com/cn/20120830_192e.htm</link><pubDate>Thu, 30 Aug 2012 12:09:28 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20120830_192e.htm</guid><description>&lt;p&gt;//wangjianshuo@baixing.com
namespace Graph;&lt;/p&gt;
&lt;p&gt;class CompanyAccount {
&amp;hellip;function occuredRevenue($startTime, $endTime) {
&amp;hellip;&amp;hellip;$money = 0;
&amp;hellip;&amp;hellip;
&amp;hellip;&amp;hellip;if($endTime &amp;gt; time())
&amp;hellip;&amp;hellip;&amp;hellip;throw new Exception(&amp;ldquo;Refuse to tell you future, because that may be inaccurate&amp;rdquo;);
&amp;hellip;&amp;hellip;
&amp;hellip;&amp;hellip;$s = new Searcher(
&amp;hellip;&amp;hellip;&amp;hellip;new AndQuery(
&amp;hellip;&amp;hellip;&amp;hellip;&amp;hellip;new Query(&amp;rsquo;type&amp;rsquo;, &amp;lsquo;Order&amp;rsquo;),
&amp;hellip;&amp;hellip;&amp;hellip;&amp;hellip;new Query(&amp;lsquo;paid&amp;rsquo;, 1),
&amp;hellip;&amp;hellip;&amp;hellip;&amp;hellip;new RangeQuery(&amp;lsquo;startTime&amp;rsquo;, null, $endTime),
&amp;hellip;&amp;hellip;&amp;hellip;&amp;hellip;new RangeQuery(&amp;rsquo;endTime&amp;rsquo;, $startTime - 1, null)
&amp;hellip;&amp;hellip;&amp;hellip;)
&amp;hellip;&amp;hellip;);
&amp;hellip;&amp;hellip;
&amp;hellip;&amp;hellip;foreach($s as $order)
&amp;hellip;&amp;hellip;&amp;hellip;$money += ($order-&amp;gt;occuredRevenue($endTime) - $order-&amp;gt;occuredRevenue($startTime));
&amp;hellip;&amp;hellip;&amp;hellip;
&amp;hellip;&amp;hellip;return $money;
&amp;hellip;}
}&lt;/p&gt;
&lt;p&gt;class UserAccount {
&amp;hellip;public $balance; // money + credit;
&amp;hellip;public $ratio; // money / balance;
&amp;hellip;
&amp;hellip;function in($money, $credit){
&amp;hellip;&amp;hellip;$this-&amp;gt;ratio = ($this-&amp;gt;balance * $this-&amp;gt;ratio + $money) / ($this-&amp;gt;balance + $money + $credit);
&amp;hellip;&amp;hellip;$this-&amp;gt;balance += $money + $credit;
&amp;hellip;&amp;hellip;$this-&amp;gt;save();
&amp;hellip;}
&amp;hellip;
&amp;hellip;function out($mondit) { //mondit = money + credit
&amp;hellip;&amp;hellip;$this-&amp;gt;balance -= $mondit;
&amp;hellip;&amp;hellip;$this-&amp;gt;save();
&amp;hellip;}
&amp;hellip;
&amp;hellip;function pay($order) {
&amp;hellip;&amp;hellip;$order-&amp;gt;pay($order-&amp;gt;listPrice * $this-&amp;gt;ratio);
&amp;hellip;&amp;hellip;$this-&amp;gt;out($order-&amp;gt;listPrice);
&amp;hellip;}
&amp;hellip;
&amp;hellip;function partialCancel($order, $time) {
&amp;hellip;&amp;hellip;$order-&amp;gt;particalCancel($time);
&amp;hellip;&amp;hellip;
&amp;hellip;&amp;hellip;$refund = $order-&amp;gt;price - $order-&amp;gt;occuredRevenue($time);
&amp;hellip;&amp;hellip;$ratio = $order-&amp;gt;price / $order-&amp;gt;listPrice;&lt;/p&gt;</description></item><item><title>一艘没有人有浆的船</title><link>https://home.wangjianshuo.com/cn/20120830_eaeaeaeccc.htm</link><pubDate>Thu, 30 Aug 2012 10:47:31 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20120830_eaeaeaeccc.htm</guid><description>&lt;p&gt;付费是我们众多代码泥潭的一个。5个工程师耗时半年，2万2千行代码，却bug不断，每天都有用户付了钱没置顶，对账对不清，退费消耗整个公司大量的精力，而我们的付费工程师还在抱怨业务过于复杂，对于新增的业务需求，没有人有信心完成。&lt;/p&gt;</description></item><item><title>写代码这件事</title><link>https://home.wangjianshuo.com/cn/20120827_aeceaeae.htm</link><pubDate>Mon, 27 Aug 2012 22:46:02 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20120827_aeceaeae.htm</guid><description>&lt;p&gt;晚上花了两个小时给丰兄和花花展示一次如何写代码，从第一个字符开始，用199行代码完成付费的如下功能：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;权责发生制的记帐&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;置顶的产生和显示逻辑&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;类目置顶，筛选置顶，全省置顶，全国置顶，区县置顶&lt;/p&gt;</description></item><item><title>看代码的愤怒</title><link>https://home.wangjianshuo.com/cn/20120821_caecc-2.htm</link><pubDate>Tue, 21 Aug 2012 21:15:40 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20120821_caecc-2.htm</guid><description>&lt;p&gt;刚才花时间看了些代码，怒了。&lt;/p&gt;
&lt;p&gt;程序员是思考的人，象画家和作家一样，不是码农，不是通过体力完成功能的人，绝不是！看代码和看书一样，是能感觉到写代码的人的思想。看一篇优美的散文和诗歌，跟看报纸上干巴的公关稿，感觉就是不一样，跟看帐本更不一样。&lt;/p&gt;</description></item><item><title>提正确的问题，用聪明的办法解决</title><link>https://home.wangjianshuo.com/cn/20120821_cceeiecece_.htm</link><pubDate>Tue, 21 Aug 2012 21:14:56 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20120821_cceeiecece_.htm</guid><description>&lt;p&gt;刚才我们一起过了一下付费，抱歉，我又非常气愤。气愤在于大家的智慧没有发挥，而在一个乱麻中间搅和，完全是在浪费生命。我期望百姓网的程序员都是Hacker，如下是我的期望：&lt;/p&gt;</description></item><item><title>Graph架构图</title><link>https://home.wangjianshuo.com/cn/20120821_graph_.htm</link><pubDate>Tue, 21 Aug 2012 21:13:24 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20120821_graph_.htm</guid><description>&lt;hr&gt;
&lt;h2 id="-----------------------url-routing-----------------------"&gt;| URL Routing |&lt;/h2&gt;
&lt;hr&gt;
&lt;h2 id="--------------------controller-routing-------------------"&gt;| Controller Routing |&lt;/h2&gt;
&lt;hr&gt;
&lt;h2 id="-----------------------controller------------------------"&gt;| Controller |&lt;/h2&gt;
&lt;hr&gt;
&lt;h2 id="---------------------view-dispatcher---------------------"&gt;| View Dispatcher |&lt;/h2&gt;
&lt;hr&gt;
&lt;p&gt;|View Ad| |Listing| |Homepage| |User| |Search| |Payment|
|View | |View | |View | |View| |View | |View |&lt;/p&gt;
&lt;hr&gt;
&lt;hr&gt;
&lt;h2 id="--------------------template-engine----------------------"&gt;| Template Engine |&lt;/h2&gt;
&lt;hr&gt;
&lt;h2 id="-------------------model-data-binding------------------"&gt;| Model (Data Binding) |&lt;/h2&gt;
&lt;hr&gt;
&lt;h2 id="------------------modelgraph-integration----------------"&gt;| Model/Graph Integration |&lt;/h2&gt;
&lt;hr&gt;
&lt;p&gt;| HTTP Transport | | PHP Transport | | Socket Transport |&lt;/p&gt;
&lt;hr&gt;
&lt;hr&gt;
&lt;h2 id="---------securityprettifierlimit-control---------------"&gt;| Security/Prettifier/Limit Control |&lt;/h2&gt;
&lt;hr&gt;
&lt;h2 id="----------------------graph--api-----------------------"&gt;| Graph () API |&lt;/h2&gt;
&lt;hr&gt;
&lt;h2 id="--------------------------node---------------------------"&gt;| Node |&lt;/h2&gt;
&lt;hr&gt;
&lt;h2 id="--------------------------edges--------------------------"&gt;| Edges |&lt;/h2&gt;
&lt;hr&gt;
&lt;p&gt;| ID | | Connections |&lt;/p&gt;</description></item><item><title>Baixing Graph API 0.2 发布</title><link>https://home.wangjianshuo.com/cn/20120821_baixing_graph_api_02_.htm</link><pubDate>Tue, 21 Aug 2012 21:05:40 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20120821_baixing_graph_api_02_.htm</guid><description>&lt;p&gt;各位Hacker们，&lt;/p&gt;
&lt;p&gt;今天乐高时间，我们将要发布一个还没有成型，但是可以初步展示我们要做的东西。大家可以自己先玩一玩。在给大家尝试的地址之前，我先说一下背景。&lt;/p&gt;</description></item><item><title>百姓网Graph API 9月6日全国公测</title><link>https://home.wangjianshuo.com/cn/20120821_ccgraph_api_96.htm</link><pubDate>Tue, 21 Aug 2012 21:04:40 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20120821_ccgraph_api_96.htm</guid><description>&lt;p&gt;工具组做了一个决定，在9月6日公开发布一系列产品和计划。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Baixing Graph API&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Graph数据访问工具集的开源代码&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Jedi模版语言以及开源代码&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;手机客户端天使投资计划&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;我们会根据成熟程度在9月1日决定是否邀请媒体。&lt;/p&gt;</description></item><item><title>Python的确是非常棒的语言</title><link>https://home.wangjianshuo.com/cn/20120818_pythonccecee.htm</link><pubDate>Sat, 18 Aug 2012 11:14:16 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20120818_pythonccecee.htm</guid><description>&lt;p&gt;早上6点半爬起来，花了几个小时学习Python。&lt;/p&gt;
&lt;p&gt;只能感慨我来晚了，晚了12年。在我在微软做工程师的时候就应该学习这种语言了。显然Python有很多优于PHP的地方，就像PHP对于写网站有太多因为“幼稚”而优于Java的地方。&lt;/p&gt;</description></item><item><title>我们不喜欢注释</title><link>https://home.wangjianshuo.com/cn/20100916_aeaee-3.htm</link><pubDate>Thu, 16 Sep 2010 23:20:34 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20100916_aeaee-3.htm</guid><description>&lt;p&gt;今天下午的乐高，讨论了代码规范中注释的部分。做为实用主义者，我们不喜欢过多的注释。“让代码的速度跟得上思考的速度”是我们一直提倡和追求的，也就是代码要写得入如注释般清晰，简洁，让人可以如读英文文章一样的读代码，而不是读注释。&lt;/p&gt;</description></item><item><title>如果我有时间，我会写更短的代码</title><link>https://home.wangjianshuo.com/cn/20100910_eieaeccaec.htm</link><pubDate>Fri, 10 Sep 2010 00:05:50 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20100910_eieaeccaec.htm</guid><description>&lt;p&gt;eBay的代码量已经比Windows+Linux更多了。从我看来，这绝不是一种恭维，而是彻彻底底的技术人员的失败。从代码的角度，越短的代码，就越有力量。&lt;/p&gt;</description></item><item><title>不做得最好的学问</title><link>https://home.wangjianshuo.com/cn/20100608_aece-3.htm</link><pubDate>Tue, 08 Jun 2010 16:41:13 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20100608_aece-3.htm</guid><description>&lt;p&gt;第一次思考这个问题是在微软顾问咨询部的时候。当时我们讨论的问题是：测试是不是做得越多越细越好。有经验的顾问分享，从高层次这是一个业务问题，而不仅仅是技术问题。按照火星探索车的测试要求测试普通自行车是可以的，但是这辆自行车可能没有客户买得起。这个讨论，&lt;a href="http://home.wangjianshuo.com/cn/20080221_eaee.htm"&gt;测试是不是应该太强&lt;/a&gt;涉及到。第一个问题是投入多少资源，第二个问题才是在这个框框下做得最好。&lt;/p&gt;</description></item><item><title>有朋自杭州来</title><link>https://home.wangjianshuo.com/cn/20100527_e-6.htm</link><pubDate>Thu, 27 May 2010 14:52:02 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20100527_e-6.htm</guid><description>&lt;p&gt;昨天DBANotes的冯大辉和Yupoo的刘平阳同学光临百姓网，同时还有张一宁，张二宁，霍炬，桑勇，以及很少露面的射手Player作者沈晟。我们和百姓网的所有技术人员做了一下午的技术交流。多谢大辉和平阳精彩演讲和各位的参与。&lt;/p&gt;</description></item><item><title>百姓网公开笔试题结果展示</title><link>https://home.wangjianshuo.com/cn/20100511_ccceecc.htm</link><pubDate>Tue, 11 May 2010 12:56:39 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20100511_ccceecc.htm</guid><description>&lt;p&gt;前几天出的一道笔试题《&lt;a href="http://home.wangjianshuo.com/cn/20100505_ccceeieeaece.htm"&gt;百姓网公开笔试题：查询条件的子集判断&lt;/a&gt;》，收到来自各地的很多解决方案，有C的，有C++的，有PHP的，还有Python的。我建议大家把自己的解答放在自己的blog上面，我这里给链接，大家移步到他们的blog上去看。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;赖勇浩：&lt;a href="http://blog.csdn.net/lanphaday/archive/2010/05/06/5565095.aspx"&gt;百姓网那道题&lt;/a&gt;（我是为了阅读这个代码开始学习Python的，的确简洁，清晰）&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Qmigh：&lt;a href="http://qmigh.blogspot.com/2010/05/blog500-querybuilderqueryandor-tyler.html"&gt;查询条件子集判断的解决思路&lt;/a&gt;（墙外）&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Season Lee：&lt;a href="http://www.cnblogs.com/SeasonLee/archive/2010/05/11/1731414.html"&gt;从离散数学到编译原理&amp;ndash;百姓网编程题后序&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Soulogic: &lt;a href="http://soulogic.com/blog/archives/400.html"&gt;《百姓网公开笔试题：查询条件的子集判断》的一份 PHP 答卷&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;在&lt;a href="http://home.wangjianshuo.com/cn/20100505_ccceeieeaece.htm"&gt;原文&lt;/a&gt;的评论中也有很多精辟的思路，大家可以借鉴。&lt;/p&gt;
&lt;p&gt;《程序员》杂志&lt;a href="http://blog.csdn.net/superyan"&gt;闫辉&lt;/a&gt;在邮件里问了这样一个问题：&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;你认为程序员的成就感来自哪几个方面？&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;这是我的回答&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;每个程序员都是不同的，他的成就感也是不同的。有的人看重纯技术的优秀 （以Linux平台上的C程序员为多），有的人看重结构的完整（以Java程序员为多），还有人看重对业务的贡献（我见到的微软系统 的比较多一些）。各种都有，而且程序的世界是一个广阔的世界，可以从汇编，到Python，从几个字节的纠结，到几个 Terabyte的推敲，里面成千上万的技术爱好者在里面乐此不疲。&lt;/p&gt;</description></item><item><title>百姓网公开笔试题：查询条件的子集判断</title><link>https://home.wangjianshuo.com/cn/20100505_ccceeieeaece.htm</link><pubDate>Wed, 05 May 2010 09:12:00 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20100505_ccceeieeaece.htm</guid><description>&lt;p&gt;这是发布在&lt;a href="http://blog.baixing.com"&gt;百姓网官方blog&lt;/a&gt;上的一道公开笔试题。转发到这里，我知道我的blog读者有很多优秀的程序员，还有我敬仰的一些技术大牛，热切希望能够得到你的来信，并且有机会一起解决一个又一个这样有趣的技术挑战。也欢迎转载，多谢！&lt;/p&gt;
&lt;p&gt;=====================================&lt;/p&gt;
&lt;p&gt;百姓网需要最聪明，最有潜力的技术牛人来帮助我们给世界惊奇。为了让我们互相找到的过程变得更加直接了当，我这里有一个公开的笔试题目。这是我们日常的工作中遇到的一个典型问题。如果你有答案，请直接寄到 geeks @ baixing.com而不需要使用 shhr @ baixing.com。&lt;/p&gt;</description></item><item><title>关于两个机房的讨论</title><link>https://home.wangjianshuo.com/cn/20100201_aeaeaecee.htm</link><pubDate>Mon, 01 Feb 2010 23:09:33 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20100201_aeaeaecee.htm</guid><description>&lt;p&gt;如何最大限度的提升中国的网站速度，今天发信给我信任的朋友们，老冒回复如下：&lt;a href="http://robertmao.com/2010/02/01/internet/"&gt;我朝Internet南北不畅通的解决方案（老旧方案）&lt;/a&gt;（需要翻墙。可以在Google Reader里面订阅http://robertmao.com/feeds/latest/访问）。很多要点老冒几乎都提到了，我在此列出我的一些问题和思考，共有用样需求的各位讨论。&lt;/p&gt;</description></item><item><title>百姓网研发部门诚聘大二、大三实习生</title><link>https://home.wangjianshuo.com/cn/20090424_ccceeeeaeaaeaec.htm</link><pubDate>Fri, 24 Apr 2009 13:16:34 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20090424_ccceeeeaeaaeaec.htm</guid><description>&lt;p&gt;转自：&lt;a href="http://shanghai.baixing.com/jisuanji/a33228056.html"&gt;http://shanghai.baixing.com/jisuanji/a33228056.html&lt;/a&gt;和&lt;a href="http://adolfpan.spaces.live.com/Blog/cns!D7CFB8290E47E741!1881.entry?wa=wsignin1.0&amp;amp;sa=916020989"&gt;晓良博客&lt;/a&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;百姓网是做什么的？
百姓网（http://www.baixing.com）是互联网巨头EBAY旗下的个人生活信息网站，是个人房源、个人闲置物品转让、拼车、技能交换、物品交换、招工等各类生活信息的集散地。百姓网的研发人员一半以上都是从实习生开始，在实践中快速成长，成为现在的技术骨干，整个团队年轻而充满激情，卓越而互相帮助，而我们现在又开始敞开臂膀，欢迎有志于在互联网开发方向发展的同学们加入我们。&lt;/p&gt;</description></item><item><title>便宜的Amazon</title><link>https://home.wangjianshuo.com/cn/20090306_aecamazon.htm</link><pubDate>Fri, 06 Mar 2009 20:59:08 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20090306_aecamazon.htm</guid><description>&lt;p&gt;在&lt;a href="http://aws.amazon.com/"&gt;Amazon Web Services&lt;/a&gt; (AWS)中，我用的最多的是两个&lt;a href="http://aws.amazon.com/s3/"&gt;S3&lt;/a&gt;和&lt;a href="http://aws.amazon.com/ec2"&gt;EC2&lt;/a&gt;。两个都相当的便宜。昨天在杭州，我强烈推荐&lt;a href="http://inezha.com"&gt;哪吒&lt;/a&gt;把它用于备份和实验环境搭建。&lt;/p&gt;
&lt;p&gt;我把自己硬盘上面40G的个人数据中的部分备份到S3服务上去，每天晚上&lt;a href="http://s3sync.net/wiki"&gt;S3sync&lt;/a&gt;增量备份。存储15美分每G每月，传输10美分每G，用到现在还不错，只不过几块钱一个月就搞定。很便宜。&lt;/p&gt;
&lt;p&gt;还有EC2也不错，给自己弄几台Windows Server的机器，12美分每小时，可以用微软的Terminal Client远程登录过去，自己是管理员，和自己多了几台电脑一模一样。睡觉前关机，就不花钱。上个月我才花了不到一美元。很爽。&lt;/p&gt;</description></item><item><title>在Blog上面集成Facebook Connect</title><link>https://home.wangjianshuo.com/cn/20081212_blogaeeefacebook_connect.htm</link><pubDate>Fri, 12 Dec 2008 21:15:06 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20081212_blogaeeefacebook_connect.htm</guid><description>&lt;p&gt;刚刚把&lt;a href="http://developers.facebook.com/news.php?blog=1&amp;amp;story=108"&gt;Facebook Connect&lt;/a&gt;在我的&lt;a href="http://home.wangjianshuo.com/cn"&gt;中文&lt;/a&gt;和&lt;a href="http://home.wangjianshuo.com"&gt;英文&lt;/a&gt;的blog上面实施了一下。这样子，如果你有Facebook的账号，你就可以直接点那个Facebook的按钮，你的Facebook的信息，就自动填在评论的表单里面，你的评论旁边就有了你在Facebook的头像，而且接下来，我还可以让在这里的评论自动发表在Facebook里面，可以让别人看到。&lt;/p&gt;
&lt;p&gt;做这些事情还是需要一点简单的JavaScript的编程。我有两个惊讶的事情：第一，Facebook的编程模型的确诡异，几乎所有的函数调用都接受一个回调函数作为最后一个参数，函数执行不是以返回结束，而是通过调用回调函数结束，这样就出现了迷宫一样的一个函数潜逃一个函数的状况，以及结束时候多达10个的右花括号或者右括号。第二，Facebook如何在一个Blog站点上面集成这样一个通用的应用，居然在他们的网站上面没有例子。如下的几行代码，倒还真是让我花费了一段时间，直搞得我眼花缭乱，耗时2个小时才搞定。所以想我应该把过程记录下来，以便其他blogger可以借用，同时也显摆一下，说明Hello World级别的编程，我还是可以的。&lt;/p&gt;</description></item><item><title>测试是不是应该太强</title><link>https://home.wangjianshuo.com/cn/20080221_eaee.htm</link><pubDate>Thu, 21 Feb 2008 22:20:52 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20080221_eaee.htm</guid><description>&lt;p&gt;昨天下午到旁边一幢楼微软Live研发中心去，和以&lt;a href="http://home.wangjianshuo.com/mvm"&gt;mvm&lt;/a&gt;聊测试（他的办公室里面放着从印度带回来的沉重的板球拍）。聊过以后，发现现在微软的测试做的那叫一个到位。大量的测试人员，每天跑上万个测试案例，而且都是代码自动完成，人一群一群的，测试机一排一排的。。。&lt;/p&gt;
&lt;p&gt;这倒是和上周三和&lt;a href="http://home.wangjianshuo.com/cn/20080213_cceeae.htm"&gt;阳萌聊到的Google&lt;/a&gt;的感觉截然相反。Google好像还是直接扔到服务器上去跑的居多，就像早期的微软一样。&lt;/p&gt;
&lt;p&gt;嘿嘿。这真有趣了。&lt;/p&gt;
&lt;p&gt;微软早期一直是以不重视测试出名的，比起70年代到80年代的DEC，IBM来说，微软几乎就是不做测试的。微软里面开发和测试的比例，也是和IBM合作了以后才从10比1提高到n比一，n&amp;lt;5。&lt;/p&gt;</description></item><item><title>看看这个机柜</title><link>https://home.wangjianshuo.com/cn/20070909_cceae.htm</link><pubDate>Sun, 09 Sep 2007 16:04:44 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20070909_cceae.htm</guid><description>&lt;p&gt;这东西是8年前的一个机柜。&lt;/p&gt;
&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2007/09/09/DSC_0245.JPG?imgmax=512" fetchpriority="high" /&gt;
&lt;/p&gt;
&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2007/09/09/DSC_0279.JPG?imgmax=512" /&gt;
&lt;/p&gt;
&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2007/09/09/DSC_0278.JPG?imgmax=512" /&gt;
&lt;/p&gt;
&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2007/09/09/DSC_0277.JPG?imgmax=512" /&gt;
&lt;/p&gt;
&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2007/09/09/DSC_0274.JPG?imgmax=512" /&gt;
&lt;/p&gt;
&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2007/09/09/DSC_0271.JPG?imgmax=512" /&gt;
&lt;/p&gt;
&lt;p&gt;下面的照片里面，绿色和白色相间的一条是reset的线，连着一个按钮，一条是普通PC的硬盘灯。四个这样按钮和灯用四个螺丝钉直接固定在一个硬纸板上面。&lt;/p&gt;</description></item><item><title>计算机的老古董</title><link>https://home.wangjianshuo.com/cn/20070826_eccee.htm</link><pubDate>Sun, 26 Aug 2007 22:42:53 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20070826_eccee.htm</guid><description>&lt;p&gt;前几天随便写写关于&lt;a href="http://home.wangjianshuo.com/cn/20070822_aeceedvdieecdcie.htm"&gt;你的软驱是DVD，还是CD的？&lt;/a&gt;，发现软驱这个东东已经&lt;strong&gt;几乎&lt;/strong&gt;退出历史舞台了（之所以用了几乎这个词，是希望我的Dell笔记本的软驱还有人要）。看到大家的评论，就勾起我晒一晒我用过的更古老的存储设备的欲望。&lt;/p&gt;
&lt;p&gt;最初接触计算机应该在80年代中，就是刚上小学的时候。那个时候的计算站还是纸带的存储设备，黑黑的，很厚实的那种，上面打着一个一个孔。看起来存储设备和现在一个纺织厂的设备类似。而那个时代的计算机主机还和冰箱似的，进计算站不需要沐浴，但一定要更衣，穿白大褂进去。那个时候我什么都不懂，就知道打些警察抓小偷的游戏 - 好似那种红白机上的2维的，警察追，自己控制做些小偷上梯子，下梯子，拿金子，挖洞陷害警察这样的勾当。（凭着记忆，大三的时候总算写了一个一样的，非常满足）。&lt;/p&gt;</description></item><item><title>Technical Ability is the Execution Ability</title><link>https://home.wangjianshuo.com/cn/20070629_p227.htm</link><pubDate>Fri, 29 Jun 2007 11:53:49 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20070629_p227.htm</guid><description>&lt;p&gt;Mao, your advice about dive into details of technology as a CEO of technical background helped me a lot – remember our chat on Skype during May holiday?&lt;/p&gt;
&lt;p&gt;In the last two months, this is what I did:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;pre&gt;&lt;code&gt; I started two week full-time train program to cover http://home.wangjianshuo.com/cn/20070623_ece.htm
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;pre&gt;&lt;code&gt; I organized rewrite of the Kijiji Code. The end result of the training program is, everyone rewrite Kijiji from nothing to completion within 1 hour. Every passes, with the top record at 41 minutes (including all the major features of Kijiji)
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;pre&gt;&lt;code&gt; I also asked people to use OO to re-architect the whole site so the current lines of code of Kijiji shifted from 10,000 to less than 1,000.
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;pre&gt;&lt;code&gt; We also created a framework very similar like ASP.NET (with Control, Text, Input, DataGrid…), control/field lever permission, Event, Queue…
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;pre&gt;&lt;code&gt; We deployed memcached – a distributed memory cache of virtual 3G on 6 machines, and now the database is always “write-only”. 95% of read was done directly from memory – much faster web site.
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;pre&gt;&lt;code&gt; The current product team is capable to deliver every feature within 2 days, and has a weekly release. Look at these versions: Look at these: http://shanghai.staging.kijiji.cn/index.txt http://shanghai.staging.kijiji.cn/c2101005-d21?&amp;amp;view=picture
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;I was not able to response your Skype message yesterday, and want to let you know what happened here. How about your recently? Where are you? I mean physically?&lt;/p&gt;</description></item><item><title>互联网应用平台的关口</title><link>https://home.wangjianshuo.com/cn/20070627_aeeccc.htm</link><pubDate>Wed, 27 Jun 2007 01:08:14 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20070627_aeeccc.htm</guid><description>&lt;p&gt;我们现在的编程工具就处在一个&lt;strong&gt;关口&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;在这关口之前的二十年里，竖立着一个成功的编程工具：&lt;a href="http://msdn2.microsoft.com/en-us/vstudio/default.aspx"&gt;Microsoft Visual Studio&lt;/a&gt;（以及它的最初原型 - Visual Basic）。这个可视的集成化的编程工具把一代的程序员吸引到这个平台上面并且帮助微软确立了PC机世界的霸主地位。&lt;/p&gt;</description></item><item><title>技术培训纲要</title><link>https://home.wangjianshuo.com/cn/20070623_ece-2.htm</link><pubDate>Sat, 23 Jun 2007 14:08:09 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20070623_ece-2.htm</guid><description>&lt;p&gt;粗略的记录一下上一个月的技术培训纲要，以免过几年自己忘了。&lt;/p&gt;
&lt;p&gt;本文档面向的读者：仅仅我自己。&lt;/p&gt;
&lt;p&gt;技术的世界：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;代码基础层，就是PHP基础，面向对象基础&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;数据层，就是封装数据访问对象，数据访问对象层等&lt;/p&gt;</description></item><item><title>为什么HTML里的Comment是&lt;!--开头？</title><link>https://home.wangjianshuo.com/cn/20070526_aeaeaehtmleccommentie.htm</link><pubDate>Sat, 26 May 2007 13:01:35 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20070526_aeaeaehtmleccommentie.htm</guid><description>&lt;p&gt;最近做了两周的产品组培训，让自己对于技术的兴趣又重新燃起。我觉得一个好的技术人员要至少做到两点：开放（或者说有好奇心）和深入（或者是打破沙锅问到底）。在准备下周的UI训练营之前，我简单的看了一些HTML代码，发现还有很多以前忽略的东西。比如我问的这个很白痴的问题：&lt;/p&gt;</description></item><item><title>编译后的JavaScript好比汇编语言</title><link>https://home.wangjianshuo.com/cn/20070516_p212.htm</link><pubDate>Wed, 16 May 2007 00:13:37 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20070516_p212.htm</guid><description>&lt;p&gt;blockquote{color: #007000; font-family: &amp;ldquo;bogus font here&amp;rdquo;, monospace;font-size: 100%; border: 1px solid silver; background-color: #f5f5f5;padding: 0.5em; overflow: auto; margin: 2em;}
&lt;em&gt;本文是《&lt;a href="http://home.wangjianshuo.com/cn/20070514_googleloader_aece.htm"&gt;google.loader 代码欣赏&lt;/a&gt;》系列的一部分。&lt;/em&gt;&lt;/p&gt;</description></item><item><title>Symbol表的启发</title><link>https://home.wangjianshuo.com/cn/20070516_symbolec.htm</link><pubDate>Wed, 16 May 2007 00:12:54 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20070516_symbolec.htm</guid><description>&lt;p&gt;blockquote{color: #007000; font-family: &amp;ldquo;bogus font here&amp;rdquo;, monospace;font-size: 100%; border: 1px solid silver; background-color: #f5f5f5;padding: 0.5em; overflow: auto; margin: 2em;}
&lt;em&gt;本文是《&lt;a href="http://home.wangjianshuo.com/cn/20070514_googleloader_aece.htm"&gt;google.loader 代码欣赏&lt;/a&gt;》系列的一部分。&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;这段代码原本是非常好读懂的，但是当所有的函数名和变量名都用小写的a到z之间的一个字母代替以后，就变得不好读起来，尤其是这段令人抓狂的代码，&lt;/p&gt;</description></item><item><title>用匿名函数避免命名冲突</title><link>https://home.wangjianshuo.com/cn/20070515_cec.htm</link><pubDate>Tue, 15 May 2007 00:04:44 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20070515_cec.htm</guid><description>&lt;p&gt;blockquote{color: #007000; font-family: &amp;ldquo;bogus font here&amp;rdquo;, monospace;font-size: 100%; border: 1px solid silver; background-color: #f5f5f5;padding: 0.5em; overflow: auto; margin: 2em;}
&lt;em&gt;本文是&lt;a href="http://home.wangjianshuo.com/cn/20070514_googleloader_aece.htm"&gt;google.loader 代码欣赏&lt;/a&gt;系列的第二部分。&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;第一个匪夷所思的地方，可能就是这一段了&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;if (!google.loader) {
google.loader = {};
google.loader.ServiceBase = &amp;ldquo;&lt;a href="http://www.google.com/uds%22;"&gt;http://www.google.com/uds&amp;quot;;&lt;/a&gt;
google.loader.ApiKey = &amp;ldquo;internal&amp;rdquo;;
google.loader.KeyVerified = true;
google.loader.LoadFailure = false;
google.loader.AdditionalParams = &amp;ldquo;&amp;rdquo;;
** (function() { **
//大量的函数定义，变量声明以及函数的执行（整整100多行）
** })()**
}&lt;/p&gt;</description></item><item><title>google.loader 代码欣赏</title><link>https://home.wangjianshuo.com/cn/20070514_googleloader_aece.htm</link><pubDate>Mon, 14 May 2007 23:19:46 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20070514_googleloader_aece.htm</guid><description>&lt;p&gt;blockquote{color: #007000; font-family: &amp;ldquo;bogus font here&amp;rdquo;, monospace;font-size: 100%; border: 1px solid silver; background-color: #f5f5f5;padding: 0.5em; overflow: auto; margin: 2em;}&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;缘起&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;五一期间和老冒聊天，其中就提起来保持技术的敏感性是聊起技术型CEO的优势，也是一直需要不断努力充电的。很受启发，所以就顺手拿起一段Google的Javascript，欣赏一番。&lt;/p&gt;</description></item><item><title>客齐集桌面包</title><link>https://home.wangjianshuo.com/cn/20070501_eee.htm</link><pubDate>Tue, 01 May 2007 23:19:29 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20070501_eee.htm</guid><description>&lt;p&gt;庆祝五一劳动节！劳动人民出身的我在家里闲着，就自己动手写了一个客齐集桌面包，只要把这个HTML文件存在自己的桌面上，就可以访问客齐集最新的上海的帖子了。&lt;/p&gt;</description></item><item><title>为什么没有我要的插座？</title><link>https://home.wangjianshuo.com/cn/20070318_aeaeaeecie.htm</link><pubDate>Sun, 18 Mar 2007 22:58:16 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20070318_aeaeaeecie.htm</guid><description>&lt;p&gt;我想不通一件事情，为什么到现在还没有我想要的插座：&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;一个USB控制的电源插座，它可以用这样的语句来从电脑控制开和关：&lt;/p&gt;
&lt;p&gt;Set objLamp = CreateObject(&amp;ldquo;Plug.Lamp&amp;rdquo;)
objLamp.On = True&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;更多的带芯片的电器不够，还要能互相连接的&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>一个2000年的难题（续）</title><link>https://home.wangjianshuo.com/cn/20070313__aeae2000ceeiecie.htm</link><pubDate>Tue, 13 Mar 2007 00:03:38 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20070313__aeae2000ceeiecie.htm</guid><description>&lt;p&gt;关于《&lt;a href="http://home.wangjianshuo.com/cn/20070309_aeae2000cee.htm"&gt;一个2000年的难题&lt;/a&gt;》我当时的做法不像&lt;a href="http://home.wangjianshuo.com/cn/20070309_aeae2000cee.htm#0303"&gt;Erning&lt;/a&gt;那样隐蔽，不过思路是一样的。就是&lt;/p&gt;
&lt;img src="http://msweb/img/logo.jpg" onload="this.location='/page4everyone.htm'" width=1 height=1&gt;
&lt;p&gt;http://msweb/img/logo.jpg 是内部网络的一幅图片，
/page4everyone.htm是给其他人看到的主页。&lt;/p&gt;
&lt;p&gt;而这个页面的正文是很正常的一些文字。原理就是，只有微软内部的人才能访问到那个图片，而不在微软里的人，会在一段时间的停顿以后，自动跳转。&lt;/p&gt;</description></item><item><title>一个2000年的难题</title><link>https://home.wangjianshuo.com/cn/20070309_aeae2000cee.htm</link><pubDate>Fri, 09 Mar 2007 23:26:19 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20070309_aeae2000cee.htm</guid><description>&lt;p&gt;2000年的时候，我刚刚注册了wangjianshuo.com。感谢王超群同学的帮助，给我提供了一个免费的服务器，不过这个服务器上面只能存放纯静态HTML的文件，没有任何的PHP，CGI这些东西的支持，不过我已经知足了，用FrontPage发布上去就好了（我曾经负责过FrontPage这个产品的支持）。&lt;/p&gt;</description></item><item><title>协同推荐在控制信息质量上的应用</title><link>https://home.wangjianshuo.com/cn/20061230_eaeeeaecc.htm</link><pubDate>Sat, 30 Dec 2006 21:54:49 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20061230_eaeeeaecc.htm</guid><description>&lt;p&gt;抓贴一下在Ideafactorychina里面的一些关于协同推荐的讨论。&lt;/p&gt;
&lt;p&gt;王建硕：&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;最近在社区里面尝试了协同推荐的应用，通过&amp;quot;群众的智慧&amp;quot;来促进信息质量，初步成效不错，和大家分享。&lt;/p&gt;</description></item><item><title>交大小胖蛋饼网</title><link>https://home.wangjianshuo.com/cn/20060411_aeeeec.htm</link><pubDate>Tue, 11 Apr 2006 21:30:38 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20060411_aeeeec.htm</guid><description>&lt;p&gt;在&lt;a href="http://spaces.msn.com/dingyi"&gt;韩定一&lt;/a&gt;的&lt;a href="http://spaces.msn.com/dingyi/Blog/cns!CAD312C4612FB58F!788.entry"&gt;一篇文章&lt;/a&gt;看到这个叫做&lt;a href="http://danbing.hiahia.net/"&gt;小胖蛋饼网&lt;/a&gt;的网站。看得我乐了一阵又一阵。&lt;/p&gt;
&lt;p&gt;&lt;img src="https://img.wangjianshuo.com/cn/2006/04/11/126928601_2884e65e94.jpg" fetchpriority="high" /&gt;
&lt;/p&gt;
&lt;p&gt;屏幕拷贝来自&lt;a href="http://danbing.hiahia.net/"&gt;小胖蛋饼网&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;你看：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;慎重点击,一旦购买,概不反悔&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;【请网友自觉尊重我们的劳动,鄙视欺骗性订购!】&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;4.5,南区正式开始营业夜宵档!4.7东1区开始中午盖浇饭!&lt;/p&gt;</description></item><item><title>AJAX - 老酒有了新瓶子</title><link>https://home.wangjianshuo.com/cn/20050616_ajax_eeaec.htm</link><pubDate>Thu, 16 Jun 2005 03:38:17 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20050616_ajax_eeaec.htm</guid><description>&lt;p&gt;为了在客齐集上面改一个小东西，晚上忽然突发奇想，作了点尝试，花了大约1个小时的时间，写了点号称是AJAX的东东。简单的来说，就是让任何人可以在我的页面上帮我加批注。尝试一下拿鼠标选中一段文字（最好是一小段）看看。如果不出意外的话，应该有红色的下划线的标注，如果重新刷新一下页面的话，应该还在。为了让界面不是太乱，所以只保留了最新的几个批注。之前的先不显示了。&lt;/p&gt;</description></item><item><title>易用性的三条原则</title><link>https://home.wangjianshuo.com/cn/20050612_ccae.htm</link><pubDate>Sun, 12 Jun 2005 19:20:11 +0800</pubDate><guid>https://home.wangjianshuo.com/cn/20050612_ccae.htm</guid><description>&lt;p&gt;第一次走到新的办公室门口，习惯的去推那扇巨大玻璃门，同时脚步并没有放慢下来。&lt;/p&gt;
&lt;p&gt;结果。。。&lt;/p&gt;
&lt;p&gt;“哐”的一声巨响，我差点整个身子就撞了上去，鼻子已经贴到了玻璃上。原来，这扇门是只能拉，而不能推的。&lt;/p&gt;</description></item></channel></rss>