Archives
Feb 2019
Jan 2019
Dec 2018
Nov 2018
Oct 2018
Sep 2018
Aug 2018
Jul 2018
- 蛤?什么是 raft 协议?
- LSM 和 sstable
- 红黑树
- MySQL 性能小技巧和在 Django 中的应用
- 每个程序员都应该知道的延迟数字
- Mysql 的 wait_timeout 问题
- 动态规划(LeetCode 413. Arithmetic Slices)
- 艾宾浩斯记忆曲线
- 彭博到底是做什么生意的?
- redis 常见问题
- 大规模字符串的匹配
- Python 中的 GC(垃圾回收)
- 在 Python 中优雅地处理 SIGTERM 信号
- 在阿里云上为内网VPC搭建NAT出口服务器
- redis 中如何给集合中的元素设置 TTL
- 一篇简单的 Python gRPC 教程
- Go语言读写文件相关函数对比
- Go语言处理 CSV 文件
- 知乎移动端接口分析
- 炒股记
- OAuth2 协议详解
- 消息队列:从一脸懵逼到 Kafka
- 如何破解被 JS 加密的数据
- 市面上的一些 RSS 工具
- 序列化协议的选择 json vs msgpack vs thrift vs protobuf
- 互联网创业的方向
- Get 和 Post 方法的选择和URL的设计
- 父进程退出后如何退出子进程
Jun 2018
- 后端工具和算法集
- 软件工程中的 “3” 的规则
- Python 中如何压缩文件
- curio 的 http 库 asks 代码解析
- Python 操作 ssh
- Python 转义 html 实体字符
- Python 中的 queue 模块
- 阅读《Python hitchhiker》笔记
- Python functools 中有用的一些函数
- 短视频与机器学习
- 《算法设计与分析基础》笔记
- Andrew Ng 的公开课笔记
- 搜索阅读笔记
- APUE 阅读笔记
- 学习 Startup Engineering
- 技术选型的技巧
- mysql 基础知识(8) - 主从复制
- 使用 Ansible 部署服务
- tmux cheatsheet
- Python 的内置类型和函数
- django 单元测试
- django 国际化
- django 页面缓存
- django 静态文件
- Django views 视图
- 知乎推广的一些小技巧
- 使用 docker-compose 编排容器运行
- 使用 Python 提取字幕文件
- 爬虫利器 Chrome Headless 和 Puppeteer 最佳实践
- Python爬虫利器——lxml 和 xpath 表达式
May 2018
Apr 2018
- Python time 模块
- 微信开发笔记
- django dump to csv
- CSS 布局基础知识
- Python coroutine 以及和 Goroutine 的对比
- 函数式编程中的 Pattern Matching (模式匹配)
- [译] 用 Python 编写一个模板引擎
- Linux 上的 DNS 缓存
- 读《The Anatomy of a large-scale hypertextual Web search engine》
- 爬虫 IP 封禁与反封禁
- The Problem with Pocket
- pv - 在 Linux 下查看命令执行进度
- [译] CSS 选择器备忘录(cheatsheet)
- mysql 基础知识(6) - Join
- Go 语言和爬虫
- mysql 基础知识(5) - 聚合语句(group by)
- 完全理解 SQL 的内在逻辑
- 跳表(skiplist)
- Python Argparse 库的使用
- Linux 命令行中使用带颜色的输出
- Android SharedPreference
- Android 开发的一些 tips
- Android 连接 WiFi
- Maven Basics
- 使用 Gson 解析 json 文档
- 比特币相关技术调研
- [zz]如何高效地学习编程语言
- sqlite3 和在 Python 中的使用教程
- Linux 中的 epoll 和 nginx 中的应用
- Linux 磁盘管理命令
- 关于 CTO 的一些想法
- Go 语言数据库教程
- 给产品经理的代码课
- fzf - 命令行模糊查找器
- fd - 更好的 find 命令(fd - A nicer find command)
Mar 2018
Feb 2018
Jan 2018
Dec 2017
Nov 2017
- bug 错题本
- pdb
- 暂时没用到的软件清单
- sklearn 入门笔记
- 网页与API的常见频次限制与破解
- 如何评价红黄蓝事件?
- 安卓开发中的Context
- 为安卓编译64位的dropbear
- 安卓反编译的一些笔记
- 安卓的 AsyncTask
- Linux 内存与进程管理(ps/top/kill...)
- 分布式系统中的锁
- html 的一些小知识和陷阱
- 解决小内存机器 MySQL 总是 OOM 的问题
- mysql 基础知识(4) - 用户和权限
- django templates
- mysql 基础知识(2) - 插入删除修改
- C++ 字面量
- Python 中不爽的地方
- RocksDB 基础操作教程
- RocksDB 常见问题
- RocksDB 基础概念教程
- 不要把你的业余项目搞得过分复杂
- Python 的多线程和多进程
Sep 2017
Aug 2017
Jul 2017
- iterm2 tricks
- python-readability 源码阅读
- 忙等待
- html Node vs Element
- make 和 premake
- C的编译、调试与静态检查
- PEP8 中需要注意的地方
- python signal
- shell 编程教程
- docker 小技巧
- open sourcing a django project
- 如果遇到刚入职场的我 —— 小道消息
- curio
- android public key pinning
- android intent
- android.os.handler
- android vpn service
- simhash
- mysql 基础知识(1) - 查询数据
- the ipinfo story
- 如何使用 letsencrypt
Jun 2017
- docker 基础概念
- sudo passwordless
- 为爬虫搭建代理集群
- dockerfile 基础
- django 小技巧
- Thrift RPC 框架
- uwsgi 和 wsgi 协议
- squid proxy
- Gracefully shutdown inside a event loop
- steal focus from chrome omnibox on new tab
- 阅读 redis 源码
- running chrome extension from command line
- chrome spider
- MySQL 备份与恢复
- developer mis-charging
- vim 中的拼写检查
- axios and fetch
- Chrome Extension runtime
- Chrome Extension Tabs
- Chrome Extension storage
- JavaScript snippets
- Chrome extension cookies
- EcmaScript Set
- JavaScript Move Element by Draging
- thinking in vue
- Chrome 扩展插件开发
- 在 Mac 上安装 neovim
- 学习 redis 的基础命令
- JavaScript Selection and Range
- Unicode
- Django ORM的使用
- Python 3 中的 Enum
- using mysql with django
- MySQL “incorrect string value” error when save unicode string in Django
- Django Admin 后台教程
- Bootstrap Basics
- Git 使用技巧
- Android am command
- 使用 Chardet 自动检测文本编码
May 2017
- CSS remove spaces between inline elements
- Linux 命令行网络相关(curl/wget/nc...)
- redis 实战总结
- linuxbrew
- caputre iOS traffic
- React
- Michael Sipser - Dean of Science
- EcmaScript 6
- Java Notes
- lua
- openresty
- lua coroutine
- Lua 中的迭代器
- jQuery and un-jQuery
- lua 三部曲
- Python `-m`
- do not subclass built-in classes in python
- Python 中复合的 list comprehension
- ad talks
- vim 中生成和使用 tags
- python inspect library
- 电商在中国
- m4 tool
- Python doctest library
- markdown notes
- readline library
- Linux 命令行文本处理(sed/awk/grep...)
- Linux 命令行文件管理
- Jaccard coefficient(杰拉德距离)
- JavaScript DOM API
- Graph Theory
- memcacheq
- ncurses library
- JavaScript 学习笔记
- Chrome Hotkeys
- gitbook
- Macbook tricks
- pthread
- Ngram
- decompile apk
- 关于推广和冷启动的一些想法
- 如何做一个 Code Review
- How to publish your game
- Python 标准库中的容器
- python logging library
- python3 venv
- 用于替代ajax的 fetch API
- List of OpenGL online tutorials
- 跨过长城的镜像
- HTTPS 和 SSL 相关信息
- 动态规划
- 基础 socket 编程
- 如何让安卓手机插上电源自动开机
- python random library
- Python pip 极简教程
- Python 中的异常总结
- 如何让技术博客有更多流量
- steal money by payed phones
- HTTP 缓存介绍
- 理解程序的执行过程
- Python 中的序列化库
- Python 中的 bytesio/stringio
- 命令行压缩图片的工具
- converting mp4 to gif
- profitable side projects on HN
- Crontab 的语法和使用
- C/C++ 中的 RAII
- reading Calculas With Python
- 学习 greasemonkey 教程
- kNN algorithm
- YAML 语言和 Python 中的使用
- C语言中的 vargs
- get and change android device id
- Image Hashing with Python
- 读 Web Scraping with Python
- 为什么要写爬虫?
- Python 读写 CSV 文件
- okhttp
- vysor.io
- 安卓的文件系统
- cross compiling on android
- 安卓的adb工具与命令行
- Linux 命令行账户管理
- TCP 握手常见考点
- 笔记生涯
- Configuring OpenWrt in TP-Link 702n
- C语言中的 setjmp/longjmp
- C语言中已经废弃的函数
- 如何利用碎片时间
- vim goto 与历史导航