人工智能 李开复谈AI如何重塑个人 商业与社会的未来图谱 读书笔记

  1. 为什么投资人不喜欢人型机器人?越像人,人类越把它和人做比较,结果技术的不足越容易体现,在"缺点放大镜"下,它就变的非常愚蠢. 反而那些带有人工智能的家电, 能得到人的长期接受. --- 人的类比心理?
  2. 如何定义人工智能? 智慧大于18岁成人? 还是某些特定方面比人类聪明?
  3. 人类是怎么思考的? 人工智能又是怎么思考的? 如果结果是对的, 又何必拘泥于方式? 飞机并非最后仿照鸟拍翅膀.
  4. 人类: 认识 -> 研究 -> 推理. 机器: 学习 -> 分类, 归纳, 总结 -> 推理, 人类纠偏.

chrome extension: Run Your JavaScript

Run Your JavaScript is a chrome extension, with it you can build your chrome extension features.

what's it?
it is a chrome extension to run your own Javascript with extension's advantages.

why use it?

  1. it can simplify your development. Normally you access third party APIs in your web server by given user name or token, and your web page call your web server API, but with this extension, you can call third party APIs on chrome, like web page access them, no need extra user name & token, just login on third party web page;
  2. use chrome proxy automatically, especially with 2FA authentication proxy.
  3. Access 3rd party API without Cross-Origin Resource Sharing issue.

how use it?
write your Javascript and put it on your web server, then put the Javascript link in this extention, and give it a name, then you can expect it to run.

is it safe?
Yes, it is absolutely safe, you can view all the source code on github;

source code:
https://github.com/manecocomph/RunYourJavaScript

find it in chrome store: https://chrome.google.com/webstore/detail/run-your-javascript/aiokpplkfhfbijcmbpgpbomigegncfab

算法图解 笔记

  1. 大O表示法都是指的 log₂ 对数O(1)或O(N)或O(log₂N),最糟情况用的次数, 大O符号:是用于描述函数渐近行为的数学符号;
  2. 二分查找 有序的列表
  3. 数组和链表 对比 增删改查
  4. while 循环可能更快,但是递归更易读,递归使栈更深;

JVM GC 实现分类

  1. serial: 单线程 既可以年轻代 (标记复制)也可以老年代(标记清除整理);
  2. ParNew: 年轻代, 多线程版本的serial, 与 CMS 搭配使用,强交互,适合互联网应用;
  3. Parallel Scavenge: 年轻代,多线程,强调高吞吐量-通过改变年轻代大小实现, 根据参数自适应策略;
  4. ParOld: 老年代,多线程,标记整理,与 PS 搭配使用,强调高吞吐量
  5. CMS: 老年代,多线程,大多数时间与应用线程同时运行,除非并发失效,强调强交互,与 ParNew 搭配
    -- 初始标记 CMS initial mark - stop the world
    -- 并发标记 CMS concurrent mark
    -- 重新标记 CMS remark - stop the world
    -- 并发清除 CMS concurrent sweep
    浮动垃圾 和 并发失效 (内存不够) -> serial old 和 垃圾碎片
    设置的 CMSInitiatingOccupancyFraction 的大小和次数的 tradeoff
  6. G1: 多线程,既年轻代,又老年代,适合大于大内存,分 region;
    -- 可预测的停顿时间模型
    -- 回收价值列表 - 优先级

tcpdump 命令

tcpdump - dump traffic on a network

tcpdump [ -AbdDefhHIJKlLnNOpqStuUvxX# ] [ -B buffer_size ]

  • -w 写入文件
  • -r 从文件读入 -F 读入的文件
  • -V 从一批文件读入
  • -c 处理多少 package
  • -D or --list-interfaces 列出接口列表
  • -i --interface= 制定接口
  • -K --dont-verify-checksums 不验证 checksum 加快速度
  • -n 不转换数字为地址
  • -Q --direction=in|out|inout

samples here