pretty code

顯示具有 管委會 標籤的文章。 顯示所有文章
顯示具有 管委會 標籤的文章。 顯示所有文章

2026年3月8日 星期日

管理費社區報表

前兩年當財務委員時,雖然花了很多假日時間去地下室翻找往年財務報表資料並做成 Excel 電子檔,也利用 Python 小工具讓我更新 Excel 檔更加容易,但因為蒐集資料花了太多時間,最後只能簡單將 10 年的資料轉成 JSON 檔以供後續 Web UI 使用。

理論上應該有更好的方式,但我不確定其他格式的資料放在 Github Page 是否能用,故我先暫時使用 Javascript 一定可以讀取的格式。

既然這種東西對 Claude Code 只是小菜一碟,故我今天就只是簡單使用幾句話,便放手讓 UI 去做,我甚至連 JSON 架構都沒跟他說。


經過了一小段時間後,馬上做出讓我驚豔的第一版。


我請他連 backend server 也做,反正我也懶得自己來XD


不過,離我想要的還有段距離,故我請他在入口改成兩個按鈕,一個是已經做好的,另一個是要執行搜尋的頁面。

第一版執行搜尋後還要自己按下按鈕,故我請他輸入完搜尋條件後按下 Enter 就直接搜尋結果。


最後,則是想要一個趨勢圖表功能,可以幫助我們快速看到這 10 年來的費用增長情形。


現在入口長這樣。


請他寫的總結報告。


最後則是 token 使用情形。


雖然我不是 designer,但我已經計畫好下一步要做甚麼了?

我想請他寫個簡單的 Verilog,來解決 HDLBits 的一個問題。

2025年4月4日 星期五

Python 工匠案例、技巧與開發實戰

雖然我是很想直接用 Tcl 單幹寫出現在要寫的 EDA Flow Tool?

不過考量到之後可能要一起協同合作,還是使用最大公約數的 Python 語言?

個人不是寫 Python 的,於是便看了一本買了很久但還沒看的書,也就是如標題所述的書。

不得不說,只要幾百塊的金額,便可以學到原本沒接觸過的知識實在是很划算。

據我之前理解,要稱得上是 Python 進階使用者,大概要知道下面兩個技巧:

01. 生成式的使用
02. 裝飾器的使用

不過,我到現在一個都沒用過。

個人覺得只要能把程式用不同的函數來清楚表達,這樣就已經屌打很多人了XD

因此,我們需要一個方法來檢查我們的函數是否有達到上列目的,剛好這本書在函數這一章節,介紹了一個 package - radon,它可以給函數一個分數,這樣我們就知道函數是否可以改進?

之前做財委時,為了將新補上的歷史資料填上我 Excel 前面的總表分析 sheet,於是便用 Python 寫了一支程式,當然這支程式還有別的功能就是。

總之,目前程式碼為 469 行,下面是我執行 radon cc -s xxx.py 的結果。


從上面可以看到,我有 5 支函數稍嫌複雜,只拿到 B 的分數,原則上最好都拿到 A 的分數是比較好的。


在這 469 行的程式中,扣掉 main 用了 17 個函數,一個函數平均大概不會超過 50 行,即使這樣,也不能保證我每個函數都能拿到 A 的分數。


其中以 adjust_cell_format 最為明顯,雖然行數只有 23 行,但我這支函數拿到的分數最差。

正常來說,應該比照 columns,將對齊方式也用 list 記錄,這樣就可以少掉 42 行與 45 行的 if statement。

但要說這支函數不好懂嗎?我也不太確定,至少這個程式已經是一年多前寫的,當我需要新增功能時,回過頭來再看一次函數也不會有多大困難就是了。

在不斷的思考與自我對話中,程式設計之道也會越來越清楚吧?我想…

2023年11月23日 星期四

有內鬼,停止交易

沒想到老婆大人居然沒聽過這句臺詞,看來我們有代溝?

前天主管突然告知某部門想要和我跟我同事聊聊,看看是否有機會過去幫忙,我們都覺得聊聊也不錯,便在今天跟該部門主管聊了一下。

初步感覺要做的事還蠻有趣的,應該也是我擅長的,便表達有意願過去試試,當然前期免不了要多學一些新的東西,但與純數學比起來確實有趣多了,最主要還是做的事對公司有幫助,畢竟我還蠻喜歡這家公司,我想該主管一定覺得奇怪幹嘛問了好幾次對公司有沒有幫助XD

總之,目前就看該部門最後意願,上不上都不錯。

假設最後過去,手上想做的事要做些安排才行。

簡易管委會財報系統原本預期花 2 天簡單學 Vue.js,3 天時間開發,再留 2 天跑一下 use case,確認這樣的設計對委員們有幫助,畢竟做事還是要有意義,去的話這些事可能就要分段進行,最糟情況在過年放假時完成所有事項?

