在加拿大那陣子,後端工程這東西…其實一開始真的滿吃力的。剛學那幾個月,每天都懷疑是不是搞錯方向,真的有種很想直接不幹了。好啦,不過還是繼續熬著,一邊硬寫些小 side project,一邊碰運氣加減拉同學進來討論──國籍什麼的,各種都有。有時候只是閒聊,有時候講一講就會發現,其實大家也都在亂摸索。 然後,也不知道是哪一次開始,突然就有人介紹到一些真實的商案機會。說穿了其實蠻靠運氣吧?或者就是你願不願意多開口問、多參一腳。不過現在想想比較好奇的是,你們當初剛進這行,是怎麼找到第一個案子的?或者那種初期困難,有沒有人會覺得語言、文化這些東西卡住自己啊? 有沒有什麼怪招可以分享一下?像我自己的雷點,就是碰上英文需求文件整個傻眼卡關,好幾次根本看不太懂要做什麼…你們都是怎麼拆解、怎麼度過這種時候的?如果有些奇怪經驗,也蠻想聽聽看的。

這個問題真的老是有人問我:APP一年到底要花多少錢?很想直接給個數字,可是真的沒那麼單純,每次講都會有點無奈。像之前iOS突然大改版,那種API整批失效,要全重寫,哇靠光那一波工時就瞬間炸掉本來以為還夠用的預算。還不是只有這樣,客戶心血來潮說要加新功能或者UI長得不喜歡也得調,又是一筆;然後你如果以為只要算主機費就好…嗯,不只喔,人力成本、第三方API訂閱費什麼的,有時候忘記填進去最後才發現帳單怎麼又多了好多行。 其實現在回頭看,不知道大家都是怎麼抓預算的?有人超保守,把每個可能都先加一輪buffer嗎?還是比較耿直,就直接跟主管或老闆攤牌「反正一定超支啦,你們自己決定底線」?感覺這題真的沒有標準答案欸。

嗯……其實這個Google邀請函,怎麼說,很像是數位行銷人天天會遇到的老朋友吧。以前我們公司那次新品發表,我弄整個活動流程,到最後就乾脆直接全用Google日曆寄邀請。我不是要業配,它真的救過我。RSVP超方便,你根本不用一個個去追問誰來、誰沒回,全自動彙整。然後我們差不多五六十個合作夥伴跟供應商,也不用煩惱群組亂丟檔案,所有資訊同步在雲端,瞬間清楚。格式也都很統一,看起來還挺有模有樣的啦,不太怕漏掉什麼。 但中間還是有點小插曲。有一次,有人反映信件找不到,想說是不是寄錯?結果查了一下,才知道原來被收件人的信箱自動分類掉了──好險Google日曆可以直接再重發通知,不然就是複製連結丟LINE或Slack也ok,其實蠻彈性的。 另外有件事……就是年紀大一點的主管,對細節格外講究,有些標題或者內容描述要寫得特別規矩、不能隨便混過去。不小心草率點都會被盯上喔,所以那邊建議該統一還是要自己修一下,比較穩。 很多人一直以為Google日曆只能拿來約開會,但其實不只 - 什麼講座報名、線上課、尾牙通知那些我都玩過,說真的比傳統e-mail輕鬆太多。有時用完就覺得,好像真的離不開它耶,就是一旦習慣,每次辦活動都手癢想直接先開Google日曆填一波。

一直覺得,當爸媽每天都在跟行事曆打架。手上那些 App,用的時候就很怕慢半拍。不知道大家是不是也是,有時候只是小孩一喊「媽媽~」那種急,其實心裡都會想:「啊拜託,不要轉圈圈卡住,我現在只想趕快搞定。」 之前學校突然要開線上家長會,就立刻想到這問題。我就在那個爸媽群組 App 上丟建議,說能不能像 SwiftUI 那套 Composable Architecture,把各個功能拆一拆獨立出來。感覺比方說,小朋友如果不小心亂按,也不至於整個頁面壞掉。而且更新起來比較快,如果以後有什麼請假、疫苗、甚至單純多一顆小按鈕,直接拉進去,不用重頭再改一次。 那時其實是跟工程師團隊講:「欸真的可以拜託考慮一下嗎?這樣未來想加什麼,都不用大搬風。」想像哪一天自己家裡的智慧音箱、冷氣還有燈,操作介面也能像這樣拼貼。不知道怎麼形容,就是很爽 - 突然想到,如果日常這些科技真的可以動得跟積木一樣快,是不是事情就沒那麼煩了…

