RSS feed [root] /



title search:


Fri Jul 21 00:39:07 HKT 2017

(google search) (amazon search)
download zip of files only

Tue Feb 28 00:03:14 HKT 2017 From /weblog/science/animal


about-search-and-rescue-dogs -[..]arch-and-rescue-dogs-youll-want-to-know/

(google search) (amazon search)

Sat Feb 25 18:26:46 HKT 2017 From /weblog/software_engineering/testing

best practices

Consider the risk of not being tested -[..]sting-on-toilet-risk-driven-testing.html

Fidelity, Resilience, Precision -[..]testing-on-toilet-effective-testing.html

Attributes that unit test should have: Functionality, Accuracy, Instant, Locator -

Isolation -[..]/2012/04/is-your-unit-test-isolated.html

Tips of keeping unit tests running fast -

Testing Patterns -

Continuously to break thing so that we know our system is solid -[..]11/04/working-with-the-chaos-monkey.html

First rule -[..]08/10/01/nothing_is_too_trivial_to_test/

Test first/last is not important? Unit test either? What do you think?

* The name of the test should describe the requirement of the code
* There should be at least one test for each requirement of the code. Each possible path through of the code is a different requirement#
* Test the goal of the code, not the implementation[..]AppQuality&asrc=EM_NLN_761453&uid=703565[..]og/2007/08/how-not-to-run-beta-test.html

The teaser: Fast, Isolated, Repeatable, Self-validating, and Timely. -[..]es/2007/08/02/not-a-task-but-an-approach

Corner cases -[..]s/2007/02/testheuristicscheatsheetv1.pdf

One of the targets of TDD coding -[..]e-code-is-about-managing-complexity.aspx

Design for unit test -[..]es/content/DesigntoUnitTest/article.html

Push and Pull approach -

When not to test -

Test the story, rather than the implementation -[..]ving-to-scenario-based-unit-testing.html

Test the configuration -[..]TSS10ctqa&asrc=EM_NLN_8746433&uid=703565

Feel the deep synergy of design and test constraint -[..]athers_blog/2007/09/the-deep-synerg.html

Another set of principles for automated testing -[..]of-principles-for-automated-testing.html

Priority for tester -[..]

A lot of links -[..]-links-biased-toward-exploratory-testing[..]nit-tests-5-principles-for-unit-testing/

Some information and suggestion about setting up a local integrated testing environment -[..]

Virtual Panel: Code-to-Test Ratios, TDD and BDD -

A test is complete when its body contains all of the information you need to understand it, and concise when it doesn't contain any other distracting information. -[..]ting-on-toilet-what-makes-good-test.html

Discussion about naming the tests -[..]14/03/17/getting-junit-test-names-right/[..]ting/writing-clean-tests-naming-matters/[..]esting-on-toilet-test-behaviors-not.html <- Test behaviour, not method. This will make your tests more resilient since adding new behaviors is unlikely to break the existing tests, and clearer since each test contains code to exercise only one behavior.

Tips on having better assertion or cleaner test -[..]ur-test-code-with-custom-assertions.html[..]-friday-most-internal-dsls-are-outdated/[..]ertions-with-a-domain-specific-language/

Good to prevent setup and tearDown?

#1 Treat Test Code as Production Code
#2 Use Test Patterns to achieve great readability
#3 Avoid Unreliable Tests
#4 Test at The Appropriate Level
#5 Do Use Test Doubles[..]insights/blog/write-better-tests-5-steps[..]om/core-java/junit/junit-best-practices/

Document ‘Why’, specify ‘What’, automate ‘How’ -[..]/agile/2016/05/24/large-test-suites.html

(google search) (amazon search)

Thu Feb 23 18:39:36 HKT 2017 From /weblog/misc


(google search) (amazon search)

Thu Feb 23 16:14:03 HKT 2017 From /weblog/design/interview


Interview with JOOQ founder -

(google search) (amazon search)

Thu Feb 23 00:47:01 HKT 2017 From /weblog/learning


It's never too late to reinvent yourself.txt -[..]ing_passionate_users/2005/01/you_20.html

