自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

喔家ArchiSelf

一半是20多年老程序员的技术生涯,一半是人到中年却仍向往青春的生活感悟,交织起来,是一个享受生活的老码农.------ArchitectoneSelf架构自己

  • 博客(27)
  • 收藏
  • 关注

原创 一个函数的自白

我是——编程世界的函数,不是数学中的幂,指,对和三角函数等等,但是和f(x)又有着千丝万缕的关系。我是代码中的最小执行组织,但不是最小执行单元。最小的执行单元是一条条语句,这些语句有机地组合起来完成一个或多个功能并且可以复用,这才是我——函数。内存与堆栈和我之间是啥关系?有无参数的我有何异同?我的简洁性?复杂度如何评估?我的高阶与递归有啥区别?我的回调和匿名是一回事么?对象中的方法是我么

2018-02-04 00:00:00 585

原创 昔我往矣 奋斗迎之

能够为教育做一点事情,哪怕是一丁点儿,也是每个人的荣幸!今天早上,很高兴在北京师大附中的学期结业式上,在附中百年礼堂分享了个人对幸福和奋斗的一点看法,路上的心情仿佛:最爱湖东行不足,绿杨阴里白沙堤。尽管故宫博物院的院长——单霁翔先生刚刚在师大附中做过演讲,自己并没有感到压力山大。因为都是真实的事情,真诚的表达是容易被接受和谅解的。按照习惯,从个人介绍谈起:1995年毕业于北京邮电大学的无线通信专业

2018-01-26 00:00:00 420

原创 从连接池到内存池

注:内容微调,修改标题,让题文匹配。如果将互联网应用比喻成冲浪的话, 可能需要先学会在“池”中游泳。引子AI赋能万物,老码农的伙伴们也曾经开发了一个基于图数据库的知识问答系统,在压力测试的时候发现随着并发数的增加,响应的时延明显变长,看时延分布,是应用程序与图数据库之间的交互时延过长。结构不做调整,优化图数据库后,发现在并发量上来之后,效果仍不明显。 看代码,观察ELK中的日志,发现了问题所在——

2018-01-24 00:00:00 380

原创 CAP理论与分布式系统设计

S 先生 是一位难得的技术同行,学者气质,一见如故。s 先生 作为本公众号(wireless_com) 的第一位投稿者,老曹深感荣幸。CAP 和 分布式系统的讨论和研究很多,但我认为这一篇肯定给大家带来不一样的收获,欢迎留言讨论。AuthorTaosheng  ShiWeChat  Contactdata-lakeMail [email protected]

2018-01-22 00:00:00 542

原创 独上高楼之清华艺术博物馆

这个周末,本该去GeekPark的大会现场给我们的智能硬件产品摇旗助威——或者,到车库咖啡去学习NewSQL 数据库TiDB 在2018的RoadMap和实践案例——然而,小曹同学期末考试结束了,“只问耕耘,莫问收获”,应该陪他出去放松一下了,尽管我认为他和他的同学一起去更好,但还是听从少年的指引,一同参观清华艺术博物馆。在博物馆外,真正让我们驻足的是一组雕像——没错,这里有曾经的清华国学研究院四

2018-01-20 00:00:00 654

转载 赠书伴回家:《深入分布式缓存》

感谢机械工业出版社提供3~5本的赠书,想要此书的请留言,被点赞最多的朋友将获得《深入分布式缓存》一本。结束时间:2018.01.21。关于本书的成文,可以参见 当技术成为一种情怀 一文。图书发售后,感谢各路朋友的支持,《深入分布式缓存》已多次在京东的计算机与互联网类图书中位于前列。还曾一度断档,有朋友手中可能会拿到第三次印刷的书。三九寒冬,大家相约在AICon,一个人工智能和机器学习的技术会议,开

2018-01-16 00:00:00 349

原创 冲浪?在池中游泳