你知道嗎,其實軟體維護費這種東西我一直覺得很像暗黑魔法 - 每次都搞不清楚到底怎麼算。以前在前公司有過一次慘兮兮的經驗,超有感。那時候我們一開始編預算嘛,還想說小小一包應該可以cover住吧,誰知道到後來所有修改需求都被打成「那個不是維護範圍」,隨便加個小功能報價就像搭雲霄飛車直接往上衝。老實說,我每次聽到廠商用什麼「系統複雜度高」當理由要多收錢,都會在心裡翻白眼一下 - 欸阿這不是你們自己當初設計出來搞得這麼複雜嗎?然後又愛講人員流動率啦、技術架構太舊升不了級之類,其實很多時候根本就沒必要馬上大改特改,硬要把事情說得好像今天不換明天就活不下去。 話說回來,有沒有哪家廠商是真的公開他們的維護計價方式給大家參考?還是這整個產業就是集體默契黑箱喊價,看誰嘴巴厲害?我超常看到那種一年硬包3成開發金額的合約喔,但最扯的是平常其實也沒什麼工作量啊,不太懂他們在忙啥。萬一真的出現什麼bug或者意外狀況,他們願意免費救火救到底嗎?坦白講,我每年規劃這種預算手心都會冒汗,每踩一次坑信心就少一截,到底有沒有可靠的方法可以避雷或乾脆讓廠商攤牌啊?如果有人能證明我是胡思亂想最好啦,但目前看起來……真的是提心吊膽耶。

大三那年有件挺妙的事。跟朋友一起修了個出版專題課,老師直接給我們出功課,要我們做一個校刊的主題選集。當時沒什麼遠大目標,就是想說好玩,大家猛丟稿子、拼死趕進度,那種學生熱血,結果居然書真的賣得不錯。第一批一下子就全賣光。 後來整班的人還去系辦敲門問能不能再拿點經費,好把第二版印出來。講到這裡才真正搞懂「再版」原來這樣操作 - 反正就是東西賣完啦,有人還想要,所以得多印幾本。根本原因超簡單:需求比預期高,而且書慢慢被更多人看到而已。 想到去申請資金那幾天超緊張,我自己跑去找系主任報告銷售數字、讀者意見什麼的。有些問題還當場答不太上來,尷尬到語塞。不過最後錢還是下來了,我們也辦了一場小型簽書會,那時候也認識了不少出版社的學長姐前輩,就覺得很爽。有一種奇怪但紮實的成就感啦 - 雖然過程蠻爆肝,但現在回頭看,其實整套流程、包含從零開始出書到後續補貨,都算摸到一些出版和編輯的小細節世界,好像沒白忙一場這樣。

平常我其實也還蠻常打開AI寫東西,真的。有時候一堆急的企劃稿在那邊等著,身邊同事就直接上GPT系統那種丟一丟,搞定。唉,我自己有時看那些生成內容會覺得,好像…有點死板?太按表操課那種感覺。就算不只是行銷稿,有些新聞小改寫什麼的也差不多,你久了是真的會覺得哪裡說不上來怪怪的。 但講老實話,有時又只能靠它幫忙,要趕時間沒法一直熬,不用更慘。你問推薦哪個,其實我沒有標準答案 - 情境不同選擇都會換。有空多比較一下啦,每套互動起來差更多,一開始還真以為都大同小異。我現在習慣直接混搭着用,比較像是當備用工具吧,沒遇過直接完美貼合需求的,所以試了才知道適不適合自己,反正本來每個人喜歡的不一樣,就這樣。

