opencore_title.png

回顧黑蘋果二號機從 2012 年 7 月誕生至今已經八年,遇到的問題不算多,2012 年採購策略正確,少繞了一些冤枉路。很不幸的這次在 macOS 11 Beta Developer Preview (簡稱 DP 版)踢到鐵板。首先,黑蘋果二號的硬體配置當初完全是以 iMac 2012 Late(iMac13,2)為目標量身打造,而這次 macOS 11 Big Sur 大幅更改核心的位置跟啟動方式,又加碼排除 2012 以前的 Mac 電腦 ,所以「舊 Mac 不能升級」與「黑蘋果無法啟動」同時發生在黑蘋果二號機上,導致除錯難度曲線瞬間陡升。

從 6月 23 日 macOS 11 發表之後一直搞不定的那幾天裡,日子真的難過。以往遇到問題時大多在 tonymacx86 爬文,然而 tomymacx86 完全禁止討論 DP 版,用 Google 搜尋的效果似乎很有限,在網路上瞎逛了幾天,後來加入臉書「我和我的黑蘋果」社團。一進社團爬了幾篇發文,很快就搞清楚問題點了,果然互動 + 滾動式的技術交流,比 Google 網海爬文的效率還高。

隨著日子漸進,問題一個一個慢慢排除,至今黑蘋果二號機已經可以順利運作 macOS 11 Big Sur DP 版,可以像往常如白蘋果升級的方式直接從 10.15 升上去,或是從自製的 USB 安裝碟進行全新安裝 macOS 11 Beta DP版。這段歷程接觸到相關的技術資訊,值得寫篇文章紀錄一下,順便發發牢騷。

文章標籤

benjenq 發表在 痞客邦 留言(0) 人氣()

 

1593058479-2395074506_l.png

美商蘋果公司於美西時間 2020 年 6 月 22 日早上 10:00 (台灣時間 6 月 23 日凌晨 01:00 )舉辦 WWDC2020 開發者年會。而今年受到全球 COVID-19 (武漢肺炎)疫情的影響(截至 6 月 23 日全球病例突破 900 萬,死亡超過 47 萬人),改採線上發表會的形式,透過官網與多個線上影音平台同步直播。 雖然少了現場信眾們的歡呼與掌聲,不過看起來也像是包裝精美的電視節目,甚至還有配好中文字幕(簡體中文),不用像以往那樣考驗英語的聽力,這樣的發表方式反而對不在現場的觀眾來說更友善。依照往年的慣例,WWDC 2020 內容主要仍是自家作業系統的更新發表,依出場順序為 iOS(14)、iPadOS(14)、watchOS(7)、tvOS(14)、macOS(11),最後還有一段關於 Mac 的彩蛋,而我也像近年的慣例一樣,會議還沒完就夢周公去,隔天直接找媒體懶人包看重點,才知道本次真正的重點就在結尾的彩蛋上,

而本篇文章的重點,我就放在結尾彩蛋上,對黑蘋果族群來說,這個彩蛋不僅不會讓人開心,甚至還會讓人感到失望跟沮喪,文章的主圖是拿知名電玩遊戲「The Last of US」改的,我想說的,全放在這張圖裡了。( Fxck! Fxck... Fxck!...)

文章標籤

benjenq 發表在 痞客邦 留言(0) 人氣()

撰寫「具備用戶介面(User Interface)」的應用程式,對於我這種依賴 IDE 開發工具(Integrated Development Environment,整合開發環境)的碼農來說,就像吃飯喝水那樣的直覺,甚至於忘了第一支 Hello world 的用戶介面是怎麼做出來的。這些年來寫過 Windows、macOS、iOS(iPhone/iPad/Apple Watch/Apple TV)、Android 等平台的應用程式,早期的 Windows CE(PDA 裝置)程式開發也接觸過一段時間。然而,有個地方一直都沒碰觸,對我而言也是未知的領域,那就是 Linux 平台的用戶介面應用程式。

