TonyDeng's Blog

“In me the tiger sniffes the rose.” -- Siegfried Sasson


  • 首页

  • 分类

  • 归档

  • 标签

  • PPT

  • GitBook

  • 关于

  • 搜索

为ZSH实现Fish Shell的效果

发表于 2016-08-05 | 分类于 效率

很久之前就见过同事用过Fish Shell,看到几个非常棒的特性和效果,比如下面两个特性就非常吸引我。

阅读全文 »

利用Tesseract图片文字识别初探

发表于 2016-07-28 | 分类于 效率

tesseract-to-pages

一直以来都想尝试一下图片的中文识别,直到最近才有点空闲时间,主要目的是证实一下到底可不可行,正确率能否达到 95% 以上。自己从头写起十分费时间,因为图片处理很麻烦,所以我选用了Tesseract OCR。

所谓 OCR(Optical Character Recognition)是指对文本资料进行扫描,然后对图像文件进行分析处理,获取文字和版面信息的过程。OCR是图像识别领域中的一个子领域,该领域专注于对图片中的文字信息进行识别并转换成能被常规文本编辑器编辑的文本。

阅读全文 »

看看程序猿是如何来下载和处理视频

发表于 2016-07-19 | 分类于 效率

FFMpeg and Youtube-dl

我们经常在各大视频网站上看到一些很不错的视频,希望能够下载收藏起来,但是无法在网站上找到下载的按钮或者入口,很是郁闷。

那么来看看程序猿是如何来下载和处理视频的。

阅读全文 »

Leiningen + Clojure Hello World!

发表于 2016-07-19 | 分类于 Leiningen + Clojure之旅

hello world

我们之前已经写过Leiningen + Clojure之旅一篇Blog安装Leiningen。

今天我们在看看如何结合Leiningen写一个Clojure的Hello World,毕竟开始一门语言,都是从Hello World开始。

阅读全文 »

靠谱的产品经理之七字真言

发表于 2016-07-14 | 分类于 产品设计

怎样才算靠谱的产品经理

工作那么多年,合作过的产品经理有很多,但是被我和工程师团队认为靠谱的产品经理却不多,工程师也经常吐槽产品经理不靠谱(貌似,我们之前合作过靠谱的产品经理女性居多,也不知道是什么原因……)。

阅读全文 »

黑客的统计学

发表于 2016-07-12 | 分类于 工程师文化

statistics for hackers

最近看到一个题为《Statistics for Hackers》(黑客的统计学)的PPT,非常有意思,和大家分享一下。

阅读全文 »

使用 lsof 代替 Mac OS X 中的 netstat 查看占用端口的程序

发表于 2016-07-07 | 分类于 Mac OSX

众所周知水果系统内核是有 BSD 血统的 Darwin,OS X 自带的很多 CLI 工具也是 BSD style 的,有一部分使用起来和 Linux 无异,有一部分可以通过 brew 安装 GNU 版本(如 tar),但是 OS X 的 netstat 不能查看使用端口的程序名让我一直很不爽,而且也没找到 GNU 版本,于是去搜了一下解决办法,stackoverflow 上的结论基本都是建议使用 lsof 代替 netstat 进行查看:

sudo lsof -nP -iTCP:端口号 -sTCP:LISTEN
阅读全文 »

任意文件下载漏洞的简单防护措施

发表于 2016-06-13 | 分类于 安全

security

我们在开发Web应用时,经常会提供文件下载的功能。工程师们一般会考虑遵循“单一原则”,会开发一个将请求中的file或filePath作为参数,来下载指定的文件。这样开发一个下载的功能,就能支持所有的下载需求了。

比如,输入这样的URL

http://tonydeng.github.io/download?file=123.txt

就能够下载123.txt这个文件了。

这样的确很方便,但是,大家有没有想过,这样的功能可能会出现什么样的安全隐患或者漏洞呢?

阅读全文 »

使用Junit的一些的高级用法

发表于 2016-05-11 | 分类于 效率

Junit

Junit 是Java开发领域中非常普遍的单元测试框架,不过,大部分的使用者仅仅只是使用它一部分的功能。

先整理一部分相对不常用,但是个人觉得非常有用的功能(其他的慢慢补充),希望对大家有所帮助。

阅读全文 »

Java Stream详解

发表于 2016-04-25 | 分类于 程序设计

java8 stream api

Stream是 Java 8新增加的类,用来补充集合类。

Stream代表数据流,流中的数据元素的数量可能是有限的,也可能是无限的。

Stream和其它集合类的区别在于:其它集合类主要关注与有限数量的数据的访问和有效管理(增删改),而Stream并没有提供访问和管理元素的方式,而是通过声明数据源的方式,利用可计算的操作在数据源上执行,当然BaseStream.iterator() 和 BaseStream.spliterator()操作提供了遍历元素的方法。

Java Stream提供了提供了串行和并行两种类型的流,保持一致的接口,提供函数式编程方式,以管道方式提供中间操作和最终执行操作,为Java语言的集合提供了现代语言提供的类似的高阶函数操作,简化和提高了Java集合的功能。

本文首先介绍Java Stream的特点,然后按照功能分类逐个介绍流的中间操作和终点操作,最后会介绍第三方为Java Stream做的扩展。

阅读全文 »
<i class="fa fa-angle-left"></i>1234…8<i class="fa fa-angle-right"></i>
Tony Deng

Tony Deng

73 日志
18 分类
145 标签
RSS
GitHub Twitter 知乎
© 2005 - 2022 Tony Deng
由 Hexo 强力驱动
主题 - NexT.Mist