求索

Make Something Different

文本压缩算法的对比和选择

本文主要粗略介绍数据压缩主要算法类别,以及最新针对Web文本资源的zStd和Brotli算法的设计要点。为Web业务应用如何使用它们替换传统gzip提供些参考。最后是一个文本有损压缩的尝试。

2017-07-15 16:21:23

阅读数:6826

评论数:2

让工作节奏慢一点, 再简单的工作也能做出大成就

快,是当下的工作主旋律。拿到任务,快刀斩乱麻,达成目标交差。相对于这种做事做到恰到好处的做法,我更喜欢要做就往大了做。除了解决问题,我自己能从其中得到什么提高产品能做什么改变。总之有机会就要尝试慢下来,让事情更具广度和深度。只有深入到细节,才更有机会发现优化和创新的机会,根本不需要依赖从一个高大上...

2014-10-26 20:24:03

阅读数:3761

评论数:2

Perl & Python编写CGI

最近偶然玩了一下CGI,收集点资料写篇在这里留档。 现在想做HTTP Cache回归测试了,为了模拟不同的响应头及数据大小,就需要一个CGI按需要传回指定的响应头和内容,这是从老外的测试页面学习到的经验。CGI其实就是使用STDIN和环境变量作为输入,  STDOUT做为输出,依照Http协议生成...

2014-04-24 08:29:20

阅读数:3983

评论数:0

转换GDB调用栈到流程图

如果你想在GDB调试时把调用堆栈保存下来归档,那下面这个脚本就方便你了。原理是将调用堆栈的函数抽取出来,再完成调用关系就可以了。稍加改动就可以同时读取多个调用栈,生成一张流程图。

2014-04-09 23:58:02

阅读数:5575

评论数:5

程序员看数据分析

“世上有三种谎言:谎言、该死的谎言和统计” ------这是一句著名的西方谚语,其中让统计有如此名声的非平均值莫属了,可见数据分析并不能只是简单地求和、求平均。  作为程序员现在也开始接触到大量数据,也需要有数据分析的工作。比如在发布前进行一系列的测试,对测试结果进行分析,以便决定能否正式上线。 ...

2014-04-06 20:38:46

阅读数:5636

评论数:1

几个有用的R小函数

最近写的代码基本是R脚本了,越发感到R的强大。现在用它做一些数据分析以及进行一些模拟。 收几个常的函数在这里。 1. 批次替换data frame中的数据      i. 将所有为0的数据替换为100         res2$valueX[res2$valueX %in% 0]     ...

2014-01-16 13:23:25

阅读数:12362

评论数:0

R绘制动态曲线

使用R语言绘制动画可以方便地观察到数据的变化行为。以之前Chrome在收集页面资料时使用的指数平滑算法为例,绘制一个在不同系数且目标值不断变化(应用场景不是页面访问统计)的情况下的曲线逼近行为。 首先要确保在R中安装了animation包, 如果需要保存成GIF动画,还需要安装ImageMag...

2013-12-01 11:32:49

阅读数:4211

评论数:0

程序员统计知识-看懂数据

中位数、平均值、标准差、箱形图

2013-11-25 23:44:41

阅读数:2844

评论数:0

实时监控Android设备网络封包

对Android网络抓包分析,一般是使用tcpdump抓个文件,再到PC用Wireshark打开分析。能不能达到直接使用Wireshark的效果? 答案是可以的,至少已经非常接近了。实现起来很简单,原理就是将tcpdump的数据重定向到网络端口,再通过管道(pipe)转到wireshark就可以了...

2013-09-19 00:37:14

阅读数:9428

评论数:2

GDB扩展之Command File - 提高调试效率

工欲善其事,必先利其器。GDB的扩展可以通过command file和python脚本完成,这里针对Command file,一个简单高效的扩展方案。GDB Command File可以简单地理解为一串自定义的GDB指令,也就是GDB允许用户使用define将一串GDB操作定义为一个指令。

2013-07-18 19:03:47

阅读数:7034

评论数:0

[WebKit]C++类的数据结构及在反汇编上的应用

在反汇编常常要在无法使用调试信息和源代码的情况下查看数据内容,数据结构比较好处理,如果是C++的类,就需要做些总结了。 基础 - POD? C++的成员变量的排列顺序关键在于区别是不是POD(Plain Old Data)类型,从而确定是否需要有VPTR。POD类型会保持和struct...