大致說來,每個平台都有一套最知名、最強大、最多人使用、教學資源最豐富的 IDE 工具,例如 Windows 平台有微軟官方的 Visual Studio,macOS 有蘋果官方的 Xcode,Android 平台有 Google 官方的 Android Studio。然而在 Linux 上,似乎就少了一套強而有力、專門針對 Linux 視窗環境的 IDE 工具,所以就一直不清楚,如何在 Linux 上寫一支具有用戶介面的應用程式(這裏不談 Linux 系統的瀏覽器運作 HTML5 網頁)。

前陣子工作上接手一份來自古老時代的程式碼,是用 PyQt4 寫的,功能是提供一個使用者操作介面,讓樹莓派主機透過主板 GPIO 介面去控制幾個周邊設備。原作者早已失聯,不過有留著當時的開發筆記重點。順著考古的遺跡,意外讓我補足這一塊技能,原來透過 Python + Qt,也能輕鬆寫出對應 Linux 桌面版的用戶介面應用程式。

然而,使用 PyQt 開發 Linux 版的用戶介面,依然無法像 Visual Studio、Xcode 那麼方便,中間的過程還是有些需要手動生成操作的步驟,決定開一篇文章來記錄。所以了,若是您對「開發 Linux 環境的 UI 應用」感興趣,或是想知道如何寫出「UI 介面控制樹莓派 GPIO 周邊的應用程式」,可以參考這篇文章的內容。

文章標籤

benjenq 發表在 痞客邦 留言(0) 人氣()

Untitled.png

 

「遙控自家的車庫門」這個構思其實已經想了很久,直到最近過年後才實現。這兩天有空把 Arduino Code 的部分整理之後放到 Github 上,有興趣的話可以參考。詳細的技術細節就不說了,不是什麼啥高深複雜的玩意兒,底下聊聊這個構思從發想到實現過程中的點點滴滴,給一樣有興趣的人當參考。

構思緣由

兩年多前「只管出一張嘴:用 Siri 控制家裡老電器」獲得成功實現之後,有時候會想家裡面還有什麼是可以拿來用程式遙控,不久後腦筋動到車庫門上。每次回家時想打開車庫門停車,得先把車停在門口,再花點時間在公事包內翻找車庫遙控器,每日例行公事,久了覺得有點煩,希望能找出便捷快速的方法。不過控制車庫的使用條件與遙控冷氣不同,不能像上次那樣「只出一張嘴」如法泡製,原因是剛回到家不一定有 Wifi 網路,再者也有安全疑慮,萬一有人在家門口大喊「嘿!Siri」觸發家裡 Homekit 裝置就這樣輕鬆打開我家的車庫門,那玩笑就開大了。

文章標籤

benjenq 發表在 痞客邦 留言(0) 人氣()

IMG_3940.PNG

近來 COVID-19(又稱武漢肺炎)疫情烽煙四起,最早於 2019 年末於中國湖北省武漢市「華南海鮮市場」發跡,至今(2/23)已經蔓延數十個國家,根據 CHO... 呃..不是,是 WHO 官方統計,近八萬人染病,約兩千四百多人喪生,且數字仍不斷往上飆升,似乎還沒有減緩的跡象。而台灣與對岸大陸的民間交流頻繁,又適逢總統大選、農曆年等大量人口流動,終究也無可避免的遭到波及,截至今日(2/23)已有 28 例確診,1 人死亡。

截圖 2020-02-23 下午11.07.54.png

還好台灣的疫情數字目前看起來沒有當初預期的嚴重,與日、韓、新加坡、義大利等國已發生大規模社群感染現象相比,台灣的疫情仍是相對輕微,得歸功於台灣政府能及早因應,與痛切汲取 17 年前 SARS 的慘痛教訓,是至今能夠有效遏制武漢肺炎疫情快速蔓延的主要原因。然而許多專家也預言,台灣進入大規模社區感染只是時間早晚的事,即便當前防疫有成,也千萬不可掉以輕心。

