這邊是一個給有興趣入門資訊人的基礎學習指引,目標是從僅具備基本電腦常識,進階到可以獨力完成Web應用。
我不求你可以成為高手,所以課程中各重點我只要求你學到「能用即可」。資訊是工具,協助你解決問題,代替你處理瑣事,讓你擁有 「讓事情發生」 的能力。當你了解了這個生態系,知道問題該上哪去找答案,剩下的成長就是你自己的事了。
我的身份是一個引導者,告訴你有哪些關卡要過,通關條件是什麼,有哪些資源可以收集,幫你鑑定什麼是有用的,什麼你可以跳過。我不會開課教你,也不會幫你收集資料,要離開新手村,得要你自己動手。
期待資訊能為你所用,成為你的力量
- 一份看起來還不錯的線上履歷(或者該說是,自我介紹)
- 一份獨力完成的Web專案
- 開放原始碼,並選定一個License
- 提供線上服務
- 這個專案至少幫到一個人,那個人最好是你
為了達成這件事,你至少需要...
- 網站前端技能
- 三大頭
- HTML5 - 描述一個頁面上有哪些物件
- CSS - 描述一個物件該有的色彩與外型
- JavaScript - 描述頁面該怎麼跟使用者互動
- 基本框架與套件
- Bootstrap - 協助你快速產生一個還算漂亮的網頁
- jQuery - 協助你更簡單的使用JavaScript
- 三大頭
- 網站後端技能
- Ruby - 一個快速開發的語言,與電腦溝通的方式
- Rails - 幫你把伺服器所有的東西都寫好,方便你引用完成自己的網站
- 資料庫操作 - 一個方便你儲存資料的地方
- Linux操作技能 - 網站總是要有個地方放,在你誤入Windows陷阱而崩潰之前,先拉你來Linux
- 網路基本技能 - 為什麼網站無法顯示?在你急急忙忙打電話之前,先試試這個
- 使用協作工具
- git 方便你管理程式碼,寫壞了隨時可以回溯,在多人合作時不用打架
Q: 好多程式語言要學 QAQ
- 是的,不過不要被這個嚇到了。學習語言最困難的地方在理解對方的思路,也就是理解電腦的思路。一旦你了解一個語言,其他的很快都可以take起來。很多人學第一個語言要花一年,第二個三個月就好,第三個可能一邊Google一邊就開始寫了。現在我能使用的語言大概有十來種。
- 我學會的第一個語言就是copy別人的範例來改,也就這樣而已,多寫就上手了。
- 所有語言都一樣,用了才會,大量寫就對了。
- 別背單字(語法),尤其是可以查Google的時候
Q: 為什麼選擇RoR與Bootstrap?
- “快速開發”、“可獨力完成”、“薪水高且搶手”這三大優勢。他不是最好的語言,不過只有你的開發速度越快,累積的經驗越多,你才能越早走上正軌
- 一個好的開發者不會只用一種語言。語言與框架不過是工具,在不同的情境下使用不同的工具是一個熟練開發者的基本。
Q: 好多英文 QAQ
- 請大家做好心理準備的是,資訊毫無疑問是一個英文為主要溝通語言的世界。絕大多數資料你都會需要上英文網站去查詢,而中文在很多指令與程式中很容易給你帶來意料之外的麻煩。
- 幸好的是,科技類英文比起一般英文簡單好用很多,只要願意看,可以很快地累積成就感~
正式課程
- 六角學院線上課程 http://www.hexschool.com/courses
- 先 HTML/CSS + jQuery
- 然後 Bootstrap4 + JavaScript
- 五倍紅寶石實體課程 https://5xruby.tw/talks
- 五倍紅寶石線上課程 https://backerfounder.typeform.com/to/SgY7kv
免費資源
- Git入門 可能有點硬,實際上你們用到的應該沒這麼多
- VIM入門 雖然這應該放到linux基礎...有時git命令如commit或merge會跳進vim的介面讓你輸入註釋,如果你被trapped住了,請來看這邊
- 鳥哥的linux 也有點硬,我找找有沒有書...不過這是很棒的一個網站,我剛學的時候都上來查資料,所以有餘力都讀過會很有幫助
- 前端
- JavaScript小遊戲: 程式碼RPG 記得語言選JavaScript
- 註冊完加一下公會
- 第一個森林通關者有特殊禮物
- CSS小遊戲: 找到你的午餐 等CSS念到一半就可以來玩,很可愛的小遊戲,請以玩到通關為目標
- CSS小遊戲: FLEXBOX FROGGY
- CSS小遊戲: GRID GARDEN
- W3School線上課程 啥都有
- JavaScript線上教學
- 從網站開始刻120分鐘試閱
- Web前端开发 -使用 HTML, CSS, Javascript, jQuery,HTML5、CSS3 等建立网站ㄊ
- JavaScript小遊戲: 程式碼RPG 記得語言選JavaScript
書籍
- 為你自己學GIT
- 章節1-6
- 章節10 遠端共同協作
- 跟阿銘學Linux
- 章節1 學習之初
- 章節3 遠端登入Linux系統
- 章節4 Linux檔案與目錄管理
- 章節5 Linux使用者管理
- 章節6.1 查看磁碟或目錄的容量
- 章節7 VIM文字編輯器
- 章節8 檔案壓縮與打包
- 章節9 安裝RPM套件
- 章節10 shell基本認識
- 選修
- 章節2 安裝CentOS
- 章節12 Shell Script
- 章節13 Linux系統管理技巧
- 章節14 LAMP
- 章節16 MySQL操作
- 為你自己學 Ruby on Rails
- 章節 1-22
- 章節 27-32
- 前端書籍待補
有碰面就有激勵,所以來約個實體讀書會吧
- 週期:每週一次
- 當前週期的書:
- 每週挑戰:
最主要的任務是:跟大家分享一下這週你讀了些什麼,做了些什麼,哪些特別引起你的注意(或踩了什麼雷),以及接下來預定要讀些什麼
如果當日有事無法現場到,也可以先把想分享的內容打好貼到這邊
要特別留意的是:請平常就找時間看書,讀書會不是給你現場抱佛腳用的。當然分享完可以現場念沒關係,但別忘了唸書的時間以及實作範例的時間都不是短短的讀書會時間可以讓你補完的
- Lv.0 準備好你的裝備
- Lv.1 這裡有一些稻草人...
- Lv.2 前端初體驗
- Lv.2.5 練習一下Ruby、指令行(CLI)、字串與Hash
- 讀書會 讀書會主題:簡易留言板
- Lv.3 來個老式的留言板吧(沒有資料庫)
- Lv.4 資料倉庫初探(Database)與Session
- Lv.5 第一個全端挑戰
前端路線
- 以純HTML完成第一個網頁 HelloWorld
- 暨第一個作業,加入CSS來設定色彩、背景、框線與滿版
- 使用BootStrap把上面的改寫成更漂亮的網頁
- 使用jQuery,點擊按鈕後會問出生日,並計算年齡後顯示於網頁
後端路線
- 完成第一個Ruby程式,在命令行顯示 HelloWorld
- 同上,改成網站顯示
- 寫一個應用,接收網頁輸入的出生日,回應年齡
- 同上,會記錄登入者的出生日,下次對方回來時如果未滿18,會跳出警告並導向到迪士尼(?
全端
- 購物車
- 金流
- 需求訪談
- 多人協作
總和測試: 挑一個黑客松來玩?