搜尋

搜尋結果

Github copliot vs Intellij IDEA ultimate
科技新知
MacauYeah・2025-02-18

github copliot 最近正式開放每月限量免費使用,只要有github 帳號,就可以經過vscode copliot plugin,向 github copliot 交互式生成程式碼,又或是經 copliot 提供 code completion。大家會不會想過,加了github copliot的vscode,是不是效率暴升,可以跟傳統的付費IDE 例如intellij 的IDEA ultimate版本平起平坐? 流暢度明顯提高 是的,在生成程式碼方面,特別是code completion,在開啟copilot之後,實在好太多了。筆者長期寫java,vscode 原生的 java code completion,實在太陽春。java class name都很長,而且是強型別,很多時候都要完整打出class name。但大部份時候,筆者都要打很多個字之後,vscode才猜到你想打什麼,再給你可能的code completion,但這樣一來你也快打完了,幫助不大。要麼就是自己複制貼上,要麼就自己全拼出來。 在開了github copilot之後,在空行開始時,它就會開始猜你的意途,在打幾個字母以後,它雖然會頓一頓,但總在筆者跳去其他部份複制class name之前,就給出更新結果,實在省心太多。但猜測始終是猜測,大部份時候還是邊打邊修正。不過code completion方面,已經是追得上intellij,有些時候更是超越了intellij。例如我們有時寫 javascript 時,需要做多語言顯示,我們需要為每個語言設定一份i18n的翻譯。copilot 在這方面也能幫到忙,它會自動推薦可能的翻譯,你連問都不用問,這些功能,都不是 intellij 的本地運算會有的支援。 另一個要提提的是 copilot chat,它跟大家平時使用 chatgpt 程式碼生成的方面類似,只是它可以直接在vscode的某個檔裏直接交換生成程式碼。不過生成的品質都很一般,很初階的事可以做,深一點的就不懂。例如你很常寫java,但突然要寫javascript,有些javascript的array操作你懶得查,這時你可以叫copilot chat幫你生成。但若果你今日使用 javascript 框架,有一些 vuejs 或 reactjs 的結構參數傳遞你不太了解,你想找copilot chat,那就幫助不太。它依然可以生成一些程式碼,但對你碰釘的地方沒有修正意義。你還是需要自行從官方文件較對、研究Stack overflow中相似問題的解決方案。就跟chatgpt差不多。當然這些不是傳統IDE可以給你的。但如果現今對比的是收費的copilot chat和本地免費的ollama qwen2.5coder,copilot chat就沒有太大性價比。 可以作為付費IDE的平替嗎 如果我們拿vscode github copilot 跟 intellij IDEA ultimate來比較,前者入門價錢是120美元一年,後者入門則是169美元次年續期有優惠,但到了第三年才會比 github copilot便宜。單看價錢的話,github copilot的確比較便宜。想省點錢,github copliot絕對是一個可以考慮的選擇。但除了錢以外,或者我們還要考慮一些其他因素。 公司立場上,介不介意你的IDE上傳資料到cloud service上面? 付費IDE的除錯功能、多環境整合、程式碼品質分析,這些關係到長期維護,非程式碼生成部份,是不是可以忽略不計。 筆者在開發開源的程式,長期都使用vscdoe,在配上 github copilot 後,明顯覺得它提升了 vscode 的流暢度。但相對實際工作上,筆者還是會集中使用 intellij IDEA ultimate 。因為即使vscode 有明顯改善,但日常碰到的問題更多不是在生成部份,而是解決那些似是而非的程式碼結構陷阱,這方面還是intellij 更幫到忙。當然stack overflow和其他網路資源才是真正的救命靈藥。

立春後,請化二黑病星土煞
宗教玄學
熊神進・2025-02-04

