前情提要:2022的Flag
重修数据结构+算法
重启了leetcode的算法题,但是进度缓慢
重修图形学知识
忙着学习openxr的东西,图形学的部分反而没有怎么看
找到一个落地黑科技
完全NG,年初一个大转型就走出了手机行业,不知道XR的部分是不是算黑科技?
完成一次mini铁人三项
没有完成,2022-11-29健身房器械PB:史密斯机蹲20+60x2=140KG,自由杆推:14+37.5x2=89KG,硬拉:14+45x2=104KG,自身体重82.3KG。
2022整体回顾
整个2022年只有一个主题,就是转型,全面从手机转向了XR,大约从2月份开始接到密令需要着手研究XR相关的内容,由此开启了OpenXR Spec的学习,正好借着上海的疫情,可以在家里进行系统化的XR学习和密集的文档输出;另外一方面是正儿八经的开始做团队建设。
VR-OpenXR:
结合自身的经验,整体的OpenXR学习目录和顺序如下:
什么是OpenXR:了解OpenXR,需要明白
Khronos官方Spec:https://registry.khronos.org/OpenXR/specs/1.0/html/xrspec.html
OpenXR的代码结构:弄明白OpenXR的实现在哪里
OpenXR Out Of Process的代码实现:解决什么是Out Of Process模式
Loader & Broker:OpenXR在运行过程中是找到所谓的Runtime的?
Khronos的表示实现解析文章:《OpenXR Loader and Broker》
OpenXR中的关键概念:Instance,Session,Swapchain
解析文章:《Monado Session状态流转》
VR中的显示/渲染/时延的关系:ATW等技术是怎么来的?
- John carmack的小作文:https://danluu.com/latency-mitigation/
- Monado代码中预测显示时间的实现细节解析:《Timing of Compositor》
OpenXR中的数据流:Monado头显数据通路是怎么回事?
XR世界中的Space和坐标系:各个坐标系的转换是怎么回事?
小白教程,从右手左手坐标系到设备上的各个坐标系解析文章:《XR开发中的坐标系》
本来打算再写一篇OpenXR中的三个Space的解析文章(、VIEW,LOCAL,STAGE),但由于种种原因没有继续,主要还是懒OpenXR中的Api Layer:Api Layer是怎么回事,如何实现?
解析教程:《OpenXR Extension Api Layer实现方案》
附赠的一些东西,典型的是Hand Tracking等特性的扩展实现:《OpenXR Hand Tracking》
一些额外的技术实现:好玩的,有用的
Android普通应用在OpenXR(VR)上的显示:《Unity - Android Share Texture》
Mediapipe的好玩项目们:《Mediapipe编译》
SDK实现的行业分析:《管中规豹-Oculus App生态分析》
小结
通过大约8个月的代码阅读和实践,对VR项目可以说有了一定的认知,相对手机来说:
- VR的门槛在透镜和光学上貌似更高(对于传统的camera团队来说),
- 对延迟和功耗的敏感度也要高
- 在材料和整机重量上也有一定要求
结合自己在各个竞品的体验,发现除了硬件,软件生态和app的独占性,对最终产品的购买选择上也会有很大影响(所以OpenXR是各大内容厂商很期待的内容)
团队建设-MDE工作:
MDE=Module Design Expert,今年开始额外多了一个角色:部门一级MDE,需要带着部门中的各个模块MDE进行责任模块建设。
主要的工作是分为三个模块:
- 模块建设者:培养新人,需求讨论,模块设计
- 模块维护者:文档维护,代码维护,产品维护
- 模块观察者:行业路标,模块未来,技术迭代
出发点是非常好的,但是作为一级MDE,更大的责任是需要去帮助具体模块的MDE完成各自的OKR,在推进过程中会发现很多伙伴对于文档,流程,交付是没有什么理解的,有时甚至是觉得因为老板要做所以我才去做,因此在公司内部存在的普遍问题是:模块交不出,老人抽不出,新人无法上位。
结合自己的经验,本来的打算是想用两年四个半年的时间来影响/挑选一些同事:
第一个半年夯实基础知识,带领大家一起看一些书,学习方法论。
去年的周志华《机器学习》西瓜书,今年的《代码随想录》
第二个半年梳理/反思公司流程,在流程中确定一些共识,从内心认可流程的必要性。
code review的必要性,jira流程的必要性,督促组内的同学来共同遵守
- 第三个半年开始着手整理模块文档,并从组员中发现后继者,建立真·人才梯队
让当前的MDE从繁忙的交付中解脱出来,可以尝试去做一些行业分析,找到新的方向
- 第四个半年尝试让各个MDE可以从当前模块走出去,厘清/拉通模块的上下游
做App的可以真的去debug framework,做framework的也可以帮着app做优化
很可惜,整个过程做到第二个半年就结束了,而大部分的MDE们等于是重新领略了一遍新人的学习路线罢了,依旧没有从繁忙的交付中抽出来。只有猪队友实验室走到了第四步,但其实是走了3年才走到,很欣慰的是大家也感受到了从交付中解脱后的好处:可以有时间去挑战更难的任务,同时也让人很难受,因为任务越来越具有不确定性(因为都是前瞻,预研性质的,并没有既定的KPI),大家的成就感不如做既定的交付那么强。
如何给大家找到事情做的同时,给大家找到强烈的成就感,我想,这是team leader的一个重要任务吧?
小结
作为一个部门的一级MDE,整个工作是不合格的,并没有把整个部门MDE的积极性调动起来,整个技术管理例会也没有开展的很好,原因有很多,个人的原因是觉得给大家增加了额外的工作量(因为自己并非各位MDE的直线leader),如果贸然给与太多任务会挤压到各位的时间,自己在各位MDE的业务上也不能直接兜底,无法给出实质性的帮助,所以自己也退缩了。内心戏太多
这两点也是猪队友实验室可以开展的比较好的原因,一个是成员熟悉,另外一个是自己可以兜底。
2023年的flag
2022的结尾离开了黑鲨,2023年的新旅程还没有想好,就先想到什么写什么吧:
- 找到一个新的工作
- 完成一次环太湖骑行
- 完成十二本书的阅读
- blog更新不少于8篇