RSS feed [root] /




login:

password:

title search:




 


Wed Apr 15 10:18:54 HKT 2020



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

Fri Apr 24 15:12:49 HKT 2020 From /weblog/religious

fair


資源分配的模式 - http://faith100.org[..]9%85%8d%e7%9a%84%e6%a8%a1%e5%bc%8f/63448

(google search) (amazon search)


Tue Apr 21 18:27:57 HKT 2020 From /weblog/software_engineering/SCM

branch


Why merge often - http://queue.acm.org/detail.cfm?id=1643030

http://www.cmcrossroads.com[..]/cgi-bin/cmwiki/view/CM/BranchYesMergeNo

http://paulhammant.com/2013/12/04/what_is_your_branching_model

A lot of resource here - http://www.cmcrossroads.com[..]i-bin/cmwiki/view/CM/BranchingAndMerging

At my company, we tag each CVS module and we use those tags to build releases. That way, we know exactly which code versions each deployment has. Also, developers can check in code at any point while controlling when they release it.

Branches are a major headache, which I avoid whenever possible. You have to worry about maintaining and testing each branch, along with merging changes. I prefer to release the latest and greatest code to each customer. If different customers require different behavior, if statements and configuration files are a lot better than CVS branches.

Branches do make sense if you want to release a minor change to an old release, but upgrading the entire code base is risky. However, high-quality code and testing should reduce that risk.

http://discuss.joelonsoftware.com[..]arent=16312&ixDiscussGroup=3&cReplies=11

Subversion branching technique and tips - http://binkley.blogspot.com[..]version-best-practices-branching_01.html http://www.dehora.net[..]version_tips_dealing_with_branches.html/

Another discussion - http://www.codinghorror.com/blog/archives/000968.html

Branch visualization - http://codicesoftware.blogspot.com[..]07/05/linus-torvalds-on-git-and-scm.html http://www.youtube.com/watch?v=CABIi-Eu2zA

One way of manage branching and merging, the summary is, frequency create new branch for pre-merge instead of one time big merge - http://designbygravity.wordpress.com[..]old-you-about-svn-branching-and-merging/ My colleagues suggest subversion merge tracking can solve the problem without that pre-merge, but I am not sure how that can work... http://blogs.open.collab.net/svn/2007/09/what-subversion.html

No branch? https://cacm.acm.org[..]-of-code-in-a-single-repository/fulltext http://www.infoq.com[..]s/2017/08/How-Google-build-Web-framework

https://martinfowler.com/articles/branching-patterns.html

(google search) (amazon search)


Fri Apr 10 22:49:53 HKT 2020 From /weblog/unix

monitoring


Using unhide to check hidden process - http://www.ubuntugeek.com[..]unhide-the-opensource-forensic-tool.html

fuser, check which user using the file or directory - http://www.thegeekstuff.com/2012/02/linux-fuser-command/

htop, look much better than top - http://nerds-central.blogspot.com[..]ght-no-i-am-loving-htop-it-is-linux.html http://www.thegeekstuff.com/2011/09/linux-htop-examples

Tutorial of both lsof and pstack - http://myhowto.org[..]ternals-with-lsof-and-strace/#strace_run

Tutorial of SAR - http://www.thegeekstuff.com/2011/03/sar-examples . In Solaris, you can check SAR from previous days using "sar -f /var/adm/sa/sa30 " ( last 30th )

If we like to see the detail from "ps" command:
solaris: /usr/ucb/ps -awwx , or, use pargs, but need sudo to that user - http://javarevisited.blogspot.com.au[..]ow-long-argument-of-running-process.html
linux: ps -aef --cols [XXXX]

prstat - use prstat instead of ps in solaris http://developers.sun.com/solaris/articles/prstat.html
How to check physical memory on solaris? /usr/sbin/prtconf | grep Memory http://www.dbapool.com/faqs/Q_116.html

Other forensics tools - http://www.forensicfocus.com[..]om/computer-forensics-software-intro.php

Sun monitoring tools collections - http://blogs.sun.com[..]try/solaris_performance_monitoring_tools http://tech.varghees.com[..]sed-system-monitoring-commands-in-linux/

time, basic unix util - http://www.thegeekstuff.com/2013/10/time-command-format

http://www.baptiste-wicht.com[..]ow-level-discovery-cores-cpus-hard-disk/

10 commands for system monitoring - http://techblog.netflix.com[..]1/linux-performance-analysis-in-60s.html http://www.infoq.com/cn/news/2015/12/linux-performance

https://linuxcommando.blogspot.com[..]nxi-swiss-army-knife-for-displaying.html

