期权记-ETF期权开户导航 期权记是专业的50ETF300ETF期权开户投资交易导航

贝叶斯推断及其互联网应用(二):过滤垃圾邮件

上一次,我介绍了贝叶斯推断的原理,今天讲如何将它用于垃圾邮件过滤。 ======================================== 贝叶斯推断及其互联网应用 作者:期权记 (接上文) 七、什么是贝叶斯过滤器? 垃圾邮件是一种令人头痛的顽症,困扰着所
作者:期权小韭菜 分类:网络日志 浏览:

贝叶斯推断及其互联网应用(一):定理简介

一年前的这个时候,我正在翻译Paul Graham的《黑客与画家》。 那本书的第八章,写了一个非常具体的技术问题----如何使用贝叶斯推断过滤垃圾邮件(英文版)。 我没完全看懂那一章。当时是硬着头皮,按照字面意思把它译出来的。虽然译文质
作者:期权小韭菜 分类:网络日志 浏览:

相似图片搜索的原理

上个月,Google把"相似图片搜索"正式放上了首页。 你可以用一张图片,搜索互联网上所有与它相似的图片。点击搜索框中照相机的图标。 一个对话框会出现。 你输入网片的网址,或者直接上传图片,Google就会找出与其相似的图片。下面这张图
作者:期权小韭菜 分类:网络日志 浏览:

数学常数e的含义

1. e是一个重要的常数,但是我一直不知道,它的真正含义是什么。 它不像π。大家都知道,π代表了圆的周长与直径之比3.14159,可是如果我问你,e代表了什么。你能回答吗? 维基百科说: "e是自然对数的底数。" 但是,你去看"自然对数",
作者:期权小韭菜 分类:网络日志 浏览:

关于圆的定义

昨天,我读到一篇文章,很赞同它的观点。 作者举了一个圆的例子,来说明这一点。 圆形可能是人类最先认识的形状。我们从直观的体验,就可以马上说出,什么是圆的。比如,苹果是圆的,轮子是圆的,太阳是圆的,等等。 但是,如果要从学术
作者:期权小韭菜 分类:网络日志 浏览:

git cherry-pick 教程

对于多分支的代码库,将代码从一个分支转移到另一个分支是常见需求。 这时分两种情况。一种情况是,你需要另一个分支的所有代码变动,那么就采用合并(git merge)。另一种情况是,你只需要部分代码变动(某几个提交),这时可以采用 Che
作者:期权小韭菜 分类:网络日志 浏览:

陶哲轩的数学题

据说,陶哲轩(Terrence Tao)是40岁以下最聪明的美国科学家。 他最近在Blog(此链接被屏蔽)上出了一道数学题,翻译如下: 第三个问题,我根本不懂,就不考虑了。 前两个问题,我一开始用直觉判断,后来发现想不清楚,只好老老实实拿出
作者:期权小韭菜 分类:网络日志 浏览:

《Bash 脚本教程》发布了

