Month: December 2017

  • 2017 個人年度回顧

    2017 個人年度回顧

    我的老天一年就這樣過去了啊啊啊啊啊啊啊啊啊……人生真的是個無底洞…… 量化統計 1. GitHub contributions: 705 所以我說,四月前在耍廢嗎…..。四月後開始 PikoRT 跟 CPython 各種 PR,外加 twstock。十月過後開始是零零散散的 IOTA。 2. 出國次數: 5 布魯塞爾、韓國、日本、日本、日本。 3. 部落格發文次數: 98 (含本篇) 4. 瀏覽量最多的文章: 21746 是開發人員的面試指南 – A developer’s guide to interviewing,一篇翻譯文章。 5. 購買的域名數量: 15 個 應該是吧……15個。 6. Google 紀錄的行程: 25 次 Google 真是可怕。 流水帳 這次就只用我僅存的腦容量隨意紀錄一下了。 一月 第一個工作天失去工作。 二月 FOSDEM 三月 KKBOX 四月 台北出差。CPython。PikoRT。 五月…

  • 雜談 – 2017 年底

    雜談 – 2017 年底

    12月月底,手機流量用光。被迫卡在堪用的網速上。在高鐵上想打開部落格打字都很困難。 學校的校車 13:00 從光復校區發車,表定時間 13:18 抵達高鐵新竹站,我購買的車票為 13:22 發車的南下車班。 事前在推演這個路線的時候,就有考慮到緩衝時間不足,只有四分鐘而已。可以說是走在鋼索上面。 不知道從何開始,對於交通工具宣稱的「能達到多快的速度」不再有感。因為旅行的瓶頸根本不是在這上面。 或許是從小六的時候,自己排全家到日本的行程開始,體會到這件事情吧。交通工具的時間,不能只看表定時間,還要將抵達該交通工具,以及離開該交通工具到目標地的時間也一併算入。例如搭飛機,表定九點自桃園機場起飛一點抵達名古屋的飛機,從新竹出發就要在早上六點半搭車,提前兩小時到機場後跑入關流程,九點起飛一點降落後,開始跑出關流程領行李,一點半到兩點間再到車站搭火車最後抵達名古屋,時間約略為兩點半到三點。也就是說從自身的角度,從新竹到名古屋的時間總共是八個小時 (算上時差七小時),還不包括提前起床準備的一小時。也就是說,飛機本身只佔不到二分之一的時間,其餘的各種時間根本沒有被算入。 所以外出旅行的時候,我實在不怎麼喜歡塞入很多景點,然後需要各種轉乘的排程,因為很多的時間都會被卡在交通上面。 所以,今天搭車的時候,就被校車卡住了 – 正確來說是被交通塞住。車子到高鐵站的時間是 13:21,就已經開始響起警示音,入閘口時間是 13:22,先刷閘口出現此票失效,走人工入閘,等我跑了三階層到南下月台的時候,車子就在我眼前離開了……. 這應該是我第一次被高鐵放生的經驗。雖然我根本上的已經預想過這樣的情況了。但還是被放生了…… 高鐵票如果被放生的話可以改搭之後班次,商務票的話可以乘坐任何車廂的空位,所以可以先到 6 號車廂去詢問服務人員有沒有位子,如果有的話就可以乘坐商務車廂。當然,有人的話就要讓腎了。 今天考過大型重型機車的路考了。不過相對於日本這個謹慎的二輪駕駛路考,台灣的各種路考 (機車、小客車、大重) 根本就是在送駕照,整個養成過程根本對於駕駛人的駕駛能力以及駕駛道德沒有半點幫助。 台灣的道路駕駛安全要提升的話,除了交通標線要更新外,用路人對於規則的遵守絕對是一個很大的進步空間。行政機關如果要試圖改善的話,大可在某些地方實驗性的施行,劃定兩個路口的空間針對道路交通違規進行強力取締,同時針對違規項目開罰、再教育。 我終於看過滿片雪地了。

  • Building LEDE / OpenWrt for TP-Link C2600 with ftrace enable

    Building LEDE / OpenWrt for TP-Link C2600 with ftrace enable

    Summary: Using Linux kernel ftrace to trace down kernel problems is essential in different ways, this post is to summarize how to build a LEDE / OpenWrt image for C2600 with ftrace enable (CONFIG_FUNCTION_TRACER, CONFIG_DYNAMIC_FTRACE, CONFIG_FUNCTION_GRAPH_TRACER, CONFIG_FUNCTION_PROFILER). 0x1 Prepare LEDE source code Make sure you get LEDE source code from GitHub mirror or their git. You can take a…

  • 雜感

    雜感

    上禮拜搭機場接送的時候,是一個女司機。整趟都有保持安全車距,極為安心。下車前我記得她的手機畫面跳出緣圈跟別人聊天的畫面。作息不定的司機們,是如何談天說愛的呢? 前天搭計程車回宿舍的時候,跳錶是 130 元,我給了司機 150 元。因為最後一個 30 秒的紅燈他沒有違規闖越紅燈 (雖然越過停止線一點)。我以前就在想,能力可達的話,如果計程車司機整趟都沒有出現交通違規,要給他們雙倍的車資。 不過到底該上車就講,還是下車才告訴他們呢? 今天幫我配送椅子的物流員,跟他小聊了一下,每天工作很多小時 (12+),早上六點起床,回到家大概六點、八點、十點都有。配送最麻煩的是送到很多奇怪的地址,例如說新竹的偏僻鄉下之類的。忘記問他有沒有加班費了,趕著出門。 可是來到新竹,每次物流送貨的感覺都很差。每次都被用「另約時間」這個理由搪塞,我的手機跟簡訊啥都沒接到就被改單。很不爽。可是今天要出門的時候剛好看到物流員在做一個撥打電話的動作,我的手機竟然沒有響起來。究竟是我的手機壞掉呢,還是有什麼神秘外力在作用? 晚上在新竹火車站的時候,有個衣衫不整的人在座椅區掃街,手中拿著應該是低收入戶證或是殘障手冊 (應該是低收入戶證,不是手冊的樣子……) 在討飯。走到我們這邊的時候,他開口說可以給我錢吃飯嗎?我問他幫你買吃的要嗎?我們就這樣走到旁邊的 7-11,讓他挑了一個便當跟飲料,結帳後要微波加熱啊,我記得最後店員依稀跟我說:「他每天都會來討飯….」,後面聽不清處了。這句話聽到的時候,我其實不知道要怎麼反應,笑笑的對著店員接過便當,塞到那個人的手中。如果他能夠正常的工作,有足夠的金錢的話,還需要每天來討飯嗎? 前幾個禮拜在交大的書店看到一本有關育兒的書,裡面是說,現代的父母因為想像中的恐懼,例如說害怕孩子被綁票、無差別殺掉、誘拐等理由,所以無時無刻的要看著孩子,美國的法律也因為類似的理由,要求六歲 (還是十二歲?) 的孩子不能單獨在家,還有警察看到孩子單獨在路上行走的話,會上前問話並且帶回她家,其家人說不定還會被處罰款 (因為沒有看著孩子照顧她)。書的作者的立場是支持小孩獨立的成長,其成長過程中父母不應該緊迫釘人並且無時無刻的細心呵護他們,尤其在現代,其實孩童被綁票的概率早以下降許多,犯罪率等也下降許多。根本上確實會擔心遇到那些很糟的情況,但是為了小孩的成長,父母應該還是要讓他們能夠自己獨立的去做事情。 我經常遇到前面提到的人的時候,都會帶他們去吃東西。通常他們都要錢,但是如果能取得食物的店就在旁邊的話,我會詢問他們要不要吃東西,我可以直接買給他們,但是不會給錢。類似於前面的概念,或許真的有人是來騙吃騙喝的 (他的嘴看起來有吃檳榔,但我不覺得他是來騙吃騙喝的就是),但是更多的是真正有需要的人,如果我能夠幫助他們的話,我會去幫助他們。 但是到頭來,在更高的一個層次上,我還是幫助不到他們什麼東西。整個新竹火車站附近,今晚繞了一圈就看到 4、5 個遊民,或是在地上擺放碗的人。一個我可以負擔,但是兩個、三個、一整群呢?我一個人還是沒辦法解決掉這樣的問題,他明天終究還是要來討飯。 他在我們結帳的時候,站在我後面,結完帳之後我先走出來,他給了我一個大大的鞠躬。我沒什麼能力,只能幫你到這邊了。 新的椅子真的很舒服,上一張椅子腰會痛還會麻,這張完全不會。

  • IOTA 輕量錢包、完整錢包與 IOTA Node 的關係

    IOTA 輕量錢包、完整錢包與 IOTA Node 的關係

    這是一個困擾 IOTA 新手的問題:究竟 Light wallet、Full wallet、Full node / headless node 有什麼差別?身為一個使用者/投資者,我應該要怎麼選擇?他們的優缺點各是什麼?要怎麼樣選擇才能保障我的 IOTA 資產? 本文將會介紹這三個概念,寄望您讀完後可以理解三者的差別,選擇自身合適的方案。 0x1 名詞定義 IRI:全稱 IOTA Reference Implementation,以 Java 撰寫,為目前唯一可完整運行 Protocol 的 IOTA Node,基本上架設節點的話會使用 IRI 來用。作為 Reference Implementation,其餘的 Implementation 應該遵照 IRI 的行為來實做。 Full Node / Headless Node:即運行一個完整節點的 Server,請注意,Full node / Headless Node 不一定是 IRI,只要是可以完整運行 IOTA 實做的都能夠稱作 Full node,只不過目前沒有其他的選項就是。 Light wallet:沒有運行 Full node 的錢包。 Full…

  • IOTA 新手必須了解的 5 個基本知識

    IOTA 新手必須了解的 5 個基本知識

    最近很夯的 IOTA,跟以往的區塊鏈 (Blockchain) 有些許的不同,某些與安全相關的部分也有很大的不同。這邊整理出 5 個你一定要知道的 IOTA 必備基礎知識。 0x1 絕對不要在網頁上產生密碼 (Seed) 即便網頁上宣稱「所有的動作都在本地運行,絕對不會洩漏密碼」、「本網頁為 Opensource」、「經過 1000 萬人使用測試」等,也絕對不要相信他。 請注意這邊的用詞:絕。對。不。要。NEVER。在網頁上產生密碼。 正確的做法是離線產生密碼: 在 Linux 上產生 IOTA 密碼: cat /dev/urandom |tr -dc A-Z9|head -c${1:-81} 在 Mac 上產生 IOTA 密碼: 打開終端機然後輸入,或是複製貼上下面的指令然後按下 Enter: cat /dev/urandom |LC_ALL=C tr -dc ‘A-Z9’ | fold -w 81 | head -n 1 Windows 如果你有裝上 Ubuntu,就可以在 Ubuntu 裡面使用第一個方法產生。如果沒有的話,請拿出 6…

  • IOTA Snapshot 運作方式解說

    IOTA Snapshot 運作方式解說

    IOTA Snapshot (快照) 是一種將整體 Tangle 壓縮為地址與餘額 Pair 的一種節省 Tangle 使用空間的技術。當整體 Tangle 被 Snapshot 後,Snapshot 前的交易紀錄將不會被保存下來,而整個 Tangle 會基於這個 Snapshot 增量處理後續出現的交易。 Snapshot 運作方式解說 我們在這邊想像一個小的 Tangle 網路,來模擬 Snapshot 的狀況。 假設 Tangle 中共有 5 個地址,分別持有下列數量的 IOTA: AABCBB…..: 100 BHCEGM…: 10 CDBBCG….: 0 QZMXLO…: 50 YVMA9O…: 1000000000 在這個 Tangle 中,曾經進行過這些交易,為了簡化模型,Bundle 不會把剩餘的 IOTA 移出送出的地址 (容我後面講解這個部份): AABCBB -> BHCEGM: 給予 50 IOTA…