(google search) (amazon search)



Mon Apr 06 21:51:19 HKT 2020 From /weblog/java/network

URI


https://blog.sebastian-daschner.com[..]om/entries/creating-uris-with-uribuilder

(google search) (amazon search)


Fri Apr 03 19:15:44 HKT 2020 From /weblog/health

hair


https://hairtheme.com/natural-hair-growth/

(google search) (amazon search)


Tue Mar 31 13:43:41 HKT 2020 From /weblog/business

negotiations


Some techniques - http://cn.wsj.com/big5/20110107/wvh075935.asp

Claim to threaten is more useful - http://cn.wsj.com/big5/20120510/eoe154457.asp

https://www.nytimes.com[..]living/negotiation-tips-giver-taker.html

(google search) (amazon search)


Sun Mar 29 18:20:39 HKT 2020 From /weblog/security

programming


https://simpleprogrammer.com/security-code-secure-devops/

https://bitbucket.org/blog/best-practices-for-java-security

(google search) (amazon search)


Sun Mar 29 18:15:44 HKT 2020 From /weblog/java/concurrency

collections


Even though

private List synchList = Collections.synchronizedList(new LinkedList());

is thread safe, serialize sync List is NOT thread safe for sure. The story is, if you only synchronized the collection, and if we try to get the iterator in concurrent access environment, it will throws currencymodificationexception .

For collection is small, may be making defensive copy http://www.javapractices.com/Topic15.cjp is good. Otherwise, in java5, there is concurrency collection.

reference:
http://jroller.com[..]ntry=collections_synchronizedlist_broken
http://jroller.com/page/ctarrington?entry=java_collections_trivia

Map operation, include use of FutureTask and putIfAbsent() method from ConcurrentMap. - http://www.javaspecialists.co.za/archive/newsletter.do?issue=125

Other then lterate through the elements, adding and removing elements can also be problem, this article document a few good cases about that - http://rayfd.wordpress.com[..]en-a-synchronized-class-isnt-threadsafe/

Samples of using Queue.drainTo() - http://binkley.blogspot.com[..]rforming-fixed-amounts-of-work-with.html

http://tech.puredanger.com/2009/02/28/java-7-transferqueue/

Overview of blockingqueue - http://tutorials.jenkov.com[..]/java-util-concurrent/blockingqueue.html

Simple benchmark - http://java-persistence-performance.blogspot.com[..]jvm-performance-part-iii-concurrent.html

Multi-thread behaviour - http://vanillajava.blogspot.com[..]hread-safety-issues-with-vector-and.html

java.util.concurrent.ConcurrentHashMap VS openhft.collections.SharedHashMap - http://openhft.blogspot.co.uk[..]autilconcurrentconcurrenthashmap-vs.html

Why are there so many concurrent queues implementations in Java? - https://vmlens.com/articles/cp/why_so_many_queues/

Why hashmap is not thread safe - https://www.pixelstech.net[..]a-HashMap-is-considered-as-thread-unsafe

(google search) (amazon search)




Sat Mar 28 20:09:46 HKT 2020 From /weblog/design/distribute

scalability


There are two key primary ways of scaling web applications which is in practice today.
1) “Vertical Scalability” - Adding resource within the same logical unit to increase capacity. An example of this would be to add CPUs to an existing server, or expanding storage by adding hard drive on an existing RAID/SAN storage.
2) “Horizontal Scalability” - Adding multiple logical units of resources and making them work as a single unit. Most clustering solutions, distributed file systems, load-balancers help you with horizontal scalability.

Scalability can be further sub-classified based on the “scalability factor”.
1) If the scalability factor stays constant as you scale. This is called “linear scalability“.
2) But chances are that some components may not scale as well as others. A scalability factor below 1.0 is called “sub-linear scalability“.
3) Though rare, its possible to get better performance (scalability factor) just by adding more components (i/o across multiple disk spindles in a RAID gets better with more spindles). This is called “supra-linear scalability“.
4) If the application is not designed for scalability, its possible that things can actually get worse as it scales. This is called “negative scalability“.

http://www.royans.net/arch/2007/09/22/what-is-scalability/

Report of building web application with 55k pageload with rail - http://shanti.railsblog.com[..]mongrels-handled-a-550k-pageview-digging

XMPP a IM protocol about scalability - http://www.process-one.net[..]icle/the_aol_xmpp_scalability_challenge/