Related interview -[..]/06/16/jill-abramson-commencement-speech[..]sons-commencement-speech-at-wake-forest/

How to improve yourself -[..]w-to-impress-an-interviewer-c210d9d8e84a

1. Connect to Your Emotions
2. Email Prompts and Reminders to Yourself
3. Get an Accountability Partner
4. Start a Mastermind Group[..]ccountable-for-achieving-your-goals.html

Don't set the goal too high -https:/[..]%88%E8%A8%82%E5%BE%97%E5%A4%A0%E4%BD%8E/

(google search) (amazon search)

Wed Feb 22 15:10:51 HKT 2017 From /weblog/database/vendor


Few distributed SQL DB vendor information -

Approximation DB -[..]e-200x-faster-without-having-to-pay.html

Discuss and compare difference technology of querying journey(log) data -[..]on-log-and-data-storage-query-techniques

(google search) (amazon search)

Tue Feb 21 17:44:20 HKT 2017 From /weblog/design


A paper show the evolution of a DSL -

A stock trading order example of DSL -[..]05/designing-internal-dsls-in-scala.html

What is the difference between API / DSL if we don't write a parser for our language? From Martin Fowler's blog - , it is mentioned:
Piers Cawley makes the point that a key characteristic of DSLs is their narrow focus on a domain.
I think this is a very good summary, usually if most of the APIs are getXXX() , setXXX(), loadXXX() , createXXX() ........ Then we mostly design APIs that expose low level detail to the API user to work on, which, is work but user probably work nicer if we can come up with language like API that allow users to do their work in more descriptive level.

I think if API design like that usually it will reduce the code duplication, what ever real duplication or conceptual duplication. It probably already apply "Tell, don't ask" style -

A discussion about applying "Tell, don't ask" which lead to message passing architecture -[..]07/10/do_messages_want_to_be_asynchr.php

And other discussion about "Tell, don't ask"[..]/2008/11/demeters-law-tell-dont-ask.html[..]part-two-demeters-law-tell-dont-ask.html[..]rt-three-demeters-law-tell-dont-ask.html

One good sample with explaination -[..]-it-really-domain-specific-language.html

Few links -

From CRUD to DDD -[..]2/15/from-crud-to-domain-driven-fluency/

I like this: "XML abuse reduction (conducting an “XML Intervention”)" -[..]ps-internal-dsl-draft-outline-notes.aspx

DSL maybe the result of encapsulation -

Excellent implementation of extending java yourself -

How DSL method named -[..]he-java-fluent-api-designer-crash-course

(google search) (amazon search)

Tue Feb 21 17:42:46 HKT 2017 From /weblog/software_engineering/team


Servant Leadership -[..]t-be-my-style-of-servant-leadership.html , similarly, what a leader should do is helping other to do better, not to be the best of the team -[..]/03/onthings-manga-taught-me-leadership/[..]what-do-you-look-for-in-a-servant-leader

Mentorship -[..]entorship-in-software-craftsmanship.html

Keep focus, or lose -[..]0/how-steve-jobs-influenced-googles.html

The anti-pattern and suggestion about new joiner -[..]-you-will-face-as-a-software-team-l.html

Believe me, the objective was not to make decisions, but to create the right environment so that the right decision would be made.

A nice set of questions to ask for a leader -[..]3/questions-on-influence-and-growth.html

In short, don't put your shoes on others' foot -[..]earned-in-the-army_Printer_Friendly.html

4 types of leadership style, well, I think he model leadership a little too simple -[..]s-the-best-leader-for-the-software-team/

Your experts are spending all their time mentoring novices. Therefore:

Put one expert in charge of all the novices, let the others develop the system. -[..]010/2/25/organizational-pattern-day-care

What is the key Characteristics of great team -

This is very insightful obversation, in many time we look into something work in short term but not really solve the problem, a discussion about why so many people like micromanagement even if they know it is bad -[..]m/2011/01/programmers-and-micromanaging/[..]best-thing-you-can-do-for-your-team.html <- is provide required information, probably more transparent.