2013-06-17 23:56:17

阅读数:3936

评论数:1

提高编译效率:Unity Builds

最近,我发现了一个方法来减少在C/C++项目的编译时间,就是所谓的Unity Builds(UB)。这项技术非常简单, 通过减少磁盘访问的数量而减少了编译时间。 在编译过程中include的文件会被多次访问, 每一个编译单元(Translation Unit,指的是编译出一个object文件...

2013-04-03 00:18:41

阅读数:3853

评论数:0

什么是好的测试用例[51Testing]

这项研究部分基于NSF制定的EIA-0113539 ITR/SY+PE:“提高软件测试者的教育。” 材料中表达的任何观点、发现和结论或者评论都属于作者,不代表国家科学基金会(NSF)的观点。 摘要      设计好的测试用例是一门复杂的艺术。其复杂性有三个原因:   ...

2013-03-21 22:58:33

阅读数:3672

评论数:0

iOS上的一个自动化测试工具

在模拟器打开Accessibility可以观看到每个控件,即使是在网页上的. 所以是有可能做到更精准的自动化测试的。下面转了份博客,如果有兴趣可以找时间一起研究如何应用。 虽说回归测试很重要,反复执行的事可以让脚本去做。 今天找到了一个开源的工程,官网:test...

2013-03-19 23:12:08

阅读数:3243

评论数:0

使用LLDB脚本简化打印复杂数据的操作

上次提到用了LLDB脚本来扩展一些功能。 这次是简化打印复杂数据的操作。   不知道大家都没有遇到过在gdb和lldb里输出一个类时困扰,常常要一个个属性展开下去,或者调用提供函数来检查。分享一个使用LLDB脚本来简化变量输出的方法。   以输出Element的属性为例,其下面的属性很多,...

2013-01-14 22:38:32

阅读数:3366

评论数:1

LLDB中的Python脚本

上次说了查看当前视图和参数的方法,要记住一串`*(int*)($esp+4)` 实在不爽。   于是查到可以使用LLDB脚本来完成。写了一个脚本(下载),本来想做个递归查询的,因为不是源代码调试,就没办法直接做到,需要花更多的时间,现在没空了。   脚本自己看,参考的资料在这里, 不是很详...

2012-12-21 00:56:08

阅读数:4165

评论数:4

[iOS逆向工程] 在汇编语言调试中获取当前实例句柄

在分析Safari行为的时候想到要用objective-c的特性随时可以语义化的查看一下UIView的各种状态,比如在UIView方法内部设了个断点,想看一下当前视图结构。只要得到当前实例的句柄就可以了。查了一些资料,记录一下。 函数参数的传递 iOS Simulator里应用...

2012-12-19 01:03:32

阅读数:5844

评论数:5

[Mac OS/iOS]反汇编工具Hopper分析Crash Log

在Mac OS下分析Crash Log有很多种方法,这里不是要说明如何分析的Crash Log, 主要是展示下Hopper的使用。 强大的IDA大家可能已经知道,但它的Mac OS版本又让人回到了DOS时代。幸运的是Mac OS有了一个小巧的替代品:Hopper, 基本上满足了工作上的反汇编的需要...

2012-12-12 06:40:45

阅读数:17207

评论数:1

iOS:应用程序的线程安全性

本文在于说明iOS应用的Objective-C代码的线程安全性。先是简单介绍一下线程安全的基本知识,然后通过一个小例子来观察非线程安全代码,最后会稍稍介绍一个可以用来分析线程安全隐患的工具。 1) 基础知识 (Threading Basics) 当启动一个应用时,iOS会对应创...

2012-11-01 00:41:51

阅读数:10778

评论数:4

是一夜情?还是蛇象之舞?TRIZ和PACE理论在企业中的运用前景

“TRIZ是人类思维的精华,如果说已经达到了目前所知方法论的顶峰,这个比喻并不为过。” 必须承认,企业的年利润达到3000万RMB以上,才有可能接受TRIZ和PACE理论在企业中的植入。这不仅是我个人的见解,也是因为在实行这个理论的过程中所产生的不菲费用。而相对于中国企业的贯彻、实施能力...

2012-10-22 22:38:27

阅读数:1938

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