米米的博客

做了一点微小的工作

In 2012, Mathematician Ian Stewart came out with an excellent and deeply researched book titled "In Pursuit of the Unknown: 17 Equations That Changed the World."
在 2012 年,数学家斯图尔特(Ian Stewart)出版了一本精彩而深入研究的著作,名为《追寻未知:改变世界的 17 个公式》。
His book takes a look at the most pivotal equations of all time, and puts them in a human, rather than technical context.
他的书着眼于有史以来最关键的方程式,并将它们置于普通人而非专业的背景中。
"Equations definitely can be dull, and they can seem complicated, but that's because they are often presented in a dull and complicated way," Stewart told Business Insider. "I have an advantage over school math teachers: I'm not trying to show you how to do the sums yourself."
「方程式肯定会显得沉闷,而且它们看起来很复杂,但那是因为它们经常以这样的方式呈现,」斯图尔特告诉 Business Insider。 「我比学校的数学老师更有优势:我不会试图告诉你如何自己算出它们。」
He explained that anyone can "appreciate the beauty and importance of equations without knowing how to solve them ... The intention is to locate them in their cultural and human context, and pull back the veil on their hidden effects on history."
他解释说,任何人都可以「欣赏方程式的美丽和重要性,而不去知道如何解它们…… 目的是将它们置于文化和人文环境中,并揭开它们对历史隐藏效应的面纱。」
Stewart continued that "equations are a vital part of our culture. The stories behind them — the people who discovered or invented them and the periods in which they lived — are fascinating."
斯图尔特继续说道,「方程式是我们文化的重要组成部分。他们背后的故事 —— 发现或发明它们的人以及他们生活的时期 —— 都很吸引人。」
Here are 17 equations that have changed the world:
以下是改变世界的 17 个方程式:
Max Nisen contributed to an earlier version of this post.
Max Nisen 为本文的早期版本做出了贡献。

The Pythagorean Theorem


Pythagoras, 530 BC
What does it mean? The square of the hypotenuse of a right triangle is equal to the sum of the squares of its legs.
作用:直角三角形的斜边的平方等于其直角边的平方和。
History: Though attributed to Pythagoras, it is not certain that he was the first person to prove it. The first clear proof came from Euclid, and it is possible the concept was known 1,000 years before Pythagoras by the Babylonians.
历史:虽然认为毕达哥拉斯(Pythagoras)发现了这个公式,但不确定他是否是第一个证明它的人。第一个明确的证明来自欧几里得,而这个概念可能是在毕达哥拉斯之前 1000 年就被巴比伦人知道了。
Importance: The equation is at the core of much of geometry, links it with algebra, and is the foundation of trigonometry. Without it, accurate surveying, mapmaking, and navigation would be impossible.
重要性:勾股定理是几何的核心,它与代数联系起来,是三角学的基础。没有它,准确的测量、地图制作和导航将是不可能的。
In terms of pure math, the Pythagorean Theorem defines normal, Euclidean plane geometry. For example, a right triangle drawn on the surface of a sphere like the Earth doesn't necessarily satisfy the theorem.
在纯数学方面,毕达哥拉斯定理定义了正常的欧几里德平面几何。例如,在像地球一样的球体表面上绘制的直角三角形不一定满足该定理。
Modern use: Triangulation is used to this day to pinpoint relative location for GPS navigation.
现代用途:今天使用三角测量来确定 GPS 导航的相对位置。

阅读全文 »

之前的一篇文章中,提到了 WordPress 的插件审核机制,其中对于代码安全性的要求,主要就是对 CSRF 与 XSS 攻击的防范。官方邮件中这样写道:

Not using Nonces and/or checking permissions

Please add a nonce to your POST calls to prevent unauthorized access.
Keep in mind, check_admin_referer alone is NOT bulletproof security. Do not rely on nonces for authorization purposes. Use current_user_can() in order to prevent users without the right permissions from accessing things.

Please sanitize, escape, and validate your POST calls

