12 千年的塔

尚未进行身份认证

Go语言和MySQL技术专家,著有《Go语言核心编程》一书。

等级
TA的排名 1k+

如何提升工作效率

1.减少干扰手机置为静音或者放置在柜子里,戒除手机上瘾。定时打开邮箱收邮件,而不是每一封邮件都有提醒。关闭及时工具软件的消息提醒功能。2.减少多任务的切换。尽量不要再多个任务间来回切换,专注于做一件事情。如果迫不得已,需要同时做多个事情,一定要保存上下文,最简单的方式是为每一个任务记录一个文本文件的上下文。这有点类似于操作系统内存不够时使用虚拟内存的场景,每一个文本文件就类似于保存在磁盘...

2018-12-05 16:53:56

软件开发工具的作用

软件开发不是工程更多的像是一门艺术;不但靠逻辑更需要靠直觉;软件开发中辅助设计的工具只是一个工具,不要为了工具而去用工具,发挥工具的好处,吸收使用多个工具,不生搬硬套。认识到每个工具都有其局限性,因为每个工具只是表述软件设计或者开发中的一个状态,其是一个静态的镜像,其不能真实的反馈整个软件全貌。工具只是辅助我们思考、设计和描述,而不要把工具用成一种负担;灵活使用工具,天马行空的使用工具,而不...

2018-10-25 01:36:42

他人工作多年后的总结

1.找一个好公司,使用一个开发平台,构架或语言,专注做5到10年,现有深度再有广度,不要为了高工资过早追求管理角色;2.从长远来看,拥有个人项目、阅读、写博客和参加访谈都会有助于你成为一个更好的开发人员;3.成为开发者社区的一部分,努力参加线上线下活动;4.感到厌倦时,好好的休息一段时间...

2018-10-25 01:01:28

《Go语言核心编程》一书正式上市

背景从2012年开始接触Go,一直很喜欢这门语言,市面上几乎所有的图书我都会购来阅读,但是总是感觉缺少一本讲述Go语言的三大核心:类型系统、接口、并发的图书,这么多年过去了,一直没有人写,最后我决定动手写一本这个主题的图书,书名叫《Go语言核心编程》。经过近1年的准备,图书已经上市,希望喜欢的小伙伴关注和支持。这本书有啥特点不是前篇一律的堆积罗列语法。本书精炼的使用一个章节介绍了Go语言...

2018-10-09 15:05:01

linux自动化远程管理工具gossh开源了

gossh1.gossh是什么gossh是一个极简的ssh工具,使用go语言开发,被编译一个二进制程序,无任何依赖,真正开箱即用。用于远程管理linux(类unix)机器:包括远程执行命令和推拉文件,支持单机和批量并行执行模式。2.gossh能干什么gossh提供3种核心功能:连接到远程主机执行命令。推送本地文件或者文件夹到远程主机。拉取远程主机的文件到本地。...

2018-09-12 10:12:21

回车换行符的历史

转自 http://www.ruanyifeng.com/blog/2006/04/post_213.html 计算机历史不到100年,但是有些历史值得了解。今天,我总算搞清楚”回车”(carriage return)和”换行”(line feed)这两个概念的来历和区别了。在计算机还没有出现之前,有一种叫做电传打字机(Teletype Model 33)的玩意,每秒钟可以打10个字...

2018-02-27 10:08:28

git 文件级别diff和回滚

git 文件级别的比对git diff filename 比对working和stage区域文件差异git diff –staged filename 比对stage和HEAD之间的文件差异git diff HEAD filename 比对working和HEAD指针之间的文件差异git diff commit-id filename 比对commit-id视图下文件和work...

2018-02-21 18:02:08

git object system

git object system画了张git对象系统的图,对git的底层工作机制的理解很有好处。对象系统 git diff 相关 git reset

2018-02-21 12:14:08

git 使用vimdiff 格式显示比对文件

gitdifftool可以指定外边的diff工具来显示文件差异,可以使用gitdifftool–tool-help查看difftool可用的工具如果不指定默认的difftool工具,需要使用–extcmd参数指定具体的diff工具,比如:gitdifftool--extcmdvimdiffcache/pris.cgitdifftool--extcmdic...

2018-02-11 11:36:35

vim 虚拟模式下替换操作

最近使用gitbook写作,有个vim的高级替换特性学习了,记录一下。行级模式(使用V进行选择的)V选中后 输入:s/old/new/g  进行选中行的替换操作。visual模式(使用v进行选中的)  选中后 输入:s/old/new/g,默认的整个选中的虚拟行都会替换选中后 输入:s/\%Vold/new/g  这个替换精确的操作选中的区域,而不会操作选中的所有行

2018-01-28 12:00:14

知识焦虑时代如何进行学习

知识爆炸的现代,不要说一个人博古通今,就连一个行业的知识也变得非常的庞大,即使人穷其一生都无法学习完,我们该如何应对这个时代的知识焦虑感,今天听了《罗辑思维》-我们这一代的学习,结合自己的感受,做了下总结面对的环境:1.海量的知识,并且在快速的演进2.海量的知识里面有海量的垃圾知识3.人与人的交互越来越密切,时间被分割无数的小碎片解决办法:1.合理利用碎片时

2018-01-04 21:10:01

计算机中间层理论

Any problem in computer science can be solved by another layer of indirection.计算机科学领域的任何问题都可以通过增加一个间接的中间层来解决。

2017-12-11 11:12:22

golang-defer坑的本质

本文节选自https://tiancaiamao.gitbooks.io/go-internals/content/zh/03.4.html作者的分析非常透彻,从问题本质分析,就不会对defer产生的副作用产生迷茫。defer坑的本质是:本质原因是return xxx语句并不是一条原子指令,defer被插入到了赋值 与 ret之间,因此可能有机会改变最终的返回值。defer使用时的

2017-09-04 13:21:43

努力成为10x Developer

努力成为10x Developer待续

2017-08-31 21:17:20

《刻意练习》读书笔记

刻意练习的方法在学习区学习放慢练习分解练习对训练效果及时反馈遇到无法突破寻求新方法大量的练习:再薄弱区的大量练习(1万小时理论) (怎么坚持:兴趣--内在动机--激励)对大脑的几点认知1.大脑的脑神经元在成年后不会再发育,但是大脑的神经区域可以被重新使用(盲人的视觉大脑区域被听觉和触觉占据)2.大脑的长期记忆和短期记忆,有效的将短期记忆转换为长期记忆,是

2017-08-31 21:09:40

go context专题(四)- context 最佳实践和相关争议

context的设计思想context包内Context对象设计的思路不是创建一个对象就直接一杆子到底就传递这个对象针对每个子goroutine可以自己封装Context对象后在逐层朝后传递。为什么这么设计?原因就是不同的goroutine 的需求不一样,传递给子goroutine的可能是:WithCancel WithDeadline WithTimeout WithValu

2017-08-31 20:17:30

go context专题(三)- context 工作机制和代码分析

go context专题(二)- context 设计思想和用法

2017-08-29 20:58:45

go context专题(二)- context设计目的和基本数据结构

go context专题(一)- context设计目的和基本数据结构

2017-08-29 20:56:48

go context专题(一)- go 并发编程基础设施

go 并发编程基础设施go 对并发的支撑有两个层次,一个是语言的层次上支持,一个是库的层次上支撑。前者go 并发编程的基础,后者是一种基础设施,为一个通用问题提供一个通用的解决方案go 并发语言层次支撑go 并发标准库层次支撑–context标准库本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮

2017-08-29 20:14:37

DBA的能力模型

DBA的能力模型

2017-08-25 16:19:28

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!