10年老烟龄,我是怎么戒烟的

2018年 我已经有10年烟龄。 在这10年里,我时时经常沉醉在其中。通宵的电脑前、回家的夜路上、酒桌朋友间。 我也相信这是一种陪伴… 在这个过程中尝试过多次戒烟,比如每天少抽一点,买包更好的烟省着抽,改抽雾化器,改抽IQOS等,都以失败告终,最终为10月这次戒烟成功埋下经验。 一、动机 我为两件事情戒烟, 每天一包烟咳嗽感觉不舒服。 工位不能抽烟,每次下楼抽烟打断思路。 二、周期 一旦戒烟,体内的大多数尼古丁会被新陈代谢,并在48-72小时内排出体外 – 网络 也就是说一旦3天不抽烟,剩下的就是心理作用。 三、契机 找这么一个时间,满足下列场景 你一人 呆在一个房子里不愁吃喝,保证足不出户 房间里没其他人人惹你(心烦意乱容易点火) 工作不找你麻烦 这么一个契机刚好是2018年10月1日~7日。 我因此成功一个人在房子里呆了7天没出进户门,没买烟。没抽烟。 就这么风轻云淡的戒烟成功。 到现在快两年了哈哈哈哈哈 又是一年国庆长假,你是否会选择在家戒烟?

保持啃食

理解需要时间 买了一本书,看的云里雾里的,1/4就看不下去了,一扔就快2年。最近有大把的时间,又把没读完的书都翻出来看。以前懵懵懂懂内容翻一遍就很顺滑的理解了。 这个感觉就像村里有千亿人口,通过口口相传,争斗博弈,终于在一年后他们达成了共识。从此大家对同类政策的接受和理解能力就从2年缩短到了2秒。 精神需要焦点 最近很容易瞌睡,大致找到了原因。如果大脑没有关注某件事情上,就很容易涣散,这个事情可能是写作、编程、看电影、打游戏、跑步、交谈等等。这种涣散的感觉就像电脑要休眠,一群精力充沛的神经元打着瞌睡。 把精神关注在具体的某件事情上,就不瞌睡了。这种感觉就像一群神经元在指指点点某个事物。 兴奋需要砥砺 精神聚焦也可能是浑浑噩噩的清醒着,眼前现实世界像是遥远的世界。平时臭番薯烂鸟蛋的难度让人索然无味,警觉全失。 危险面前求生本能,能让人感官系统全线打开,听觉、视觉、思考能力直线上升。退而求其次可以寻找困难,用适当的困难保持兴奋。 保持啃食 让我想起来东北的冻梨、冻豆包。用门牙一点点啃下来很甜,很香。如果我们这一段路就是平凡人保持不了旺盛的创造欲和求知欲,那就保持有所啃食的状态。 保持饥饿、保持愚蠢… 保持啃食

安装Harbor

找一个正式离线包下下来 https://github.com/vmware/harbor/releases wget https://storage.googleapis.com/harbor-releases/release-1.5.0/harbor-offline-installer-v1.5.1.tgz 解压他 tar xvf harbor*installer* 配置他 cd harbor vim harbor.cfg # 搞一个域名是正道毕竟是公网要访问呢 hostname = harbor.trylife.cn # 弄一个https也是很重要的 # 第一证书都有免费的 # 第二看起来也安全的样子 ui_url_protocol = https # nginx CA证书放置的位置 ssl_cert = /data/cert/server.crt ssl_cert_key = /data/cert/server.key # 设置下邮件用来接收通知 email_server = smtp.mydomain.com email_server_port = 25 email_username = sample_admin@mydomain.com email_password = abc email_from = admin <sample_admin@mydomain.com> email_ssl = false email_insecure = false #UI界面默认密码 等会用到 harbor_admin_password = Harbor12345 # mysql密码还是要改下 # 如果要重新install改了密码一定要把数据库重置下 db_password = V5JUCUswPWXVgcCN .

Text File Busy

