Posts

If I didn't write it down, I'll forget eventually.

Migrate mail server to Gmail - migration strategy

上一篇講了如何使用 google 提供的 migration tool 來遷移郵件,但需要知道大家的密碼才能用 IMAP 存取郵件資料。
一般來說即使是 root 也是看不到密碼的,就算能也只是看到加密過後的密碼。
而本篇要紀錄的就是我們遷移策略,包含我們怎麼繞過(?)密碼這關。

Read More...

Migrate mail server to Gmail - using migration tool

最近 CMLab 終於申請到 G Suite for Education 了~
也就是我們不用再維護自己的 mail server 了~灑花~

但這也就又多了一件事:Migration…
我們要做的事情有以下幾件:

  1. 讓 MX record 指到新的位置
  2. 遷移群組
  3. 遷移舊信

其中 2, 3 並非必須做的,但為了讓大家可以無痛轉移,我們才決定要搬信以及同步群組。
1, 2 十分容易,就照著說明就可以完成,真的不會的話還可以打給 Google 救援 XD
而本篇要紀錄的是 遷移舊信 的部分,這是其中最麻煩也最繁瑣的部分…

Read More...

High Dynamic Range Imaging

高動態範圍成像(英語:High Dynamic Range Imaging,簡稱HDRI或HDR),在電腦圖形學與電影攝影術中,是用來實現比普通數點陣圖像技術更大曝光動態範圍(即更大的明暗差別)的一組技術。高動態範圍成像的目的就是要正確地表示真實世界中從太陽光直射到最暗的陰影這樣大的範圍亮度。
– from wikipedia

由於一般數位相機的影像就是每個 pixel 8 bits,能夠表現的能量範圍就是這麼窄(過暴就全白,太暗就全黑)。
然而真實世界的能量範圍是非常廣的,為了能夠在 0~255 之間表現出最豐富的細節(亮部即暗部的細節),才有所謂的 HDR 技術。
HDR Image 可以從多張不同曝光時間的照片中組合出來,而整個流程大致包含了:

  1. 影像對齊
  2. 計算出真實能量分佈
  3. 把影像壓縮回低動態範圍成像(一般螢幕才能顯示)
Read More...

Setup x11 forwarding on Debian

有時候會需要在 server 上使用有 GUI 介面的程式,像是我們會把 matlab 安裝在運算能力很好的工作站上供大家使用。但透過 ssh 連上工作站的話介面會是 terminal,使用上就會比較不便。

Linux 的 GUI 運作模式,其中

  • X-client 負責程式的運作
  • X-server 負責畫面的顯示

所以只要把工作站上的圖形顯示丟到本地端(windows/mac)的 X-server,就可以顯示出來了。
本篇將介紹如何設定才能使 Debian Server 的 GUI 程式的畫面顯示到 client 的電腦上。

Read More...

防止 mail server 大量寄信的手段

最近這幾周都一直被 cmlab 的 mail server 霸凌,覺得難過…
為了解決 mail server 時不時會大量寄出信件的問題,嘗試了許多方法,終於得到一點點平靜…
本篇整理了我們最近嘗試的方法及一些工具,做個紀錄…

Read More...

From React to React Native

接觸 React 其實也一段時間了,總是嚷嚷想做個自己的 Project 但始終沒有動手開始做。最近趁著寒假終於用 React 做了個網頁小遊戲,之後也改寫成 React Native 做出 Android and iOS 的原生 app,順便把 android 版上架到 Google play 上~(iOS app store 費用太高付不起…)
算是完成幾個長久以來的小小目標(?)

用 React Native 做出 Android/iOS 原生 app 用 React Native 做出 Android/iOS 原生 app
Read More...

Light Field Camera

一般傳統相機都是先對焦好之後拍攝照片,而往往會有些照片事後才發現竟然沒對好焦,甚是可惜。而光場相機(light field camera),有別於一般傳統相機,是可以記錄相機內部的光線傳輸方向等信息的相機;光場相機就是比傻瓜相機還傻瓜的相機,允許再拍攝後根據拍攝者的需要再重新聚焦到任意的位置光場相機可以做到先拍攝,後對焦這種神奇的事情。

光場相機其實是在相機主鏡頭後面加了一層微透鏡陣列,讓原本聚焦的光再次分散到各個感光點上,如圖一:

圖一:在成像平面前加一個微透鏡的陣列。微透鏡陣列的平面在這裡是 st 平面。在微透鏡陣列後面的感光元件上,每一個像素對應著 uv 平面上一個區域射到此像素對應的微透鏡上光強的和。圖源<sup>[1]</sup> 圖一:在成像平面前加一個微透鏡的陣列。微透鏡陣列的平面在這裡是 st 平面。在微透鏡陣列後面的感光元件上,每一個像素對應著 uv 平面上一個區域射到此像素對應的微透鏡上光強的和。圖源[1]
Read More...

MSAuto - 玩遊戲也要自動化

最近 Facebook messanger 推出了一系列小遊戲,大部分其實都是無腦遊戲,但扯到互相比分總是會變得很激烈….

其中有個遊戲很特別 EverWing,他是可以升級主角的射擊遊戲,也就是我可以偷練再去挑戰別人,然後分數就會很高~
起初我偷練到七等左右去挑戰 David 老師,沒想到他一下就超越我了,後來又浪費我好幾個小時才超越他…。後來跑去挑戰 ball 他們,費盡千辛萬苦打到 3204 分,結果後來才發現他們都在直接發 request 作弊…。

Read More...

安裝 Policyd 並設定外寄 Quota

最近遇到了有人使用 cmlab 的 email 亂寄垃圾信,導致很多外面 mail server 都把我們加入黑名單了…。也因此才想說要設定一個外寄上限,雖然 Postfix 本身已經有許多功能可以設定,但是就是沒辦法設定外寄的 Quota,所以就想說來試試 Policyd。

Policyd(cluebringer) 是一個可以設定一些規則給 mail server 的一個中間層(像是 middleware 那樣)。

Read More...

pbrt - 用多點光源模擬環境光

環境中總有一些背景光,像是太陽光、遠處大樓窗戶反光之類的,可以看成一整片不均勻分布的光源,有些地方亮;有些地方暗。
pbrt 中是用 important sampling 來渲染環境光,不過,其實也可以把環境光轉換成一堆點光源來計算。

Read More...