其實早在一月選舉前,政府已派員至武漢參加病毒研討,在疫情尚未明朗的氛圍中,預先判斷日後演變為大規模人傳人的可能性(2019.12.31),更搶在比 CHO...呃..不是,是 WHO 承認疫情擴散之前祭出手段,除了針對從疫區入境的航運人口實施隔離管制,也更早宣布將口罩納入管制醫療用品。嚴禁口罩出口、徵收民間口罩工廠的出貨,全力加開口罩產線,超商限量販售等,一連串管制口罩的大動作,早期一度造成民眾恐慌,導致到處買口罩隊伍大排長龍、多數人買不到口罩、不肖商人囤貨伺機漲價、人人瘋搶口罩等亂象,史稱「口罩之亂」。直到政府祭出鐵腕,宣佈實施獨步全球的「口罩實名購買制」措施,「口罩之亂」才逐漸平息。

在口罩產量不足與疫情未大爆發階段時,實名制措施至少撐住人人有最低限度的防疫動能,避免因少數人囤積導致多數人買不到而發生更大的防疫缺口。我個人完全認同這項措施,相信已在某些未知的傳染可能途徑中,有效拖慢疫情在台灣蔓延的速度,爭取到疫情可能進入社區感染前的準備時間。

文章標籤

benjenq 發表在 痞客邦 留言(0) 人氣()

7289.jpg

自從 SSD 這玩意被發明出來之後,使用過的人只有一句話:「回不去了」,是大幅優化電腦體驗的首選。我的黑蘋果二號電腦也在組建後不久,開始全面改用 SSD 。然而 SSD 以替代傳統機械硬碟為目標,所以最初使用傳統硬碟的 SATA 匯流排,好處是用戶只需替換原來的 SATA 機械硬碟,缺點是很快就頂到 SATA 的肺,也就是實際上 SATA 3 每秒最高約 550 MB 的資料速率。為了突破這個限制,市面上開始有 PCIe 介面的 SSD 產品,但印象中價格也相當驚人,一般庶民根本就買不起。

當時為了想突破 SATA 資料速率瓶頸,我另外購入 HighPoint Rocket 644L 磁碟陣列卡(文章),以搭建兩顆 SATA SSD 作 RAID 0 陣列為方案,可惜實際使用時最高速度也只來到每秒 660/600 MB,並未達到兩倍的理想值,據說和這張 RAID 卡使用的 Marvell 88SE92xx 晶片等級太低有關,也這樣用了很多年。

過了一段時間,市場上開始有支援 NVMe 協議,使用 M.2 介面接口的 SSD 產品,並且從 Intel 9 系列主機板開始內建。隨著時間推進,NVMe SSD 價格越來越低,速度也越來越快,主機板內建 M.2 插槽也逐漸變成標準配置,但是對於相對老舊的 Intel  6/7/8 系列沒有內建 M.2 插槽的主機板來說,NVMe SSD 有如過眼雲煙,如夢幻泡影,即便有 M.2 轉 PCIe 轉接卡產品出現,也因為主機板沒有支援 NVMe 協議,也是看得到吃不到。

後來有神人研究出,可將 NVMe 協議加入 Intel 6/7/8 系列 UEFI BIOS 內,讓老舊的 6/7/8 系列主機板支援 NVMe SSD,不過這些老板子大多沒有 M.2 插槽,所以需要插上 PCIe 轉 M.2 轉接卡,就能使用 NVMe SSD。 

日前無意間看到了相關技術文章後心裡暗癢無比,再做了點功課,砸了三張小朋友購入 SSD 與 M.2 轉 PCIe 轉卡,按圖索驥之後,最終也成功了。

說真的一點都不難,只要小心別買錯東西即可。家裡有 Intel 6/7/8 系列的老電腦,有意花點小錢裝上便宜、高速、又大容量的 NVMe SSD 再多活幾年的話,本文的方法值得一試。

文章標籤

benjenq 發表在 痞客邦 留言(3) 人氣()

Clover_Xmas

在「黑蘋果技術:淺談 Clover EFI 幸運草」這篇文章中,談到了 Clover EFI 的功能、引導 Windows 7 的方法,以及如何自行編譯 Clover EFI 的方式。

