利用 Ruby 的 Lambda 做條件判斷

週末在思考一些 Ruby 特性可以應用的小技巧時,想到龍哥大概跟我講了三次以上的一個特性。

1
2
3
4
5
fn = ->(other) { other == 1 }
fn == 1
# => false
fn === 1
# => true

剛好最近工作的專案上有個問題,似乎挺適合用這個技巧。

我在 Ruby 埋了一個陷阱 - Signal 的應用

在 Ruby 之中,其實隱藏了很多非常實用的標準函式庫,而 Signal 就是其中一個。

我們在寫 Ruby 大多數時候都是 Ruby on Rails 框架的應用,但是你們有想過當我們在一些 Gem 運行的時候,使用 Ctrl + C 為什麼不會出現錯誤嗎?

例如我們常常用到的 irbpry 為什麼按下 Ctrl + C 的時候不是直接中斷,卻還能繼續運作?

探索 Ruby 的 each 方法(一)

原本是想討論 Enumerable 這個 Module 的機制跟運作原理,不過越寫越發現光是一篇文章很難講明白。

所以就一邊查資料跟 Ruby 原始碼,慢慢的把 Enumerable / Enumerator 這兩個讓 #each 運作起來的機制討論清楚。

在 Ruby 裡面我們已經很熟悉使用 #each 來對陣列相關的物件進行操作,不過在大部分的語言我們都需要透過迴圈的方式來取出陣列的元素,那麼 #each 這個方法到底是怎麼讓我們用這麼方便的機制來操作陣列的呢?

用 Ruby 來尋找區網中的 Airplay、Chromecast

從雲端開始熱門起來後,為了能能讓提供不同服務的伺服器能夠被自動的偵測,我們在許多雲端相關的工具都會看到 Service Discovery 這個名詞。

不過,除了雲端上的服務能夠透過這樣的機制互相「發現」對方,我們也可以在區網中用類似的方法找到「提供服務」的裝置。

這就要從 mDNS (Multicast DNS) 和 DNS-SD (DNS-based Service Discovery) 開始談起。

為什麼要學習 Bootstrap 呢?

最近在工作上或者跟有在做網站開發的朋友聊天,都剛好會討論到 Bootstrap 這個 CSS 框架。

在業界,我想大部分的公司也大多會以 Bootstrap 為基礎來開發網站,而這幾年網路上可以買到的版型也多以 Bootstrap 為主。

從這些跡象看起來,會使用 Bootstrap 很重要,中間的過程跟原因是什麼呢?

轉職工程師:尋找自己的價值

這系列的文章已經稍微討論過我自己在學習寫程式過程中的心態方法困難,最後就來討論最後一個我認為很重要的問題。

不論學了什麼,或者有多麽厲害的技術,作為一個工程師我們的價值在哪裡?

轉職工程師:為什麼馬上就遇到瓶頸?

前面已經討論了起步的心態起步的方法兩個問題,好不容易開始寫程式了,卻發現⋯⋯

照著教學做,但是沒有教學就完全不會

不管是去上更多的課,還是看更多的教學,怎麼樣都無法擺脫這個問題。這到底是什麼原因呢?

轉職工程師:要學什麼才好?

上一篇文章輸在起跑點已經稍微討論過心態上的問題,所以馬上就是要怎麼開始的問題。

大部分的人不論之前有沒有經驗,一定會冒出「要學什麼語言?」「某某語言很熱門是不是應該去學?」之類的問題。

很多時候,我認為這不是真正的問題。

轉職工程師:輸在起跑點

工作到現在差不多兩年多,因為公司業務的關係偶爾也會跟同事討論在學習當工程師或者寫程式上的經驗。所以打算寫一個系列的文章,跟大家分享一下我從學程式到成為一個工程師的過程,是怎麼樣的。

這是第一篇,我想用「輸在起跑點」來當開始。

怎麼選第一份工作?

從退伍到工作差不多過了兩年,這段時間有不少經驗我想已經足夠跟大家分享。這篇算是一個前導的文章,想來跟大家分享「第一份工作」的重要性。

重點是技能成長那段,討論薪水的地方太長可以跳過喔 XD