Don't make me think... but you have no business not allowing me to think if I choose to. -[..]allow-me-to-think-just-dont-make-me.html

How To Lead Clever People, actually I am double about this, let's see -

How to grow the leadership -[..]og/mpd/2012/11/nurturing-leadership.html

他在公司的名言是「When you give, you get」。他在上海成立科研中心,大方讓上汽參與,他認為各懷鬼貽的氣氛不可能做出成績。合資公司理論上是獨立個體,合資公司員工應把合資公司利益放到最前,而不是自己原屬公司的利益,但很少人做得到。慢慢下來,上汽也逐漸對墨菲產生尊重。


10. 永遠記得,做出決定前要先綜觀全局。

9. 否定別人跟切換開關一樣容易。但你最好拼死抵抗這種衝動,因為你也曾經做過蠢事。你做過爛決定,然後學習、成長,別人也一樣。

8. 掃地、擦桌、關燈。哪裡有漏洞要補就去補——即便那很瑣碎、沒人會注意。你必須做這些事去造福你的產品、你的公司,以及所有你們團隊共同打造的,令眾人驚艷、神奇的事物。

7. 你無法做所有的事。閉上眼睛,向後仰倒,學會信任。

6. 顯然有某種更為有效的方法能處理你正在做的事。是什麼呢?在每天回家的路上反覆思考吧。

5. 找出總是在依賴你的人,想想要怎麼做才能協助他們,讓他們自力更生。或許你覺得當個壟斷市場的鮭魚供應商很重要,但如果小鎮的所有人都學會捕魚,便能將你解放出來去做別的事。像是學習種小麥,或是如何馴服那些可愛的小狼。

4. 別說任何對當下討論沒有貢獻的話。你的聲音並非悠揚到絕對必須被聽見。

3. 做得出最好的決定比不上處在得以確保做出更多最佳決定的流程。

2. 就像你經常發表意見那樣,多說感謝和鼓勵的話語。

1. 最重要的是:永遠要掃除障礙物。那怕只是玩玩手指、看看窗外的雲,也別讓你那愚蠢、幼稚的自我阻礙團隊前進的腳步。[..]oftware-leadership-6-read-every-checkin/[..][..]op-5-mistakes-for-first-time-tech-leads/

How to lead with diplomatic -[..]how-to-be-both-assertive-and-diplomatic/

Dr. Nico Rose cites research that finds that happy people tend to be more effective leaders. -[..]-your-money-managing-your-life-part-one/

(google search) (amazon search)

Sat Feb 18 16:59:08 HKT 2017 From /gallery/Home/YimKan/PanaVideo


(google search) (amazon search)

Sat Feb 18 16:57:41 HKT 2017 From /gallery/Home/YimKan/PanaVideo


(google search) (amazon search)

Thu Feb 16 22:45:06 HKT 2017 From /weblog/languages/c


(google search) (amazon search)

Thu Feb 16 10:04:23 HKT 2017 From /weblog/database/vendor


SQL 2005 JDBC fix the resultset re-read throws exception problem. However, you need to use executeUpdate() for insert,update and delete instead of execute() for SQL 2005 JDBC, otherwise will throw exception on this.

Other that, statement.executeBatch() will throws exception:[..]kid=e13a8009-7466-4803-ba19-6bfd4b5f8966

Update of newer version -

New function of SQL server 2014, In-Memory Optimization tables, suppose to be faster? - MOT table also support native compiled query - , and lock free write?

From microsoft, Use the columnstore index to achieve up to 10x query performance gains over traditional row-oriented storage, and up to 7x data compression over the uncompressed data size. -

A tool from M$ to help sql server user to manage change of database: . Other similar product is DBGhost, also only work for SQL server

There is a free version of SQL server 2005 call SQL server express, which just like MSDE

Here is a comparison:[..]le/ArticleID/49618/sql_server_49618.html , may be we can use that instead of MSDE 2005 and discoutinue support of SQL server 2000 so that we can test one thing less?

Import CSV to SQL server -[..]oad-comma-delimited-file-csv-in-sql.html