3D scanner 雖然已經決定買 Pop3,之前問了兩家代理商都沒有現貨,還是改採網路下單排預購?

還是想讓 KOReader 離開後藍牙可以正常,這個應該只能趁假日零碎時間來應用,就讓水到自然渠成吧。

假設最後沒過去,就照之前順序完成相關事項並順便放大假,但中間還想多完成一個 Kobo EInkBro,畢竟 GCP VM 都還沒砍,每月一直燒錢也不是辦法(目前來到歷史新高 NT $170 / per month)XD

2023年11月13日 星期一

才下眉頭,卻上心頭

昨天在回父母家前終於把上上星期打好的管委會舊資料電子檔再核對一次,只有兩年半的資料也花了我了六日不少時間,雖說在打舊資料時就會核對一次,也趁使用 Python tool 填上分析總表時自動重新計算一下每月活存餘額作檢查,但沒有再核對一次,心裡總覺得不踏實,畢竟資料正確性才是第一重要, 目前總算是搞定了一件事。

因為一直把這件事放在心上,導致其他想到的事情都只能先用頭腦當暫存區,再加上本週已經開獎,因為沒時間原本已經想放棄了,後來還是覺得有點可惜,記錄一下自己的思路避免以後再次回想。

01. 退出 KOReader 後,bluetooth 無法使用問題。

我能理解開發團隊為什麼要 kill bluetoothd,一來可以省電,二來希望回去 Kobo Nickel 時可以讓 bluetooth 正常,無奈這招行不通。

我想以那團隊的能力 review chip spec 功力一定是不在話下,連他們都沒想到的事代表真的不可行嗎,還是只是純粹對藍牙翻頁器沒有興趣?畢竟會看電子書的人分為兩派,一派很喜歡用翻頁器,另一派卻對翻頁器嗤之以鼻XD

首先,需先釐清問題所在,假設是硬體問題,想辦法 reset chip 再 init 一次應該就可以了?

如果只是 bluetooth status 不同,導致 Nickel 認為有問題而不使用藍牙,是否可以去 /etc/rule.d 看開機時對藍牙做了什麼事,只要再呼叫一次該 script 即可?

02. 點雲點數的差異是如何而來。

雖然還未購買 3D scanner,但我內心總隱隱覺得我的土砲結構光系統跟幾萬塊的消費型機種應該沒有到 100 倍的差距?

回想一下,點雲起手式是什麼,不就是從 pixel cord decode projector cord,故 1 個 pixel 只要是 valid,就會作三角測量產生 1 點才對

換句話說,1920 x 1080 的 camera resolution,假設 valid mask 是 60%,則一次的總點數就是 1920 x 1080 x 0.6 = 1,244,160。