Presentation and resources of making you website more scalable - http://www.scribd.com[..]9/Real-World-Web-Performance-Scalability http://www.theserverside.com[..]lications&asrc=EM_NLN_3990118&uid=703565 http://www.theserverside.com[..]ionsPart2&asrc=EM_NLN_3990119&uid=703565

Brian Zimmer, architect at travel startup Yapta, highlights some worst practices jeopardizing the growth and scalability of a system:
* The Golden Hammer. Forcing a particular technology to work in ways it was not intended is sometimes counter-productive. Using a database to store key-value pairs is one example. Another example is using threads to program for concurrency.
* Resource Abuse. Manage the availability of shared resources because when they fail, by definition, their failure is experienced pervasively rather than in isolation. For example, connection management to the database through a thread pool.
* Big Ball of Mud. Failure to manage dependencies inhibits agility and scalability.
* Everything or Something. In both code and application dependency management, the worst practice is not understanding the relationships and formulating a model to facilitate their management. Failure to enforce diligent control is a contributing scalability inhibiter.
* Forgetting to check the time. To properly scale a system it is imperative to manage the time alloted for requests to be handled.
* Hero Pattern. One popular solution to the operation issue is a Hero who can and often will manage the bulk of the operational needs. For a large system of many components this approach does not scale, yet it is one of the most frequently-deployed solutions.
* Not automating. A system too dependent on human intervention, frequently the result of having a Hero, is dangerously exposed to issues of reproducibility and hit-by-a-bus syndrome.
* Monitoring. Monitoring, like testing, is often one of the first items sacrificed when time is tight.

http://highscalability.com/scalability-worst-practices

Useful Corporate Blogs that Talk About Scalability - http://highscalability.com[..]l-corporate-blogs-talk-about-scalability

Overview of mapreduce and how it compare with other distributed programming model -http://natishalom.typepad.com[..]0/is-mapreduce-going-to-main-stream.html

Paper of data store at amazon http://www.allthingsdistributed.com/2007/10/amazons_dynamo.html

Discuss how haven't sync can cause performance issue - http://www.theserverside.com[..]lications&asrc=EM_NLN_6273194&uid=703565 http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6423457

Discussion about Cloud Based Memory Architectures - http://highscalability.com[..]ased-memory-architectures-next-big-thing

http://highscalability.com[..]alability-and-performance-best-practices

Interview with google engineer - http://www.zdnet.co.uk[..]gle-at-scale-everything-breaks-40093061/

Surprisingly youtube is blocking - http://highscalability.com[..]e-scalability-lessons-in-30-minutes.html

If we are seeing a sustained arrival rate of requests, greater than our system is capable of processing, then something has to give. Having the entire system degrade is not the ideal service we want to give our customers. A better approach would be to process transactions at our systems maximum possible throughput rate, while maintaining a good response time, and rejecting requests above this arrival rate. - http://mechanical-sympathy.blogspot.com.au[..]apply-back-pressure-when-overloaded.html

How twitter scaling - http://www.infoq.com/presentations/Twitter-Analytics

How Reddit scaling - http://www.infoq.com/presentations/scaling-reddit

How Hotjar scaling - https://www.hotjar.com[..]-while-scaling-hotjars-tech-architecture

How infiniteDB prevent locking and IO - http://highscalability.com[..]-scalable-relational-database-manag.html

http://highscalability.com[..]ard-way-about-scaling-a-million-use.html http://martin.kleppmann.com[..]2014/03/26/six-things-about-scaling.html

The experiences of various big companies, about network issues - http://aphyr.com/posts/288-the-network-is-reliable

Stackoverflow, scale without cloud - http://highscalability.com[..]nth-25-servers-and-i.html?SSLoginOk=true

How netflix scale - http://highscalability.com[..]ix-what-happens-when-you-press-play.html

Scaling to 100k Users - https://alexpareto.com[..]ity/systems/2020/02/03/scaling-100k.html https://www.infoq.cn/article/Tyx5HwaD9OKNX4xzFaFo

(google search) (amazon search)


Fri Mar 27 11:42:59 HKT 2020 From /weblog/learning

communication


https://medium.com[..]ers-i-learned-from-bartending-6a5f36829b

https://www.zmescience.com[..]g-trust-and-we-need-that-more-than-ever/

(google search) (amazon search)


Mon Mar 16 07:47:36 HKT 2020 From /weblog/design

Object attributes


About getter and setter - http://blog.milesbarr.com/2006/09/getters-and-setters/

Discussion of hashcode and equal of collections - http://redsolo.blogspot.com[..]11/why-no-equals-and-gethashcode-in.html

A blog discuss the problem of getter / setter - http://jroller.com[..]rise?entry=the_case_against_the_property