自行編譯安裝檔有幾個好處。除了可放入自己喜歡的佈景主題之外,也能隨時取得最新版 Clover EFI。蘋果每年發佈新版 macOS 作業系統,通常在 Developer Preview 版發佈之後的幾個小時內,就會有大神釋出對應支援的 Clover EFI 新版原始碼,這是黑蘋果搶先體驗新版 macOS 的最快途徑,可在第一時間評估黑蘋果電腦對新版 macOS 的相容性。

如果不想自行編譯這麼麻煩,那就等大神們釋出編譯好的版本,到這裡下載安裝就行了。

然而編譯 Clover EFI 時常因作業系統環境變動、版本的差異,常常導致編譯失敗,覺得有必要再開一篇文章說明收集這些問題和解決方式,累積除錯經驗。本篇文章的閱讀方式是,依閱讀順序把最新的資訊擺在本文前面, 已確定不適用的舊資訊則畫上刪除線作為標示。閱讀時從前面開始看,有其他問題再往下看。

文章標籤

benjenq 發表在 痞客邦 留言(2) 人氣()

螢幕快照 2019-06-09 上午3.55.01.png

美商蘋果公司於美西時間 2019 年 6 月 3 日早上 10:00 (台灣時間 [此字元已屏蔽] 凌晨 01:00 )舉辦 WWDC2019 開發者年會。照慣例又是發表蘋果自家產品的四大作業系統更新版,出場順序依序為:tvOS、watchOS、iOS、macOS...哦?不對!突然發現今年的出場順序有點不太一樣,中間多了兩個項目:iPadOS 與新版的 Mac Pro 硬體,也就是 tvOS、watchOS、iOS、iPadOS、硬體 Mac Pro,最後才是 macOS。以下用最快的速度,帶一下各個項目的亮點功能。

文章標籤

benjenq 發表在 痞客邦 留言(0) 人氣()

OpenEmu 是 macOS 上的模擬器,支援的遊戲平台不少,使用簡單,Rom 和存檔的管理功能極佳,容易上手,堪稱是 macOS 上最強的模擬器。然而這款模擬器預設是不能玩 Sega DreamCast(以下稱 DC) 的遊戲,但是 OpenEmu 在 Github 上的專案原始碼中,卻有 Reicast 的 Core ,照理說  OpenEmu 應該是可以玩。

要讓 OpenEmu 能玩上某一款主機遊戲,只要加掛兩個元件檔案:插件(PlugIn)與核心(Core)。官網在 WIKI 中提到 DreamCast 屬於「Work-In-Progress ports」項目,所以在正式釋出的版本中,並未包含 DC 的 PlugIn 與 Core 檔案。既然如此,只能上網找找看了。

可惜天不從人願,找了半天始終找不到這兩個檔案,只好從原始碼下手了。而 Github 上的專案 WIKI 有編譯 OpemEmu 主程式的教學,但是編譯 Core 教學從 2014 年至今都沒再補完,網路上也沒有前人的心得,只好自己踹踹看了。

踹了一整天終於成功了。從結果論來說,操作不難,步驟不多,但說真的如果沒人教你,保證一定是不斷鬼打牆,過程中還滿痛苦的,所以才決定寫這篇文章紀錄一下,免得哪天又忘記。

文章標籤

benjenq 發表在 痞客邦 留言(0) 人氣()

2.png

前一篇文章介紹 PHP 的 IDE 神器「PHPStorm」,表示讚不絕口,然而,神器是必須付出代價的。就像 Office365 ,PHPStorm 也採用付費訂閱制,價格分別為月費 19.9 元,年費 199 元,第二年開始還有打折...噢,差點忘了說,這個價格是美金,這樣到底是貴還是便宜,只能說看人了,像我這種不能挑食的雜食工,PHP 只佔了工作與自學的一小部分,為此投入 19.9 鎂/月 或 199 鎂/年的學費,感覺很不划算。

