首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

为什么我们开源

对于开发者来说,可以自由的使用其中的技术。 我昨天突然意识到了另外一个好处。最近发生了一件事儿,我以前开发过的一个产品被公司的一个合作伙伴收购了,这个产品的部分工程师编了一个视频作为纪念。...我们为什么想要纪念一下?并不是这个产品有多么好,主要是我们付出了人生中的几年时光在这个上面,需要纪念的是我们的记忆。...对于开发者来说,这就是我们的经历,把我们的才能才干、多年的美好时光放到某个产品上。 我们的优秀是通过一个载体体现出来的。不过,问题是这个产品能够体现出我们的优秀了吗? 其实,它几乎不能。...我们不用讨论管理上带来的痛苦和限制。在空间上,团队中有些成员会写出让我们难以忍受的代码;在时间上,历史遗留的代码只是小痛,遗留下的框架才是问题,基本上让我们无奈。 这是开发者的悲哀。...我们可以从开源项目中获得这个好处。帮你的最好的代码写到里面吧!

1.5K60

我们为什么探索宇宙?

他这封真挚的回信随后由NASA 以《为什么探索宇宙》为标题发表。...也许你会问:“为什么不从纳税人为太空支付的30美元里抽出5美元或3美元或是1美元来救济饥饿的儿童呢?”为了回答这个问题,我需要先简单解释一下我们国家的经济是如何运行的,其他国家也是类似的情形。...通过高科技手段,如灌溉管理,肥料的使用,天气预报,产量评估,程序化种植,农田优选,作物的习性与耕作时间选择,农作物调查及收割计划,可以显著提高土地的生产效率。...面对如此严苛的要求,我们寻找新材料,新方法;开发出更好的工程系统;用更可靠的制作流程;让仪器的工作寿命更长久;甚至需要探索全新的自然规律。 这些为登月发明的新技术同样可以用于地面上的工程项目。...我们需要更多的年轻人投入到科学事业中来,我们需要给予那些投身科研事业的有天分的科学家更多的帮助。随时要有富于挑战的研究项目,同时保证对项目给予充分的资源支持。

57750
您找到你想要的搜索结果了吗?
是的
没有找到

为什么我们改用gRPC

默认的选择似乎是通过HTTP发送JSON — 使用所谓的REST API,尽管大多数人不太重视REST原则。我们在fromAtoB就是这样开始的,但最近我们决定将gRPC作为我们的标准。...虽然它已经存在好几年了,但是我还没有在网上找到很多关于人们为什么使用或不使用它的信息,所以我决定写一篇文章来解释我们使用gRPC的原因。...double longitude = 2; } 使用这个文件,你可以使用protoc编译器生成客户机和服务器代码,并且可以开始编写提供或使用API的代码。 那么,为什么这是一件好事,而不是额外的工作?...OpenAPI难读得多!它更冗长,结构也更复杂(八个缩进级别而不是一个)。 使用OpenAPI规范进行验证也比使用gRPC更加困难。...从程序员的角度来看,这比实现轮询API容易得多。 注意事项 我想提一下gRPC的几个缺点。它们都与工具有关,而不是协议本身。

2.4K20

为什么我们尝试Kotlin

使用Anko库开发Android应用时,我们已经尝到了空指针安全、数据类和易于构建DSL的甜头。...由于最近在客户项目上有机会使用了Kotlin这门今年大热的语言,所以在好几个不同的场合都被要求做一些Kotlin相关的分享,在这个过程中被问到的最多的一个问题便是——我们为什么尝试Kotlin?...我们依然可以使用我们所熟悉的框架、构建工具、开发工具和测试工具。 ? 如何开始? 看了这么吸引人的语言特性,或许你已经忍不住想要尝试Kotlin了。...使用Kotlin编写单元测试 如果你比较保守,那么你可以开始尝试在项目中仅通过Kotlin来编写单元测试,同样得益于Interoperable这个特性,我们可以轻松的使用Kotlin来为Java类编写单元测试...技术雷达 正在我们还在犹豫是否尝试Kotlin的时候,最新一期技术雷达上Kotlin的表现又给了我们一个难以抗拒Kotlin的理由。

