Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
reading:2023:w27 [2023/06/30 18:58] – def. maintenance hotspots, quote DeMarco pfmreading:2023:w27 [2023/07/09 08:40] (current) – broszura: Czy praca naprawdę popłaca? pfm
Line 1: Line 1:
 ====== Week 2023-W27 in reading ====== ====== Week 2023-W27 in reading ======
  
-===== Longitudinal Evaluation of Open-Source Software Maintainability =====+===== Reactive systems =====
  
-Source[[https://arxiv.org/abs/2003.00447|arXiv:2003.00447]].+Sources:
  
-==== Definitions ====+  - [[https://www.reactivemanifesto.org/|Reactive Manifesto]] 
 +  - [[https://www.reactiveprinciples.org/|Reactive Principles]]
  
-> **Maintainability** is the "degree of effectiveness and efficiency with which product or system can be modified to improve it, correct it or adapt it to changes in environment, and in requirements".+Key properties of a Reactive system:
  
-**Maintenance hotspots**, (...) parts of the source code that are most difficult to maintain.+  responsive --- responds in a reasonable time if possible; 
 +  resilient --- stays responsive even when failures occur (e.gfail gently, isolate failures so they don't propagate and cause the whole system to fail); 
 +  * elastic --- stays responsive under varying load; 
 +  * message-driven --- relies on asynchronous communication.
  
-==== Quotes ====+My key take-away here is that asynchronously processed messages update some model behind the scenes, so when the time comes to return some data to the user, it is ready. However, this probably involves eventual consistency and increased complexity.
  
-> You cannot control what you cannot measure+See also: 
---- DeMarcoT. (1982). [[https://isbnsearch.org/isbn/9780131717114|Controlling Software Projects; ManagementMeasurement and Estimation]].+ 
 +  * [[https://martinfowler.com/eaaDev/EventSourcing.html|Martin Fowler's "Event Sourcing"]] 
 +  * [[https://learn.microsoft.com/en-us/azure/architecture/patterns/bulkhead|Bulkhead pattern]] 
 + 
 +===== Evolving HTTP APIs ===== 
 + 
 +Source: [[https://www.mnot.net/blog/2012/12/04/api-evolution|Evolving HTTP APIs]] 
 + 
 +  Compatible versions shouldn't cause any adjustments (shouldn't change versions). 
 +  - Avoid major / incompatible versions. 
 +  - Be backward-compatiblebut still limiting the impactNew version requires everyone to adapt, so keeping the same version with some adjustments might make more sense from effort perspective. 
 + 
 +===== Self-contained Systems ===== 
 + 
 +Sources: 
 + 
 +  - [[https://www.innoq.com/en/articles/2016/11/self-contained-systems-different-microservices/|Self-contained Systems: A Different Approach to Microservices]] 
 +  - [[https://scs-architecture.org/|Self-Contained Systems]] 
 + 
 +This idea doesn't sound very innovative, while it does sound a bit strict. Experience tells me being strict is good in theory, while practice one has to be flexible/open and mix things to achieve goals. 
 + 
 +===== Firefox 115.0 release notes ===== 
 + 
 +According [[https://www.mozilla.org/en-US/firefox/115.0/releasenotes/|to release notes]]: 
 + 
 +> Certain Firefox users may come across a message in the extensions panel indicating that their add-ons are not allowed on the site currently open. We have introduced a new back-end feature to only allow some extensions monitored by Mozilla to run on specific websites for various reasons, including security concerns. 
 + 
 +However, this isn't very transparent about those other reasons for blocking extensions. Could for example Google request Mozilla to disable ad-blockers on YouTube? 
 + 
 +===== Czy praca naprawdę popłaca? ===== 
 + 
 +Źródło: 
 +  * broszura otrzymana na [[kongresono:2023|Kongresono 2023]]; 
 +  * online (ang.): [[http://spunk.org/library/writers/brown/sp001735.html|Does Work Really Work?]], 
 +  * kopia dostępna w [[https://theanarchistlibrary.org/library/l-susan-brown-does-work-really-work|The Anarchist Library]], 
 +  * tłumaczenie: [[https://nieporzadekdistro.wordpress.com/|nieporządek distro]] 
 + 
 +W tym krótkim tekście [[wppl>L. Susan Brown]]: 
 +  - wyjaśnia dlaczego relacja pracodawca--pracownik jest identyczna z relacją pan--niewolnik --- bo pracownik rezygnuje z części swojej wolności na czas wykonywania pracy najemnej; 
 +  - podważa pojęcie "własności w osobie" --- pracownik jest niepodzielną istotą i nie może oddelegować pracy do swoich umiejętności wykorzystywanych przez pracodawcę, tylko całą swoją osobę angażuje w wykonywanie pracy (nie może np. skorzystać ze wszystkich innych swoich umiejętności i możliwości); 
 +  - pokazuje że barter wcale nie jest rozwiązaniem i przytacza trudności z oceną wartości pracy; 
 +  - zachęca do tzw. //pracy wolnej//, wykonywanej z poczucia potrzeby a nie dla zysku. 
 + 
 +Przykładem pracy wolnej jest np. moje zaangażowanie w FOSS.
  
-t.b.c.