Latest Posts

CSS 格子layout例子

1 2 3 4 5 6 7 CSS代碼 HTML代碼 padding是div內部內容和div格子上下左右邊界的距離 display: grid 決定了內部div (“inner” class)從左到右排練,如果不用,每個div各佔一行 grid-template-columns 決定了一行放幾個內部div,和每個內部div寬度,可以是%也可以絕對距離 boarder用來debug,顯示格子邊界大小 用鼠標選中格子里兩行,cmd+c,cmd+v 複製黏貼到編輯器里,出了還是一個一行,打橫顯示是瀏覽器的特效。

2022年startup愛用哪些的熱門技術?

本文總結一下個人觀察到的startup愛用的熱門技術/服務。各種SaaS服務確實讓創業變得更容易。每一個服務以前都需要一個團隊,現在像用水電費一樣按使用付費。只需要很少的人就能組成一個像模像樣的公司。缺點也是很明顯。很多比較年輕的團隊對這些服務不知所以然,使用這些服務的時候造成不必要的浪費,然後這些都變成了各大SaaS服務商的源源不斷的recurring revenue。 前端 React, javascript, typescript, node.js 後端 (server side / API) Python, Go, Kotlin, GraphQL, Docker, Kubernetes Data Warehouse / Storage Snowflake, BigQuery, AWS Redshift, S3 數據庫 MongoDB, AWS RDS Cache Redis 搜索 Elastic Search 機器學習 Tensorflow, PyTorch, AWS…
Read more

修復 wordpress 中文繁簡轉換插件的問題

給網站添加了WP Chinese Conversion,可以進行簡體繁體轉換了。 目前這個WP Chinese Conversion插件的版本是1.1.16,已經5年沒更新了。PHP升級後有了些變化,於是這個插件就有了些error/warning。自己動手將就改了一下,修改都在wp-chinese-conversion.php,把error/warning fixed了。本文記錄一下。 each function被新版PHP給deprecated了 把這用到each的代碼,比如這個 改成 create_function也被PHP給deprecated了 把用到create_function的地方改成anonymous function,比如這段 改成 總結 修改這兩function用到的地方後,就正常工作了。

PHP隨手筆記 array和hashtable,打印,REPL,While Loop

自己運營wordpress網站,而wordpress是用PHP開發的,遇到問題就看看代碼,所以時不時也得學點PHP,記點筆記。 PHP的array也是hashtable array的index是從0開始的連續的數字,而hashtable的index是任意東西。邏輯上確實可以用hashtable實現array。但是物理上一般array內存空間是連續的,不知道PHP怎麼實現。以後可以看看。 打印 print_r($some_object)可以打印object,而echo $some_string只能打印string REPL 本地 online可以用replit.com。我的本地版本是8,需要用7,測試一個叫each的function,8已經淘汰掉這個function了。目前replit還是7,可以測試。 While Loop例子

怎樣備份部署在EC2上的WordPress站點

手動備份 備份網頁部分(html, php),這部分不需要經常備份,如果沒修改code或者更新plug,主題之類的 備份MySQL,這部分需要更頻繁,所有的內容都在database里 sudo mysqldump -u <db user> -p –databases <db1> [db2, db3…] > <db backup filename>.sql 然後可以sftp複製到本地或者上傳到s3之類的cloud storage里。 備份Script 編輯 backup_db.sh 文件如下 編輯 backup_html.sh 文件如下 以後需要backup的時候運行這兩文件即可

怎樣在WordPress里顯示數學公式?

寫數學和科學方面內容的博客,如果能直接寫出漂亮的公式就完美了。先上效果 一元二次方程的根 $$x = {-b \pm \sqrt{b^2-4ac} \over 2a}.$$ Logistic regression loss function $$ -(y\log(p) + (1-y)\log(1-p))$$ 這在我上學的年代可不是容易的,以前只能用公式編輯器或者Laxtex在別的地方生成好公式,然後貼圖。多虧了mathjax這個project,能讓我們直接在html裡面寫Latex,render出來效果如上,個人覺得非常不錯。 在wordpress寫作時,選擇添加html 然後在html的內容裡面寫入如下 <script type=”text/javascript” src=”http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML”> </script> 一元二次方程的根 $$x = {-b \pm \sqrt{b^2-4ac} \over 2a}.$$ Logistic regression loss function $$ -(y\log(p) + (1-y)\log(1-p))$$…
Read more

Homebrew (brew)筆記

Homebrew / brew是什麼? 類似Ubuntu的apt-get,Fedora的yum,brew是Mac OS用的命令行安裝,卸載軟件工具。 Brew 命令 查看已經安裝的軟件包(package) 這裡會有不少package是安裝某package和安裝的dependency。 查看top level packages 顯示每個package的description 列出已經安裝package的dependency tree 顯示需要更新的packages 查看Homebrew版本 Homebrew安裝的軟件都放在哪裡? 目前用的是Homebrew 3.6.12,軟件安裝在 參考 List of all packages installed using Homebrew 本文鏈接

算法練習 Leetcode 力扣 1293 Shortest Path in a Grid with Obstacles Elimination 解法

問題 題目在這。 解題思路 格子題,從左上到右下需要的最小步數。難點在給了個預算k,最多可以穿牆k次。找距離需要用BFS,不走回頭路就可以,比較簡單。但是這題在空間上是有可能走回頭路的,因為除了空間以外,還多了個狀態是已經穿牆幾次。放到queue裡面的應該是(坐標,穿牆次數)的tuple。所以關鍵在於不要把相同(坐標,穿牆次數)放queue里,不然會無法停止。 Python解法