When you include POST/GET/REQUEST/FILE calls in your plugin, it's important to sanitize, validate, and escape them. The goal here is to prevent a user from accidentally sending trash data through the system, as well as protecting them from potential security issues.
SANITIZE: Data that is input (either by a user or automatically) must be sanitized. This lessens the possibility of XSS vulnerabilities and MITM attacks where posted data is subverted.
VALIDATE: All data should be validated as much as possible. Even when you sanitize, remember that you don't want someone putting in 'dog' when the only valid values are numbers.
ESCAPE: Data that is output must be escaped properly, so it can't hijack admin screens. There are many esc_*() functions you can use to make sure you don't show people the wrong data.
To help you with this, WordPress comes with a number of sanitization and escaping functions. You can read about those here: https://developer.wordpress.org/plugins/security/securing-input/
Remember: You must use the MOST appropriate functions for the context. If you're sanitizing email, use sanitize_email(), if you're outputting HTML, use esc_html(), and so on.
Clean everything, check everything, escape everything, and never trust the users to always have input sane data.

下面通过维基百科的内容介绍 CSRF 与 XSS 攻击的具体形式。

阅读全文 »

如何过滤垃圾评论是个人博客老生常谈的话题。一种比较简单的方案就是加上验证码,这不会为正常回帖的用户增加太多负担,但足以将一些刷评论的机器人拒之门外。对 WordPress 这种带后端的博客系统而言,验证码还可以增加暴力破解登录密码的成本,提高安全性。

在 WordPress 插件库中,有着各式各样的验证码插件。然而,很多验证码插件都依赖于 Google 的 reCAPTCHA,这在国内无法访问;而一些图片验证码插件的质量参差不齐,在机器学习快速发展的今天,实际效果难以得到保障。

虽然本站已经抛弃了 WordPress 转投 Hexo 静态博客(正如你所看到的这样),但考虑到 WordPress 中少有适合我国国情的验证码插件,笔者决定将一些常见的图形验证码的功能进行整合,推出一个更完美的验证码解决方案。Mimi Captcha 就这样诞生了,该插件最大的特点是,除了传统的数字、大小写字母验证码之外,还加入了对中文验证码和算术验证码的支持。

Mimi Captcha 是基于 Vinoj Cardoza 的 Captcha Code 在 GPL 协议下二次开发的。原项目存在的问题是,验证码中的字符采用同一字体在同一高度下顺序排列,这样非常容易被识别。改动过程中,加入了「超时时间」,以及对用户更为友好的「不区分大小写」选项。而验证码图片的生成算法,则进行了重构,很大程度上采用了流水孟春的方案,在原插件上拓展而成。同时,在 IP 白名单等功能上,参考了 Captcha by Simplywordpress 的实现。最终效果如图:

登录验证码

阅读全文 »

2018 年俄罗斯世界杯激战正酣,对于谁将捧起大力神杯,大家是不是已经做出了自己的预测?贝利近日在接受采访时就表示,现阶段自己更看好德国和法国队,因为德国是卫冕冠军,而法国队也具有很强的球队实力,他认为这两支球队有更大的可能会捧起今年的大力神杯。