Shriking DB cause performance problem... not sure how long this finding is hold -[..]eases-fragmentation-reduces-performance/[..]ver-storage-internals-part-1-basics.aspx

Get the metadata -[..]-metadata-from-sql-server-catalog-views/

Date functions -[..]roduction-to-sql-servers-date-functions/

Enhancement of 2016 -

Tool to rescue sql server -

(google search) (amazon search)

Thu Feb 16 00:11:57 HKT 2017 From /weblog/political


羅斯福 (Franklin D. Roosevelt, 1882-1945) -[..]%9A%E5%B0%8D%E4%BA%86%E4%BB%80%E9%BA%BC/

Michael Bloomberg -

Many leaders are the opposite—forceful and even dogmatic. And yet, they are very successful -[..]from-using-crucial-conversations-skills/

(google search) (amazon search)

Thu Feb 16 00:03:22 HKT 2017 From /weblog/design/pattern


(google search) (amazon search)

Wed Feb 15 17:35:52 HKT 2017 From /weblog/java/libraries


Discussion of difference Java base object to object mapper -[..]013/10/java-object-to-object-mapper.html

Some information about JOOQ -

(google search) (amazon search)

Tue Feb 14 18:00:18 HKT 2017 From /gallery/Home/YimKan/PanaVideo


(google search) (amazon search)

Mon Feb 13 14:38:25 HKT 2017 From /weblog/unix


Web base vim as tutorials -

History of VIM -[..]f-productivity-vims-20th-anniversary.ars

Guide for editing text object, most already familiar with using 'w' for word editing, this blog discuss more about using 'p' for paragrahy and other related stuff. -[..]7/vim-text-objects-the-definitive-guide/

Seven habits of effective text editing , a lot of nice tip of using vim, like hlsearch , omni-completion

vimdiff tips -[..]cles/2008/04/30/vim-as-a-diff-merge-tool[..]9899-uid-36931-do-showone-type-blog.html

How to regex with line number -

cheat sheet of jumping around source code -[..]inux-HOWTO/C-editing-with-VIM-HOWTO.html

Nice analysis of good programming environment -[..]why-i-switched-from-textmate-to-vim.html

Creating macros in vim - <- introduction to Command-T and FuzzyFinder

Some VIM tips:

Essential Vim editor navigation commands
Vim search and replace – 12 powerful find and replace examples.
How To add bookmarks inside the Vim editor
How To record and play inside the Vim editor
Correct spelling mistakes automatically inside the Vim Editor
Automatic word completion using Ctrl-X
Enable thesaurus option in the Vim editor
Vim autocommand magic. Add custom header to your files automatically.
Convert Vim editor to a beautiful source code browser.
Use the Vim editor as a bash IDE, or C/C++ IDE, or Perl IDE.[..]com/2016/04/19/vim-commands-cheat-sheet/

ctrl+w, ctrl+w , vimdiff switch folder -

tutorial -[..]editor-in-unix-example-tutorial-and.html[..]s/3mfvdg/how_do_i_go_about_learning_vim/

Compilation plugin -

Highlight multiple searches at the same time, each with a different color. -

C/C++ IDE -[..]10/vim-plugin-for-navigating-c-with.html

Evil, putting vi in emacs -

Fixing syntax at solaris, "export TERM=xtermc", ":syntax enable" -

Graph your Vim undo tree in style. -

Introduction to Selecta and Command-T, tool for fuzzy mapping and open files easier -[..]d-the-vimrc-file-be-located-on-windows-7

Open Visual Studio config as XML -!topic/vim_use/HzVM9tjJP08

Snippert library ( e.g. function template ) -[..]3h7lca/which_snippet_library_do_you_use/[..]t_are_your_musthave_configs_and_plugins/[..]mments/2w22gf/edit_google_docs_with_vim/[..]nts/3ijsi2/original_post_a_vimrc_primer/[..]an_autocomplete_plugin_if_yes_which_one/

gUU to turn whole line upper case, and guu to turn whole line lower case -[..]_guu_makes_an_entire_line_lowercase_and/