唔,LINE打卡這種東西……其實我原本蠻抗拒的,說真的。一想到平常已經被一堆群組吵得頭很大,公司又要把考勤搞進去,我心裡就忍不住嘀咕:「啊可以不要再多一個會跳通知的APP嗎?」然後前陣子部門主管開會又提起這件事,他說這樣比較好統計誰有缺席、誰沒到。嗯……那時我直接舉手跟他講:「拜託,有沒有可能HR去弄專屬系統,不要再把工作和私事混一起。」因為真的有同事手機兩支,一支私人一支公司,到底要登入哪個?或是有時候記錯帳號,還漏打卡,光想都累。 講到這邊,有些人倒是附和我的看法啦,也有人覺得反正都在用LINE根本無所謂。我是覺得,如果一定要導入,不如乾脆讓大家選嘛,可以Web端,也可以App,就別硬綁死只能用LINE。有時坐捷運進電梯收不到訊號,都不能正常打卡,還不如以前刷卡機穩定。哦對,其實也有人聊到辦公桌太小塞不下什麼設備,但我覺得……重點還是公司真的要在意員工實際需求,而不是只是覺得「我們變數位化很潮」之類的理由吧。

其實講到這種AIoT的評比會議,呃,我還真的親自去參加過一次,就是那種各國廠商還有一大堆顧問齊聚一堂,討論熱烈得不得了。現場大家都在展示自己的解決方案,有一家推智慧製造嘛,資料上面寫得很猛什麼數據自動蒐集、遠端管理,反正紙本跟簡報一定都是很完美那種。但說真的,我就忍不住直接問,「欸你們有沒有實際拿這套系統去新加坡老工廠跑過?或者你敢丟到法國那種老舊零售店嗎?」因為說是AIoT方案,但光是不同地方、不一樣的場域,那個介面協定可能就卡死啦。 還有一次我記得做智慧建築案子,供應商當時信心滿滿地包票說全系統絕對聯網沒問題,結果你知道嗎?半年過去了,到最後竟然卡在消防權限搞不定,全整合根本沒下文。有時候你看規格跟demo超漂亮,可只要碰上一些現實狀況……直接打臉喔。 所以啊,如果換成是我要挑AIoT公司或產品的話,我可能會想多丟幾個場景給他們玩玩,不只在那些看似需求最高的工廠先測,而是真的拿去跨國連鎖通路甚至一些怪怪的舊建築空間也用用看 - 唉,很妙的是,有時候反而最容易搞定的是建築類(雖然直覺應該比較複雜?),根本選擇不是單靠規格書或行銷話術啦。講難聽一點,被那些「全球通用」廣告詞唬弄過的人,大概才懂……

說App伺服器錢怎麼算,唉,這題真的有點讓人頭痛。之前幫一個跨國新創團隊搞過主機預算,那時在AWS跟GCP之間掙扎好久,其實就像挑保險,一堆專有名詞又眼花撩亂。老實說,他們那些什麼on-demand啦、reserved instance啦,看起來都寫得蠻夢幻的,但等到你真的拉流量下去測試後才發現,有夠容易超支,啥「一秒幾毛」…流量突然飆起來月費直接炸掉。有一次光是region選錯,就多花了一筆很莫名其妙的網路費。我還聽過有人建議先用小台一點、之後再慢慢加規格,可是每次要擴容都是一堆鳥事跑出來。 講白了,我還蠻懷疑網路上一堆只根據價目表排行的雲主機推薦,到底有沒有碰過真生產環境。其實最保險的方法還是自己先抓一下需求,不然月底帳單寄到,公司裡沒人想打開那封信XD。我現在都會硬著頭皮多查幾家方案,比較細節,麻煩歸麻煩,不想因為省那五百塊結果被坑成五千,很難受。欸這種教訓…記很久,都不太想再踩一次

其實我以前超愛跑社團,手機真的是被各種App狂推通知,有時候連震動都覺得煩到不行。那個時候我還記得,是要跟朋友搞一個學校的音樂祭,結果就要用那種App發簡訊,通知那些已經報名的人。欸我們最開始根本沒想那麼多啦,亂設時間隨便推,然後開信率…嗯,爛爆。真的沒人看耶。 後來才慢慢發現,就是你選推播的時間,如果是在什麼早上八九點—誰會鳥你啊,那個時候要嘛剛醒還在床上,要嘛在趕課,都直接劃掉不讀了;半夜十二點?哈囉大家都準備睡覺了,直接關掉超合理。所以我們後來改變策略吧,就是抓中午吃飯、下課這種空檔再推(差不多就是人低頭滑手機的時段),然後開啟率就好很多。我還記得,我們也會把標題寫得比較花一點,例如什麼「喜歡現場表演嗎?今天歌單大公開」這種,比那種冷冰冰「活動提醒」或是「溫馨提示」吸引力好太多,好像有靈魂一樣。 然後,其實通知也是有分耶,有些是宣傳活動,有些是真的很重要例如更換地點什麼的,用詞一定要不一樣啦,不然一直給大家塞那些死板字眼,很快就養成反射動作直接刪訊息。唉我現在對這種事情超有感,只要App三天兩頭給我亂七八糟的通知,我立馬整包關閉它的權限不用客氣。有點離題哈,但總結一下哦,我覺得只要你挑對時間,再把內容稍微弄得合胃口,大多數人說真的都願意接受偶爾被提醒一下 - 至少我是這樣。

