最新消息

關於五倍還有更多你可以發掘的,都在這邊說給你知!

Sep 21 2019

什麼是 DSL? DSL 的存在意義是什麼? DSL 為 Domain Specific Language 的縮寫,中文譯為「特定領域語言」。而 DSL 的開發通常是為了迎合某些特殊的需求,例如針對系統、平台、程式工具、軟體問題、商業邏輯等等領域,當人們發現現有的程式語言並沒有辦法好好地嵌合使用需求,DSL 就有其存在的價值。目前為人所知的 DSL 包括 CSS 以及 SQL,而這種易於人類閱讀的 DSL 也能夠讓程式設計師乃至於一般使用者都能享受 DSL 帶來的好處,甚至不懂程式設計的...

Sep 7 2019

在 COSCUP 2019 講完用 WebRTC 建立半分散式網路,想說來把投影片整理成一篇文章來紀錄一下這段時間拿 WebRTC 嘗試形成網路的一些實驗結果 WebRTC 是什麼? 如果不知道什麼是 WebRTC,可以參考去年寫的文章:https://5xruby.tw/posts/webrtc/ 簡單來說 WebRTC 可以讓瀏覽器直接跟瀏覽器連線,但是連線的建立很麻煩,開發者要自己想辦法讓兩個瀏覽器交換 handshake 資訊 (offer, answer, ice) Multiplayer...

Aug 31 2019

React Hooks 在 React 16.8 推出之後 (雖然已經有 lag 瞬間就已經來到 React 16.9.0 惹),讓工程師們又多出幾行 code 的時間可以滿足客戶的磨練需求啦! 這次就利用 React Hoock 來串接一個聊天室應用,看看 React Hooks 如何幫助簡化並加速整個開發過程。除了 React 自身提供的 useState 和 useEffect hook 之外,還會用到幾個開源的 React hooks 來幫忙提昇開發效率。 預計實做功能 群...

Aug 24 2019

還記得一開始自學程式語言時,大家一定或多或少都聽過一個名詞 物件導向。然後身為程式新手和非程式相關科系畢業的你也許會開始 Google 它到底是什麼意思,然後你會在 維基百科 上查到諸如此類的解釋: 物件導向程式設計(英語:Object-oriented programming,縮寫:OOP)是種具有物件概念的程式編程典範,同時也是一種程式開發的抽象方針。它可能包含資料、屬性、程式碼與方法。物件則指的是類別的實體。它將物件作為程式的基本單元,將程式和資料封裝其中,以提高軟體的重用性、靈...

Aug 17 2019

今年 RubyConf Taiwan 嘗試辦了 After Hack 這個活動,也因此有機會可以跟 Ruby 語言的 Commiter 聊一些有趣的問題。 當天我的預定是把活動這幾天寫的 Gem 認真的補完測試,不過沒想到還剩下一個多小時就做完了,那就順便來思考一下 Tamashii 專案能怎樣去改進,在今年的演講中大家應該都對 Fiber 有一個認識,而這個也許是一個不錯的選項。 所以就馬上去看了一下講者(Samuel)的 Async 這個 Gem 做了些什麼事情,因為剛講完關於 Enumerator...

Aug 3 2019

圖片作者:snoku, 圖片來源連結 想要一鍵部署!?首先要一鍵產生 Docker Image!要產生 Docker Image 需要有個 Dockerfile,通常在寫 Dockerfile 時從選擇 base 的 Image 到 Container 啟動後要執行的指令都需要一行一行設定。不僅如此,如果想要優化 Docker Image 的大小,還需要使用許多的技巧…突然覺得,要做這些事也太多!有沒有現成的 gem 可以幫我們做到這些事呢? 有的!就是五倍的同事蒼時弦也開發的 bankai...

Aug 2 2019

建構服務,除了服務本身要可以為使用者帶來價值、快速因應市場的需要,服務的可靠性也是一個很重要的變數。 不穩定的服務,常常會逼的使用者失去耐心,在一次又一次的服務中斷、資料遺失後,使用者很快會漸漸對你所維護的服務失去信任,出走去尋找其他更穩定又可以符合他需求的選擇。 作為接案公司,大多數的案子都不是從頭開始、許多都是幾經轉手到我們手上。除了軟體服務開發外,服務的維運也是我們的日常工作之一。 一般來說,當情況允許時,我們會傾向導入 Error Tracking 以及各式的 Performance...

Jul 27 2019