Equality Is Hard - https://www.craigstuntz.com[..]m/posts/2020-03-09-equality-is-hard.html

(google search) (amazon search)


Mon Mar 16 07:46:47 HKT 2020 From /weblog/web/script

game


How I made a 3D game in only 2KB of JavaScript - http://frankforce.com/?p=7427

(google search) (amazon search)


Mon Mar 16 07:45:26 HKT 2020 From /weblog/web

webscraping


https://www.scrapingbee.com/java-webscraping-book/

(google search) (amazon search)



Sun Mar 08 19:49:17 HKT 2020 From /weblog/society

misc


用軀體代替言語,傳承知識 http://hk.apple.nextmedia.com/news/art/20130402/18214454

回收家具再低價出售 http://hk.apple.nextmedia.com/news/art/20130402/18214461 http://www.green-dot-home.com.hk/startup.html

【奇趣史話】「鹹濕」呢個詞 原來嚟自火腿店? - http://hk.apple.nextmedia.com/realtime/china/20151231/54592778

https://getpocket.com[..]d-don-ts-of-gift-giving-around-the-world

(google search) (amazon search)


Sat Mar 07 21:05:31 HKT 2020 From /weblog/photographic/tutorial

Astronomy


星軌拍攝技巧 數問 -

1).數碼機因hot pixel而唔適合曝得耐...最好分開影影夠幾個鐘...咁每張間隔之間都要俾CMOS斗下氣?
有師兄 教過 分十幾張 每張 10-20min 再合成 好過 一野 暴 幾粒鐘, (菲林 令計)

2).數碼機有D人話用ISO 100、有人話用ISO 400-800好...如果用合成方法...其實係咪都係就番光害而定...定係關雜訊事?
睇天氣 , 小弟 用 o個次 用 iso 100

5).北極星仰角澳門係23度,咁香港一樣??
4季 都唔同 位置, 用星座 搵 會準確 d, e+ 係 冬季, 北極星 位置 係 獵戶座 (lei 個最易 認, 唔會 搵唔倒 ... ) 頭頂 (腰帶 致 頭頂 距離 再過 5倍左右)

附圖 係 舊年 去雲南 香格里拉 時影, 本泥想 長暴, 不過 o個晚 太涷 個人 頂唔順 要收皮 反酒店

http://www.dchome.net/viewthread.php?tid=798154

With a lot of information, 香港的星空 — 觀測及拍攝資訊 - http://www.dcfever.com/column/read.php?id=1829

Herman's articles at dcfever - http://www.dcfever.com/column/info.php?id=185

500px tutorial - http://500px.com/blog/738/tutorial-photograph-the-night-sky

About Comet - http://www.dcfever.com/column/read.php?id=2193

Atmospheric optical phenomena 大氣光學現象 - http://matthew-chin.blogspot.hk[..]16/06/atmospheric-optical-phenomena.html

Stars & Night Sky - http://www.mikkolagerstedt.com[..]top-5-tips-to-photograph-stars-night-sky

=====
這張是11月15日凌晨拍攝的M42獵戶座星雲, 大埔的光害較嚴重, 所以要加上IDAS V4濾鏡作長時間曝光, 分三段不同時間曝光及作Layer Masking 處理, 把動態範圍拉闊. 在月光的影下算是滿意, 希望之後可以分數晚作10小時以上的曝光並加長每一張frame 的曝光時間 (現在是5分鐘一張), 使到暗位的表現進一步改善.

Place: Tai Po
Date: 14 Nov, 2013 (UT)
Camera: Canon 20Da
Lens: Canon EF-600 F4L
Mount: Vixen Sphinx with Star Book
Filter: IDAS V4
Exposure: 10 sec x 10, 30 sec x 10, 300sec x 26
ISO: 800
Guiding: Borg 60mm telescope, AIS120MM, PHD guiding.
Image calibration: Dark x 20 (average) for each exposure, Bias x 16 (Median), Dark subtracted Flat field x 20 (Median)
Processing: DSS, PS: layer Mask, Cropped, curve, colour adjusted.

http://forum.hkas.org.hk/viewthread.php?tid=8009
=====

http://list25.com[..]resemble-things-found-on-earth/?view=all

how-to-find-the-milky-way - http://goldpaintphotography.com[..]om/2015/07/24/how-to-find-the-milky-way/

how-to-capture-sharp-star-photographs - http://www.mikkolagerstedt.com[..]10/how-to-capture-sharp-star-photographs

銀河 - 觀測和拍攝 - http://matthew-chin.blogspot.hk/2016/06/blog-post.html