雖然也有「快樂擁有神器」的方式,不過,快樂的時光總是短暫,時間到了,總得找好其他備案。有另一款亦稱神級且開源的開發神器:微軟出品的 Visual Studio Code(簡稱 VS Code),它也能做到 PHP 語法自動提示、Debug 斷點調試的功能。雖然 VS Code 是微軟出的,不過這玩意卻很大方的援其他平台,在 Windows、macOS、Linux 都能使用,不像 Visual Studio 總是只出現在 Windows 平台。

嚴格說來,Visual Studio Code 的原始功能只是增強版的文字編輯器,IDE 開發工具(Integrated Development Environment,整合開發環境)常見的Debug 調試與程式碼自動提示功能,必須透過外掛才能實現。也因為外掛,VS Code 可以寫的程式語言也不僅 PHP,業界主流常見的 C/C++/JAVA/Python/Swift... 都有,或許要反過來問:VS Code 不能寫什麼?(這時候,Object-C 默默舉手...)。

說了那麼多,真正的重點是:Visual Studio Code 是免費的!

廢話說完了,進入正題。要讓 Visual Studio Code 支援 PHP 開發的做法很簡單,不過設定的方式怪怪的,一旦忘記就會鬼打牆,所以開一篇文章來紀錄。

benjenq 發表在 痞客邦 留言(0) 人氣()

出社會這些年寫過的程式語言也算不少,第一份工作就是 Oracle / D2K / Form 6i,用過的人都說讚!這玩意寫 Oracle 資料庫交易功能簡直是神器,寫一支具備新增修改刪除加上各欄位查詢功能的表單,只需要用滑鼠拉一拉就完成了。早期就曾經有人靠 Oracle / D2K 開發工具,大肆宣稱半年內寫出五百多支程式,績效斐然,因此成功搏得上市電子廠高階經理人上位,掙得每年數百張配股分紅,著名口頭禪「一天賣一張,一年也賣不完」,在軟體業界成為經典的傳奇故事(再繼續講下去,就知道我在講誰了)。由此可知,碼農們選對開發工具是非常重要的事,甚至有機會翻轉身人生,賺進大把鈔票... 扯遠了,後來我換了幾次工作,用 Visual Studio 寫 ASP.NET,用 Xcode 寫 Object-C,特定的程式語言用特定的開發工具,做出一整套完整功能的應用程式專案,似乎是理所當然的事。

然而在江湖上卻不一定事事都理所當然。比如 PHP 這玩意,很多年前就接觸了,功力一直以來都是寫幾隻小程式、做幾件小事的程度。原因是很久以前忘了在哪個網站上看到一句話:PHP 要用文字編輯器來寫。於是種下了我對開發 PHP 方法的錯誤認知。

最近手邊有個專案,對我來說, VS 寫後端, Xcode 寫前端,輕鬆達陣不難, 但是要改用 HTML5 + CSS3 + jQuery + PHP 來寫,這就令我開始頭疼了。

用文字編輯器撰寫 HTML5 + CSS3 + jQuery + PHP 程式,開發出專案級別的功能,可行嗎?對資質愚笨的小弟我來說,幾乎不可行!我需要一套如同 D2K / Visual Studio / Xcode 那種強大的開發工具來撰寫 PHP 程式。

於是我開始求助 Google 大神,甚至上網 PTT 徵求技術交流 / 技術交換討論等,最後選擇了 Brackets +PHP 外掛來開發。Brackets 功能強大,但那是指前端而言,撰寫 PHP 後端則顯得十分雞肋,試了各種外掛,頂多只會提示 PHP 的內建指令,無法偵錯,寫起 PHP 還是舉步艱難。隨著程式碼越來越多,感覺越來越吃力,覺得自己沒有用對方法。

最終讓我用對了關鍵字,找到我認為最適合的 PHP 開發工具:

文章標籤

benjenq 發表在 痞客邦 留言(0) 人氣()

ssd_all.jpg