如果将互联网应用比喻成冲浪的话, 可能需要先学会在池中游泳吧。引子AI赋能万物,老码农的伙伴们也曾经开发了一个基于图数据库的知识问答系统,在压力测试的时候发现随着并发数的增加,响应的时延明显变长,看时延分布,是应用程序与图数据库之间的交互时延过长。结构不做调整,优化图数据库后,发现在并发量上来之后,效果仍不明显。 看代码,观察ELK中的日志,发现了问题所在————高并发时连接的创建时间较长。时间所

2018-01-15 00:00:00 658

原创 老码农眼中的存储

存储,是我们码农每天都要打交道的事情,而当我们面对RAID,SAN,对象存储,分布式数据库等技术的时候,又往往似是而非,存储成了我们熟悉的陌生人。在老码农眼中,存储仿佛是这个样子的。从计算机结构出发存储是计算机的一部分,在冯诺伊曼体系结构中,有一个重要的单元即存储器,它连接了输入/输出,以及控制器和运算器,处于核心纽带的位置。存储的介质主要包括内存(DRAM)、固态硬盘(SSD)、机械硬盘(HDD

2018-01-09 00:00:00 510

原创 程序员眼中的测试

码农的产品和服务大都是以软件形式存在的,我们存在的价值之一就是快速提供高质量的软件产品或服务。如何保障软件的高质量呢?这与软件测试分不开的,测试是保证软件质量的关键环节之一。老码农早年曾经做过两年的软件测试(详见三本书影响一个人),现斗胆介绍一下老码农眼中的测试。什么是软件测试?软件测试是以评价一个程序或者系统属性为目标的任何一种活动。测试是对软件质量的度量。——《软件测试完全指南》远在1983年

2018-01-05 00:00:00 4113

转载 昔我往矣 2017

昔我往矣,杨柳依依。今我来思,雨雪霏霏。——《采薇》时光就如朱自清先生的《匆匆》,在我们经意或是不经意间,从指间溜走, 2017年也是如此。回首这一年,不变的永远是变化。6月是一个分界点,6月前致力于企业级移动应用的开发,就像雷布斯说的那样,“用移动智能终端解决企业销售管理问题,其潜力之大远远超过我们今天的想象”,6月后又投身到智能硬件的研发,就像李厂长说的那样,“AI 赋能万物”。 同学们问我,

2017-12-28 00:00:00 383

原创 全栈Python 编程必备

据说:2019年, 浙江信息技术高考可以考python了;2018年, Python 进入了小学生的教材;2018年, 全国计算机等级考试,可以考python 了;据外媒报道,微软正考虑添加 Python 为官方的一种 Excel 脚本语言……Python作为一种编程语言,被称为“胶水语言”,更被拥趸们誉为“最美丽”的编程语言,从云端到客户端,再到物联网终端,无所不在,同时还是人工智能优选的编程语

2017-12-23 00:00:00 653

转载 全栈必备 Java基础

那一年,从北邮毕业,同一年,在大洋的彼岸诞生了一门对软件业将产生重大影响的编程语言,它就是——Java。1998年的时候,开始学习Java1.2,并在Java Orbix 上做服务,而如今Java 9 已经来了,而且 Java 10 也已经不远了。对一个全栈而言,Java 是必备的编程语言之一。 而谈到Java,虽万语千言却不知从何开始,老码农从个人的角度看一下Java 语言的编程基础。虚拟机Ja

2017-12-15 00:00:00 976

转载 熟悉的陌生人

公众号和博客有着不同的读者属性,但都是分享和传播的工具。但基于微信的广大受众,公众号有着强大的生命力。在空闲的时间看看朋友们的公众号文字,逐渐成了一种习惯。老码农关注的公众号不少,大多是见过面的朋友,例如:开涛 的 “开涛的博客” (质朴 实用,但是 人比文字帅)史总 的 “IT民工闲话”  (有趣诙谐,别有洞天 )右军 的 “技术琐话”( 原名  流浪不是我的 初衷)阿朱 的 “阿朱说” (嗯

2017-12-08 00:00:00 424

转载 当技术成为一种情怀

入行20多年来,有了一次不同寻常的尝试,虽然只是合力出了一本书。时间回溯到2016年, 最初出于挖人的险恶用心,进入了一个名叫“中生代技术”的技术群。本以为和自己加入的诸多技术群类似,没想到在这里发现了一群有趣的人,一群热爱技术的人,一群为了一些技术细节争论得面红耳赤的人。因为在本公众号的一篇文字《老曹眼中的缓存技术》,在博客上是《全栈必备 缓存基础》,右军找到了我,开启了本次著书之旅。感谢互联网

2017-12-04 00:00:00 1694

转载 少年的英文诗

作为一个在中学才开始接触ABC的农村学生,自己曾经对英文充满了恐惧。记得在高考的时候,英文只考了51分,而满分只有70分的生物,自己却得了65分。北邮的马老师在计算机讲座上说,“互联网技术比的是英文”,不得已,才硬着头皮开始对英文下功夫。英文水平的提高主要是得益于在海外工作的那些日子,而体会到英文的美却是从一首诗开始的。这是我入行的mentor 在他工位上贴着的一页纸,在帮他换工位的时候他随手送给

2017-11-26 00:00:00 1248

转载 老码农看到的技术债务

“软件和大教堂是类似,都是先构建,然后祈祷”。————Earl Everett关于技术债务的讨论时而蔓延时而消退,技术债务仿佛是个筐,什么东西都可以往里装,然而当我们企图倒光筐里东西的时候,却发现每人看到的东西都不一样,甚至有时候都数不清里面都有些什么。 作为一个半吊子全栈工匠,试图从一个老码农的视角审视一下技术债务。一个比喻导致的分歧技术债务是由敏捷先驱 Ward Cunningham(http

2017-11-04 00:00:00 665

转载 全栈必备 敏捷估点

老板常问:“产品什么时候可以上线呢?”产品经理常问:“完成这些功能需要多长时间呢?”技术经理常问:”这个模块要开发多久呢?“自己常问:“为啥又要delay呢?”……所有这些问题,都会指向一件事————研发中的估点。估点是计划的基础,不论你关注还是不关注它,它都在那里。估点不是拍脑袋,是一种对事件的客观描述方式。通过统计学可以让我们知道,用两个数字就能够描述世界——期望和方差。然而,如果没有历史数据

2017-10-11 00:00:00 526

转载 老码农眼中的简明AI

AI, Artificial Intelligence, 人工智能。就像每个人眼中都有一个自己的哈姆雷特一样,每一个看AI 都是不一样的。作为一个老程序员,也只是一个工作时间长一些的程序员而已,本没有什么资格定义AI,但是面对这样的问题, 还是强作镇定,从一个工程师角度阐述一下,“什么是AI?”以及AI 和 大数据,机器学习,神经网络,自然语言处理等诸多名词到底有什么关系呢?什么是AI?AI,来自

2017-09-17 00:00:00 454

转载 基于AWS习练深度学习时的10个Linux命令

在AWS上执行大规模的深度学习处理是一个廉价而且有效的学习和开发方式。花少量的钱就可以使用数十GB的内存,数十个CPU,多个GPU,这是值得推荐的。如果你是使用EC2或者Linux 命令的新人,在云端执行深度学习脚本的时候, 这些命令是非常有效的。本文的主要内容包括:1)在本机和EC2实例间复制数据2)使脚本按天,周,月安全地运行3)监测进程,系统和GPU 的性能注意:所有命令在类linux环境中

