X
    Categories: My_Note

OSDC (Open Source Developers' Conference) 2009 筆記整理

雖說是筆記整理, 但是請別抱太高的期待. Orz..

這次 OSDC 實體收獲是拿到 Y! 衣服 和 jQuery 實戰手冊 (jQuery in Action) 😛

這次帶 eeepc 出門, 到會場網路死的一塌糊塗(沒想到 M$ 的水管這麼細), 幸好有 3G 可以頂著用~

本來是拿 mousepad 來作筆記, 每次開開關關很累, 在 Plurk 唸個幾句後, 就乾脆在 Plurk 開始隨便紀錄, 此筆記主要是把 Plurk 紀錄的轉回來, 不然要回顧時, 太分散還是蠻麻煩的.

下述只紀錄有聽到的, 而且隨手紀錄一些關鍵字、名詞等.

OSDC 2009 投影片

OSDC 2009 筆記

Microsoft Open Source Strategy & Projects in Codeplex.com( Moonlight, Oxite as example )
  1. Oxite 連佈景主題都做了. (不過, 在 eeepc 的 Firefox 上看, headline 會爛掉.)
  2. Silverlight RIA 的講師 .... 我看到 ie6.. :~~ (M$ 自己人都不用 IE8, 怎麼辦? 我不想再管 IE6 了. :~~)
  3. Moonlight on linux, 看起來心動了點~ (不過, 果然是 M$, 剛聽到這個重點, 就結束了. XD)
Improve web performance using CDN - gslin (投影片: Using CDN to improve performance)
  1. CDN 加快 TCP handshake, 加快下載.
  2. 異地備援.
  3. DoS 防禦.
  4. 成本
  5. 台灣頻寬比 CDN 貴. (Akamai 除外, Akamai 大概是台灣頻寬的 3倍價位)
  6. CDN 計算方式: 總量 (一般頻寬計算: 95%, 等同於 每個月有 36hr 是不收錢的.)
  7. 1Mbps = 10G/天 (如果頻寬 1M, 代表一天最高可以用掉 10G)
  8. 克服瀏覽器壓縮 bug.
  9. 頻寬夠就好, 不需要餵豬吃人參. (經典)
  10. Amazon CDN 不支援 Gzip.
  11. SimpleCDN, 1M 不用到 400台幣, 台灣沒點, 不吃 file.css?v=...
  12. 使用 wget, 或修改 hosts 測試速度.
Accessibility - Chris Heilmann
  1. Wikipedia、Youtube 都有 Accessibility 的問題.
  2. Keeping things simple. (經典)
  3. YQL console # 需用 Yahoo! 帳號 登入
  4. 使用 YQL WHERE 後面查 url="msn.com" and xpath="/h2", 會把 h2 的內容拉出來.
  5. 符合 Accessibility 的 Flash player: JW FLV Media Player.
  6. 關於 Chris 相關網路資料:
unit testing in jQuery - Paul Bakaus
  1. 太晚進來, 已經快結束了. Q_Q
  2. simulate function.
  3. QUnit - jQuery JavaScript Library
  4. Honesty: 還有稍微提到 John Resig 的 TestSwarm(JavaScript Testing Does Not Scale)
The Google App Engine Oil (GAEO) Framework - ericsk (投影片: An Introduction to GAEO web framework)
  1. 在隔壁場聽邪惡的 Perl. XD
Good Evils in Perl - Gugod
  1. use warnings;
  2. use strict; 讓程式壞掉. (善意的把程式停掉.)
  3. say "hi"; = print "hi\n"; ....
  4. Perl6 對量子電腦準備好了. (平行運算)
  5. 只是, 還不知道怎麼玩.. XD
  6. Junction.
  7. Perl6 可以一次操作一個集合, 一個單體, 互動 等.
  8. any 蠻有趣的. (any 對 array 的處理等 相關語法)
  9. perldoc perlpragma
trading with open source tools - clkao
  1. Programming Language: R (可以比較輕鬆的做數學運算, 畫圖等)
  2. VirtualBox(Windows) + memcached + Perl + 程式監控下單.
輸入法、鍵盤、Console 中文化 - Mat
  1. ucimf
  2. Jfbterm
  3. FreeType 顯示字型
  4. FbTerm
  5. Open Source 作者熱血是很重要的.
  6. 這場真是很感動, 感謝 Mat.
  7. ucimf - Google Code - 下載 / 安裝
  8. UCIMF | Google Groups
新瘋狂蝴蝶夢 - MadButterfly - thinker + wycc
  1. 沒機會聽到, 但是是個很有趣的專案, 可見: 專案 MadButterfly
使用Capture-HPC鑑別惡意網頁 - david guan (投影片: Capture-HPC talk@ OSDC.tw 2009)
  1. google safe browsing database
  2. safebrowsing-python
  3. md5(url)
  4. Honeypot 誘導來攻擊
  5. Capture-HPC 惡意網頁的 research
  6. 給他一段 list, 他會去抓網頁, 然後來看網頁是否有問題.
  7. Vmware VIX api 可以控制內部程式 (執行 VM 內運行主機的程式)
  8. Vmware 1.0 比 2.0 好.
  9. oldapps.com 抓舊版的軟體 (大多數都不會提供舊版軟體下載安裝, 在這個網站可以抓到舊版)
  10. Good URL / Bad URL 清單.
  11. check safe.log / malicious.log / error.log
  12. Capture-HPC / Malzilla / DecryptJS
SD, a Peer to Peer Bug Tracker - Jesse Vincent (投影片: SD, a P2P bug tracking system)
  1. 想像 Bug Tracker 像 git 一樣帶著跑 (有種很方便, 但是又很苦的感覺)
  2. 沒聽到這場很遺憾, 先把相關資料搜集起來:
  3. 安裝:

    curl http://fsck.com/sd | perl # 或 curl http://17h.local/sd | perl
    export PATH=$PATH:~/sd/bin

  4. Distributed Bug Tracking with SD
  5. Prophet - A peer to peer replicated disconnected database
  6. Using SD
RoR Q&A session
  1. 每次新版 rails, 舊版的 Controller / Plugin 爛光光 => 無法避免, 建議舊版就維持住, 只把需要使用 / 修改的套件升到新版即可.
  2. 推廣要有針對性 => 解決同樣的問題, 有多種不同的方式, 可以比較出差別在哪裡.
  3. 讓他們感受到你提供這方法的好, 自然就達到推廣的效果.
Songbird, an Open Source Media Player (投影片: Songbird)
  1. Built on Mozilla (XULRunner)
  2. Cross platform media player
  3. 這讓我想到 xPUD
  4. 以後的 apps, 都從 firefox 的核心當 base 開始寫, 似乎蠻有趣的.
  5. irc://irc.mozilla.org/#songbird
  6. 改 Songbird 介面的程式也都可以自動化了~ 真完整.
Ruby 1.9 - ihower (投影片: Ruby 程式語言簡介)
  1. OSDC.TW 2009 Ruby 相關投影片
運用 open source 工具建立 mobile-web 資料分析整合服務 - Lukhnos + Mikimoto
  1. iPhone 是一隻 0 分的 phone
  2. 只是一隻正好可以打電話的 computer.
  3. Mobile computer -> data terminal.
  4. UI response 很快 (其他 display, memory, cpu 都很小, 很慢)
  5. 使用輕型的資料結構, 不要讓他去 parse xml, 非常慢.
  6. 要考慮網路常會斷斷續續.
  7. 基本上, 這四種組合都好慘阿... XD => 不過這張投影片真是心血結晶
  8. csv 世界化會有很大的問題(特別是數字單位) 記帳軟體. ("," 位置, 多種國家使用、呈現都不同)
  9. iPhone 原廠的有 memory leak, 所以要用 LFHTTPRequest.
  10. server side 的分開.
  11. cloud computer 適用於 移動是裝置.
  12. 有規則就會有例外(經典)
  13. 使用 OpenCSV - csv parse (Java)
  14. Java Excel API (jexcelapi)
  15. Excel timestamp 是 1900/1/1 為 1, 每隔一天加 1. (Mac 是 1904/1/1 為 1)
  16. 這場最後的相聲還有趣的~
What Compilers do for us -- Introduction to Evolution of Compiler Technologies - jserv(投影片: What Can Compilers Do for Us?)
  1. 只有最後聽到結尾, 錯過這場超遺憾的.. :~~~
  2. 演講:窮得只剩下 Compiler -- 淺談編譯技術的革命
something about Perl 5.10 - scw (投影片: something about Perl 5.10)
  1. FreeBSD: /usr/port/UPGRADE
  2. =cut 多行註解 =cut
  3. man perlre
  4. man perldelta
  5. lwhsu: /usr/ports/UPDATING 不過照那樣做會爛 XD
  6. 還是先不要太衝動好了. XD
HBase, distributed database on Hadoop - rafan(投影片: HBase @ OSDC.TW 2009)
  1. HBase: transaction, secondary indices.
  2. distributed database modeled on Google's Bigtable.
  3. 4~8 core, 4G ram+. => 機器基本要求
  4. key:(table,row,family:column,timestamp) - value:value => key 就就有規劃到多版本的擴充了
  5. table 是被排序過的. => 指的是 key 第一欄的那個 "table" 欄位.
  6. 目前是 Master(w) 掛了, 就全部掛掉. (缺點, 改善中)
  7. Thrift 不同 language 去存取. (Facebook Developers | Thrift)
  8. 或用 REST 去存取.
  9. 存取 CRUD 和 (table)Scan.
  10. irc: #hbase on freenode
  11. HBase: Welcome to HBase!
Depth in web performance course - Rasmus Lerdorf (投影片: Simple is Hard)
  1. Twitter: Rasmus
  2. Scalability / Performance / Security
  3. 避免單一 controller.(single front controller) => 不要只用一隻 dispatcher 去做
  4. apache2 -X : single process (debug mode)
  5. Apache 接收到存取後的所有經過列表.
  6. included 畫出的圖, 實線代表真的有 include 到, 剩下 require_once 都是檢查, 不需要 載入.
  7. 使用者並不會知道程式寫的多好, 他們只會看到 HTML 呈現出來的畫面. => 程式不用寫得美, 而是要簡單有用(能把事情完成), 這是最重要, 也是最困難的事.
  8. HTML sould like HTML. => HTML 就該是 HTML, 不要用 Function 去設定一堆參數
  9. KCachegrind wordpress.out
  10. I don't like framework.
  11. You should know cost.
  12. 問題: 如果有多種 DB 需求, 而不去使用 ADODB 等? => 由答案猜問題, 坐太遠, 聽不清楚
  13. 回答: postgresql / mysql / oracle => all done. => 通常會用的就這幾套, 單獨寫或者抽離一層即可, 不需要 ADODB 等.
OpenFoundry 系統整合 - 吳孟勳 (OSSF)
  1. Shibboleth. => 做到 SSO, 權限管理.. 等等 的系統.
  2. SSO (Single Sign-on)
  3. Shibboleth 分兩個身份: Identity Provider(IdP) / Service Provider(SP)
  4. 讓人來登入的部份(IdP) / 提供服務的部份 (SP)
  5. Shib Idp (java servlet)
  6. Shib SP (C++)
  7. SP -> shibd daemon : 存 session 用.
  8. 1 SP 只能對應 1台 IdP
  9. Single Sign Off. (登出)
Lightening talk
  1. IPERF / UDP
  2. QoS
  3. PacketLoss
  4. Jitter
  5. 集縮比
  6. =
  7. ZFS: 窮人用的 raid.
  8. ZFS: snapshot (隨時可以做 snapshot)
  9. zpool list
  10. zfs list
  11. zfs snapshot xxx
  12. zfs rollback xxx => 還原 snapshot
  13. =
  14. 95% of all bugs are caused by ... variables .. XD(經典) => 超經典
  15. 95% 的所有 bugs 都是因為 => 變數.
  16. 如何簡單又快速的 Bug 清掉 => remove all your variables.
  17. only remove the bad ones: global / package / module / class / local.
  18. 簡單講, Object 只是做設值、取值的動作, 不需要用到物件.
  19. 推 Functional Programming 才是正解
  20. =
  21. $4 介紹的: hiChannel.sh (話說 Hinedo 最近我常聽的電台都無法收聽了)
相關問題

問題: 在場外有問 Rasmus 關於 PHP6 為何要 Java 化(個人感覺), 未來程式是否需要做大量修改?

回答:

  1. PHP4 ~ PHP6 都不會有太大的改變, PHP6 並不是像 Java / C++, PHP 有自己的風格.
  2. 到現在都還有 PHP2 的 Code, 沒有升級, 都還正常的在機器上運作, 沒有任何問題.
  3. 不要將 PHP 當程式語言, 而是當工具, 能快速將把事情完成的工具. => PHP 是要讓人很容易入門, 快速入手的工具.
  4. 重點是簡單, 快速. 文件也要可以快速查詢.
  5. 今天看到任何 function, 都可以很快的查到 document, 並且容易維護. => 真希望其它語言都能提供像 php.net 的查詢介面 + 結果 (結果都有簡單的範例可以參考)
  6. framework 是不建議的, 如果是給某套系統專用的 framework, 那是正確的, 主要是自己可以掌控.
  7. 還是回到他最常講的觀念, 可參考: PHP之父的開發祕訣 / Rasmus Lerdorf 於台灣講座整理(純 資料收集)
心得小記
  • 由洗手間貼的小抄, 就可以看得出公司的風格, 從 Google 看到: HTML DOCTYPE 簡短寫法 (相容 HTML 5), 在 M$ 看到的都是軟體整合應用, 以致企業效率提昇, 節省多少錢 等等(行銷導向).
  • 95% of all bugs are caused by => variables (這個結論真的是太經典了, 狂推)
相關網頁
Tsung: 對新奇的事物都很有興趣, 喜歡簡單的東西, 過簡單的生活.
Related Post