Upgrade to Pro — share decks privately, control downloads, hide ads and more …

SITCON Opening - 我把源碼都放在那了

tkirby
July 14, 2014

SITCON Opening - 我把源碼都放在那了

introduction to g0v - open source, open data and decentralization

tkirby

July 14, 2014
Tweet

More Decks by tkirby

Other Decks in Technology

Transcript

  1. Kirby Wu / 吳泰輝
    本著作由 g0v.tw 製作,以創⽤用 CC 姓名標⽰示-相同⽅方式分享 3.0 台灣 授權條款釋出

    View Slide

  2. View Slide

  3. View Slide

  4. View Slide

  5. http://comic.sfacg.com/HTML/Naruto/
    http://comic.sfacg.com/Utility/4/xxx.js
    comicCounterID = 4;
    give
    link
    parse

    ID
    parse

    list
    get
    js url
    get
    imgs

    View Slide

  6. var comicName = “怠蔣敹!";
    var nextVolume=“/HTML/Naruto/476/";
    var preVolume=“/HTML/Naruto/474/";
    var picCount = 17;
    var picAy = new Array();
    var hosts = ["http://hotpic.sfacg.com","http://hotpic.sfacg.
    “http://ltpic.sfacg.com"];
    picAy[0] = “/Pic/OnlineComic1/Naruto/475/001_1924.png";
    picAy[1] = “/Pic/OnlineComic1/Naruto/475/002_1209.png";
    picAy[2] = “/Pic/OnlineComic1/Naruto/475/003_17512.png";
    picAy[3] = “/Pic/OnlineComic1/Naruto/475/004_13346.png";
    picAy[4] = “/Pic/OnlineComic1/Naruto/475/005_6797.png";
    picAy[5] = “/Pic/OnlineComic1/Naruto/475/006_16563.png";
    picAy[6] = “/Pic/OnlineComic1/Naruto/475/007_4992.png";
    picAy[7] = “/Pic/OnlineComic1/Naruto/475/008_5900.png";
    picAy[8] = “/Pic/OnlineComic1/Naruto/475/009_30082.png";
    picAy[9] = “/Pic/OnlineComic1/Naruto/475/010_18438.png";
    picAy[10] = “/Pic/OnlineComic1/Naruto/475/011_19255.png";
    picAy[11] = “/Pic/OnlineComic1/Naruto/475/012_17436.png";
    picAy[12] = “/Pic/OnlineComic1/Naruto/475/013_14834.png";
    picAy[13] = “/Pic/OnlineComic1/Naruto/475/014_16148.png";
    . . . . . . (後略)

    View Slide

  7. View Slide

  8. View Slide

  9. http://www.ptt.cc/bbs/Gossiping/index.html
    index4534.html

    View Slide

  10. View Slide

  11. cheerio
    jQuery subset in server side
    cheerio = require(“cheerio”)
    $ = cheerio.load(YourHtmlSnippet);
    !
    result = $(“.r-ent .hl”).text()
    npm install cheerio

    View Slide

  12. request + cheerio
    result = {}, idx = 1;
    function download() {
    request(ptt(idx), function(e,r,b) {
    if(e) return;
    $ = cheerio.load(b);
    result[idx] = $(“.r-ent .hl”).text();
    idx++;
    setTimeout(download, 0);
    });
    }

    View Slide

  13. http://zbryikt.github.io/visualize/ptt-user/

    View Slide

  14. View Slide

  15. View Slide

  16. View Slide

  17. View Slide

  18. http://campaign-finance.g0v.ctiml.tw/

    View Slide

  19. @g0v hackath8n

    View Slide

  20. View Slide

  21. View Slide

  22. 版本控制系統

    View Slide

  23. 版本控制無所不在

    View Slide

  24. 台灣法律修正紀錄

    View Slide

  25. View Slide

  26. View Slide

  27. 法律即源碼
    保險業之組織,以股份有限公司或合作社為限。

    ⾮非保險業不得兼營保險或類似保險之業務。
    def is保險業(self):

    self.is股份有限公司() or x.is合作社()

    !
    def testBusiness(self):

    if !self.is保險業() and “保險” in self.Business():

    raise ⺠民事保險法.Violation136

    View Slide

  28. View Slide

  29. 遠端協作

    View Slide

  30. View Slide

  31. 線上共筆

    View Slide

  32. View Slide

  33. View Slide

  34. 聊天室
    社群網站
    版本控制
    線上共筆
    即時討論
    訊息更新
    設計規劃
    共同開發

    View Slide

  35. 科技改變政治
    愛沙尼亞國會網路選舉, 2007

    View Slide

  36. 程式治國
    •法律 = 程式

    •⽴立委 = Committer

    •⼈人⺠民送 Pull Request

    View Slide

  37. 傳統媒體式微

    View Slide

  38. View Slide

  39. View Slide

  40. View Slide

  41. 1
    2
    3
    4
    反⿊黑箱 ⽩白⾊色正義
    (⼈人次)

    View Slide

  42. 1
    2
    3
    4
    反⿊黑箱 ⽩白⾊色正義
    2
    2
    y
    (⼈人次)

    View Slide

  43. 50萬
    反⿊黑箱 ⽩白⾊色正義
    10萬
    錯誤的⻑⾧長條圖使⽤用⽅方式!
    基準點需要從零開始

    View Slide

  44. 50萬
    反⿊黑箱 ⽩白⾊色正義
    0
    正確的⻑⾧長條圖使⽤用⽅方式!
    ...好吧這是個失敗的例⼦子

    View Slide

  45. 1000
    反⿊黑箱 ⽩白⾊色正義
    0
    換個觀點,陳述的事實也不同

    View Slide

  46. 1000
    反⿊黑箱 ⽩白⾊色正義
    0
    萬⼈人響應
    ————
    九⼈人到場
    少數⼈人

    不代表主流⺠民意
    y: 響應 / 到場

    View Slide

  47. brand / position / 3D

    View Slide

  48. View Slide

  49. View Slide

  50. View Slide

  51. View Slide

  52. 稅⾦金正在加速燃燒中

    View Slide

  53. View Slide

  54. View Slide

  55. View Slide

  56. View Slide

  57. ⿊黑 客 松
    H a c k a t h o n
    H a c k M a r a t h o n
    ⼤大家⼀一起來 Hack!
    吃炸雞

    View Slide

  58. View Slide

  59. View Slide

  60. View Slide

  61. View Slide

  62. View Slide

  63. View Slide

  64. View Slide

  65. View Slide

  66. View Slide

  67. View Slide

  68. View Slide

  69. View Slide

  70. View Slide

  71. View Slide

  72. View Slide

  73. View Slide

  74. View Slide

  75. View Slide

  76. View Slide

  77. View Slide

  78. View Slide

  79. View Slide

  80. View Slide

  81. View Slide

  82. inLive 直播與活動 http://inlivetw.github.io/chrome
    台灣歷史四⼤大報(含今⽇日) http://oldpaper.g0v.ronny….
    NewsDiff官⽅方新聞稿異動情況站 http://newsdiff.g0v….
    國會⼤大代誌 http://ly.g0v.tw
    你被服貿了嗎? http://tisa.g0v.tw/
    萌典 https://www.moedict.tw/
    萌典字關係查詢 http://direct.moedict.tw/lab/moe/…
    政誌 http://fact.g0v.tw/
    g0v summit 2014 http://g0v.github.io/summit.g0v.tw/
    空氣品質圖形版 http://env.g0v.tw/air/
    求職⼩小幫⼿手 http://jobhelper.g0v.ronny.tw/
    新聞⼩小幫⼿手 http://newshelper.g0v.tw/
    台北捷運各站出站⼈人數變化圖 http://zbryikt.github…
    政府開放資料平臺 http://data.g0v.ronny.tw/
    台灣未開放資料 http://request.data.g0v.tw/
    g0v零時資料中⼼心 http://data.g0v.tw/
    勞⼯工薪資預算程式 http://kiang.github.io/salary/
    台北市建照記錄 http://tpebuilding.g0v.ronny.tw/
    台灣公司資料 http://gcis.nat.g0v.tw/
    台灣公司關係圖 http://company-graph.g0v.ronny.tw/
    農業學地圖 http://g0v.github.io/farmer/
    植物疫情與藥劑查詢系統 http://g0v.github.io/agricu….
    選票成分分析系統 http://congress-vote-analytics……..
    ⽴立院影城 http://ivod.ly.g0v.tw/
    ⽴立委投票指南 http://vote.ly.g0v.tw/
    公務⼈人員出國考察網 http://report.nat.g0v.tw/
    法規易讀器 http://laweasyread.herokuapp.com/
    社會資訊運動平台 http://movement.ee.ncku.edu.tw/
    政治獻⾦金數位化 http://campaign-finance.g0v.ctiml.tw/
    福利請聽 http://listening.g0v.tw/
    Pet Need Me http://petneed.me/
    Bad Driver http://baddriver.mobileweb.com.tw/
    中央政府總預算 http://budget.g0v.tw/
    ⽴立委聯絡資訊 http://billy3321.github.io/lytel/
    國道⼀一號電⼦子收費價錢試算 http://zbryikt.github.io/visualize
    g0v新⼿手村 8bit http://g0v.github.io/g0village-8bit/
    g0v.asia http://g0v.asia/
    台灣⾨門牌查詢 http://ris.g0v.tw
    路平專案 http://106.187.101.193/
    g0v 貢獻者地圖 http://g0v.olc.tw/
    你媽知道你在看假新聞嗎 http://fakenews.tw (g0v x CCSP⿊黑客
    收集議題關注者、︑NGO、︑NPO 的不推薦名單 http://soidid
    新g0v後勤中⼼心 http://community.g0v.tw/
    ⾬雨量圖形化1 http://g0v.github.io/twgeojson/rain.html
    ⾬雨量圖形化2 http://g0v.github.io/twgeojson/interpolation.htm
    g0v導覽⼩小精靈 http://g0v.github.io/g0v-tour-guide/public/ha
    市長,給問嗎︖? http://wethepeople.tw
    ⼩小農故事 http://g0v.github.io/farmers/public/
    萌典啄⽊木⿃鳥計畫 http://moedict.tw/dodo
    動民主1.0 http://lqfb-test.g0v.tw/pf/
    動民主2.0 http://g0v.github.io/don-republic/public/
    全民記者會 http://g0v.github.io/don-press/public/
    我的活動地圖 - 零時廣場 http://g0v.github.io/conference-map
    太陽花學運記錄 by g0v http://g0v.github.io/sunflower/
    政治獻⾦金視覺化 http://fuyei.github.io/cf-viz/viz.htm
    Recent Discussions on g0v 開放政治獻⾦金 http://campaign-fin
    斧頭幫⼤大挑戰 http://axe.g0v.tw/
    g0v授權中⼼心 http://g0v.github.io/moc-license-center/index.ht
    網站抵制⼩小幫⼿手 http://zhusee2.github.io/boycott-helper/

    View Slide

  83. http://g0v.tw/about.html
    g0v.tw 是⼀一個致⼒力於打造資訊透明化的社群。g0v.tw 的參與者來⾃自四⽅方,有程式開發者、
    設計師、社會運動⼯工作者、教育⼯工作者、⽂文字⼯工作者、公⺠民與鄉⺠民等來⾃自各領域的⼈人⼠士。
    這些⼈人聚在⼀一起,希望資訊透明化可以更進⼀一步的改善台灣的公⺠民環境。只要有⼼心想⽤用⾃自
    ⼰己的專業及能⼒力來參與,就可以加⼊入 g0v.tw。g0v.tw 以開放原始碼的精神為基底,關⼼心⾔言
    論⾃自由、資訊開放,希望可以最新的科技,提供讓公⺠民更容易使⽤用的資訊服務。資訊的透
    明化可以幫助公⺠民更確實了解政府運作,更快速了解議題,更有效監督政府,確保政府不
    脫離⺠民有、⺠民治、⺠民享的本質。我們平時透過 g0v.tw 各網路平台(IRC, hackpad,
    github)溝通協作,或參與不定期舉辦的⿊黑客松(hackathon)活動。我們的成果(包括⽂文
    件、程式碼、運算資料、數據分析結果及過程執⾏行⽅方式)遵循開放原始碼授權,讓更多⼈人
    能使⽤用、改善、回饋,發揮最⼤大效⽤用。各專案成果不屬於 g0v.tw,但也歡迎在此平台共
    享。我們喜歡找到問題,樂於討論解決⽅方案,願意動⼿手嘗試解決問題。我們在多元領域中
    找到合作的途徑,讓⼒力量相乘,以想像⼒力指引新的⽅方向。我們希冀以⾏行動改變現狀,不想
    淪為沉默的幫凶。g0v.tw 沒有負責⼈人、代⾔言⼈人,由參與者⾃自主決定想要參與的專案,同時
    加深 g0v.tw 的社群⽂文化。各專案各⾃自運作討論決策,g0v.tw 社群平台相關重要議題則使⽤用
    Liquid Feedback (流動式⺠民主網路投票系統)討論與決策。g0v.tw 無黨無派、無錢倘買
    菜,是草根集結的公⺠民運動,你可以參與專案贊助腦⼒力、勞⼒力,也可以捐款贊助舉辦⿊黑客
    松、或直接⽀支持特定專案。如果你認同以上,歡迎加⼊入 g0v.tw,來聊聊你想作些什麼,想
    協助什麼專案,想看到我們⾝身處的世界有什麼改變。歡迎你成為科技改變社會的⼒力量。

    資料透明
    去中⼼心化 開放源碼
    改造政府

    View Slide

  84. – nobody, but you
    「不要問為什麼沒有⼈人做這個,
    因為你就是沒有⼈人」
    去中 ⼼心化
    decentralized

    View Slide

  85. 發起

    專案
    發起

    專案
    發起

    專案
    O(n)

    View Slide

  86. View Slide

  87. 發起

    專案
    發起

    專案
    發起

    專案
    發起

    ⿊黑客松
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    O(n) O(nn)
    centralized decentralized
    * O(x) : 產出複雜度, throughput complexity
    *

    View Slide

  88. – zonble, g0v hackath7n
    「⿊黑客松的程式都是有機的,
    因為都有蟲」
    開放 源碼
    open source

    View Slide

  89. 發起

    專案
    發起

    專案
    發起

    專案
    發起

    ⿊黑客松
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    O(n) O(nn)
    centralized decentralized
    * O(x) : 產出複雜度, throughput complexity
    *

    View Slide

  90. 發起

    專案
    發起

    專案
    發起

    專案
    發起

    ⿊黑客松
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    O(n) O(nn )
    proprietary open source
    n

    View Slide

  91. View Slide

  92. View Slide

  93. View Slide

  94. http://g0v.github.io/g0vis/#!/project/1

    View Slide

  95. versus
    「...維基百科更具⾃自由且開放性編輯的特性,
    反⽽而吸引更多民眾使⽤用維基百科並加以修改」
    from zh.wikipedia.org/wiki/Wikipedia

    View Slide

  96. – hychen, kuansim the project
    「脫韁的政府,
    來⾃自於未盡監督責任的鄉民」
    資料 透明
    open data

    View Slide

  97. 發起

    專案
    發起

    專案
    發起

    專案
    發起

    ⿊黑客松
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    O(n) O(nn )
    proprietary open source
    n

    View Slide

  98. data not opened
    發起

    ⿊黑客松
    發起
 發起

    發起
 發起
 發起
 發起
 發起
 發起

    發起

    O(nn )
    n
    發起

    ⿊黑客松
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    n x O(nn )
    data opened
    n
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案

    View Slide

  99. 發起

    專案
    發起

    專案
    發起

    專案
    O(n)
    發起

    ⿊黑客松
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    n x O(nn )
    n
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案
    發起

    專案

    View Slide

  100. http://g0v.github.io/g0vis/#!/project/1

    View Slide

  101. View Slide

  102. View Slide

  103. View Slide

  104. View Slide

  105. View Slide

  106. View Slide

  107. View Slide

  108. View Slide

  109. View Slide

  110. View Slide

  111. http://g0v.tw/about.html
    g0v.tw 是⼀一個致⼒力於打造資訊透明化的社群。g0v.tw 的參與者來⾃自四⽅方,有程式開發者、
    設計師、社會運動⼯工作者、教育⼯工作者、⽂文字⼯工作者、公⺠民與鄉⺠民等來⾃自各領域的⼈人⼠士。
    這些⼈人聚在⼀一起,希望資訊透明化可以更進⼀一步的改善台灣的公⺠民環境。只要有⼼心想⽤用⾃自
    ⼰己的專業及能⼒力來參與,就可以加⼊入 g0v.tw。g0v.tw 以開放原始碼的精神為基底,關⼼心⾔言
    論⾃自由、資訊開放,希望可以最新的科技,提供讓公⺠民更容易使⽤用的資訊服務。資訊的透
    明化可以幫助公⺠民更確實了解政府運作,更快速了解議題,更有效監督政府,確保政府不
    脫離⺠民有、⺠民治、⺠民享的本質。我們平時透過 g0v.tw 各網路平台(IRC, hackpad,
    github)溝通協作,或參與不定期舉辦的⿊黑客松(hackathon)活動。我們的成果(包括⽂文
    件、程式碼、運算資料、數據分析結果及過程執⾏行⽅方式)遵循開放原始碼授權,讓更多⼈人
    能使⽤用、改善、回饋,發揮最⼤大效⽤用。各專案成果不屬於 g0v.tw,但也歡迎在此平台共
    享。我們喜歡找到問題,樂於討論解決⽅方案,願意動⼿手嘗試解決問題。我們在多元領域中
    找到合作的途徑,讓⼒力量相乘,以想像⼒力指引新的⽅方向。我們希冀以⾏行動改變現狀,不想
    淪為沉默的幫凶。g0v.tw 沒有負責⼈人、代⾔言⼈人,由參與者⾃自主決定想要參與的專案,同時
    加深 g0v.tw 的社群⽂文化。各專案各⾃自運作討論決策,g0v.tw 社群平台相關重要議題則使⽤用
    Liquid Feedback (流動式⺠民主網路投票系統)討論與決策。g0v.tw 無黨無派、無錢倘買
    菜,是草根集結的公⺠民運動,你可以參與專案贊助腦⼒力、勞⼒力,也可以捐款贊助舉辦⿊黑客
    松、或直接⽀支持特定專案。如果你認同以上,歡迎加⼊入 g0v.tw,來聊聊你想作些什麼,想
    協助什麼專案,想看到我們⾝身處的世界有什麼改變。歡迎你成為科技改變社會的⼒力量。

    資料透明
    去中⼼心化 開放源碼
    改造政府

    View Slide

  112. View Slide

  113. View Slide

  114. View Slide

  115. View Slide

  116. View Slide

  117. E 論壇 ft.

    View Slide

  118. View Slide

  119. View Slide










  120. View Slide

  121. View Slide

  122. View Slide

  123. View Slide

  124. View Slide

  125. View Slide

  126. View Slide

  127. View Slide

  128. View Slide

  129. View Slide

  130. 資料透明
    去中⼼心化 開放源碼

    View Slide

  131. 沒有⼈人做,那就我來做

    View Slide

  132. http://bl.ocks.org/zbryikt/raw/4696905/
    http://zbryikt.github.io/ppllink/
    !

    View Slide