Reading: Week 01, Jan 01 - Jan 07, 2018

Jan 07, 2018

[7] The 5 Problem-Solving Skills of Great Software Developers #advice - I particularly enjoy the example of making coffee and how it demonstrates the similarity between software engineering and usual activities. Putting aside software engineering stuff, a typical person also attempts to achieve such ultimate goals (the skills mentioned).

Jan 05, 2018

[6] MCE 2014: Jon Reid - Test Driven Development for iOS (and anything) #testing - Great talk! Jon mentioned 3 types of unit testing: return value, state and interactions. He also brought up dependency injection and several ways to implement it: extract & override, method injection, property injection, constructor injection, and ambient context. - The Q&A is interesting as well. Some highlighting concepts were mentioned: funtional testing, acceptance testing, data-driven testing

[5] Testing on the Toilet: Testing State vs. Testing Interactions #testing - Two key points:

(1) Just because a test that uses interactions is passing doesn’t mean the code is working properly. This is why in most cases, you want to test state, not interactions.

(2) In general, interactions should be tested when correctness doesn’t just depend on what the code’s output is, but also how the output is determined.

Jan 03, 2018

[4] The 10 statistical techniques data scientists need to master #data-science - TLDR. Details later. TIL: Shrinkage –> regularization.

[3] How to Read Mathematics #maths

Jan 02, 2018

[2] The Guide to Mobile App Design: Best Practices for 2018 and Beyond #mobile #ux #design - A bit lengthy, but informative. Can treat it as a handbook of mobile UX design. - [Not quite relevant] A minor detail about the usability of this website. When I scrolled down and saw the ads “All for free”, I thought it was the end of the article and hit Cmd + W to leave the page. When revisiting it, I realized that I did not read the remaining content… Why? I guess it’s because the advertisements do look a lot like a website footer.

[1] Basics of parallel programming with Swift #ios #concurrency #parallelism - This post provides a very good overview of how to deal with concurrency (the article did not mention much about parallelism as in the title). One take-away I am interested in is the example in the mention of Atomic. I thought it is the OS’s duty to guarantee proper operations on 64-bit integers 😲.

comments powered by Disqus