2023
- 30 / 12 2023年,再见
- 15 / 04 你根本不知道用户想要什么
- 05 / 04 如何组织你的代码结构
- 28 / 01 软件研发体验调查报告 2022
- 14 / 01 熟练的开发
2022
- 28 / 12 2022年,再见
- 04 / 09 如何有效授权
- 03 / 09 简单一点
- 27 / 08 上帝没来
- 31 / 07 Coach 的套路:GROW & ORID
- 28 / 07 A 雇佣 A,B 雇佣 C
- 26 / 07 吃掉那只青蛙
- 24 / 07 公开演讲的一些心得
- 23 / 07 博客相关的一些记录
- 21 / 07 拉姆斯菲尔德和他的规则
- 19 / 07 战略性思维
- 18 / 07 手机当做 PC 或者 Mac 的摄像头
- 15 / 07 猫和狗的领导力
- 10 / 07 架构设计原则
- 07 / 05 折腾一下小米路由器
- 05 / 05 努力是自己的事情
- 01 / 04 熊来了
- 01 / 03 逃避问题的蛤蟆
2021
- 31 / 12 2021年,再见
- 28 / 11 敏捷研发的关键性原则
- 25 / 11 人月神话笔记
- 23 / 10 管理者核心能力修炼
- 26 / 09 QECon的零碎笔记
- 30 / 08 Python 和 MongoDB 其实很配
- 21 / 08 PEP8 Python 编码规范
- 09 / 08 程序员的节操
- 07 / 08 Python 基础简明教程
- 14 / 06 You and I
- 10 / 06 又一年黑客马拉松
- 01 / 05 Netflix 的文化手册
- 06 / 04 时间管理的小技巧
- 13 / 03 产品 - 我所学到的
- 02 / 03 微服务是什么鬼
- 10 / 02 软件质量成本
- 01 / 02 Jenkins Pipeline 一点通
- 23 / 01 敏捷中的以终为始
2020
- 30 / 12 2020年,再见
- 26 / 12 2020年做的一个DevOps调查报告
- 16 / 12 MacOXS上快速启动一个ELK
- 08 / 11 给MacBook Pro升级硬盘
- 20 / 09 黑客马拉松后记
- 14 / 09 一个小故事
- 10 / 05 分享
- 10 / 05 现场互动方案
- 07 / 05 Parallels Desktop里的虚拟机的Docker无网络
- 02 / 05 N1用Docker刷旁路由
- 26 / 04 部署一个私有的在线绘图服务
- 04 / 04 命令行配置备忘
- 29 / 03 CentOS安装最新版Nodejs
- 28 / 03 nginx常用命令
- 28 / 03 用Docker部署NextCloud到N1
- 19 / 03 PowerShell和Cmd和谐共处
- 14 / 03 在ParallelDesktop虚拟机中访问Mac的IP
- 09 / 03 在N1上快速部署一个博客
- 08 / 03 Linux的压缩和解压
- 07 / 03 nano的简单用法
- 07 / 03 Linux里的计划任务
- 06 / 03 CentOS里的防火墙配置
- 04 / 03 注册域名的好地方
- 02 / 03 在线面试编码能力
- 29 / 02 Linux中的文件搜索
- 28 / 02 详解Linux里的 /etc/passwd
- 23 / 02 Linux免密码登录SSH
- 23 / 02 让vi在保存文件时获得sudo权限
- 23 / 02 Github里的Collection
- 22 / 02 CSS中选择器的优先级
- 22 / 02 文档站点生成工具
- 21 / 02 Linux中的Switch Case
- 16 / 02 Linux里的文件传输
- 15 / 02 在Github Actions中使用Yarn
- 15 / 02 如何快速将SSH指纹添加到known_hosts文件中
- 15 / 02 CSS中的em和px
- 14 / 02 Hexo博客升级记录
- 12 / 02 Linux中的任务管理器
- 12 / 02 Linux中的history命令
- 10 / 02 各平台免费翻译API
- 09 / 02 Linux查看系统信息的命令
- 09 / 02 Linux新建用户没有用户目录
- 09 / 02 免费的FRP服务器
- 09 / 02 斐讯N1的折腾之路
- 08 / 02 蝙蝠
- 08 / 02 MacOSX 活动监视器其他信息都不见了
- 08 / 02 懒和蠢
- 06 / 02 一行代码停止或删除所有Docker容器
- 03 / 02 几种私有云盘解决方案
- 03 / 02 Linux 添加和删除 Swap 文件
- 31 / 01 管理MacOSX的开机启动项
- 31 / 01 Library not loaded: /usr/local/opt/openssl@1.1/lib/libcrypto.1.1.dylib
- 30 / 01 在Linux或者Mac OSX上查找大文件
- 26 / 01 组织Flask项目结构
- 07 / 01 Bash 脚本中的 set -euxo pipefail
- 01 / 01 谢谢,我们很忙
2019
- 25 / 12 通过 Github Actions 自动发布 Hexo 博客
- 24 / 12 2019年,再见
- 23 / 11 在Mac上部署Jenkins
- 12 / 10 假期
- 06 / 10 十月小记
- 21 / 09 PPT基础技巧
- 13 / 08 MacBook和Vmware Tools
- 25 / 06 转发短信的各种方案
- 02 / 06 秦浪传
- 20 / 05 社会人口头禅
- 15 / 05 笑话一则
- 06 / 05 用命令行在Linux同步坚果云
- 28 / 04 在 MacOSX 上 准备 Jekyll 环境的坑
- 27 / 04 山村咏怀
- 20 / 04 Docker一篇通
- 27 / 03 测试左移和开发赋能
- 09 / 03 微不足道的改进
- 26 / 02 软件交付的原则
- 25 / 02 使用VueJS开发油猴(TamperMonkey)脚本
- 24 / 02 用VueJS写一个Chrome浏览器插件
- 22 / 02 反向代理和内网穿透
- 13 / 02 从手机截图报Bug扯到工具论
- 12 / 02 LeetCode第二题 - 两数相加
- 11 / 02 关于吃的几个段子
- 10 / 02 LeetCode第一题 - 两数之和
- 09 / 02 2019年1月书单
- 08 / 02 一些 PyCharm 的使用和设置建议
- 29 / 01 关于 DevOps ,咱们聊的可能不是一回事
- 25 / 01 当你在浏览器中输入“google.com”并回车,会发生什么?
2018
- 24 / 12 2018年,再见
- 16 / 09 用 Python 实现简单的 switch/case 语句
- 29 / 07 Auto Update Your Pypi Package
- 01 / 07 将xmind文件转成可编程数据类型
- 01 / 06 NodeJS起步两三事
- 18 / 05 使用浏览器的HEADLESS模式进行自动化测试
- 11 / 05 Sentry - 处理异常日志的正确姿势
- 08 / 04 说说Python中的单元测试
- 01 / 04 Python 查找重复文件升级版 - photodup
- 22 / 03 使用Python查找目录中的重复文件
- 27 / 02 自动为Flask写的API生成帮助文档
- 26 / 01 在Windows上搭建Jekyll运行环境
- 20 / 01 认识 Python 中的 defaultdict
- 16 / 01 识别图片中的文字 - Tesseract 和 百度云OCR的对比
- 15 / 01 【问题】使用Python将字符串过滤并保留关键字
- 03 / 01 【问题】从一长串数字中找到重复多次的三个数字
2017
- 14 / 12 教你使用50行Python代码刷王者荣耀金币
- 12 / 12 使用ADB无线连接Android真机进行调试
- 10 / 12 在Mac OSX 上配置 Appium + Android 自动化测试环境
- 26 / 09 如何使用Python优雅地处理时间数据
- 16 / 08 让你的项目模板化和专业化 - Cookiecutter
- 27 / 07 xmind2testlink - 快速设计测试案例并导入TestLink
- 26 / 07 你听说过思维导图吗?
- 23 / 07 Windows UI自动化测试的XPATH实现 - WPATH
- 17 / 07 一款优秀的代码高亮库 - rainbow.js
- 03 / 05 在 Windows 下搭建 Appium + Android 自动化测试环境
- 01 / 04 如何开发一个 PyCharm 插件
- 27 / 03 在Windows平台使用IIS部署Flask网站
- 10 / 03 理解 Git Diff 命令
- 09 / 03 上传并发布你自己发明的轮子 - Python PyPI 实践
- 06 / 02 Move on to Python 3
2016
- 04 / 12 总结:Python中的异常处理
- 23 / 11 Gif截屏工具 - GifCam
- 30 / 10 Python装饰器的另类用法
- 27 / 10 详解Python的装饰器
- 23 / 10 说说Python中的闭包 - Closure
- 20 / 10 Python中不尽如人意的断言Assertion
- 20 / 10 Improve Assertion In Python
- 19 / 10 解决 Jenkins中TFS Plugin Mapping错误的问题
- 19 / 10 Chrome, Andriod, JRE, Selenium各种开源工具的国内镜像
- 19 / 10 获取 Google Chrome 谷歌浏览器离线安装包
- 18 / 10 Python中的反转字符串问题
- 18 / 10 Reverse string by word with Python
- 12 / 10 Python中的下划线和魔法方法
- 10 / 10 在Python中查找和替换文本
- 10 / 10 Find and replace text with Python
- 09 / 10 Python中的logging模块
- 04 / 10 读书 - 《霍乱时期的爱情》
- 03 / 10 读书 - 《月亮与六便士》
- 03 / 10 读书 - 《活着》
- 02 / 10 读书 - 《无声告白》
- 01 / 10 两个鸡蛋的问题
- 01 / 10 读书 - 《挪威的森林》
- 01 / 10 读书 - 《西厢记》
- 01 / 10 读书 - 《解忧杂货店》
- 28 / 09 一行代码让浏览器变成记事本
- 28 / 09 读书 - 《傲慢与偏见》
- 27 / 09 使用教育邮箱激活JetBrains全家桶
- 27 / 09 读书 - 《一个人的朝圣》
- 27 / 09 读书 - 《追风筝的人》
- 27 / 09 从C#到Python - 语言特性和概览
- 25 / 09 Python:将数组中的元素导出到变量中 (unpacking)
- 25 / 09 编程语录
- 25 / 09 设置 Python Selenium 中的Log显示信息
- 25 / 09 Turn off logging in python selenium
2014
- 19 / 10 关于软件稳定性测试的思路
2013
- 16 / 07 那些打鸡血的人生
2011
- 14 / 03 走得太远,忘记了为什么出发