can use :TOhtml to turn a text file to HTML -

set encoding=utf-8 -[..]how_to_reliably_switch_to_using_utf8_by/

If you like to test the regex for vi, can refer to this -[..]/blog/vim-creator-champions-charityware/

Another blog about using vim as IDE -

(google search) (amazon search)

Sat Feb 11 22:53:30 HKT 2017 From /weblog/entertainment


讓我狠狠想你——王家衛電影的思念與愛情 -[..]%9D%E5%BF%B5%E8%88%87%E6%84%9B%E6%83%85/

十大最浪漫電影 -[..]A3%E5%B9%B4%E8%8F%AF-%E4%B8%8A%E6%A6%9C/

不按牌理出牌!影史10大即興演出 -[..]02/top-10-deadliest-horror-villains.html

歎為觀止的一鏡到底!影史著名12顆長鏡頭畫面 -

你是動作科幻迷嗎?影史40把知名槍械大集合! -

「我要打十個!」 回顧甄子丹7場精彩武打場面 -

喜劇之外:班史堤勒 -

中土世界的魔法師:彼得傑克森 -

Famous robots -

Robin Williams -[..]-actor-and-comedy-genius-robin-williams/[..]ilarious-stand-up-comedy-jokes-from.html

鈕承澤 -

Matrix -[..]hings-you-probably-didnt-know-about.html[..]/what-does-an-engineer-see-in-the-matrix

[專題] 從黑澤明的《七武士》淺談剪接在電影發展裡的奧祕 -

About Pulp Fiction -

Johnny Deep -

Inception -

Evolution of sound in movie -

聽到聲就知影!8 首知名角色登場配樂! -

[專題] 跟著老師動疵動!十部你不能錯過的歌舞電影 -

[專題] 最熟悉的陌生人:六位你一定要認識的電影片頭設計大師 -

傑克葛倫霍, Jake Gyllenhaal -

About "Back to the future" -[..]facts-you-probably-never-knew-about.html

Star war fact -[..]s-to-bring-out-your-inner-jedi/?view=all

Alan Rickman -[..]should-know-about-alan-rickman/?view=all

10 個不露骨卻讓人臉紅心跳的床戲-

(google search) (amazon search)

Sat Feb 11 22:01:54 HKT 2017 From /weblog/business


Using game as training - , and drawing for communication -

No control, but empower -[..]01/some-thoughts-on-managing-people.html

10 rules of success, not really very insighful ideas but still nice to take a look:

Another 10 tips for product manager -

An interesting example of how people gaming the reward system -

Interview of Jeff Bezos and learn about his management style -

Dos and Don'ts for line manager -

8 elements of dysfunctional management -[..]lements-of-dysfunctional-management.html

Talk verse Action:
All Talk and No Action -[..]ectives-go-wrong-all-talk-and-no-action/
All Action and No Talk -[..]ectives-go-wrong-all-action-and-no-talk/
A suggestion of taking the balance -

Discussion about issues of managing remote teams -

Team building with the way of "pointy haired boss" ?? -

Promote the problem maker to make them better?? Is that work? - May be it is true that problem maker are innovator, give them more work and reward can change their negative performance to more than expected positive performance.

The most consistent and intense complaint from team members was that their team leaders were unwilling to confront and resolve problems associated with poor performance by individual team members.

Manage to learn -[..]dd-80e9-0000779fd18c.html?nclick_check=1

Suggestion about how to delegate to other, spend time to explain to vision -[..]E6%88%96%E8%80%85%E5%B4%A9%E6%BD%B0.html

Allocate free time to employee is good for company -[..]12/08/today-is-goof-off-at-work-day.html

What management should be -[..]-people-can-you-manage-as-a-manager.html

1. 清楚意識到您的創新意圖
2. 為彈性的工作時間設計一個架構
4. 測量什麼是有意義的
5. 給予「無實質價值」的報酬
6. 象徵化
7. 不是標準化地複製他人的創新行為[..]6-ways-to-create-a-culture-of-innovation