86950

我们为什么学习TypeScript ?

}); console.log(reuslt.join("")); } getUpperCase(getstr()); 问题之处 JS中常见的错误 使用不存在的变量...、函数或成员方法 把一个不确定的类型当做一个确定的类型处理 在使用null或者undefined的成员,JS开发错误排名第一个就是它 当一个函数返回一个对象,这个对象里有name属性,但由于程序出错,没有返回对象...,再使用name属性就会报错,如下: 在开发的过程中,会遇到各种各样的错误,由于我们是人,不是机器,没有办法避免这样的错误,既然没有办法避免,那好歹在出错的地方提示我一下啊,这总不过分吧!...那么JS为什么不能给我们提示错误!这源于JS的两个特点,一个是弱类型,弱类型指的是某个变量可以随时更换类型,但是像java,c#这些是不行的,它们是强类型语言,不能随意的更改类型。...这时TypeScript出来了,TypeScript就能解决这些问题,我们为什么学ts,实际上是为了提高我们开发周期,提高效率,能够缩减我们项目周期,少犯一些莫名其妙的错误 TypeScript语言特点

64230

我们为什么禁用 THP

前言 我们之前在生产环境上遇到过很多起由操作系统的某些特征引起的性能抖动案例,其中 THP 作案次数较多,因此本文将和大家分享 THP 引起性能抖动的原因、典型的现象,分析方法等,在文章的最后给出使用THP...最典型特征 —— Sys CPU 使用率飙升 我们在多个用户现场发现当分配 THP 引发性能波动时,其最典型的特征就是 Sys CPU 使用率飙升,这种特征的分析比较简单,通过 perf 抓取 on-cpu...,在本文就不做过多介绍了; 对于 CentOS 7.6 等支持 BPF 的 kernel 也可以运行我们研发的 drsnoop,compactsnoop 工具对延迟进行定量分析,使用方法和解读方式请参考对应文档...; (Opt) 使用 ftrace 抓取 mm_page_alloc_extfrag 事件,观察因内存碎片从备用迁移类型“盗取”页面的信息; 非典型特征—— 异常的 RES 使用我们在 AARCH64...因此对于我们常用的 CentOS 7 3.10 版本的内核来说,若程序需要使用 THP,则建议将 THP 的开关设置为 madvise,在程序中通过 madvise 系统调用来分配 THP, 否则设置成

1.8K11

为什么我们阅读源码?

(见我的文章:你避免的软件开发模式) 你周围最强的那个工程师的开发水平的上限就是你的上限。 我们再回到读书进行类比。 从小学到高中,就语文而言,12年时光,单单课本我们读十二册,数百篇文章。...随后,我自己的文字里也模仿着,有时甚至刻意地如此这般使用比喻来增强画面感。...我在边学 elixir 边做 policy engine(见:Policy Engine 的前世今生)的过程中,除了官方的文档和零星的博文外,可读的内容少得可怜,我解决的一些问题,论坛里也没人能给我较好的思路...),这一思路在今年年初进一步发扬光大成了我们现在在 Tubi TV 使用的 policy engine 和 content engine,为每日不计其数的内容请求保驾护航。...我们使用了 code as cache 的方法,把数据库里的内容的不必在运行时做的 transformation 都在 compile time 完成,然后在 run time 结合记叙文三要素,得到最终的结果

74980

为什么我们开源我们的 Python 平台

我们为何创造 Anvil Anvil 是一个可以使得构建 Web 应用更加简单的工具。我们让你们有能力仅使用一种语言—— Python —— 就可以来构建你的整个应用。...我们将所有的繁杂的技术栈进行了替换,只用 Python 就行啦! 简单的 Web 托管很重要,但还不够 Anvil 还可以为你托管你的应用程序。为什么不呢?...部署 Web 应用程序非常复杂,因此运行我们自己的托管服务是提供我们所需的简单性的唯一方法。在 Anvil 编辑器中构建一个应用程序,单击按钮,它就在网上发布了。...服务并不是适合所有人的解决方案。如果我们想为这些用户提供服务,就必须有一些方法让他们把自己的应用从 Anvil 中取出来,在本地运行,由他们自己完全控制。...如果你使用 Anvil 是因为它的 拖放编辑器 和 运行在浏览器中的 Python,那么你为什么必须使用 vim 和 Javascript 才能在本地托管你的应用程序?

57020

原创投稿 | 我们为什么学习?

为此我还向一些年长者学习,我问年长者:人为什么读书?他给出了一个很现实的答案:“读书是为了拓宽生活道路!”,这句话说的我至今记忆犹新,每当我感到生活不易的时候,我就觉得我该学习了!...工作也可以看作是学习,人的工作是解决社会问题,社会问题始终伴随着我们人类生活,为了解决这些问题,于是就产生了劳动(工作),我们工作就是解决一些问题!...就形成我们现在每个人的工作!我们每天要做的就是怎么熟练掌握这个行业的知识! 从以上看,工作就是为了实现以上人的吃,洗,穿,睡,行,玩的基础。这就是人为什么工作学习,现在中国人这么多,竞争是那么激烈!...为了使自己吃的更安全,活的更有质量你必须要工作,学习! 既然学习如此的重要,就必须从吃,洗,穿,睡,行,玩中抽出点儿时间,来补充学习,这样才能提高你的生活质量。那么怎么合理安排时间呢?...每天都告诉自己学习,慢慢的养成了一种学习的习惯!随之就成了一种惯性!

72870

我们为什么分库分表?

你知道我们为什么要做分库分表吗? 这个问题要从两条线说起:垂直方向 和 水平方向。 1 垂直方向 垂直方向主要针对的是业务,下面聊聊业务的发展跟分库分表有什么关系。...更重要的是减少系统的复杂度,保证开发速度,我们通常会使用单库来保存数据。...我们当时考虑了,水平方向的数据量可能会很大,但是用户并发量并不大,不像登录接口那样。 所以采用的方案是:分表。 当时使用一个积分数据库就够了,但是分了128张表。...所以,综合考虑了一下,当时我们采用的技术方案是:分库分表。 经过调研之后,觉得使用了当当网开源的基于jdbc的中间件框架:sharding-jdbc。 当时分了4个库,每个库有32张表。...[617a7c822ab3f51d91faca75.jpg] 4 总结 上面主要从:垂直和水平,两个方向介绍了我们的系统为什么分库分表。 说实话垂直方向(即业务方向)更简单。

69711

为什么写爬虫,我们选择Python

为了抓到那些响应,我们就不得不继续完善http协议的解析功能,贡献了很多代码。。 ? 为什么自己实现基本的http协议呢?难道就没有好的第三方库可以用吗?...遇到这种情况,我们就必须在最快的时间内调试找出问题所在,并以最快的速度修复,使其尽快上线跑起来。 2....Python的简洁,也让开发者可以仅用几行代码就实现一个功能,而同样的功能用Java可能几十行上百行,要用C++可能是几百行。...比方说, 我下载网页就用, Python标准模块urllib.request,还有好的没话说的第三方开源模块requests 异步http请求的有aiohttp 我处理网址url就用: Python...对的,像搭积木一样实现你的网络爬虫,为什么不选择Python呢?

69050

JavaWeb项目为什么我们放弃JSP?为什么前后端解耦?为什么动静分离?

然后jsp页面上使用各种标签(jstl/el)或者手写java()将后台的数据展现出来。 对吧? 我们先看这种情况,需求定完了,代码写完了,测试测完了,然后呢?发布了吧?...那么我们来看,我们先假设你的首页中有100张图片,以及一个单表的查询,此时,用户的看似一次http请求,其实并不是一次,用户在第一次访问的时候,浏览器中不会有缓存,你的100张图片,浏览器连着请求100...这就是为什么,越是大中型的web应用,他们越是解耦。...下面步入正题,首先以后的java web项目都尽量避免使用jsp,搞前后台解耦,玩分布式架构,这样我们的应用架构才更强。...续集: JavaWeb项目为什么我们放弃jsp?为什么前后端解耦?为什么前后端分离?2.0版,为分布式架构打基础。 原创文章,禁止转载,定期更新。

1.2K40

服务器测评 为什么选择腾讯服务器?

腾讯服务器,简称 CVM 是通过高性能服务器虚拟化的服务器、拥有专业团队打造资源隔离、数据安全、密码安全、安全加固等多达 20 种安全防护手段。...其实就是和阿里(ECS)差不多但技术不同的 VPS。以下我就用腾讯最低配带公网 IP 的这一套餐来评测一下吧(¥65/月)!...二、硬盘读写、下载速度、跑分: 为了给大家一个全面的选择,准备了一些小数据给大家看、首先 CPU 使用的 E5 详细的去搜索一下 E5-2640,硬盘读写速度不错、是阿里的 10 倍~50 倍:...硬盘 + 未知(可能是10M)= ¥69/月 腾讯早期是提供给腾讯平台开发者使用,个人认为技术不会比阿里差,我们公司早期使用腾讯做生产环境,还是比较稳定,遇到问题客服也能及时解决,还是赞一个的。...购买之前记得先领取腾讯代金券2860元专享礼包!

12.7K30

我们为什么搞5G-A?

原因很简单,2023年即将结束,我们马上迈入2024年,而2024年通信行业的一件大事,就是3GPP R18版本即将冻结。...接下来,我就和大家聊聊,为什么发展5G-A。 █ 用户需求的驱动 需求,一直以来都是技术发展的主要推动力。没有需求,就没有应用。技术再先进,指标再高,也没办法成功。...未来是数字时代,以5G为代表的联接力,与以AI、计算为代表的算力,是国家核心竞争力。 在通信领域,我们花了几十年的时间,一点点从落后走向领先,是来之不易的。科技研发,就像逆水行舟,不进则退。...如果放弃5G和5G-A的研究,我们就会丧失这个竞争优势。等将来爆发的时候,我们就又落后了。 算力那边,我们在芯片上这么被动,就是明证。 5G、5G-A,以及未来的6G,是移动通信发展的必经之路。...信通院IMT-2030推进组发布了6G方面的一系列进展,让我们对6G有了更多了解。 按照规划,6G预计2030年商用,距离现在还有7年。

17010

企业为什么

最近几年,企业上一直是一个热词,被制造业企业所追捧,那么企业为什么呢?...另一点就是国家的好政策,工信部出台的《推动企业上实施指南(2018-2020年)》明确了2020年全国新增上企业100万家的目标。...那么哪些行业适合企业上呢?一般就是具有技术特点的制造业。...技术制造业有两个痛点,企业管理和生产管理,企业没有一套完整的管理系统,从采购到销售整个环节中没有完整的记录,不能实时查看库存、生产水平、使用容量等等,在突然出现大的订单的时候,无法及时做出处理;对于生产的管控也不到位...从基础数据、销售、采购、生产、库存、财务、决策分析等形成闭环式管理,实现生产业务一体化,通过信息化手段助力企业数字化转型升级;使用MES系统,接收生产计划到制成最终产品全过程的生产活动实现优化的信息,重点削减不会产生附加值的活动

1.4K30

DNSPod十问董文辉:我们为什么拥抱原生安全?

腾讯安全对自己的定位也很朴素:做B端安全就是保障B端客户的安全,我们到哪里去,我们的安全就要到哪里去。只是在这个过程当中,我们可以采用灵活的姿势切入,有的可以靠自研,有的结合生态的力量。...董文辉:上安全对比传统安全,差异就多了。 第一,上安全使用起来更加简单。...因此,我们腾讯安全会把产品的门槛降得非常低,让用户像使用C端产品一样轻松,不需要去了解病毒、漏洞等的原理,就能解决安全问题。...在传统的PC,我们只需要把边界管控好就可以,而如今进化到虚拟机,再到容器,以及现在到函数和Serverless,我们如何应对?...我们腾讯内部平台——DNSPod公众号、腾讯中小企业服务公众号、腾讯公众号、腾讯主机公众号、腾讯服务器公众号、腾讯助手、腾讯乐问、腾讯码客圈、腾讯KM平台、腾讯+社区、腾讯+大学等平台累计关注度高达数十万

65550

腾讯服务器优惠购买为什么选择腾讯3折特惠活动

如果我们新购腾讯服务器,个人觉得最合适的优惠活动就是腾讯产品3折起特惠活动了,为什么呢?因为不仅价格低,而且购买简单,新老用户都可以购买。...下面我们来说说腾讯服务器优惠购买为什么选择腾讯3折特惠活动的理由: 首先腾讯3折特惠地址:腾讯产品3折特惠 另外推荐购买的时候结合腾讯最新的2860元代金券一起,更加实惠。...也就是说高配一点的腾讯服务器可以一次买5台,普通配置的最多可以一次购买20台,如果我们是要买多台腾讯服务器,每台便宜一些,加起来节省的数字相信会让用户非常满意。...理由6::搭配数据库-MySQL高可用版,更好的满足用户实际需求 我们买了服务器之后,有些用户还需要购买数据库类产品,如果只是服务器享受了折扣,数据库享受不到折扣,那成本还是会有一定提升,但是在腾讯产品...以上就是个人总结的为什么腾讯服务器优惠购买为什么选择腾讯3折特惠活动的理由,购买服务器选择腾讯,大品牌信得过,还有优惠,何乐而不为呢。

22.6K20

为什么我们熟悉这些通信协议?

TCP的四次挥手: 建立一个连接需要三次握手,而终止一个连接经过四次握手,这是由TCP的半关闭(half-close)造成的。具体过程如下图所示。...但是公开密钥加密与共享密钥加密相比,其处理速度慢。所以应充分利用两者各自的优势,将多种方法组合起来用于通信。在交换密钥环节使用公开密钥加密方式,之后的建立通信交换报文阶段则使用共享密钥加密方式。...针对速度变慢这一问题,并没有根本性的解决方案,我们使用 SSL 加速器这种(专用服务器)硬件来改善该问题。该硬件为 SSL 通信专用硬件,相对软件来讲,能够提高数倍 SSL 的计算速度。...为什么不一直使用 HTTPS 既然 HTTPS 那么安全可靠,那为何所有的 Web 网站不一直使用 HTTPS? 其中一个原因是,因为与纯文本通信相比,加密通信会消耗更多的 CPU 及内存资源。...进行 HTTPS 通信,证书是必不可少的。而使用的证书必须向认证机构(CA)购买。证书价格可能会根据不同的认证机构略有不同。通常,一年的授权需要数万日元(现在一万日元大约折合 600 人民币)。

96540

为什么我们学习Java虚拟机

在大家看来,我们仅需知道 Java 核心类库,以及第三方类库里 API 的用法,便可以专注于实现具体业务,并且依赖 Java 虚拟机自动执行乃至优化我们的应用程序。...那么,我们还需要了解 Java 虚拟机吗? 我认为是非常有必要的。如果我们把核心类库的 API 比做数学公式的话,那么 Java 虚拟机的知识就好比公式的推导过程。...并且,在遇到那些没法套公式的情况下,我们也能知道如何解决。 具体来说,了解 Java 虚拟机有如下(但不限于)好处。...学习 Java 虚拟机,可以更好地规避它在使用中的 Bug,也可以更快地识别出 Java 虚拟机中的错误, 再次,Java 虚拟机拥有当前最前沿、最成熟的垃圾回收算法实现,以及即时编译器实现。...当然,在我看来,我们的工作同样也是分析应用程序的性能瓶颈,寻找优化空间,只不过我们的优化方式对自动化、通用性有更高的要求。

633100
领券