上次做那個 Flutter 的課堂專案,其實我是直接用 Provider 啦,因為…嗯,大部分人都用這個吧,老師也是叫我們這樣弄。可是老實講我到一半就開始卡住,有時候想要資料同步一點都不順手,好像沒那麼直覺,尤其是複雜一點的地方。 然後就有同學跟我說,不然你去試 Riverpod 啊,這個現在很紅。我就真的試看看了,欸…彈性好像真的比較高耶,感覺它什麼都能處理。但也有點亂,名字都怪怪的,我看到「ProviderScope」還「StateNotifier」,頭直接有點痛,到底是哪個才是我要的啊?有時候覺得自己是不是其實什麼都還沒搞懂。 說真的,好奇是不是大家都已經不討論 bloc 了?我看台面上一直都是 Provider 跟 Riverpod 在吵,但也有人好像默默堅持 bloc。所以每種東西適合的人到底差在哪裡啊…其實滿想知道怎樣判斷到底哪一種最合自己用法,有沒有什麼訣竅之類的……

之前幫公司做滲透測試,腦袋裡唯一印象深刻的其實就是用 Kali Linux 跑 Metasploit,那套工具東西太多,第一次玩根本手指都不知道該戳哪個指令。對著一台公司的 Win7 測試機練習,想查漏洞到底有沒有被補好,用 msfconsole 隨便搜一下 exploit,居然馬上跳出一堆選項。 不過老實說,有沒有人碰過 payload 產生完結果卡住?要嘛就是 payload 傳不上去,要不然 shell session 死活起不來。這真的超容易卡關,比寫 code 還折磨人。有時候搞半天,不知道是防毒在作怪還是自己哪邊順序搞錯了。 你們解這種 debug 問題有什麼小訣竅嗎?我自己常常只是硬換編碼、亂 try 連線方式,不一定行得通。有遇過奇葩案例或怎麼繞開那些煩人的 AV?講真的,只要能穩定彈 shell 就贏一半了,有經驗的快點分享一下吧。

其實我一直覺得,大家有時候把短網址想得太恐怖了啦。像我是那種很普通的用戶,平常頂多就是參加個什麼活動或偶爾跟同學、家人傳照片嘛。有一次朋友辦畢業典禮,所有照片都是用短連結給我們下載的,那整個超方便啊,就點一下就好,不需要再去搞什麼註冊登入那種麻煩事,也沒遇到奇怪問題。 然後,有些小店家在網路上做宣傳也愛這樣用,我看他們發短網址感覺也挺省事。如果真的講到詐騙或者中毒,我知道要小心,但說認真,你手機裡頭的APP或者瀏覽器,其實都設很強的過濾機制啊,要是碰到什麼可疑網站,不是都會自動跳警告?至少我自己亂點那種奇怪連結,被擋下來好多次。 所以每次看到有人說「千萬不要點任何短連結」這種話,我都覺得太大驚小怪了。嘿有一件事啦,你不覺得有時候那些長長的原始網址才更莫名嗎?一串英數亂碼誰知道是不是有鬼──反倒像bitly、reurl之類,反而蠻直觀耶。還是提醒大家要注意啦,可是真的不需要一直神經緊繃吧。

