(source: DCIT 行事曆)
距離上回寫 Blog 已是 2022年6月16日 關於 Covid-19 後期各國通膨率的分享,最後一篇有關 DCIT 行事曆 (Developer Conferences In Taiwan) 的改版則是 2020年10月4日 ,最近 DCIT 行事曆 Part2 改版完畢,寫個分享記錄這段時間做了什麼。
這段日子 TGmeetup 似乎暫停運作,很懷念當初剛做好 DCIT 行事曆時看到 TGmeetup 時有種英雄惜英雄的感覺,為此寫 DCIT 與隱私 時特別和 TGmeetup 做比較,避免 DCIT 和 TGmeetup 打架,希望未來 TGmeetup 能再次運作起來 (DCIT team 目前只有我一人,資料沒更新表示我懶)。 😆
README 版則保留在 developer-conferences-in-taiwan repository
在 Google 搜尋 DCIT 、 DCIT 行事曆、 developer conference in taiwan 等現在都無法顯示 dcit.ivanwei.co ,透過 site:dcit.ivanwei.co
和 dcit.ivanwei.co
可以正常找到內容,唯有關鍵字無法找到;經過使用 此 Blog 網站 用關鍵字查詢,大致確定內容不被 Googlebot 喜歡。
接下來改版待辦事項如下 😆
大致 DCIT 運作方式可以到 developer-conferences-in-taiwan 的 wiki 了解。
]]>
(source: NicePNG)
前腳 美國聯準會甩出升息 3 碼 的套繩 🪢 期望拉著名駒 - 通膨 🐎 的狂奔;後腳 臺灣央行也甩出半息半碼的套繩 也想拉住自己的名駒。通膨 🐎 的成長在 QE、 Covid-19 、烏俄戰爭和各國角力的餵養與訓練下長得全身是肌肉,稍有不慎有機會成為脫韁野馬。
依 StockQ.org 的 GDP 排名來看,前 20 名國家通膨率小於 5% 有 4 個國家,分別為中國 🇨🇳、日本 🇯🇵、印尼 🇮🇩、瑞士 🇨🇭,意謂通膨是 2022 ~ 2023 年各國碰上的一堂課。
QE 讓金融市場上有寬裕的鈔票可以使用而避開通縮,而 Covid-19 的出現宛如助燒劑燒起一把又一把的野火,最後烏俄之爭開起通膨名駒奔跑的第一聲禮炮。現在股市必定經歷下降期,因為升息與 QT 執行在即,市場上的資金需要時間重新整理,因此現在短中線要進場投資建議再等等,長期投資可以一點一點分批進場。
投資是時間換金錢的遊戲,工作是時間換金錢的遊戲,投資從小學起;看報表、找消息、看準投都需要時間來累積。
]]>隨 macOS Ventura 即將到來,新一輪舊設備也將迎來成長的終點。這次將 2017 年以後產生的設備排除在更新名單中, M2 CPU 的發表,讓我期待 M2 Pro 、M2 Max 的表現,同時明確感受到 Apple 加速向 USB Type-C 支援的趨勢,也許和 歐盟通過 2024 年秋季起手機必須使用 USB Type-C 做為充電端 有關。相關討論我覺得可以看看這篇 What the EU’s new USB-C rules mean for the iPhone ,我對 Apple 整體還是滿正面看待。
設備 | 時間 |
---|---|
iMac Pro | 2017 年 |
MacBook Pro | 2017 年與後續機型 |
MacBook | 2017 年與後續機型 |
iMac | 2017 年底與後續機型 |
MacBook Air | 2018 年與後續機型 |
Mac mini | 2018 年與後續機型 |
Mac Pro | 2019 年與後續機型 |
Mac Studio | 2022 年 |
Last updated: 2022-06-09 13:58:50
學過 Git 轉換到 SVN 只需要三分鐘既可完成基本操作,資料一樣會複製一份在本機,最大差異有 2 點
svn commit
等同 git commit
+ git push
,沒 svn commit 前都不會被上傳與記錄動作 | Git | SVN |
---|---|---|
複製 Repository | git clone | svn checkout |
提交 | git commit | svn commit (svn ci) |
查看提交記錄 | git show | svn cat |
確認狀態 | git status | svn status (svn st) |
確認差異 | git diff | svn diff |
確認記錄 | git log | svn log |
增加 | git add | svn add |
移動 | git mv | svn mv |
刪除 | git rm | svn rm / svn del / svn delete |
取消修改 | git checkout / git reset | svn revert |
建立分支 | git branch | svn copy |
切換分支 | git checkout | svn switch |
合併 | git merge | svn merge |
建立標籤 | git tag | svn copy |
更新 | git pull / git fetch | svn update |
上傳到遠端 | git push | svn commit |
忽視檔案清單 | .gitignore | .svnignore |
$ svn propget -R svn:externals
$ svn pe svn:externals . --editor-cmd <editor (e.g. vim)>
$ svn commit -m '<message>' <svn:externals 資料夾位置>
$ svn update
,更新 svn:externals 資料$ svn checkout <repository>/@<commit number>
Last updated: 2023-06-08 03:10:38
Github 圖檔上傳機制似乎有調整,導致存在 Private repository 的 issue 中的圖檔無法讓任意人觀看;這個是一個補強性的功能,讓 private 的人必須擁有對應權限才可觀看,因此若打算使用我和一樣使用 Github 做為 Blog 服務則可選一個 Public repository 內開一個 issue ,將圖檔上傳至該處後將產生的圖檔 url 搬到原本的 issue 裡。 (本已是 Public 則可略過,因為是只有在 Private 轉到 Public 內容會發生)
現在 Blog 選擇有
此篇以分享文 透過 Github Issue 更新 Blog 內容 (Firebase 版) 為改造,使用 Github 服務打造 一站式 Blog 服務
。
以下範例使用 Github 、 Github Pages 、 Github Actions 和 Hexo。
需要安裝步驟可參考之前的分享文 [Hexo] Gtihub 上架 Blog
1 | name: <Action 的名稱> |
1 | name: Publish |
過去使用 Hexo 架 Blog 的主要缺點是必須開啟 IDE 之類工具撰寫完後再將內容推至 Github ,後來 Netlify CMS 出現很大程度解決撰文環境的不便,但始終覺得需登入到另一個服務有些不便,因此開始思考是否有符合以下條件的撰文介面 1) 使用 Markdown 、 2) 圖片可以透過複製貼上上傳 、 3) 能暫存 、 4) 能即時預覽 ,最後能有權限管理更完美,而 Github 的 issue 功能滿足所有條件,只差能不能取得 markdown 內容!
很幸運地翻閱 Github API 文件確定透過 API 可以取得 issue 的 markdown 內容,看似完美也有隱藏的內容需要注意, Github issue 使用中文撰寫時有機會出現 <0x8x>
的 ascii code ,在 Hexo 一些轉化成 XML 檔的套件會失效,文字也會出現特別符號,好在 Preview 能看出來,也算是有方便的解方。
Last updated: 2022-03-04 08:16:21
從上份工作離職後,整個人進入實現自我想法與找工作呈現 6:4 的狀態,造就這回有趣的面試經驗。求職一路永遠有驚喜,同時也是挑戰自我,願祝大家求職路上順心。
1 月份在 104 看到一間滿感興趣的公司 - 涬浢科技系統有限公司 招募 React 人才,投履歷的幾天後順利收到 HR 約時間,有趣的求職旅程正式展開 (以下會馬賽克該公司非公開的資訊如員工電話、Email)
順利通過
過完年 HR 通知第一關過關,同時提供技術考題目並要求二天內交卷!(二天內準時交卷)
沒通過,事後得知作答皆正確,沒通過的原因放後記
HR 是一位很親切的人,在第一關聊天時整體很輕鬆、舒服!
在第二關技術考題沒過時拜託 HR 幫忙詢問哪一題錯誤,好讓我在接下來的求職路上做加強。
隔天 HR 給予技術主管的回覆,沒通過的原因是風格,可以說 筆試得滿分 💯 同時落榜!
謝謝涬浢科技 HR 幫忙,她真得是少數讓我感到親切的 HR 。
投履歷前看看有沒有 過來人
,在 面試趣 看到這 (我沒加會員看不見更多,有興趣自行解鎖) ,有種一言難盡的味道,但切記別人不適合不等於自己不適合,也造就我一次有趣的求職經驗。
建議應徵者作答前試著詢問是否有 “風格” 上的限制,同時了解風格有哪些規範!我取得的考題上只給予 開始
與 結果
,中間的開發屬於實作,也是此次因風格不符而沒有機會進第三關的原因。當今 React 開發多數會選擇使用 Hook ,考題上我選擇傳統 Class ,可惜沒猜中。
過去透過 Slack 整合 Github 訊息,這次透過 Discord 整合 Github ,三個步驟完成整合。
進入文字頻道的 整合
設定並點擊 建立 Webhook
成功建立 Webook 後點擊複製 Webhook 網址
到 Github repository 的 Setting 進入 Webhook 設定頁
將 Discord 複製的 Webhook 貼到 Payload URL
,最後面加上 /github
,同時將 Content type 選為 application/json
設定要推送到 Discord 和確認 Active 已打勾,既可點擊最下方的 Add webhook
確認建立的 Github webhook 有打勾通過
放棄的原因有二
初探時碰到的狀況
於是開始找一下有關 TypeORM 的問題,整理如下
TypeORM 有很好的對 TypeScript 的適配性,有很漂亮的寫作方式,然而
以上評估認為不適合我目前的一人專案,持續投入有問題可能需要花更多時間處理,果斷初探 3 天放棄使用 TypeORM 做為專案第一版使用的 ORM。
]]>DCIT 開源超過兩年,也是到了該改版的時間點,這次修正 API 長久以來的 Bug 和讓 Github action 正常恢復工作 🧐
DCIT 全名 Developer Conferences In Taiwan 是專門收集在臺灣開發研討會時間、地點的計劃,資訊來源主要來自閒逛 FB 、廣告、社群取得與整理至 Google Sheet ,來源基本可靠。
歡迎各路朋友一同參與維護 DCIT。
Google Sheet 新增 / 修改資料 → Github action 定時執行 Makefile 下載 Google Sheet 內容和取得 活動組織者清單 → 匯出新的 README.md → 更新到 Repository
苦思之後有了今天這篇,分享如何讓 Github Issue 成為 Blog 的內容管理器。
在 Profile 中進入 Developer settings
選擇建立 Personal access tokens
授權範圍選擇 public_repo ,若指定的 Repository 是 Private 則必須勾所有控制權
記住產生出來的 Token ,試試能否取到 Repository 裡的 issues ,正確會吐 Array 回來,而 issue 的內容存在 body 中
$ curl -H "Authorization: token [Token]" https://api.github.com/repos/[user id]/[repository name]/issues
上一步沒問題既可透過 Ajax 方式取得 Response 後,將 issue 存成 Markdown 檔,下面以 fetch 為範例
1 | const fetch = require('node-fetch'); |
1 | const fs =require('fs'); |
以上兩者結合既完成 issue 轉成 Markdown ,若覺得過程可以使用 @ivanwei/blog-content-source-cli ,將上述打包在一起,用法也相對簡單許許。
$ yarn add @ivanwei/git-issue-hexo-cli
$ b.content refresh -R <Repository> -u <username> -l <Issue 有這 label 既存成 MD 檔> –git-token
-o <存檔的資料夾>
接下來會使用 @ivanwei/git-issue-hexo-cli 來操作 issue 部分,有興趣自己手動做可以看 Github API ,因為前者也是使用同樣的內容加上一些步驟集結而成。
此處內容以 firebase functions 配上 Express 為範例, firebase 相關設定可以看這篇 或按下面步驟建立
$ npm install -g firebase-tools / $ yarn global add firebase-tools
$ firebase login
$ firebase init functions
$ firebase list
$ firebase use
$ cd functions
$ npm install express node-fetch / yarn add express node-fetch
1 | const functions = require('firebase-functions'); |
$ firebase deploy –only functions
部署後 Terminal 會回傳一串 URL ,此時可以使用 cURL 、 Postman 或寫個 Ajax 程序試送 request ,試試看是否能收到 response。
Firebase 回傳的 URL 會長得像
https://<你選得專案地方>-<專案 ID>.cloudfunctions.net/<export 的名稱>
若沒看到或忘記這串 URL ,可以到指定的 Firebase 專案點 functions ,找找要的 export 名稱
綁定信用卡會收到 40 臺幣信用卡的過卡費,如果選擇 Blaze 方案可以使用的免費額度有些不同,詳細可以到底部參考資料查閱。
因為 Firebase functions 免費版對外送 Request 限定只能是 Google service ,需要升級解除此項限制。
透過 Travis CI API 來觸發,操作方式就直接 Show code;至於 Travis CI 對 Repository 操作權限,可以看 Tommy Chen 的 用 Travis CI 自動部署網站到 GitHub
這裡的設定可以參考 .travis.yml 的寫法,設定則寫在 config 裡面。
1 | const body = { |
打 request 有幾點需要注意
%2F
不可替換成 /
'Content-Type': 'application/json'
'Accept': 'application/json'
'Travis-API-Version': 3
'Authorization': 'token ' + travis_token
.org
也是可以觸發 Private repository1 | const response = await fetch(`https://api.travis-ci.org/repo/${username}%2F${repo}/requests`, { |