一個網站核心除了網頁架構和 SEO 策略規劃外,最重要就是為網站埋設追蹤碼,埋設追蹤碼更可以知道網站的策略方向以及統計分析進入網站的流量,更精準的瞭解網站受眾輪廓樣貌,進而優化後續的頁面,本文提供給你目前必備 GA 和 FB 埋設追蹤碼方式,輕鬆 6 步驟讓你完成埋設兩大追蹤碼動作!並提供如何確認埋設追蹤碼是否有成功,讓你一手掌握網站流量分析:) Google Analytics(GA)分析是什麼? Google Analytics(GA)是 Google 提供的免費線上工具,從 GA...

Jul 20 2019

在開發聊天機器人的過程中,可以透過 ngrok 這個服務來快速測試我們在開發中的本地程式碼,本篇文章將介紹如何用 nginx + ssh reverse tunnel 來自己架設一個窮人版的偽 ngrok,並且研究一下其中的原理。 ngrok 服務簡介 (圖片來源: ngrok 官網) 簡單的來說,ngrok 就是可以讓內網伺服器與外界溝通的一個服務。 一般來說我們本地開發時,會使用開瀏覽器連到 http://localhost 或 http://127.0.0.1 的本地端伺服...

Jul 13 2019

大家好,我是卡米哥。今天要教大家怎麼用 Google Sheets 存放資料並且在 rails 當中使用。 在本次的教學中,我們主要的需求是想要直接以 Google Sheets 作為後台,來取代 rails 原本的資料庫以及需要自己寫的管理介面。 使用 Google Sheets 作為後台,比起自己做的管理介面,有許多好處,像是可以省下製作後台的時間,編輯速度快,支援共同編輯,支援版本管理等。 注意:在本次的教學中我們不保證資料的安全性。 建立 Google Sheet 並且發布...

Jul 6 2019

在 Ruby/Rails 開發日常中總少不了對集合物件(例如 hash 與 array)做 iteration(迭代)操作,常見的包含 select, count, filter …等。例如當我們想從一個 array 中有條件式選取一些元素,可能會這樣寫: arr = [1, 2, 3] arr.map do |num| num * 2 end #=> [2, 4, 6] Ruby 的常態是使用 Internal Iterator 對每個元素做指定的處理。既然有 internal

Jun 29 2019

PM ( Project Manager ) 總是被大大小小繁雜的事情追著跑,如果你的事情總是覺得多到不行、做都做不完,可能得重新審視一下自己的時間規劃囉! 最近看了「私、定時で帰ります」這部日劇,覺得劇情中提到的工作方式特別受用啊!尤其是女主角高效率的工作時間分配和管理,和我真的不謀而合呢(?) 這邊就來分享兩個屬於 PM 管理專案及釐清思緒的部分吧! To Do リストを作成する! 製作 Todo List! 在影片中,吉高由里子所飾演的女主角,總是準時下班的最主要原因,就是...

Jun 22 2019

reCAPTCHA 是 Google 在 2009年收購一家叫 CAPTCHA 的公司,其服務的目的是為了辨認機器人與防止廣告垃圾訊息氾濫。 reCAPTCHA 問題的所需的文字圖片,首先會由 reCAPTCHA 計畫網站利用 Javascript API 取得,在終端使用者回答問題後,伺服器再連回 reCAPTCHA 計畫的主機驗證使用者的輸入是否正確 - wiki。 reCAPTCHA 大致分為 3 種: v2 Checkbox:「我不是機器人」核取方塊,網站上最常看到的一...

Jun 15 2019

在這裡淺談幾項 PM 路途中會用上的技能,希望能帶給要邁向 PM 之路的你一點共鳴。 專案管理聽起來是個很陌生的名詞,但其實生活上很容易遇到, 人生也可以譬喻成一個放大版的專案管理, 首先列出目標優先順序,訂定每一個項目的細節,再來分配資源,一個一個完成目標,遇到困難時要解決掉,解決不掉的問題要去問有經驗的人,這樣一看,還真有 87% 相似。 此篇會提到下述幾個軟技能: 筆記的重要性 釐清眼前的一片霧霾,把思緒整理清楚,列出要記下的重點。 隨手筆記 沒有整理過的筆記,時間...

Jun 1 2019

大家好,一年(其實是 16 個月)一度的 RubyConf Taiwan 2019 即將在兩個月後的 7.26 - 27 日於張榮發國際會議中心召開,作為活動的主辦人與議程委員,在此想跟大家介紹一下本次大會的主題。 Keynote: 今年一共有 4 場 Keynote,講者分別是 Matz (@yukihiro_matz):未定 Aaron Patterson (@tenderlove):The View Is Clear from Here 繼 2015 再次來台的 @tenderlove...