今天九月十號,花树成长 App,上架蘋果應用商店了。
官方網站: https://huashu.ygbase.cn/。
這是我第一個上架的蘋果應用,解鎖了一個全新的里程碑。
時刻
記錄日常的想法、發現與碎碎念,保留不加修飾的真實流動。
因為不想忍受 Nextjs每次 build鏡像的等待時間,就把現在這個網站使用 Ruby on Rails技術棧重構了。
Google的 Web效能評分也很輕易的突破了90,之前使用 Nextjs的時候,只有40多。
網站主題也進行了重新設計,使用了兩欄,增加了內容寬度和內容展示。
利用業餘時間,大概做了1週,零零碎碎的在做的。
現在網站直接使用 Rails來渲染頁面,減少了前端頁面中 JS的使用和無收益的執行。
中間的過程沒有那麼輕鬆,特別是現在的內容和功能都已經不少了。如果沒有 AI輔助,心力和精力還得付出更多。
經過這一番實踐和折騰,證明了 Nextjs並不適合內容發布網站。
開啟 VPN 中的系統代理後,本地測試域名(比如 *.test)突然打不開了?
錯誤動作:在代理軟體裡加 DIRECT(直連)規則。
這是沒用的!因為流量一旦進入代理軟體,它就會用公共 DNS 去查這個本地域名,查不到 IP 直接就報錯攔截了。
正確姿勢:在作業系統的「網路設定 → 代理忽略名單(Bypass)」裡添加 *.test(或者在代理軟體裡配置 Bypass 繞過名單)。
核心原理:
流量最先是由作業系統接收到的。
Bypass(繞過):流量根本不進代理軟體,作業系統自己處理,用本機 DNS 直接訪問。
DIRECT(直連):流量已經進了代理軟體,代理軟體去嘗試直連,但通常會死在 DNS 解析上。
這個問題不是第一次遇到,也都能解決,但是今天是第一次搞明白了。
“手工參與代碼的感覺真好,不讓 AI 代替自己寫代碼的感覺真好。”
剛才試了一下新的全局 Cursor 規則,自己參與功能思考,關注代碼組織和質量,全身心參與的感覺又回來了。
為了讓自己能夠參與到程式碼組織和編寫的過程中,我給 cursor 添加了幾條全域規則:
1. 幫我設定一下全域 cursor rules,添加一條,只需要給出方案、計劃,或者每一步的實現代碼,不要替我寫。
2. 提交資訊中不要有 Co-authored-by。
3. 另一個規則:為更改寫提交訊息,不要提交。我會手動提交。
今天把這個站點添加到了 bing 和 yandex。
接下來可以觀察和熟悉這些搜索平台的功能和特點。
隨著網站內容變多,Nextjs SSG build 的時間也變長了。
之前的考量是:預渲染頁面,少使用 SSR,讓頁面開啟速度變快。最近部署的時候,發現等待的時間變長了,主要卡在 nextjs build 這裡。
問了一下 AI,AI 根據問題和網站場景,幫我做了分析。看過 AI 的回答和思考之後,我把 SSG 去掉了,只使用 SSR。這樣就又回到了 PHP、Rails 等傳統服務的路子。服務端渲染 + 快取,感覺清爽多了。部署和頁面訪問的速度都沒有問題。
隨著實踐,能夠感受到:技術運用應該是隨著問題的出現和解決而使用的,沒有標準答案。
React Native 的開發體驗挺不錯的。
雖然現在很多人都在用 AI 來做 vibe coding,但是經過一段時間的重度實踐,我的觀點反而是:作為工程師,還是需要保持技術學習,理解和掌握。
不太忙的時候,靜下心看看技術書籍。這個過程中,會感到自己的理解力增加了。一些沒有注意過,或者不太紮實的地方,都會得到補充。
循序漸進的教程,會讓人很容易專注投入進去。寫教程的過程中,對於知識的拆解和編排,也是一種很強的能力。
function Echo() {
const params = useParams();
const [searchParams] = useSearchParams();
return <h1>{params.msg || searchParams.get("msg")}</h1>;
}const param = "From Param";
const query = new URLSearchParams({ msg: "From Query" });
export default function App() {
return (
<section>
<p>
</p>
<Link to={'echo/${param}'}>Echo param</Link>
<p>
</p>
</section>
<Link to={'echo?${query.toString()}'}>Echo query</Link>
);
}