做过头了会怎么样?

我们有这么多各式各样的工具, 互联网给我们带来了这么多用户和数据, 这是好事, 也有副作用。世上能访问用户数据, 并根据数据做分析和改进的公司, 大概 Google 是其中翘楚, 这种 data-centric 的做法做过了头, 也有悲剧发生。

Douglas Bowman 曾经是Google 的视觉设计主管, 2009 年的一天, 他受不了了:

Yes, it's true that a team at Google couldn't decide between two blues, so they're testing 41 shades between each blue to see which one performs better. I had a recent debate over whether a border should be 3, 4, or 5 pixels wide, and was asked to prove my case. I can't operate in an environment like that. I've grown tired of debating such   minuscule design decisions...

Question:当你的公司要你用数据来证明 41 种蓝色到底哪一种更好, 或者为一个边栏宽度是3, 4, 或5 而争执不休, 纷纷表示要拿数据来证明的时候, 你会怎么办?

当我们遇到这种问题时,先尝试一下分析“做过头”的定义以及导致的后果。

"事情做过头"通常指的是某个行为、计划或活动超出了适当或合理的范围,达到了过度或过分的程度。这种情况可能表现为过度投入时间、资源或精力,或者是在处理问题时采取了过于激进或不恰当的方法。事情做过头可能导致负面的结果,包括浪费资源、引起不必要的问题或产生不良影响。这个说法通常用于提醒人们在行动或决策时要保持适度和平衡,避免过度的极端或不必要的行为。

而在系统分析与设计中,“做过头”意味着过度依赖数据,仅仅把数据过度细节化追求与完美,从而导致出现以下问题。

导致的后果:

削弱创造性和判断力: 过度依赖数据可能使人们失去直觉和创意,因为过分关注数据可能会削弱个人的判断力和创造性。
决策变得缓慢和繁琐: 过度的数据分析可能导致决策变得缓慢和繁琐,因为过多的数据可能使决策过程变得复杂化,影响公司的灵活性和反应能力。
工作效率下降: 在工作领域,过度投入可能导致工作效率下降,因为长时间的工作会使人疲劳,进而影响判断力和创造力。此外,过度追求工作成果还可能忽视与同事的沟通,影响团队的协作和效率。
信息偏差: 过度依赖当前数据可能导致信息偏差,使人们只关注最新的数据和趋势,而忽视了长期和全面的观点。

Answer:在这种情况下,如果我作为员工受到公司要求将设计决策纳入过度细节和数据验证中,我会采取以下行动。

沟通并寻求理解:首先,我会寻求与领导或团队就这种决策方式展开诚恳沟通,解释我个人认为设计决策可能不需要过分依赖数据的观点,并尝试寻找妥协或解决方案。

提出替代方案:我会建议采用更高效和具有整体设计意图的方式来决定这些 minuscule design decisions,例如基于综合性的美学审美和用户体验原则,而不只是盲目追求数据的结果。

 展示成本效益:我会尝试清楚地说明追求每一个细微设计细节是否值得投入大量时间和资源。通过比较成本和收益,让团队意识到过度数据驱动对项目整体进度和成功可能带来的负面影响。

承担一定风险:若无法改变公司对数据的过度依赖,我可能会试图在工作中保持均衡,同时展现我自己的专业见解和判断力。有时候,也需要在一定程度上接受公司文化和决策方式,但仍然要坚持自己的设计原则。

 总之,面对这样的局面,沟通、提出替代方案、考虑成本效益、承担一定风险等方式可能会有助于处理公司对数据过度依赖的挑战,以及保持自己的专业判断和设计原则。

### GD32F407 上 FreeRTOS 的移植 将 FreeRTOS 移植到 GD32F407 微控制器涉及多个步骤,主要包括配置硬件环境、初始化外设以及适配 FreeRTOS 所需的任务调度器和中断管理功能。以下是关于此主题的关键点: #### 1. **硬件准备** GD32F407 是基于 ARM Cortex-M4 内核的高性能微控制器[^1]。为了成功运行 FreeRTOS,需要确保开发板上的时钟源已正确设置并能够支持定时器中断。 #### 2. **工具链安装** 建议使用官方推荐的编译工具链(如 GNU Arm Embedded Toolchain),以便于构建项目文件。同时可以借助 Keil MDK 或 IAR Workbench 这样的集成开发环境来简化调试过程[^2]。 #### 3. **FreeRTOS 配置** 下载最新版本的 FreeRTOS 并将其核心文件加入工程目录下。修改 `FreeRTOSConfig.h` 文件中的参数以适应目标平台的需求,比如堆栈大小定义 (`configMINIMAL_STACK_SIZE`) 和优先级上限设定(`configMAX_PRIORITIES`)等[^3]。 ```c #define configCPU_CLOCK_HZ ( SystemCoreClock ) #define configTICK_RATE_HZ ((TickType_t)1000) #define configTOTAL_HEAP_SIZE ((size_t)(8 * 1024)) ``` #### 4. **启动代码调整** 编写自定义的启动汇编程序或者利用厂商提供的模板作为基础,在其中完成向量表重定位操作,并调用 C runtime 初始化函数 `_start()` 来进入 main 函数执行流程[^4]。 #### 5. **时基生成机制实现** 通过配置 SysTick 定时器或其他适合的硬件资源提供周期性的滴答信号给 vPortSetupTimerInterrupt() 接口函数处理,从而驱动整个系统的任务切换逻辑正常运转起来[^5]。 ```c void vApplicationSetupTimerInterrupt(void){ /* Configure the systick timer to generate an interrupt at the desired rate */ } ``` #### 6. **端口层抽象接口完善** 针对具体架构特性定制化实现 port.c/portmacro.h 中声明的一系列底层服务例程,例如上下文保存恢复方法(portYIELD()) 及临界区保护手段(taskENTER_CRITICAL()/taskEXIT_CRITICAL())等等[^6]。 ---
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值