日前手邊又掛掉了一顆 SSD 硬碟,回想自 2012 年開始使用 SSD 以後,花在 SSD 上的費用已經累積到兩萬多元,其中也壞了幾顆,是該好好盤點檢視一下自己的 SSD 採購策略是否有無問題,作為日後採買的依據。

文章標籤

benjenq 發表在 痞客邦 留言(1) 人氣()

自 2012 年夏天啟用的黑蘋果二號機,至今也已經六年多了。回顧這六年來 Intel 也擠了四年的牙膏,黑蘋果的 i7-3770 至今也還算夠用。但顯卡的部分,為了原生支援度的原因,手邊留著二手購入的 GTX-780 3GB 和 R9-280X 3GB 視情況交互使用。不過近年熱門的 3D 遊戲大作(EX: Forza Horizon 地平線賽車),顯卡最低要求動不動就要 GTX-970 與 VRAM >= 4GB 以上等級,於是 R9-280X 或 GTX-780 已漸漸不堪使用。你知、我知、鄉民也知,近年來顯卡主流標準已經由 NVIDIA 說了算,陸續發表 Maxwell,Pascall 架構的顯卡產品儼然成為市場主流,但 Mac 與 macOS 偏偏就是原生不支援。後來,總算,終於,千呼萬喚,AMD 陸續發表新一代的 Polaris / Vega GPU 產品,拉近與 NVIDIA 顯卡的性能差距,而 Polaris/ Vega 也陸續被 macOS 支援。

然而在這個時候,市場竟吹起了虛擬幣的泡沫,Polaris / Vega 架構有利於挖礦的特性,幾乎淪為礦工禁臠,即便顯卡價格飆漲,礦工照樣掃貨毫不手軟,導致遊戲玩家一卡難求,更別說是一切講求原生支援的黑蘋果用戶,升級顯卡變得非常不划算。不過歷史也告訴我們,礦潮之後必有礦難,吹了兩年的虛擬幣泡沫破了,如今終於有機會補足黑蘋果在顯卡上的弱勢,所以上蝦皮找了一張二手的 Vega 56 礦卡來玩,開一篇文章來簡單紀錄一下這張 Vega 56 各種資訊的抹抹角角,大多是個人心得。

文章標籤

benjenq 發表在 痞客邦 留言(0) 人氣()

螢幕快照 2018-09-21 上午9.38.59

2018 年 9 月 21 日,美商蘋果公司的 iPhone Xs 開賣,這也是 iPhone 產品上市的第 11 個年頭。今日新 iPhone 開賣消息在台灣的網路聲量,已經遠大於 19 年前的今天,在台灣發生的另一件大事。文章標題看似時間的標記,而它也是見證 19 年前歷史的號碼之一。

文章標籤

benjenq 發表在 痞客邦 留言(1) 人氣()

Simulator Screen Shot - iPhone 8 Plus - 2018-07-23 at 01.00.43

前情提要:教你的 iPhone 認識 Gogoro 換電站(Part 1)- 用黑蘋果電腦玩轉最夯的機械學習

前一篇文章中,第一次嘗試從無到有完成整個機械學習影像辨識的練習過程,最終得到一個「必須以半作弊的方式得到貌似可用的訓練模型」這種不太滿意的結果,後續也留下許多問題留待後續探討。接下來這段時間裡,我一直不斷嘗試各種手段,增加辨識成功的機率,不過終究效果有限,誤判的原因也越來越難深究,以至於教學課程訓練好的範例資料可用,自己訓練出來資料卻不能用。才正要開心的向前踏出一步,接著又卡關了,實在很灰心!

於是又再度上谷歌大海中漂流,反覆嘗試搜尋自己可能遺漏了什麼關鍵字,一次又一次的搜尋,一次又一次的觸碰艱深難懂也始終搞不懂的演算法議題。在某一次的資料搜尋中,搜到一張圖片:

文章標籤

benjenq 發表在 痞客邦 留言(0) 人氣()

Canon_EOS_5D_Mark_II_back  

