IP,操作系统OS,国家,浏览器信息GIF展示图 发布于 三月 24, 2021 图片URL:https://www.wieistmeineip.de/ip-address/ 图片URL:https://www.mzwu.com/pic/20070121/ipimg/ipimg.asp 评论
项目管理标准模板 发布于 九月 22, 2020 之前写了一篇 《技术管理标准模板》 ,其中项目管理部分并没有具体深入,而这一技能不仅仅是对于技术Leader的要求,从我的经验看来,只要是程序员,具有项目管理能力都是如虎添翼的,即使你走的是专业路线。本文即基于自己的经验,从项目的启动和迭代阶段总结了敏捷项目管理的一些标准动作。 启动阶段 相关干系人沟通,同步项目背景、业务价值等 启动会议:召集相关干系人,明确业务相关信息,确定相关流程制度等 需求收集和分析-> 总体需求文档 ,概括性的功能与非功能需求列表 初步的产品规划-> 每一轮迭代的需求列表、发布时间 创建项目基础设施-> 可持续交付到测试环境的基础项目 ,包括各个端的代码库、到测试环境的流水线等。 迭代阶段 两周为一迭代,包括需求、设计、开发、测试、发布。关键点在于需求的拆分、优先级以及并行化。 1. 需求评审 对本轮迭代的需求尽心评审确认。 前置条件 :产品经理对此轮迭代进行需求确认,产出需求条目,按 优先级 排列;需求需要拆的足够小,把大需求拆成一个个 能够独立开发测试发布 的小需求 2. 工作规划 根据本轮迭代需求做WBS任务分解 WBS工作项分解: 甘特图 里程碑结点: 表格或者里程碑图 风险管理:风险点预估、严重程度、可能性、应对措施 3. 设计/技术评审 分别对交互设计和技术设计进行评审 前置条件 :设计师需要输出设计图;技术部分做概要设计和系统设计,随着每一轮迭代进行更新维护 4. 测试用例评审 由QA安排,会前需要提前将测试用例文档发给产品经理与研发,提前标注有疑问的用例。 5. 开发、测试过程的监控 持续交付:开发和迭代测试,需求开发完成后即测试并进行缺陷跟踪。 会议 每日站会:全员站会,了解整体状况,对暴露出的风险和问题作出集体决策。 项目周会:10人以上团队。解决整体计划层面、跨团队协同配合的问题。 项目周报 汇总项目总体状况,回答三个问题 项目的整体进展状态到底如何? 风险可控吗? 目标达成有没有问题? 6. 版本全量测试 对所有已经开发完的功能进行交叉测试、全量测试、埋点测试、回归测试、第三方云测。 7. 验包发布 此迭代所有功能开发测试完成后,提交审核流程,各流程审核人验收通过后发布。 ... 阅读全文
挖财 Kubernetes 容器化之路 发布于 六月 03, 2020 其实年初的时候就有想过写这篇文章了,不过一拖就拖到了现在,再拖下去就有点说不过去了。 挖财内部对容器化项目的代号为 K2 (乔戈里峰),乔戈里峰是世界第二高峰,但攀登极富挑战,寓意就是面对挑战,勇攀高峰 ;)。项目从 2016 年 11 月到现在已经有三年的时间了,如今挖财内部测试环境早已全部 Docker 容器化,而线上环境也运行着重要的业务。经历从零到一的整个落地过程,回顾下来,这座高峰算是拿下了。再看 K8s 技术本身现在也是遍地开花,早已赢得容器编排的战争,剩下来就是各个企业的落地实践。倒是 Docker 公司最近的境遇,这个创建 Docker 的企业沦落如此,多少有点令人唏嘘,唯有 Respect。 1 时间线 看了一下项目提交的 Git 记录,第一次提交时间是 <2016-11-01 Tue> 。 2016 年 11 月初开启 2017 年 1 月底 V1.0 上线 2017 年 6 月底测试环境全面推开 2017 年 7 月线上机器学习环境线上试点 2017 年 10 月线上业务试点 2018 年 7 月 V2.0 版本 2018 年 9 月挖财云版本(整合运维监控、告警、日志和容器系统) 2018 年 12 月支持多集群管理 2019 年 6 月私有化分支版本上线 2 现状 2.1 测试环境 当前测试环境有一个 K8s 集群(K8s 1.11.x),空间( namespace )总数有 500+,应用数( Deployment + StatefulSet ) 4400+,实例数( Pod ) 4000+(因为测试环境大部分应用都只有 1 个,有些是处于暂停状态,即 0 个副本,因此实例数少于应用数)。 题外话,话说 K8s 升级的历程也相当血泪,早期的配置变更,向下的兼容性等等,关于升级相关可以参见之前的文章 Kubernetes 版本升级标注 2.2 线上环境 线上环境有三个集群,一个机器学习集群(K8s 1.7.x),一个私有云集群(K8s 1.13.x),有个主体业务集群(K8s 1.13.x),粗率统计了一下,空间数 50+,应用数 500+,实例数 1000+。 测试环境 + 线上环境总体运行有 5000+ ... 阅读全文
C1科目三学习课程注意点 发布于 九月 24, 2021 1 起步: 先打左转向灯,踩离合脚刹,确保松完手刹,挂1挡,找到半联动时左脚离合不要动,右脚把脚剎松完后,半联动往前走3到5秒后左脚再把离合松完,才能确保不熄火和不闯动,起步前检查仪表正常和路上安全后才起步。 2起步后: 15秒内把离合松完,半离合行驶超过15秒以上扣10分。 3靠边停车: 先打好右转向灯,语音播报后方向往右微调车轮离边缘线20厘米左右时,语音播报后30秒内对好点停车,回空挡,拉好手刹,听到播报请起步继续完成考试,才打左转向灯,跟起点起步一样。 4路口注意: 停车或点刹,变更左道,路口左转和掉头打左转向灯。变更右道,路口右转打右转灯。未完成项目转向灯掉了要补上转向灯。 5在路口停车后或中途停车: 检查转向灯是否正确,档位是否回1档,手刹是否松完,在安全的情况下才起步。 6直线行驶: 在进入项目前要调直车身,方向打直后,方向不要乱动,感觉方向开始偏离时,只能反方向1至4度微调方向(方向大于5度扣100分),方向没有偏离时不能乱动,保持直行,语音播报直线行驶结束,项目完成。 7二档升三档时: 二档先提速升到25时速,踩离合,二档先回空档,手离开档位杆半秒钟再往前直推升上三档。(考试全程三挡累积行驶要达到1000米以上。)4档行驶5秒以上。 8转向灯: 起步,靠边停车,变更车道,左转右转路口,超车,掉头等要打转向灯的项目,打了转向灯最好3秒内不要左右打方向。 9熄火: 路上熄火,记得回空档,再起动。(立刻会启动就扣个10分,超过10秒直接挂) 10遇到行人: 路上遇到危险,行人,障碍物不安全的情况下,先踩离合,再踩刹车停车,确定安全下重新起步。 11记住考试重点: 一☞起步要小心,确保不要熄火, 二☞记好路线考试项目的每个位置,先做好下一个考试项目的准备。 五个重要项目位置 ☞靠边停车 ☞超车 ☞直线行驶 ☞公交车站 ☞变更车道 这五个项目位置是重中之重。 来源:https://www.zhihu.com/question/290475667/answer/1651350996 阅读全文
如何去做code review 发布于 四月 07, 2020 Google 前几天公开了一篇谷歌的工程实践文档。而且文档的内容都是跟 code review 相关的内容,里面包含了 Google 工程师如何进行 code review 的内容,以及 code review 指南。 原文地址: google.github.io/eng-practic… 本文的名词解释: cr: code review cl: change list,指这次改动 reviewer: cr的那个review人 nit: 全称nitpick,意思是鸡蛋里挑骨头 作者: 也就是本次CL的开发者,原文中是以author来称开发者的。以老外的思维,意思是“CL的作者” 如果嫌文章太长,可以直接到 后面 看总结 cr的标准 cr(Code review)主要目的在于确保Google 的代码库代码质量越来越好。而所有相关的工具与流程皆是因应这个目的而生。为达到此目的,势必需要做出一连串的权衡与取舍 首先,开发人员必须能够在自己负责的任务上有所进展。如果你从来没有向代码库提交改进过的代码,那么代码库就永远不会改进。另外,如果一个reviewer使cr都很难进行的话,那么开发人员就不愿意在将来进行改进。 另一方面,reviewer有责任确保每个change list( 下称CL )的质量,保证其代码库的整体代码质量不会越来越差。这可能很棘手,因为通常会随着时间的推移,代码需要降级才能让代码运行起来,特别是当团队受到严重的时间限制时,大家觉得必须走捷径才能实现他们的目标。 此外,reviewer对他们正在review的代码拥有所有权和责任。他们希望确保代码保持一致、可维护,以及下文的“ 在cr中可以得到什么 ”中提到的内容。 因此,我们有以下规则,作为我们在cr中所期望的标准: 一般来说,当CL存在的时候,reviewer应该赞成它,此时它肯定会提高正在工作的系统的整体代码质量,即使这个CL并不完美。这是所有cr中的首要原则。当然,这是有局限性的。例如,如果一个CL添加了一个reviewer不希望在其系统中使用的功能,那么reviewer当然可以拒绝,即使代码设计得很好。 这里的一个关键点是,没有“完美”的代码,只有更好的代码。reviewer不应该要求作者在approve之前对一篇文章的每一小段进行润色。相反,revie... 阅读全文
如何为 Windows 10 UWP 应用设置代理 发布于 七月 23, 2019 UWP 是微软在 Windows 10 中引入的新概念,由于所有 UWP 应用均运行在被称为 App Container 的虚拟沙箱环境中,其安全性及纯净度远胜于传统的 EXE 应用。但 App Container 机制同时也阻止了网络流量发送到本机(即 loopback), 使大部分网络抓包调试工具无法对 UWP 应用进行流量分析。同样的,该机制也阻止了 UWP 应用访问 localhost,即使你在系统设置中启用了代理,也无法令 UWP 应用访问本地代理服务器,十分恼人。 其实 Windows 10 自带了一款名为 CheckNetIsolation.exe 的命令行工具可以帮助我们将 UWP 及 Windows 8 Metro 应用添加到排除列表,具体步骤如下: 1.通过注册表获取应用的 SID 首先通过 Win + R 快捷键打开「运行」窗口,输入「Regedit」打开注册表编辑器,然后定位到 HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\Windows\CurrentVersion\AppContainer\Mappings ,接着在左边的注册表项中找到你想解除网络隔离的应用,右边的 DisplayName 就是应用名称,而左边那一大串字符就是应用的 SID 值了。 2.打开 CMD 面板 在终端中输入 CheckNetIsolation.exe loopbackexempt -a -p=SID,出现「完成」后就大功告成了。 这时再打开 UWP 应用窗口,你应该就能愉快的上网了。 如果你觉得这种方法太麻烦,可以在 这里 下载免费网络调试工具 Fiddler,然后从顶部菜单中选择「WinConfig」,在接下来打开的窗口中勾选你想排除网络隔离的应用就可以了。 来源: http://www.sohu.com/a/197129320_115785 阅读全文
当代年轻人怼人大赏 发布于 二月 16, 2022 ▼ 江湖传言,当今迈入社会的年轻人 大多面孔青涩,经验缺乏 在社会的毒打面前 「谦逊卑微」 是他们摸爬滚打时的态度 「虚心学习」 是他们一贯保持的作风 怎料,光天化日之下 敢于 「仗义执言」 的英才之辈 从他们中争先涌出 敢放豪言,硬气回怼 向现实低头?这绝不是我 他们怼人的功力有多深 亲眼见识过才算真 接下来就让我们一起看看 当代青年们说话到底有多野吧 ▼ 曾几何时,在我们的眼里 年轻人还是电视剧上总是忍气吞声 话语里永远带着七分乖巧 三分规矩的卑微小白菜 但是现在的他们 却已经进化为 「钮钴禄」 版本 小火山爆发起来战斗力十足 不论对象,只要怼赢,便是胜利 ▽ 工作之后 当代青年多少次偷偷抹泪、安慰自己 「没事的,等赚够钱以后,马上就跑路 」 提前过上美滋滋的退休生活 奈何人生远大目标的进度总是缓慢 生活的苦却紧紧跟随、不离不弃 恨不得再多薅你几把头发,多绊你几脚 明明是因为没钱才上班 要是上班了还是没钱 那上班还有什么意义 希望领导能明白我们年轻人 上班是为了让自己过得更好 而不是来吃苦的 为公司出力也就算了 出钱又是什么操作 看到领导竟然也跟我们一样 开始在意余额宝里的那点利息损失 就知道这家公司的处境真的不太乐观 只可惜,钱包里这点钱 实在不足以支撑我成为 只求付出不求回报的慈善家 为领导付利息 大概就是我能为公司做的最后一件事情 辛辛苦苦上班,钱少也就罢了 最惨的是事情还多 不仅工作日996,而且连周末也要占用 既然周末上班这种事老板觉得很正常 那想必交通不好 堵到要花足足两天时间 才能让我成功抵达公司 也是十分合理的了 众所周知,年轻人在职场上 必不可少要学习的,便是 忍 但也总有因为各种无理要求忍不下去的时候 这个时候要是不把之前受过的气都怼回来 那岂不是被占了大便宜 作为一个认真对待工作的年轻人 严守deadline是我们的自我修养 说好下周三,就是下周三 不能迟交,当然也不应该早交了 除非是发生了什么生死攸关的大事 虽然如今的职场内卷严重 但也要允许咸鱼的存在 所以如何让领导明白我只是一个不爱熬夜 真诚觉得生命比工作更重要 在下班后接到工作电话必挂掉的普通人 我只是上班,不是卖身 为什么要24小时随时待命 忙到连自己的时间都没有 但可惜的是,老板却永远不明白这一点 不然也不会把打工人逼出 一看到老板就浑身不... 阅读全文
一张A4纸制作一个手机支架(折纸) 发布于 四月 29, 2021 你在吃饭的时候,用手机追剧、看综艺、看游戏攻略吗?扫一下办公室,相信大部分打工人有这个习惯,毕竟这是一天中最惬意、最放松的时候。 这个时候,有一个手机支架,那简直最恰当不过了。可我看到的场景,要么是一只手用筷子,一只手拿着手机;要么是把手机斜靠在一个东西上,比如键盘。 反正这两种方式我都用过,感觉还是挺别扭的。前者,手累;后者,手机容易滑下来,用东西挡住的话,又容易遮住屏幕下面。 怎么说呢?还是手机支架,省事!买一个未尝不可,自己做一个,感觉更划算、更有成就感,关键是一张A4纸(随手可得,有木有)一两分钟就可以搞定,何乐而不为?闲话少说,一起来看看怎么做。 1、 找张A4纸,横向对折,半张纸再对折。 2、在上面的基础上,再就半边部分进行对折。这个时候,整个纸呈硬度比较高的长条形。 3、在长条形的中间位置,再折一下。 4、接下来,我们需要做一个挡住手机滑落的卡子。如下图所示,选择封闭一侧的边缘,折一下(这里命名为“1”)后,再对折一下(这里命名为“2”)。这个折的宽度自行规定,越窄越不容易挡住手机屏幕,但也要考虑能够卡得住手机,不至于滑落。 5、拿上层,顺着折“1”放过来。 6、上层按下图1对折(形成折“3”),把上层立起来(折“3”在最上端),如下图2所示。 7、把下层再折一下(折“4”),再把多出来的部分,塞进上层。 ... 阅读全文
关于Restful API文档和接口测试,以及easy-mock 发布于 五月 18, 2021 前后端分离 提高前后端的开发效率是非常必要的,那么如何利用好RESTful标准来做好前后端分离呢? 规定API标准 RESTful API 当然你也可以制定自己的API的标准,使用开发人员的编程习惯来决定会比较人性化。这里我选择用 RESTful API 来举例。 REST全称是 Resource Representational State Transfer 翻译为表现层状态转移 用一句话表示其含义为 用URL定位资源,用HTTP动词(GET,POST,DELETE,PUT,PATCH)描述操作 API 全称是 Application Programming Interface 翻译为应用程序编程接口 关于 RESTful api 的设计可以参考阮大的博客 RESTful API 设计指南 API 编写工具 Swagger 是一套开源的API管理工具 其中 Swagger edit 是Swagger推荐的工具,你可以选择在线编辑,或者在本地部署一套自己的 github Swagger edit 然而我推荐使用 vscode 编辑器的两个插件 OpenAPI (Swagger) Editor 和 Swagger Viewer 来编写。 这两个编写工具相比较,vscode有更舒适的字体,字号和配色,但是debug能力稍弱于swagger-editor,所以debug难时也可以配合使用。 目前swagger常用的版本有 swagger: ‘2.0’ 与 openapi: 3.0.1,两个版本中openapi更为强大,但我最后还是选择了swagger: ‘2.0’, 原因在最后面。 API 查看工具 本地部署一套 Swagger UI 吧,还是比较好用的,记得每当更新接口后,查看浏览器要强制刷新。 接口测试工具 要做到前后端松耦合,并行开发,利用接口测试工具是至关重要的。 Postman 后端的接口测试工具 mock 前端的测试工具,这里我推荐 easy-mock 国人主导的开源项目,表示支持,也确实很好用。 关于easy-mock 这个工具也推荐本地部署,它支持swagger yaml和json格式的api 文档加载,自动生成后端接口和模拟返回数据,真正解决前后端并行开发难的问题。 之前说,我选择swagger: ‘... 阅读全文
评论