carfield.com.hk analytic.txt 2022-05-21T13:43:53Z 2022-05-21T13:43:53Z <br/>Experience of using AWS Redshift - <a href="http://highscalability.com/blog/2019/2/27/give-meaning-to-100-billion-events-a-day-the-shift-to-redshi.html">http://highscalability.com[..]on-events-a-day-the-shift-to-redshi.html</a> <br/><br/>腾讯信息流内容理解算法工程全流程实践 - <a href="https://www.infoq.cn/article/Dy5kzdczdHzKmi26JAXL">https://www.infoq.cn/article/Dy5kzdczdHzKmi26JAXL</a> <br/><br/><script type="text/javascript"><!--google_ad_client = "pub-9426659565807829";google_ad_slot = "9359905831";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script> 2022-05-21T13:43:53Z socialmedia.txt 2022-05-21T13:06:44Z 2022-05-21T13:06:44Z <br/>Open Sourcing Twitter’s Algorithm Part 1: How Twitter Works - <a href="https://transitivebullsh.it/oss-twitter-algorithm-part-1">https://transitivebullsh.it/oss-twitter-algorithm-part-1</a> <a href="https://www.infoq.cn/article/Es2BoMREB9JofbzQ2SBU">https://www.infoq.cn/article/Es2BoMREB9JofbzQ2SBU</a> <br/><br/><script type="text/javascript"><!--google_ad_client = "pub-9426659565807829";google_ad_slot = "9359905831";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script> 2022-05-21T13:06:44Z reservation.txt 2022-04-21T23:34:15Z 2022-04-21T23:34:15Z <br/>DB Locking in Reservation Systems - <a href="https://akshitbansall.medium.com/db-locking-in-reservation-systems-3b3d574c7676">https://akshitbansall.medium.com[..]king-in-reservation-systems-3b3d574c7676</a> <br/><br/><script type="text/javascript"><!--google_ad_client = "pub-9426659565807829";google_ad_slot = "9359905831";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script> 2022-04-21T23:34:15Z database.txt 2022-04-09T12:18:32Z 2022-04-09T12:18:32Z <br/>Partitioning GitHub’s relational databases to handle scale - <a href="https://github.blog/2021-09-27-partitioning-githubs-relational-databases-scale/">https://github.blog[..]ning-githubs-relational-databases-scale/</a> <a href="https://www.infoq.cn/article/L1oIV0GORfNfuysaHfL4">https://www.infoq.cn/article/L1oIV0GORfNfuysaHfL4</a> <br/><br/>A Distributed System Interview Question: How to Avoid Read Inconsistency During a Transaction - <a href="https://betterprogramming.pub/a-distributed-system-interview-question-how-to-avoid-read-inconsistency-during-a-transaction-6ac3b4a8f92a">https://betterprogramming.pub[..]stency-during-a-transaction-6ac3b4a8f92a</a> <br/><br/><script type="text/javascript"><!--google_ad_client = "pub-9426659565807829";google_ad_slot = "9359905831";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script> 2022-04-09T12:18:32Z performance.txt 2022-03-14T04:40:26Z 2022-03-14T04:40:26Z <br/><a href="http://highscalability.com/blog/2012/5/16/big-list-of-20-common-bottlenecks.html">http://highscalability.com[..]6/big-list-of-20-common-bottlenecks.html</a> <br/><br/>Nothing specific, mostly code clean up, refactoring and simplification, the performance boost was a surprise. <- This is a good one - <a href="http://bad-concurrency.blogspot.com.au/2012/07/disruptor-v3-faster-hopefully.html">http://bad-concurrency.blogspot.com.au[..]12/07/disruptor-v3-faster-hopefully.html</a> <br/><br/>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. - <a href="http://mechanical-sympathy.blogspot.com.au/2012/08/memory-access-patterns-are-important.html">http://mechanical-sympathy.blogspot.com.au[..]emory-access-patterns-are-important.html</a> <br/><br/>Skip lists are used instead of b-trees because b-trees don’t scale. - <a href="http://highscalability.com/blog/2012/8/14/memsql-architecture-the-fast-mvcc-inmem-lockfree-codegen-and.html">http://highscalability.com[..]ast-mvcc-inmem-lockfree-codegen-and.html</a> <br/><br/>Beware about the performance issue of static initalization - <a href="http://stackoverflow.com/questions/14010906/given-that-hashmaps-in-jdk1-6-and-above-cause-problems-with-multi-threading-how">http://stackoverflow.com[..]-cause-problems-with-multi-threading-how</a> <br/><br/>Experiment show why arraylist is better in most cases - <a href="http://www.javaadvent.com/2013/12/arraylist-vs-linkedlist.html">http://www.javaadvent.com/2013/12/arraylist-vs-linkedlist.html</a> <br/><br/>How to design low latency application in java - <a href="http://vanillajava.blogspot.com.au/2014/05/chronicle-and-low-latency-in-java.html">http://vanillajava.blogspot.com.au[..]5/chronicle-and-low-latency-in-java.html</a> <br/><br/><a href="http://highscalability.com/blog/2014/5/21/9-principles-of-high-performance-programs.html">http://highscalability.com[..]ciples-of-high-performance-programs.html</a> <a href="http://blog.libtorrent.org/2012/12/principles-of-high-performance-programs/">http://blog.libtorrent.org[..]principles-of-high-performance-programs/</a> <br/><br/>Suggestion about how to determine number of thread pool - <a href="http://venkateshcm.com/2014/05/How-To-Determine-Web-Applications-Thread-Poll-Size/">http://venkateshcm.com[..]rmine-Web-Applications-Thread-Poll-Size/</a> <br/><br/>Beware the performance penalty of logging - <a href="https://plumbr.eu/blog/locking-and-logging">https://plumbr.eu/blog/locking-and-logging</a> <br/><br/>Keep thing dynamic - <a href="http://highscalability.com/blog/2014/5/21/9-principles-of-high-performance-programs.html">http://highscalability.com[..]ciples-of-high-performance-programs.html</a> <br/><br/><a href="http://www.rationaljava.com/2015/01/first-rule-of-performance-optimisation.html">http://www.rationaljava.com[..]st-rule-of-performance-optimisation.html</a> <br/><br/><a href="http://www.eecs.berkeley.edu/~rcs/research/interactive_latency.html">http://www.eecs.berkeley.edu[..]u/~rcs/research/interactive_latency.html</a> <br/><br/><a href="http://highscalability.com/blog/2015/5/4/elements-of-scale-composing-and-scaling-data-platforms.html?SSLoginOk=true">http://highscalability.com[..]aling-data-platforms.html?SSLoginOk=true</a> <br/><br/>Discuss about developing low latency financial application - <a href="http://queue.acm.org/detail.cfm?ref=rss&id=2770868">http://queue.acm.org/detail.cfm?ref=rss&id=2770868</a> <br/><br/>Discussion of object pooling - <a href="http://highscalability.com/blog/2015/7/29/a-well-known-but-forgotten-trick-object-pooling.html">http://highscalability.com[..]-but-forgotten-trick-object-pooling.html</a> <a href="http://coffeenco.de/articles/jvm_performance_part_1_object_pooling.html">http://coffeenco.de[..]m_performance_part_1_object_pooling.html</a> <br/><br/>Efficiency - the amount of work you need to do.<br/>Performance - how fast you can do that work<br/>Efficiency - governed by your algorithm<br/>Performance - governed by your data structures.<br/><a href="http://www.rationaljava.com/2015/07/the-difference-between-efficiency-and.html">http://www.rationaljava.com[..]e-difference-between-efficiency-and.html</a> <br/><br/><br/>Turning off power save mode on the CPU reduced brought the max latency from 11 msec down to 8 msec.<br/>Guaranteeing threads will always have CPU resources using CPU isolation and thread affinity brought the maximum latency down to 14 microseconds.<br/><a href="http://highscalability.com/blog/2015/9/30/strategy-taming-linux-scheduler-jitter-using-cpu-isolation-a.html">http://highscalability.com[..]eduler-jitter-using-cpu-isolation-a.html</a> <br/><a href="http://epickrram.blogspot.co.uk/2015/09/reducing-system-jitter.html">http://epickrram.blogspot.co.uk[..]o.uk/2015/09/reducing-system-jitter.html</a> <br/><br/>About design for performance for webapi - <a href="http://tech.forter.com/9-5-low-latency-decision-as-a-service-design-patterns/">http://tech.forter.com[..]y-decision-as-a-service-design-patterns/</a> <br/><br/>check list - <a href="http://techbeacon.com/102-performance-engineering-questions-every-software-development-team-should-ask">http://techbeacon.com[..]ery-software-development-team-should-ask</a> <br/><br/>Beware if system utilization over 80% - <a href="http://www.infoq.com/cn/news/2016/02/utilisation-wait-latency">http://www.infoq.com/cn/news/2016/02/utilisation-wait-latency</a> <a href="http://robharrop.github.io/maths/performance/2016/02/20/service-latency-and-utilisation.html">http://robharrop.github.io[..]/20/service-latency-and-utilisation.html</a> <br/><br/>scalable-io-events-vs-multithreading-based - <a href="https://thetechsolo.wordpress.com/2016/02/29/scalable-io-events-vs-multithreading-based/">https://thetechsolo.wordpress.com[..]lable-io-events-vs-multithreading-based/</a> <br/><br/>How to find out bottleneck - <a href="https://vanilla-java.github.io/2017/02/06/Improving-percentile-latencies-in-Chronicle-Queue.html">https://vanilla-java.github.io[..]entile-latencies-in-Chronicle-Queue.html</a> <br/><br/><a href="https://www.inkandswitch.com/slow-software.html">https://www.inkandswitch.com/slow-software.html</a> <br/><br/>Compiler Performance and LLVM - <a href="http://pling.jondgoodwin.com/post/compiler-performance/">http://pling.jondgoodwin.com/post/compiler-performance/</a> <br/><br/>Know Thy Complexities! - <a href="https://www.bigocheatsheet.com/?fbclid=IwAR2iUUNJDHSJCc9PNgyoW9D2qyCTt3qMftzYxsdz7KJs8LkSeRPWLzguwpA">https://www.bigocheatsheet.com[..]oW9D2qyCTt3qMftzYxsdz7KJs8LkSeRPWLzguwpA</a> <br/><br/>10 大高性能开发宝石 - <a href="https://xie.infoq.cn/article/a0d418bf29915ecad5d5eeab0">https://xie.infoq.cn/article/a0d418bf29915ecad5d5eeab0</a> <br/><br/>How to detect and fix IO related performance issue - <a href="https://blog.ycrash.io/2020/11/28/i-o-waiting-cpu-time-wa-in-top/">https://blog.ycrash.io/2020/11/28/i-o-waiting-cpu-time-wa-in-top/</a> <br/><br/>RangeBitmap produces a RoaringBitmap of the indexes which satisfy a predicate, and can take RoaringBitmap parameters as inputs to skip over rows already filtered out. The Streams API code used before is translated into RangeBitmap API calls: - <a href="https://richardstartin.github.io/posts/range-predicates">https://richardstartin.github.io/posts/range-predicates</a> <br/><br/><script type="text/javascript"><!--google_ad_client = "pub-9426659565807829";google_ad_slot = "9359905831";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script> 2022-03-14T04:40:26Z concurrency.txt 2022-02-14T23:37:05Z 2022-02-14T23:37:05Z <br/>How to write safer concurrency code - <a href="http://www.artima.com/forums/flat.jsp?forum=276&thread=178345">http://www.artima.com/forums/flat.jsp?forum=276&thread=178345</a> <br/><br/>reentrant and thread safe functions - <a href="http://kevinrodrigues.com/blog/2009/12/31/reentrant-and-thread-safe-functions/">http://kevinrodrigues.com[..]/31/reentrant-and-thread-safe-functions/</a> <br/><br/>Libraries / toolkits for multicore process - <a href="http://www.ddj.com/go-parallel/article/printableArticle.jhtml?articleID=212900103">http://www.ddj.com[..]intableArticle.jhtml?articleID=212900103</a> <br/><br/>Introduction - <a href="http://www.ddj.com/go-parallel/article/showArticle.jhtml;jsessionid=PKZKDJEMPKMPQQSNDLRSKHSCJUNN2JVN?articleID=212903586">http://www.ddj.com[..]QQSNDLRSKHSCJUNN2JVN?articleID=212903586</a> <a href="http://www.ddj.com/go-parallel/article/showArticle.jhtml;jsessionid=W1QG30JS2EVRCQSNDLRSKHSCJUNN2JVN?articleID=213001517">http://www.ddj.com[..]CQSNDLRSKHSCJUNN2JVN?articleID=213001517</a> <br/><br/>Collections of links - <a href="http://dobbscodetalk.com/index.php?option=com_myblog&show=Go-Parallel-Or-Get-Left-Behind.html&Itemid=29">http://dobbscodetalk.com[..]rallel-Or-Get-Left-Behind.html&Itemid=29</a> <br/><br/>Briefing of difference modeling of threading system - <a href="http://www.ddj.com/go-parallel/article/printableArticle.jhtml?articleID=215900465">http://www.ddj.com[..]intableArticle.jhtml?articleID=215900465</a> <a href="http://software.intel.com/en-us/articles/hot-and-safe-a-beginners-guide-to-multithreaded-libraries/">http://software.intel.com[..]inners-guide-to-multithreaded-libraries/</a> <br/><br/><a href="http://natishalom.typepad.com/nati_shaloms_blog/2010/08/concurrency-101.html">http://natishalom.typepad.com[..]haloms_blog/2010/08/concurrency-101.html</a> <br/><br/>Saving the Failwhale: The Art of Concurrency (Page last updated December 2012, Added 2012-12-26, Author Dhanji R. Prasanna, Publisher informit). Tips:<br/><br/>1) Contention is unavoidable - some resources are just slower, and you must wait for them. The secrets to good concurrency are 1) ensuring that these slower resources are rarely used, and 2) during such waiting periods, giving the faster tiers other work to do so that they continue to be utilized well.<br/>2) Overuse of synchronization constructs such as locks and mutexes leads to systems that perform poorly under load.<br/>3) ConcurrentHashMap is an efficient thread-safe map while HashMap is not thread-safe.<br/>4) ConcurrentHashMap doesn't do away with locks, it still uses them but it uses more than the single global lock, so that threads gain some measure of concurrency. It uses separate locks for partitions, so that multiple threads writing to the map are likely to access different partitions, using separate locks and therefore process their data simultaneously. This technique is known as lock-striping. Efficient striping uses a number of locks proportional to the number of CPU cores in a system.<br/>5) The asynchronous processing model smooths resource spikes by adding requests to a queue which is serviced by a pool of workers - spikes in requests make the queue grow rather than overloading the workers. (The ExecutorService is essentially a thread pool accompanied by a task queue.) <br/><br/><a href="http://www.informit.com/articles/article.aspx?p=1994789">http://www.informit.com/articles/article.aspx?p=1994789</a> <br/><br/>Discussion of using difference model for concurrency - <a href="http://highscalability.com/blog/2013/3/18/beyond-threads-and-callbacks-application-architecture-pros-a.html">http://highscalability.com[..]cks-application-architecture-pros-a.html</a> <br/><br/>Concurrency vs Parallelism - <a href="http://concurrencyfreaks.blogspot.hk/2013/12/concurrency-vs-parallelism.html">http://concurrencyfreaks.blogspot.hk[..]/2013/12/concurrency-vs-parallelism.html</a> <br/><br/>Compare between Actors, CSP, Disruptor and raw Threads - <a href="http://java-is-the-new-c.blogspot.com.au/2014/01/comparision-of-different-concurrency.html">http://java-is-the-new-c.blogspot.com.au[..]omparision-of-different-concurrency.html</a> <br/><br/>Few coding tips that should be useful for most languages - <a href="http://www.javacodegeeks.com/2015/09/performance-scalability-and-liveness.html">http://www.javacodegeeks.com[..]erformance-scalability-and-liveness.html</a> <a href="http://www.javacodegeeks.com/2015/09/java-concurrency-essentials.html">http://www.javacodegeeks.com[..]2015/09/java-concurrency-essentials.html</a> <br/><br/>Service Design<br/> Do one thing, do it well<br/> No shared operational state<br/> Bound your queues<br/> Name custom thread pools and register an UncaughtExceptionHandler<br/> Prefer immutable data objects over mutable state<br/><a href="http://highscalability.com/blog/2016/11/14/how-urban-airship-scaled-to-25-billion-notifications-during.html">http://highscalability.com[..]-to-25-billion-notifications-during.html</a> <br/><br/>On Parallelism and Concurrency - <a href="https://inside.java/2021/11/30/on-parallelism-and-concurrency/">https://inside.java/2021/11/30/on-parallelism-and-concurrency/</a> <a href="https://towardsdatascience.com/concurrency-and-parallelism-what-is-the-difference-bdf01069b081">https://towardsdatascience.com[..]lism-what-is-the-difference-bdf01069b081</a> <br/><br/>Solving Common Concurrency Problems - <a href="https://blog.professorbeekums.com/2021/solving-concurrency-problems/">https://blog.professorbeekums.com[..]s.com/2021/solving-concurrency-problems/</a> <br/><br/><script type="text/javascript"><!--google_ad_client = "pub-9426659565807829";google_ad_slot = "9359905831";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script> 2022-02-14T23:37:05Z len.txt 2022-02-05T13:10:09Z 2022-02-05T13:10:09Z <br/>Lenses in Java - <a href="https://medium.com/expedia-group-tech/lenses-in-java-2b18c7d24366">https://medium.com/expedia-group-tech/lenses-in-java-2b18c7d24366</a> <br/><br/><script type="text/javascript"><!--google_ad_client = "pub-9426659565807829";google_ad_slot = "9359905831";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script> 2022-02-05T13:10:09Z uber.txt 2022-01-26T11:53:53Z 2022-01-26T11:53:53Z <br/>Alright folks, gather round and let me tell you the story of (almost) the biggest engineering disaster I’ve ever had the misfortune of being involved in. It’s a tale of politics, architecture and the sunk cost fallacy [I’m drinking an Aberlour Cask Strength Single Malt Scotch] - <a href="https://threadreaderapp.com/thread/1336890442768547845.html">https://threadreaderapp.com/thread/1336890442768547845.html</a> <a href="https://www.infoq.cn/article/asjhHAmupqtcx5oGrb4b">https://www.infoq.cn/article/asjhHAmupqtcx5oGrb4b</a> <br/><br/>Uber Architecture and System Design - <a href="https://medium.com/nerd-for-tech/uber-architecture-and-system-design-e8ac26690dfc">https://medium.com[..]hitecture-and-system-design-e8ac26690dfc</a> <br/><br/>Designing Uber - <a href="http://highscalability.com/blog/2022/1/25/designing-uber.html">http://highscalability.com/blog/2022/1/25/designing-uber.html</a> <br/><br/><script type="text/javascript"><!--google_ad_client = "pub-9426659565807829";google_ad_slot = "9359905831";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script> 2022-01-26T11:53:53Z Collections.txt 2022-01-19T13:44:27Z 2022-01-19T13:44:27Z <br/><a href="http://www.javacodegeeks.com/2011/07/top-97-things-every-programmer-or.html">http://www.javacodegeeks.com[..]7/top-97-things-every-programmer-or.html</a> <br/><br/>I love the tool that Linus using - <a href="http://sztywny.titaniumhosting.com/2006/07/23/stiff-asks-great-programmers-answers/">http://sztywny.titaniumhosting.com[..]23/stiff-asks-great-programmers-answers/</a> and here is the abstract - <a href="http://www.ultrasaurus.com/sarahblog/archives/000322.html">http://www.ultrasaurus.com/sarahblog/archives/000322.html</a> <br/><br/>Ted interview with Linus - <a href="https://ideas.ted.com/the-wisdom-of-linus-torvalds/">https://ideas.ted.com/the-wisdom-of-linus-torvalds/</a> <br/><br/>Not really interview, just a discuss of what programmer difference from other - <a href="http://thecodist.com/fiche/thecodist/article/your-brain-on-codewhat-makes-you-able-to-program">http://thecodist.com[..]in-on-codewhat-makes-you-able-to-program</a> <br/><br/>Vote for most-influential-programmers - <a href="http://blog.assembleron.com/2007/08/02/most-influential-programmers-results/">http://blog.assembleron.com[..]02/most-influential-programmers-results/</a> <br/><br/>Few links about Knuth - <a href="http://www.codinghorror.com/blog/archives/001034.html">http://www.codinghorror.com/blog/archives/001034.html</a> <br/><br/>Not really an interview, just with few pointers of few articles - <a href="http://www.codinghorror.com/blog/archives/000987.html">http://www.codinghorror.com/blog/archives/000987.html</a> <br/><br/>Robin Milner, creater of ML - <a href="http://www.guardian.co.uk/technology/2010/apr/01/robin-milner-obituary">http://www.guardian.co.uk[..]nology/2010/apr/01/robin-milner-obituary</a> <br/><br/>Things Every Programmer Should Know - <a href="http://www.javacodegeeks.com/2010/12/things-every-programmer-should-know.html">http://www.javacodegeeks.com[..]things-every-programmer-should-know.html</a> <br/><br/>egnyte - <a href="http://highscalability.com/blog/2016/2/15/egnyte-architecture-lessons-learned-in-building-and-scaling.html">http://highscalability.com[..]ons-learned-in-building-and-scaling.html</a> <br/><br/>Bram Moolenaar: "Vim is a very important part of my life." - <a href="https://evrone.com/bram-moolenaar-interview">https://evrone.com/bram-moolenaar-interview</a> <br/><br/><script type="text/javascript"><!--google_ad_client = "pub-9426659565807829";google_ad_slot = "9359905831";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script> 2022-01-19T13:44:27Z distribute.txt 2022-01-19T00:24:47Z 2022-01-19T00:24:47Z <br/>In one sentence, here's why: humans are notoriously bad at keeping "self" distinct from "other". Egomania, projection (transference), and enmeshment are well-known symptoms of this problem. OK, so I hear you saying, "yeah, but what does this have to do with programming?" It certainly seems absurd to suggest that if we are bad at something we know the most about (our "selves"), how could we possibly say that we have a good approach for the programming analogues - objects, modules, etc. - <a href="http://www.artima.com/weblogs/viewpost.jsp?thread=46706">http://www.artima.com/weblogs/viewpost.jsp?thread=46706</a> <br/><br/>Argue why space base design is better than n-tier design - <a href="http://www.google.com/search?q=Space-Based%20Architecture%20and%20The%20End%20of%20Tier-based%20Computing">http://www.google.com[..]0The%20End%20of%20Tier-based%20Computing</a> <br/><br/>Some key research of google for distributed computation - <a href="http://www.infoq.com/news/2007/06/google-scalability">http://www.infoq.com/news/2007/06/google-scalability</a> <br/><br/>Someone think we are not yet (per Oct 2007) have good language support for distibuted computing - <a href="http://kasparov.skife.org/blog/2007/10/11/">http://kasparov.skife.org/blog/2007/10/11/</a> <br/><br/>A blog contain a lot distributed computing information - <a href="http://www.highscalability.com/">http://www.highscalability.com/</a> <br/><br/>How Wikipedia manage their site - <a href="http://dammit.lt/uc/workbook2007.pdf">http://dammit.lt/uc/workbook2007.pdf</a> <br/><br/>Google tutorial for Design Distributed System - <a href="http://code.google.com/edu/parallel/dsd-tutorial.html">http://code.google.com/edu/parallel/dsd-tutorial.html</a> <br/><br/><a href="http://en.wikipedia.org/wiki/Distributed_hash_table">http://en.wikipedia.org/wiki/Distributed_hash_table</a> <br/><br/>The Hadoop Distributed File System: Architecture and Design - <a href="http://hadoop.apache.org/core/docs/r0.18.0/hdfs_design.html">http://hadoop.apache.org/core/docs/r0.18.0/hdfs_design.html</a> <br/><br/><a href="http://www.metabrew.com/article/anti-rdbms-a-list-of-distributed-key-value-stores/">http://www.metabrew.com[..]-a-list-of-distributed-key-value-stores/</a> <br/><br/>Applying experience from CPU design for distributed solution - <a href="http://blog.paralleluniverse.co/post/26909672264/on-distributed-memory">http://blog.paralleluniverse.co[..]o/post/26909672264/on-distributed-memory</a> <br/><br/>Distributed systems for fun and profit - <a href="http://book.mixu.net/distsys/single-page.html">http://book.mixu.net/distsys/single-page.html</a> <br/><br/>Monitor and design - <a href="http://highscalability.com/blog/2015/8/31/building-globally-distributed-mission-critical-applications.html">http://highscalability.com[..]buted-mission-critical-applications.html</a> <br/><br/>Uber case study - <a href="http://highscalability.com/blog/2015/9/14/how-uber-scales-their-real-time-market-platform.html">http://highscalability.com[..]les-their-real-time-market-platform.html</a> <br/><br/>Load balancer design - <a href="http://www.thegeekstuff.com/2016/01/load-balancer-intro/">http://www.thegeekstuff.com/2016/01/load-balancer-intro/</a> <br/><br/>Some issues of distributing logic to difference systems - <a href="http://blog.takipi.com/5-ways-to-not-f-up-your-microservices-in-production/">http://blog.takipi.com[..]t-f-up-your-microservices-in-production/</a> <br/><br/><a href="https://blog.acolyer.org/2019/03/08/a-generalised-solution-to-distributed-consensus/">https://blog.acolyer.org[..]lised-solution-to-distributed-consensus/</a> <br/><br/>Two Phase Commit - <a href="https://martinfowler.com/articles/patterns-of-distributed-systems/two-phase-commit.html">https://martinfowler.com[..]istributed-systems/two-phase-commit.html</a> <br/><br/><script type="text/javascript"><!--google_ad_client = "pub-9426659565807829";google_ad_slot = "9359905831";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script> 2022-01-19T00:24:47Z chat.txt 2022-01-19T00:23:06Z 2022-01-19T00:23:06Z <br/><a href="http://highscalability.com/blog/2022/1/3/designing-whatsapp.html">http://highscalability.com/blog/2022/1/3/designing-whatsapp.html</a> <br/><br/><a href="http://highscalability.com/blog/2014/2/26/the-whatsapp-architecture-facebook-bought-for-19-billion.html">http://highscalability.com[..]ture-facebook-bought-for-19-billion.html</a> <br/><br/><br/><script type="text/javascript"><!--google_ad_client = "pub-9426659565807829";google_ad_slot = "9359905831";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script> 2022-01-19T00:23:06Z error.txt 2022-01-15T11:28:58Z 2022-01-15T11:28:58Z <br/>What's in a Good Error Message? - <a href="https://www.morling.dev/blog/whats-in-a-good-error-message/">https://www.morling.dev/blog/whats-in-a-good-error-message/</a> <br/><br/><script type="text/javascript"><!--google_ad_client = "pub-9426659565807829";google_ad_slot = "9359905831";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script> 2022-01-15T11:28:58Z id.txt 2022-01-04T13:59:20Z 2022-01-04T13:59:20Z <br/>System wide unique nanosecond timestamps - <a href="http://blog.vanillajava.blog/2021/12/system-wide-unique-nanosecond-timestamps.html">http://blog.vanillajava.blog[..]m-wide-unique-nanosecond-timestamps.html</a> <a href="http://blog.vanillajava.blog/2022/01/distributed-unique-time-stamp.html">http://blog.vanillajava.blog[..]22/01/distributed-unique-time-stamp.html</a> <br/><br/><script type="text/javascript"><!--google_ad_client = "pub-9426659565807829";google_ad_slot = "9359905831";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script> 2022-01-04T13:59:20Z messaging.txt 2022-01-04T04:32:08Z 2022-01-04T04:32:08Z <br/>ZeroMQ: The Design of Messaging Middleware - <a href="http://www.drdobbs.com/article/print?articleId=240165684&siteSectionName=architecture-and-design">http://www.drdobbs.com[..]&siteSectionName=architecture-and-design</a> <br/><br/>When NOT to use a message queue - <a href="http://techblog.bozho.net/?p=1455">http://techblog.bozho.net/?p=1455</a> <br/><br/>现代IM系统中的消息系统架构 - 架构篇 - <a href="https://yq.aliyun.com/articles/698301">https://yq.aliyun.com/articles/698301</a> <br/><br/><script type="text/javascript"><!--google_ad_client = "pub-9426659565807829";google_ad_slot = "9359905831";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script> 2022-01-04T04:32:08Z news.txt 2022-01-01T13:51:12Z 2022-01-01T13:51:12Z <br/>BBC - <a href="https://www.infoq.com/presentations/bbc-distributed-monolith-microservices/">https://www.infoq.com[..]/bbc-distributed-monolith-microservices/</a> BBC to cloud - <a href="https://medium.com/bbc-design-engineering/delivering-bbc-online-using-serverless-79d4a9b0da16">https://medium.com[..]bbc-online-using-serverless-79d4a9b0da16</a> <a href="https://medium.com/bbc-design-engineering/optimising-serverless-for-bbc-online-118fe2c04beb">https://medium.com[..]g-serverless-for-bbc-online-118fe2c04beb</a> <a href="https://www.infoq.com/presentations/bbc-website-architecture">https://www.infoq.com/presentations/bbc-website-architecture</a> <a href="https://www.infoq.com/news/2021/01/bbc-serverless-scale/">https://www.infoq.com/news/2021/01/bbc-serverless-scale/</a> <br/><br/>FT, Enabling Data-Driven Decisions - <a href="https://medium.com/ft-product-technology/enabling-data-driven-decisions-564359b79788">https://medium.com[..]bling-data-driven-decisions-564359b79788</a> <a href="https://www.infoq.cn/article/ukJgERosvf63sb8YJxrx">https://www.infoq.cn/article/ukJgERosvf63sb8YJxrx</a> <br/><br/>WSJ - <a href="https://medium.com/the-wall-street-journal/how-we-rebuilt-live-coverage-for-election-night-and-beyond-efe35221bd53">https://medium.com[..]r-election-night-and-beyond-efe35221bd53</a> <br/><br/>Financial Times Data Platform: From zero to hero - <a href="https://medium.com/ft-product-technology/financial-times-data-platform-from-zero-to-hero-143156bffb1d">https://medium.com[..]-platform-from-zero-to-hero-143156bffb1d</a> <br/><br/><script type="text/javascript"><!--google_ad_client = "pub-9426659565807829";google_ad_slot = "9359905831";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script> 2022-01-01T13:51:12Z date.txt 2022-01-01T12:44:21Z 2022-01-01T12:44:21Z <br/>Date handling look simple but easy to fail in trap. Even worst is this is easy to have bad data which hard to fix. Here is an example - <a href="http://blogs.msdn.com/jensenh/archive/2005/11/23/496246.aspx">http://blogs.msdn.com/jensenh/archive/2005/11/23/496246.aspx</a> <br/><br/>One tip for testing application with time dependence, treat it as random - <a href="http://googletesting.blogspot.com/2008/04/tott-time-is-random.html">http://googletesting.blogspot.com[..]pot.com/2008/04/tott-time-is-random.html</a> <br/><br/>Explanation of issues of Joda-time, basically it still haven't map the human view of time close enough than machine view of time - <a href="http://www.jroller.com/scolebourne/entry/why_jsr_310_isn_t">http://www.jroller.com/scolebourne/entry/why_jsr_310_isn_t</a> <br/><br/>Screencast of how to driven a fluent Date API - <a href="http://tedyoung.blogsome.com/2010/02/11/my-first-screencast-writing-fluent-apis-in-java-episode-1-comparing-dates/">http://tedyoung.blogsome.com[..]-apis-in-java-episode-1-comparing-dates/</a> <br/><br/>解读数据架构的 2021:大数据 1.0 体系基本建成,但头上仍有几朵乌云 - <a href="https://www.infoq.cn/article/gHTPkmo0vZhE7vwFAGij">https://www.infoq.cn/article/gHTPkmo0vZhE7vwFAGij</a> <br/><br/><script type="text/javascript"><!--google_ad_client = "pub-9426659565807829";google_ad_slot = "9359905831";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script> 2022-01-01T12:44:21Z microservice.txt 2022-01-01T12:38:08Z 2022-01-01T12:38:08Z <br/>The Hidden Dividends of Microservices - <a href="http://queue.acm.org/detail.cfm?ref=rss&id=2956643">http://queue.acm.org/detail.cfm?ref=rss&id=2956643</a> <br/><br/>Best practices - <a href="http://www.infoq.com/cn/articles/best-practice-of-constructing-micro-service-system-part03">http://www.infoq.com[..]constructing-micro-service-system-part03</a> <br/><br/><a href="http://basho.com/posts/technical/microservices-please-dont/">http://basho.com/posts/technical/microservices-please-dont/</a> <br/><br/>Compare using library / service - <a href="http://blog.jessitron.com/2017/01/dependencies.html">http://blog.jessitron.com/2017/01/dependencies.html</a> <a href="http://www.infoq.com/cn/articles/dependency-management-whether-library-or-service">http://www.infoq.com[..]cy-management-whether-library-or-service</a> <br/><br/>What We Got Wrong: Lessons from the Birth of Microservices - <a href="https://www.infoq.com/presentations/google-microservices/">https://www.infoq.com/presentations/google-microservices/</a> <a href="https://www.infoq.cn/article/L*bT1UfuVoj1I6NRNM3U">https://www.infoq.cn/article/L*bT1UfuVoj1I6NRNM3U</a> <br/><br/>From Monolith to Microservices for Github - <a href="https://www.infoq.com/presentations/github-rails-monolith-microservices/">https://www.infoq.com[..]ons/github-rails-monolith-microservices/</a> <a href="https://www.infoq.cn/article/zYGF4FpIVVt5U2omioUu">https://www.infoq.cn/article/zYGF4FpIVVt5U2omioUu</a> <br/><br/>Monolithic to Microservices Architecture with Patterns & Best Practices - <a href="https://medium.com/design-microservices-architecture-with-patterns/monolithic-to-microservices-architecture-with-patterns-best-practices-a768272797b2">https://medium.com[..]ith-patterns-best-practices-a768272797b2</a> <a href="https://www.infoq.cn/article/6dlQZisMiXK3hzLIwEET">https://www.infoq.cn/article/6dlQZisMiXK3hzLIwEET</a> <br/><br/>Don’t start with microservices – monoliths are your friend - <a href="https://arnoldgalovics.com/microservices-in-production/">https://arnoldgalovics.com/microservices-in-production/</a> <a href="https://www.infoq.cn/article/qhx3Dazko1EC2KMimJBc">https://www.infoq.cn/article/qhx3Dazko1EC2KMimJBc</a> <br/><br/><script type="text/javascript"><!--google_ad_client = "pub-9426659565807829";google_ad_slot = "9359905831";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script> 2022-01-01T12:38:08Z netflix.txt 2021-11-28T12:45:20Z 2021-11-28T12:45:20Z <br/><a href="https://medium.com/refraction-tech-everything/how-netflix-works-the-hugely-simplified-complex-stuff-that-happens-every-time-you-hit-play-3a40c9be254b">https://medium.com[..]ens-every-time-you-hit-play-3a40c9be254b</a> <br/><br/>Life of a Netflix Partner Engineer — The case of the extra 40 ms - <a href="https://netflixtechblog.com/life-of-a-netflix-partner-engineer-the-case-of-extra-40-ms-b4c2dd278513">https://netflixtechblog.com[..]eer-the-case-of-extra-40-ms-b4c2dd278513</a> <br/><br/>A look under the hood of the most successful streaming service on the planet - <a href="https://www.theverge.com/22787426/netflix-cdn-open-connect">https://www.theverge.com/22787426/netflix-cdn-open-connect</a> <a href="https://www.infoq.cn/article/12qoAI5BTTDraSwpb7L0">https://www.infoq.cn/article/12qoAI5BTTDraSwpb7L0</a> <br/><br/><script type="text/javascript"><!--google_ad_client = "pub-9426659565807829";google_ad_slot = "9359905831";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script> 2021-11-28T12:45:20Z Architecture.txt 2021-11-25T23:26:25Z 2021-11-25T23:26:25Z <br/>Top Ten Software Architecture Mistakes - <a href="http://www.infoq.com/news/2007/10/top-ten-architecture-mistakes">http://www.infoq.com/news/2007/10/top-ten-architecture-mistakes</a> <br/><br/>Discussion about the balance of upfront design - <a href="http://blog.objectmentor.com/articles/2009/04/25/the-scatology-of-agile-architecture">http://blog.objectmentor.com[..]4/25/the-scatology-of-agile-architecture</a> <br/><br/>There is no conflict in agile and architecture - <a href="http://www.andrejkoelewijn.com/wp/2011/03/28/there-is-no-conflict-in-agile-and-architecture/">http://www.andrejkoelewijn.com[..]s-no-conflict-in-agile-and-architecture/</a> <br/><br/><a href="http://c2.com/cgi/wiki?HexagonalArchitecture">http://c2.com/cgi/wiki?HexagonalArchitecture</a> <br/><br/>Experience of build instead of buy - <a href="http://arstechnica.com/business/2012/05/build-versus-buy-one-companys-decision-to-go-it-alone/">http://arstechnica.com[..]uy-one-companys-decision-to-go-it-alone/</a> <br/><br/>Problem of too many layer - <a href="http://johannesbrodwall.com/2014/07/10/the-madness-of-layered-architecture/">http://johannesbrodwall.com[..]/10/the-madness-of-layered-architecture/</a> <br/><br/><a href="http://edmundkirwan.com/general/simple.html">http://edmundkirwan.com/general/simple.html</a> <br/><br/><a href="http://blog.schauderhaft.de/2014/06/29/you-want-to-become-an-software-architect-here-is-your-reading-list/">http://blog.schauderhaft.de[..]are-architect-here-is-your-reading-list/</a> <br/><br/>Sometime it is worth to build to throw - <a href="http://martinfowler.com/bliki/SacrificialArchitecture.html">http://martinfowler.com/bliki/SacrificialArchitecture.html</a> <br/><br/> Business Transactions<br/> External Dependencies<br/> Caching Strategy<br/> Garbage Collection<br/> Application Topology<br/><a href="http://blog.appdynamics.com/java/top-5-java-performance-metrics-to-capture-in-enterprise-applications/">http://blog.appdynamics.com[..]s-to-capture-in-enterprise-applications/</a> <br/><br/>invent a solution the majority of whose components depend on no others with those few components whose task it is to compose those other components being left largely to coordination roles. - <a href="http://edmundkirwan.com/general/simple.html">http://edmundkirwan.com/general/simple.html</a> <br/><br/><a href="http://blog.cloudera.com/blog/2014/09/getting-started-with-big-data-architecture/">http://blog.cloudera.com[..]ting-started-with-big-data-architecture/</a> <br/><br/>Twitter - <a href="http://www.infoq.com/cn/articles/twitter-architecture-evolution">http://www.infoq.com/cn/articles/twitter-architecture-evolution</a> <a href="http://highscalability.com/blog/2016/4/20/how-twitter-handles-3000-images-per-second.html">http://highscalability.com[..]tter-handles-3000-images-per-second.html</a> <br/><br/>Suning, more on HTTP - <a href="http://www.infoq.com/cn/articles/suning-product-details-system-architecture-design">http://www.infoq.com[..]oduct-details-system-architecture-design</a> <br/><br/>Decision - <a href="https://javax0.wordpress.com/2016/05/04/architects-dont-decide/">https://javax0.wordpress.com/2016/05/04/architects-dont-decide/</a> <br/><br/>Some suggestion of making system simple, well, but the suggestion itself it is that simple - <a href="https://www.infoq.com/articles/driving-architectural-simplicity">https://www.infoq.com/articles/driving-architectural-simplicity</a> <br/><br/><a href="https://medium.com/towards-data-science/10-common-software-architectural-patterns-in-a-nutshell-a0b47a1e9013">https://medium.com[..]ural-patterns-in-a-nutshell-a0b47a1e9013</a> <br/><br/><a href="https://www.in28minutes.com/introduction-to-software-architecture">https://www.in28minutes.com/introduction-to-software-architecture</a> <br/><br/>Explaining common different architecture patterns - <a href="https://levelup.gitconnected.com/software-architecture-the-important-architectural-patterns-you-need-to-know-a1f5ea7e4e3d">https://levelup.gitconnected.com[..]l-patterns-you-need-to-know-a1f5ea7e4e3d</a> <br/><br/>Software Architecture Patterns - <a href="https://orkhanscience.medium.com/software-architecture-patterns-5-mins-read-e9e3c8eb47d2">https://orkhanscience.medium.com[..]ecture-patterns-5-mins-read-e9e3c8eb47d2</a> <br/><br/><script type="text/javascript"><!--google_ad_client = "pub-9426659565807829";google_ad_slot = "9359905831";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script> 2021-11-25T23:26:25Z db.txt 2021-11-21T13:07:33Z 2021-11-21T13:07:33Z <br/>Crashproofing the Original NoSQL Key-Value Store - <a href="https://queue.acm.org/detail.cfm?ref=rss&id=3487353">https://queue.acm.org/detail.cfm?ref=rss&id=3487353</a> <br/><br/>The history of Berkeley DB - <a href="https://queue.acm.org/detail.cfm?ref=rss&id=3501713">https://queue.acm.org/detail.cfm?ref=rss&id=3501713</a> <br/><br/><script type="text/javascript"><!--google_ad_client = "pub-9426659565807829";google_ad_slot = "9359905831";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script> 2021-11-21T13:07:33Z examples.txt 2021-09-30T01:22:17Z 2021-09-30T01:22:17Z <br/>Non-Software Examples of Software Design Patterns - <a href="http://www.cours.polymtl.ca/inf3700/divers/nonSoftwareExample/patexamples.html">http://www.cours.polymtl.ca[..]vers/nonSoftwareExample/patexamples.html</a> <br/><br/><a href="http://www.dotnetcube.com/post/Design-Patterns-e28093-Using-the-Chain-of-Responsibility-Pattern-in-C.aspx">http://www.dotnetcube.com[..]hain-of-Responsibility-Pattern-in-C.aspx</a> <br/><br/>Patterns to replace switch - <a href="http://jamesladdcode.com/?p=299">http://jamesladdcode.com/?p=299</a> <br/><br/>Design pattern in JDK - <a href="http://www.javacodegeeks.com/2011/03/design-patterns-in-jdk.html">http://www.javacodegeeks.com/2011/03/design-patterns-in-jdk.html</a> <br/><br/>Pattern examples in java - <a href="https://java-design-patterns.com/patterns/">https://java-design-patterns.com/patterns/</a> <br/><br/><script type="text/javascript"><!--google_ad_client = "pub-9426659565807829";google_ad_slot = "9359905831";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script> 2021-09-30T01:22:17Z jOOQ.txt 2021-08-23T14:12:35Z 2021-08-23T14:12:35Z <br/>10 Things You Didn’t Know About jOOQ - <a href="https://blog.jooq.org/10-things-you-didnt-know-about-jooq/">https://blog.jooq.org/10-things-you-didnt-know-about-jooq/</a> <br/><br/><script type="text/javascript"><!--google_ad_client = "pub-9426659565807829";google_ad_slot = "9359905831";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script> 2021-08-23T14:12:35Z saga.txt 2021-07-24T14:13:07Z 2021-07-24T14:13:07Z <br/><br/>Saga Orchestration for Microservices Using the Outbox Pattern - <a href="https://www.infoq.com/articles/saga-orchestration-outbox/">https://www.infoq.com/articles/saga-orchestration-outbox/</a> <a href="https://www.infoq.cn/article/TuhloSAI0MpB2Nj4XkFK">https://www.infoq.cn/article/TuhloSAI0MpB2Nj4XkFK</a> <br/><br/><script type="text/javascript"><!--google_ad_client = "pub-9426659565807829";google_ad_slot = "9359905831";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script> 2021-07-24T14:13:07Z Best pattern.txt 2021-06-21T13:31:01Z 2021-06-21T13:31:01Z <br/>Discussion about which pattern is most important - <a href="http://www.adam-bien.com/roller/page/abien?entry=most_important_patterns">http://www.adam-bien.com[..]page/abien?entry=most_important_patterns</a> <br/><br/>Pattern Language Titles - <a href="http://c2.com/ppr/titles.html">http://c2.com/ppr/titles.html</a> <br/><br/>10 Design Patterns every Software Architect and Software Engineer must know - <a href="https://ravindraelicherla.medium.com/10-design-patterns-every-software-architect-must-know-b33237bc01c2">https://ravindraelicherla.medium.com[..]oftware-architect-must-know-b33237bc01c2</a> <br/><br/><script type="text/javascript"><!--google_ad_client = "pub-9426659565807829";google_ad_slot = "9359905831";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script> 2021-06-21T13:31:01Z Implementation.txt 2021-06-19T13:49:45Z 2021-06-19T13:49:45Z <br/>Tired with duplicating Try-Catch for resource acquisition? Can try to create proxy method - <a href="http://hamletdarcy.blogspot.com/2008/09/declarative-synchronization-with-java.html">http://hamletdarcy.blogspot.com[..]clarative-synchronization-with-java.html</a> <br/><br/>Discussion of naming of if block - <a href="http://blog.objectmentor.com/articles/2008/09/26/if-methods-redux">http://blog.objectmentor.com/articles/2008/09/26/if-methods-redux</a> <br/><br/>Factors for choosing a strategic technology stack, runtime performance is not a factor for him, probably good idea - <a href="http://jchyip.blogspot.com/2011/04/factors-for-choosing-strategic.html">http://jchyip.blogspot.com[..]1/04/factors-for-choosing-strategic.html</a> <br/><br/>Don't think , stay focus - <a href="http://www.threeriversinstitute.org/blog/?p=594">http://www.threeriversinstitute.org/blog/?p=594</a> <br/><br/>Using class name as variable name is a bad thing? I doubt about it, but interesting idea - <a href="http://www.warski.org/blog/2013/01/dry-parameter-names/">http://www.warski.org/blog/2013/01/dry-parameter-names/</a> <br/><br/>The problem of using generic name - <a href="http://martinfowler.com/bliki/TransparentCompilation.html">http://martinfowler.com/bliki/TransparentCompilation.html</a> <br/><br/>Beware of where memory allocated, sometime there is no off side for lazy initalization - <a href="http://plumbr.eu/blog/would-you-dare-to-change-hashmap-implementation">http://plumbr.eu[..]ou-dare-to-change-hashmap-implementation</a> <br/><br/>Some suggestion of how to code in order to prevent unreproducible bugs - <a href="http://googletesting.blogspot.hk/2014/02/minimizing-unreproducible-bugs.html">http://googletesting.blogspot.hk[..]4/02/minimizing-unreproducible-bugs.html</a> <br/><br/>More careful to check null - <a href="http://blog.jooq.org/2015/08/11/top-10-useful-yet-paranoid-java-programming-techniques/">http://blog.jooq.org[..]et-paranoid-java-programming-techniques/</a> <br/><br/><a href="http://www.infoq.com/cn/articles/wisdom-of-programming">http://www.infoq.com/cn/articles/wisdom-of-programming</a> <br/><br/>The fewer conditions you test for, the better your code “tastes”. - <a href="https://medium.com/@bartobri/applying-the-linus-tarvolds-good-taste-coding-requirement-99749f37684a#.1glkhe7np">https://medium.com[..]ding-requirement-99749f37684a#.1glkhe7np</a> <br/><br/>Think twice before running a loop - <a href="https://blog.jetbrains.com/idea/2017/08/code-smells-iteration">https://blog.jetbrains.com/idea/2017/08/code-smells-iteration</a> <br/><br/>Example of how to remove mutation status - <a href="https://blog.jetbrains.com/idea/2017/08/code-smells-mutation">https://blog.jetbrains.com/idea/2017/08/code-smells-mutation</a> <br/><br/>The Best Algorithm No One Knows About, linear randomization - <a href="https://getkerf.wordpress.com/2016/03/30/the-best-algorithm-no-one-knows-about/">https://getkerf.wordpress.com[..]0/the-best-algorithm-no-one-knows-about/</a> <br/><br/>Small change can make big difference - <a href="https://blog.pitest.org/how-i-once-saved-half-a-million-dollars-with-a-single-character-code-change/">https://blog.pitest.org[..]ars-with-a-single-character-code-change/</a> <br/><br/>Eager is Easy, Lazy is Labyrinthine - <a href="https://medium.com/javarevisited/eager-is-easy-lazy-is-labyrinthine-b12605f13048">https://medium.com[..]s-easy-lazy-is-labyrinthine-b12605f13048</a> <br/><br/>How to organize your code? - <a href="https://kislayverma.com/programming/how-to-organize-your-code/">https://kislayverma.com/programming/how-to-organize-your-code/</a> <br/><br/>When you have to - <a href="https://www.codejava.net/coding/java-getter-and-setter-tutorial-from-basics-to-best-practices">https://www.codejava.net[..]r-tutorial-from-basics-to-best-practices</a> <br/><br/><script type="text/javascript"><!--google_ad_client = "pub-9426659565807829";google_ad_slot = "9359905831";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script> 2021-06-19T13:49:45Z