1. 在公司裡跟別人吐露的心事越少,對你越好。你以為是無傷大雅的閑聊,其實有可能會造成嚴重傷害。把你的猜測和擔憂都埋在心裡吧。

2. 務必管理好和下屬的關系。花時間和公司裡的較低層員工在一起,盡量對他們友好。對電梯操作員禮貌問候,對郵遞員表示感謝,對助理說句友善的話,這些都會得到讚賞。打造名譽要從基層做起。同樣的,碰到不爽的事情,要自己消化情緒,不要在別人面前發泄。

3. 做領導是一份全職工作,職責的時鐘永不停止。每個微小的跡象都會被解讀,你的不耐煩、失望或不安全感都會被那些解讀你的人放大。不應做出隨意、毫無準備的坦白,信息必須經過深思熟慮才能發出。要特別小心書面的東西,尤其是電子郵件──它們永遠都不會消失。

4. 保持聆聽並索取建議。每周至少在公司餐廳吃一次午飯,或者時不時在咖啡機旁逗留,聽聽其他人都在聊些什麼。如果有人想跟你說話,那就沒有理由不聽。如果有人批評,即使你不讚同也要花時間仔細回應。

5. 你覺得很風趣的俏皮話通常並不風趣。你的幽默感很容易被解讀為自傲和笨拙。如果你仍然以為講笑話或引用某個幽默故事對陳述觀點很重要,那麼請先跟你的配偶或信任的朋友演練一遍。幽默是有風險的。千萬不要拿嚴肅的事情開玩笑。

6. 很重要的一點是,保証重要事務的重要性。應該經常解釋你的戰略,可以換個措辭,但要反復強調。

7. 絕不要抱怨和解釋,沒有人會聽。出了差錯就承擔責任。不要把錯誤怪到前幾屆管理層、天氣、運氣不好或競爭對手身上。但也不要露出防御姿態。向前看──除非上級要求你辭職。

8. 信任你的專業顧問,接受他們的專業意見。不要對市場做過多猜測。沒有所謂的完美數據。做出決策,往前走。

9. 謹慎使用“平均”這個詞──平均深度為6英寸河也可能淹死人。欣然接受“平均”,只會獲得虛假的安全感。假設最糟糕的情況會發生,因為通常就是如此。

10. 最後這條是陳詞濫調,但卻是至理真言:絕不要做或說你不希望在報紙頭條看到的事情。和媒體打交道時,不要回答假設性的問題,謹記麥克風永遠不會真正關閉,絕不要同意“私下”談。對一場危機唯一值得做的公開回應是誠實。[..]0001424052702303519404579353060931625306

給新手高管的10條建議 -[..]/causes-and-solutions-for-bystander.html

以競爭激發員工潛力有其道理,但就我過往所見,鼓催互鬥文化往往淪為非實力較量,最後變成內部互搞小動作放毒箭,對公司產生最嚴重的破壞 - 內耗。 -[..]%84%EF%BC%9F%EF%BC%8F%E5%BE%90%E7%B7%A3/

Good developer cannot be good manager? -

Manager guid in google -

(google search) (amazon search)

Sat Feb 11 16:13:24 HKT 2017 From /weblog/trip/travelling

south america

阿根廷的觀鳥天堂 -[..]

magnificent-torres-del-paine-national-park-photos-you-absolutely-have-to-see -[..]tos-you-absolutely-have-to-see/?view=all

Hotel next to Perito Moreno Glacier -


(google search) (amazon search)

Sat Feb 11 16:11:56 HKT 2017 From /weblog/career/jobs


A discussion thread about how to due with boss/manager that don't give you anything to do -

Requirement of a PA of one boss -

How to hire a good CEO -[..]13/if-when-and-how-to-avoid-hiring-a-ceo

How if boss asking for too much -

(google search) (amazon search)

Thu Feb 09 23:02:10 HKT 2017 From /weblog/web


One of many tips of how to design a website that deliver content faster -[..]006/02/02/10-steps-to-a-faster-web-site/

The other, for user to read quick -[..]0-ways-to-design-for-impatient-visitors/