过去三个月,我一直在写《Bash 脚本教程》,现在终于写完了。 Bash 是 Linux 和 Mac 的默认 Shell(命令行环境),系统管理和服务器开发都需要它。虽然不难,但是语法很怪异,比如计算字符串的长度要写成${#varname},根本记不住,需要查
作者:期权小韭菜 分类:网络日志 浏览:

RDF 和 SPARQL 初探:以维基数据为例

维基百科有一个姐妹项目,叫做"维基数据"(Wikidata)。你可以从维基百科左侧边栏点进去。 "维基数据"将维基百科的所有数据,整理成一个可以机器处理的数据库,方便查询。比如,山西省人口最多的地区是哪一个? 这种问题在维基百科查询,
作者:期权小韭菜 分类:网络日志 浏览:

FFmpeg 视频处理入门教程

FFmpeg 是视频处理最常用的开源软件。 它功能强大,用途广泛,大量用于视频网站和商业软件(比如 Youtube 和 iTunes),也是许多音频和视频格式的标准编码/解码实现。 FFmpeg 本身是一个庞大的项目,包含许多组件和库文件,最常用的是它
作者:期权小韭菜 分类:网络日志 浏览:

Bash 脚本如何创建临时文件:mktemp 命令和 trap 命令教程

有时,Bash 脚本需要创建临时文件或临时目录。 常见的做法是,自己在/tmp目录里面生成一个文件,这样做有很多弊端。本文介绍如何安全地处理临时文件。 一、临时文件的安全问题 直接创建临时文件,尤其在/tmp目录里面,往往会导致安全问题
作者:期权小韭菜 分类:网络日志 浏览:

如何撤销 Git 操作?

Git 版本管理时,往往需要撤销某些操作。 本文介绍几种最主要的情况,给出详细的解释。更多的命令可以参考《常用 Git 命令清单》一文。 一、撤销提交 一种常见的场景是,提交代码以后,你突然意识到这个提交有问题,应该撤销掉,这时执行
作者:期权小韭菜 分类:网络日志 浏览:

GitHub Actions 教程:定时发送天气邮件

2019年11月,GitHub 正式开放了 GitHub Actions 这个功能,现在不用申请就能使用。 GitHub Actions 是一个 CI/CD(持续集成/持续部署)工具,但也可用作代码运行环境。功能非常强大,能够玩出许多花样。 我写的《GitHub Actions 入门教程
作者:期权小韭菜 分类:网络日志 浏览:

H5 手机 App 开发入门:技术篇

新人学习手机 App 开发,一开始总要选择一条学习路径。 如果你熟悉 Java 语言,可以学习安卓开发;如果熟悉脚本语言(比如 Python 或 Ruby),可以学习 Swift 语言,进行 iOS 开发;如果像我一样,比较熟悉 Web 网页技术,那么 H5 开发是
作者:期权小韭菜 分类:网络日志 浏览:

H5 手机 App 开发入门:概念篇

手机现在是互联网的最大入口。根据《中国互联网报告》,手机网民已经超过8亿,人均每天上网三个多小时。 毫不奇怪,手机应用软件(mobile application,简称 mobile App)的开发工程师供不应求,一直是 IT 招聘的热门。 如果你开始学习手
作者:期权小韭菜 分类:网络日志 浏览:

如何识别文件的真假

每个人都下载文件,大家有没有想过,文件可能是假的,尤其来自网盘或专门的下载站。 本文就来谈谈如何识别文件的真假。 一、XcodeGhost 事件 我们从一件真实的事件说起。 2015年9月,苹果手机的一些 App 被发现向可疑网站发送数据。进一
作者:期权小韭菜 分类:网络日志 浏览:

Python 异步编程入门

本文是写给 JavaScript 程序员的 Python 教程。 Python 的异步编程,其他人可能觉得很难,但是 JavaScript 程序员应该特别容易理解,因为两者的概念和语法类似。JavaScript 的异步模型更简单直观,很适合作为学习 Python 异步的基础。 本
作者:期权小韭菜 分类:网络日志 浏览:

CSS 定位详解

CSS 有两个最重要的基本属性,前端开发必须掌握:display 和 position。 display属性指定网页的布局。两个重要的布局,我已经介绍过了:弹性布局flex和网格布局grid。 本文介绍非常有用的position属性。我希望通过10分钟的阅读,帮助大家
作者:期权小韭菜 分类:网络日志 浏览:

Tmux 使用教程

Tmux 是一个终端复用器(terminal multiplexer),非常有用,属于常用的开发工具。 本文介绍如何使用 Tmux。 一、Tmux 是什么? 1.1 会话与进程 命令行的典型使用方式是,打开一个终端窗口(terminal window,以下简称"窗口"),在里面输
作者:期权小韭菜 分类:网络日志 浏览:

GitHub Actions 入门教程

GitHub Actions 是 GitHub 的持续集成服务,于2018年10月推出。 这些天,我一直在试用,觉得它非常强大,有创意,比 Travis CI 玩法更多。 本文是一个简单教程,演示如何使用 GitHub Actions 自动发布一个 React 应用到 GitHub Pages。
作者:期权小韭菜 分类:网络日志 浏览:

Cookie 的 SameSite 属性

Chrome 51 开始,浏览器的 Cookie 新增加了一个SameSite属性,用来防止 CSRF 攻击和用户追踪。 一、CSRF 攻击是什么? Cookie 往往用来存储用户的身份信息,恶意网站可以设法伪造带有正确 Cookie 的 HTTP 请求,这就是 CSRF 攻击。 举例
作者:期权小韭菜 分类:网络日志 浏览:

xargs 命令教程

xargs是 Unix 系统的一个很有用的命令,但是常常被忽视,很多人不了解它的用法。 本文介绍如何使用这个命令。 一、标准输入与管道命令 Unix 命令都带有参数,有些命令可以接受"标准输入"(stdin)作为参数。 $ cat /etc/passwd | grep r
作者:期权小韭菜 分类:网络日志 浏览:

curl 的用法指南

简介 curl 是常用的命令行工具,用来请求 Web 服务器。它的名字就是客户端(client)的 URL 工具的意思。 它的功能非常强大,命令行参数多达几十种。如果熟练的话,完全可以取代 Postman 这一类的图形界面工具。 本文介绍它的主要命令行
作者:期权小韭菜 分类:网络日志 浏览:

Termux 入门教程:架设手机 Server 下载文件

手机文件,比如照片和视频,如何下载到桌面电脑? 普通用户可以使用手机线,将手机和电脑连起来。作为开发者,其实有更方便的方法,就是在手机架设一个 HTTP 服务,然后从桌面浏览器访问手机。 本文讲解如何使用 Termux 架设手机的 HTTP
作者:期权小韭菜 分类:网络日志 浏览:

iMovie 入门教程:视频编辑的利器

我们每天看别人的视频,有时也拿起手机拍一段。你有没有想过,把自己的照片和视频做成一部短片呢? 现在的视频编辑软件早就脱离了专业人士,操作日趋傻瓜化,对新人非常友好。哪怕你是一个彻底的外行,也能很轻松地做出一部像样的短片。
作者:期权小韭菜 分类:网络日志 浏览:

远程调试 Android 设备网页

网页在手机浏览器打开时,怎么调试? 安卓设备的 Chrome 浏览器支持远程调试,可以使用桌面浏览器的开发者工具。本文介绍如何进行远程调试。 Step 1:启用开发者模式 远程调试需要打开”开发者模式”。如果你的手机已经打开,可以跳过这
作者:期权小韭菜 分类:网络日志 浏览:

为什么开源数据库改变许可证?

CockroachDB 是一个开源的分布式数据库,最近改变了代码授权,放弃了 Apache 许可证。 许多开源数据库这一两年都改变了授权,比如 Confluent、Elastic 、MongoDB、Redis Labs、TimescaleDB。本文分析这种现象。 一、CockroachDB 的许可证
作者:期权小韭菜 分类:网络日志 浏览:

响应式图像教程

网页在不同尺寸的设备上,都有良好的显示效果,叫做"响应式设计"(responsive web design)。 响应式设计的网页图像,就是"响应式图像"(responsive image)。 响应式图像的解决方案有很多,JavaScript 和 CSS 都可以实现。本文介绍最简
作者:期权小韭菜 分类:网络日志 浏览:

GitHub OAuth 第三方登录示例教程

这组 OAuth 系列教程,第一篇介绍了基本概念,第二篇介绍了获取令牌的四种方式,今天演示一个实例,如何通过 OAuth 获取 API 数据。 很多网站登录时,允许使用第三方网站的身份,这称为"第三方登录"。 下面就以 GitHub 为例,写一个最简
作者:期权小韭菜 分类:网络日志 浏览:

OAuth 2.0 的四种方式

上一篇文章介绍了 OAuth 2.0 是一种授权机制,主要用来颁发令牌(token)。本文接着介绍颁发令牌的实务操作。 下面我假定,你已经理解了 OAuth 2.0 的含义和设计思想,否则请先阅读这个系列的上一篇文章。 进入正文之前,插播一则活动消
作者:期权小韭菜 分类:网络日志 浏览:

OAuth 2.0 的一个简单解释

OAuth 2.0 是目前最流行的授权机制,用来授权第三方应用,获取用户数据。 这个标准比较抽象,使用了很多术语,初学者不容易理解。其实说起来并不复杂,下面我就通过一个简单的类比,帮助大家轻松理解,OAuth 2.0 到底是什么。 一、快递员
作者:期权小韭菜 分类:网络日志 浏览:

CSS Grid 网格布局教程

一、概述 网格布局(Grid)是最强大的 CSS 布局方案。 它将网页划分成一个个网格,可以任意组合不同的网格,做出各种各样的布局。以前,只能通过复杂的 CSS 框架达到的效果,现在浏览器内置了。 上图这样的布局,就是 Grid 布局的拿手好
作者:期权小韭菜 分类:网络日志 浏览:

普通人的网页配色方案

网页需要配色。一种好看、易用、符合心意的配色,是很不容易的,尤其在没有设计师时。 一、Flat UI 色表 最简单的方法是,从一个给定的色表选择颜色。我以前就是这样,主要根据 Flat UI 的色表配色。 这个色表提供20种颜色(其实是10种,
作者:期权小韭菜 分类:网络日志 浏览:

敏捷开发入门教程

敏捷开发(agile development)是非常流行的软件开发方法。据统计,2018年90%的软件开发采用敏捷开发。 但是,到底什么是敏捷开发,能说清的人却不多。本文尝试用简洁易懂的语言,解释敏捷开发。 一、迭代开发 敏捷开发的核心是迭代开发
作者:期权小韭菜 分类:网络日志 浏览:

ORM 实例教程

一、概述 面向对象编程和关系型数据库,都是目前最流行的技术,但是它们的模型是不一样的。 面向对象编程把所有实体看成对象(object),关系型数据库则是采用实体之间的关系(relation)连接数据。很早就有人提出,关系也可以用对象表达
作者:期权小韭菜 分类:网络日志 浏览:

找回密码的功能设计

所有需要登录的网站,都会提供"找回密码"的功能,防止用户忘记密码。 正确设计这个功能,保证安全可靠,并不简单。下面就是安全专家 Troy Hunt 给出的设计指南。 一、如何保存密码 一个网站要想保证密码安全,第一步就是以正确的方法保存
作者:期权小韭菜 分类:网络日志 浏览:

数据库表连接的简单解释

关系型数据库最难的地方,就是建模(model)。 错综复杂的数据,需要建立模型,才能储存在数据库。所谓"模型"就是两样东西:实体(entity)+ 关系(relationship)。 实体指的是那些实际的对象,带有自己的属性,可以理解成一组相关属性
作者:期权小韭菜 分类:网络日志 浏览:

git bisect 命令教程

git bisect是一个很有用的命令,用来查找哪一次代码提交引入了错误。 它的原理很简单,就是将代码提交的历史,按照两分法不断缩小定位。所谓"两分法",就是将代码历史一分为二,确定问题出在前半部分,还是后半部分,不断执行这个过程,
作者:期权小韭菜 分类:网络日志 浏览:

异步 API 的设计

网站的前后端通信,往往会有异步请求,这时应该怎么设计 API? 我最近读到一篇文章,作者介绍了他的做法,设计得很精细,我觉得值得借鉴,可以当作异步 API 的标准设计。 一、同步 API 为了便于比较,先看看同步 API 的设计。下面是一个
作者:期权小韭菜 分类:网络日志 浏览:

awk 入门教程

awk是处理文本文件的一个应用程序,几乎所有 Linux 系统都自带这个程序。 它依次处理文件的每一行,并读取里面的每一个字段。对于日志、CSV 那样的每行格式相同的文本文件,awk可能是最方便的工具。 awk其实不仅仅是工具软件,还是一种编
作者:期权小韭菜 分类:网络日志 浏览:

Page Lifecycle API 教程

两周前,我介绍了 Page Visibility API。有了它,就可以监听各种情况的网页卸载。 但是,它没有解决一个问题。Android、iOS 和最新的 Windows 系统可以随时自主地停止后台进程,及时释放系统资源。也就是说,网页可能随时被系统丢弃掉。P
作者:期权小韭菜 分类:网络日志 浏览:

Flexbox 布局的最简单表单

弹性布局(Flexbox)逐渐流行,越来越多人使用,因为它写 CSS 布局真是太方便了。 三年前,我写过 Flexbox 的介绍(上,下),但是有些地方写得不清楚。今天,我看到一篇教程,才意识到一个最简单的表单,就可以解释 Flexbox,而且内容还
作者:期权小韭菜 分类:网络日志 浏览:

Page Visibility API 教程

一、简介 有时候,开发者需要知道,用户正在离开页面。常用的方法是监听下面三个事件。 pagehide beforeunload unload 但是,这些事件在手机上可能不会触发,页面就直接关闭了。因为手机系统可以将一个进程直接转入后台,然后杀死。 用户
作者:期权小韭菜 分类:网络日志 浏览:

Git 原理入门

Git 是最流行的版本管理工具,也是程序员的必备技能之一。 即使天天使用它,很多人也未必了解它的原理。Git 为什么可以管理版本?git add、git commit这些基本命令,到底在做什么,你说得清楚吗? 这篇文章用一个实例,解释 Git 的运行过
作者:期权小韭菜 分类:网络日志 浏览:

RESTful API 最佳实践

RESTful 是目前最流行的 API 设计规范,用于 Web 数据接口的设计。 它的大原则容易把握,但是细节不容易做对。本文总结 RESTful 的设计细节,介绍如何设计出易于理解和使用的 API。 一、URL 设计 1.1 动词 + 宾语 RESTful 的核心思想就是
作者:期权小韭菜 分类:网络日志 浏览:

命令行通配符教程

一次性操作多个文件时,命令行提供通配符(wildcards),用一种很短的文本模式(通常只有一个字符),简洁地代表一组路径。 通配符又叫做 globbing patterns。因为 Unix 早期有一个/etc/glob文件保存通配符模板,后来 Bash 内置了这个功
作者:期权小韭菜 分类:网络日志 浏览:

Vim 配置入门

Vim 是最重要的编辑器之一,主要有下面几个优点。 可以不使用鼠标,完全用键盘操作。 系统资源占用小,打开大文件毫无压力。 键盘命令变成肌肉记忆以后,操作速度极快。 服务器默认都安装 Vi 或 Vim。 Vim 的配置不太容易,它有自己的语
作者:期权小韭菜 分类:网络日志 浏览:

如何降低软件的复杂性?

John Ousterhout 是斯坦福大学计算机系教授,也是 Tcl 语言的创造者。 今年四月,他出版了一本新书《软件设计的哲学》(A Philosophy of Software Design)。这是课程讲稿,160多页,亚马逊全部是五星好评。 我还没读这本书,但是我看了
作者:期权小韭菜 分类:网络日志 浏览: