查看详情

一台电脑与多个 Github 账户协作

很多公司都是企业组织在 Github 上进行代码的管理,因此大家可能需要一个工作的账户和个人的账户区分。其实这个非常好弄,只需要两部即可: Step1 配置多份配置 你可以在你的根目录,创建下面的的结构 ~ ├── .gitconfig <-- global └── Developer/ ├── personal/ │ ├── project_1/ │ ├── project_2/ │ ├── project_#/ │ └── .gitconfig <-- personal └── company/ ├── project_1/ ├── project_2/ ├── project_#/ └── .gitconfig <-- company 然后更新两份配置 # ~/Developer/personal/.gitconfig [credential] username = <github-user> [user] name = <github-user> email = <github-user>@users.noreply.github. 详情 »

查看详情

工作效率提升小结

自己今年给自己的目标就是提升工作效率。之前在国内公司,大多都是卷为主,也就是主要付出时间,比如自己从几点到几点,早10点晚9点,觉得自己工作够了。然而在外企,普遍没有这种加班风格后,效率就变得尤为重要。尤其是自己对比美国同事发现,别人在有限时间里的产出确实非常高。 提升工作效率,至于如何量化,可以参考《番茄工作法图解》。看自己今天的主要事情 TODO 数量和完成了几个番茄时钟,以及自己中断次数。 自己今年切换了每日 Todo 的 APP Habitica,非常不错的软件,我在电脑和 iPad 上都有安装。可以设立每天,每周的目标,而且有非常不错的激励系统。 自己早上开始工作前,会看下 Habitica, 然后开始设立今天的待办事项,比如需要完成什么样的 PR, 需要参与什么样的讨论等等。 然后自己买了一个时间沙漏,40min 那种,然后完成会有 10 min 休息。这十分钟可以看看手机,看看聊天内容,看看新闻等。。。 每天下班后,在 Review 下 Habitica 看看自己哪些没完成,哪些需要改进。 详情 »

查看详情

The Plan of 2024

There are some things I need still to focus on and improve in 2024; Better Work Performance Improving the work effcient Better Code Review 24+ Books 30+ Blogs English Listenning and Speaking 10+ English Original Articles Bilibili Up(5+ videos) LOL Silver The Master of Peking Univesity 3 Years (3/3) for a big house(> 详情 »

查看详情

视频前沿技术

这篇文章摘自《在线视频-技术精要》。这是一本非常适合从事多媒体工作的开发人员的手册,里面设计了非常多的方便,不单单是视频编解码,也包括其延伸和基础服务这些。 这里简要罗列下最近阅读的章节,前沿技术趋势。 10bit我们目前主流的 8bit,其实就是我们 RGB 进行组合会有 256 (28) * 256 * 256 总可能性。而 10Bit 也就是 1024(210) * 1024 * 1024 总可能性;这大概可以提供10.71个不同颜色,这无疑将会对图像还原提供更加精准的支持。但是考虑到市场大量的设备仅仅支持 8 bit,显示设备对尚未形成普遍需求。 全面应用还需要等待更长的时间使用颜色更加清晰的活泼的图像,会给人一种更好的体验 HDRHDR(高动态范围)频已经在照片领域广为流行,但是由于传感器所限图像和视频拍摄时,无法保留光照的完全细节需要节奏技术手段给不同种曝光,设置照片组合出HDR的图像HDR并非只影响明暗度,他们与更广的社育和更高的相处比绑在一起为了保证第二内容可以显示,设备上得到正确的渲染。 HDR对视频处理流程中带来的主要变化是显示的预处理和后处理细节,考虑到对SDR内容的兼容有两种流媒体的方案, 一种方案是基于可伸缩视频编码及SDR内容为基础,增强层带有额外的动态颜色范围信息分别进行编码和传述支持需要用专门的解码及极品 HDR 重建另一种方案,这事情生产一个层流和包含额外动态范围与颜色信息的原数据,传统的播放数据则忽略这些元数据,支持HDR的设备进行重建。目前很多设备包括手机都有对 HDR 的支持,总的来说这一块还算比较热门了。 详情 »

查看详情

2023

勇气是 AD 的第七件武器 画面回到21年10月底,第一次看英雄联盟世界赛的比赛。 DK VS T1 半决赛; Faker 时隔一年重新回到世界赛。这也是 Gumayusi 第一次世界赛之旅。我仍然记得,这场比赛打到了最后的 BO5,而这次失利,似乎大家都开始认同 Faker 老了,已经无法支撑起高强度的比赛。 然而2023年,世界赛的冠军回到了 T1 手上。也有了载入史册的沙皇逆天一推。 如果 2022 梅西夺冠是上天对天才的付出最后奖励。那2023则是对持续努力最好的回馈。 你很难想象,他们过去输了无数次决赛,无数次与冠军擦肩而过。 如果我觉得今年最有感触的圣经是什么: 勇气是 AD 的第七件武器 这是今年 LCK 春决,Gumayusi 勇敢向前闪现,将T1送进春决。电子竞技是一个非常考验反应和判断的比赛,而对选手心理要求也极高。而也是这么高强度的压力下,做出这样极具挑战的事情,是需要怎样的勇气。 JDG VS T1 的 Game3, 也正是勇敢的闪现一推,堵上了这一场比赛甚至后面决赛的胜负手, 详情 »

查看详情

下等马理论

最近自己再工作悟道了一个重要的理论,去帮助大家降低工作的压力和忧虑。 我们知道 田忌赛马的典故: 齐国使者到魏国都城大梁来,孙膑以一个受过刑的罪犯的身份暗中会见了齐使,用言辞打动齐国使者,齐国使者觉得孙膑的才能奇异,就偷偷地用车把他载到齐国。齐国的将军田忌欣赏孙膑而以客礼待之。田忌多次与齐国的诸公子赛马,下很大的赌注。孙子注意到他们的马奔跑能力不相上下,并且分上、中、下三等。因此孙子对田忌说:您只管下大注,臣下必能使您获胜。田忌相信并答应了他,与齐王和诸公子用千金来赌胜,到了临比赛时,孙子说:请用您的下等乘马对付他们的上等乘马,请用您的上等乘马对付他们的中等乘马,请用您的中等乘马对付他们的下等乘马。三等乘马全部比赛完毕,结果田忌一场不胜而两场胜,终于得到王的千金之赏。所以田忌把孙子推荐给齐威王。威王向他请教兵法,因而任他为军师。 这个故事里面最重要的特征,就是有三等马。如果我们仔细想一想:下等马是这里面是非常重要一环: 下等马可以衬托上等马的优秀 下等马关键时刻是可以可以和别家的上等马进行消耗 下等马不太会主动越级不造成他人的竞争干扰 所以下等马不够优秀,但是广受欢迎。 如果我们日常生活中工作中,可以尝试将自己当做下等马。这样你就不会: 这个实现有个小bug 被发现了(下等马:嗯,这说明我们的测试很优秀) 有人在我的 PR 提出质疑了(下等马:嗯,上等马不愧是上等马,果真很厉害) 详情 »

查看详情

什么是 DRM

DRM (英语:Digital rights management,缩写为DRM)是一系列访问控制技术,通常用于控制数字内容和设备在被销售之后的使用过程[3][4][5]。DRM有时也称为拷贝保护、复制控制、技术保护措施等。许多数字出版社和软件厂商都使用了DRM,例如亚马逊、AT&T、AOL、Apple Inc等。它如今一次成为很多公司最为基本的一想服务和要求。而且在音视频,文档,电子书领域都有他的存在。这里自己主要介绍音视频中的 DRM。 如今,电视音乐已经成为我们生活的一部分。如果大家回忆历史的话,我们最初接触这些东西是通过电视,而不是 APP。那个时候大家还流行通过租借 VCD 的形式,来看成龙周星驰的电影。随着数字媒体的兴起,我们可以非常容易的在网上看到最新的电影,这给电影的制作商带来了非常大的利益损失。因此对于非常复制的盗版打击,一直都是这些从事内容提供商一直需要去处理的事情。 DVD论坛的内容扰乱系统是一个早期的DRM系统。它使用简单的加密算法,制作DVD播放器的厂商必须获得授权在产品中实现此技术,然后才能解密并播放DVD中的加密内容。授权条款规定了播放DVD内容的方式,包括输出信号的格式和方式,以保证在电视上播放时视频的加密不受破坏。 在1999年,微软发布了WMDRM,用于执行媒体文档包含的DRM指令,限制用户对媒体文档的使用。这些DRM指令可以指定文档的播放次数、是否能被备份或转发。 详情 »

查看详情

深入理解 DRM 系列

准备开始写一系列关于 DRM。由于自己主要从事流媒体工作,这里也以流媒体的内容为主。 这里大概会写几篇,代码部分会聚焦在 Web 端的内容处理。自己最近一直在从事这方面的工作,因此也希望罗列整理一些资料,分享自己在这方面的一些心得。 DRM 目前已经存在于绝大多数的服务 APP 中。最直观的体验,就是你可以尝试看一些来自 Disney 等电影公司的电影,时候你可以尝试截图试一下: 我们可以从 Bilibili 网站点击进去,发现截图的时候是黑屏。这样也是为了防止录屏将视频流出去。尽管我们有 DRM 保护技术,但是还是依旧存在严重的流媒体盗版事件。因此DRM发展依旧有很长的路。 这一些列文章,自己将从下面几个部分区介绍: 什么是 DRM 常见的流媒体DRM 方案 Web 前端如何支持 DRM 深入理解 Widevine HDCP介绍 PSSH and PSSH Box 介绍 常见的 DRM 问题 希望这一系列文章,可以帮助大家去慢慢理解 DRM 工作,并且在日常工作中有所实践。 详情 »

查看详情

分享十件让自己愉悦的事情

现在年轻人,都非常忙碌, 工作压力巨大,因此大家都在寻求一些让人可以短暂放松的方式。这里分享五件自己觉得还不错的方式,可以让人获得短暂的愉悦心情; 跑完步后逛超市 自己觉得每次跑完步后,大汗淋漓。然后去 711 或者盒马,逛一圈。跑完步后,大脑处在一个兴奋的状态,看看展示柜里琳琅满目的各式各样饮料,挑一瓶合意的,也算是开心的事情。 去看一部喜欢的电影 周末无聊的时候,自己最近几年会尝试挑一部经典的电影。完全看心情,有时候会看喜剧,有的时候会看有历史痕迹的电影。又或者跟着某位明星看。自己去年喜欢两个系列,一个跟着范伟老师看的,拍了很多类型,喜剧,文艺片都有。而且评价还挺好。然后是看了几部很早的差不多九几年到新千年的电影,主打一个中国传统的官场文化,人情世故。我觉得这件事情也是非常容易做,也不会有太多压力的。 Citywalk 如果你希望长时间一点的话,可以尝试一次无拘无束的漫步。不用太在意去哪里,就是从某个点到某个点,走上半天或者一天,累了就休息休息,饿了就看看周边有什么食物。这样的话,既有身体的运动,也有脑海的放空,效果还是挺不错的。 删照片 现在好多人相册里肯定有很多照片,有重复拍摄的,有很多时候是交流截图,因此花些时间清理下照片,也是非常不错的事情。可以很好的治愈和解压。看着照片数量的优化, 详情 »

查看详情

Typesctip unknown vs any

Typescript 如今已经成为非常火的开发语言,很多公司都将它作为首要的项目搭配。自己也是在使用中,发现了国外工程师非常严苛的要求用对 unknown 和 any。 unknown 类型,顾名思义:任何值都可以分配给unknown类型,但如果没有类型断言,unknown则不能分配给除自身和any类型之外的任何值。unknown同样,如果没有首先断言或将其限制为更精确的类型,则不允许对类型设置为 as 的值进行任何操作。 any 则是当变量的类型未知或变量的类型尚未定义时使用的泛型类型 其实我们看一段代码就很好理解了: let vAny: any = 10; // We can assign anything to any let vUnknown: unknown = 10; // We can assign anything to unknown just like any let s1: string = vAny; // Any is assignable to anything let s2: 详情 »