這幾天新聞報導最多的就是甲型流感致命,風水學家在半年前已經提醒讀者,下元九運的二黑五黃星很毒,它們會傷害一些住宅出了風水問題的人,嚴重的還會令人住院。 二黑星是什麽? 二黑星在五行中屬土,上應天上是「巨門」,「巨門」就是病星,顔色是黑色。自古以來,沒有人願意把「二黑」星招進來,大家都是避之則吉,例如當`我們知道它逼近,我們就關上門窗,不想它貿然進來, 因爲它來了,就不會離開,除非你家裏擺放了一些開光風水法器。 二黑「病符星」所到處,引發家人出現怪症、惡夢、情緒憂愁外,還讓老年人入院,孕婦流産,「二黑」爲坤卦,代表女人,更容易令男人遇上婚外情,或迷上「網絡色情」等,致心神不集中,筆者認爲這凶星需要化解。 化解「病符星」的方法有二個: 擺「桃木五帝錢尺」: 今年「二黑」飛入中宮,影響八方,易使宅內人有「情緒、健康」之困。由于它影響全屋人的健康,我建議在客飯廳的櫃頂上擺放一件「桃木五帝錢尺」,桃木是化病毒的木材,材質來自泰山的桃樹,我取用的是雷擊木,色澤上有暗灰的雷擊迹象,同時我在民間廟宇采購「五帝錢」,放在神壇上靜化,之後按使用者出生資料來開光,這就是法器,故擺這物後,家宅如稍有人生病,便可提起正能量,化去這「二黑」屬士之「病星」。 擺「佛法螺」: 這是一件佛八寶,可用佛的力量化「土煞」物。 它是來自尼泊爾聖物,所有的聖物都是用軟體法螺的貝殼製成,同時釀有天然寶石,十分珍貴。它源出于古印度,從螺頂朝上幷螺殼開口于左邊稱爲「左旋螺」,傳統爲右旋螺的白螺,從外而內以旋心中間觀察順時針向右旋轉的方向, 兩種聖物都是佛教視爲吉祥象徵。 古時佛教舉行宗教儀式時,吹奏的樂器就是「佛法螺」,因它的聲音遠傳及亦有號召衆生降魔,在「法華經」及「無量壽經」都有以法鼓、法螺等聲音遠傳作爲佛法傳播比喻。亦有信士把它放在家裏的神壇上供養。 「佛法螺」隨佛教傳入中國後,中國的藏族、蒙古族、滿族、納西族、傣族、京族、漢族等民族沿用至今,法螺于藏族的八瑞相,亦稱八吉祥徽、藏八仙及藏八寶之一。在很多經典中常以法螺之音悠揚深遠來比喻佛陀說法之妙音,據「法華經.序品」中形容:「今佛世尊欲說大法,與大法雨,吹大法螺」。 「佛法螺」放在客飯廳上可以吸取二黑星的病毒,這是一件很珍貴的法寶。

Docker Tag 命名
科技新知
MacauYeah・2024-10-24

一般來講,同一個docker image會提供多個不同的版本,每個版本會附予不同的tag,以作標識。但以docker image的維護者來講,它的tag通常代表的是自己程式的版本號。不過這個版本號卻存在很多變數,就讓筆者好好地逐一說明。 程式的版本號 在沒有Docker的年代,其實所有軟件在發佈時,都會標示版本號,方便使用方明確追蹤問題,自行選擇升級、降級以解決相容性問題。大家要重現問題,也能清清楚地重現。所以docker image的tag,在某程度,都是代表發佈自己的程式版本號。但以前的年代,軟件底層的依賴,例如OS層面的共享程式庫,則不在發佈的管控中,所以過去的程式,在跨電腦安裝時,都會出現缺少某些共享庫的問題。而使用了Docker後,image以內的共享庫的都會在打包的那一刻固定和發佈,就不會有漏的問題。 庫更新,怎麼辦 上面說到image可以打包共享庫,但問題是共享庫也會有安全性更新問題,那麼對docker image的維護者來講,它自己的tag又該如何命名? 因為庫的量可大可少,所以一般來說,都不可能完全把各個庫的版本號寫在自己的tag上。退而求其次,就是用quot;版本號日期quot;,庫的細版本號,就存在原始碼當中。Ubuntu 就是這樣的例子。 不過quot;版本號日期quot;的命名方式真的方便嗎?每次下遊用戶想更新去最近版本,都要自己找一次最近的日期。這樣對很多用戶來講都不夠方便。所以docker又提供了一個重tag的功能。例如ubuntunoble,在早些時候指著noble20240904.1,然後過幾天,又指向更新的noble20241009。更常見的是latest,每次image都預設會存在,docker也希望大家會定期更新這個tag,讓大家可以更易地找到最新版本。 註 這跟git tag有所不同,git tag並不預期會變的。當協作者收到tag後,那怕上遊刻意更新tag指針,協作者沒有刪除原tag之前,都不會知道tag更新去了哪裏。 我們該如何選 在發佈方和引用方來講,引用時可以明確使用唯一的quot;版本號日期quot;,對穩定性來講是有意義的。不過多多少少,會產生額外的時間成本。發佈方來說,就是多用了一些儲存空間,方便引用方可以隨時找到舊庫版本。而引用方,就要手動修改引用號,作為驗收依據,自動更新的難度比較大。 但對於自動更新要求比較大的情況下,可能就是使用latest或者會隨時更新的share tag共用tag比較實際。但我們也依然要定一些方式去版本更新記錄,例如:同時使用 beta latest archive 每日自動更新beta,只有所有測試都通過時,才把archive指向現在的latest,再把latest指向現在的beta。這樣做的好處是,核心的docker stack檔案改變的機會較少,也可以免除docker swarm做太細緻的權限管理。

Ceph Storage 水很深
科技新知
MacauYeah・2024-09-25

筆者不才,早前為大家介紹了一篇關於Ceph Storage的最入門安裝教學。但在後續測試中,發現了一些概念上的問題,需要盡早說明,不然就會像筆者一樣,要砍掉重來很多次。 OSD HDD Ceph Storage的主要功能,就是為Contiainer提供外置儲存空間,它對儲存空間有特定的要求。我們最好在建立ceph clustercephadm bootstrap之前,就為每個node上增加合適的HDD 引述官方說明 OSD Object Storage Daemons The device must have no partitions. The device must not have any LVM state. The device must not be mounted. The device must not contain a file system. The device must not contain a Ceph BlueStore OSD. The device must be larger than 5 GB. 簡而言之,大家需要準備新的HDD,不要做任何格式化,讓OS見到HDD但不作任何操作。筆者試過,使用hyperv VM hyperv HDD,也是可以做到的。不過之前筆者於教學中用的 multipass 就沒有這個模擬HDD功能,我們需要使用比較強大的VM作為實驗。 若然HDD是在ceph clustercephadm bootstrap建立之前,就存在的。我們可以經過ceph的網頁介面,或經指令自動加入。 ceph orch apply osd allavailabledevices 若然HDD是在ceph clustercephadm bootstrap建立之後,才加入的。那麼ceph有機會沒法自動發現它,筆者當前的dev版本就出現這問題。我們就需要經指令手動增加 ceph orch daemon add osd NODENAMEdevsdb OSD 官方說明文件 httpsdocs.ceph.comenreefcephadmservicesosd#cephadmdeployosds Reset 在我們做實驗時,若我們想回復到上一個狀態,測試不同的參數差異,Ceph指令並不會即時執行。例如前一句的add osd,想倒回來自行刪掉一些osd,即 ceph orch osd rm OSDID 它就會排隊慢慢做刪除。 但這個過程筆者未有成功過,OSD一直處於繁忙狀態。有機會是因為系統需要保持同步狀態,待成功遷移資料前,什麼都不能動,所以一直都在待刪除的狀態中。 同樣地,當我們想要刪除一些node時,我們使用以下指令 ceph orch host drain NODENAME ceph orch host rm NODENAME 最後也是會卡在刪除OSD的情況 Removing Hosts 官方說明文件 httpsdocs.ceph.comenreefcephadmhostmanagement Static IP 因為 container 技術,很多都需要固定 IP ,我們做實驗之前,最好先了解你的VM engine如果提供Static ip 。以 hyperv 建立的 VM ,其實可以同時建立兩張網卡的,一張為預設網卡,用於連網用,另一張則設定為內部網絡。在安裝 ceph 時,經 cephadm bootstrap 所引用的IP則設定為內部網絡的IP。之後基本上使用任何一張網卡的 ip ,也可以訪問到cephadm的網頁介面。如果不是在一開始的階段上準備Static IP ,我們又會在重設解綁cluster時,同樣因為機器繁忙而卡在不上不下的狀況。

徐大俠,一路好走
宗教玄學
熊神進・2024-09-15

#徐少强死訊 徐少强先生是筆者的一位朋友,他曾經跟筆者笑談風月時,筆者對他說了一句ldquo;你是金虎,最忌青龍rdquo;,他說ldquo;睇下點那就走著瞧吧。rdquo; 徐大俠是80年代的中國香港有個性的影壇武俠片演員,當年他在「麗的電視」武俠劇《天蠶變》一劇飾演「雲飛揚」而聲名大噪,近年出演《維多利亞壹號 》後就開始轉戰拍攝網絡電影。筆者不是他的影迷,說實話,他的作品我還沒有看過,只知道他今年年頭還留在北京拍電影,對于一位74歲的資深老演員,筆者是尊重他,祝福他。 上星期筆者收到嚴小姐通知徐大俠已經辭世,當晚筆者爲他做了烟供,祝他一路好走。 徐大俠的八字庚寅年,丙戌月,甲申日,壬x時,命宮是丁亥,胎元是丁醜。日主「甲申」跟年支「庚寅」是天克地沖,日元無根,玄學上叫歲破日出生,按古書解釋,徐大俠的八字根基不鞏固,最忌走忌神大運。何謂忌神大運,就是大運中的五行干支跟八字四柱相沖的大運。 2023年後他走「戊寅」10年大運,戊屬土,寅屬木,木克土,而他是「甲申」日出生,從大運的結構來說,寅中藏甲丙戊,甲的主氣透天干,主氣有力,木想制約土,可是日主自坐申金,絕氣之地,甲木根本起不了克土作用,反而是土生金,金旺起來。今年立春之後,他遇上人生第4個死亡期「甲辰」。 這是一個龍來欺虎的格局,辰屬龍,藏戊乙癸,癸是水,濕土可以生金,人體裏屬金的器官有肺、大腸、鼻,屬土的有胃,甲辰一出現,辰屬青龍,他生肖屬金虎,虎屬木,龍屬土,木弱屬金,屬土,歲君無情沖月柱 ,月支是月堤,堤不可以缺,辰中藏戊乙癸,戌中藏戊辛丁,乙木被辛金克走了,木一點根都沒有了, 四柱寅申沖,戊寅大運也來沖, 而大俠離開我們是在戊辰日,又是土金日,又是辰沖月堤,一百個巧合都來了,這劫是壽終。在算命學來說,因食道是消化系統,消化系統五行屬土,土生金,金來克木,木沒力克土,木是他的元神,元氣大傷。 如果以八字來分析,徐大俠第3個死亡期是2003年的庚辰土金大運庚辰大運時筆者認識他,當年筆者說他的女兒八字中食傷星旺救輔了父親,這也是化了一個大劫。徐大俠的食道一直都是不好,當年我和他聊天,他的噯氣比正常人的次數多,他告訴我,他的腹部常常膨脹、便秘,而土金是他的忌神,我把提醒他每5年檢查身體一次。 筆者很感恩徐大俠爲觀衆的演藝生涯,願他在天堂走好,也祝福他的家人。阿彌陀佛。

軟件發行也需要維修基金?
手機‧電玩
MacauYeah・2024-05-13

筆者參與軟件開發,都己經有好一定年期。面對軟件開發週期,最痛苦的並不是研發階段。好多打機的朋友,可能會以為軟件應該跟遊戲差不多吧,開發完就頂多修BUG,然後全心地投入下一個項目的開發。要持續花時間更新?不可能,微軟不也是幾年要求重買一次新版的Office套裝嗎?幾年也要另外花錢升級OS。概然全部都要另外花錢買,不就是一個全新的項目嗎? 其實除了微軟這種夠大夠惡的龍頭公司外,其他都不是這樣運作的。例如我們現在很常用的手機OS,不論Android, iOS,其實只要硬件支緩,就不需要用戶成本就可以升級的。其內的App應用,也因為手機OS的升級,也要持續升級。所以不論你是哪一層的開發者,好大機會都要一直維護已發佈的軟件版本,好讓它可以在不同環境下運作。而這個維護成本,就看你低層的供應商有多進取、有多佛心。現在基本免費的供應商都會大刀闊斧地改功能。大家要留意,是改功能,不是加功能。也就是有些功能過去有,現在使用模式整個有改變,你不得不重寫自己的軟件。 所以筆者現在最頭痛的是,如何為公司維護這些沒法帶來新收入,而又要不斷支付時間和金錢的訂制軟件。 技術上,一定有很多討論,但在於只關心行政的老闆的角度下,根本聽不懂。在於開發者的角度,也需要很長期的實務經驗才能有好一點的佈署。扣除技術,在本質上,若然各利害關系人都曾經考慮過,大家應該都會有更好的預期。 軟件有生命週期,而且這個重複得越來越快。由開發到發佈穩定版本的時間、人力、金錢最高。因為環境變遷,重回開發的機會越來越多,不斷地重複。 需求狠心地下架過氣軟件。過氣軟件,要麼更新,要麼淘汰。但不是所有軟件都受歡迎,值得投放時間。這個在老闆視角下,他很懂。但老闆通常做不了的是,狠心放棄升級不了的軟件。老闆經常覺得,只要軟件放著不更新,就不會有成本。錯,因為老闆只會記得倉庫中曾經有一個軟件可以做到某個功能,可以給賣給某個客戶。但當你拿出來時,才發現不能直接用,還是很焦急地找人更新。 軟件開發,跟很多其他類型工程很像。不是隨時看看圖表,就可以回憶前世今生。舊軟件要救,要花時間先摸索當初的開發工具、環境,追查問題原因,或許最後可只改一句指令就解問題,但總體成本會令人無法接受。 軟件的可複制性不如以前。很多老闆會認為,你之前開發過一次,抄過來做點少改動,不就可以當一款新的應用嗎?因為原來軟件沒有維護,大部份過氣的軟件,即使你有原始碼,你也未必能找到適合的編譯環境來做改動。想要改動?還是老老實實做先更新。 所以,大家對於軟件維護,應該要像物業管理一樣,要預留一部份費用為維修基金。可能還是有老闆會講,怎麼可以預留到這麼多錢去做維修?所以,筆者更加建議,不是要做一個完美的萬能軟件,要鎖定核心功能。沒化更新的,就放棄、止蝕。

師傅開光爲何要收取費用?
宗教玄學
熊神進・2024-01-29

#開光都是一種無償付出 曾有讀者來信問筆者, 內地師傅幫法器開光一般是不收費用, 爲何港澳臺的風水師傅幫2024年吊墜手串開光是取開光費用, 而且費用還是很昂貴? 首先你要明白, 不是所有物品天然或人工合成都可以開光加持, 風水師傅必須跟開光物品開光後才叫法器有感應才可以加持開光。 從這個說法, 我們可以知道, 爲什麽 กุมาร ทอง 不是任何師傅都可以開光。 開光加持是有一套儀軌, 業內人士叫ldquo;專用性rdquo;, 所謂ldquo;專用性rdquo;, 就是一件法器專給一位使用者,而每件開光物品開光後才叫法器都放在不同壇位上。 風水師傅又跪又拜, 燒 ldquo;許願香rdquo;幷念經, 開光法語和吉祥咒語, 把 使用者 姓名、出生資料, 先後天八卦、64卦等靈動力灌與天地陰陽之正氣到法器。我們跟佛菩薩說使用者願望,然後焚燒符籙注入能量,以金剛砂潔淨, 有的信士福份比較弱, 風水師傅還要燒 ldquo;阿彌陀佛贖罪香rdquo; 有沒有師傅免費做開光加持儀軌?我答你ldquo;有rdquo;。 免費開光加持的主要原因有三個: 1 批量開光, 又叫集體開光。師傅把一大批開光物品開光後才叫法器集體放在壇前念經, 簡單做一些潔淨動作。 2 藝人、商人、有情善信贊助了一筆開光費用等同香油費給師傅用來爲衆生的開光物品開光後才叫法器開光。 3 師傅做善事, 回饋香客。 看病收取診金, 買藥付藥費, 住院收住院費, 這是不同的商業概念; 風水師傅開光收取開光費, 而法器有法器的價格, 我們不要混淆概念,不可能請法器免開光費。古時有很多醫生是免診金, 當中的原因只有二個,一是有善心人捐贈診金,二是醫生做善事。 開光物品不能包括開光費, 而開光加持的費用主要來自: 1 潔淨的黃皮葉柚子葉金剛砂雄黃毛巾井水Hals玄粉 2 黃燭、許願香、釋迦牟尼香、藥師佛香、作明佛母香、阿彌陀佛贖罪香及一套開光專用錢包。 3 朱殊、毛筆不能回用。 4 租金。 當師傅 沒有 Charge you a penny, 請你學習感恩, 尤其時ldquo;網購rdquo;, 人心肉做, 即使師傅服務不滿足你的要求, 他她的大愛善行也是理解, 不要動輒惡評, 這是失德的修行。 我舉一個例子,ldquo;2024年黑銀剛六字明言佛牌rdquo;的開光儀軌是在壇前, 我們先做一場佛事,佛事要很多位師兄幫忙做儀軌,因此,是需要開光費用,只是筆者沒有向信衆收取,因爲背後有明星老闆代支付了。 簡單地明白了開光背後的操作,開啓智慧。Know more regulations , you wonrsquo;t lose, understand 開光加持一件法寶是需要付出正能量,師傅也是被抽取正能量。

新書《ChatGPT如配合Multicharts學習程式交易》近日在各大書局已有售
創富坊
程式交易 www.quants.hk (導師: 財經書藉作家: 麥振威)・2023-12-20

新書《ChatGPT如配合Multicharts學習程式交易》近日在各大書局已有售。 若由一個完全新手要完全熟習Multicharts的語法Power Language,再學習輸入數據、做回測及連接Auto Trade等步驟可能真的需要一定時間。 不過,自ChatGPT出現後,讀者們已可以直接用中文或英文將交易策略寫出來,再運用ChatGPT直接編寫出答案,無論是簡單的技術指標運用,又或陰陽燭策略,甚至較複習的套利策略,ChatGPT都能運用Multicharts的語法直接編寫答案出來。 雖然ChatGPT的答案未必全部正確,但學員只要明白Multicharts語法的使用原理便能懂得直接修改,這種學習方式比過往需要背誦大量Multicharts語法例子的方法更為有效。 而且若大家要寫大量的交易策略做回測也更為方便,因為所有策略不用自己由頭寫起,ChatGPT寫出大部份內容後再修改便可以,最終能節省不少時間。 本書的例子中除了常見的技術指標使用,也有自行組合的陰陽燭形態,以及一些比較高階的短炒及Daytrade 策略,包括分析恒指重磅股走勢短炒期指的方法、長短倉短炒策略 同時買入騰訊沽空阿里巴巴等,這些策略只要ChatGPT及Multicharts同時配合使用,要寫出來及再修改也並不困難。 另外一些較少見的技術指標如適合Daytrade或短炒的Detrended Price Oscillator、Chande Kroll Stop、Super Trend、klinger Oscillator等,又或用以判斷單邊市及上落市的Choppiness Index,在交易時也有一定的參考價值,本書除了介紹這些指標的特別用法外,也會講解如何透過ChatGPT協助編寫這些指標,並同時在Multicharts上直接運用。

一位讀者共用煙供體會
宗教玄學
熊神進・2023-10-11

#煙供是大愛# 熊神進風水學導師,執業30多年 讀者留言hellip;hellip;. 我是剛學做煙供佈施的初學者,之前常看見有人說不可在家裡面或晚上做煙供,因為怕會引來很多眾生 怕它們吃飽了還留在原地等等等。。。所以我也遲遲不敢開始 因為心裡害怕,但是其實心裡是很想做佈施來讓眾生得以離苦得樂的,所以我便鼓起勇氣跨出了這一步。 開始第一天,我在早上十點 在家的露臺開始做了人生第一次的煙供佈施,而且是做藥供,因為藥供粉裡有藥材味,聞著舒心,再加上聽著藥師佛心咒,有藥師佛的護持,心裡也就沒有了掛礙。我從一天一次變成一天兩到三次。 直到上星期有一天,這天是下雨天,我在傍晚五點半開始在家的露臺做第二回的煙供,一般做煙供時我都會觀想有觀世音菩薩護持,有諸佛菩薩和很多眾生前來享用,但在昨天當我開始念皈依和儀軌時 一閉上眼在我眼前馬上出現一個 淩亂的長髮,黑臉,那臉與頭髮長的和黑炭一樣黑並且沒有五官,身穿白衣這樣的一個畫面,當時我心想quot;怎麼那麼黑啊 quot; 但其實心裡早已有數了,這是我做煙供以來 第一次與眾生感應上了,我當時保持鎮定,繼續做煙供,一直不斷念 嗡。啊。吽 和 六字大明咒,並且告訴它 ldquo;吃飽了好好上路,到觀世音菩薩身邊去rdquo;,過後畫面便慢慢消失了。 其實到目前為止,我已經做了兩個月的煙供,心裡已經沒有像做煙供前那樣掛礙和畏懼了,只要我們心裡是存善心善念的,其實就算感應上了 也沒什麼好怕的。而且我相信做煙供也會讓我們的人生旅途 走的更加順利和順遂的。 熊老師有話說: 生命的第一要務在於付出,在我們付出的時候,心是最踏實的,那個當下是在我們能量達到足夠值時自然流淌地去做。 內心無分別的接納,無期待的給予。 這時候的我們,是無時無刻不在驗證生命的本自俱足,本自俱足的生命不需要從外抓取,付出是生命的第一需要,念一轉,我們會投影出周圍的生命都在付出,那是在一個美好的世界裡,那樣的世界是超越我們欲望牽引的。 其實我很早就知道我們做這些,肉眼可見範圍裡不會得到任何回應,但我還是願意這樣堅持做。 也會有同修提及,過程中會有可能接上不同層級的眾生。如果我們接上了,也無須害怕,無緣的不會來,來了一定是和你有緣,並且是你可以處理的。外在世界都是我們內在的投影,接納,感恩,你會從恐懼到無懼,生出大愛,慈悲之心。諸佛菩薩會護持你,無心之德方為德。 心若沒有棲息的地方,到哪裡都是流浪,付出讓人心安hellip;hellip;

Design Pattern: Observer / Subscribers - Push vs Pull
手機‧電玩
MacauYeah・2023-09-29

相信一般入行IT不久的朋友,都會知道IT系統更新時,有推和拉push、pull兩種方式。特別是Programer,對於觀察者模式又或者是訂閱者模式Observer Subscriber 會有更多的使用經驗,例如OS programing要處理event bus,Mobile App要做的推送通知Push Notification。 但一般來說,很少人討論推和拉push、pull的問題,筆者就著一些踩過的坑來說說差異。 首先,在一個通訊相對穩定的系統中,Push、Pull都很好用。例如同一個OS內,它的socket或pipe可以看作很穩定,可以假設那些要廣播的消息可以正常傳遞出好。但好用歸好用,這個模式對於越來越複雜的交互系統都有一個無法明確處理的問題:怎樣去處理觀察者訂閱者自己的操作失敗問題。 對於非IT行業的讀者來說,只要你接觸過手機即時聊天程式IM,如whatsapp, wechat, facebook messenger應該都會遇到一個問題就是:你收到OS提示通知,但打開聊天程式卻看不到新的對話內容;又者是你連續收到多個同一個內容的提示通知,那怕你已經讀過了。這些都代表了,手機端當初時沒有好好即時回應是否已經操作成功,不需要重複通知的問題。有可能是手機當時掛了,也有可能是網絡不太好。 上述的例子,對一般人來說,可能影響不太。因為重複收到訊息,又或是漏了訊息,也不會怎樣。但對於業務系統,例如定期收費,多收一次又或是少收一次,都會引起某部份關係者的不滿,即使事後有退費機制,但有些匯率問題,始終會有差異。在傳統架構上,有規模的公司系統都可能會使用內部的中央資料庫等做交易transaction管理,整個過程,都要嚴謹地記錄廣擴是否成功、觀察者自己的操作是否成功。 在近代,分散式系統又或是微服務的出現,令上述的中央資料庫無法實行。如何好好地重新定義好Transaction管理,就是一大挑戰。筆者最近亦實作了一個要在微服務的上廣播的觀察者模式,但雪上加霜的是,在互聯網的環境下,廣播的消息沒法保證可以正常傳遞出好。觀察者訂閱者可能已經正常收到消息,也做了相應的操作,只是來不及回應,網路就斷了。這令重複發送信號的可能增加了。 如果說,要以平民的方式去實作這類廣播,Pull會比較有大的容錯。廣播者只是通知觀察者訂閱者來拉資料,保證廣播當時的資料量可以盡量地少。廣播者開放盡量大的查閱權,觀察者訂閱者可以自由決定事後更新要取得的資料量。但這樣每個觀察者訂閱者都要重做一次同步機制,不過好處是,主動權在於他們自己手上。 相對地,Push的容錯就低一點,但要付出的成本也跟Pull差不多。因為網路環境,大家要重現一個基於TCPIP而有commitrollback的難度較大。當網路出現斷線,廣播者無法確定是否需要重做。在重複收到訊號時,最後還是需要觀察者訂閱者來決定怎樣處理重複記錄。但比Pull好的是,Push可以限制單次訊號的傳送量,也可以確保觀察者訂閱者一定收到特定的記錄。 上述就是筆者在這一年來遇過的坑,如有什麼不足,很歡迎大家一起來作更多討論。

Git Submodule
科技新知
MacauYeah・2023-09-15

Git Submodule 初次實務上使用submodule來同時管理幾個project的更新。如果有任何理解上的錯誤,請在github中提issue或pull request。 Why Submodule 假設你的團隊中有三個人,A君做A Project,B君做B Project,C君做Main Project。如果可以,A,B各提供已編譯的Binary或Library,給C君直接使用就最好。 但要做到好好管理,A,B都要有自己的發佈系統,即是把Binary上傳到某個分享Repo中,這樣C君就能有條理地通過IDE或Compile工具下載對應的版本。如果是javascript,Repo可能就是npm repo,如果是java,可能就是maven repo。這亦代表A,B君對程式編譯、打包、版本命名等都要很熟悉,不能一輩子都命名為v1.0.0。 如果團隊對這些都不熟悉,C君還有什麼方法呢其實靠著Submodule的功能,C君也可以硬把A,B的Source code取出,做最後打包。 這跟A、B君自己把source code壓縮然後Email寄給C君是有不同的。因為這樣C君並不清楚A,B的git脈絡:C君需要自己做好A、B的版本記錄。想要只回滾A,B的版本普不容易。但經過git Submodule後,C君可以清楚知道現在正使用的是A、B的那一個commit版本。假如有一天,A、B、C三個都更新了,但發現合起來時就跑不動。C君可以保持A、C的版本不變,單獨提取B的某個版本進行測試。當然,你可以說原本Email也可以這樣管理,但始終你不清楚B的版本記錄,Email的日期並不代表Source Code的進度。因為有時候,Bug Fix是針對舊版本的做更新,新功能的Email日期反而比Bug Fix要早 同理,如果大家要連結多個沒有發佈系統的文字資料,也可以利用Submodule。例如筆者正在編輯一本書,當中不同的主題,就是使用Submodule的功能串連起。 Command 馬上看來來Submodule可以怎樣做。 假設你已經知道git 怎樣用,也起了git repo。假設你是C君,進入你的本機repo資料夾內,使用submodule參數。 上面的效果,就是把C君當前repo的狀態,連結到B君submodule當時預設分枝default branch的最後一個commit 中。然後C君在自己的repo怎樣更新,它引用到B君的submodule版本都不會變。 直到某一刻,B君說他加了一個穩定的新功能,請C也連帶更新一下。C君也做好自己的準備後,使用submodule參數進行更新。 注意,如果C君有多於一個submodule,上述指令會全部一口氣更新。另外,如果你覺得B君的最新版本不能用,還是可以針對B君取得特定的版本。

棺木墜地,有什麼方法補救?
宗教玄學
熊神進・2023-08-21

#風水師談殯葬業罕見事件# 熊神進民間風水師,執業30多年 人死了辦喪事的時候,死人是最大最尊榮的,中國人有句話「死者,為大」「入土為安」,意思說,我們什麼都放下,優先處理喪事,這是一種道德,也是一種尊重。現在有一個問題,如果抬棺的時候,忤工不小心,導致棺蓋打開大體掉下來,這是什麼一回事? 過去10年 有關這些事件常有出現: 2019年1月,秘魯一班抬棺木者準備將棺木移至墓穴時,有名忤工跨穴時因重心不穩而跌倒,正好撞到未放置好的棺木,導致棺蓋打開女死者屍體掉了出來。 2019年5月,Ghana 有一群殯葬人員扛棺進行ldquo;Dancing Pallbearersrdquo;,當地民俗是用舞步送別死者,不料手滑棺材失去平衡,遺體直接飛出掉落草地。 2021年,中國台南市殯葬管所火化場發生罕見喪事意外,禮儀師在將放置棺木的推車推進火化場時,疑因施力不慎竟造成棺木墜地,亡者遺體瞬間外露。 2023年1月,英國Bristol 的Bedminster Down Cemetery 因為長期積水問題,導致每逢大雨泥濘滿布,先後發生2次抬棺者因地面爛泥而滑倒,以致遺體從棺材掉出。 無論在國外國內,我們都會聽到一些殯儀業離奇事件,有些聽起來令喪家不安。從職業角度來看,每一名員工都要多方面考慮工作中的安全隠患,而不是每次把屍體從地上拖回棺木裡。 在以前土葬的年代,主家會委託一名陰陽師負責所有出殯儀軌,每一細節都不能出錯,而且最重要的是出殯下葬期間,棺木一定不能在中途落地,更不消說大體從棺木中掉了下來。但世事無絕對,如果真的出現不可抗力事件,大髒從棺木掉了下來,我們有什麼方法補救? 有人認為棺材如果在途中著地,落在哪裡,就要葬在哪裡,叫做「天意」「落地生根」。筆者是不認同,因為龍脈位是按往生者八字及對後代影響而點穴位,並不是隨便找出來,同時,地是有價的,每塊地都有它的主人,不可能說隨地落葬就落葬。 ldquo;棺材不能落地,不然會攪擾死者的亡靈。rdquo; 這是業內人士說法。在下葬的過程中,棺材如果中途停留,我們都會用木凳子或是2個長條板凳支撐著,沒有直接放在地上的。 從上述幾件事,我們只見到幾位禮儀師將死者重新入殮把往生者再放進棺木裡,除此之外就是道歉及賠償。玄學家認為發生摔棺露屍,很可能是亡者有心願未了,我們要做5件事補救: 找玄學家選日入殮吉日。 免收喪家入殮費。 肇事人大殮日在大體跪地表示最高道歉。 拜懺108次。 燒99張大百解。 往生者是不是有心願未了,才會到火化場前起了很大的反應,筆者不下太多腳本了。

手機也可以寫攻略
手機‧電玩
MacauYeah・2023-08-11

上期為大家簡介過筆者使用Github mdBook制作遊戲攻略。未看過上期介紹的朋友,可以在這個連結httpslifemag.cyberctm.comzh_TWblogmacauyeah13777 找到上期內容。今期就繼續為大家介紹一些工具讓手機也能協作。 筆者在開始前,先簡單總結為何會選擇Github mdBook。 Github是協作工具,追查因為歷史修改記錄會比其他工具更成熟 mdBook以純文字方式操作,適合上傳至Github。 mdBook有自動轉網頁方式,Github有寄存簡單網頁功能。 現在剩下的就是如何做編輯。 電腦端 傳統上,如果要用網誌或Google Doc作為編輯媒介,若你有電腦的話,只要使用現代瀏覽器就可以使用,基本上都會有提供自動儲存草稿的功能。即使你在別台電腦中也可以繼續進度。Google Doc等也有提供離線模式,有時候真的網路不通,可以先修改線下版本再上傳回去雲端。網誌就未必有這些功能。 同樣地,Github也有提供瀏覽器直接修改的模式,不過想要離線操作,就需要使用Github客戶端或其他Git客戶端。重要的是,mdBook的原始文件其實只是純文字,可以用最簡單的記事簿程式就可以繼續創作。只是最後要經Github轉化為網頁發佈。 說到尾,有電腦在手,其實什麼方案也不算困難。有網路一切事情都可以解決到。 手機端 但在手機上,因為操作空間的限制,一切都變得很艱難。如果對技術不熟悉的朋友,可能用Google Doc已經是最好的方案。 Google Doc手機版已提供相對友善的排版編輯功能,但它真的不能取代電腦版。很多重要的縮排或插圖功能,還是開電腦使用吧。網誌就更不用考慮了,一般它們的編輯功能都不適合在手機上使用。 而Github的手機版,對於編輯純文字還是相對可以用的。而且mdBook對於一般文章排版也是夠用的。但是這個方案沒有暫存功能,對於長一點的文稿,需要離線慢慢創作就不太可能。 幾經辛苦,筆者終於找到一個Git的手機版,可以輕鬆地離線編輯。那就是PolyGit,它的免費版本雖然一天只能上傳Server 3次,但因為可以離線編輯,即使沒有付費,頂多隔天才一口氣上傳。更重要的是它的文字編輯器,可以看懂部份mdBook markdown格式。你在一邊創作時,就會看到基本的Highligh提示。不過最可惜的是,PolyGit只有iOS版本,Android版筆者未有找到很好的Github替代品。 這樣,你就可以隨時隨地,任何地方,都可以繼續創作了。以筆者的角度來講,扣除工作環境外,平時會碰電腦的機會真的少之又少。想好好找個時間、找一台電腦來創作,基本上很少可以實現。但手機就不一樣,午飯在餐廳休息時、晚上睡前坐在床邊,什至乎是大解的時候,拿著手機打打打,也是一個不錯的選擇。 PolyGit 官方連結 httpswww.polygitapp.com

Git Co-Work Flow
科技新知
MacauYeah・2023-06-23

Git CoWork Flow 雖然git面世已很久,但相當一部份澳門朋友都是solo man,很少合作寫code,對git branch始終都有些恐懼。所以這次來解召一個基本原則,至少你不會爛了code救不回來。 若然大家未熟悉git,初次利用git合作寫program,請盡量減少使用共同分支branch,可以極大地減少問題。 第一個大原則 建立一條自己分支 在一個repo中,為自己建立一條分支branch,可以減少Remote repo中有人比你先commit,而令你push失敗的情況。 Code block由於安全性問題,沒有獨立寫了LifeMag 網誌中,請移到github repo。 除非你的隊友故意你用的分支名先commit,又或者你自己有幾台電腦,幾台一起做改動。不然push 應該不會有問題。 第二個大原則 用fetch取代pull 很多人在取用Remote Repo的更新時,都會使用pull。但pull其實是fetch及merge的混合,而且merge還要考慮source branch是那條分支的問題,若然大家都有一條獨立branch,那麼這個無腦pull並不存於每人只有一台電腦下的多人協作中。 fetch的過程中,還可以加入參數prune,順便依照Remote Repo的指示,同步刪掉本機中一些不再存在的originbranch。 Code block由於安全性問題,沒有獨立寫了LifeMag 網誌中,請移到github repo。 第三個大原則 Merge前先Commit 經過前述fetch後,其實他人的改動並未加入自己的分支中,必需經過merge才會出現。但並不是沒有conflict就無腦merge。 假若自己有改動,未commit,應該老虎蟹都先commit。這是為了在merge後,還有機會可以無腦reset,回到之前那個commit。這就像是做任何更新前,先做backup。 Code block由於安全性問題,沒有獨立寫了LifeMag 網誌中,請移到github repo。 第四個大原則 由某個特定的人來管理master或main branch main branch以前叫master branch,是他人下載時的預設分支,也是Github、Gitlab的預設顯示分支。所以該分支存放著的source code,應該在代表信心度比較高。 在協作的環境中,每人都有自己分支,那就代表要有一位人員做管理,他負責checkout main, 然後合併其他已驗證的分支。 Code block由於安全性問題,沒有獨立寫了LifeMag 網誌中,請移到github repo。 在某些比較嚴僅的環境中例如Github、Gitlab,main分支可能會被系統機制鎖定,必需通過系統內鍵的Pull Request,才能通過審核,合併到main。另外,也有一些關於開發上的Git workflow,主要針對功能管理、版本發佈、錯誤修正等控制。有機會再為大家介紹。 希望以上的流程,可以有效且容易地讓大家協作。如果有任何command錯誤或更新,都可以經Github Pull Request通知筆者。

崩壞:星穹鐵道|體驗章節心得
手機‧電玩
MacauYeah・2023-05-26

上一篇推介的RPG手遊作品《歧路旅人:大陸的霸者》,其首發日期,已是兩年多前的作品。大家若果覺得畫面不太適合,想試試別的,實在可以試試米哈遊的最新作《崩壞:星穹鐵道》。筆者在前述的文章也有強調過,要在手機平台推遊戲,就必需配合手機的操作時機,以及同時重現在機制上的可重複遊玩性。更好的是,不要把課金意圖弄得太難看,讓人有試玩的空間。而《崩壞:星穹鐵道》,就最初遊戲的5小時體驗裏,以上的事都做得不錯,所以盡早為大家推薦一下。 首先講講戰鬥系統,遊戲採用回合制, 每次上場,我方可以最多上場四名角色,有直接影響戰鬥的戰鬥屬性分七種,分別是:物理、火、冰、雷、風、量子、虛數。每個角色只會對應一種屬性,而敵人則擁有幾個弱點屬性。若玩家成功攻擊敵人的弱點屬性,不單有大傷害,更可以令敵人崩壞,喪失行動力。遊戲雖然以回合制進行,但每個角色都有不同的速度值,如何運用角色屬性令敵人崩壞,去創造行動優勢,就是這遊戲的遊玩核心。(回合制就像《FF10》那樣,速度高的角色就相較其他角色行動來得頻密。《歧路旅人:大陸的霸者》則是一回合內各角色行動一次,但先後順序不同。) 雖然除弱點屬性外,還有七種角色屬性「命途」,但因為不直接影響戰局,筆者就不再逐個列出。在戰鬥屬性和命途的互相影響,看似有七七四十九種組合,看似要組一隊萬能隊伍,需要很多的課金。但筆者遊玩的時候並沒有這種壓力。因為上場人數的限制,最多只有四人,所以不論你課不課,也頂多只有四種弱點屬性,所以也不必在初期不斷去抽角色。大概有個五種就足以上場(對比《歧路旅人:大陸的霸者》,八種武器弱點加六種魔法弱點,即便八人上場,一人就一種武器,少量角色才有一種魔法,《崩壞》真的沒有那種課金壓逼感) 戰鬥系統的聲畫演出各方面,都比筆者過去遊玩的要強得多。而且遊戲亦有自動保存機制,每走一段路、跟環境或NPC互動後,都會自動保存,那怕是如筆者般的碎片化時間,也能玩得下去。故事亦沒有明顯的小關卡段落,在劇情上的連貫性就表現得比普偏手遊的小關卡制好。(某些手遊的小關卡過場,看多了真的會覺得很造作,在筆者珍貴的碎片化時間中,看看就會選擇完全跳掉)。如果你真的很久沒有試手機上的RPG故事作品,《崩壞:星穹鐵道》絕對可以是一個選擇。 《崩壞:星穹鐵道》官方網頁 httpshsr.hoyoverse.comzhtw