2017-09-04 00:00:00 349

转载 全栈必备 贝叶斯方法

数据的重要性毋庸置疑,但是如何让数据产生价值呢?对一个全栈老码农而言,经常在开发或者研发管理的时候遇到各种预测、决策、推断、分类、检测、排序等诸多问题。面对“你的代码还有bug么?”这样的挑战,一种理智的回答是,我们已经执行了若干测试用例,当前代码中存在bug的可能性是百分之零点几。也就是说,我们对当前程序中没有bug的信心是百分之九十九点几。这实际上就是一直贝叶斯思维,或者说使用了贝叶斯方法。不

2017-08-06 00:00:00 1045

转载 全栈必备 Log日志

Log日志,不论对开发者自身,还是对软件系统乃至产品服务都是非常重要的事情。每个开发者都接触过日志,以至于每个人对日志的了解都会有所不同。什么是日志日志是什么呢?老码农看来,日志是带有明确时间标记的信息数据记录。根据不同的使用场景和视角,日志的分类也多种多样。针对生成日志的主体,如果是开发者,可以有工作或学习日志,如果是代码,可以是程序日志。根据应用程序的使用领域,可以有系统日志和应用日志,还可以

2017-06-11 00:00:00 373

转载 午后重温,多少一斤

重读《无价》一书是从书中的这句话开始的——“人人都能被收买,只不过各有不同的价码”。天气很热,用图片降降温吧。价格是由一个个具体数字构成的,只不过是一场幻觉而已。产品或者服务的定价与实际成本实际上没啥关系,而是和购买者所设想的成本存在着关联,这种关联受场景和心情等因素的影响很大。这使我想起了招人中的offer,一个人实际的能力固然重要,更重要的还是企业或者面试官设想中的offe

