惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Apple Machine Learning Research
Apple Machine Learning Research
月光博客
月光博客
量子位
IT之家
IT之家
Jina AI
Jina AI
Help Net Security
Help Net Security
Cyberwarzone
Cyberwarzone
人人都是产品经理
人人都是产品经理
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
AWS News Blog
AWS News Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
罗磊的独立博客
P
Proofpoint News Feed
S
Schneier on Security
Spread Privacy
Spread Privacy
The Hacker News
The Hacker News
Know Your Adversary
Know Your Adversary
雷峰网
雷峰网
L
LINUX DO - 热门话题
博客园 - 聂微东
C
Cisco Blogs
酷 壳 – CoolShell
酷 壳 – CoolShell
Security Latest
Security Latest
阮一峰的网络日志
阮一峰的网络日志
I
Intezer
K
Kaspersky official blog
C
CXSECURITY Database RSS Feed - CXSecurity.com
T
Threatpost
Last Week in AI
Last Week in AI
博客园 - Franky
G
GRAHAM CLULEY
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
T
Tailwind CSS Blog
L
LINUX DO - 最新话题
T
The Exploit Database - CXSecurity.com
博客园 - 三生石上(FineUI控件)
P
Privacy International News Feed
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
有赞技术团队
有赞技术团队
Schneier on Security
Schneier on Security
V
V2EX
V
Visual Studio Blog
S
Security @ Cisco Blogs
博客园 - 叶小钗
H
Hacker News: Front Page
小众软件
小众软件
WordPress大学
WordPress大学
V2EX - 技术
V2EX - 技术
美团技术团队

木澤的研發腦

[AGV] OpenTCS 模組架構解析 | OpenTCS Modular Architecture Overview [AGV] 初探 OpenTCS 開源車隊管理系統 | Exploring OpenTCS [AGV] 初探VDA5050 v2通訊協定 [經驗] AGV 入門、選型、避坑 [心得筆記] 非暴力溝通 愛的語言 [經驗]如何面對工程師設計分歧 [Excel]如何逐列搜尋,並關聯對應值 [Web]自帶解答的迷宮產生器 [經驗]無人搬運車(AGV)廠商合作模式分享
[經驗] 連夜趕工隔天交付的程式
發表者:木澤 檢視 木澤 的所有文章 · 2022-02-22 · via 木澤的研發腦

這是筆者以前的一次工作經驗,因為進度落後導致熬夜趕工,記錄下來算是學一個教訓,畢竟冰凍三尺,非一日之寒,往往是多個原因堆積出這個結果,如果當中能及早發現,及早改善的話,也許不至於落得這般田地。

公司接到了一個專案,需要提供導覽機硬體、軟體以及控制後台,硬體是一台觸控且配有 Webcam 的 Windows 大電視作為導覽機,需求功能有:

  1. 呈現觀光相關的導覽資訊,並且能操作互動
  2. 能夠讓客人拍照掃描 QR Code 傳到手機
  3. 沒拍照時,記錄操作者的停留時間、性別、年齡等特徵

另外後台是以網站形式配合帳密登入,讓客戶可以:

  1. 編輯導覽素材和呈現方式
  2. 監控導覽機的狀態,可遠端截圖、重開機
  3. 報表
    1. 操作者的統計資訊
    2. 導覽素材的點擊次數統計…等等

當時和另一位同事搭檔,我負責導覽機軟體、Web 網頁呈現導覽資訊和部分後台頁面,畢竟導覽資訊幾乎都是連結到網頁,所以就使用內嵌的方式呈現,網頁讀取完成後,再另外疊上返回按鈕。同事則支援我其餘的後台頁面,素材管理、導覽頁版面編輯,不過因為整個架構主要是我規劃的,前期一直後在測試導覽頁的套件、內嵌Web的效果還有人臉偵測的套件,稍微花比較多時間,所以後期來不及時,才找同事臨時來支援,但這也是兵荒馬亂的開始。

同事臨危受命,邊了解邊時做的情況下,速度和我所想的有些落差,再加上溝通時間不夠,有時做出來後才發現某些地方雙方理解不同,又要花時間修改,若是一開始就適度讓他參與,了解架構和規劃,也許會比較好,而我也因為回答和溝通佔用了不少時間,導致開發時間更少了。

後台網站的部分,兩人會同時開發同一個程式專案,當時還沒有導入版本控制,所以整合程式時,又多花了一些時間在排除合併後的問題,常需要手動複製檔案到線上檢查的工具,才能知道差異在哪邊,現在想想真是太花時間了。

在功能開發好後,我們測試得不夠完全,當時還沒有單元測試的概念,全部都是簡易手動測試,沒有太多時間做 Monkey test,後期讓非開發人員的同事來使用時,常常發現一些莫名的問題,沒那麼容易重現,又因為沒有留Log,要花更多時間測試和找問題。

最後就是每天和同事加班,甚至到了交機前一天,還在寫功能、找問題,一直忙到凌晨3點才算告一段落,勉強有一個可操作版本,可以先應付,後續還是要把一些隱藏問題修掉,真是吃足了苦頭。

現在來看,大部分問題都可以藉由工具或是開發方式加速,也許初期會多花一點時間,但長期來看絕對值回票價,這也是這些工具存在的價值,期許這個教訓能讓我時時警惕,不再重蹈覆轍。