众所周知,球王贝利不仅在绿茵场上令人害怕,更有一项技能让他在退役后依然使世界足坛胆寒 —— 那就是贝利令人发指的足球预测。贝利被称为世界足坛第一乌鸦嘴,只要被球王的嘴开过光的球队,多半就会输球。以至于如今很多球迷都跪求球王别看好自己的主队。下面就来回顾一下贝利的乌鸦嘴历史:

  • 贝利 1977 年首次访问中国时曾表示:「中国队很快就能进入世界杯。」这句话之后,中国队苦苦挣扎了 20 年,才在 2002 年勉强挤入世界杯。接着,1991 年女足世界杯上,贝利进一步表扬中国男足,认为中国男足十年内能迈入世界一流行列,结果,中国男足根本不入流。除了中国队之外,贝利自 1990 年世界杯开始每逢大赛前都会进行预测,但是他的预测着实不太靠谱。
  • 1990 年世界杯贝利公开预测南斯拉夫队将成为当届世界杯最大的黑马,结果,在预选赛第一场比赛后,南斯拉夫 1:4 被德国击败。该场比赛,马特乌斯进了两球。最后,南斯拉夫小组第二侥幸出线,四分之一决赛的时候,南斯拉夫被阿根廷「点杀」。贝利在预测谁将是黑马之后,又预测巴西队是最伟大最强的队伍,肯定夺冠,结果,巴西被阿根廷不多不少就打了一球,饮恨 8 分之一决赛。
    从这个时候开始,巴西以及南斯拉夫球迷开始怀疑贝利的嘴巴有毒,但尚未成燎原之势。最为有趣的是,成全他「乌鸦嘴」名号的,居然正是死敌 —— 阿根廷队。
  • 在 1991 年世少赛上,加纳小将兰普提力压德尔・皮耶罗当选最佳球员。贝利预测兰普提将会是他的接班人。结果:兰普提并没能发挥他的足球潜质,职业生涯辗转于埃因霍温、阿斯顿维拉、考文垂和威尼斯等球队,后来甚至效力过甲 A 山东鲁能。而他的生活也是悲剧不断,他的两个孩子先后去世。
  • 1992 年欧洲杯「一意孤行」的贝利又开「新手上路」般的乌鸦嘴,预测南斯拉夫能取得不俗战绩。结果大家也都知道了,南斯拉夫被禁赛。
  • 1994 年世界杯贝利乌鸦嘴天下扬名,然而,代价却是哥伦比亚球员被枪杀。该届世界杯,贝利认定哥伦比亚队会一鸣惊人。结果,哥队 1 胜 2 负,小组都没冲出去,积分仅为 3 分。极端的哥伦比亚球迷枪杀了打进乌龙球的后卫埃斯科巴。这次悲剧之后,贝利乌鸦嘴天下闻名,南美媒体首次公开撰文让「贝利闭上他的鸟嘴!」
  • 1996 年欧洲杯贝利别出心裁地公开赞美第一次打进欧洲杯决赛圈的土耳其队,并看好意大利夺冠,小组赛后,两个球队无一例外卷铺盖回家了。只是当时人们都惊诧于捷克的表现,贝利的这两次预言并没有得到舆论过多重视。
  • 1998 年世界杯贝利认为西班牙小组出线不成问题,结果,西班牙先被尼日利亚戏耍,然后又被巴拉圭逼平,小组都没出线。鉴于尼日利亚的好表现,贝利对其大加赞美,结果 2 天之后,尼日利亚被丹麦打成筛子,1:4 屈辱地打道回府。自觉没有颜面的贝利在接受法国媒体采访时表示,巴西队将战胜法国队夺冠,结果,0:3,堂堂的巴西队就这样毙命。
  • 2002 年世界杯小组赛前,吸取教训的贝利改道了,无论媒体怎么引诱,他就是不说巴西队夺冠之类的话语,而是很巧妙地说看好阿根廷和法国队这两个巴西队的仇人。这招果然恶毒,阿根廷、法国这两大热门都在小组赛中折戟沉沙,法国甚至连一个进球都没捞到,而阿根廷令人印象最深的则是巴蒂的眼泪。英格兰 3:0 战胜丹麦晋级 4 强,将对阵巴西,贝利一口咬定「英格兰夺冠」,结果可想而知,委屈的英格兰人即便欧文先洞穿巴西大门,随着里瓦、小罗的先后进球,不得不止步决赛的大墙外。最终,巴西夺冠,贝利「赢了」。
  • 2004 年欧洲杯贝利在小组赛前看好意大利,托蒂吐向波尔森的口水被电视画面清晰地记录下来,结果停赛三场,意大利深受影响,2 平 1 胜,必须得看别人脸色,结果,即便最后一场 2:1 战胜保加利亚,但瑞典 2:2 丹麦,意大利人不得不哭别赛场。接下来,贝利又开始表演,表示看好英格兰,称赞鲁尼前途无限。结果鲁尼在与葡萄牙的比赛里受伤下场,英格兰点球 5:6 落败。随后,他又看好法国队,预言葡萄牙与荷兰的胜者会夺冠,亚军是捷克…… 最终结果却是希腊人在雷哈戈尔的率领下,一鸣惊人。
    如今,地球人都晓得贝利乌鸦嘴的厉害了,只要他一开口,天下大惊。
  • 2006 年世界杯期间,他也闲不住,「魔嘴」伸向了巴德英意 4 个球队,随后甚至细化到「巴西夺冠」。贝利不知怀着何种心态,声称「英格兰队没有鲁尼照样是争夺世界杯群雄中最强大的球队」,吓出英格兰球迷一身冷汗。又说「就我个人而言,希望世界杯决赛能够在沙特和巴西之间进行。」结果沙特小组未出线、巴西队败于法国,相继被淘汰;英格兰队同样出局;德国、意大利在 4 强相遇,又有一个要挂。(最终意大利夺冠,贝利的预测对了四分之一)
    这年亦是国际足联设立最佳新人奖的第一年,贝利认为:「如果阿根廷打入决赛,我认为梅西最有可能获此殊荣。另外 C・罗纳尔多也是一个出色的球员。如果英格兰队主帅适当地给沃尔科特一些上场表现的机会,这也许会是一段传奇。我打进自己的首粒世界杯进球时,也只有 17 岁。」结果阿根廷,英格兰队被淘汰,C・罗纳尔多在对阵荷兰的比赛中又受伤下场。
  • 2008 年,当时还效力于 AC 米兰的罗纳尔多遭遇严重伤病,贝利说外星人玩完了,他即将挂靴。结果:2009 年 3 月罗纳尔多在科林蒂安复出,前 14 场比赛打进了 10 球!
  • 2010 年南非世界杯,贝利再次做出了预测,称有一支非洲球队将和巴西进行决赛。令人瞠目结舌的是,贝利再次预言「准确」,代表非洲的六支球队仅加纳凭借一粒点球获胜,阿尔及利亚、尼日利亚和喀麦隆全部告负。第一轮小组赛战罢,最大滑铁卢就属非洲球队,6 战仅取得 1 胜 2 平 3 负,还不及亚洲球队 4 战 2 胜 2 负。而所谓「巴西队非洲队会师决赛」的愿望,也在巴西队出局后成为了泡影。
  • 「尼基・巴姆比将成为比肩齐达内、罗纳尔多的超级巨星。」结果:巴姆比只是一个普通的球员,只有 23 次代表英格兰出场,甚至没有在世界杯出现过。09-10 赛季效力的赫尔城也在英超惨遭降级。
  • 2014 年巴西世界杯,深知自己功力深厚的贝利,没有预测巴西队的前景,甚至拒绝了为 32 强抽签。不过在巴西高歌猛杀进四强之后,贝利忍不住开口了,看好没有内马尔的巴西也能夺冠。他的「乌鸦嘴」也再度显灵,送给东道主一场 1:7 的耻辱惨败。
  • 不仅是足球,连排球比赛也能成为贝利的毒奶目标。对于 2016 年里约奥运会,贝利表示塞尔维亚女排将会夺冠:「这是一只成熟的队伍,拥有两位优秀的攻手,一位经验丰富的二传,一位出色的副攻以及一位老谋深算的教练。相信她们在决赛会给中国队带来足够的麻烦,她们将会 3:0 横扫中国队拿到金牌。」结果塞尔维亚 1:3 不敌中国女排。
  • 在贝利和史泰龙以及迈克尔・凯恩等著名影星联袂主演的经典影片《胜利大逃亡》中(1981 年上映),上半场贝利被纳粹对手铲伤,他示意自己不能继续比赛了,并被担架抬下场。协约国联队以 0 比 4 落后。结果:贝利下半场还是回来了,并攻入一球帮助球队取得胜利。看,即使在电影中,贝利的预测还是错误的。
  • 贝利还曾接受采访说:2012 世界末日根本是无稽之谈,我还要看巴西世界杯呢……(幸好这一次,他的预测没有出现问题)

参考文章:贝利乌鸦嘴历史

标签云拟合Octocat

笔者最近发现了一个神奇的 Python 库,名为 wordcloud。借助它,可以轻松地用标签云拼出一副图片,就像上图这样。让我们一起看看具体的步骤吧。

环境

请确保 Python 3 和 pip3(即 python3 -m pip)都可以正常使用。需要使用 pip 安装的模块有:

  • matplotlib
  • numpy
  • pillow
  • requests
  • wordcloud

其中 wordcloud 模块有些特殊,笔者尝试执行 pip3 install wordcloud,结果报错了。如果你也遇到了类似的问题,请执行以下安装方式:

1
2
3
4
git clone https://github.com/amueller/word_cloud.git
cd word_cloud
pip3 install -r requirements.txt
python3 setup.py install

这样就完成安装了。

阅读全文 »
0%