关于微积分的一个精彩视频

今天看了关于微积分的一个系列视频,还是很不错的。制作者非常用心,特别是用了相当多的动画技术来演示一些重难点部分。在 bilibili 的观看地址如下:

https://search.bilibili.com/all?keyword=3BLUE1BROWN&from_source=video_tag

也可以在 youtube 上看到,感兴趣的可以自行在上面搜索 3blue1brown 这位作者。

我觉得像微积分这样比较复杂抽象的东西,已经很难用一种静止地文字的形式去讲述它,比如像现在许多教科书所采用的形式,甚至说大量运用图片都很难讲述清楚许多复杂的概念。视频化,动画化我觉得是未来的趋势。

其实编程方面的许多知识也同样面临同样的问题,许多复杂的东西已经很难用一种静止的文字的形式去讲述。

计算机及相应的编程技术,理应成为一种强大的工具,在人类认知及自我迭代升级过程中发挥它的强大作用。

何不食肉糜与何不努力

为什么说“努力”其实也是一种天赋……

据说是晋惠帝执政时期,有一年发生饥荒,百姓没有粮食吃,许多百姓因此活活饿死。消息报到宫中,naive 的晋惠帝来了一句:“百姓无粟米充饥,何不食肉糜?”(百姓肚子饿没米饭吃,为什么不去吃肉粥呢?)一不小心就闹了一个大笑话。

现代的晋惠帝在我看来则是一些“奋斗论”者,他们常说,你不成功,那是因为你没有努力奋斗;而他们之所以成功,是因为他们努力奋斗了。

曾经有一段时间有这么一句话很流行:“以绝大多数人努力程度之低,根本轮不到拼天赋的地步”。然而我并不赞同这样的话。 继续阅读“何不食肉糜与何不努力”

Java 字节流与字符流(3)

在上一篇中比较了使用字节流和字符流来读取(写入)文本文件的优劣后,这一篇主要探讨缺省编码这个主题。

字符流使用缺省编码

通过前面的例子,已经得出了一个结论:字符流=字节流+编码。

可以在构建字符流时显示传入编码参数,那么所得到的字符流就会以该编码来编码(encode)解码(decode)字节流,这会给文本数据处理带来极大方便。

但有时,构建字符流时也可以不传入编码参数,比如如下直接构建一个 InputStreamReader :

继续阅读“Java 字节流与字符流(3)”

Java 字节流与字符流(2)

在上一篇中介绍了字节流与字符流的关系,这一篇主要给出一些具体的代码示例。

使用字节流读取文本文件

上篇中说到,无论是字符流还是字节流,都可以用于读取文本文件,特别是对于一整个文件的读取,两者的差别并不大。来看一个具体的示例,假如有如下 gbk 编码的 txt 文件一枚,具体内容为“hi你好”,对应二进制如下:

继续阅读“Java 字节流与字符流(2)”

Java 字节流与字符流(1)

Java 的 IO 系统是比较庞杂的,各种流特别多,其中有一种就是字符流。

在本系列前面的一些文章中,也曾涉及过字符流的话题,不过没有详细展开讨论,这次准备具体综合地谈一谈。

你可能听过不少关于字节流与字符流对比的介绍,不过严格地说,我认为把“字节流”和“字符流”去对比这种说法不是特别妥当,为什么呢?

继续阅读“Java 字节流与字符流(1)”

子域名启用 https 的尝试

现在可以通过 https 访问我的子域名:https://exp.xiaogd.net/

不过暂时还是不建议这样去访问,因为主站 http://xiaogd.net 还没有启用,导致从子域名跳到主站时会出现安全警告。

因为在跳转链接上使用了跟随协议式的写法,像这样://xiaogd.net

所以现在子域名上也还是两种方式并存,通过 http://exp.xiaogd.net/ 这种不安全的方式访问也还是能支持,我也没有去做跳转。

其实我的主站是个“裸域名”,正常来说应该是这样:http://www.xiaogd.net,现在 https 证书是个生意,我在腾讯云上申请它提供的免费证书时,发现免费的证书并不支持“裸域名”,只能支持像比如 www.xiaogd.net 这样的;或是我现在的这个子域名这样的:exp.xiaogd.net。

而且这样的一个证书还只是免费一年而已~

所以这个证书没有办法支持主站的域名。当然,要在主站全面支持 https,还要把网页中的所有站内链接一一调整成 https 开头的,

或者是前面说到的跟随协议式的写法。

所以你如果现在开始建站,建议一步到位使用 https,免得后面折腾。

当然,像 wordpress 系统的话,它本身在设置上有一些支持,可以较容易切换到 https;自己写的文章内的链接也有批量查找替换的插件。

另外,其实有其它免费的方案,比如这个: Let’s Encrypt,裸域名,多个域名都是没有问题的,当然它的证书也是有期限的,不过也有相关的自动化工具能在到期时帮你自动延期,具体的这里就不介绍了。

网页中的编码与乱码(5)

深入探讨了缺省情况下浏览器的响应行为,包括静态和动态的响应,最后,对所有情况作了一个简单总结。

在上一篇我们谈论了 BOM 编码的页面,并知道了它是有最高优先级的。而这一篇将讨论最后的一个主题,也就是缺省的情况。既然名为缺省,也就不难想到,它的优先级是最低的,也即是在其它情况下都无法确定编码时,才轮到它上场。

继续阅读“网页中的编码与乱码(5)”

网页中的编码与乱码(4)

深入介绍了 html 页面使用 BOM 编码的情况,它的优先级为什么最高以及具体的静态页面和动态响应的测试示例。

这一篇将介绍 BOM 在 html 页面编码中的运用。在最前面曾提到,它的优先级实际上是最高的,在这里,将具体介绍什么是 BOM,还会解析为什么它的优先级最高,然后还会构建一些具体的测试来验证这一点。

继续阅读“网页中的编码与乱码(4)”

对“有点尴尬诶!该页无法显示”情况的一个说明

最近发现网站出现不少 404 的访问,看了一下是对 url 错误二次编码造成的。

如果出现 404 ,该页无法显示的情况,您的浏览器可能对 url 进行了错误的二次编码(或者是其它的转发环节),‘%’被编码成了 ‘%25’。

% 的 ASCII 码 正好是 25(十六进制),%25 就是 % 本身的转义表示,但它是不需要再转义的。

正确形式:http://xiaogd.net/%XX%XX…
错误形式:http://xiaogd.net/%25XX%25XX…

错误形式中,% 被二次转义,变成了 %25,导致了 404 错误。

在后台的 access_log 中,找到这些带有 %25 的错误 url,查看其浏览器用户代理 userAgent 的值多为类似以下:

“Mozilla/5.0 (iPhone; CPU iPhone OS 9_3_4 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Mobile/13G35 QQ/6.5.3.410 V1_IPH_SQ_6.5.3_1_APP_A Pixel/750 Core/UIWebView NetType/2G Mem/117″

关键词:iPhone,AppleWebKit,QQ,UIWebView

估计为 iphone qq 浏览器内核的 bug。我已在 404 页面添加相应说明。(sorry for that,and don’t blame me~)

如果您出现无法访问的情况,欢迎留言告诉我具体的情况,谢谢!(不过如果你用手机访问,应该是不会有留言框出现~~)