“我”为什么做测试 本篇所指的“我”,其实不光是作者本人,而是大多数从业软件测试的人员。 什么是测试?其实关于测试的名词解释,作者不再进行阐述。...为什么做测试?...国内的软件项目是没有测试岗位的,但随着软件技术与软件流程的规范慢慢正规化,测试职位也慢慢引起重视,相对于开发岗位,测试岗位大多数是不需要编写代码的,一般也都是点点点,是的,没错,这也是大多数IT从业人员对测试岗位的印象...,如何做的等。...本篇其实没有所谓的指导思想,看似说了一些,但好像什么都没有说,只是单纯的聊聊一些感受,也是想让同行反思一下,为什么要做测试,如何让自己的测试职业发展更好。为什么说如何让自己发展更好?
书接上文:当我做 hackathon 时我在做什么(1)。 前文中提到,我做的第二个项目是个可视化的项目,名字叫 deneb。deneb 是天鹅座的一等星,也是夏季大三角和北十字两个星群的端点之一。...嗯,deneb - vega - altair,聪明的你一定想到了我为什么起这样一个名字: ? 为什么是 vega-lite? 在数据可视化这块,我自己走了不少弯路。...如果你需要能够对可视化的图表做简单的动画,plotly 也能胜任。 我一度以为 plotly 是我的真命天子,直到有一天我敲开了 altair [4] 这个潘多拉魔盒。...他觉得我们在做数据分析的时候,更多是一种探索,而分类是反探索的,因为当你用某种类型的图表来表达数据的时候,你已经对如何分析数据有了先入为主的看法。 那么什么是图表呢?...最后,我成功解决了问题,并给 IElixir 的作者提交了一个 PR(还有什么比一个对已有开源项目的 PR 更能彰显 OSS-a-thon 的意义的?): ?
首先,互联网上有很多镜像,我给他们定义了2种分类: 1. 操作系统镜像(包括常见的Centos,Ubuntu,Debian,Alpine,Busybox等)。.../bin/sh -c #(nop) ADD file:b3ebbe8bd304723d4… 204MB 总结来看,就是直接把文件追加到容器里面,然后一个CMD里面加了个bash,至于这个文件里面有什么内容呢...其次我们可以分析那些中间件镜像是如何做的。...然后其他中间件镜像,是不是可以在这个操作系统镜像基础上接着做呢?...2.这个是虚拟机生成的镜像,所以和标准的Centos7.9(200M)的差距还是很大的,当然我这个操作系统里面自带的东西也比标准的镜像更多。
所谓 OSS-a-thon,是我们为了回馈开源社区举办的 hackathon,参与者需要做和开源项目有关的项目 — 可以是对已有的开源项目进行改进,提交 PR,或者做新的项目,但需要开源。...有什么比 elixir 和 rust 两边写了几个函数就得到了这样一个沁人心脾的结果更美妙的呢?嗯,完美的开局意味着美好的结局,我对自己说。...这让我每个函数少些很多重复的代码,最大程度让 Rust 编译器满意,并且使我的代码足够 DRY。 我对自己对 DRY 的追求十分满意。松本行弘(Matz)先生,谢谢十年前你对我 DRY 的引导。...当我写到 groupby_apply 时,我发现:额错了,额真滴错了。...这是个非常合理的需求,然而 rustler 并不允许我这么做。
我的方法论 清晰可见的目标 我喜欢在做一件事情前把目标能够表达清楚,然后脑海里有一个当我成功达到后这东西该长什么样的草图。...其实,对我来说,还有第三条线,就是对应的公众号文章 —— 我希望我能把自己探索过程中的心得体会写成文章输出出来。...比如我做的这个: ? 工具本身并没有限制我。...其实像 excalidraw 这样的好工具反而能解放我的大脑,因为我不再需要焦虑用什么样的图形才能更好地表达(使用 visio 或者类似工具时我总有类似焦虑),我也不再需要焦虑该为图形配什么样的颜色,因为...我一般会把他们放在一个 github repo 里,还能进行版本控制。 就这么多。 贤者时刻 可是对大多数人来说,生活的变化是缓慢的。今天和昨天似乎没有什么不同;明天也可能和今天一样。
我记得我问,“你在玩什么游戏?” “我还没给它起过什么名字呢,”他回答。我不明白他的意思。 他为什么要叫它什么呢?然后他解释说,这是他自己用BASIC语言写的。 我的大脑爆炸。...他告诉我,除了经济上的回报,工作不需要提供任何东西,我的经历也证实了他的观点。 我的雇主在推销产品,让股东和董事会成员满意。这就是世界的方式。为更大的善做贡献是你在业余时间或退休后做的事。...办公室里没有地方可以帮助别人,对吧? 在赛门铁克和雅虎改变了我的看法 他们说你不会有第二次获得幸福的机会,但当我开始在赛门铁克工作,然后在雅虎工作时,就发生了这种情况。...我以为我是一个匿名的程序员,这个来自世界上最著名的公司之一的家伙想和我合影。 开源可以改变世界 开源社区就是关于包容的。我们欢迎大家贡献自己的力量,并对他们的辛勤工作表示感谢。...我朋友的父亲对我产生了积极的影响,改变了我的生活。全世界无数人都在通过为开源社区做出贡献而产生影响。今天你如何改变世界? 点击文末>进入网页了解更多。
这样做是为了避免所有最初的时间和资源花费在TCP握手上。因此,当客户端获取与服务器实例的连接时,它将保持连接。 现在,当同一客户端开始发送大量请求时,它们都将转到同一服务器实例。...这就是为什么粘性连接会使负载平衡变得非常困难。 以下是一些负载均衡gRPC相互通信的方法,以及每种方法的一些细节。...为什么?同样,因为gRPC连接是持久的且具有粘性。正在发送大量请求的客户端,将继续将它们发送到与其连接的同一服务器实例。 因此,新的服务器实例被启动,但是没有请求过载将流向新的实例。...因此,它们不仅应包含执行应做的逻辑,而且还需要实现用于负载平衡,运行状况检查等的逻辑。 在一种情况下,这是一个可行的选择:如果您完全控制所有客户端。...观察模式负载均衡是对gRPC连接进行负载均衡的最合逻辑且性能最高的解决方案,但是它需要自己的完整且专用的服务,这意味着要在体系结构中实施和操作一项新服务,这些是要考虑到的。
Medium 作者:Christopher Madan 机器之心编译 参与:路雪、黄小天 本文作者 Christopher Madan 喜欢用 MATLAB 编程,尽管他是一个认知心理学家/神经科学家,编程对其来讲更多地是一个完成目标的工具...我每周使用 MATLAB 10-20 个小时(平均),但是我还使用很多其他编程语言,包括 Python。你需要重点考虑你想用某种语言做什么。...没有太多编程能力也可以使用这些工具箱,不过熟练使用 MATLAB 可以帮助你深入了解情况,对工具箱的作用、如何调整代码获取一些内部变量有更好的了解。...必须承认,这可能导致面条式代码(spaghetti code),不过正因如此,接受编写代码文档和结构的训练对构建可复现分析流程非常重要。...我喜欢使用 MATLAB 的部分原因是发现它的语法比 Python 或 R 更加直观。不过也不会受到它的限制,对其他采用类似语法的语言我也很感兴趣。
但是为什么只提供访问 cookie 和 header 的 API 呢?为什么不导出一个 request()方法,它返回一个 Request 对象或请求上下文?...等等,我们为什么不能使用 cookies()方法呢?...; }; 它暴露了 set()方法,但当你试图这样做时,会报错!为什么呢?我想不出任何合理的解释来证明这个限制是必要的。SvelteKit 可以很好地实现这一功能。...我最后一个抱怨的是中间件。为什么它总是运行在 Edge 上呢?为什么要限制它不允许运行数据库查询或使用 Node.js 模块呢?...我还没有提缓存,这是另一个让人头疼的问题。 我不想对 Next.js 团队或 Vercel 有任何恶意揣测,但是他们似乎直接无视了在 page.tsx 中设置 cookie 的问题。
题眼基本表达了我的论点,随着本文的深入会对该论点做加一个约束条件。现在容我开始论证它~ 都说抛异常很重,到底重在哪里? 不整虚的,我们用测试数据来说话。...对Thread::getStackTrace()做个简单说明。...当接口应答只是true/false的时候,抛异常会是个很匪夷所思的设计; 当下层方法不断的抛出各种异常,然后汇总到拦截器里处理时,或者需要对异常拆开做判断,再自定义成合理的应答话术;或者将好不容易区分开的不同异常...我的态度 任何的系统架构设计,都是在不断的在做天人交战,利弊权衡。鲜有绝对的对与错,只有在当前组织环境内相对的合理与不合理。对于异常用作流程控制这件事,我是投反对票。...因为即使异常的性能损耗对我们大部分的业务场景可以忽略不计的,但异常在接口中的易被忽视性、不可控的穿透性,就算是高素质的团队也不一定能完全消除这种风险。
com后缀的优势: 历史最悠久 2、全世界通用,热度最高 3、热度最高也就意味着大众识别度高 4、做好了就是自己的流量,不至于为他人做嫁衣,如果你用top,做好了会导流到com和cn,得不偿失。
我大学时学习密码学,而比特币作为一个新颖且非常规的概念出现。在我的一门课程中,我们分析了与比特币非常类似的加密货币的密码学构建模块。尽管我钦佩算法和协议的精妙,但我对 区块链技术 并不特别感兴趣。...我的主要保留意见是,尽管其设计创新,但它并没有解决我个人认为重要的任何问题。 我对区块链的怀疑一直持续到几个月前,当时我与 Aerospike 的一位新客户合作, BSV 协会。...BSV 对区块链吞吐量挑战的解决方案 无需深入探讨细节,基于区块链的加密货币的有限吞吐量主要源于 区块链块的大小。...在 前一篇文章 中,我详细阐述了为什么这种方法非常低效。 通常,这些解决方案采用可扩展数据库,通过复杂的数据提取、转换、加载 (ETL) 流程从不可扩展的 RDBMS 中检索数据。...正是这种愿景改变了我对区块链的看法。
我对JavaScript持乐观态度。 开发人员希望编写 JavaScript,并希望它能在浏览器、服务器或 Edge运行。...本文将概述近期在浏览器、服务器和 edge 对 Web 平台所做的改进。...但这是目前最好的,我很乐观。由于不需要花一周的时间去研究深奥的IE错误,数千(或数百万)的开发者时间将被累计节省。 下面是一个例子,说明这种排列组合如何使所有的 web 开发者受益。...我对服务器上的 JavaScript(和 TypeScript)感到乐观。这不仅仅是 fetch。...在这种情况下,我将使用 Vercel Edge Function。但也可以是其他边缘计算平台,如 Cloudflare 或 Deno。对我来说,这段代码最好的部分实际上是它相当无聊。
你要感知到这个情况,告诉调用方“嘿,哥们,你传个null给我做甚"。...这种情况下,null是个”看上去“合理的值,例如,我查询数据库,某个查询条件下,就是没有对应值,此时null算是表达了“空”的概念。...(什么?想调用这个方法时,不记得之前实现该方法有没按照这个原则?所以说,代码习惯很重要!...解决这个问题的一个方式,就是使用Null Object pattern(空对象模式) 我们来改造一下 类定义如下,这样定义findAction方法后,确保无论用户输入什么,都不会返回null对象 public...{ action.doSomething();} 2、精简 ParserFactory.getParser().findAction(someInput).doSomething(); 因为无论什么情况
这也是我最近遇到的问题,这两个月做了两次技术分享,第一次就遇到上面的情况,有的点因为紧张怎么都想不起来,只能尴尬的说,我回头再重新捋一下发给大家。 为了避免每次遇到这种问题,我得想办法解决。...再从大脑结构来说,你可以理解它们分布在这个位置: 从距离上说,本能脑和情绪脑距离心脏更近,一旦出现紧急情况,它们就会优先得到供血,这就是为什么我紧张的时候会感觉大脑空白,因为最上方的理智脑供血不足了。...而且因为它年龄小,在遇到危险的时候,本身也竞争不过其他两重脑,所以就能解释,为什么人在遇到危险的时候都靠本能反应而不是靠理智。 02 那怎么解决这个问题呢? 其实很简单,就是打稿子,然后自己多练。...我虽然没有连麦经验,但是我感觉分享形式都是相通的,所以我建议她先把要分享的内容打稿,并熟读几遍,这样就算连麦紧张,还有稿子可以提醒,阿常的执行力真的太强了,当天晚上稿子就出来了。...昨天我看了阿常和小林的连麦,非常稳,这也是我要继续学习的方向。 好了今天的分享就到这里。 今日鸡汤: 自信人生二百年,会当击水三千里。
现在回想起来,有很多朋友都开始后悔她们当初做的决定,要是当年认真考虑一下就好了。而我却恰恰相反,我觉得自己做了一个无比英明的决定,折腾数据真是太有意思了。...为什么我会这样热爱这份工作,总结了一下,原因有三。 编程就像在玩解谜游戏 打小我就特别爱玩解谜游戏,上学的时候我又特别喜爱数学,这门学科富有逻辑性,特别适合我。现在做的工作也让我有相同的感觉。...你的朋友们经常夸你是个天才 前面我说过,身边的朋友们都没有技术背景,她们根本不明白我在捣鼓什么。相信我,我已经向她们解释过无数次了,可是到最后都被她们当成了耳边风,她们始终以为在电脑面前我无所不能。...这也是为什么如此热衷于我的工作,我要向他们显示在这个男性主导的科技领域,女性也可以做的很好。 跟我不一样,有很多女性非常惧怕这个领域。...现代社会虽然性别的界限变得越来越模糊,但是总会有些工作特别适合女性或者男性来做。从小到大,我们的大脑都养成了一种惯性思维。如果我们要去理发,理发师肯定是个女的(我们中国人正好相反^_^)。
作为一名前端工程师,选择合适的技术栈对项目的成功至关重要,我最近一个星期尝试了下这两个技术栈的组合,大概在一个星期就写了一个小 SAAS,总共 10 多个页面。...在本文中,我将分享为什么我选择Next.js 14和Supabase作为全栈开发的首选组合,并通过最新的代码示例和比较数据,直观地展示这个选择带来的诸多优势。
在此之前,我不止一次强调过QC的重要性,对全基因组测序等以找variation为主的分析流程来说,不仅仅是对测序数据的QC,还有比对之后的sam/bam文件也需要QC,最后找出的variation文件也需要...我这里讲挑出两个读者来信咨询的最多的软件来简单讲解一下吧! samstat 这个软件对大的bam文件运行经常会报错,就是程序界最出名的segment fault,应该是内存不够。...命令如下: samstat P_jmzeng.final.REF_*bam 默认对每一个输入的bam文件,都是会输出一个网页版的统计QC报告的,上面的命令会把所有染色体的bam文件都输入,但事实上这个软件对某几条染色体还是有限制...,这个软件其实很烂的,我一般都不用了。...有时候,觉得生信工程师真心不容易,什么都得学一点什么都得会一点,但是最重要的,是要有解决问题的勇气和感觉。
数据技术专家 Elastic-Stack产品深度用户,ES认证工程师,对Elastic-Stack开发、架构、运维有深入体验; 实践过多种ES项目,最暴力的大数据分析应用,最复杂的业务系统应用。...Redis监控体系应该细化到什么程度? 为什么使用ELK构建监控体系?...解决方案 为什么会选择Elastic-Stack技术栈呢?...Q2:直播中讲到的大key,hash要改成什么?分片吗?...A:1、没有深度使用过MongoDB;2、基于Elastic-Stack做慢查询报表平台思路与Redis一样的,不管什么指标+日志全部都采集到ES完事。
show) }}>切换 )}抽取之后发现运行报错了,这里就需要回顾一下之前的知识点了,也就是 Hook...中自定义一个 Hooks只要在函数名称前面加上 use, 那么就表示这个函数是一个自定义 Hook, 就表示可以在这个函数中使用其它的 Hook好了了解了这些知识点之后,我们接下来就可以解决我们如上示例的报错了...show) }}>切换 )}如上就是关于自定义 Hook 的内容,到这里我相信如果你跟着的是博主的文档一直看到这里...最后本期结束咱们下次再见~ 关注我不迷路,如果本篇文章对你有所帮助,或者你有什么疑问,欢迎在评论区留言,我一般看到都会回复的。...大家点赞支持一下哟~ 我正在参与2023腾讯技术创作特训营第二期有奖征文,瓜分万元奖池和键盘手表图片
领取专属 10元无门槛券
手把手带您无忧上云