因为这个文件正在运行,所有无法覆盖? scp: /app/{name}: Text file busy 解决方法1:杀死正在运行的程序 ps -aux | grep {name} kill -9 {pid} 但是我杀死了这个进程,我的服务就中断了。 解决方法2: 想一个不中断服务的方法?

从拼体力到拼脑力

从一个项目(也许是一个新的团队)刚开始我们发现有很多事情要做、从理解为什么要干这个,到服务器准备、数据库建模、项目初始化、到担心这玩意到底能不能行; 从产品的角度他们也在想赶紧试试行不行,这就是从上游到下游的快速是错,研发必定是很忙,只是这种忙相对来说是一种体力忙。 这感觉就像新兵连三个月体能训练。 在项目进入上升苗头的时候、我们就要进入拼脑力的时期了、这里说拼脑力是因为脑力更重要了,再继续只拼体力要被累死,有几项是我觉得这个阶段RD可以考虑的事情: 培养新欢 在电影《蜀山传》白眉说“我要飞升到另外一个空间,找寻更厉害的武器队伍血魔。” 在整个团队培养一个运行更高效的语言习惯 比如说我们从PHP向Golang过度 这个问题主要是站在用户的体验角度思考,因为你将服务更多的人。为更多的人节省时间。这里就比如说请求时间。 享受服务 我们虽然成功有望但是还是在一个和时间奔跑的阶段,在之前的奔跑过程中,有小伙伴可能已经掉队,有小伙伴得到成长冲了出来。团队相对凝聚、但是团队的野心是不会收敛的,所以需要复制时间的能力。 对外 选择更多使用云服务 -还不是世界顶尖公司、那基本说明要做的服务还没有云服务服务不了的 对内 更多选择服务化 拆分成微服务化的子系统 提供代码生成 人与人之间的服务化 凝聚灵魂 试错阶段的代码会比较粗糙,阶段一过服务的人更多,需要更精心的质量。

为什么变量名在类型前边?

var name string 想到一个变量的时候,先想到变量名或者先想到类型都有可能 但是往往想到变量的名字更多一些; 那为什么会想到变量的名字更多一些呢? var name string var age int var height int 第一个原因可能是变量名更加形象和有指向 年龄 姓名 身高 体重 另一个原因可能是是类型的种类总是少于变量名的、在大脑里查询并不高效。 这里还是要推荐一下我特别认同的一段话来自《写个大家看的设计书》 一旦能够说出什么东西的名字,就会很容易注意到它。 你就会掌握它,拥有它,让它受你所控。 那为什么少量频繁出现的数据所引起来并不高效呢?

Drone将VUE项目持续部署到阿里云OSS

