murmurby
fcamel (
fcamel)
設 .inputrc 讓 terminal 可以打中文, 要重 login 後才會生效
lemacf, 晚點來學深一點的 xpath 和 css path: http://www.zvon.org/xxl/XPathT...
用 Selenium 錄好大部份的 acceptance test 了, 這東西要怎麼維護啊...., 錄得時候有加註解和切 test case, 但除錄的人以外, 應該很難確認錄的內容是否有達到要求。
要找下一站 IPv4 的機器時, 先用 ARP 做 broadcast 找出 MAC, 再用 MAC 送封包到目的地
最近才發覺大學一堆基礎知識沒學紮實, 現在也沒時間慢慢補洞了, 真難過 :(
NFS 是看 IP 發權限, 如果和其他人共用一個網域, 是不是就沒解啦?
Django 1.2 出來啦, 下一個小專案就來試吧, virtualenv rocks!
(my post) CSS 雜項心得
(mysql) 用 \G 輸出 vertical output, 忘了這指令還我查好久
lemacf, ericsk 那看來的, appengine-mapreduce
(my post) fcamel 技術隨手記: Sikuli 試用心得
fcamel 發表在 痞客邦 留言(0) 人氣(16)
murmurby
fcamel (
fcamel)
Django template 不能用 a[key] 的結果, 就是用 filter 繞過去..., 終於解掉心頭大恨了
找到 bug 後先寫 test 再解 bug, 正是不貳過的表現啊!!
BASH Shell: For Loop File Names With Spaces, 不知為啥要\n\b, 不能\n, 回家再研究
Django GROUP BY strftime date format, group by hours in Django
rails relative url: 在config/environments/production.rb 設config.action_controller.relative_url_root = '/app'
裝 mongrel_cluster: gem install mongrel_cluster
嗚.......成功把用 apache + mongrel cluster 跑 redmine 了 T_T, 真是令人開心的意外成果
(my post) 用 apache + mongrel cluster + relative url 跑 Redmine
用 vfork 做 fork-then-exec
replace os.spawn by subprocess.Popen
進作「超.專注模式」後能以四倍速做完事, 但做個段落後, 會懶散的一陣子不想做事 Orz
今日心得: 別在 wsgi app 裡亂 call fork, 還是乖乖地用 subprocess 執行另一個 python script 較穩, 不知道 apache 和 mod_wsgi 前後做了啥事, 難以掌握行為
http://www.amazon.com/dp/18495...
lemacf, jnlin 那看來的, http://blog.medallia.com/2010/... (Cassandra vs. Voldemort))
Filco 的採訪...
用 multiprocessing 執行 function 可取得和原程式同樣的 sys.path, 但和 os.fork 後有一樣怪異的行為。看來只剩 subprocess.Popen 這條路了, 到時得改 path 設對 virtualenv
唉呀呀, 網頁寫得好好的, 沒事幹嘛要在裡面另外跑背景程式呢?
斷電後發現 KVM 忘了接 UPS
Windows XP 的 "/etc/hosts" 放在 c:\winnt\system32\drivers\etc\hosts
按 enter/f12 後自動在指令前加 "time ", 但不適用在 set -o vi, 之後再來研究
No.... ubuntu 8.10 後的 screen 才有支授 vsplit
因為 config 複雜而無法測試是不被允許的理由, 那表示該測試依賴外部資源。今天忽然想通之前看到的這個觀念, 看來我能測最近弄的程式了, 第一步就是從 script 內拆出 sub module, sub module 和 config 分離, 這樣就方便準備測試環境了
(vim) 用 fold 一陣子後還是不習慣, 動不動就 zR 全開。到是 taglist 試用沒多久就習慣了, 程式搞大後還真的一直用 / 找位置, 還是用 taglist 較快
重覆的悲慘過程: 實作 A 應該很簡單吧 -> Sh*t, A 會用到 B, B 當初沒考慮到 A -> 什麼? 我搞錯 A 要的功能, 變得有點難寫 -> 一切搞定, 更新上伺服器, fu*k, mysql 表現得和 sqlite 不同 -> OMG, 有效能問題 Orz
(django) 沒想到讓 ORM 下上千次 SQL 會變成 CPU bound 而不是 SQL bound。改成一個 ORM 操作省掉上千個操作後瞬間省個數十秒
不得不再說一次, django debug toolbar 實在太殺了! 少了它, 我不知要怎麼在 ORM 的世界裡找出自己做的蠢事啊。用來看 template context 也很方便
lemacf, 今天聽 沒力小僧 提到 cucumber 和 rspec
大家都在轉, 哆啦A夢告訴你目前各家瀏覽器對 CSS3 的支援狀況..., 太強了 XD
fcamel 發表在 痞客邦 留言(0) 人氣(49)
murmurby
fcamel (
fcamel)
css 要寫得漂亮真不容易啊, 一樣要考慮共用的碼和各自獨理的碼, 而且目前都還沒考慮跨 IE 的事 (目前的工作不需考慮 XD)
lemacf, 有空來翻翻 http://www.djangosnippets.org/, 可以找到實用的 template tag 範例
django-pagination 看起來好威啊!!!
lemacf, Building Leafy Chat, DjangoDose, and Hurricane, Lessons Learned on the Real-Time Web with Python, 用 Django + Comet + Orbit 做 real time web 服務
@command 那看來的, RAID5和RAID10,哪种RAID更适合你(上 - 存储频道 | IT168)
jQuery UI 實在是太精美啦!!
jQuery Tools, 沒想到 jQuery 之上的 UI 也是百家爭鳴啊......
CSS url 的相對路徑是以 css 檔為主
推 NotExist http://www.youtube.com/watch?v... 這集真的讓我笑翻了XD
只加好友沒追蹤是不是不會顯示在大家的哞啊? 我之前看不到 沒力小僧 的哞, 加追蹤後才看得到
(my post) fcamel 技術隨手記: django + mod_wsgi + virtualenv 注意事項
搬板凳...
Google I/O 2010, 對 App engine、JS 相關的東西有興趣, 也可以拿來當英聽教材
透過 TEMPLATE_CONTEXT_PROCESSORS 將 settings 裡的常數傳到 template
django built-in template 不能傳參數實在是很難用啊........
ajax 回傳 json 真方便, 這篇 做了個 decorator, 自己直接寫也很容易
(my post) 制作簡單的 API: 在 Django 中回傳 JSON, 初用這種寫法, 感覺挺方便的
G1 很重的好處是, 可以兼當書鎮用
(django) 有指定 id 時會先下 select 才做 update/insert
(django) 沒有 bulk-insert, 得自己下 raw sql。bulk-delete 為了保證 FK constraint, 會多做一些 select
今天用Django 跑 sqlite 出現錯誤訊息說無法寫入, 碰巧剛看到 這篇 提到原因, sqlite 會用到暫存檔, 要打開目錄的寫入權限
(my post) 最近寫網站雜感
in mod_wsgi daemon mode, simply touch the wsgi script to reload codes
(my post) 搭車去看《鋼鐵人》
fcamel 發表在 痞客邦 留言(0) 人氣(27)
murmurby
fcamel (
fcamel)
用 js 的 for (name in obj 時, 記得用 if (obj.hasOwnProperty(name)) 濾掉不是本身的 key)
(my post) fcamel 技術隨手記: 弄出 JavaScript 中 print 的替代品
(jQuery) 要用 $('#my-form').submit() 而不是 $('#my-submit-button').click(), 後者不會觸發 onSubmit event
參照 Douglas Crockford 的建議將整個專案的 js 放到一個 object 下還挺不錯的。除了避免 global variable / function 衝突外, 也方便在 Firebug 內瀏覽
瑪莉歐掛上A* algorithm
lemacf, 榮尼王 那看到的, Mario AI Championship 2010, 備忘, 之後找時間來玩!!
(js) 用 Closure 表現出 private method / member, JavaScript 的 Closure 實在是太直覺了!!
IE6 / 7 沒有 JSON, 要自己裝 http://json.org/json2.js
(django) 用 select_related 強迫取回相關資料, 減少 query 數
mysql 用 utf8 時, varchar 要 * 3 來算, 設成 varchar(300) 表示占近 1000 bytes。5.03 後 varchar 只能 index 前 1000 bytes, 要注意兩者間的單位 Orz
(my post) fcamel 技術隨手記: 從 mysql 中隨機取出千筆資料 (別用 order by rand())
(django) 拿 verbose name 的方式 也太麻煩了吧 Orz
同事 P 推薦的兩本書 自慢:社長的成長學習筆記 和 這輩子,只能這樣嗎?
(my post) mysql 搬資料小技巧, 來練習看看每天在聽完一首七分鐘左右曲子的時間內消化掉一小則心得 (thinking)
Keith Jarrett - All The Things You Are, http://www.youtube.com/watch?v... interesting comment: "how dare anyone mention lady gaga up in here?!? " XD
(django) templatetags 要放在 app 目錄下, 不是放在 project 目錄下
技術對談-看Google怎麼用Java, 2006 的文章, 現在重看別有意思啊
當時程延遲之後, 成本、品質、時間和規模四個變數, 降低規模大概是比較務實的作法吧, 可以較明確減少危機。
黏土人學姊好可愛啊 O_Q
很喜歡軍火女王每集開頭的這段話: 「吞盡五大陸、飲乾三大洋,可恨身無雙翼與手足,徒嘆對天無奈何。 我是世界蛇──約爾姆加德。」
(my post) 將 Django project 放到 URL 根路徑外的位置
@xlk 那看到的, 用 tdd 等方式減少 acceptance test 以獲得較好的軟體品質
用 PGP 驗證下載的壓縮檔
django template repl , 方便馬上試 template 的語法, 還附贈 pdb 不知什麼情況會用到它。
fcamel 發表在 痞客邦 留言(0) 人氣(24)
murmurby
fcamel (
fcamel)
lemacf, Django tips: extending the User model: use the hook AUTH_PROFILE_MODULE and get_profile() to connect user and user profile by 1-1 relation
lemacf, 用 south 後就不能用 syncdb 自動加 permission Orz
雖然我一直告訴自己單就文章下判斷, 別被主觀意識影響。結果在看完 MySQL性能优化的最佳20+条经验 發現原文是英文後, 竟然忽然覺得內容變得較可信 Orz
最近迷上了泰山的大吸館綠豆椰果, 每天都要吸上一罐, 三兩下就喝完了!!
這裡看到的, 用 vim 控制 Chrome XD
pip 用 bundle 時, bundle file 的副檔名必須是 X.pybundle, 不然 pip install 時不會用去解 bundle, 比方說用成 X.bundle, pip 會以為使用者要裝 X.bundle
pip v0.7 出了! virtualenv 也昇級了, 變成內建 pip v0.7
django 1.2 release 延到 5/03, 傳說中軟體的最後一哩嗎? 太可怕了
15 個搞砸mysql效能的方法, 看了誰還敢用ORM啊, 真多注意事項
Django book 作者討厭 mysql 嗎, 提到一個例外行為時, 說 "mysql might accept it or might not, depending on the version you're using, the time of day, and the phase of the moon." XD
原來 manage.py 有 dbshell 的指令, 之前還都用 mysql client 連進去
原來建立 table 後, syncdb 不會自動改 db schema 啊, 那這樣 South 是必備之物啦。更有興趣了解 South 實作細節
lemacf, 用 ModelAdmin 控制admin介面
Ummm, 使用像 django 這種 framework, 不適合用問題導向的方式學, 遇到一點小狀況很難查到答案。不如有系統地把需要的區塊各別學起來, 了解運作方式才能判別錯誤, 也才知道有那些 hook 可改
客制化 admin template 的方法, 這樣就差不多掌握住 admin 啦
說明如何把 django admin 改成 CMS , 這個站還沒 launch, 看了一下 demo 頗強大的
Christophe Willem - Born to be alive ( Live )
嗯....... django admin 沒有 read 的介面, 因為那不是它設計出來的目的, 有人建議可以用 databrowse
原來這隻 粉紅色的天馬 是 Django 的吉祥物啊......., 剛竟然猶豫了一下要不要換上牠的桌布 XD
5/10 出 v1.2, 官網聲明「希望這是最後一次公告延期」 XD
django template 的限制激發了我的創意....., 平時都直接在 template 裡用 mod 和一些 if 來將 k 個東西弄成 n x m 的表格, 但在 django 裡得先在 view 裡切好表格, 再丟到 template 用兩層 for 顯示...
lemacf, Apache Arvo, 另一套做 serialization + rpc 的東西, 從 gasol ? 男 : !女 slide 裡看到的。
Django 沒有 not equal, 用 ~Q 或是 exclude + exact 湊出來
fcamel 發表在 痞客邦 留言(0) 人氣(27)
fcamel 發表在 痞客邦 留言(0) 人氣(25)
murmurby
fcamel (
fcamel)
(my translation) [譯文] 為什麼我們不好意思承認,我們不知道如何寫測試?, 終於翻完啦, 拖了好久
雖說 django 不能傳參數給函式, 但 filter 可以接收參數, 再來就是看能否自定 filter
template inheritance 看起來挺方便的
Ummm, 這篇說 Jinja 比 Django 內建 template 快, 不過留言有人提到 v1.2 有大幅改善部份問題
看 Jinja 不支援的東西反而看到 Django 的好東西...... debug tag
要成為一個半調子的專業網站開發人員真不容易, 要學一堆雜項, 看個 login 得學 session , cache 等, 選項一堆
大概看過文件後, 用 framework 還是得三天兩頭一直看原始碼, 才能搞清楚怎麼做才對
之前有 database 時, 對於實際操作 db 的程式已很難測了, 現在遇到 http server 也很頭大。包了個 http client 讓其它程式隔離在乾淨的環境裡, 但 http client 本身卻得真槍實彈地測。嗯.....應該來參考看看別人的解法
難怪 python guy 喜歡用 python 實作的工具, 記 log 時想要一起記程式跑得是那版, 到時才能完整重現當時的狀況。只要 import mercurial, blah blah, 一下就搞定了 :)
mod_wsgi 不允許程式使用 stdio
mercurial 會用到 stdio, 結果是搭上 mod_wsgi 就噴了, 解法是生 repo 物件前先換掉 stdio
這週六開始連三天都有聚會, 看來這週無法休息了 Orz 為提昇戰力, 看看下週有沒有好時機可以請一天假 (thinking)
希望兩週後 tests 的數量會多到需要用 CI :)
加快 django test 的方法: 另開一個 port 跑一個用 ram disk 的 mysql, 測試時用它。相較於測試時改跑 sqlite, 好處是即使有用 raw query 也 OK
[js] /* */ 可能會和 regexp 衝到, 用 // 較穩
[js] only 64-bit floating point, no integer.
[js] character is 16 bit wide. double quote and single quote are the same.
複習了 utf-16 和 utf-8, 現在的文件愈寫愈清楚啊
(my post) fcamel 技術隨手記: Unicode, UTF-8, UTF-16, UCS-2 和一些程式語言的支援方式
看到 這個站 才學到 map tag, 網頁的世界真是太奇妙了, 能做的事真多
原來 browser 的 cookie 是一個 URL 記一組資料, 同一個 IP 搭不同 port 登入第二次, 前一個登入的 cookie 就被蓋掉了。為啥不用 URL + port 當作 key 呢?
domain + path + name 形成一個 cookie, cookie 內另存有 expired time。用 cookie 這麼久了才弄清楚它是怎麼一回事
看到「若你不是hacker, 你無法判斷誰是好hacker。」想到最近在思考怎麼找適合的網頁開發者, 就是同樣的問題。
Miško Hevery 寫 js 後改口說 dynamic typing 也不錯啦, 較少的程式維護成本較低, 重點是測試
看過 Douglas Crockford 和 Miško Hevery 推 js 的說明, 加上最近又有趨勢是在 server side 寫 js, 開始有很大的動力學 js!!!
剛才注意到 http://www.pixnet.net/ pagerank 是 8, murmur 是 7, 連我的 murmur 首頁都有 3, 有沒有搞錯啊?
What Pair-Programing is Not: 透過pair programming 帶新人, 而不是紙上談兵
(my post) 寫出容易測試的程式。總算寫好啦, 不知道範例會不會太簡單而無法傳達到背後的想法?
fcamel 發表在 痞客邦 留言(0) 人氣(20)
murmurby
fcamel (
fcamel)
該來的總要來的 http://2cat.or.tp/~kirur/img2/...
Google Chrome Developer Tools Tutorial , 前天看看了又忘了放在那, 從貼一次
早上想說要來找 js unit test, 記得 Misko Hevery 好像有提過, 果然一上他的 blog 就看到。之後來試試
看 ericsk 寫的 jQuery 教學, gslin 提到 http://visualjquery.com/, 精簡的 API reference
用 $(...)is(':visible') 判斷元件是否已顯示
準備來試 django debug toolbar
Sum of numbers in file - UNIX alternatives , 每次要寫 one-line script 時, 就覺得 python 無法滿足我的需求啊, 只好從 awk / ruby / perl 來補
QUnit, jQuery 官方的 unit test, 好東西!!
QUnit 的簡單範例, 看完這篇操作一下我就懂了
lemacf, 可用 js-test-driver 整合 QUnit, 這等最後再做吧。待做的事真是堆積如山.....
CSS selector, 寫得真清楚。過去都是看例子猜用法, 終於看到完整語法了 T_T
我原本以為測 jQuery 需要綁在 html 檔裡才方便測, 看到 jQuery fx.js 後, 才發覺我還未夠班啊..., unit test 的領域真是博大精深啊
oops, django test client 不支援 middleware stack
moneypatch the code to make test client get the context.
參照 manage.py 的寫法, 弄懂怎麼做 Django setup, 自己搞個連上真實 database 的 test client
不懂為啥 middleware 要定成最先截取 request 的 middleware 得最後獲得 response (因為這樣才能畫洋蔥圖嗎...)。更何況 Django 定成只有一個 middleware 能處理 request, 讓兩者的順序都能自訂較彈性吧?
Django v1.2 release date 改為四月底, 公告不該在 4/1 發佈啊.....
(my post) Python 取出 call stack 的方法, 作法出乎意料地簡單 XD
fcamel 發表在 痞客邦 留言(0) 人氣(58)
murmurby
fcamel (
fcamel)
如果 sqlite3 table 內有資料, add_column 要求 not null, 那就一定要設 default。但若 table 是空的, 不該發生這錯誤, 然而目前 South 會丟出 Exception, 而從 ticket 來看, 負責人覺得沒必要修。雖說也是如此啦, table 是空的就重建 schema 吧
South 0.7 出來啦, 早上官網還爛了一下, 好了以後文件變漂亮了 XD
Django Manager 和 QuerySet 的實作挺有意思的, 不過在把正事幹完前要先忍住, 之後再來 trace source code
差不多讀完啦, 終於弄清楚 Django ORM 怎麼運作的, no magic!!
記錯了, 不是在 class Models 處設 "data on demand", 而是用 QuerySet.defer() 告訴 Django 別拿部份欄位。預設 Django 會全拿
extra fields for many-to-many fields, 總算更明白用法了
太可怕了, 兩年前就有人要求多欄位index (目前只有多欄位unique), 五年前有人要多欄位PK, 到現在仍在討論
重看這篇, 注意到這句「A chess novice can defeat a master if moving twice each round.」, 嗯....快速開發啊
處理 setting 的 best practice. settings.py 有太多東西要設, 又常改, 不加入 VCS 反而有一堆麻煩
這篇作者是 Django 的 release manager, 提到 WSGI 的問題, 留言裡 Ian Bicking 提到現在他不贊成制定標準 (改 WSGI 的意思吧), 先搞搞專案, 等穩定後再來談標準。多看些討論後, 覺得愈來愈複雜啊
Mozilla add-ons 的 Django 版, 也許可以參考它們的 layout, 從設定中學些東西
lemacf, Silver Lining, 自動建立和刪除 virtual server, 設定 Ubuntu, 部署 web app, 看起來挺有意思的。
發覺 Selenium IDE 提供的功能有些陽春而去看了 issues, 感覺不夠熱絡, 於是去看看 Windmill, 結果發現貢獻者之一跑去搞 CouchDB startup, 他原本在 Mozilla 工作
目前知道 100% 時間搞 open source 的, linux 有 Red Hat, www 有 Mozilla
CSS 真複雜啊, 為了把東西把在同一行要用 flow, 之後記得用 clear: both 去除 flow 效果
(my post) fcamel 雜記: GOSICK.糖果子彈.驚爆危機 Σ, 許久沒寫 ACG 心得啦
很多延伸的文章可以看... http://spyced.blogspot.com/201...
lemacf, 這篇提及 Cassendra 的發展, 自 facebook release 它後, twitter, digg, Reddit 等都在嘗試, 且已有 +Lucene 的實作 Lucandra
java script 使用 camel casing, python 用 underscore, 這樣寫 python web 時不就得同時用兩種不同的 coding style 了?
嗯.........用 hgtk 看 log 方便太多了, 或許該在目前工作用的機器上灌 Ubuntu , 我懶得解一堆 VNC 的問題了
自動切視窗的好東西!! 寬螢幕必備軟體, 感謝 praesepe 推薦
幫忙測網站效能的公司, 華盛頓連到我的 blog 要這麼久啊, 差點還怕它測掛我寄住的機器
Selenium 的歷史, 提及 Google 也有參一腳, 難怪 Selenium 會有 gird mode
(my post) 久違的偽 Cyril。看來我今年望買電鋼琴了!!
Selenium 用 js 跨 browser 測試, 但也受限於 js 做不到一些事。WebDriver 改走硬漢路線, 針對各 browser 各刻一套配合的工具提供一致的 API, 實在太 Man 了!! 週末來玩看看。之後兩者會合併, 行程未定。
Justin 的 blog, 備忘待看
用 storeEval() / assertEval() 塞入 js code 以取得 Selenium 無法取得的資訊, 如 input field 的 value
一些簡單的例子說明如何在 selenium 內執行 js
selenium assertEval 有太多種方式存取同個位置了吧
本週末預計行程: 補 blog 文、學 js、學 jQuery、學 jQuery UI、深入學 Selenium、改 code, 希望能做得完
(my post) fcamel 雜記: 英聽和音感都需要多聽熟記
Chrome 開發者工具真強大, console、profiler、dom inspector 應有盡有
(my post) 用 vim 將 camel case 改成 underscore-based
沒找到可以用的 javascript interactive shell, Chrome 裡的不會 code completion (生一個 a = Array() 後, 由 a.<TAB> 列出所有方法) 。目前只有看到 Rhino + JLine, 但試的結果沒效 Orz
lemacf, Randy 書上提到的 Alice Project, 由制作 3D場景的方式教學生學會程設, 之後找時間來玩玩
原來玻璃渣在台灣有開站還要徵才了...lol http://tw.blizzard.com/zh-tw/
(my post) 3/20 和 Scott 閒聊的隨手記。這篇的 tags 暴走, 太多分類啦 XD
看看 w3cschools 的 js 入門, 學了基本語法但是滿腹疑問 (比方說 for .. in 的運作方式?), 看來要直接翻這篇提的兩本書才對
js book 作者談 code convention
js: 少用 new, 用 function () {...} 而不是 new Function("...") 才能讓 compiler 更早抓到錯誤
lemacf, Private Members in JavaScript
掃完基本的 js 語法了, 再來要熟悉 DOM 才能真得管用啊
來看 Google Tech Talk: JavaScript: The Good Parts
fcamel 發表在 痞客邦 留言(0) 人氣(120)
murmurby
fcamel (
fcamel)
待有點經驗後再回來看這篇。依之前的經驗, 先用最簡單的方法做 file layout, 搞大後再讀別人的經驗, 再來拆自己的 file layout 較穩。
透過 django.db.connection.queries 得知目前下過的 SQL
member field 會被 cache, function call 不會
(When using extra fields in many-to-many relations) Unlike normal many-to-many fields, you can't use add, create, or assignment (i.e., beatles.members = [...]) to create relationships
firebug 實在太強大了, 以前辛苦地調 css 是為了什麼......., 無知是一種錯啊
w3schools 愈做愈好用, 學東西查語法超方便的
(my post) 將 bash 設成 vi mode 並保有 ctrl+ l 清除螢幕的功能
忘了那裡看到的, 愛塗鴉的小孩都是未來的偉大插畫家。好強啊.......
打完球的晚上肚子都很容易餓啊, 應該再多吃一點才對
No........ 兩天忙到沒空看動畫, 雖然說有打 game
RubyGem is from Mars, AptGet is from Venus - Stake Ventures. 這標題超搞笑的 XD 系統管理員和開發者之爭 (例如 apt-get vs. gems)
fabric 不能使用 su, 總算找到和我同樣使用情境的人了, 解法是透過 sudo 指定執行者
fcamel 發表在 痞客邦 留言(0) 人氣(15)