2017-05-20 00:00:00 331

原创 老曹眼中的CRM 图解

CRM 是企业“以客户为中心”价值观的核心体现之一, 各种2B的应用都无可避免,而企业应用具有一定的复杂性,理解CRM系统也不是轻而易举的事情。在老码农的眼中,CRM 系统可能是这样的: 业务组成业务单元的组成是第一位, 业务单元是企业的实在需求,也是采用CRM系统的主要因素。如上所示,业务单元大约可以概括成9个方面。客户管理客户是第一位的, 先贤德鲁克的话不用赘述

2017-05-17 00:00:00 1119

原创 一文贯通python文件读取

不论是数据分析还是机器学习,乃至于高大上的AI,数据源的获取是所有过程的入口。 数据源的存在形式多为数据库或者文件,如果把数据看做一种特殊格式的文件的话,即所有数据源都是文件。获得数据,就是读取文件的操作,文件有各种各样的格式即数据的组织形式,如何方便快捷地获取文件中的内容呢?还是那句名言,life is short, just use python。操作基础在python 中,文件的

2017-05-07 00:00:00 415

原创 Markdown数学公式简要

Markdown的语法简洁明了、学习容易,而且功能比纯文本更强,因此用它写文档非常方便,还可以轻松的导出PDF或者HTML的文件。github上的wiki,各个project 中的readme,以及国内的“简书”都是Markdown 的用武之地。更重要的是,很多开发工具也都支持Markdown的插件,例如RStudio,Sublime Text等等。Markdown 有很多现成的工具,

2017-04-27 00:00:00 535

原创 量步北京:莲花河边

这或许只是一组普通的雕像,坐落在西客站东边暗涵出口处,应该就是莲花河在市内的起点了。莲花河旧称洗马沟,据说是唐代的幽州城以及辽南京城西部的护城河,在金代更名为莲花河。莲花河市内起点的两边是健步栈道,是北京十条滨水绿道中的一条。即便是周末,也没有太多的人,在树叶间斑驳的光影中行走,确实是一大乐事。环境很是干净,离不开环卫工人们的劳作

2017-04-23 00:00:00 416

原创 从构造函数看线程安全

线程是编程中常用而且强大的手段,在使用过程中,我们经常面对的就是线程安全问题了。对于Java中常见的数据结构而言,一般的,ArrayList是非线程安全的,Vector是线程安全的;HashMap是非线程安全的,HashTable是线程安全的;StringBuilder是非线程安全的,StringBuffer是线程安全的。然而,判断代码是否线程安全,不能够想当然,例如Java 中的构造函数是否是线

2017-04-16 00:00:00 852

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除