主页

给 Markdown 程序员的写作能力提升指南

前言最近完成了一次多次打磨的技术分享,在准备分享和进行分享的过程中,遇到了很多问题,而造成这些问题的根源,就是自己日渐低下的写作水平和表达能力。 在本篇文章中,我会先基于自己的看法,分析写作能力对程序员的作用,然后基于自己的参考和实践,给出一个比较标准的程序员写作的套路,最后给出一些常用的辅助程序员写作的软件,并分析这些软件的特点。 写作能力真的有用吗很多工科的学生会认为写作能力对个人水平的提升没

自我时间管理

Overview现在开始尝试一个更规范的自我时间管理机制。新的机制主要由三个工具支撑,番茄土豆、坚果云,VSCode。番茄土豆主要用于管理细碎的时间和待办事项,坚果云用于存储更宏观的计划和日志,而 VSCode 用于管理坚果云的文件。 制定 OKR每两个月需要制定一次个人 OKR,落实到 okr.md 文件。为了聚焦,Objective 一般定义为三个以内。Objective 需要定义 Key

在 macOS 中使用命令行打开 VSCode

VSCode 相信已经是大家的必备编辑器了,轻量,免费。在 Linux 环境中, VSCode 可以通过图标启动,也可以通过命令行启动。例如,我想在 VSCode 中打开这个文件夹,可以这样:1$ code someCodeProject 但是在 macOS 下默认是不能操作的,因为没有 code 这个程序。我们可以伪造一个: 12345678$ cat code#!/bin/bashTARGET

安装 Ubuntu Workstation 之后要做的事儿

安装 Ubuntu Workstation 之后要做的事儿 Pre最近自己心爱的 Dell Latitude E6430s 频繁死机,以为是硬盘问题,格式化硬盘重装系统问题依旧。硬件检查才发现是一根内存有了问题,取出问题的内存后一切正常。 但删掉的系统是需要重装的,经过一些实践后,我选择了 Ubuntu 16.04 LTS 作为我新的操作系统。 Why都 2019 年了,为什么还要选择老旧的 Ub

那些年,我们一起改过的配置文件 -- 常见配置文件类型简介

Overview 在程序员日常开发中,配置文件是一个非常常见的需求。 配置文件可以定制程序的逻辑,一段代码生成的程序可以灵活地适应多个需求。几乎所有的程序都需要或者隐形需要配置文件,因为它们需要根据配置文件来决定在代码中使用怎样的逻辑来运行。 对于大部分的程序来说,他们需要的配置文件常常是一个 K-V 类型的结构,可以理解为一个 Key 为字符串, Value 也为字符串的一个 Map。字符串可以

常见数据库简介

Overview 数据库在后端程序员中应该是最常使用到的中间件了,今天我们来侃一侃常见的数据库。 MySQL 派系MySQL 无疑是世界上最火热的数据库了。因为太过火热,它也有很多不同的分支,这些分支会有一些不同的特点。 MySQL在国内来说,MySQL 是一个最常见的数据库了,也是 MySQL 派系中最主流的分支,目前由 Oracle 公司维护。 特点: 源代码使用 C 和 C++ 编写,性能

常用的文件系统简介

Overview 文件系统应该是计算机软件当中比较底层的部分,可能很多程序员都不会接触到。今天简单地学习了一下,做下笔记。 FAT 文件系统FAT 文件系统起源于二十世纪七十年代,当时用于 DOS 系统。当时的设计比较简单,后来由于存储媒介的发展渐渐有一些增强的版本出现。所以现在主要包含这这几个版本:FAT8,FAT12,FAT16,FAT32。这几个版本后面带的数字是啥意思呢?其实就是「簇」的编

理解 Nsq (三)基础概念

Overview上一节中,我们成功编译了 nsq 和对应的基础组件,并使用配套的 cli 工具完成了简单的生产者消费者模型。 本节我们主要来了解 nsq 的一些基础概念,并基于这些基础概念,给出 nsq 的架构图,最后分析 nsq 的架构特点以及生产环境的可用性运维以及限制和取舍。 Featuresnsq 主要有以下功能: 支持分布式的拓扑结构,避免单点 支持无缝水平扩展(没有 broker 的

多级缓存的设计与实现

Overview 总览在高并发量的后端业务中,多级缓存是一个非常常见的设计。事实上,多级缓存策略在计算机硬件也是普遍存在的。 为什么会有多级缓存?通常缓存都是比原数据要小的,设立缓存的目的很简单:某些数据经常用到,我们不想每次都去最深的地方(这里一般是指数据库)去找,所以我们就在更方便取到数据的地方把这些数据保存起来。 那么,为什么要用多级缓存呢?对于所有的数据来说,并不是每一份数据使用的频率都

为什么不建议在 Redis 使用大 Key

Preview 公司里某位工程师小斌发现在一个 Redis 集群中的 some_big_list 经常出现慢查询,而且 QPS 特别高。初步定位是出现了一个热点的 Key。12newexplore> llen some_big_list500000 上面的命令发现,这个 some_big_list 是一个大 Key,导致 Redis Server 的服务器 CPU idle 很低,结果出现了