Canon 數位單眼的用戶或許都聽過這個東西:MagicLantern(以下簡稱 ML )。簡單地說,它是幫 Canon 數位單眼相機開外掛,獲得一些原廠可以給卻不願給的功能。2008 年 Canon 將錄影功能加入 DSLR 機產品 5D Mark II(以下簡稱 5D2),是史上第一台具備 135 全片幅底片尺寸感光元件的錄影設備,搭配一狗票 EF 鏡頭,可產出與一般攝錄影機截然不同的影像效果。在此之前的專業攝影機都非常無敵高貴,成本限制下很難做到如同 DSLR 可呈現的長焦段、淺景深、移軸等驚人的影像凸顯效果,所以 5D2 的出現,對當時的影音工作者造成了不少震撼,是 Canon 迄今「最後一次」改變攝影生態的大膽舉動。

如今 Canon 已被兩個「尼」超車領先:尼康(Nikon)和索尼(SONY)。尤其 SONY 這幾年不斷創紀錄超車的黑科技,持續挖走不少 Canon 原有的族群,出佳為尼已然是常態。

當時的 5D2 錄影功能實在廢到無力吐槽,就我個人的回憶是,它不允許用戶去調整光圈、快門、ISO 值,就跟現在的手機錄影一樣是全自動對應,等同於閹割 DSLR 最重要的強項:大光圈淺景深效果。記得當時想在白天取得淺景深的錄影效果,得遮斷鏡頭的電子接點,強迫 5D2 機身接收最大光圈去對應快門與 ISO 值,最簡單的方式是裝鏡頭時不要轉到底,但壞處是小心鏡頭不要掉下來。例如在以下這段試錄影片第 27 秒開始的波斯菊,就是遮斷 135mm F2L 電子接點,搭配一般相機腳架錄出來的效果。

 

文章標籤

benjenq 發表在 痞客邦 留言(0) 人氣()

Simulator Screen Shot - iPhone 5s - 2018-06-25 at 01.12.20

近年來所謂的「大數據」(Big Data)、「AI 人工智慧」、「機器學習」(Machine Learning)、「深度學習」(Deep Learning)突然變得很夯,可說是目前最火熱、最具爆炸性發展的當紅顯學。我沒有在豪洨,熱門的程度,可觀察這個現象:在台南的市立圖書館與其他分館中,Python 的書籍根本是一書難求,而且持續很長一段時間。Python 本身除了用途廣泛之外,在機械學習領域更是入門標準,無法規避不學的程式語言,不會 Python 就等於做不成機械學習專家。在多年前我就對這個領域很感興趣,也持續 Google 搜到不少教材,不過坦白講這類學問的技術理論實在是深不見底、高不可攀,找到的教學常常需要參考某某博士論文,或是先弄懂某某數學演算法,這實非我等江湖術士能力所及,所以這條學習之路不論從哪開始下手,沒多久就一定會碰到鐵釘子,走得跌跌撞撞,始終得不到入門的要領。

直到去年(2017 年)蘋果公司於 WWDC 2017 發表了 Core ML 套件,我這條機械學習的黑暗之路終於見到曙光。蘋果宣稱 Core ML 能輕易的將「機械學習模型」(Machine Learning Model)整合到 iOS 裝置的應用程式內,並在 Developer 官網上釋出幾個實用的模型(副檔名為 mimodel)。到了今年 WWDC 2018,蘋果進一步釋出 Create ML 工具,號稱「不需具備機械學習專家技能,也能在 Mac 上輕鬆使用機械學習技術」,並且自動啟用可用的 GPU 加速訓練過程。當然了,加上黑蘋果技術,這句話也可改寫成:

「不需具備機械學習專家技能,也能在個人電腦上輕鬆使用機械學習技術」

照這篇官方教學(網址),我終於如願完成人生第一個機械學習模型,讓手機也能認識新事物!

文章標籤

benjenq 發表在 痞客邦 留言(0) 人氣()

macOS_mojave