Webmaster tools, marketing -
Webmaster tools, page development -
and tools to tune page performance -[..]tools-to-boost-up-your-site-performance/

Tips from codinghorror -[..]og/2011/06/performance-is-a-feature.html

Tips from ACM -

Web Framework Benchmarks -

How taobao optimize their mobile app -[..]bao-521-performance-optimization-project

The timeline of how browser showing the page, and how to optimize it -[..]rontend-performance-chrome-timeline.html[..]-for-the-browser-f2f51a29c572#.7ivccwl5e

How a page loaded fast -[..]d-page-loads-lessons-learned-4bb1be3ed07

(google search) (amazon search)

Tue Feb 07 23:18:45 HKT 2017 From /weblog/java/fundamental


How difference platform implement nanoTime() -[..]12/02/what-is-behind-systemnanotime.html[..]62/is-system-nanotime-completely-useless

Java timezone ID reference -[..]etrive-locale-and-timezone-from-request/[..]m/java-date-time/java-util-timezone.html

setTimeZone affects calls to set(), but doesn’t change the existing Calendar time? So if we wanted to change the time zone we are working with, we have to adjust all the time fields too…but a SimpleDateFormatter still would show it as the current time zone. -[..]1/joda-time-the-future-of-java-datetime/[..]va-time-jsr-310-enhancements-java-9.html

(google search) (amazon search)

Tue Feb 07 19:07:19 HKT 2017 From /weblog/ai


Prediction API -

How google predict parking -[..]2/using-machine-learning-to-predict.html

(google search) (amazon search)

Tue Feb 07 15:44:58 HKT 2017 From /weblog/design


Nothing specific, mostly code clean up, refactoring and simplification, the performance boost was a surprise. <- This is a good one -[..]12/07/disruptor-v3-faster-hopefully.html

Is there anything we can do about this when designing algorithms and data-structures? Yes there is a lot we can do. If we perform chunks of work on data that is co-located, and we stride around memory in a predictable fashion, then our algorithms can be many times faster. For example rather than using bucket and chain hash tables, like in the JDK, we can employ hash tables using open-addressing with linear-probing. Rather than using linked-lists or trees with single items in each node, we can store an array of many items in each node. -[..]emory-access-patterns-are-important.html

Skip lists are used instead of b-trees because b-trees don’t scale. -[..]ast-mvcc-inmem-lockfree-codegen-and.html

Beware about the performance issue of static initalization -[..]-cause-problems-with-multi-threading-how

Experiment show why arraylist is better in most cases -

How to design low latency application in java -[..]5/chronicle-and-low-latency-in-java.html[..]ciples-of-high-performance-programs.html[..]principles-of-high-performance-programs/

Suggestion about how to determine number of thread pool -[..]rmine-Web-Applications-Thread-Poll-Size/

Beware the performance penalty of logging -

Keep thing dynamic -[..]ciples-of-high-performance-programs.html[..]st-rule-of-performance-optimisation.html[..]u/~rcs/research/interactive_latency.html[..]aling-data-platforms.html?SSLoginOk=true

Discuss about developing low latency financial application -

Discussion of object pooling -[..]-but-forgotten-trick-object-pooling.html[..]m_performance_part_1_object_pooling.html

Efficiency - the amount of work you need to do.
Performance - how fast you can do that work
Efficiency - governed by your algorithm
Performance - governed by your data structures.[..]e-difference-between-efficiency-and.html

Turning off power save mode on the CPU reduced brought the max latency from 11 msec down to 8 msec.
Guaranteeing threads will always have CPU resources using CPU isolation and thread affinity brought the maximum latency down to 14 microseconds.[..]eduler-jitter-using-cpu-isolation-a.html[..]

About design for performance for webapi -[..]y-decision-as-a-service-design-patterns/

check list -[..]ery-software-development-team-should-ask

Beware if system utilization over 80% -[..]/20/service-latency-and-utilisation.html

scalable-io-events-vs-multithreading-based -[..]lable-io-events-vs-multithreading-based/

How to find out bottleneck -[..]entile-latencies-in-Chronicle-Queue.html

(google search) (amazon search)