「有心人」之 Ruby 課程

記得在去年年初的時候,因為自己想找幾個一起打拼的伙伴而發起了一個「有心人」的活動,感謝大家的捧場以及社群朋友們的支持,活動順利結束。

然後,一直掛在嘴邊說要辦的「第二梯次」,總因為手邊的雜務而擱置。雖然後來斷斷續續的也有在中研院的自由軟體工作坊開一些 Ruby 的入門課或是在社群活動的分享,但就似乎變成有空才能開。

現在,我們成立了一家叫做五倍學院的公司,在更多朋友的幫忙下,我們有更多的時間及資源可以來做推廣 Ruby 這件事了,畢竟推廣 Ruby 本來也是當初成立這家公司的最主要目的。

所以,在與夥伴們討論後,我們決定要來持續的無料推廣 Ruby,每個月固定至少會有個一天是 Ruby 推廣課程,希望可以讓更多人可以認識這個有趣可愛的程式語言。

  • 上課地點:台北車站附近
  • 費用:0 元,惟上課學員需自備筆電,作業系統不限。

歡迎大家都可以開開心心的來認識、學習這個有趣的程式語言 :)

Code Swift with Vim

Swift 是今年 Apple 發表的程式語言,在發表的隔月就衝上了 TIOBE 排行榜的前 20 名。不過因為目前還在 Beta 中,所以除了改規格之外,開發工具的穩定性也還有待加強。

因為我已習慣用終端機 + Vim 工作,所以用 Vim 來練習寫 Swift 也是很正常的(誤)。不過其實真正的原因是之前 beta 版的 Xcode 太容易因為語法錯誤而當掉了。

五倍祝福,五倍的紅寶石

五倍祝福,五倍的紅寶石

這回,您不需要自己斷開鎖鏈或斷開魂結,也不用燒毀什麼東西了 :)

「五倍紅寶石」是我與幾位台灣 Ruby 社群的朋友共同成立的一家公司,希望可以透過藉由教育訓練、企業培訓等課程,將 Ruby 推廣給更多的企業、開發者。

網站:https://5xcampus.com

Rails Girls in Taipei

Rails Girls in Taipei

This is my lightning talk slide on RubyConf Taiwan 2014:

http://www.slideshare.net/aquarianboy/rails-girls-in-taipei

Hi, I’m Eddie, one of the organizers of Rails Girls Taipei. Last year, I went to RubyKaigi in Japan, and visited the Rails Girls event in Ruby Hiroba(広場). I found that the attendees were divided into “beginner” level and the other level which might be a little familiar with programming, and every coach take care 2 or 3 attendees, so they can coaching them one by one.

We thought it might be interesting if we can also have this event in Taiwan. So, Taian, Ryudo, and me, we three decided to host a Rails Girls event in Taiwan, just give it a try.

Taipei.rb 起步走

Taipei.rb 起步走

台北的 Ruby 社群跟相關活動其實不算少,除了一些個人或學校社團的活動外,人數較多的活動有例如每一、二個月舉辦一次的 Ruby Tuesday,會邀請特定的來賓來分享他們在工作上或個人研究上的專業主題;有年度大型活動 RubyConf Taiwan,會邀請國內外對 Ruby/Rails 有研究的高手來分享他們的心得,甚至連 Ruby 的老爸 Matz 也會來。除此之外,還有女性朋友專屬的 Rails Girls 以及每週進行的 Rails Girls 活動 (每週約二十人左右參加)。

id 與 instancetype

這星期我們再來看個有點冷門但我覺得還滿有趣的小東西:instancetype。如果我們去翻一下 NSObjectallocinit 的定義:

// 檔案:NSObject.h
@interface NSObject <NSObject> {
    Class isa  OBJC_ISA_AVAILABILITY;
}

- (id)init;
+ (id)new;
+ (id)alloc;

會發現 allocinit 的回傳型態都是 id。而在上一篇提到,在 Objective-C 裡 id 是一個可以指向任何物件的指針,所以如果這樣寫的話:

NSArray* myArray = [[NSArray alloc] init];

看起好像沒什麼問題,執行起來也正常,但這裡就有個小小的疑惑了.. 既然 allocinit 都是回傳 id 型別,Objective-C 是個動態語言,很多資訊是在執行階段(runtime)才會取得,那編譯器(compiler)又是怎麼知道它應該要是個 NSArray?