有時候啊,真的會想說,那些在網路上一直教大家怎麼寫Meta Description的文章,到底是真的還是唬爛。就是,嗯,有些標題會寫「點擊率提升50%」這種超浮誇的數字嘛,但仔細想一想,你只不過換幾個詞、用點誘因字眼,就能馬上見效?很難信吧。老實講,我自己也試過亂套,套完以後還是不太懂那一套到底要怎麼照搬到自己的文章裡。有一次幫小孩學校活動照片寫介紹,原本只是隨便打一段,後來乾脆改得比較像在跟人聊天,有丟幾句直接問問題進去,然後欸,不知道是不是剛好啦,那次留言多了好幾則耶。我現在也分不清楚,到底是因為敘述方式改了才吸引人互動,還是純粹就那天大家心情比較好?可能只是剛好吧,也有可能,人嘛,就是看到有人像真人說話,比較願意多看一眼。唉…其實我自己也沒什麼把握就是了。

嗯,其實LINE群組機器人,大家都說很簡單,但我覺得…沒有耶。就是,流程怎麼講,有點卡欸。之前自己弄的時候,光是帳號申請就覺得超煩,那個說明根本就…呃,不太順嗎?你們有看過那種官方文件嗎,翻了幾次還是找不到重點。Token那些,更是看到眼花,什麼Channel access token還有Developer console,一下這邊一下那邊。 然後自動回覆我以為只是貼個訊息就好了,其實要自己設定條件,那個條件寫法,好像又蠻容易搞混吧。我設到一半就一直覺得好像哪裡不對,但又講不出到底是哪裡錯,就,只能硬著頭皮反覆測試,有夠沒效率的。 會不會其實不是只有我啊?還是大家都偷偷查好多資料,其實也跟我一樣繞來繞去迷路這樣。還有誰做過、成功嗎?反正啦,我是真的覺得這步驟很多,而且哪裡怪怪的地方超多,不曉得到底是不是設計就該這麼繞…唉,應該不是只有我腦袋轉不過來吧。

我前陣子有個算是頭痛又有點新鮮的經歷,說來就是真的,本來只會 Swift 開發的人,要開始摸 Kotlin Multiplatform(大家都叫 KMP),真的會一開始慌一下。有次公司要提一個跨 iOS/Android 的電商平台專案,我直接被老闆盯上。很直球問我:「你自己覺得,有多少把握能從 Swift 跳到 KMP?」那時候其實超心虛,但人還是要硬撐場面嘛,嘴巴答得很快「可以啦!」結果轉頭就去找 Android team lead 開始約討論。 他們平常都在用 ViewModel 搭 Flow,我在 iOS 那邊一直玩的是 Combine,那感覺有點像學了騎腳踏車突然換成滑板,你懂嗎?兩種世界。然後工具鏈也是完全沒法比,Xcode 的 debug 環境跟 Android 這邊整套 Gradle build,一直各走各的路。有時候明明都 set 好東西,一堆錯誤訊息就突然冒出來,根本搞不懂是哪邊咬住了,有種這兩個宇宙偶爾會莫名開戰的小劇場感。 說真的,裡面最麻煩的問題永遠是「共用邏輯」到底怎麼切,又不能犧牲掉每個平台自己的優點。業務同事老愛問:「我們是不是 UI 也能一起省起來?」只能想辦法講得很婉轉,「如果要追求那種很原生的體驗,就放棄幻想一次寫好所有 UI 吧。」現實上常常只抽出 network、資料存取這些「底層骨幹」,畫面那些差別還是超大。我跟 PM 講解需求變更時都直接畫重點,比方說:「KMP 你可以想像在 app 架構中乾脆俐落地砍一刀,下半身骨頭共用,但肉都是各平台自己長的。」其實能不能做好協作透明才真的是跨平台專案能不能收尾關鍵欸……好像又不小心扯遠了,但仔細想想這一路,其實雖然累,好像也多了一點彈性和經驗值,不算白忙一場啦~