簡易四步驟處理高清銀河 - http://www.dcfever.com/column/read.php?id=3278 TimeLapse-AfterEffects特效『星流跡影片』-進階 - http://www.dcfever.com/column/read.php?id=3935

500 rule:
11mm: 45.5 seconds
12mm: 41.7 seconds
14mm: 35.7 seconds
16mm: 31.3 seconds
18mm: 27.8 seconds
20mm: 25 seconds
24mm: 20.8 seconds
28mm: 17.9 seconds
35mm: 14.3 seconds
50mm: 10 seconds
85mm: 5.9 seconds

http://www.price.com.hk/news.php?sec_id=12&id=7216

How to find constellations: a starter’s guide - http://www.zmescience.com[..]eature-post/starter-guide-constellations

http://www.deepskycolors.com[..]ilky-Way-Photo-Concepts-You-May-Wan.html

【星空系列教程】銀河及地景拍攝技巧
https://digiphoto.techbang.com[..]ot-to-ensure-the-star-series-tutorial-on
https://digiphoto.techbang.com[..]and-landscape-shooting-techniques-middle

Informaton of light pillar - http://www.islandnet.com/~see/weather/eyes/pillars.htm

How to take Lightning photos - http://www.dcfever.com/column/read.php?id=2456

How To Master Night Sky Photography - https://www.lightstalking.com/night-sky-photography/

How to Photograph the Northern Lights (Aurora Borealis)? - https://www.mikkolagerstedt.com[..]raph-the-northern-lights-aurora-borealis

(google search) (amazon search)



Wed Mar 04 08:23:59 HKT 2020 From /weblog/design

functional


Having functional program in java? http://codemonkeyism.com/functional-programming/

Functional programming in old java, with eclipse template - http://www.javacodegeeks.com[..]functional-programming-with-map-and.html

Functional Programming For The Rest of Us - http://www.defmacro.org/ramblings/fp.html?

collection-pipeline - http://martinfowler.com/articles/collection-pipeline/

Make code composable - https://hackernoon.com[..]ical-functional-programming-6d7932abc58b

A primer on functional architecture - https://increment.com[..]cture/primer-on-functional-architecture/

(google search) (amazon search)


Mon Mar 02 20:33:42 HKT 2020 From /weblog/network

wireless


http://hackaday.com[..]05/which-wireless-tech-is-right-for-you/

【Arm 專欄】一表了解 SIM、 eSIM 與 iSIM - https://www.inside.com.tw[..]article/19065-what-are-sim-esim-and-isim

(google search) (amazon search)


Sat Feb 29 23:23:24 HKT 2020 From /weblog/java/fundamental

memory


From java code to java heap, detail of how java use memory - http://www.ibm.com[..]rks/java/library/j-codetoheap/index.html

Algorithm of determine suitable thread pool size - http://www.javacodegeeks.com[..]reading-stories-about-robust-thread.html

Detail of how to analysis how much memory you need - http://www.javacodegeeks.com[..]m/2012/12/how-much-memory-do-i-need.html

Chinese introduction of memory model - http://www.infoq.com/cn/articles/java-memory-model-1

Difference between PermGem and MetaSpace - http://javaeesupportpatterns.blogspot.com.au[..]02/java-8-from-permgen-to-metaspace.html

How many bytes a boolean value takes in Java? - https://www.pixelstech.net[..]many-bytes-a-boolean-value-takes-in-Java

(google search) (amazon search)


Sat Feb 29 20:50:29 HKT 2020 From /weblog/software_engineering

release


Release at fix time or release at fix features? http://jroller.com/page/thuss?entry=there_are_pros_and_cons

Launch early and learn from it, but will we lose customer because of it?? - http://bobtuse.blogspot.com/2009/10/launch-early-and-learn.html

A method to determine which label to deploy, look a bit obvious - http://alexscordellis.blogspot.com[..]so-er-which-build-label-do-i-deploy.html

A sample procedure of zero downtime deployment - http://sunitspace.blogspot.com.au[..]om.au/2013/10/blue-green-deployment.html

Knightmare: A DevOps Cautionary Tale - https://www.infoq.cn/article/y4GjvPTdGDHiYlf6VOo6 https://dougseven.com[..]/17/knightmare-a-devops-cautionary-tale/

(google search) (amazon search)


Thu Feb 27 11:42:06 HKT 2020 From /weblog/google/development

protobuf


https://itnext.io/protobuf-and-null-support-1908a15311b6

https://reasonablypolymorphic.com/blog/protos-are-wrong/

(google search) (amazon search)