2024年度总结 - 前路是光明的,道路是艰难的

年终总结

  前言

  今年的工作算是换到了一个全新的环境全新的领域,与之前的小作坊式带领团队做toB不同,今年在摩罗我不再需要负责产品整体架构设计和业务,而是更加需要关注我负责的技术范畴。对我来说,一方面没有原先那么疲劳和迷茫,但是另一方面在技术上又提出了新的要求。今年在Gitee上一年近700次的commit就可以看出来,这一年还是做了不少工作的。

  在我之前的工作生活中我曾想过自己想要前往音视频领域,不过这顺便也来到了音频领域,那正好就要开始做一些不一样的东西和不一样的事情。

  产出、学习、研究

  当然,一年做了这么多,总的来说还是需要对整体进行一个分类,那么就按照产学研跟今年整体的产出做一个分类。今年所有的产出,都可以按照产、学、研三个阶段进行回顾。

  产出

  在工作上的产出,我想主要分为两部分:

   1. 参与实际业务代码的项目

   工作中完成的代码项目包括但不限于:AudioEQ、DM40、DeepFilter_Realtime、HID框架、AudioRecord-Qt自制标准录音组件和整体MaonoLink3.0向Qt6的迁移工作。

   其中AudioEQ是今年我们自制的一个全新的软件,虽然市面上已经有同类不少产品了,但我们在设计上还是走了不少弯路,整个软件经常在根本上做一些改动,加上开发的时候的数据仿真和测试实际上比我想象中的要更加严谨,为此我写了相当多脚本和演算工具,有一整套的验证工具提供给测试,方便他们在实际使用中对数据进行测算。为了更好验证这些问题,我还整体略读了一遍信号与系统的书籍。

   关于DeepFilter_Realtime和HID框架,更多的是我以前在开源社区活动的延申。关于编译DeepFilter_Realtime,国内没有人有些过相关的内容,我也是花了一些时间改写了他们的rust API,发了一篇博客,网上也有不少人联系我有关DeepFilter的编译事宜。也是我以前花了很多时间在不同语言之间进行交叉编译,不然这一趟流程跑下来估计不会轻松。HID框架则是类似一个我曾经参与过的串口解析项目,我们的框架在当时是开源的,而且无论是解析还是包装都是经过很多人一起讨论和论证的,修改一下改装成HID的API就可以拿来直接使用了。

   关于DM40,项目本身是非常简单的,但是不得不说,双线程的工作不论对哪个项目来说都是极大的伤害,特别是在DM40和PD300x在没有确定延期的那段时间,本身两个项目如果按照计划都可以完成,但是一边面临着PD300x修改根本的需求,一边又面临完成度比较低的DM40,时间紧张的情况下不可避免就要做一些妥协的设计。

   2. 优化的业务流程

   在我来到之后,虽然已经是从类似小作坊工作室里出来的,但我仍然发现我们工作流中的一些问题。其中最严重的就是我们居然没有一个合适的bug和需求管理平台。所以我也一直在要求必须马上要上线我们自己的禅道。好的工作流是由一个个time table、todo list和target组成的,原先用文档管理bug list的方式已经很严重地干扰到工作了,但是似乎大家都不以为意。

   问题还有很多,不过好在能看到这些问题都随着一步步梳理渐渐变得流畅起来了。

  学习

   今年的学会了很多东西,尤其是花了很多时间在信号与系统和简单的三维建模上

   今年在信号与系统上学会了不少东西,不只是书本上的知识,光是书本上的东西已经在博客中写了很多了,当然也有可能是我的学科背景有限,其实里面很多概念只是知其然而不知其所以然,比如相位、物理滤波器这些概念,很多东西我只知道其在数学上的概念。如果把东西实践起来,不知道会发生什么。

   我在博客里面写了一些读书的笔记和想法 : CSDN - 扳机纪律的博客 刚刚翻了一下,我今年居然写了快六十篇博客了。

   当然了,写这些东西不可能限制在理论上,我在学习的过程中也把我的很多想法尝试设计了一些实验和仿真:LeventureQys/AudioProcesser不过后续项目确实紧张,压力也很大,所以很长时间都没有更新这部分内容了。

  在后面我自己也尝试搭建了一个平台,试着自己做了一个简单的声卡,不得不说实际操作起来跟想象中的完全不一样,既比想象中简单,又比想象中的困难。

  音频领域的资料很少,因为大部分音频领域的开发者都是在嵌入式平台,开发者似乎普遍没有交流的愿望。和我之前在的点云领域很多大牛喜欢在群里吹水不同,我加了几个音频领域的交流群,里面的人实际上要么是猎头,要么就是什么都不懂的小白,着实没什么人交流技术。

  关于三维建模,今年来到这边之后把我的3D打印机也带过来了,本来只是自己下载模型打一些玩具打着玩,后来开始给我的电路板加上外壳,自制手机支架,再到后面自己做小米的无线充电器,设计的零件越来越复杂,应用的场景也越来越多。

  明年的计划是学习一下FPGA和继续学习DSP,希望能将一些简单的算法搭载在嵌入式平台上进行一些实践,毕竟只在上位机做一些算法,那还是太局限了。今年年尾的时候买了块ESP32和FPGA玩了一下,和以前认识的嵌入式工程师交流了一些心得,最近也试着在上面开始写一些玩具了。

  研究

   今年研究的东西不多,基本上都和Qt有关,或者细化到一些不知道的问题边角深处,或者是网上根本查不到的问题,只能亲自着手探索和研究的。

  [旧日谈]高清画面撕裂问题考

  [QDS]从零开始,写第一个Qt Design Studio到程序调用的项目

  [旧日谈]关于Qt的刷新事件频率,以及我们在Qt的框架上做实时的绘制操作时我们该关心什么。

  [简单实践]Noisy Print - 自制基于加性噪声模型的简易降噪器

  [Qt开发]当我们在开发兼容高分辨率和高缩放比、高DPI屏幕的软件时,我们在谈论什么。

  QCustomPlot如何使用代码修改当前焦点曲线QCPGraph

  [JUCE]从一个有关右值引用的bug,探幽移动语义

  [音视频学习笔记]二、什么是PCM音频?一些常见的PCM处理

  总结

  上半年感觉很兴奋,感觉到了一个新的平台,觉得有很多事情可以做可以学习,感觉找到了一条明朗的大道。信号与系统的东西虽然复杂了点,但数学公式也算看得懂,感觉给到时间我一定能行。
  下半年感觉很焦虑和迷茫,被两个一直在改动的项目夹的找不到北,学习上又遇到瓶颈,感觉找不到发力的方向,在项目里翻来覆去的倒腾那点信号,却不知道到底要做成什么样才能赶得上DDL。
p;下半年感觉很焦虑和迷茫,被两个一直在改动的项目夹的找不到北,学习上又遇到瓶颈,感觉找不到发力的方向,在项目里翻来覆去的倒腾那点信号,却不知道到底要做成什么样才能赶得上DDL。
  到了年底又感觉只是还没有习惯这边的工作节奏,没必要那么焦虑,我才二十五岁,还有很多时间。