owned this note changed 4 years ago
Linked with GitHub

我沒有網頁開發基礎,最後卻完成一份專案? - 羅國平 / Misawai

我要為童軍的一場全國性年度會議開發一套電子表決系統,但在這之前我沒有任何專案開發經驗。這場演講中,我將講述我如何以立法院的電子表決系統為靈感,歷經多次調整,最終使用 Python 及 Flask 框架在網頁上實現之。並分享我是如何在沒有網頁開發基礎的情況下,自己查找資料、學習、找尋資源,最後完成一個專案的初步開發並精進的故事。

目標聽眾

  1. 有基礎程式設計概念,但是零網頁開發基礎,不知從何下手的初學者
  2. 對於「行政流程、書面作業、工作流程(Workflow)作業電子化」有興趣者
  3. 對 Python 的應用、使用 Python 進行網頁開發、Flask 框架有興趣者
  4. 對公民參與、議事、會議、表決有興趣者
  5. 對初學者的開發歷程有興趣者
  6. 對童軍有興趣者

先備知識

歡迎大家來到SITCON 2021 ヽ(✿゚▽゚)ノ
共筆入口:https://hackmd.io/@SITCON/2021
手機版請點選上方 按鈕展開議程列表。

請從這裡開始

前情提要

童軍活動全國羅浮群長年會有一個會議表決(請把票卡高舉過頭,人工計票)
想到立法院表決時有電子投票系統
→ 不然自己做一個

一開始的想法

網頁程式: 人與機器的互動
人在網頁上的操作傳給後端,讓後端資料庫有些改變

github.io + Google App Script + google試算表

實作出了問題

CORS policy
跨網域傳遞資料有資安考量

決定手刻,必須要有一台伺服器

沒地方放主機→找主機代管→學校資訊中心找資源→微軟Azure學生專案

主機搞定,決定前後端

學校教過 pyhton,知道 python 可以寫 web應用程式
看 azure 官方文件發現可以用 python,系上課程曾說過可以用 python 寫網站

跟者Azure教學網頁做發現可以 work →基本架構完成,只要加功能
在圖書館發現書,跟著書完成開發
→ Jinja + Flask + SQL

截圖DEMO

新手碰到的問題

  • 不知道如何入門
  • 釐清動機,以什麼樣的方法學習
  • 如何選擇
    網路太多資源、框架、資料庫可選,要選哪個 →有好資源就先用,之後再調沒關係
  • 怎麼問問題
    1. 先說明你已經做了哪些努力,但還是有不清楚的地方
    2. 多做概念詢問,不是把社群當作debug機器
    3. 問問題保持禮貌

好資源哪裡找

  • SITCON 2021
  • 研討會(COSCUP, etc.) 起初可能聽不懂先感覺氛圍
  • Stack Overflow
  • 學校社群、論壇、開放式課程
Select a repo