其實之前在大學,那時候剛好有一次跟一個去外面實習回來的學長聊到他們公司準備要搬 AD。超神奇的,我一開始就很想知道到底怎麼搞,因為感覺滿頭痛的。他還蠻老實,他自己那時也完全沒經驗,全部都靠瘋狂 Google,加上問同事才漸漸抓到方向。 然後他特別講,有件事千萬不能急著動手,你得先摸清楚現在公司的環境。像帳號總共有多少?那些應用服務綁了什麼東西?會不會哪邊還塞了一堆舊資料沒人發現?這種鳥事如果前面沒清乾淨、沒有表格整理真的會死人啊,到時候亂成一團根本找不到誰該扛鍋。 我有問過他怕不怕出包,他直接笑說幾乎每個人都一定掉坑啦,反正錯一定犯,要分批測試才對路線。他說不要想一次 All in,那種測試最好先拿兩三個小部門的人來練練手,小範圍跑流程。有一點必須死記住 - 一定要一直溝通,不停確認,比你苦鑽指令有用太多了! 唉所以最後聽完我發現…原來不是只有技術層面重要,人跟流程合拍也是最大關鍵。不知道是不是很多 IT 案子都是這樣,光憑技術勇闖真的走不遠欸。

家長這身分真的很容易心有戚戚焉,尤其是看到小孩在用那種學習App時 - 你知道嗎,有時候畫面滑起來超級不順,小朋友整個一臉問號加無奈。前陣子剛好和一位做軟體開發的朋友亂聊,他才透露,很多App卡卡的原因,其實就卡在沒把Compose UI效能顧好。有些圖片一次塞太多、動畫又愛怎麼搞就怎麼搞,手機再新都還是會拖慢速度。 他還說,如果開發團隊願意注意點細節,比方像善用LazyColumn,不要每次都全部重組,只控制該重組的小範圍,這些看似技術內梗,但其實對我們家裡人超有感。因為現在小孩寫功課查資料什麼的,全靠這些App,一直滑一直按,要是Lag住了,大人的話也許忍一下過去,但小孩嘛,他們脾氣就是比較急,一卡住可能直接崩潰或放棄 - 大人可能覺得沒什麼,可他們那股耐性其實……唉,有時候只能嘆口氣。

剛開始帶新人的時候…其實有點挫折。他們完全分不出工具,連 IDE 跟編輯器是什麼都搞混。VS Code、PyCharm,對他們來說都長得一樣,只差顏色。然後我就在旁邊想,欸,這種事情以前沒人講給我聽過,我自己也是靠亂試一堆東西才搞懂,難怪會卡住。 你們是不是也有過這種時候?反正我那時最常被問的就是「學哪個語言比較適合新手?」太多答案真的讓人更迷糊。我個人偏推 Python,上手沒什麼痛感啦,但要看你目標是啥,如果只是玩票或當作小工具就還蠻順;可是硬要挑戰其他像 Java 的話也可以啦,不過入門心臟可能大概要大顆一點。 說到這,你如果現在要挑第一個開發工具,到底該看哪些重點?直覺好像每個都有道理,其實真的沒什麼「唯一最強」,光是習慣鍵盤操作跟想做的專案類型就能左右選擇了。有點懶得整理…但反正想到再說吧。

喔,我想到我之前大學租屋的時候,其實就有用過那種社區的物管app。剛開始根本沒啥感覺啦,就只是被說要下載,反正大家都裝我也裝了。結果後來才發現,欸,像我要收包裹啊、燈壞掉要報修、甚至那種亂七八糟的社區公告什麼,都靠這個app直接處理,一下就搞定。以前遇到的時候還得跑去找管理員阿姨手寫單子,而且超容易丟,那真的是……唉現在回想有點麻煩。 不過講真的,有些功能用很少,比方說什麼訪客預約吧。我身邊朋友來,大部分都直接LINE我「下樓幫我開個門!」然後我就自己下去,不會特別在app上按一個邀請還是怎樣。不過要是家裡住那種真正的大型社區,有爸爸媽媽、小孩之類,那些功能應該很重要吧?感覺方便很多。 其實對我來講啦,我覺得最重要還是好操作,不然你看,有長輩在家的話,系統設計太複雜,他們一定懶得用,也學不起來,到頭來又變成小孩幫他們弄。有夠麻煩。所以說還有通知設定也蠻關鍵的,要是一直跳出推播,一天到晚提醒你這個提醒你那個,真的只會越看越火大,很擾民欸! 所以啊,這種物管app到底好不好用,就是差別很大。如果挑對,用起來省事又順,如果選到一個難搞又雞肋的,只會增加你的煩惱…嗯,就是多出一堆鳥事啦。

More Popular Tags:

我們緊跟大眾關注的焦點,編輯團隊精選時事話題,邀請大家一起來討論、分享你的看法。

撥打專線 LINE免費通話