KEYENCE 這樣厲害的廠商一定是重覆拍照拼接或是做額外插值才能得到那麼豐富的點雲資訊?(印象中 33 mm size chip 似乎就拍了 10 幾張?用有 1000 多顆錫球那面來看,點雲點數約為 551 萬

以後如果請廠商 demo 還是得先有基礎知識才不會霧裡看花,什麼重點都沒看到

2023年11月10日 星期五

將來的事將來再說

鄭伊健和張柏芝主演的《蜀山傳》中,徒弟問了師父一個問題,師父只是淡淡的回了一句:將來的事將來再說…

話雖如此,但這將來也是有點久,即使我上星期五就知道答案,但拖到昨天才有非正式通知,也害我多看了沒用的數學 4 天?

這 1Q 的數學深不得我心,可能跟我本來的屬性不合,前 3Q 的至少是偏應用,還可以用學到的知識來土砲結構光系統,但這 1Q 的是純演算法跟數學,又不是要發頂會論文,坦白說我也還未入流,只是在浪費生命罷了。

站在管理的角度來說,這樣很不可取,浪費公司跟我的時間在一個沒有未來的學習,拿去多學一些對公司有用的不是很好,雖說也跟主管稍微提到這樣不行,無奈主管對我很好,我也只能欣然接受。

在這家公司 9 年多了,我對公司只有滿滿的感激,沒賺錢還有幾個月的年中加年終可拿,補班也不用我們上班,年底還有聖誕節可放!

衷心希望公司可以再起一波,只可惜以後沒有益生菌可購買了XD

------------------

上星期五就已經想好接下來要做什麼了!先簡短記錄,晚點再補細節。

01. 開發社區簡易財報查詢系統。

這一個多月假日除了土砲結構光系統外,有空都在補歷年財報電子檔資料,補到現在也才補了 9 年,算是一件吃力不討好的事,重點是也沒有人要求!責任心還是不要那麼重比較好。

超過 7 年的紙本資料都發霉了,就回朔到 103 年 6 月就好,勢不可去盡…

犧牲了自己假日時間,總算也是有點收穫,追回了一筆兩萬多塊的重覆付款,只能說這個永大很爛!

坦白說開發這個系統對我也沒什麼幫助,過去有建檔的資料都已經在我腦袋中,就當替 10 年後的我買個保險,以免 10 年後還住這個社區XD

這個簡易系統有 3 個方向可實作,分別是 UI 三大框架選一個,Excel VBA,Google Sheet Action Script。

UI 三大框架就是要配 Github Page,資料也不知會不會有隱私問題,但我認為漏水或修繕本就是應揭露事項,我是不覺得有任何問題,本人也不會笨到去揭露社區名稱,好吧,我承認我住新竹XD

VBA 或是 Action Sheet 好處是跟著檔案走,比較不用顧慮 UI 設計,但以目前已經有 120 多個 sheet 的 Excel 檔案來說,存檔都需要好幾秒,長久下去不是辦法,我猜跟 Excel 檔案本質就是一堆 XML 的組成有關,故效能會隨資料越多而越差,應該是線性成長?去去去,油漆工演算法不要來搗亂XD

目前在補舊資料時,是透過 Python 將新增資料填上分析總表以及各別科目 sheet,坦白說已經很好用了,比第一次從頭到尾建電子檔節省了不少人力,當然每月新增的資料還是免不了人力介入。

我們社區就是沒錢,難怪沒人主動要當管理委員?目前活存來到接近歷史新低。編號 13 的那筆資料剛好也是某次的調漲管理費用起始點,希望能像那次一樣,可以逐漸往上成長還能夠有餘額轉定存!


02. 購買消費性 3D 掃瞄儀來確定土砲結構光系統差距。

原本想購買 REVOPOINT POP3,但在 Reddit 看到前一代的評論,只能說慘不忍睹。

另外在同討論串看到推薦 EinScan-SE 這台,但價差多了 3 萬,總共要 5 萬塊,確實是有點買不下手。在 YouTube 看到一個影片,這台搭配轉盤,一個面速力達母寬度的小物件,看起來會轉 8 次,轉一次約會有 17,000 左右的點,感覺我的土砲結構光系統跟他並沒有到 100 倍以上的差距?


還是多看一些 YouTube 的影片再做決定?

03. Review 世界未來趨勢。

進入賺錢的產業或公司才是最重要的!你會什麼程式語言根本不是重點,結論還是鞏固基礎能力就好,正所謂萬變不離其宗。

退一步則是找自己有興趣的,有興趣才能持久。

千萬別為了工作而工作!

04. 多陪爸爸媽媽。

把買的那幾本相關書看一看。

05. Kobo(找到之前找我面試的 email)、Readmoo、HyRead 選一家投履歷。

一直有印象 Kobo 之前有找我面試?但遍尋 Gmail 卻一無所獲?目前只看到蝦皮的 email?

2023年10月22日 星期日

管委會相關事項備忘

下層鐵櫃從左至右分別如下,報表新的在上:

10306 ~ 10412
10501 ~ 10612
10701 ~ 10812
10901 ~ 11012
11101 ~ 11209

滅火器更換,區公所可補助一半(不確定是否常態?)
節能燈具更換,政府補助一半(不確定是否常態?)

B1 or B2 汙水管疏通,工法會切管,一次好幾支約兩萬多。
車道坑洞切換會分批做,避免影響車輛進出。
電梯按鍵一顆以前約 578。
化糞池清洗有分下不下池,下池約再多一半錢。

報表電子資料如何保存,是否要走會計辦法(複式簿記)?
01. 使用 GNU Cash。
02. 使用 Daily Money。
03. 自行寫程式配合 chart.js 放在 github page。
04. 原本的 Excel 檔案(確認 Python module 是否可以加公式或是使用 VBA)。

Note:若要加上公式,Use openpyxl 即可,但將 Excel 檔上傳到 Google Drive 後,如果儲存格是 refer to other cell,Excel 程式會顯示 0,但 Google Drive 不會,故折線圖會不連續,最好將月報表未發生費用值填上 0。

自行寫程式 JSON 格式暫訂:
{
    "init": [
        {
            "bank1": 10000
        },
        {
            "bank2": 20000
        }
    ],
    "accounts": [
        {
            "item": 40100,
            "desc":"管理費收入"        
        }    
    ],
    "reports": [
        {   
            "10601": [
                {
                    "item": 50100,
                    "dollar": 3454,
                    "detail":"B2車道修補"
                }
            ]
        }
    ]
}

防水工程科目名稱改防水及土木工程(車道坑洞修補)
安全缺失改消防安全缺失改進。
活存轉定存目前先放置在其他不屬於每月雜支科目。

費用分析時需將裝潢保證金扣除避免失真。

確認國盛回饋金是否是舊衣回收? -> Yes
資源回收每月約在 90 ~ 400 內。