Beyond Compare 无限试用

最近一阵子都在跟公司数据组同事对数据,因为涉及到了同样的安装数据的两套归因逻辑,因此检查数据的方式非常原始,就是分别比对不同的查询语句下的查询结果。然后就不得不使用了对应的工具——Beyond Compare(有大佬会说为啥不用vimdiff,emmmm,可能还是自己对命令行的工具链不够熟悉吧,所以还是更喜欢使用这类的图形化程序),感觉下来这个工具果真老牌(虽然没有拿来合代码,但还是觉得比对起来的效率非常之高)。因此本夸下海口说等试用期过了我就买个正版授权,结果跟同事说了一下之后同事告诉我可以无限试用。emmmmm~那好吧,谁让我是个穷人呢,况且我也没对软件进行crack,良心也还算过得去所以就有了这篇文章(当然,脚本主要还是从网上抄的,只是自己想找个地方记录一下)。

leetcode-7-reverse-integer.md

7. Reverse Integer
Given a 32-bit signed integer, reverse digits of an integer.
Example 1:

Input: 123
Output: 321
Example 2:

Input: -123
Output: -321
Example 3:

Input: 120
Output: 21

Note:
Assume we are dealing with an environment which could only store integers within the 32-bit signed integer range: [−231,  231 − 1]. For the purpose of this problem, assume that your function returns 0 when the reversed integer overflows.

leetcode-1-two-sum

嗯,虽然以前就就在Leetcode上面刷过题,但是都没有坚持下去。这次准备重操旧业,希望能起码做到一天一道题吧。

首先是A+B问题,按理说是所有题目的开始。但是很遗憾的是我还是提交了三次才AC,感觉自己弱爆了。废话不多说,进入正题。

2019-11-21 随记

所谓人生无常,天下的幸福都是相似的,但是不幸却是万千百态的。最近生活中发生了一些变故,有些事情终究还是落幕了,不论愿意与否,都需要画上句号。同时自己朋友的一些成就让我感到恐惧,让我又有了一些危机感,也开始忧虑和思考起了自己的未来与人生。

Migrating to hexo from hugo

先辈们说:Don’t Reinvent The Wheel, Unless You Plan on Learning More About Wheels,反正就是不要重复造轮子,因为这本身是一件浪费时间的事情。

最早的时候我是使用Wordpress的,那个时候是还是LAMP、LNMP满天飞的时代,各种一键脚本层出不穷,虽然我不一定会用,但是事实证明我总是重复地去配置,也没有整理成自动化的脚本最后对于我掌握这门技巧还是没有任何实质性的帮助。就这样用了很久很久,博客也得到了比较好的发展也有不少的访问量了,突然发现了Github Pages,而且借助Cloudflare也可以实现半程的HTTPS访问,具体怎么做可以自行Google,这边不作赘述。然后折腾了一段时间之后得到了最优解(也使用过Pelican Static Site Generator):Hexo+NexT。当然,维护了一段时间之后发现场上除了经久不衰的Wordpress之外还出现了GravGhostTypecho等优秀的CMS搅局者,但是这些都没有吸引住我的目光,直到GoHugo

Manjaro Taste

之前有尝试过Arch Linux,但是因为arch本身折腾的属性实在是太过浓重(什么都需要自己进行配置),因此就“浅尝辄止”了。
最近在看到了这条信息:Manjaro Linux的两项大胆举措 ,发现的重点有四个:1. 基于Arch Linux 2. 商业公司驱动 3. 使用了不开源但是兼容性更好的FreeOffice 4. 预装了N卡驱动免折腾 。在稍作查询之后我发现Manjaro对硬件兼容性的支持也很好,联想到最近使用Ubuntu 19.04的卡顿感(尤其是SSD下开机速度基本是2分钟),旋即决定尝试一下这个新鲜(对我而言)的系统。

Daily Trivials

其实日常的工作和学习中出现问题最多的倒不是一些比较大的课题,都是一些小问题小毛病,因此最多的是troubltshooting和tips。

这篇文章讲用于记录我日常遇到的一些问题的解决和一些小的hacks。话不多说,let’s begin.

  • start zookeeper error: ERROR Unexpected exception, exiting abnormally (org.apache.zookeeper.server.ZooKeeperServerMain)
    java.io.IOException: No snapshot found, but there are log entries. Something is broken!

手动删除掉zookeeper下的数据后可以正常启动 rm -rf /usr/local/var/lib/zookeeper

  • nginx测试配置是否正确

The -c flag indicates a certain configuration file will follow; the -t flag tells Nginx to test our configuration.

nginx -c /etc/nginx/nginx.conf -t

  • tigervnc-server 无法启动问题
    Fatal server error:
    (EE) Cannot establish any listening sockets - Make sure an X server isn’t already running(EE)

推荐使用Beancount来记账及部署私服记录

郭大神的《在Google的這四年》系列文章中提到了他是一个重度记账用户,他选择使用beancount 来进行他的日常记账工作,于是从这里我接触到了double-entry accounting,也就是复式簿记啦,感兴趣的可以自己主动去google具体的原理等,其实我也只是一知半解,仅停留在知道是啥而已。但是其实账目相平,从不同的桶将豆子都来倒去的原理让我耳目一新,因为之前自己的记账方式太过原始,只是简单记录下自己的花销等。当消费习惯引入了信用卡,花呗等贷记方式之后就会发现记账变得非常困难(比如还款和具体交易金额无法区分),只是能看到自己的花费而不能明白如:自己的钱从哪来,又到了哪去这个问题。于是我选择尝试一下beancount。

Manage python project configurations

When working on a python project I’ve been thinking how to manage the configurations in an elegant way, just like the ‘maven-way’(use a placeholder and replace them when packaging). Here are some points I care about:

  1. separate development and production configs
  2. easy to use, no need to include third party packages
  3. safe, will not be committed to git repo by mistake
  4. out-of-box, no need to modify the code to run on production or development environment

Setting Shadowsocks Libev With Obfs

今天是2019年2月5日,农历大年初一。但是今天发现昨天icloud photos加载不出来不是空穴来风,应该是GFW升级了之类导致的,起码在目前的网络环境下(江苏电信),是电脑和手机全线崩,不能访问Google的。

所以第一时间考虑如何修复这个问题。但是对于我而言翻墙成本有以下几个需要考虑的点:

  1. 多用户多端口(小伙伴们合租)
  2. 上网习惯了PAC模式自动切换代理开关
  3. PAC模式可以随时新增网址(算是第2点的补充,这个列表需要不停地update)