code.club

 找回密碼
 立即註冊
搜索
查看: 1633|回復: 0

12 個星期打造 12 個網頁 APP

[複製鏈接]
發表於 2015-1-28 00:36:44 | 顯示全部樓層 |閱讀模式
http://www.inside.com.tw/2015/01/27/how-i-finally-learned-to-build-stuff-with-rails

Mackenzie Child 是一名設計師、工程師、也是一名 Youtuber 兼 Blogger,白天在 Precision Nutrition 擔任前端工程師,晚上則一邊自修程設計、一邊螢幕錄影(Screencast),把學到的東西用 Youtube 分享給大家。

同時 Mackenzie 也會在他的部落格 mackenziechild.me 上紀錄一些想法、設計作品、工作點滴。Mackenzie 在 Medium、Instagram、Twitter、Dribbble、Github 等平台上都十分活躍。

12-in-12-chanllenge-child

身為一名前端工程師,Mackenzie 認為世界上需要更多的「獨角獸(Unicorn)」,Mackenzie 口中所謂的「獨角獸」,是程式開發界傳說中的生物,不但精通 UI / UX 設計,還能同時進行前端和後端開發的厲害角色。「獨角獸」稀有的原因不難明白,畢竟要能成為同時精通前端設計和後端開發的工程師並不簡單,就像找一名文科理科都爆強的學生不容易一樣。

想成為獨角獸,左腦右腦都要可以靈活使用,要擁有敏銳的設計天份,還要有厲害的邏輯思維。Mackenzie 相信,如果進行後台開發的工程師能有一點設計美感,進行前端設計的設計師能會一點程式開發,如果世界上有更多這樣的「獨角獸」,那生活將會更美好1!

    I believe the world could be a better place if more designers learned how to code and more developers learned how to design. –– Mackenzie Child

於是去年底,Mackenzie Child 在部落格上分享了一個特別的經歷,專精前端設計的他,決定開始學習後端開發的 Ruby on Rails,並且完成一項艱鉅的挑戰:連續 12 個星期,每個星期用 Rails 做出一個不同的網頁應用程式。Mackenzie 將這項挑戰稱作「12 in 12 Challenge」。

在這裡將 Mackenzie Child 完成「12 in 12 Challenge」所記錄下的文章 「How I finally learned to build stuff with Rails」 分享給大家,本文並非逐字翻譯,有興趣請閱讀原文。
How I finally learned to build stuff with Rails
Hint: I built 12 different web apps in 12 weeks

12-in-12-chanllenge0

幾個月前我決定開始學 Rails,在這之前我也曾經「玩過」 Rails ,只是總是遇到瓶頸就半途而廢,或是找到更「有趣」的事情而無疾而終。

你知道,我是一名圖像設計師兼前端開發人員,16 歲時開始進行圖像設計(Graphic Design),到了 20 歲時主要致力於網頁前端設計,在這段時間裡,我一直有源源不絕的點子想完成,卻沒有多餘的錢聘請專業的網頁開發者(Web Developer),也沒有自己學著開發製作。

一直以來我都很想將一個點子,從頭到尾、從前端到後端,全都自己開發完成,成為開發界的「獨角獸」–– 一個精通 UI / UX 設計,還能同時進行前端和後端開發的厲害角色。

unicorn

所以啦,我決定開始好好學習 Rails!

之前我學 Rails 都是跟著線上的教學,但一牽扯到教學裡沒提到的部分就完蛋了,當然更多時候,光是線上教學的內容我就搞不定了。看教學固然重要,但是要真正的瞭解 Rails,最重要的是「動手打造」!於是我決定挑戰我自已:

挑戰自己用 Rails 連續 12 個星期,每個星期製作一個截然不同的網頁應用程式,我將這項挑戰稱作:「12 in 12 Challenge」。

不只如此,我讀了一篇文章在講「教別人會讓自己學得更好(You learn better by teaching)」的道理,相信大家都曾聽過這個說法,因為在教別人之前,必須將所學的東西吸收、消化,再整理出來,要解釋得讓別人聽得懂,那又是另一個境界的理解!所以除了動手做 Web 應用程式以外,我還將製作的過程錄成了教學影片,也在部落格裡將步驟一步步記錄下來。

我得非常誠實的告訴你們,這項挑戰...... 還真他x的難啊!

對我而言這麼困難的主要原因,也是因為在進行這項挑戰的過程中,我還得同時兼顧白天的全職工作。這 12 個星期裡,好幾次我都想放棄、想辭職,也氣自己傻!為什麼不選個「4 in 4」就好,偏偏選個「12 in 12」。

每個星期我都在掙扎中度過:動手寫程式、遇上困難、出了找不到原因的 Bug,接著花上好幾個小時 Google 如何解決問題(要能夠打出對的關鍵字去 Google 出答案,這又是另一門非常高深的學問了...),通常我能在 Stack overflow 上找到我要的答案而順利解決,有時候則無意間在某某不知名開發者的部落格裡抓到一點頭緒,一知半解、硬著頭皮繼續寫下去。

但就在我死撐、硬撐過每個星期的同時,奇妙的事情發生了。

這些挑戰變得一個星期比一個星期簡單!大概在第五個星期時,我對我打造的 應用程式基礎架構已經很有自信,開始接著理解 MVC 模型(Model/View/Controller)概念!寫程式時 Debug 速度變得越來越快,對於未知錯誤的恐懼也慢慢消失了。

在完成這項挑戰後,我可以很自信地告訴你們,每個迸到我腦中的點子我都有把握能寫出 MVP!更重要的是,任何沒寫過的應用程式,我現在都有自信,我絕對能把它們搞懂,想辦法把它們生出來。

不過別誤會我的意思,我不是因此變成了「高高手」,在開發 Rails 這個領域裡,這項挑戰只是一個很棒的「開始」,我還有太多需要學習、太多不同的主題需要嘗試,這些都是我未來需要做足功課、計劃周詳的。

廢話不多說,就來看看我 12 個星期裡完成的 12 個應用程式吧!以下是我在「12 in 12 Challenge」裡完成的作品跟教學影片,所有的程式碼都放在 Github 上免費提供給你們。

學習任何程式語言都是一個障礙重重的挑戰,我希望我製作的這些教學步驟、影片,能夠在 Rails 新手們學習的過程中提供一點幫助。

回復

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 立即註冊

本版積分規則

小黑屋|手機版|Archiver|code.club  

GMT+8, 2019-3-21 13:22 , Processed in 0.089546 second(s), 20 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表