<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 262,  comments - 221,  trackbacks - 0
    posted @ 2012-02-18 18:57 Paul Lin 閱讀(640) | 評論 (0)編輯 收藏
         摘要: 換句話說,當你找到與天賦、個性完全匹配的工作,它恰好處在上升期的市場,公司又提供了必要的授權與資源,那么你就很容易成功。反之,若這三點中的任何一點不匹配,那么你就是個loser。  閱讀全文
    posted @ 2012-02-18 18:27 Paul Lin 閱讀(667) | 評論 (0)編輯 收藏
    posted @ 2012-02-18 18:09 Paul Lin 閱讀(576) | 評論 (0)編輯 收藏
         摘要: 這是一篇集百家之長的筆記,分別參考了《Rails3 in Action》和 RVM官方文檔,ninjahideout.com 之后的安裝文檔。


    這里使用到的各種軟件包括:



    • Ubuntu

    • Virtual Box

    • Vagrant

    • RVM

    • Capistrano

    • Passenger

    • Nginx

    • MySQL

    • PostgreSQL



    還涉及到Git、GitHub、SSH等技術   閱讀全文
    posted @ 2011-11-21 16:22 Paul Lin 閱讀(1690) | 評論 (0)編輯 收藏
         摘要:   閱讀全文
    posted @ 2011-11-13 23:29 Paul Lin 閱讀(11050) | 評論 (1)編輯 收藏
    終于花了將近4個月的時間,把《Learn Rails3 by example》的E文版看完了,心中那個成就感和滿足感啊~~

    繼續下一輪的針對性學習計劃,計劃包括:

    1. Rails應用的部署和性能監控

    2. Rails的MVC架構和Cache

    3. JS和JS與Rails的結合使用

    4. Ruby的語法和特性

    5. MySQL配置和調優

    6. 搜索引擎和推薦引擎的學習

    7. NoSQL專題
     
    posted @ 2011-11-03 00:17 Paul Lin 閱讀(744) | 評論 (0)編輯 收藏
    關于RVM + REE + Ngix + Passenger + Capistrano的安裝配置,非常詳細!強烈推薦

    http://blog.ninjahideout.com/posts/a-guide-to-a-nginx-passenger-and-rvm-server
    posted @ 2011-11-03 00:14 Paul Lin 閱讀(715) | 評論 (0)編輯 收藏
         摘要:   閱讀全文
    posted @ 2011-10-03 17:36 Paul Lin| 編輯 收藏

    在上一篇《自動化測試狂人的Rails測試優化之路》中,我演示了如何使用Guard-spork, Guard-rspec和Spork, Rspec來進行自動化測試和集成測試。

    今天發現存在一個bug,那就是當model文件被修改后,雖然會重新啟動rspec執行測試。但是測試的代碼不是最新的,而是繼續沿用已經加載到內存的model文件。網上搜索一番后,發現問題的原因是spork的預加載問題。于是在spork的spork.each_run方法中加入如下代碼,重啟sprok,解決問題

    Dir["#{Rails.root}/app/models/**/*.rb"].each do |model| 
      load model
    end

     

    posted @ 2011-09-06 14:21 Paul Lin 閱讀(696) | 評論 (0)編輯 收藏

    假如我們把attr_accessible設置成只有name是可以訪問的,然后在Console中執行如下命令:

    ruby-1.9.2-p180 :001 > user = User.create(:name => "Paul", :email => "pengpenglin@163.com")
     
    => #<User id: 1, name: "Paul", email: nil, created_at: "2011-09-03 04:42:59", updated_at: "2011-09-03 04:42:59"> 
    ruby-1.9.2-p180 :002 > user.email
     
    => nil 
    ruby-1.9.2-p180 :003 > user.email = "bob@163.com"
     
    => "bob@163.com" 
    ruby-1.9.2-p180 :004 > user.email
     
    => "bob@163.com" 
    ruby-1.9.2-p180 :005 > user.save
     
    => true 
    ruby-1.9.2-p180 :006 > user.reload.email
     
    => "bob@163.com" 
    ruby-1.9.2-p180 :007 > User.find(1)
     
    => #<User id: 1, name: "Paul", email: "bob@163.com", created_at: "2011-09-03 04:42:59", updated_at: "2011-09-03 04:43:31"> 

    不是not accessible 嗎?怎么email還是能夠改變?

    posted @ 2011-09-03 12:51 Paul Lin 閱讀(1235) | 評論 (1)編輯 收藏
         摘要: 我們要修改的文件會涉及到4個:
    A. Gemfile
    B. .rspec
    C. Guardfile
    D. rspec_helper.rb  閱讀全文
    posted @ 2011-08-31 00:44 Paul Lin 閱讀(1847) | 評論 (1)編輯 收藏
         摘要: 從RailsCast.com篩選出來的視頻  閱讀全文
    posted @ 2011-08-29 15:58 Paul Lin 閱讀(588) | 評論 (0)編輯 收藏
         摘要: NERDTree.vim:顯示目錄樹和標簽(特別有用)
    Rails.vim:這個不說了,Rails開發必備
    Snipmate.vim:代碼片段自動完成,Rails開發神器之一
    FuzzyFinder.vim:模糊查找,使用頻率最高的插件之一
    TabBar:BufferExpoloer的增強版,用來標識打開的文件的
    Supertab.vim:文本自動完成
    Rubytest.vim:vim下的集成測試工具  閱讀全文
    posted @ 2011-07-26 12:46 Paul Lin 閱讀(3415) | 評論 (0)編輯 收藏
    BDD style unit testing video and slides@RubyKaigi 2011

    How I Test

    watchr 靈活的Continuous Testing測試工具可替代autotest...

    不要盲目的 BDD / TDD,我對寫測試的看法
    posted @ 2011-07-19 20:06 Paul Lin 閱讀(361) | 評論 (0)編輯 收藏
         摘要: 針對這種情況,我們可以使用一個名為Guard的gem,來自動監控spork中預加載的文件發生變化后,自動重啟spork

    1).在Gemfile中增加gem 'guard-spork'
    2).在shell中gem install libnotify / gem install inotify
    3).bundle install
    4).guard init spork
    5).guard start  閱讀全文
    posted @ 2011-07-15 18:12 Paul Lin 閱讀(426) | 評論 (0)編輯 收藏
         摘要: 首先我們來理解Autotest的觸發機制:

    1. 要有一套測試的框架和工具(Console,GUI)

    2. 要有可以感知被測試對象發生變化的機制

    3. 要有自動加載被測試對象和環境數據的機制

    4. 要有將測試結果展示給用戶的機制  閱讀全文
    posted @ 2011-07-15 00:14 Paul Lin 閱讀(648) | 評論 (0)編輯 收藏
         摘要: 網上google了一下,發覺又是一個Rails和其他gem不兼容的問題,只要把rake的版本設置為0.8.7就可以了。  閱讀全文
    posted @ 2011-07-03 21:28 Paul Lin 閱讀(1422) | 評論 (1)編輯 收藏
    posted @ 2011-06-25 13:40 Paul Lin 閱讀(358) | 評論 (0)編輯 收藏
    posted @ 2011-06-18 23:02 Paul Lin 閱讀(323) | 評論 (0)編輯 收藏
         摘要: ....
    甲:嗯....可是這樣看起來,我完全看不到敏捷的任何好處啊
    乙:嗯。實際上,我更喜歡RUP,雖然麻煩但很清楚
    ....  閱讀全文
    posted @ 2011-06-01 23:31 Paul Lin 閱讀(923) | 評論 (1)編輯 收藏
         摘要: 來自JE上的一篇Rails實戰文章,很不錯!  閱讀全文
    posted @ 2011-05-27 16:47 Paul Lin 閱讀(856) | 評論 (0)編輯 收藏
    QCon 2011大會的PPT下載。其中有我最感興趣的架構設計和NoSQL技術:


    企業敏捷轉型之路
    http://www.everbox.com/f/Rgo5syChjzuLeS6wJEAQZwvkje


    深入淺出NoSQL
    http://www.everbox.com/f/TQMXMI6asloYQFJLIxGy2WIIyo


    設計優良的架構
    http://www.everbox.com/f/XCZvXDTbft6ZlK8TsUlMWfVBjO


    Web性能與擴展
    http://t.sina.com.cn/1746173800/wr4mQk5Iwn


    來自一線項目的實戰經驗
    http://www.everbox.com/f/FZHFfXanIGZOasZsqSZpFuSSFk


    HTML5開發平臺
    http://www.everbox.com/f/qeD2qvae9LVRXCA3HsNq2ztiBY
    posted @ 2011-04-21 16:58 Paul Lin 閱讀(563) | 評論 (0)編輯 收藏
         摘要:   閱讀全文
    posted @ 2011-03-23 11:55 Paul Lin 閱讀(491) | 評論 (0)編輯 收藏

    原文:http://www.javaeye.com/news/20399

    大多數管理者都會陷入放權的困境。你很忙,每件事都要親力親為。你很清楚自己需要別人幫忙,但你沒有足夠的時間尋找并培訓別人來幫你。所以,你更加努力地工作,直到自己崩潰。

      下面這個故事講述了我如何放權。

      2001年,CD Baby成立三周年。我已有8名員工,但所有其他事情仍然需要我自己做。每周7天,從上午7點工作到晚上10點,自己仍然要經手每件事情。

      每隔5分鐘,就會有員工向我請示:

    • “Derek,有個家伙想修改網站上已經存在的相冊,我該怎么跟他說呢?”
    • “Derek,我們可以接受電匯作為一種支付方式嗎?”
    • “Derek,有個人今天下了兩個訂單,他想知道我們可不可以給他一起郵寄過去,并且把節省的郵費給他退回去?”


      如果整天不停地回答問題,那么什么事也做不成。我感覺我好像是每天去上班,然后在過道里坐著,全職回答員工的問題。

      我的忍耐已經到了極限,我不再去辦公室,并且關掉了手機。隨即,我意識到自己正在逃避問題,而不是去解決問題。我必須解決這個問題,要不然就壞了。

      經過一夜的反思,我最終在思想上接受放權。

      我必須放權,我不是我公司的必需品,沒有我,我的團隊照樣也可以經營公司。

      第二天,我一進門,有人就請示我,“Derek,我們昨天收到了一個客戶送來的CD,但他今天改變了主意,他想讓我們退回他的CD。我們給他郵寄了回去,但他又問我們能不能退還他的安裝費用,因為他從未登錄過網站。”
    這一次,我并沒有僅僅回答了他的問題,而是把大家都召集起來。

      我給大家解釋了事情的經過,和需要解決的問題。我回答了問題,但更重要的是,我解釋了自己思考的過程和回答背后的理念。

      “是的,我給他全額退款了。這樣,我們會受到一點損失。但是,最重要的是經常做一些能讓顧客高興的事,只要不過分就行。像這樣一個小小的表示對我們大有裨益,他可能會因此告訴他的朋友們,我們是一家不錯的公司。每個人都要記住,幫助音樂愛好者是我們的首要目標,利潤是其次。你們將來可以根據這條準則來自己做決定,我會完全同意。做那些能讓他們高興的事。要確保每個跟我們做生意的人都會滿意而歸。”

      我一一問了每個人,確保他們都理解我的回答。

      我讓一位員工起草一本手冊,把這種情況的處理方式記錄下來,并附上解決這種問題的理念。

      然后,每個人都回去工作了。

      十分鐘之后,新的問題,相同的過程:

    • 1. 召集所有人
    • 2. 回答問題,解釋理念
    • 3. 確保每個人都理解整個過程
    • 4. 讓一名員工把這條記錄在冊
    • 5. 讓他們知道,下次沒有我他們也可以這樣處理問題

      2個月之后,沒有員工請示了。

      然后我想員工們展示了事情的最后一部分,也就是我自己的工作。作為學習的一部分,他們也需要把這個記錄在冊,然后給其他人看(由教而學)。


      現在,公司完全不需要我了。我開始在家里工作,不再去辦公室了。我甚至教過他們我關于雇傭新員工的思考過程和理念。所以,有兩個新員工是完全由他們發現、面試、雇傭以及培訓的。他們用那本手冊來讓每個新員工理解這種理念以及它的歷史,并且知道怎么自己做決定。我每周去視察一次,確保一切正常。確實一切正常,他們甚至都沒有什么事情向我請示。

      因為業務由我的團隊負責運作,我可以心無旁騖地改進業務。我去了加利福尼亞,只是弄清楚事情由他們運作。

      我現在仍然每天工作12個小時,但是,我把所有時間都花在業務改進、優化以及創新上。對我來說,這才是最有趣的事情。這是在玩,不是工作。

      我放權之后,公司市值在四年里從一百萬增長到兩千萬。管理者和企業家之間有很大的不同。作為管理者你會感覺很自由,直到你意識到如果自己不工作,公司就會倒閉。

      要成為一名真正的企業家,你要確保自己能夠離開一年,而當你回來時,你的公司比你離開時運營得更好。

    posted @ 2011-03-20 10:22 Paul Lin 閱讀(340) | 評論 (0)編輯 收藏
    第1篇:NoSQL開篇——為什么要使用NoSQL

    第2篇:關系數據庫還是NoSQL數據庫

    第3篇:NoSQL架構實踐(一)——以NoSQL為輔

    第4篇:NoSQL架構實踐(二)——以NoSQL為主

    下載:NoSQL實戰

    重點推薦第3篇的最后一種架構:


    特別適合SNS的業務架構:把某些關系key存儲在MySQL中,用于后續的業務數據分析和挖掘,而把大量的文本和圖片存儲在類似MongoDB這樣的文檔型NoSQL。可以利用關系型數據庫的強有力的計算能力專注于數據分析和挖掘,而用NoSQL解決數據的讀寫和存儲瓶頸。

    由于NoSQL在線性擴展,分布式部署方面有先天優勢,可以有效地改善由于數據規模擴大時壓力問題,同時關系型數據庫存儲的數據大大減少,也有利于數據的備份和同步。
    posted @ 2011-03-19 22:45 Paul Lin 閱讀(437) | 評論 (0)編輯 收藏
    http://www.slideshare.net/mongodb/mongodb-at-the-silicon-valley-iphone-and-ipad-developers-meetup?from=ss_embed
    posted @ 2011-01-13 00:00 Paul Lin 閱讀(677) | 評論 (0)編輯 收藏
    http://my.safaribooksonline.com/book/web-development/ruby/9780132480345

    很不錯,居然全部都可以免費看。

    posted @ 2010-12-12 23:56 Paul Lin 閱讀(488) | 評論 (0)編輯 收藏
         摘要: 在本節,你將學到如何撰寫合乎邏輯的、緊湊的標記,使得你有能力將帶寬流量降低50%左右,在減少服務器負擔和壓力的同時,減少網站的加載時間。通過去除那些表現元素,并改掉那些沒有任何好處的壞習慣,我們就可以達到上述的目的。

    這些壞習慣折磨著網絡中的許多站點,特別是那些將 CSS 代碼與主要基于表格的布局混合在一起的站點。這種做法笨拙且不經濟,即使是對于那些在其他領域很有經驗的設計師來說。同時,出現這個問題的幾率是均等的,不論是那些手寫代碼的站點,還是利用可見編輯工具,比如 Dreamweaver 和 GoLive,來創建的站點。

    本節會提出這些常見的錯誤,這樣你就可以識別和防范它們,并且學會如何改正錯誤。我們詳細闡述唯一標識符屬性 (id) - ,并展示它如何使你可以編寫極其緊湊的 XHTML 代碼,不論你創建的是混合布局還是純粹的 CSS 布局。  閱讀全文
    posted @ 2010-11-18 15:25 Paul Lin 閱讀(544) | 評論 (1)編輯 收藏
         摘要: 我確實希望本節的內容可以激發你的興趣,并鼓勵你去嘗試。為什么這么說呢?因為一旦你掌握了本章包含的簡單容易的理念,你就會重新思考網頁運作的方式,并開始改變建造它們的方法。然而我并不希望你只是將代碼重新改寫一遍。我希望你可以實實在在地以另一種方式思考和工作。

    另一方面,重構才是 XHTML 真正的意義。  閱讀全文
    posted @ 2010-11-18 14:58 Paul Lin 閱讀(339) | 評論 (0)編輯 收藏
    1. 詳解CSS選擇器、優先級與匹配原理

    2. 5步讓你的CSS樣式表成功減肥

    3. 10個CSS簡寫技巧讓你永遠受用

    4. CSS的聲明中,對于選擇器的描述方式有多種不同的寫法和適用范圍:

        A. 標簽名選擇器聲明方式:p {color: red;} --- 選中某種元素

        B. 分組選擇器聲明方式:h1, h2, h3 {color: red;} --- 選中固定數目的多種元素

        C. 派生選擇器聲明方式:li td {color: red;}   --- 選中某種上下文關系元素

        D. ID選擇器聲明方式: #title {color: red;} --- 選中指定id元素

        E. Class選擇器聲明方式: .title {color: red;}   --- 選中不定數目的多種元素

      F. ID派生選擇器聲明方式: #title table {color: red;} --- 選中指定id下特定上下文關系元素

       G. Class派生選擇器聲明方式: .title table {color: red;}  --- 選中多種類型下特定上下文關系元素

       H. 類型選擇器聲明方式:table.title {color: red;}  --- 選中某種元素的某種類型

       I. 偽類選擇器聲明方式:a:visited {color: red;}  --- 選中某種狀態下元素

       J. 類型偽類選擇器聲明方式:a.news:visited {color: blue;}  --- 選中某種元素的某種狀態下的類型

    posted @ 2010-11-09 10:45 Paul Lin 閱讀(373) | 評論 (0)編輯 收藏
         摘要:   閱讀全文
    posted @ 2010-11-05 16:20 Paul Lin 閱讀(329) | 評論 (0)編輯 收藏

     http://www.theserverside.com/news/1363955/Taking-the-load-off-OSCache-helps-databases-cope

    posted @ 2010-11-03 17:08 Paul Lin 閱讀(380) | 評論 (0)編輯 收藏
         摘要: OSCache是一套用Java編寫的緩存框架(或者說解決方案),它主要用于頁面緩存,Servlet緩存,或者其它任意的對象。OSCache使用基于內存或者磁盤的緩存策略。不同的策略有不同的適用場合:基于內存的緩存非常快,但是不能持久化,而且不能存儲大量數據,適合頻繁訪問的數據。基于磁盤的緩存可以分為使用文件和數據庫緩存,它的速度比內存緩存慢,但可以被持久化,可以在服務器重啟重啟,數據庫奔潰時仍然運作,而且可以存儲較多的數據。適合于大量非頻繁訪問的數據,或者復雜計算結果的緩存。  閱讀全文
    posted @ 2010-10-22 21:39 Paul Lin 閱讀(529) | 評論 (0)編輯 收藏
    最近由于工作學習需要,開始研究緩存技術。從網上找到了不少的資料,按照時間的順序排列,也可以從中看出緩存技術,框架已經工具的演變歷史。

    基本知識:《緩存技術》: http://blog.csdn.net/fanweiwei/archive/2007/01/07/1476131.aspx

    《緩存漫談》: http://www.tkk7.com/BlueDavy/archive/2006/06/02/50076.html

    《網站緩存技術》:http://dcross.javaeye.com/blog/721468

    《緩存技術淺談》:http://robbin.javaeye.com/blog/770553
    posted @ 2010-10-19 16:12 Paul Lin 閱讀(447) | 評論 (0)編輯 收藏
         摘要: 介紹緩存的基本概念和常用的緩存技術,給出了各種技術的實現機制的簡單介紹和適用范圍說明,以及設計緩存方案應該考慮的問題  閱讀全文
    posted @ 2010-10-19 11:09 Paul Lin 閱讀(509) | 評論 (0)編輯 收藏
    <2010年10月>
    262728293012
    3456789
    10111213141516
    17181920212223
    24252627282930
    31123456

    常用鏈接

    留言簿(21)

    隨筆分類

    隨筆檔案

    BlogJava熱點博客

    好友博客

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 日韩av无码久久精品免费| 国产A在亚洲线播放| 亚洲 日韩经典 中文字幕| 最近2019中文字幕免费大全5| 成人免费视频77777| 亚洲一区二区三区在线| 在线a级毛片免费视频| 亚洲中文字幕无码专区| 一级做a爰全过程免费视频毛片| 222www在线观看免费| 亚洲国产理论片在线播放| 久久久www成人免费毛片| 亚洲欧美熟妇综合久久久久| 成年女人视频网站免费m| 亚洲成av人片在线天堂无| 免费无码一区二区三区| 亚洲国产综合精品| 成人毛片免费视频| 色播亚洲视频在线观看| 国产精品内射视频免费| 久久精品国产亚洲AV麻豆不卡| 亚洲国产精品无码第一区二区三区 | 久久久久久久综合日本亚洲| 亚洲免费人成在线视频观看| 亚洲一区二区三区高清| 精品免费久久久久国产一区 | 亚洲AV无码乱码在线观看| 亚洲综合校园春色| 四虎AV永久在线精品免费观看| 亚洲三级在线免费观看| 日韩免费a级在线观看| 亚洲伦理中文字幕| 亚洲人成色7777在线观看不卡 | 一边摸一边爽一边叫床免费视频| 国产精品怡红院永久免费| 亚洲VA中文字幕不卡无码| a毛片成人免费全部播放| 亚洲欧洲日产国码www| 99蜜桃在线观看免费视频网站| 成人亚洲性情网站WWW在线观看| 国产偷国产偷亚洲高清人|