1. 最终效果 1.1 步骤简介 Drone 可以根据配置把过程切割成一个一个的操作管道任务。 clone 每次构建都会克隆一次代码、这是一个毛病但是暂时没别的办法 restore-cache 复制上次构建的node_modules缓存 build 构建的过程 rebuild-cache 缓存node_modules deployment-to-oss 把dist/* 同步到阿里云OSS notify 发送(邮件)通知 1.2 访问设置了两种类型 oss没有办法支持history路由模式 只有根目录才自动寻找首页文件 1.2.1 https://{your-cdn-domain}/ ├── 24 │ └── static │ ├── css │ │ ├── app.30790115300ab27614ce176899523b62.css │ │ └── app.30790115300ab27614ce176899523b62.css.map │ └── js │ ├── app.b22ce679862c47a75225.js │ ├── app.b22ce679862c47a75225.js.map │ ├── manifest.cc150ee5e77c28d4c563.js │ ├── manifest.cc150ee5e77c28d4c563.js.map │ ├── vendor.7fed9fa7b7ba482410b7.js │ └── vendor.7fed9fa7b7ba482410b7.js.map ├── 25 │ └── static ├── 26 │ └── static └── index.

About

life's short, try more ...

Clean Architecture

整洁架构 减少加班 减少人力 第一章 设计与架构究竟是什么? 架构、设计 密不可分 目标 软件架构的终极目标是,用最小的人力成本来满足构建和维护该系统的需求。 指标 工程师人数 生产效率 千行代码 每行代码变更成本 工程师生产力 问题 我们可以未来再重构代码,产品上线最重要!” 但是结果大家都知道,产品上线以后重构工作就再没人提起了 错误观点是:“在工程中容忍糟糕的代码存在可以在短期内加快该工程上线的速度,未来这些代码会造成一些额外的工作量,但是并没有什么大不了。” TDD长一点比非TDD节省10% 想要跑的快,首先要跑的稳 ie. suit sale code merge. 30min merge , 4hour hotfix & report. 第2章 两个价值维度 行为 架构 software soft vs hard ware 艾森豪威尔紧急重要矩阵 紧急的永远不重要 重要程度 架构 > 系统行为 业务部门原本就是没有能力评估系统架构的重要程度 第3章 编程范式总览 结构化编程(structuredprogramming)- 面向对象编程(object-orientedprogramming) 函数式编程(functionalprogramming) 三个编程范式都是在1958年到1968年这10年间被提出来的,后续再也没有新的编程范式出现过。

《社会性动物》

https://weread.qq.com/web/reader/fcb322c071f3f438fcb5e8ckc81322c012c81e728d9d180 [美]艾略特·阿伦森,乔舒亚·阿伦森 1 什么是社会心理学

Authority 权威 个体维度 群体维度 时间维度 挑战权威是对个体群体历史经验的挑战。

CSAPP

references: http://www.cs.cmu.edu/afs/cs/academic/class/15213-f15/www/schedule.html https://www.bilibili.com/video/BV1iW411d7hd https://www.bilibili.com/video/BV19X4y1P7zW?p=1 16进制2进制对照表 DEC 0 1 2 3 4 5 6 7 HEX 0 1 2 3 4 5 6 7 BIN 0000 0001 0010 0011 0100 0101 0110 0111 DEC 8 9 10 11 12 13 14 15 HEX 8 9 A B C D E F BIN 1000 1001 1010 1011 1100 1101 1110 1111 Machine-Level Representation of Programs 3.

ElasticSearch

ES为什么快? What is Elasticsearch You know, for search (and analysis) Elasticsearch is the distributed search and analytics engine at the heart of the Elastic Stack. Logstash and Beats facilitate collecting, aggregating, and enriching your data and storing it in Elasticsearch. Kibana enables you to interactively explore, visualize, and share insights into your data and manage and monitor the stack. Elasticsearch is where the indexing, search, and analysis magic happens.

Golang

Struct go内struct字段顺序和内存中一致。

lua

菜鸟教程 Hello World -- hello.lua print("Hello") lua hello.lua 注释 -- 单行注释 --[[ 多行注释 多行注释 --]] 全局变量 全局变量不需要声明 print(b) b = 10 print(b) 删除全局变量就给他赋值为nil 数据类型 数据类型 描述 nil 这个最简单,只有值nil属于该类,表示一个无效值(在条件表达式中相当于false)。 boolean 包含两个值:false和true。 number 表示双精度类型的实浮点数 string 字符串由一对双引号或单引号来表示 function 由 C 或 Lua 编写的函数 userdata 表示任意存储在变量中的C数据结构 thread 表示执行的独立线路,用于执行协同程序 table Lua 中的表(table)其实是一个"关联数组"(associative arrays),数组的索引可以是数字、字符串或表类型。在 Lua 里,table 的创建是通过"构造表达式"来完成,最简单构造表达式是{},用来创建一个空表。 nil 对于nil的比较需要加上双引号 -- 对nil比较需要加上双引号 print(type(x)) print(type(x) == nil) print(type(x) == "nil") boolean nil false 都是false

技术管理

信任下属 目标规划 帮团队抗责任 替团队某利益 随和,下属愿意跟你交流是你的成功 真心待人,别人才会真心待你 培养下属成为M 能力框架 欣赏能力 给与机会 招聘 平均值以上,正向收敛