美商蘋果公司於美西時間 2018.[此字元已屏蔽] 早上 10:00 (台灣時間 6 月 5 日凌晨 01:00 )舉辦 WWDC2018 開發者年會。主講人 Tim Cook 一開場沒多久便直接開門見山表示,這次年會不會有任何新硬體產品發表,打死一堆農場小道媒體先前預測有關 iPhone SE2、11 吋 iPad Pro with FaceID、升級版 Macbook 等亂七八糟的不負責任猜測。其實 WWDC 本意就著重在軟體內容上,老教主賈伯斯主政的時代,藉由 WWDC 發表新硬體產品的策略太成功,導致每次 WWDC 前就有一堆媒體刷一波預測題材。其實老賈辭世後,也只有 WWDC 2012、WWDC2013,和去年的 WWDC2017 才有新硬體發表,且大多只是 Mac 硬體更新。

這次 WWDC 發表的軟體內容仍舊是四大系統平台的更新版,依出場順序分別為 iOS 12、watchOS 5、tvOS 12,最後才是 macOS 10.14,整場 KeyNote 亮點更少了,觀察會後的臉書、媒體、網路討論,明顯感受到與往年相比,熱度不復以往。我個人則在當天就早早上床夢周公,後續幾日才在網路上把內容大致補完。

文章標籤

benjenq 發表在 痞客邦 留言(3) 人氣()

IMG_0674

本世紀初 Canon 公司的一款相機產品 D30 以「第一款不到 10 萬台幣的數位單眼(DSLR)」強勢切入攝影主流市場後,單眼相機全面數位化已成為不可逆的趨勢,然而即便如此,並不代表數位單眼也變成數位垃圾產品的成分之一,因為價格相對昂貴、產品升級步調相對緩慢、產品相對耐候堪用、類單眼產品與手機攝影功能進步的夾擊之下,數年一次的新品上市,DSLR 用戶們不一定會跟著把器材升級。

以我個人來說,在「器材大閱兵」這篇文章紀錄 2002 ~ 2008 及 2015 年,約七年時間內陸續購入總價約六十多萬的攝影器材,DSLR 也陸續入手 Canon EOS D60 / 5D / 5D Mark II(以下稱 5D2)三台,如今絕大多數的出圖來源換成了手上的 iPhone 4s/5s 手機,畢竟手機的聯網分享與 App 修圖功能,比數位單眼方便太多了,只有在手機辦不到的狀況下,例如人像大光圈散景(拍咩)、鳥類(打鳥)、晨昏(搖黑卡)、商攝、月蝕 /星空...等場合,才會把把攝影器材搬出防潮箱。

Portrait

Landscape

Portrait-2

Landscape-2

Landscape-3

說實在的,手機攝影的軟硬體功能再強大方便,也無法撼動 DSLR 瞬間捕捉到的影像價值,但是從數位單眼拍攝到出圖與他人分享的過程,仍然是一件相對漫長的過程,稱不上方便。所幸近幾年的數位單眼產品逐漸加入聯網功能,彌補了一部分不足,但是對於跟我一樣是 Canon 牙膏公司的用戶來說,Wifi 聯網功能只出現在近年來的中低階 DSLR 產品,中階以上得加買貴森森的無線外掛模組,似乎永遠搔不到癢處。牙膏亂擠的結果,身邊已有不少朋友用戶紛紛「出家為尼」。(Canon 佳能 -> Nikon 尼康 / Sony 索尼)。

於是心想,有沒有辦法找到一個便宜又有效率的方法,結合手機的便利與 DSLR 的影像品質,將手邊的老機機(5D2)加入方便好用的聯網功能呢?答案,算是有的,投入費用還可以低至台幣千元有找!

這篇文章很長,有耐心的話請繼續看下去...

文章標籤

benjenq 發表在 痞客邦 留言(4) 人氣()

CSharp_ObjC

最近手邊進行一項工程,要將 Object-C 的程式碼「移植」到 C# 的機器上。Object-C 是拿手的,但 C# 完全不熟啊~於是上網找了一些資料,練習嘗試設計一個小範例,用Object-C 與 C# 各寫了一份,體會其中的奧妙。

benjenq 發表在 痞客邦 留言(0) 人氣()