# notes

path: Readwise/17-Year-Old Student Exposes Germany's 'Secret' Pirate Site Blocklist.md
sortable_path: Readwise17-Year-Old Student Exposes Germany's 'Secret' Pirate Site Blocklist.md
title: 17-Year-Old Student Exposes Germany's 'Secret' Pirate Site Blocklist
lead: ![rw-book-cover](https://news.ycombinator.com/favicon.ico)
checksum: 051911ac83c1b1b38fd49929fd0cdb0f0dbae03a4d9bf6a490c5b64c29a120e5
created: 2024-09-12 14:56:45.621498943+00:00
modified: 2024-09-12 14:29:22.210841961+00:00
metadata: {}
body:
  ![rw-book-cover](https://news.ycombinator.com/favicon.ico)

  ## Metadata
  - Author: [[isaacfrond]]
  - Full Title: 17-Year-Old Student Exposes Germany's 'Secret' Pirate Site Blocklist
  - Category: #articles
  - URL: https://torrentfreak.com/17-year-old-student-exposes-germanys-secret-pirate-site-blocklist-240822/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=17-Year-Old%20Student%20Exposes%20Germany%27s%20%27Secret%27%20Pirate%20Site%20Blocklist
  > [!tldr]
  > A 17-year-old student in Germany has created a website to reveal the blocked pirate sites that major internet providers do not disclose. This initiative aims to increase transparency and address concerns about censorship related to copyright enforcement. The site, CUIIliste.de, lists 275 blocked domains, allowing users to see which sites are restricted.

  ## Highlights
  watchdog [View Highlight](https://read.readwise.io/read/01j64wj1fy8b0dyhcdsjgv4vta))
  > [!note]
  > Watchdog: A term used to describe an individual or organization that monitors and oversees the actions of others, often to ensure accountability, transparency, and adherence to laws or regulations. Watchdogs play a critical role in various fields, including journalism, government, and environmental protection, by investigating misconduct, exposing corruption, and advocating for the public interest. Their function is essential in promoting ethical standards and fostering public trust in institutions.
  > In the context of Isaac Frond's article, the term "watchdog" refers to individuals or organizations that monitor and ensure accountability regarding governmental or institutional actions, particularly in relation to transparency and rights. The lack of public knowledge about the blocked pirate sites in Germany has led to frustration among journalists and advocates, highlighting the need for oversight. The 17-year-old student, along with his friends, embodies this watchdog role by exposing the secretive blocklist, thereby promoting transparency and challenging potential overreach in copyright enforcement.

raw_content:
  # 17-Year-Old Student Exposes Germany's 'Secret' Pirate Site Blocklist

  ![rw-book-cover](https://news.ycombinator.com/favicon.ico)

  ## Metadata
  - Author: [[isaacfrond]]
  - Full Title: 17-Year-Old Student Exposes Germany's 'Secret' Pirate Site Blocklist
  - Category: #articles
  - URL: https://torrentfreak.com/17-year-old-student-exposes-germanys-secret-pirate-site-blocklist-240822/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=17-Year-Old%20Student%20Exposes%20Germany%27s%20%27Secret%27%20Pirate%20Site%20Blocklist
  > [!tldr]
  > A 17-year-old student in Germany has created a website to reveal the blocked pirate sites that major internet providers do not disclose. This initiative aims to increase transparency and address concerns about censorship related to copyright enforcement. The site, CUIIliste.de, lists 275 blocked domains, allowing users to see which sites are restricted.

  ## Highlights
  watchdog [View Highlight](https://read.readwise.io/read/01j64wj1fy8b0dyhcdsjgv4vta))
  > [!note]
  > Watchdog: A term used to describe an individual or organization that monitors and oversees the actions of others, often to ensure accountability, transparency, and adherence to laws or regulations. Watchdogs play a critical role in various fields, including journalism, government, and environmental protection, by investigating misconduct, exposing corruption, and advocating for the public interest. Their function is essential in promoting ethical standards and fostering public trust in institutions.
  > In the context of Isaac Frond's article, the term "watchdog" refers to individuals or organizations that monitor and ensure accountability regarding governmental or institutional actions, particularly in relation to transparency and rights. The lack of public knowledge about the blocked pirate sites in Germany has led to frustration among journalists and advocates, highlighting the need for oversight. The 17-year-old student, along with his friends, embodies this watchdog role by exposing the secretive blocklist, thereby promoting transparency and challenging potential overreach in copyright enforcement.


path: Readwise/3 Simple Hacks to Stay Up-to-Date as a Developer.md
sortable_path: Readwise3 Simple Hacks to Stay Up-to-Date as a Developer.md
title: 3 Simple Hacks to Stay Up-to-Date as a Developer
lead: ![rw-book-cover](https://i.ytimg.com/vi/AIUw82G-jKE/maxresdefault.jpg)
checksum: aadb7f3b19170b6c595fabbfe140871e3b11a4ee2a55c3254569a0b85779cb45
created: 2024-09-12 14:56:45.627428211+00:00
modified: 2024-09-12 14:29:22.210841961+00:00
metadata: {}
body:
  ![rw-book-cover](https://i.ytimg.com/vi/AIUw82G-jKE/maxresdefault.jpg)

  ## Metadata
  - Author: [[Bran van der Meer]]
  - Full Title: 3 Simple Hacks to Stay Up-to-Date as a Developer
  - Category: #articles
  - Document Tags: [[star]] 
  - URL: https://www.youtube.com/watch?v=AIUw82G-jKE
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=3%20Simple%20Hacks%20to%20Stay%20Up-to-Date%20as%20a%20Developer

  ## Highlights
  there's just too much you have to filter somehow you have to find the right news aggregators for your topic [View Highlight](https://read.readwise.io/read/01j6ye17qj6mqt3hvcv776vd0t))

  social media is it's itself an
  aggregator of content of course and you can even argue that daily doev which I just showed is social media I recommend to follow specific creators that you like and if you don't have anybody you like yet then you can try and find those people from now on whenever you go to conferences you can pay attention who the speaker is whenever you're reading books or reading articles look up the author see if they have a Blog see if they publish other things [View Highlight](https://read.readwise.io/read/01j6ye8bktbvyjv1763jf4333z))

  try and go to at least one conference a year [View Highlight](https://read.readwise.io/read/01j6yebe0q7bq1gdgmf4zzw6xa))

  I like conferences because they have a
  tendency to burst your filter bubble [View Highlight](https://read.readwise.io/read/01j6yeckqdxp8na7meb3m1fz14))

  you're looking for a job a Meetup is often a chance to meet a company that's very local that's very close to where you live and you get a chance to meet them outside of the normal hiring process which can also be an advantage [View Highlight](https://read.readwise.io/read/01j6yees1azkpzgsabf3r546av))

  calm any fear you may have fear fear of becoming
  irrelevant [View Highlight](https://read.readwise.io/read/01j6yefnrc19pj2f04dq6p6h7g))

  what I do is once a year I read a lot of vacancies I don't think about applying for another job I'm not actually applying for another job I am just purely looking at what companies are looking for [View Highlight](https://read.readwise.io/read/01j6yeg5yy6m8g2tpgd4xj5gv6))

raw_content:
  # 3 Simple Hacks to Stay Up-to-Date as a Developer

  ![rw-book-cover](https://i.ytimg.com/vi/AIUw82G-jKE/maxresdefault.jpg)

  ## Metadata
  - Author: [[Bran van der Meer]]
  - Full Title: 3 Simple Hacks to Stay Up-to-Date as a Developer
  - Category: #articles
  - Document Tags: [[star]] 
  - URL: https://www.youtube.com/watch?v=AIUw82G-jKE
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=3%20Simple%20Hacks%20to%20Stay%20Up-to-Date%20as%20a%20Developer

  ## Highlights
  there's just too much you have to filter somehow you have to find the right news aggregators for your topic [View Highlight](https://read.readwise.io/read/01j6ye17qj6mqt3hvcv776vd0t))

  social media is it's itself an
  aggregator of content of course and you can even argue that daily doev which I just showed is social media I recommend to follow specific creators that you like and if you don't have anybody you like yet then you can try and find those people from now on whenever you go to conferences you can pay attention who the speaker is whenever you're reading books or reading articles look up the author see if they have a Blog see if they publish other things [View Highlight](https://read.readwise.io/read/01j6ye8bktbvyjv1763jf4333z))

  try and go to at least one conference a year [View Highlight](https://read.readwise.io/read/01j6yebe0q7bq1gdgmf4zzw6xa))

  I like conferences because they have a
  tendency to burst your filter bubble [View Highlight](https://read.readwise.io/read/01j6yeckqdxp8na7meb3m1fz14))

  you're looking for a job a Meetup is often a chance to meet a company that's very local that's very close to where you live and you get a chance to meet them outside of the normal hiring process which can also be an advantage [View Highlight](https://read.readwise.io/read/01j6yees1azkpzgsabf3r546av))

  calm any fear you may have fear fear of becoming
  irrelevant [View Highlight](https://read.readwise.io/read/01j6yefnrc19pj2f04dq6p6h7g))

  what I do is once a year I read a lot of vacancies I don't think about applying for another job I'm not actually applying for another job I am just purely looking at what companies are looking for [View Highlight](https://read.readwise.io/read/01j6yeg5yy6m8g2tpgd4xj5gv6))


path: Readwise/8 Principles for a Secure Cloud Environment.md
sortable_path: Readwise8 Principles for a Secure Cloud Environment.md
title: 8 Principles for a Secure Cloud Environment
lead: ![rw-book-cover](https://readwise-assets.s3.amazonaws.com/static/images/article4.6bc1851654a0.png)
checksum: 8e317bf01f4f8e39925abc873efe579f2d04367f143605bf9a122c019572ca77
created: 2024-09-12 14:56:45.634667846+00:00
modified: 2024-09-12 14:29:22.210841961+00:00
metadata: {}
body:
  ![rw-book-cover](https://readwise-assets.s3.amazonaws.com/static/images/article4.6bc1851654a0.png)

  ## Metadata
  - Author: [[omerxx@gmail.com]]
  - Full Title: 8 Principles for a Secure Cloud Environment
  - Category: #articles
  - URL: https://omnivore.app/aleidk/8-principles-for-a-secure-cloud-environment-18f1fa5c54d
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=8%20Principles%20for%20a%20Secure%20Cloud%20Environment
  > [!tldr]
  > On July 15th, 2019, I messed up bad. Real bad. I wanted to finish a project quickly, and show a quick POC to a customer I was working with. To make a long story short, I pushed a container, to a public repo, containing admin credentials to an AWS account.

  ## Highlights
  CISO BS. [View Highlight](https://read.readwise.io/read/01j58cb911jv15qjeccffqxbv1))
  > [!note]
  > In "8 Principles For a Secure Cloud Environment," the term "CISO" refers to the Chief Information Security Officer, a role responsible for overseeing and ensuring the security of an organization's information and systems. The author implies that some principles may be perceived as excessive or overly cautious, often dismissed as "CISO BS," yet emphasizes their importance based on personal experiences with security incidents. Ultimately, the mention of CISO highlights the necessity of adopting robust security practices to mitigate risks in cloud environments, regardless of differing opinions on their complexity.

  Key resources should only be placed in private subnets, effectively isolating them from direct internet access and reducing vulnerability. [View Highlight](https://read.readwise.io/read/01j58ch8xmresvx0x8mty8h37s))

  The sharing of SSH keys is a common security pitfall. [View Highlight](https://read.readwise.io/read/01j58ckd7mgrh2b6f6dzmzstz9))

  Utilize a dedicated secret manager to securely store and handle access to these sensitive elements, ensuring they’re encrypted and accessible only to those who truly need them. [View Highlight](https://read.readwise.io/read/01j58cm13bxanfd7bxg5th88j4))

  Implement a routine where every merge commit is scanned for secret leaks and vulnerabilities using tools like [gitleaks](https://click.convertkit-mail2.com/xmuvr2v7d6h6hr6eg6pc5h03owzllbn/dpheh0h0dwroe6hm/aHR0cHM6Ly9naXRodWIuY29tL2dpdGxlYWtzL2dpdGxlYWtz). Establish strict policies to halt deployments if issues are found in the codebase or in the container images during CI. Don’t have a CI in place yet? 1. Do it! 2. Run these locally before EVERY push. [View Highlight](https://read.readwise.io/read/01j58cn5zg2y5dkd0m9emzevtw))

  Move away from traditional firewall-based security for accessing internal systems remotely. Instead, adopt a VPN or, ideally, a Zero Trust framework [View Highlight](https://read.readwise.io/read/01j58cq5q1j7w0xcm19cynt6j7))

  Regularly reviewing your cloud bills can help you identify unused or forgotten resources and even expose potential security threats. [View Highlight](https://read.readwise.io/read/01j58dr7eagpfs41b1g7cp42fr))

  Deploying a WAF can provide a critical defense layer against numerous web-based threats. The default set of rules can cover 80% of randomly sent malicious query attempts which you can then tweak over time to block additional potentially harmful requests. [View Highlight](https://read.readwise.io/read/01j58drvb7t9633re0pfwc567x))

  consider deploying containers that lack any form of shell environment. Building your containers with containers starting with `FROM: scratch` ensures that only the essential application binaries are running, thereby hardening your containers against simple intrusion attempts. [View Highlight](https://read.readwise.io/read/01j58dsmfdt50cgke4skb9d4vf))

raw_content:
  # 8 Principles for a Secure Cloud Environment

  ![rw-book-cover](https://readwise-assets.s3.amazonaws.com/static/images/article4.6bc1851654a0.png)

  ## Metadata
  - Author: [[omerxx@gmail.com]]
  - Full Title: 8 Principles for a Secure Cloud Environment
  - Category: #articles
  - URL: https://omnivore.app/aleidk/8-principles-for-a-secure-cloud-environment-18f1fa5c54d
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=8%20Principles%20for%20a%20Secure%20Cloud%20Environment
  > [!tldr]
  > On July 15th, 2019, I messed up bad. Real bad. I wanted to finish a project quickly, and show a quick POC to a customer I was working with. To make a long story short, I pushed a container, to a public repo, containing admin credentials to an AWS account.

  ## Highlights
  CISO BS. [View Highlight](https://read.readwise.io/read/01j58cb911jv15qjeccffqxbv1))
  > [!note]
  > In "8 Principles For a Secure Cloud Environment," the term "CISO" refers to the Chief Information Security Officer, a role responsible for overseeing and ensuring the security of an organization's information and systems. The author implies that some principles may be perceived as excessive or overly cautious, often dismissed as "CISO BS," yet emphasizes their importance based on personal experiences with security incidents. Ultimately, the mention of CISO highlights the necessity of adopting robust security practices to mitigate risks in cloud environments, regardless of differing opinions on their complexity.

  Key resources should only be placed in private subnets, effectively isolating them from direct internet access and reducing vulnerability. [View Highlight](https://read.readwise.io/read/01j58ch8xmresvx0x8mty8h37s))

  The sharing of SSH keys is a common security pitfall. [View Highlight](https://read.readwise.io/read/01j58ckd7mgrh2b6f6dzmzstz9))

  Utilize a dedicated secret manager to securely store and handle access to these sensitive elements, ensuring they’re encrypted and accessible only to those who truly need them. [View Highlight](https://read.readwise.io/read/01j58cm13bxanfd7bxg5th88j4))

  Implement a routine where every merge commit is scanned for secret leaks and vulnerabilities using tools like [gitleaks](https://click.convertkit-mail2.com/xmuvr2v7d6h6hr6eg6pc5h03owzllbn/dpheh0h0dwroe6hm/aHR0cHM6Ly9naXRodWIuY29tL2dpdGxlYWtzL2dpdGxlYWtz). Establish strict policies to halt deployments if issues are found in the codebase or in the container images during CI. Don’t have a CI in place yet? 1. Do it! 2. Run these locally before EVERY push. [View Highlight](https://read.readwise.io/read/01j58cn5zg2y5dkd0m9emzevtw))

  Move away from traditional firewall-based security for accessing internal systems remotely. Instead, adopt a VPN or, ideally, a Zero Trust framework [View Highlight](https://read.readwise.io/read/01j58cq5q1j7w0xcm19cynt6j7))

  Regularly reviewing your cloud bills can help you identify unused or forgotten resources and even expose potential security threats. [View Highlight](https://read.readwise.io/read/01j58dr7eagpfs41b1g7cp42fr))

  Deploying a WAF can provide a critical defense layer against numerous web-based threats. The default set of rules can cover 80% of randomly sent malicious query attempts which you can then tweak over time to block additional potentially harmful requests. [View Highlight](https://read.readwise.io/read/01j58drvb7t9633re0pfwc567x))

  consider deploying containers that lack any form of shell environment. Building your containers with containers starting with `FROM: scratch` ensures that only the essential application binaries are running, thereby hardening your containers against simple intrusion attempts. [View Highlight](https://read.readwise.io/read/01j58dsmfdt50cgke4skb9d4vf))


path: Readwise/A Cyberspace Inquisition #2 Impressions.md
sortable_path: ReadwiseA Cyberspace Inquisition #2 Impressions.md
title: A Cyberspace Inquisition Impressions
lead: ![rw-book-cover](https://www.adamsdesk.com/assets/img/posts/cyberspace-wormhole.webp)
checksum: 09d06b2815498bd8f0059e697a84ab6f8c746dbe06360064c714629d10554e2e
created: 2024-09-12 14:56:45.64056217+00:00
modified: 2024-09-12 14:29:22.210841961+00:00
metadata: {}
body:
  ![rw-book-cover](https://www.adamsdesk.com/assets/img/posts/cyberspace-wormhole.webp)

  ## Metadata
  - Author: [[Adam Douglas]]
  - Full Title: A Cyberspace Inquisition #2: Impressions
  - Category: #articles
  - URL: https://www.adamsdesk.com/posts/a-cyberspace-inquisition-2/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=A%20Cyberspace%20Inquisition%20%232%3A%20Impressions
  > [!tldr]
  > Navigate cyberspace with me and discover unique content that leave you with impressions and trigger your own inner curiosity to explore and innovate.

  ## Highlights
  (https://sudhir.io/the-big-little-guide-to-message-queues/)
  If you have every [View Highlight](https://read.readwise.io/read/01j59rfbd66tv18q7vdpc0brt3))

raw_content:
  # A Cyberspace Inquisition #2: Impressions

  ![rw-book-cover](https://www.adamsdesk.com/assets/img/posts/cyberspace-wormhole.webp)

  ## Metadata
  - Author: [[Adam Douglas]]
  - Full Title: A Cyberspace Inquisition #2: Impressions
  - Category: #articles
  - URL: https://www.adamsdesk.com/posts/a-cyberspace-inquisition-2/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=A%20Cyberspace%20Inquisition%20%232%3A%20Impressions
  > [!tldr]
  > Navigate cyberspace with me and discover unique content that leave you with impressions and trigger your own inner curiosity to explore and innovate.

  ## Highlights
  (https://sudhir.io/the-big-little-guide-to-message-queues/)
  If you have every [View Highlight](https://read.readwise.io/read/01j59rfbd66tv18q7vdpc0brt3))


path: Readwise/A Successful Git Branching Model.md
sortable_path: ReadwiseA Successful Git Branching Model.md
title: A Successful Git Branching Model
lead: ![rw-book-cover](http://nvie.com/img/git-model@2x.png)
checksum: 384fa82a6f5724fd111f07307be2fbdb29c4dfdea4db845fefaed6f5019fdbc6
created: 2024-09-12 14:56:45.652099209+00:00
modified: 2024-09-12 14:29:22.210841961+00:00
metadata: {}
body:
  ![rw-book-cover](http://nvie.com/img/git-model@2x.png)

  ## Metadata
  - Author: [[Vincent Driessen]]
  - Full Title: A Successful Git Branching Model
  - Category: #articles
  - URL: https://nvie.com/posts/a-successful-git-branching-model/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=A%20Successful%20Git%20Branching%20Model
  > [!tldr]
  > The Git branching model, git-flow, is widely used but can be seen as overly rigid by some teams. It is beneficial for versioned software and managing multiple versions. Git has revolutionized how developers handle branching and merging in version control.

  ## Highlights
  If your team is doing continuous delivery of software, I would suggest to adopt a much simpler workflow (like [GitHub flow](https://guides.github.com/introduction/flow/)) instead of trying to shoehorn git-flow into your team.
  If, however, you are building software that is explicitly versioned, or if you need to support multiple versions of your software in the wild, then git-flow may still be as good of a fit to your team as it has been to people in the last 10 years. [View Highlight](https://read.readwise.io/read/01j548q3y82vb6tgpcxkff732r))

  We consider `origin/master` to be the main branch where the source code of `HEAD` always reflects a *production-ready* state. [View Highlight](https://read.readwise.io/read/01j548s6wn5tww0q86agt4mc3b))

  We consider `origin/develop` to be the main branch where the source code of `HEAD` always reflects a state with the latest delivered development changes for the next release. Some would call this the “integration branch”. This is where any automatic nightly builds are built from. [View Highlight](https://read.readwise.io/read/01j548sbx0chxzjqhbdxbfkd34))

  Next to the main branches `master` and `develop`, our development model uses a variety of supporting branches to aid parallel development between team members, ease tracking of features, prepare for production releases and to assist in quickly fixing live production problems. Unlike the main branches, these branches always have a limited life time, since they will be removed eventually.
  The different types of branches we may use are:
  • Feature branches
  • Release branches
  • Hotfix branches [View Highlight](https://read.readwise.io/read/01j548v29py8ken2hnj4kqn7d4))

  Feature branches (or sometimes called topic branches) are used to develop new features for the upcoming or a distant future release. When starting development of a feature, the target release in which this feature will be incorporated may well be unknown at that point. The essence of a feature branch is that it exists as long as the feature is in development, but will eventually be merged back into `develop` (to definitely add the new feature to the upcoming release) or discarded (in case of a disappointing experiment). [View Highlight](https://read.readwise.io/read/01j548xe9jrd2c98pd2kch582r))

  The `--no-ff` flag causes the merge to always create a new commit object, even if the merge could be performed with a fast-forward. This avoids losing information about the historical existence of a feature branch and groups together all commits that together added the feature. Compare: [View Highlight](https://read.readwise.io/read/01j548z6jfdzegbyxqcbw9qzg8))

  Release branches support preparation of a new production release. __They allow for last-minute dotting of i’s and crossing t’s. Furthermore, they allow for minor bug fixes and preparing meta-data for a release__ (version number, build dates, etc.). By doing all of this work on a release branch, the `develop` branch is cleared to receive features for the next big release. [View Highlight](https://read.readwise.io/read/01j54919d0891s3web647x0zkt))

  Hotfix branches are very much like release branches in that they are also meant to prepare for a new production release, albeit unplanned. __They arise from the necessity to act immediately upon an undesired state of a live production version__. When a critical bug in a production version must be resolved immediately, a hotfix branch may be branched off from the corresponding tag on the master branch that marks the production version. [View Highlight](https://read.readwise.io/read/01j5498mt0tq7m5y0gk06rst3t))

raw_content:
  # A Successful Git Branching Model

  ![rw-book-cover](http://nvie.com/img/git-model@2x.png)

  ## Metadata
  - Author: [[Vincent Driessen]]
  - Full Title: A Successful Git Branching Model
  - Category: #articles
  - URL: https://nvie.com/posts/a-successful-git-branching-model/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=A%20Successful%20Git%20Branching%20Model
  > [!tldr]
  > The Git branching model, git-flow, is widely used but can be seen as overly rigid by some teams. It is beneficial for versioned software and managing multiple versions. Git has revolutionized how developers handle branching and merging in version control.

  ## Highlights
  If your team is doing continuous delivery of software, I would suggest to adopt a much simpler workflow (like [GitHub flow](https://guides.github.com/introduction/flow/)) instead of trying to shoehorn git-flow into your team.
  If, however, you are building software that is explicitly versioned, or if you need to support multiple versions of your software in the wild, then git-flow may still be as good of a fit to your team as it has been to people in the last 10 years. [View Highlight](https://read.readwise.io/read/01j548q3y82vb6tgpcxkff732r))

  We consider `origin/master` to be the main branch where the source code of `HEAD` always reflects a *production-ready* state. [View Highlight](https://read.readwise.io/read/01j548s6wn5tww0q86agt4mc3b))

  We consider `origin/develop` to be the main branch where the source code of `HEAD` always reflects a state with the latest delivered development changes for the next release. Some would call this the “integration branch”. This is where any automatic nightly builds are built from. [View Highlight](https://read.readwise.io/read/01j548sbx0chxzjqhbdxbfkd34))

  Next to the main branches `master` and `develop`, our development model uses a variety of supporting branches to aid parallel development between team members, ease tracking of features, prepare for production releases and to assist in quickly fixing live production problems. Unlike the main branches, these branches always have a limited life time, since they will be removed eventually.
  The different types of branches we may use are:
  • Feature branches
  • Release branches
  • Hotfix branches [View Highlight](https://read.readwise.io/read/01j548v29py8ken2hnj4kqn7d4))

  Feature branches (or sometimes called topic branches) are used to develop new features for the upcoming or a distant future release. When starting development of a feature, the target release in which this feature will be incorporated may well be unknown at that point. The essence of a feature branch is that it exists as long as the feature is in development, but will eventually be merged back into `develop` (to definitely add the new feature to the upcoming release) or discarded (in case of a disappointing experiment). [View Highlight](https://read.readwise.io/read/01j548xe9jrd2c98pd2kch582r))

  The `--no-ff` flag causes the merge to always create a new commit object, even if the merge could be performed with a fast-forward. This avoids losing information about the historical existence of a feature branch and groups together all commits that together added the feature. Compare: [View Highlight](https://read.readwise.io/read/01j548z6jfdzegbyxqcbw9qzg8))

  Release branches support preparation of a new production release. __They allow for last-minute dotting of i’s and crossing t’s. Furthermore, they allow for minor bug fixes and preparing meta-data for a release__ (version number, build dates, etc.). By doing all of this work on a release branch, the `develop` branch is cleared to receive features for the next big release. [View Highlight](https://read.readwise.io/read/01j54919d0891s3web647x0zkt))

  Hotfix branches are very much like release branches in that they are also meant to prepare for a new production release, albeit unplanned. __They arise from the necessity to act immediately upon an undesired state of a live production version__. When a critical bug in a production version must be resolved immediately, a hotfix branch may be branched off from the corresponding tag on the master branch that marks the production version. [View Highlight](https://read.readwise.io/read/01j5498mt0tq7m5y0gk06rst3t))


path: Readwise/ACID Databases – Atomicity, Consistency, Isolation & Durability Explained.md
sortable_path: ReadwiseACID Databases – Atomicity, Consistency, Isolation & Durability Explained.md
title: ACID Databases – Atomicity, Consistency, Isolation & Durability Explained
lead: ![rw-book-cover](https://www.freecodecamp.org/news/content/images/2024/01/cover-fcc.png)
checksum: 231c3138ea44b9b3acfc8ccf90218819d6932077e809ca197e97bab35d871a6e
created: 2024-09-12 14:56:45.661691086+00:00
modified: 2024-09-12 14:29:22.210841961+00:00
metadata: {}
body:
  ![rw-book-cover](https://www.freecodecamp.org/news/content/images/2024/01/cover-fcc.png)

  ## Metadata
  - Author: [[Daniel Adetunji]]
  - Full Title: ACID Databases – Atomicity, Consistency, Isolation & Durability Explained
  - Category: #articles
  - URL: https://www.freecodecamp.org/news/acid-databases-explained/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=ACID%20Databases%20%E2%80%93%20Atomicity%2C%20Consistency%2C%20Isolation%20%26%20Durability%20Explained
  > [!tldr]
  > ACID (Atomicity, Consistency, Isolation, and Durability) is a set of guarantees provided by database management systems (DBMS). While most popular DBMS offer ACID guarantees, the implementation can vary. Atomicity ensures that all parts of a transaction are completed or none at all. Consistency, or referential integrity, ensures data accuracy and reliability. Isolation guarantees that concurrent transactions do not interfere with each other. Durability ensures that changes made by committed transactions are not lost. These properties are important for maintaining data integrity and fault tolerance in a DBMS.

  ## Highlights
  Consistency in the context of ACID means *consistency in data*, which is defined by the creator of the database. The technical term for consistency in data is called referential integrity. __Referential integrity is a method of ensuring that relationships between tables remain consistent__. It's usually enforced through the use of **foreign keys**. [View Highlight](https://read.readwise.io/read/01j549yzv6a3s4x73cc7qj06rg))

  Isolation is a guarantee that concurrently running transactions should not interfere with each other. Concurrency here refers to two or more transactions trying to modify or read the same database record(s) at the same time. [View Highlight](https://read.readwise.io/read/01j54a1g3dka9smm3v4ct09v4d))

  In this example, read committed isolation ensures that Marie is not prematurely excluded from buying the burger just because someone else said they wanted it. __Only committed transactions can be read__. Therefore, the burger is available to be ordered as long as no one has paid for it. [View Highlight](https://read.readwise.io/read/01j54a6t2df5kjvy8q4tyhkwas))

  A repeatable read guarantees that if a transaction reads a row of data, any subsequent reads of that same row of data within the same transaction will yield the same result, regardless of changes made by other transactions. This consistency is maintained throughout the duration of the transaction. [View Highlight](https://read.readwise.io/read/01j54a7baf7scbgptfwf5a5hgf))

  Durability is a guarantee that changes made by a committed transaction must not be lost. All committed transactions must be persisted on durable, non-volatile storage, that is on disk. This ensures that any committed transactions are protected even if the database crashes. [View Highlight](https://read.readwise.io/read/01j54aa01whthekb1jegqsx42w))

raw_content:
  # ACID Databases – Atomicity, Consistency, Isolation & Durability Explained

  ![rw-book-cover](https://www.freecodecamp.org/news/content/images/2024/01/cover-fcc.png)

  ## Metadata
  - Author: [[Daniel Adetunji]]
  - Full Title: ACID Databases – Atomicity, Consistency, Isolation & Durability Explained
  - Category: #articles
  - URL: https://www.freecodecamp.org/news/acid-databases-explained/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=ACID%20Databases%20%E2%80%93%20Atomicity%2C%20Consistency%2C%20Isolation%20%26%20Durability%20Explained
  > [!tldr]
  > ACID (Atomicity, Consistency, Isolation, and Durability) is a set of guarantees provided by database management systems (DBMS). While most popular DBMS offer ACID guarantees, the implementation can vary. Atomicity ensures that all parts of a transaction are completed or none at all. Consistency, or referential integrity, ensures data accuracy and reliability. Isolation guarantees that concurrent transactions do not interfere with each other. Durability ensures that changes made by committed transactions are not lost. These properties are important for maintaining data integrity and fault tolerance in a DBMS.

  ## Highlights
  Consistency in the context of ACID means *consistency in data*, which is defined by the creator of the database. The technical term for consistency in data is called referential integrity. __Referential integrity is a method of ensuring that relationships between tables remain consistent__. It's usually enforced through the use of **foreign keys**. [View Highlight](https://read.readwise.io/read/01j549yzv6a3s4x73cc7qj06rg))

  Isolation is a guarantee that concurrently running transactions should not interfere with each other. Concurrency here refers to two or more transactions trying to modify or read the same database record(s) at the same time. [View Highlight](https://read.readwise.io/read/01j54a1g3dka9smm3v4ct09v4d))

  In this example, read committed isolation ensures that Marie is not prematurely excluded from buying the burger just because someone else said they wanted it. __Only committed transactions can be read__. Therefore, the burger is available to be ordered as long as no one has paid for it. [View Highlight](https://read.readwise.io/read/01j54a6t2df5kjvy8q4tyhkwas))

  A repeatable read guarantees that if a transaction reads a row of data, any subsequent reads of that same row of data within the same transaction will yield the same result, regardless of changes made by other transactions. This consistency is maintained throughout the duration of the transaction. [View Highlight](https://read.readwise.io/read/01j54a7baf7scbgptfwf5a5hgf))

  Durability is a guarantee that changes made by a committed transaction must not be lost. All committed transactions must be persisted on durable, non-volatile storage, that is on disk. This ensures that any committed transactions are protected even if the database crashes. [View Highlight](https://read.readwise.io/read/01j54aa01whthekb1jegqsx42w))


path: Readwise/All You Need Is Data and Functions.md
sortable_path: ReadwiseAll You Need Is Data and Functions.md
title: All You Need Is Data and Functions
lead: ![rw-book-cover](https://readwise-assets.s3.amazonaws.com/static/images/article1.be68295a7e40.png)
checksum: f033db4c90c4c798f1f84e740c9e4b9719198e99e15c4e89b59bc09e743eb2db
created: 2024-09-12 14:56:45.672776609+00:00
modified: 2024-09-12 14:29:22.210841961+00:00
metadata: {}
body:
  ![rw-book-cover](https://readwise-assets.s3.amazonaws.com/static/images/article1.be68295a7e40.png)

  ## Metadata
  - Author: [[mckayla.blog]]
  - Full Title: All You Need Is Data and Functions
  - Category: #articles
  - Document Tags: [[dev]] [[star]] 
  - URL: https://mckayla.blog/posts/all-you-need-is-data-and-functions.html
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=All%20You%20Need%20Is%20Data%20and%20Functions

  > [!note]
  > **Background:** I would like to implement the ideas from "All you need is data and functions" by mckayla.blog in my programming project.
  > ### Key Takeaways:
  > 🛠️ **Emphasize Type Over Traits:** Instead of relying on traits, create a data-type that encapsulates the desired behavior. Then, implement a conversion function to transform your data-type into the trait-type when needed.
  > 🔄 **Utilize Implicit Conversions:** Understand that trait-types allow for implicit conversions, which can simplify your code. This means the language can handle the transformation from your data-type to the trait-type automatically, reducing boilerplate and improving readability.
  > 📜 **Represent Traits with Types:** Recognize that traits can be viewed as types themselves. For example, a Display trait can be represented by a String type alongside a function that converts your original type into a String, enabling clearer and more direct handling of type-specific logic.
  > ---
  > 1. How does the omission of traits in Gleam influence the way developers approach generic programming compared to languages like Rust?
  > 2. In what ways might the simplicity of Gleam's design, focusing on data and functions, lead to both advantages and disadvantages in software development?
  > 3. How does Gleam's approach to immutability and function-based programming compare with the mutable state and trait systems commonly found in other languages?
  > [!tldr]
  > The document explores the concept of traits in programming languages, using the example of the Gleam language. Traits are compared to types and functions, emphasizing how traits can be represented and achieved through types and functions. The discussion covers examples from Rust and Gleam to illustrate how traits can be replaced by types and functions in a language like Gleam, where simplicity and low concept count are valued. The document concludes that data and functions can effectively replace the need for traits, particularly in languages like Gleam.

  ## Highlights
  **traits are just types**. Our `Display` trait in this example, can be represented by the `String` type, and a function which converts from our original type to a `String`. [View Highlight](https://read.readwise.io/read/01j6axgxbj76x7jbz4zsc45tdv))

  The biggest difference between most trait/interface systems and trait-types is that the language is essentially doing implicit conversions for you, from your data-type to the trait-type. [View Highlight](https://read.readwise.io/read/01j6ccvpskph772e8r479esbq4))

  Instead of a trait, just make a type that implements the generic behavior you want, and then write a function to convert your data-type into your trait-type. If you need some data-type specific logic, then pass around functions as necessary (usually from your conversion function). [View Highlight](https://read.readwise.io/read/01j6ccz00s0t2aydshas3xw962))

raw_content:
  # All You Need Is Data and Functions

  ![rw-book-cover](https://readwise-assets.s3.amazonaws.com/static/images/article1.be68295a7e40.png)

  ## Metadata
  - Author: [[mckayla.blog]]
  - Full Title: All You Need Is Data and Functions
  - Category: #articles
  - Document Tags: [[dev]] [[star]] 
  - URL: https://mckayla.blog/posts/all-you-need-is-data-and-functions.html
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=All%20You%20Need%20Is%20Data%20and%20Functions

  > [!note]
  > **Background:** I would like to implement the ideas from "All you need is data and functions" by mckayla.blog in my programming project.
  > ### Key Takeaways:
  > 🛠️ **Emphasize Type Over Traits:** Instead of relying on traits, create a data-type that encapsulates the desired behavior. Then, implement a conversion function to transform your data-type into the trait-type when needed.
  > 🔄 **Utilize Implicit Conversions:** Understand that trait-types allow for implicit conversions, which can simplify your code. This means the language can handle the transformation from your data-type to the trait-type automatically, reducing boilerplate and improving readability.
  > 📜 **Represent Traits with Types:** Recognize that traits can be viewed as types themselves. For example, a Display trait can be represented by a String type alongside a function that converts your original type into a String, enabling clearer and more direct handling of type-specific logic.
  > ---
  > 1. How does the omission of traits in Gleam influence the way developers approach generic programming compared to languages like Rust?
  > 2. In what ways might the simplicity of Gleam's design, focusing on data and functions, lead to both advantages and disadvantages in software development?
  > 3. How does Gleam's approach to immutability and function-based programming compare with the mutable state and trait systems commonly found in other languages?
  > [!tldr]
  > The document explores the concept of traits in programming languages, using the example of the Gleam language. Traits are compared to types and functions, emphasizing how traits can be represented and achieved through types and functions. The discussion covers examples from Rust and Gleam to illustrate how traits can be replaced by types and functions in a language like Gleam, where simplicity and low concept count are valued. The document concludes that data and functions can effectively replace the need for traits, particularly in languages like Gleam.

  ## Highlights
  **traits are just types**. Our `Display` trait in this example, can be represented by the `String` type, and a function which converts from our original type to a `String`. [View Highlight](https://read.readwise.io/read/01j6axgxbj76x7jbz4zsc45tdv))

  The biggest difference between most trait/interface systems and trait-types is that the language is essentially doing implicit conversions for you, from your data-type to the trait-type. [View Highlight](https://read.readwise.io/read/01j6ccvpskph772e8r479esbq4))

  Instead of a trait, just make a type that implements the generic behavior you want, and then write a function to convert your data-type into your trait-type. If you need some data-type specific logic, then pass around functions as necessary (usually from your conversion function). [View Highlight](https://read.readwise.io/read/01j6ccz00s0t2aydshas3xw962))


path: Readwise/Best Practices for Maintainers.md
sortable_path: ReadwiseBest Practices for Maintainers.md
title: Best Practices for Maintainers
lead: ![rw-book-cover](https://opensource.guide/assets/images/cards/best-practices.png)
checksum: 20c30fe71bd6302e1e19c4cdd80623fe8a7dc239c401a6282ff1727cbfe94562
created: 2024-09-12 14:56:45.688753448+00:00
modified: 2024-09-12 14:29:22.210841961+00:00
metadata: {}
body:
  ![rw-book-cover](https://opensource.guide/assets/images/cards/best-practices.png)

  ## Metadata
  - Author: [[Open Source Guides]]
  - Full Title: Best Practices for Maintainers
  - Category: #articles
  - Document Tags: [[dev]] 
  - URL: https://opensource.guide/best-practices/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=Best%20Practices%20for%20Maintainers
  > [!tldr]
  > Maintaining a popular open source project involves more than just coding; it requires effective communication and managing contributions. It's important to set clear expectations for your time and the types of contributions you accept, while also being kind and responsive to contributors. Taking breaks and prioritizing your own happiness is essential for the long-term success of the project.

  ## Highlights
  Written and enforced fairly, however, good rules empower maintainers. They prevent you from getting dragged into doing things you don’t want to do. [View Highlight](https://read.readwise.io/read/01j59endsw1rpkb9tf8m8qawvj))

  Don’t forget to document your interactions, too. Wherever you can, keep communication about your project public. If somebody tries to contact you privately to discuss a feature request or support need, politely direct them to a public communication channel, such as a mailing list or issue tracker. [View Highlight](https://read.readwise.io/read/01j59eq13dn3wga93d01tnfqmy))

  Having everything written down, however, helps depersonalize situations when you do need to enforce your rules.
  Saying no isn’t fun, but *“Your contribution doesn’t match this project’s criteria”* feels less personal than *“I don’t like your contribution”*. [View Highlight](https://read.readwise.io/read/01j59eskv2qw7f8cfrkz5g3rvt))

  The key to handling support for large-scale open source projects is to keep issues moving. Try to avoid having issues stall. If you’re an iOS developer you know how frustrating it can be to submit radars. You might hear back 2 years later, and are told to try again with the latest version of iOS. [View Highlight](https://read.readwise.io/read/01j59ezaxynf5z61amr95w7x7m))

  I cater to the 80% use case. If you are one of the unicorns, please fork my work. I won’t get offended! My public projects are almost always meant to solve the most common problems; I try to make it easy to go deeper by either forking my work or extending it. [View Highlight](https://read.readwise.io/read/01j59ftzzkh4m5fkbbgse1qs8y))

  It’s almost inevitable that once a project becomes big, maintainers have to become a lot more conservative about how they introduce new code. You become good at saying “no”, but a lot of people have legitimate needs. So, instead you end up converting your tool into a platform. [View Highlight](https://read.readwise.io/read/01j59fw4nd6sjdfxwtxgbn89zy))

  I believe that tests are necessary for all code that people work on. If the code was fully and perfectly correct, it wouldn’t need changes – we only write code when something is wrong, whether that’s “It crashes” or “It lacks such-and-such a feature”. And regardless of the changes you’re making, tests are essential for catching any regressions you might accidentally introduce. [View Highlight](https://read.readwise.io/read/01j59fyszkgtfzj58msft420j5))

  There are a [variety of tools available](https://github.com/showcases/tools-for-open-source) to help automate some aspects of maintenance work. A few examples:
  • [semantic-release](https://github.com/semantic-release/semantic-release) automates your releases
  • [mention-bot](https://github.com/facebook/mention-bot) mentions potential reviewers for pull requests
  • [Danger](https://github.com/danger/danger) helps automate code review
  • [no-response](https://github.com/probot/no-response) closes issues where the author hasn’t responded to a request for more information
  • [dependabot](https://github.com/dependabot) checks your dependency files every day for outdated requirements and opens individual pull requests for any it finds [View Highlight](https://read.readwise.io/read/01j59g05hnrn42hj1ey8s0cjhe))

  Burnout is a real and pervasive issue in open source work, especially among maintainers. As a maintainer, your happiness is a non-negotiable requirement for the survival of any open source project. [View Highlight](https://read.readwise.io/read/01j59g44y47gfp6bexny1cf077))

  In maintaining WP-CLI, I’ve discovered I need to make myself happy first, and set clear boundaries on my involvement. The best balance I’ve found is 2-5 hours per week, as a part of my normal work schedule. This keeps my involvement a passion, and from feeling too much like work. Because I prioritize the issues I’m working on, I can make regular progress on what I think is most important. [View Highlight](https://read.readwise.io/read/01j59g63w7h9j6krg5wpjh40ap))

raw_content:
  # Best Practices for Maintainers

  ![rw-book-cover](https://opensource.guide/assets/images/cards/best-practices.png)

  ## Metadata
  - Author: [[Open Source Guides]]
  - Full Title: Best Practices for Maintainers
  - Category: #articles
  - Document Tags: [[dev]] 
  - URL: https://opensource.guide/best-practices/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=Best%20Practices%20for%20Maintainers
  > [!tldr]
  > Maintaining a popular open source project involves more than just coding; it requires effective communication and managing contributions. It's important to set clear expectations for your time and the types of contributions you accept, while also being kind and responsive to contributors. Taking breaks and prioritizing your own happiness is essential for the long-term success of the project.

  ## Highlights
  Written and enforced fairly, however, good rules empower maintainers. They prevent you from getting dragged into doing things you don’t want to do. [View Highlight](https://read.readwise.io/read/01j59endsw1rpkb9tf8m8qawvj))

  Don’t forget to document your interactions, too. Wherever you can, keep communication about your project public. If somebody tries to contact you privately to discuss a feature request or support need, politely direct them to a public communication channel, such as a mailing list or issue tracker. [View Highlight](https://read.readwise.io/read/01j59eq13dn3wga93d01tnfqmy))

  Having everything written down, however, helps depersonalize situations when you do need to enforce your rules.
  Saying no isn’t fun, but *“Your contribution doesn’t match this project’s criteria”* feels less personal than *“I don’t like your contribution”*. [View Highlight](https://read.readwise.io/read/01j59eskv2qw7f8cfrkz5g3rvt))

  The key to handling support for large-scale open source projects is to keep issues moving. Try to avoid having issues stall. If you’re an iOS developer you know how frustrating it can be to submit radars. You might hear back 2 years later, and are told to try again with the latest version of iOS. [View Highlight](https://read.readwise.io/read/01j59ezaxynf5z61amr95w7x7m))

  I cater to the 80% use case. If you are one of the unicorns, please fork my work. I won’t get offended! My public projects are almost always meant to solve the most common problems; I try to make it easy to go deeper by either forking my work or extending it. [View Highlight](https://read.readwise.io/read/01j59ftzzkh4m5fkbbgse1qs8y))

  It’s almost inevitable that once a project becomes big, maintainers have to become a lot more conservative about how they introduce new code. You become good at saying “no”, but a lot of people have legitimate needs. So, instead you end up converting your tool into a platform. [View Highlight](https://read.readwise.io/read/01j59fw4nd6sjdfxwtxgbn89zy))

  I believe that tests are necessary for all code that people work on. If the code was fully and perfectly correct, it wouldn’t need changes – we only write code when something is wrong, whether that’s “It crashes” or “It lacks such-and-such a feature”. And regardless of the changes you’re making, tests are essential for catching any regressions you might accidentally introduce. [View Highlight](https://read.readwise.io/read/01j59fyszkgtfzj58msft420j5))

  There are a [variety of tools available](https://github.com/showcases/tools-for-open-source) to help automate some aspects of maintenance work. A few examples:
  • [semantic-release](https://github.com/semantic-release/semantic-release) automates your releases
  • [mention-bot](https://github.com/facebook/mention-bot) mentions potential reviewers for pull requests
  • [Danger](https://github.com/danger/danger) helps automate code review
  • [no-response](https://github.com/probot/no-response) closes issues where the author hasn’t responded to a request for more information
  • [dependabot](https://github.com/dependabot) checks your dependency files every day for outdated requirements and opens individual pull requests for any it finds [View Highlight](https://read.readwise.io/read/01j59g05hnrn42hj1ey8s0cjhe))

  Burnout is a real and pervasive issue in open source work, especially among maintainers. As a maintainer, your happiness is a non-negotiable requirement for the survival of any open source project. [View Highlight](https://read.readwise.io/read/01j59g44y47gfp6bexny1cf077))

  In maintaining WP-CLI, I’ve discovered I need to make myself happy first, and set clear boundaries on my involvement. The best balance I’ve found is 2-5 hours per week, as a part of my normal work schedule. This keeps my involvement a passion, and from feeling too much like work. Because I prioritize the issues I’m working on, I can make regular progress on what I think is most important. [View Highlight](https://read.readwise.io/read/01j59g63w7h9j6krg5wpjh40ap))


path: Readwise/Building a Second Brain - Tags.md
sortable_path: ReadwiseBuilding a Second Brain - Tags.md
title: Building a Second Brain - Tags
lead: ![rw-book-cover](https://m.media-amazon.com/images/I/71jhK9zsKEL.jpg)
checksum: c1f2407833b7f017d41bc56b0544711bb17831f3dad2da94458499d864632e21
created: 2024-09-12 14:56:45.700166647+00:00
modified: 2024-09-12 14:29:22.210841961+00:00
metadata: {}
body:
  ![rw-book-cover](https://m.media-amazon.com/images/I/71jhK9zsKEL.jpg)

  ## Metadata
  - Author: [[Tiago Forte]]
  - Full Title: Building a Second Brain - Tags
  - Category: #articles
  - Document Tags: [[notetaking]] [[productivity]] 
  - URL: https://readwise.io/reader/document_raw_content/2217137
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=Building%20a%20Second%20Brain%20-%20Tags
  > [!tldr]
  > Creating a universal tagging system for notes is impractical and can lead to frustration. Instead, tags should be used to track the progress and purpose of notes, focusing on actionable use cases. Start small with simple organization methods and apply tags retroactively as needed to maintain clarity and motivation.

  ## Highlights
  The goal of all these endeavors was to create a system of classification – known as a “taxonomy” – that every piece of knowledge could be placed into. [View Highlight](https://read.readwise.io/read/01j6hh4c8747s1xrb59f93826q))

  Like Pandora’s Box, once we begin to apply tags it can be incredibly tempting to start labeling each and every note ... Building a Second Brain: Chapter 11 | buildingasecondbrain.com understand what we are trying to use our notes to accomplish to avoid the trap of “tagging for the sake of tagging.”

  There are three practical approaches to tagging you can use as your Second Brain grows and matures. Each one follows the principle of actionability and answers an important question about the purpose of a given note: 1. Create personalized tags for your use cases. (How will my notes be used?) 2. Use tags to track the progress of notes. (How are my notes currently being used?) 3. Tag notes retroactively and only as needed. (How have my notes been used?) [View Highlight](https://read.readwise.io/read/01j6hhjytn42dbdcgskyjrr74q))

  if you already know how your notes are likely to be used – such as for citations in a paper [Source], as evidence in a trial [Evidence], or as slides in a presentation [Slides] – it can be helpful to tag your notes according to those use cases. [View Highlight](https://read.readwise.io/read/01j6hhp4pghcnk2r4z4r95n287))

  Ask yourself, “What are the most common use cases for the content I capture?” Here are a couple common examples: • Tagging according to the final product a note will be used in: [Presentation], [Essay], [Report], [Website], [Project plan], [Meeting agenda], or [Budget]
  • Tagging according to the kind of information a note contains: [Arguments], [Theories], [Frameworks], [Evidence], [Claim], [Counterpoint], or [Question] [View Highlight](https://read.readwise.io/read/01j6hhwgwga3a4t0bm9p3t12y6))

  tags to track the progress of their notes: • Tagging according to its role in a project: [Meeting notes], [Timeline], [Budget], [Decision], [Action], [Idea], or [Objective]
  • Tagging according to the current stage of their workflow: [Planned], [In process], [Waiting for approval], [Reviewed], [Approved], [On hold], or [Finished] [View Highlight](https://read.readwise.io/read/01j6hj21kk7kmc7c4f40hg3004))

  These kinds of tags aren’t about the contents of a note. They are about its context – specifically, the context in which it is being used. Since [View Highlight](https://read.readwise.io/read/01j6hj2t79v8mg6rey564bm350))

  We didn’t want to move her existing notes from their respective PARA folders, but we did want to be able to see all the notes related to “writing job descriptions” or “reviewing applications” in one place with a quick search. This is the perfect situation for tags: when you want a different way of “viewing” your notes, without having to [View Highlight](https://read.readwise.io/read/01j6hj859j9vyq735n7t634791))

  Building a Second Brain: Chapter 11 | buildingasecondbrain.com undertake a massive reorganization of your entire system. [View Highlight](https://read.readwise.io/read/01j6hj84vq0hfy5rtaxw7nk0wa))

  Instead of applying tags when you first capture content, I recommend applying them when it’s time to use it. Often, the ideal moment is when you are getting ready to start a new project. When you apply tags with a specific use case in mind, the tags you come up with will be far more concrete and actionable. And you will have the motivation to do the work of adding them because of the immediate needs of the project you are taking on. [View Highlight](https://read.readwise.io/read/01j6hjb00pwcgt92e9ek7ad2p7))

  using tags in this way means it’s perfectly fine to skip adding tags altogether if you don’t feel like it. ... This eliminates the frustrating experience of trying to force yourself to think of a tag for a note, even when nothing comes to mind, because you fear that otherwise it will be lost forever. Even if no tags are applied, the note will always be right in the folder where you left it.

raw_content:
  # Building a Second Brain - Tags

  ![rw-book-cover](https://m.media-amazon.com/images/I/71jhK9zsKEL.jpg)

  ## Metadata
  - Author: [[Tiago Forte]]
  - Full Title: Building a Second Brain - Tags
  - Category: #articles
  - Document Tags: [[notetaking]] [[productivity]] 
  - URL: https://readwise.io/reader/document_raw_content/2217137
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=Building%20a%20Second%20Brain%20-%20Tags
  > [!tldr]
  > Creating a universal tagging system for notes is impractical and can lead to frustration. Instead, tags should be used to track the progress and purpose of notes, focusing on actionable use cases. Start small with simple organization methods and apply tags retroactively as needed to maintain clarity and motivation.

  ## Highlights
  The goal of all these endeavors was to create a system of classification – known as a “taxonomy” – that every piece of knowledge could be placed into. [View Highlight](https://read.readwise.io/read/01j6hh4c8747s1xrb59f93826q))

  Like Pandora’s Box, once we begin to apply tags it can be incredibly tempting to start labeling each and every note ... Building a Second Brain: Chapter 11 | buildingasecondbrain.com understand what we are trying to use our notes to accomplish to avoid the trap of “tagging for the sake of tagging.”

  There are three practical approaches to tagging you can use as your Second Brain grows and matures. Each one follows the principle of actionability and answers an important question about the purpose of a given note: 1. Create personalized tags for your use cases. (How will my notes be used?) 2. Use tags to track the progress of notes. (How are my notes currently being used?) 3. Tag notes retroactively and only as needed. (How have my notes been used?) [View Highlight](https://read.readwise.io/read/01j6hhjytn42dbdcgskyjrr74q))

  if you already know how your notes are likely to be used – such as for citations in a paper [Source], as evidence in a trial [Evidence], or as slides in a presentation [Slides] – it can be helpful to tag your notes according to those use cases. [View Highlight](https://read.readwise.io/read/01j6hhp4pghcnk2r4z4r95n287))

  Ask yourself, “What are the most common use cases for the content I capture?” Here are a couple common examples: • Tagging according to the final product a note will be used in: [Presentation], [Essay], [Report], [Website], [Project plan], [Meeting agenda], or [Budget]
  • Tagging according to the kind of information a note contains: [Arguments], [Theories], [Frameworks], [Evidence], [Claim], [Counterpoint], or [Question] [View Highlight](https://read.readwise.io/read/01j6hhwgwga3a4t0bm9p3t12y6))

  tags to track the progress of their notes: • Tagging according to its role in a project: [Meeting notes], [Timeline], [Budget], [Decision], [Action], [Idea], or [Objective]
  • Tagging according to the current stage of their workflow: [Planned], [In process], [Waiting for approval], [Reviewed], [Approved], [On hold], or [Finished] [View Highlight](https://read.readwise.io/read/01j6hj21kk7kmc7c4f40hg3004))

  These kinds of tags aren’t about the contents of a note. They are about its context – specifically, the context in which it is being used. Since [View Highlight](https://read.readwise.io/read/01j6hj2t79v8mg6rey564bm350))

  We didn’t want to move her existing notes from their respective PARA folders, but we did want to be able to see all the notes related to “writing job descriptions” or “reviewing applications” in one place with a quick search. This is the perfect situation for tags: when you want a different way of “viewing” your notes, without having to [View Highlight](https://read.readwise.io/read/01j6hj859j9vyq735n7t634791))

  Building a Second Brain: Chapter 11 | buildingasecondbrain.com undertake a massive reorganization of your entire system. [View Highlight](https://read.readwise.io/read/01j6hj84vq0hfy5rtaxw7nk0wa))

  Instead of applying tags when you first capture content, I recommend applying them when it’s time to use it. Often, the ideal moment is when you are getting ready to start a new project. When you apply tags with a specific use case in mind, the tags you come up with will be far more concrete and actionable. And you will have the motivation to do the work of adding them because of the immediate needs of the project you are taking on. [View Highlight](https://read.readwise.io/read/01j6hjb00pwcgt92e9ek7ad2p7))

  using tags in this way means it’s perfectly fine to skip adding tags altogether if you don’t feel like it. ... This eliminates the frustrating experience of trying to force yourself to think of a tag for a note, even when nothing comes to mind, because you fear that otherwise it will be lost forever. Even if no tags are applied, the note will always be right in the folder where you left it.


path: Readwise/Caching vs Content Delivery Networks – What's the Difference.md
sortable_path: ReadwiseCaching vs Content Delivery Networks – What's the Difference.md
title: Caching vs Content Delivery Networks – What's the Difference?
checksum: f89c17ff9bae6eb3fe4855c18fd49943ebe11c2600a2773601da1df5e96d7a6b
created: 2024-09-12 14:56:45.715580701+00:00
modified: 2024-09-12 14:29:22.210841961+00:00
metadata: {}
lead:
  ![rw-book-cover](https://www.freecodecamp.org/news/content/images/2024/02/Conducting-Research-Projects-Educational-Presentation-in-Pink-and-Yellow-Colorful-Line-Style-1.jpg)

body:
  ![rw-book-cover](https://www.freecodecamp.org/news/content/images/2024/02/Conducting-Research-Projects-Educational-Presentation-in-Pink-and-Yellow-Colorful-Line-Style-1.jpg)

  ## Metadata
  - Author: [[anamika.ahmed.792]]
  - Full Title: Caching vs Content Delivery Networks – What's the Difference?
  - Category: #articles
  - URL: https://www.freecodecamp.org/news/caching-vs-content-delivery-network/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=Caching%20vs%20Content%20Delivery%20Networks%20%E2%80%93%20What%27s%20the%20Difference%3F
  > [!tldr]
  > In the world of network optimization, Content Delivery Networks (CDNs) and caching are essential for enhancing website performance and user experience. Caching involves temporarily storing frequently accessed data to reduce response times, while CDNs use a network of servers to deliver web content more efficiently. Both methods aim to improve performance, optimize resource utilization, and enhance user experience. Caching is ideal for frequently accessed static content, while CDNs excel at delivering content globally, especially dynamic content and media. Combining caching and CDNs can offer optimal results, particularly for websites with a mix of static and dynamic content.

  ## Highlights
  Caching is a technique used to store copies of frequently accessed data temporarily. The cached data can be anything from web pages and images to database query results. When a user requests cached content, the server retrieves it from the cache instead of generating it anew, significantly reducing response times. [View Highlight](https://read.readwise.io/read/01j5rvjkrkd34kjh984axnab87))

  What to Consider When Implementing a Cache SystemDecide When to Use a Cache:
  • A cache is best for frequently read but infrequently modified data.
  • Cache servers are not suitable for storing critical data as they use volatile memory.
  • Important data should be stored in persistent data stores to prevent loss in case of cache server restarts. [View Highlight](https://read.readwise.io/read/01j5rvj1mdcbaqnj0e9n2vnw3v))

  In technical terms, a CDN is a network of servers distributed across various locations globally. Its primary purpose is to deliver web content, such as images, videos, scripts, and stylesheets to users more efficiently by reducing the physical distance between the server and the user. [View Highlight](https://read.readwise.io/read/01j5rvrwx5kh2fpqwfpnvxeqd9))

  What to Consider When Implementing a CDN
  • **Cost Management**: CDNs charge for data transfers. It’s wise to cache frequently accessed content, but not everything.
  • **Cache Expiry**: Set appropriate cache expiry times. Too long, and content might be stale. Too short, and it strains origin servers.
  • **CDN Fallback**: Plan for CDN failures. Ensure your website can switch to fetching resources directly from the origin if needed.
  • **Invalidating Files**: You can remove files from the CDN before they expire using various methods provided by CDN vendors. [View Highlight](https://read.readwise.io/read/01j5rvvgawfs37758cbyyz9g69))

  In fact, studies show that CDNs can ****reduce video startup time by up to 50%****, making a significant difference in user satisfaction. [View Highlight](https://read.readwise.io/read/01j5rvxqm29rk1kwr36j6m9nmp))

  Caching is ideal for frequently accessed content that doesn't change frequently. This includes static assets like images, CSS files, and JavaScript libraries.
  It's particularly effective for websites with a substantial user base accessing similar content, such as news websites, blogs, and e-commerce platforms. [View Highlight](https://read.readwise.io/read/01j5rw4q49kh725b3er30axw9q)) [[dev]] [[favorite]] 

  CDNs are invaluable for delivering content to a global audience, especially when geographical distance between users and origin servers leads to latency issues.
  They are well-suited for serving dynamic content, streaming media, and handling sudden spikes in traffic.
  CDNs also excel in scenarios where content needs to be delivered reliably and consistently across diverse geographic regions, ensuring optimal user experience regardless of location. [View Highlight](https://read.readwise.io/read/01j5rw5x54n9bs6qg1mygc0vd9))

raw_content:
  # Caching vs Content Delivery Networks – What's the Difference?

  ![rw-book-cover](https://www.freecodecamp.org/news/content/images/2024/02/Conducting-Research-Projects-Educational-Presentation-in-Pink-and-Yellow-Colorful-Line-Style-1.jpg)

  ## Metadata
  - Author: [[anamika.ahmed.792]]
  - Full Title: Caching vs Content Delivery Networks – What's the Difference?
  - Category: #articles
  - URL: https://www.freecodecamp.org/news/caching-vs-content-delivery-network/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=Caching%20vs%20Content%20Delivery%20Networks%20%E2%80%93%20What%27s%20the%20Difference%3F
  > [!tldr]
  > In the world of network optimization, Content Delivery Networks (CDNs) and caching are essential for enhancing website performance and user experience. Caching involves temporarily storing frequently accessed data to reduce response times, while CDNs use a network of servers to deliver web content more efficiently. Both methods aim to improve performance, optimize resource utilization, and enhance user experience. Caching is ideal for frequently accessed static content, while CDNs excel at delivering content globally, especially dynamic content and media. Combining caching and CDNs can offer optimal results, particularly for websites with a mix of static and dynamic content.

  ## Highlights
  Caching is a technique used to store copies of frequently accessed data temporarily. The cached data can be anything from web pages and images to database query results. When a user requests cached content, the server retrieves it from the cache instead of generating it anew, significantly reducing response times. [View Highlight](https://read.readwise.io/read/01j5rvjkrkd34kjh984axnab87))

  What to Consider When Implementing a Cache SystemDecide When to Use a Cache:
  • A cache is best for frequently read but infrequently modified data.
  • Cache servers are not suitable for storing critical data as they use volatile memory.
  • Important data should be stored in persistent data stores to prevent loss in case of cache server restarts. [View Highlight](https://read.readwise.io/read/01j5rvj1mdcbaqnj0e9n2vnw3v))

  In technical terms, a CDN is a network of servers distributed across various locations globally. Its primary purpose is to deliver web content, such as images, videos, scripts, and stylesheets to users more efficiently by reducing the physical distance between the server and the user. [View Highlight](https://read.readwise.io/read/01j5rvrwx5kh2fpqwfpnvxeqd9))

  What to Consider When Implementing a CDN
  • **Cost Management**: CDNs charge for data transfers. It’s wise to cache frequently accessed content, but not everything.
  • **Cache Expiry**: Set appropriate cache expiry times. Too long, and content might be stale. Too short, and it strains origin servers.
  • **CDN Fallback**: Plan for CDN failures. Ensure your website can switch to fetching resources directly from the origin if needed.
  • **Invalidating Files**: You can remove files from the CDN before they expire using various methods provided by CDN vendors. [View Highlight](https://read.readwise.io/read/01j5rvvgawfs37758cbyyz9g69))

  In fact, studies show that CDNs can ****reduce video startup time by up to 50%****, making a significant difference in user satisfaction. [View Highlight](https://read.readwise.io/read/01j5rvxqm29rk1kwr36j6m9nmp))

  Caching is ideal for frequently accessed content that doesn't change frequently. This includes static assets like images, CSS files, and JavaScript libraries.
  It's particularly effective for websites with a substantial user base accessing similar content, such as news websites, blogs, and e-commerce platforms. [View Highlight](https://read.readwise.io/read/01j5rw4q49kh725b3er30axw9q)) [[dev]] [[favorite]] 

  CDNs are invaluable for delivering content to a global audience, especially when geographical distance between users and origin servers leads to latency issues.
  They are well-suited for serving dynamic content, streaming media, and handling sudden spikes in traffic.
  CDNs also excel in scenarios where content needs to be delivered reliably and consistently across diverse geographic regions, ensuring optimal user experience regardless of location. [View Highlight](https://read.readwise.io/read/01j5rw5x54n9bs6qg1mygc0vd9))


path: Readwise/Developer With ADHD You’re Not Alone..md
sortable_path: ReadwiseDeveloper With ADHD You’re Not Alone..md
title: Developer With ADHD? You’re Not Alone.
checksum: 2b7a0cfa15feb442c4aa5f91c2c82b58191d3a75e2e0c7d18b41bf026d05dda1
created: 2024-09-12 14:56:45.732125377+00:00
modified: 2024-09-12 14:29:22.21184189+00:00
metadata: {}
lead:
  ![rw-book-cover](https://stackoverflow.blog/wp-content/uploads/2017/03/cropped-SO_Logo_glyph-use-this-one-smaller-32x32.jpg)

body:
  ![rw-book-cover](https://stackoverflow.blog/wp-content/uploads/2017/03/cropped-SO_Logo_glyph-use-this-one-smaller-32x32.jpg)

  ## Metadata
  - Author: [[Eira May]]
  - Full Title: Developer With ADHD? You’re Not Alone.
  - Category: #articles
  - URL: https://stackoverflow.blog/2023/12/26/developer-with-adhd-youre-not-alone/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=Developer%20With%20ADHD%3F%20You%E2%80%99re%20Not%20Alone.
  > [!tldr]
  > There is a connection between programming and ADHD, as many developers with ADHD feel that their job is a perfect fit for how they think and approach problems. Coding provides the kind of stimulation that ADHD brains crave, and it rewards a state of hyperfocus, which is a symptom of ADHD. However, ADHD can also present challenges such as inattentive mistakes and missed deadlines. It is important to have an open dialogue about ADHD and other forms of neurodiversity in order to combat stigma and create psychologically safe environments in the tech industry.

  ## Highlights
  Many developers with ADHD feel their job is a perfect fit for how they think and approach problems. “Coding can give ADHD brains exactly the kind of stimulation they crave,” [explains](https://dev.to/abbeyperini/coding-and-adhd-adhd-brains-im1) full-stack developer Abbey Perini. “Not only is coding a creative endeavor that involves constantly learning new things, but also once one problem is solved, there’s always a brand new one to try.” [View Highlight](https://read.readwise.io/read/01j6pxdgk8q9zpq1a1dmjf050g))

  coding can reward and encourage a state of [hyperfocus](https://health.clevelandclinic.org/hyperfocus-and-adhd/): a frequently cited symptom of ADHD that developer [Neil Peterson](https://adapthd.com/topics/coping-strategies/programming-with-adhd-the-good-the-bad-and-the-hyperfocus/) calls “a state of laser-like concentration in which distractions and even a sense of passing time seem to fade away.” It’s easy to draw parallels between hyperfocus and the [flow state](https://stackoverflow.blog/2022/09/14/what-science-says-about-flow-state/), a distraction-free groove in which programmers, writers, musicians, artists, and other creators produce their best work (occasionally while forgetting to eat). [View Highlight](https://read.readwise.io/read/01j6pxkb2v38syn1hs3tw6exyk))

  ADHD can make people more vulnerable to inattentive mistakes, missed deadlines, or unfinished projects. A perennial question on Reddit is [some variation](https://www.reddit.com/r/learnprogramming/comments/kftc4g/any_programmers_with_adhd/) of “Programmers with ADHD, how do you stay on track?” [View Highlight](https://read.readwise.io/read/01j6pxt1ppawyk5bfb7yqbb4cs))
  > [!note]
  > Inattentive mistakes: Errors that occur when an individual fails to fully focus on a task, often resulting in oversights or miscalculations. These mistakes can stem from distractions, fatigue, or cognitive overload, and are frequently associated with conditions such as Attention Deficit Hyperactivity Disorder (ADHD). Inattentive mistakes may manifest as missed deadlines, incomplete work, or simple errors in judgment, highlighting the importance of attention and concentration in effective task management.

raw_content:
  # Developer With ADHD? You’re Not Alone.

  ![rw-book-cover](https://stackoverflow.blog/wp-content/uploads/2017/03/cropped-SO_Logo_glyph-use-this-one-smaller-32x32.jpg)

  ## Metadata
  - Author: [[Eira May]]
  - Full Title: Developer With ADHD? You’re Not Alone.
  - Category: #articles
  - URL: https://stackoverflow.blog/2023/12/26/developer-with-adhd-youre-not-alone/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=Developer%20With%20ADHD%3F%20You%E2%80%99re%20Not%20Alone.
  > [!tldr]
  > There is a connection between programming and ADHD, as many developers with ADHD feel that their job is a perfect fit for how they think and approach problems. Coding provides the kind of stimulation that ADHD brains crave, and it rewards a state of hyperfocus, which is a symptom of ADHD. However, ADHD can also present challenges such as inattentive mistakes and missed deadlines. It is important to have an open dialogue about ADHD and other forms of neurodiversity in order to combat stigma and create psychologically safe environments in the tech industry.

  ## Highlights
  Many developers with ADHD feel their job is a perfect fit for how they think and approach problems. “Coding can give ADHD brains exactly the kind of stimulation they crave,” [explains](https://dev.to/abbeyperini/coding-and-adhd-adhd-brains-im1) full-stack developer Abbey Perini. “Not only is coding a creative endeavor that involves constantly learning new things, but also once one problem is solved, there’s always a brand new one to try.” [View Highlight](https://read.readwise.io/read/01j6pxdgk8q9zpq1a1dmjf050g))

  coding can reward and encourage a state of [hyperfocus](https://health.clevelandclinic.org/hyperfocus-and-adhd/): a frequently cited symptom of ADHD that developer [Neil Peterson](https://adapthd.com/topics/coping-strategies/programming-with-adhd-the-good-the-bad-and-the-hyperfocus/) calls “a state of laser-like concentration in which distractions and even a sense of passing time seem to fade away.” It’s easy to draw parallels between hyperfocus and the [flow state](https://stackoverflow.blog/2022/09/14/what-science-says-about-flow-state/), a distraction-free groove in which programmers, writers, musicians, artists, and other creators produce their best work (occasionally while forgetting to eat). [View Highlight](https://read.readwise.io/read/01j6pxkb2v38syn1hs3tw6exyk))

  ADHD can make people more vulnerable to inattentive mistakes, missed deadlines, or unfinished projects. A perennial question on Reddit is [some variation](https://www.reddit.com/r/learnprogramming/comments/kftc4g/any_programmers_with_adhd/) of “Programmers with ADHD, how do you stay on track?” [View Highlight](https://read.readwise.io/read/01j6pxt1ppawyk5bfb7yqbb4cs))
  > [!note]
  > Inattentive mistakes: Errors that occur when an individual fails to fully focus on a task, often resulting in oversights or miscalculations. These mistakes can stem from distractions, fatigue, or cognitive overload, and are frequently associated with conditions such as Attention Deficit Hyperactivity Disorder (ADHD). Inattentive mistakes may manifest as missed deadlines, incomplete work, or simple errors in judgment, highlighting the importance of attention and concentration in effective task management.


path: Readwise/Five Terminal Applications I Can't Live Without.md
sortable_path: ReadwiseFive Terminal Applications I Can't Live Without.md
title: Five Terminal Applications I Can't Live Without
lead: ![rw-book-cover](https://readwise-assets.s3.amazonaws.com/static/images/article1.be68295a7e40.png)
checksum: c05ecd79d01efa4645cbe4ab2f962087329d6ab5bac3c0e68d8a9a9d36bfa9fe
created: 2024-09-12 14:56:45.745045807+00:00
modified: 2024-09-12 14:29:22.21184189+00:00
metadata: {}
body:
  ![rw-book-cover](https://readwise-assets.s3.amazonaws.com/static/images/article1.be68295a7e40.png)

  ## Metadata
  - Author: [[DevOps Toolbox]]
  - Full Title: Five Terminal Applications I Can't Live Without
  - Category: #articles
  - Document Tags: [[cli-tools]] 
  - URL: https://omnivore.app/aleidk/five-terminal-applications-i-can-t-live-without-19137768dab
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=Five%20Terminal%20Applications%20I%20Can%27t%20Live%20Without
  > [!tldr]
  > We all love the terminal. But what if I told you that some of the most powerful security tools are slo available, right at your fingertips, within your familiar terminal?

  ## Highlights
  [age](https://click.convertkit-mail2.com/5qulodl26mb7hv6oe4vf6h94xo444tn/qvh8h7hrpoermrbl/aHR0cHM6Ly9naXRodWIuY29tL0ZpbG9Tb3R0aWxlL2FnZQ==) is a simple, modern file encryption tool that’s perfect for quickly securing sensitive data. Whether you’re using keys or passwords, age makes file encryption a breeze. [View Highlight](https://read.readwise.io/read/01j544wrjfxa9s9bfvp3nww6hh)) [[cli-tools]] 

  [sshs](https://click.convertkit-mail2.com/5qulodl26mb7hv6oe4vf6h94xo444tn/g3hnh5h3w6g38mhr/aHR0cHM6Ly9naXRodWIuY29tL3F1YW50dW1zaGVlcC9zc2hz) is a terminal user interface for SSH that takes the pain out of managing multiple server connections. It picks up your SSH config and presents your servers in a neat, easy-to-navigate list. [View Highlight](https://read.readwise.io/read/01j544yqsb0j8442d97546tgyy)) [[cli-tools]] 

  [atac](https://click.convertkit-mail2.com/5qulodl26mb7hv6oe4vf6h94xo444tn/9qhzhnhprz4pvzc9/aHR0cHM6Ly9naXRodWIuY29tL0p1bGllbi1jcHNuL0FUQUM=) (Arguably a terminal API client) brings the power of Postman to your command line. It’s perfect for testing and debugging API endpoints without leaving your terminal. [View Highlight](https://read.readwise.io/read/01j544zs5250tst193evsrth2c)) [[cli-tools]] 

  [portal](https://click.convertkit-mail2.com/5qulodl26mb7hv6oe4vf6h94xo444tn/48hvhehr86wrdwtx/aHR0cHM6Ly9naXRodWIuY29tL1NwYXRpdW1Qb3J0YWUvcG9ydGFs) is a sleek file transfer utility that works in your terminal. It makes sending files between computers secure and straightforward. [View Highlight](https://read.readwise.io/read/01j5450tnt3tjstzyn3tzs4xyx)) [[cli-tools]]

raw_content:
  # Five Terminal Applications I Can't Live Without

  ![rw-book-cover](https://readwise-assets.s3.amazonaws.com/static/images/article1.be68295a7e40.png)

  ## Metadata
  - Author: [[DevOps Toolbox]]
  - Full Title: Five Terminal Applications I Can't Live Without
  - Category: #articles
  - Document Tags: [[cli-tools]] 
  - URL: https://omnivore.app/aleidk/five-terminal-applications-i-can-t-live-without-19137768dab
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=Five%20Terminal%20Applications%20I%20Can%27t%20Live%20Without
  > [!tldr]
  > We all love the terminal. But what if I told you that some of the most powerful security tools are slo available, right at your fingertips, within your familiar terminal?

  ## Highlights
  [age](https://click.convertkit-mail2.com/5qulodl26mb7hv6oe4vf6h94xo444tn/qvh8h7hrpoermrbl/aHR0cHM6Ly9naXRodWIuY29tL0ZpbG9Tb3R0aWxlL2FnZQ==) is a simple, modern file encryption tool that’s perfect for quickly securing sensitive data. Whether you’re using keys or passwords, age makes file encryption a breeze. [View Highlight](https://read.readwise.io/read/01j544wrjfxa9s9bfvp3nww6hh)) [[cli-tools]] 

  [sshs](https://click.convertkit-mail2.com/5qulodl26mb7hv6oe4vf6h94xo444tn/g3hnh5h3w6g38mhr/aHR0cHM6Ly9naXRodWIuY29tL3F1YW50dW1zaGVlcC9zc2hz) is a terminal user interface for SSH that takes the pain out of managing multiple server connections. It picks up your SSH config and presents your servers in a neat, easy-to-navigate list. [View Highlight](https://read.readwise.io/read/01j544yqsb0j8442d97546tgyy)) [[cli-tools]] 

  [atac](https://click.convertkit-mail2.com/5qulodl26mb7hv6oe4vf6h94xo444tn/9qhzhnhprz4pvzc9/aHR0cHM6Ly9naXRodWIuY29tL0p1bGllbi1jcHNuL0FUQUM=) (Arguably a terminal API client) brings the power of Postman to your command line. It’s perfect for testing and debugging API endpoints without leaving your terminal. [View Highlight](https://read.readwise.io/read/01j544zs5250tst193evsrth2c)) [[cli-tools]] 

  [portal](https://click.convertkit-mail2.com/5qulodl26mb7hv6oe4vf6h94xo444tn/48hvhehr86wrdwtx/aHR0cHM6Ly9naXRodWIuY29tL1NwYXRpdW1Qb3J0YWUvcG9ydGFs) is a sleek file transfer utility that works in your terminal. It makes sending files between computers secure and straightforward. [View Highlight](https://read.readwise.io/read/01j5450tnt3tjstzyn3tzs4xyx)) [[cli-tools]] 


path: Readwise/HTMX 3 IRL Use Cases.md
sortable_path: ReadwiseHTMX 3 IRL Use Cases.md
title: HTMX: 3 IRL Use Cases
lead: ![rw-book-cover](https://i.ytimg.com/vi/sTzF57GE4-k/maxresdefault.jpg)
checksum: 3630dd65363cf611619efdf4b9d47d8dff1972cf29aaa2039a4aeaeb6492adc0
created: 2024-09-12 14:56:45.784552384+00:00
modified: 2024-09-12 14:29:22.21184189+00:00
metadata: {}
body:
  ![rw-book-cover](https://i.ytimg.com/vi/sTzF57GE4-k/maxresdefault.jpg)

  ## Metadata
  - Author: [[ThePrimeTime]]
  - Full Title: HTMX: 3 IRL Use Cases
  - Category: #articles
  - URL: https://www.youtube.com/watch?v=sTzF57GE4-k
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=HTMX%3A%203%20IRL%20Use%20Cases
  > [!tldr]
  > HTMX is a simple tool that can make web development easier by keeping things straightforward. It allows developers to build dynamic web applications without relying heavily on JavaScript frameworks. Many tasks can be achieved with just a few lines of code, making it a valuable addition to a developer's toolkit.

  ## Highlights
  if you started web dev after 2015 it is hard to see how to do a site without anything other than client-side Frameworks [View Highlight](https://read.readwise.io/read/01j5tc1j7ke8vs2vmcs34c07kn))

raw_content:
  # HTMX: 3 IRL Use Cases

  ![rw-book-cover](https://i.ytimg.com/vi/sTzF57GE4-k/maxresdefault.jpg)

  ## Metadata
  - Author: [[ThePrimeTime]]
  - Full Title: HTMX: 3 IRL Use Cases
  - Category: #articles
  - URL: https://www.youtube.com/watch?v=sTzF57GE4-k
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=HTMX%3A%203%20IRL%20Use%20Cases
  > [!tldr]
  > HTMX is a simple tool that can make web development easier by keeping things straightforward. It allows developers to build dynamic web applications without relying heavily on JavaScript frameworks. Many tasks can be achieved with just a few lines of code, making it a valuable addition to a developer's toolkit.

  ## Highlights
  if you started web dev after 2015 it is hard to see how to do a site without anything other than client-side Frameworks [View Highlight](https://read.readwise.io/read/01j5tc1j7ke8vs2vmcs34c07kn))


path: Readwise/How Do You Program for 8h in a Row.md
sortable_path: ReadwiseHow Do You Program for 8h in a Row.md
title: How Do You Program for 8h in a Row?
checksum: ed6c41a6dad339768887546ec80b925b4e93c6c08d139d7858d5356b014494ae
created: 2024-09-12 14:56:45.791063037+00:00
modified: 2024-09-12 14:29:22.21184189+00:00
metadata: {}
lead:
  ![rw-book-cover](https://substackcdn.com/image/fetch/w_1200,h_600,c_fill,f_jpg,q_auto:good,fl_progressive:steep,g_auto/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa68add58-ed53-40af-972e-222f936aa4bd_512x312.png)

body:
  ![rw-book-cover](https://substackcdn.com/image/fetch/w_1200,h_600,c_fill,f_jpg,q_auto:good,fl_progressive:steep,g_auto/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa68add58-ed53-40af-972e-222f936aa4bd_512x312.png)

  ## Metadata
  - Author: [[Bite Code!]]
  - Full Title: How Do You Program for 8h in a Row?
  - Category: #articles
  - Document Tags: [[dev]] [[productivity]] 
  - URL: https://www.bitecode.dev/p/how-do-you-program-for-8h-in-a-row
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=How%20Do%20You%20Program%20for%208h%20in%20a%20Row%3F
  > [!tldr]
  > Most programmers can't work for 8 hours straight every day without feeling burnt out. It's important to focus on your own coding goals and productivity rather than comparing yourself to others. Finding a balance that works for you will lead to a happier and more sustainable coding experience.

  ## Highlights
  Unless you are going to deny John von Neumann and Usain Bolt have existed, you have to accept the idea some individuals are able to produce results you can’t. [View Highlight](https://read.readwise.io/read/01j5ve0w5gwghcgzxsyvvhmwqt))

  Here I am with the damn spectrum again. But it’s a curve, y’all, of course, it’s a spectrum. You don’t have 10x and 1x, you have 0.3x, 5x, 1.479878x (and -2x because aggressive imbeciles are also part of our reality)... [View Highlight](https://read.readwise.io/read/01j5ve777bthcmj83k6k7cec5f))
  > [!note]
  > Aquí estoy de nuevo con el maldito espectro. Pero es una curva, amigos, por supuesto, es un espectro. No tienes 10x y 1x, tienes 0.3x, 5x, 1.479878x (y -2x porque los imbéciles agresivos también son parte de nuestra realidad)...
  > lol xd

  you will have to adapt your rhythm, and the size of the task you are going for, plus manage expectations, yours and others, to be a happy coder [View Highlight](https://read.readwise.io/read/01j5veddky3z4g488sy5bcd4a2)) [[favorite]] 

  Figure out what you can do, and find the load that fits you. If you like it, you may attempt to outgrow this by giving yourself more challenges or even putting yourself in an extremely hard situation. However, remember that life, often in the form of customers, bosses and DDOS, will bring that to you anyway. [View Highlight](https://read.readwise.io/read/01j5vee0j5h4jqxfyarnvpxnkt))

raw_content:
  # How Do You Program for 8h in a Row?

  ![rw-book-cover](https://substackcdn.com/image/fetch/w_1200,h_600,c_fill,f_jpg,q_auto:good,fl_progressive:steep,g_auto/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa68add58-ed53-40af-972e-222f936aa4bd_512x312.png)

  ## Metadata
  - Author: [[Bite Code!]]
  - Full Title: How Do You Program for 8h in a Row?
  - Category: #articles
  - Document Tags: [[dev]] [[productivity]] 
  - URL: https://www.bitecode.dev/p/how-do-you-program-for-8h-in-a-row
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=How%20Do%20You%20Program%20for%208h%20in%20a%20Row%3F
  > [!tldr]
  > Most programmers can't work for 8 hours straight every day without feeling burnt out. It's important to focus on your own coding goals and productivity rather than comparing yourself to others. Finding a balance that works for you will lead to a happier and more sustainable coding experience.

  ## Highlights
  Unless you are going to deny John von Neumann and Usain Bolt have existed, you have to accept the idea some individuals are able to produce results you can’t. [View Highlight](https://read.readwise.io/read/01j5ve0w5gwghcgzxsyvvhmwqt))

  Here I am with the damn spectrum again. But it’s a curve, y’all, of course, it’s a spectrum. You don’t have 10x and 1x, you have 0.3x, 5x, 1.479878x (and -2x because aggressive imbeciles are also part of our reality)... [View Highlight](https://read.readwise.io/read/01j5ve777bthcmj83k6k7cec5f))
  > [!note]
  > Aquí estoy de nuevo con el maldito espectro. Pero es una curva, amigos, por supuesto, es un espectro. No tienes 10x y 1x, tienes 0.3x, 5x, 1.479878x (y -2x porque los imbéciles agresivos también son parte de nuestra realidad)...
  > lol xd

  you will have to adapt your rhythm, and the size of the task you are going for, plus manage expectations, yours and others, to be a happy coder [View Highlight](https://read.readwise.io/read/01j5veddky3z4g488sy5bcd4a2)) [[favorite]] 

  Figure out what you can do, and find the load that fits you. If you like it, you may attempt to outgrow this by giving yourself more challenges or even putting yourself in an extremely hard situation. However, remember that life, often in the form of customers, bosses and DDOS, will bring that to you anyway. [View Highlight](https://read.readwise.io/read/01j5vee0j5h4jqxfyarnvpxnkt))


path: Readwise/How I Remember Everything I Read With Readwise.md
sortable_path: ReadwiseHow I Remember Everything I Read With Readwise.md
title: How I Remember Everything I Read With Readwise
lead: ![rw-book-cover](https://i.ytimg.com/vi/OlWomVta4DU/maxresdefault.jpg)
checksum: e0f8b2913986bc173af9cdc351aa5d01344fc9af7e0a4f2def181c833a1b5f93
created: 2024-09-12 14:56:45.801424061+00:00
modified: 2024-09-12 14:29:22.21184189+00:00
metadata: {}
body:
  ![rw-book-cover](https://i.ytimg.com/vi/OlWomVta4DU/maxresdefault.jpg)

  ## Metadata
  - Author: [[Tiago Forte]]
  - Full Title: How I Remember Everything I Read With Readwise
  - Category: #articles
  - Document Tags: [[notetaking]] [[productivity]] 
  - URL: https://youtube.com/watch?v=OlWomVta4DU&si=9kSzbiC8eY_Bncgq
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=How%20I%20Remember%20Everything%20I%20Read%20With%20Readwise
  > [!tldr]
  > Readwise is a platform that helps you remember everything you read by collecting highlights from books, articles, and other content. It can export these highlights to various note-taking apps, making it easy to organize your thoughts. This way, you can revisit important information whenever you need it without the hassle of copying and pasting.

  ## Highlights
  that kind of focused aware reading where you're not just reading a tweet or an Instagram caption you're actually taking the time and space to sit down and really think about something really take an idea seriously that is a rare and precious experience [View Highlight](https://read.readwise.io/read/01j69ty4jsa8qyqrm76cb82e1c))

  most of the internet if you think about it especially social media is not designed for calm deep purposeful reflection it's exactly the opposite [View Highlight](https://read.readwise.io/read/01j69v3539zhtvg4z09r0mhj0c))

  what I find is I end up deleting never even looking at maybe half of the stuff that is saving my relater app and it's the half that is most click-baity most sensationalistic most pointless most full of hype that's the stuff that I don't even want to be filling my mind
  anyway [View Highlight](https://read.readwise.io/read/01j69v79j1jfc2ptn55y886ee5))

raw_content:
  # How I Remember Everything I Read With Readwise

  ![rw-book-cover](https://i.ytimg.com/vi/OlWomVta4DU/maxresdefault.jpg)

  ## Metadata
  - Author: [[Tiago Forte]]
  - Full Title: How I Remember Everything I Read With Readwise
  - Category: #articles
  - Document Tags: [[notetaking]] [[productivity]] 
  - URL: https://youtube.com/watch?v=OlWomVta4DU&si=9kSzbiC8eY_Bncgq
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=How%20I%20Remember%20Everything%20I%20Read%20With%20Readwise
  > [!tldr]
  > Readwise is a platform that helps you remember everything you read by collecting highlights from books, articles, and other content. It can export these highlights to various note-taking apps, making it easy to organize your thoughts. This way, you can revisit important information whenever you need it without the hassle of copying and pasting.

  ## Highlights
  that kind of focused aware reading where you're not just reading a tweet or an Instagram caption you're actually taking the time and space to sit down and really think about something really take an idea seriously that is a rare and precious experience [View Highlight](https://read.readwise.io/read/01j69ty4jsa8qyqrm76cb82e1c))

  most of the internet if you think about it especially social media is not designed for calm deep purposeful reflection it's exactly the opposite [View Highlight](https://read.readwise.io/read/01j69v3539zhtvg4z09r0mhj0c))

  what I find is I end up deleting never even looking at maybe half of the stuff that is saving my relater app and it's the half that is most click-baity most sensationalistic most pointless most full of hype that's the stuff that I don't even want to be filling my mind
  anyway [View Highlight](https://read.readwise.io/read/01j69v79j1jfc2ptn55y886ee5))


checksum: e3e7ac705d8792e3ea4073361c1de897ad43c42ee6ac2d0dd83e69af12cb1075
created: 2024-09-12 14:56:45.809147588+00:00
modified: 2024-09-12 15:57:10.98467291+00:00
metadata: {}
path:
  Readwise/How a Collaborative Zettelkasten Might Work A Modest Proposal for a New Kind of Collective Creativity.md

sortable_path:
  ReadwiseHow a Collaborative Zettelkasten Might Work A Modest Proposal for a New Kind of Collective Creativity.md

title:
  How a Collaborative Zettelkasten Might Work: A Modest Proposal for a New Kind of Collective Creativity

lead:
  ![rw-book-cover](https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSBHZPD3JWcWaVg_AFb1m5du55SCFgj2hbE1Ek60-RFG4I3W8kvc35rFvniOx-G0NcNnwg&usqp=CAU)

body:
  ![rw-book-cover](https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSBHZPD3JWcWaVg_AFb1m5du55SCFgj2hbE1Ek60-RFG4I3W8kvc35rFvniOx-G0NcNnwg&usqp=CAU)

  ## Metadata
  - Author: [[hidden (bobdoto)]]
  - Full Title: How a Collaborative Zettelkasten Might Work: A Modest Proposal for a New Kind of Collective Creativity
  - Category: #articles
  - URL: https://writing.bobdoto.computer/how-a-collaborative-zettelkasten-might-work-a-modest-proposal/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=How%20a%20Collaborative%20Zettelkasten%20Might%20Work%3A%20A%20Modest%20Proposal%20for%20a%20New%20Kind%20of%20Collective%20Creativity
  > [!tldr]
  > This article gives a preliminary framework for people wanting to experiment with a collaborative zettelkasten. Keep in mind, these are mere suggestions, since I've not yet experimented with this type of slip box. As to whether the suggestions are valid, this will be determined by anyone who attempts to put them into practice. Note: While this article was written in the context of a Luhmann-style zettelkasten, people using similar, adjacent models, should feel free to work with what's presented in ways that fit their system.
  What's a Collaborative Zettelkasten?A collaborative zettelkasten is maintained by multiple people, one in which all the participants add main notes, establish connections between ideas, and freely pull from the network of notes for their own projects / projects worked on as a collective. The contents of the zettelkasten may or may not be aligned with a single, agreed upon subject. Participants may or may not have a common output, goal, or project in mind when they start. The only requirements...

  ## Highlights
  A collaborative zettelkasten is maintained by multiple people, one in which all the participants add main notes, establish connections between ideas, and freely pull from the network of notes for their own projects / projects worked on as a collective. The contents of the zettelkasten may or may not be aligned with a single, agreed upon subject. Participants may or may not have a common output, goal, or project in mind when they start. [View Highlight](https://read.readwise.io/read/01j5xzksta891sj1jfpexpb9vs))

  "[Luhmann's] main concern was not to develop an idea to maximum sophistication; rather, he operated on the assumption that a decision on the usefulness of a note could only be made in relating it to the other notes."[2](https://writing.bobdoto.computer/how-a-collaborative-zettelkasten-might-work-a-modest-proposal/#fn-2) [View Highlight](https://read.readwise.io/read/01j5xzxhwd0d5cgcvstt6y57z4))

  As Luhmann states in his own notes, let the zettelkasten function as a "septic tank."[3](https://writing.bobdoto.computer/how-a-collaborative-zettelkasten-might-work-a-modest-proposal/#fn-3) Allow the relationships between ideas to determine their value. [View Highlight](https://read.readwise.io/read/01j5xzz8xhq5r1tde4vkhr0fhp))

raw_content:
  # How a Collaborative Zettelkasten Might Work: A Modest Proposal for a New Kind of Collective Creativity

  ![rw-book-cover](https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSBHZPD3JWcWaVg_AFb1m5du55SCFgj2hbE1Ek60-RFG4I3W8kvc35rFvniOx-G0NcNnwg&usqp=CAU)

  ## Metadata
  - Author: [[hidden (bobdoto)]]
  - Full Title: How a Collaborative Zettelkasten Might Work: A Modest Proposal for a New Kind of Collective Creativity
  - Category: #articles
  - URL: https://writing.bobdoto.computer/how-a-collaborative-zettelkasten-might-work-a-modest-proposal/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=How%20a%20Collaborative%20Zettelkasten%20Might%20Work%3A%20A%20Modest%20Proposal%20for%20a%20New%20Kind%20of%20Collective%20Creativity
  > [!tldr]
  > This article gives a preliminary framework for people wanting to experiment with a collaborative zettelkasten. Keep in mind, these are mere suggestions, since I've not yet experimented with this type of slip box. As to whether the suggestions are valid, this will be determined by anyone who attempts to put them into practice. Note: While this article was written in the context of a Luhmann-style zettelkasten, people using similar, adjacent models, should feel free to work with what's presented in ways that fit their system.
  What's a Collaborative Zettelkasten?A collaborative zettelkasten is maintained by multiple people, one in which all the participants add main notes, establish connections between ideas, and freely pull from the network of notes for their own projects / projects worked on as a collective. The contents of the zettelkasten may or may not be aligned with a single, agreed upon subject. Participants may or may not have a common output, goal, or project in mind when they start. The only requirements...

  ## Highlights
  A collaborative zettelkasten is maintained by multiple people, one in which all the participants add main notes, establish connections between ideas, and freely pull from the network of notes for their own projects / projects worked on as a collective. The contents of the zettelkasten may or may not be aligned with a single, agreed upon subject. Participants may or may not have a common output, goal, or project in mind when they start. [View Highlight](https://read.readwise.io/read/01j5xzksta891sj1jfpexpb9vs))

  "[Luhmann's] main concern was not to develop an idea to maximum sophistication; rather, he operated on the assumption that a decision on the usefulness of a note could only be made in relating it to the other notes."[2](https://writing.bobdoto.computer/how-a-collaborative-zettelkasten-might-work-a-modest-proposal/#fn-2) [View Highlight](https://read.readwise.io/read/01j5xzxhwd0d5cgcvstt6y57z4))

  As Luhmann states in his own notes, let the zettelkasten function as a "septic tank."[3](https://writing.bobdoto.computer/how-a-collaborative-zettelkasten-might-work-a-modest-proposal/#fn-3) Allow the relationships between ideas to determine their value. [View Highlight](https://read.readwise.io/read/01j5xzz8xhq5r1tde4vkhr0fhp))


path: Readwise/How to Actually Use What You Read With Readwise Part 2.md
sortable_path: ReadwiseHow to Actually Use What You Read With Readwise Part 2.md
title: How to Actually Use What You Read With Readwise: Part 2
lead: ![rw-book-cover](https://s3.amazonaws.com/readwiseio/2018/03/kindle-highlights.png)
checksum: a4d9fbce361b636acb38b8ba0f0a60eba8c1efa6175bbc06cf7e579afc43e093
created: 2024-09-12 14:56:45.814636203+00:00
modified: 2024-09-12 14:29:22.21184189+00:00
metadata: {}
body:
  ![rw-book-cover](https://s3.amazonaws.com/readwiseio/2018/03/kindle-highlights.png)

  ## Metadata
  - Author: [[Daniel Doyon]]
  - Full Title: How to Actually Use What You Read With Readwise: Part 2
  - Category: #articles
  - Document Tags: [[notetaking]] 
  - URL: https://blog.readwise.io/reading-workflow-part-2/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=How%20to%20Actually%20Use%20What%20You%20Read%20With%20Readwise%3A%20Part%202
  > [!tldr]
  > In Part 2 of the Readwise series, we learn to enhance our reading workflow by actively engaging with what we read. This includes capturing highlights and notes, which help create a two-sided conversation with the text. The article emphasizes the importance of reviewing these materials through the Readwise web app for a more interactive experience.

  ## Highlights
  you'll find yourself asking as you read: Do I actually want to see this passage again? Is this passage actually highlight-worthy? Will my future self be able to make sense of what I've highlighted? And so on. [View Highlight](https://read.readwise.io/read/01j6mqyk29xd598f62nayabzfj))

  The internal dialog is actually a sign that you're *actively* — rather than passively — reading. [View Highlight](https://read.readwise.io/read/01j6mqzsxe83y8t342knm6y82h))

  "If your aim in reading is to profit from it — to grow somehow in mind or spirit — you have to keep awake. That means reading as actively as possible. It means making an effort — an effort for which you expect to be repaid." [View Highlight](https://read.readwise.io/read/01j6mrf2e1tg6jz2209brj24yk))

  Once you grow accustomed to actually revisiting what you've captured, however, you'll likely discover that you also want to review more than just the original passages. You'll also want to review your original reaction *to* those passages. You can capture these reactions, of course, by taking notes. [View Highlight](https://read.readwise.io/read/01j6mtvq8kd9c0cxcjmwp5bfpq))

  The objective is simply to start a conversation rather than just silently highlighting. Maybe you strongly agree with something the author has written. Even better, maybe you strongly disagree. Note why. Maybe a section confuses you. Maybe a section could be helpful to something you're working on. [View Highlight](https://read.readwise.io/read/01j6mtym0q2qhrbap1r1tby8cn))

raw_content:
  # How to Actually Use What You Read With Readwise: Part 2

  ![rw-book-cover](https://s3.amazonaws.com/readwiseio/2018/03/kindle-highlights.png)

  ## Metadata
  - Author: [[Daniel Doyon]]
  - Full Title: How to Actually Use What You Read With Readwise: Part 2
  - Category: #articles
  - Document Tags: [[notetaking]] 
  - URL: https://blog.readwise.io/reading-workflow-part-2/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=How%20to%20Actually%20Use%20What%20You%20Read%20With%20Readwise%3A%20Part%202
  > [!tldr]
  > In Part 2 of the Readwise series, we learn to enhance our reading workflow by actively engaging with what we read. This includes capturing highlights and notes, which help create a two-sided conversation with the text. The article emphasizes the importance of reviewing these materials through the Readwise web app for a more interactive experience.

  ## Highlights
  you'll find yourself asking as you read: Do I actually want to see this passage again? Is this passage actually highlight-worthy? Will my future self be able to make sense of what I've highlighted? And so on. [View Highlight](https://read.readwise.io/read/01j6mqyk29xd598f62nayabzfj))

  The internal dialog is actually a sign that you're *actively* — rather than passively — reading. [View Highlight](https://read.readwise.io/read/01j6mqzsxe83y8t342knm6y82h))

  "If your aim in reading is to profit from it — to grow somehow in mind or spirit — you have to keep awake. That means reading as actively as possible. It means making an effort — an effort for which you expect to be repaid." [View Highlight](https://read.readwise.io/read/01j6mrf2e1tg6jz2209brj24yk))

  Once you grow accustomed to actually revisiting what you've captured, however, you'll likely discover that you also want to review more than just the original passages. You'll also want to review your original reaction *to* those passages. You can capture these reactions, of course, by taking notes. [View Highlight](https://read.readwise.io/read/01j6mtvq8kd9c0cxcjmwp5bfpq))

  The objective is simply to start a conversation rather than just silently highlighting. Maybe you strongly agree with something the author has written. Even better, maybe you strongly disagree. Note why. Maybe a section confuses you. Maybe a section could be helpful to something you're working on. [View Highlight](https://read.readwise.io/read/01j6mtym0q2qhrbap1r1tby8cn))


path: Readwise/How to Actually Use What You Read With Readwise Part 3.md
sortable_path: ReadwiseHow to Actually Use What You Read With Readwise Part 3.md
title: How to Actually Use What You Read With Readwise: Part 3
lead: ![rw-book-cover](https://s3.amazonaws.com/readwiseio/2018/03/kindle-highlights.png)
checksum: b5f1c05bafa9258a2c1e7c5b3b92361575c200af2e2c1a51b668e86b0ce379fe
created: 2024-09-12 14:56:45.820391937+00:00
modified: 2024-09-12 14:29:22.21184189+00:00
metadata: {}
body:
  ![rw-book-cover](https://s3.amazonaws.com/readwiseio/2018/03/kindle-highlights.png)

  ## Metadata
  - Author: [[Daniel Doyon]]
  - Full Title: How to Actually Use What You Read With Readwise: Part 3
  - Category: #articles
  - Document Tags: [[notetaking]] 
  - URL: https://blog.readwise.io/reading-workflow-part-3/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=How%20to%20Actually%20Use%20What%20You%20Read%20With%20Readwise%3A%20Part%203
  > [!tldr]
  > In Part 3 of the Readwise series, the author explains how to use advanced workflows for two types of reading: practical and theoretical. Practical reading aims for action, while theoretical reading focuses on gaining knowledge, and Readwise helps users capture and review key insights for both. By utilizing features like Inline Tagging and spaced repetition, readers can turn their reading into meaningful actions and lasting insights.

  ## Highlights
  "Theoretical books teach you that something is the case. Practical books teach you how to do something you want to do or think you should do." [View Highlight](https://read.readwise.io/read/01j6mxk0qxsc1ge4ebcrabg7n8))

  When you read something practical, you are seeking some sort of action — to *do*. When you read something theoretical, you are seeking some sort of knowledge — to *know*. [View Highlight](https://read.readwise.io/read/01j6mxkgms2x7rkwt6qqaaq144))

  serendipitous [View Highlight](https://read.readwise.io/read/01j6mxnpq872bx9q40h1ez0hp3))
  > [!note]
  > serendipitous (adjective): occurring by chance in a happy or beneficial way; unexpected and fortunate 🌟🍀

  For example, we might make it so highlights tagged `.i` for inbox, like above, are accelerated into your daily reviews until you do something about them. [View Highlight](https://read.readwise.io/read/01j6my11vve93ecp1hwdrd5n9n))
  > [!note]
  > tags highlights for actionability, something that I can filter later to search stuff I want to do or apply

  to meaningfully understand a new concept, you need to ponder it repeatedly — in different moods and in different contexts, and from different perspectives. [View Highlight](https://read.readwise.io/read/01j6my5fjqcss9a8zb68vqerw4))

  [spaced repetition](https://en.wikipedia.org/wiki/Spaced_repetition), [View Highlight](https://read.readwise.io/read/01j6my96k3avt6s37knqkehh9s))
  > [!note]
  > Spaced repetition: A learning technique that involves increasing intervals of review for information to enhance long-term retention and mastery. By leveraging the psychological spacing effect, spaced repetition optimizes the timing of study sessions based on how well the learner knows the material, promoting efficient memory consolidation and reducing the forgetting curve. This method is commonly used in educational software and flashcard systems to facilitate language learning, exam preparation, and skill acquisition.

  [active recall](https://en.wikipedia.org/wiki/Active_recall), [View Highlight](https://read.readwise.io/read/01j6my8p2zekrx849jj5c4yj06))
  > [!note]
  > Active recall: A learning technique that involves actively stimulating memory during the learning process, typically by testing oneself on the material to be remembered. This method contrasts with passive review strategies, such as rereading or highlighting, by emphasizing retrieval practice, which has been shown to enhance long-term retention and understanding. Active recall can take various forms, including flashcards, quizzes, and self-questioning, and is widely used in educational settings to improve learning outcomes.

raw_content:
  # How to Actually Use What You Read With Readwise: Part 3

  ![rw-book-cover](https://s3.amazonaws.com/readwiseio/2018/03/kindle-highlights.png)

  ## Metadata
  - Author: [[Daniel Doyon]]
  - Full Title: How to Actually Use What You Read With Readwise: Part 3
  - Category: #articles
  - Document Tags: [[notetaking]] 
  - URL: https://blog.readwise.io/reading-workflow-part-3/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=How%20to%20Actually%20Use%20What%20You%20Read%20With%20Readwise%3A%20Part%203
  > [!tldr]
  > In Part 3 of the Readwise series, the author explains how to use advanced workflows for two types of reading: practical and theoretical. Practical reading aims for action, while theoretical reading focuses on gaining knowledge, and Readwise helps users capture and review key insights for both. By utilizing features like Inline Tagging and spaced repetition, readers can turn their reading into meaningful actions and lasting insights.

  ## Highlights
  "Theoretical books teach you that something is the case. Practical books teach you how to do something you want to do or think you should do." [View Highlight](https://read.readwise.io/read/01j6mxk0qxsc1ge4ebcrabg7n8))

  When you read something practical, you are seeking some sort of action — to *do*. When you read something theoretical, you are seeking some sort of knowledge — to *know*. [View Highlight](https://read.readwise.io/read/01j6mxkgms2x7rkwt6qqaaq144))

  serendipitous [View Highlight](https://read.readwise.io/read/01j6mxnpq872bx9q40h1ez0hp3))
  > [!note]
  > serendipitous (adjective): occurring by chance in a happy or beneficial way; unexpected and fortunate 🌟🍀

  For example, we might make it so highlights tagged `.i` for inbox, like above, are accelerated into your daily reviews until you do something about them. [View Highlight](https://read.readwise.io/read/01j6my11vve93ecp1hwdrd5n9n))
  > [!note]
  > tags highlights for actionability, something that I can filter later to search stuff I want to do or apply

  to meaningfully understand a new concept, you need to ponder it repeatedly — in different moods and in different contexts, and from different perspectives. [View Highlight](https://read.readwise.io/read/01j6my5fjqcss9a8zb68vqerw4))

  [spaced repetition](https://en.wikipedia.org/wiki/Spaced_repetition), [View Highlight](https://read.readwise.io/read/01j6my96k3avt6s37knqkehh9s))
  > [!note]
  > Spaced repetition: A learning technique that involves increasing intervals of review for information to enhance long-term retention and mastery. By leveraging the psychological spacing effect, spaced repetition optimizes the timing of study sessions based on how well the learner knows the material, promoting efficient memory consolidation and reducing the forgetting curve. This method is commonly used in educational software and flashcard systems to facilitate language learning, exam preparation, and skill acquisition.

  [active recall](https://en.wikipedia.org/wiki/Active_recall), [View Highlight](https://read.readwise.io/read/01j6my8p2zekrx849jj5c4yj06))
  > [!note]
  > Active recall: A learning technique that involves actively stimulating memory during the learning process, typically by testing oneself on the material to be remembered. This method contrasts with passive review strategies, such as rereading or highlighting, by emphasizing retrieval practice, which has been shown to enhance long-term retention and understanding. Active recall can take various forms, including flashcards, quizzes, and self-questioning, and is widely used in educational settings to improve learning outcomes.


path: Readwise/How to Actually Use What You Read With Readwise.md
sortable_path: ReadwiseHow to Actually Use What You Read With Readwise.md
title: How to Actually Use What You Read With Readwise
lead: ![rw-book-cover](https://s3.amazonaws.com/readwiseio/2018/03/kindle-highlights.png)
checksum: d8341a0338c8bba871536a3359de10499d4e3d3928b22ae98a8aeb7ae4f80ba3
created: 2024-09-12 14:56:45.828588002+00:00
modified: 2024-09-12 14:29:22.21184189+00:00
metadata: {}
body:
  ![rw-book-cover](https://s3.amazonaws.com/readwiseio/2018/03/kindle-highlights.png)

  ## Metadata
  - Author: [[Daniel Doyon]]
  - Full Title: How to Actually Use What You Read With Readwise
  - Category: #articles
  - Document Tags: [[notetaking]] 
  - URL: https://blog.readwise.io/reading-workflow-part-1/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=How%20to%20Actually%20Use%20What%20You%20Read%20With%20Readwise
  > [!tldr]
  > Readwise is a tool that helps you remember and use the important ideas you find while reading. It offers a simple workflow with three steps: Capture your highlights, Review them regularly, and Integrate those insights into your life. By using Readwise, you can turn your reading into meaningful actions and lasting knowledge.

  ## Highlights
  We read in order to learn how to do something or we read to understand some new concept. For example, we might read a book to learn how to negotiate or we might read a book to understand behavioral economics. We call these motives meaningful action and lasting insight, respectively, and a reading workflow will help you get more of both.[](https://blog.readwise.io/reading-workflow-part-1#fn1) [View Highlight](https://read.readwise.io/read/01j58ez9vkh68ptwbnt951wkg9))

  *capture* any and all the things that might be meaningful to you — today or tomorrow, small or large — in a reliable system outside your mind so you can make use of those things later [View Highlight](https://read.readwise.io/read/01j58f1740ca5k7akyjp7enmkx))

  Now that you're capturing all the things that might be meaningful to you, the next step is to actually go back and *review* those things. Otherwise, what was the point of capturing in the first place? [View Highlight](https://read.readwise.io/read/01j58f3zcas4ewpxjf861kzfy6)) [[favorite]] 

  Integrate might mean **improved retention** (or compression) of new concepts thanks to a lightweight form of [spaced repetition](https://en.wikipedia.org/wiki/Spaced_repetition). [View Highlight](https://read.readwise.io/read/01j58f5aqe8f69a4rvvypb3r1n))

  Integrate might also mean **enhanced creativity** resulting from the serendipitous juxtaposition of seemingly unrelated ideas. [View Highlight](https://read.readwise.io/read/01j58f679pcp1vtd3ne64cxke9))
  > [!note]
  > This relates to BASB

  Integrate might also mean **sudden inspiration** to act on something you've read due to a well-timed reminder in a daily review. [View Highlight](https://read.readwise.io/read/01j58f8fa57a88b7647bwyaxp4))

raw_content:
  # How to Actually Use What You Read With Readwise

  ![rw-book-cover](https://s3.amazonaws.com/readwiseio/2018/03/kindle-highlights.png)

  ## Metadata
  - Author: [[Daniel Doyon]]
  - Full Title: How to Actually Use What You Read With Readwise
  - Category: #articles
  - Document Tags: [[notetaking]] 
  - URL: https://blog.readwise.io/reading-workflow-part-1/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=How%20to%20Actually%20Use%20What%20You%20Read%20With%20Readwise
  > [!tldr]
  > Readwise is a tool that helps you remember and use the important ideas you find while reading. It offers a simple workflow with three steps: Capture your highlights, Review them regularly, and Integrate those insights into your life. By using Readwise, you can turn your reading into meaningful actions and lasting knowledge.

  ## Highlights
  We read in order to learn how to do something or we read to understand some new concept. For example, we might read a book to learn how to negotiate or we might read a book to understand behavioral economics. We call these motives meaningful action and lasting insight, respectively, and a reading workflow will help you get more of both.[](https://blog.readwise.io/reading-workflow-part-1#fn1) [View Highlight](https://read.readwise.io/read/01j58ez9vkh68ptwbnt951wkg9))

  *capture* any and all the things that might be meaningful to you — today or tomorrow, small or large — in a reliable system outside your mind so you can make use of those things later [View Highlight](https://read.readwise.io/read/01j58f1740ca5k7akyjp7enmkx))

  Now that you're capturing all the things that might be meaningful to you, the next step is to actually go back and *review* those things. Otherwise, what was the point of capturing in the first place? [View Highlight](https://read.readwise.io/read/01j58f3zcas4ewpxjf861kzfy6)) [[favorite]] 

  Integrate might mean **improved retention** (or compression) of new concepts thanks to a lightweight form of [spaced repetition](https://en.wikipedia.org/wiki/Spaced_repetition). [View Highlight](https://read.readwise.io/read/01j58f5aqe8f69a4rvvypb3r1n))

  Integrate might also mean **enhanced creativity** resulting from the serendipitous juxtaposition of seemingly unrelated ideas. [View Highlight](https://read.readwise.io/read/01j58f679pcp1vtd3ne64cxke9))
  > [!note]
  > This relates to BASB

  Integrate might also mean **sudden inspiration** to act on something you've read due to a well-timed reminder in a daily review. [View Highlight](https://read.readwise.io/read/01j58f8fa57a88b7647bwyaxp4))


path: Readwise/How to Not Write Like an Asshole.md
sortable_path: ReadwiseHow to Not Write Like an Asshole.md
title: How to Not Write Like an Asshole
lead: ![rw-book-cover](https://thehustle.co/wp-content/uploads/2015/09/copywork2_og_image.jpg)
checksum: bcf6fad40ba90ee4161515bf333127b179d57b2087d079622b9982921fbd30a3
created: 2024-09-12 14:56:45.835823367+00:00
modified: 2024-09-12 14:29:22.21184189+00:00
metadata: {}
body:
  ![rw-book-cover](https://thehustle.co/wp-content/uploads/2015/09/copywork2_og_image.jpg)

  ## Metadata
  - Author: [[The Hustle]]
  - Full Title: How to Not Write Like an Asshole
  - Category: #articles
  - Document Tags: [[notetaking]] 
  - URL: https://thehustle.co/how-to-not-write-like-an-asshole
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=How%20to%20Not%20Write%20Like%20an%20Asshole
  > [!tldr]
  > Most people write poorly, using confusing sentences and unnecessary words. A simple way to improve writing is through copywork, where you hand-copy great writing to learn from it. By practicing this method for just a few minutes each day, anyone can become a better writer.

  ## Highlights
  The easiest way to become a better writer is to copy great writers. It’s that simple. [View Highlight](https://read.readwise.io/read/01j6py7hp221k6fzx7mza6b3k1))

  When I say you should copy great writers, I mean you should literally copy their best work, word-for-word, and preferably by hand.
  This process is called copywork and it’s mind-numbingly simple. You barely have to think. All you have to do is sit down with your favorite book, article, or blog post and copy it. [View Highlight](https://read.readwise.io/read/01j6py9pbrq5epw3sxgy5a9wv2))

  **Step 1: Pick a writer who you want to be like** ... To start with copywork, pick an author you love. Copywork is hard work, and you’ll spend a lot of time with whomever you decide to copy, so you need to love their work.

  **Step 2: Buy a ton of legal notebooks** 
  [Studies have shown](https://lifehacker.com/5738093/why-you-learn-more-effectively-by-writing-than-typing) that people learn better when they write by hand versus typing. So, for copywork it’s best to do all the copying by hand. I prefer using yellow legal notepads as they’re easy to read and cheap. [View Highlight](https://read.readwise.io/read/01j6pzrch7rq9ct4xr5f58nxhc))

  **Step 3: Start writing** 
  I suggest copying your favorite author for 10 minutes each day. It’s that simple. [View Highlight](https://read.readwise.io/read/01j6pzs8wpx24wawjxq7fypj7f))

raw_content:
  # How to Not Write Like an Asshole

  ![rw-book-cover](https://thehustle.co/wp-content/uploads/2015/09/copywork2_og_image.jpg)

  ## Metadata
  - Author: [[The Hustle]]
  - Full Title: How to Not Write Like an Asshole
  - Category: #articles
  - Document Tags: [[notetaking]] 
  - URL: https://thehustle.co/how-to-not-write-like-an-asshole
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=How%20to%20Not%20Write%20Like%20an%20Asshole
  > [!tldr]
  > Most people write poorly, using confusing sentences and unnecessary words. A simple way to improve writing is through copywork, where you hand-copy great writing to learn from it. By practicing this method for just a few minutes each day, anyone can become a better writer.

  ## Highlights
  The easiest way to become a better writer is to copy great writers. It’s that simple. [View Highlight](https://read.readwise.io/read/01j6py7hp221k6fzx7mza6b3k1))

  When I say you should copy great writers, I mean you should literally copy their best work, word-for-word, and preferably by hand.
  This process is called copywork and it’s mind-numbingly simple. You barely have to think. All you have to do is sit down with your favorite book, article, or blog post and copy it. [View Highlight](https://read.readwise.io/read/01j6py9pbrq5epw3sxgy5a9wv2))

  **Step 1: Pick a writer who you want to be like** ... To start with copywork, pick an author you love. Copywork is hard work, and you’ll spend a lot of time with whomever you decide to copy, so you need to love their work.

  **Step 2: Buy a ton of legal notebooks** 
  [Studies have shown](https://lifehacker.com/5738093/why-you-learn-more-effectively-by-writing-than-typing) that people learn better when they write by hand versus typing. So, for copywork it’s best to do all the copying by hand. I prefer using yellow legal notepads as they’re easy to read and cheap. [View Highlight](https://read.readwise.io/read/01j6pzrch7rq9ct4xr5f58nxhc))

  **Step 3: Start writing** 
  I suggest copying your favorite author for 10 minutes each day. It’s that simple. [View Highlight](https://read.readwise.io/read/01j6pzs8wpx24wawjxq7fypj7f))


path: Readwise/I've built my first successful side project, and I hate it.md
sortable_path: ReadwiseI've built my first successful side project, and I hate it.md
title: I've built my first successful side project, and I hate it
checksum: ef5cff0997be60e4d3d38ae4390fc2c1cef83aca0a6eea25bf81e5140f2e56e1
created: 2024-09-12 14:56:45.841305471+00:00
modified: 2024-09-12 14:29:22.21184189+00:00
metadata: {}
lead:
  ![rw-book-cover](https://switowski.com/posts/2024/i-have-built-my-first-successful-side-project-and-i-hate-it/cover.jpg)

body:
  ![rw-book-cover](https://switowski.com/posts/2024/i-have-built-my-first-successful-side-project-and-i-hate-it/cover.jpg)

  ## Metadata
  - Author: [[switowski]]
  - Full Title: I've built my first successful side project, and I hate it
  - Category: #articles
  - URL: https://switowski.com/blog/i-have-built-my-first-successful-side-project-and-i-hate-it/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=I%27ve%20built%20my%20first%20successful%20side%20project%2C%20and%20I%20hate%20it
  > [!tldr]
  > Sebastian Witowski created a stock trading script that initially excited him, but he soon faced challenges with customer support and feature requests. Despite some sales, he experienced burnout from managing the project while juggling a full-time job. Ultimately, he learned that selling a product is just the beginning, and it requires ongoing effort and support.

  ## Highlights
  I'm an engineer, goddamit! We're not meant to click buttons in the browser or send the same email over and over again! [View Highlight](https://read.readwise.io/read/01j5y28d3ftfhss7wegbnkdwea)) [[favorite]] 

  Did disconnecting from my project affect my sanity? Oh, hell yes! The project went on autopilot, and it no longer felt like a dreaded chore when I was checking my emails or logging in to my TradingView account. It lost a lot of traction because I stopped updating it, so people think it's not useful anymore (even though it does its job as well as it did a few years ago). Its revenue declined in the past years. But I don't care. I'm happy again. [View Highlight](https://read.readwise.io/read/01j5y2yn2enf1aqz6y9akfmpxa))

  The dreaded truth that most programmers learn the hard way is that releasing a product is just the beginning. Once it's out there, you have to maintain it: fix bugs, implement new features, deal with disputes or frauds, and answer a LOT of emails (often from curious window shoppers who never convert to paying customers). [View Highlight](https://read.readwise.io/read/01j5y2gg4qd0p65b97g6xjgxy1))

  If your side project is not a source of genuine joy and you have other priorities, it's important to set some boundaries. [View Highlight](https://read.readwise.io/read/01j5y323gv3dwa4y15qzwpycg3))

  If you're planning to sell products globally, consider using a "merchant of record" like Gumroad or Paddle. This way, you won't have to figure out how much tax to charge for each country (basically, you only sell to Gumroad, and they resell your product to the final customer). [View Highlight](https://read.readwise.io/read/01j5y32rm97xwbjg1tv9hr65g6))

raw_content:
  # I've built my first successful side project, and I hate it

  ![rw-book-cover](https://switowski.com/posts/2024/i-have-built-my-first-successful-side-project-and-i-hate-it/cover.jpg)

  ## Metadata
  - Author: [[switowski]]
  - Full Title: I've built my first successful side project, and I hate it
  - Category: #articles
  - URL: https://switowski.com/blog/i-have-built-my-first-successful-side-project-and-i-hate-it/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=I%27ve%20built%20my%20first%20successful%20side%20project%2C%20and%20I%20hate%20it
  > [!tldr]
  > Sebastian Witowski created a stock trading script that initially excited him, but he soon faced challenges with customer support and feature requests. Despite some sales, he experienced burnout from managing the project while juggling a full-time job. Ultimately, he learned that selling a product is just the beginning, and it requires ongoing effort and support.

  ## Highlights
  I'm an engineer, goddamit! We're not meant to click buttons in the browser or send the same email over and over again! [View Highlight](https://read.readwise.io/read/01j5y28d3ftfhss7wegbnkdwea)) [[favorite]] 

  Did disconnecting from my project affect my sanity? Oh, hell yes! The project went on autopilot, and it no longer felt like a dreaded chore when I was checking my emails or logging in to my TradingView account. It lost a lot of traction because I stopped updating it, so people think it's not useful anymore (even though it does its job as well as it did a few years ago). Its revenue declined in the past years. But I don't care. I'm happy again. [View Highlight](https://read.readwise.io/read/01j5y2yn2enf1aqz6y9akfmpxa))

  The dreaded truth that most programmers learn the hard way is that releasing a product is just the beginning. Once it's out there, you have to maintain it: fix bugs, implement new features, deal with disputes or frauds, and answer a LOT of emails (often from curious window shoppers who never convert to paying customers). [View Highlight](https://read.readwise.io/read/01j5y2gg4qd0p65b97g6xjgxy1))

  If your side project is not a source of genuine joy and you have other priorities, it's important to set some boundaries. [View Highlight](https://read.readwise.io/read/01j5y323gv3dwa4y15qzwpycg3))

  If you're planning to sell products globally, consider using a "merchant of record" like Gumroad or Paddle. This way, you won't have to figure out how much tax to charge for each country (basically, you only sell to Gumroad, and they resell your product to the final customer). [View Highlight](https://read.readwise.io/read/01j5y32rm97xwbjg1tv9hr65g6))


path: Readwise/In Search of Code Purity.md
sortable_path: ReadwiseIn Search of Code Purity.md
title: In Search of Code Purity
lead: ![rw-book-cover](https://i.ytimg.com/vi/voRBS0r4EyI/maxresdefault.jpg?v=65aa862f)
checksum: 9b950bd1a971888db116bdda5ac150027788f7dd2ef3d36de3740c1c33e86d5c
created: 2024-09-12 14:56:45.849381789+00:00
modified: 2024-09-12 14:29:22.21184189+00:00
metadata: {}
body:
  ![rw-book-cover](https://i.ytimg.com/vi/voRBS0r4EyI/maxresdefault.jpg?v=65aa862f)

  ## Metadata
  - Author: [[No Boilerplate]]
  - Full Title: In Search of Code Purity
  - Category: #articles
  - Document Tags: [[dev]] [[dev/rust]] 
  - URL: https://www.youtube.com/watch?v=voRBS0r4EyI
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=In%20Search%20of%20Code%20Purity

  > [!note]
  > Goal: The intention is to leverage the principles of functional programming purity in a project, utilizing Rust or other programming languages, to enhance code readability, maintainability, and reliability. This to-do list will help achieve that by outlining actionable steps for implementation.
  > - [ ] 🦀 **Familiarize with Rust's const functions** to understand how they execute at both compile time and runtime, ensuring the utilization of pure functions.
  > - [ ] ⚙️ **Implement pure functions** in the codebase, ensuring they do not produce side effects and maintain referential transparency for predictable behavior.
  > - [ ] 🔍 **Establish a system for tagging functions** as pure in the codebase, allowing both developers and the compiler to reason about function behavior effectively.
  > - [ ] 📜 **Utilize Rust macros wisely** to enable compile-time evaluations effectively, while understanding their limitations compared to const functions.
  > - [ ] 📝 **Incorporate error handling** strategies focused on return types and assertions for better debugging of const functions.
  > - [ ] 🧪 **Experiment with caching techniques** that leverage the predictability of pure functions to optimize performance in the application.
  > [!tldr]
  > Alternate title: Rust's Hidden Purity System
  I was taught formal methods at university but these ultra-safe development techniques are expensive, require using unusual external verification languages, and most damning for web and application developers, they slow down iteration.
  After graduating and getting a webdev job, I despaired that the safety and guarantees of the formal systems that I had been introduced to weren't available to me as a web developer.
  I was going to have to act if I wanted to live in a different world.

  ❤️ If you would like to support what I do, I have set up a Patreon here: https://www.patreon.com/noboilerplate - Thank you!

  📄 All my videos are built in compile-checked markdown, transcript source code available here https://github.com/0atman/noboilerplate this is also where you'll find links to everything mentioned. 

  🖊️ Corrections are in the pinned ERRATA comment.

  🦀 Start your Rust journey here: https://www.youtube.com/watch?v=2hXNd6x9sZs

  👕 Bad shirts available here https://www.teepub...

  ## Highlights
  first function here factorial is a pure function a function that doesn't cause or rely upon side effects we know this without reading the function body because it doesn't have IO in the signature the second function main prints to the screen and so must have I/O this is a fantastic way to keep side effects managed and covers half of the nightmare errors I've seen throughout my career [View Highlight](https://read.readwise.io/read/01j6ez3db15q2wagxxh4fxpagw))

  if your language has a way of separating or tagging functions that are pure and then can hold you to that contract both you and the compiler can reason about your code in useful new ways [View Highlight](https://read.readwise.io/read/01j6ezg1548mj8f5ntkwrhxh86))

  If a pure function is called twice with the same inputs the result is guaranteed to be the same every time this is called referential transparency or idance or determinism this enables perfect predictable caching of return values which your compiler might automatically and easier debugging [View Highlight](https://read.readwise.io/read/01j6ezh53e7hcszmxxd91aze3r))

  const functions are functions that can be executed at compile time as well as runtime they differ from rust macros which can only run at compile time and can do anything by being much more limited [View Highlight](https://read.readwise.io/read/01j6ezpb7jgqybcmhz38r5sdxk))

  when debugging the only way to get information out of a const function is by its return type or Hal in compilation
  with a panic or a failed assertion [View Highlight](https://read.readwise.io/read/01j6f15drv4ypknhpcqz8jh9dc))

  macros execute arbitrary code at compile time and then can insert the
  results of that processing as potentially const values [View Highlight](https://read.readwise.io/read/01j6f1arc85y5twtf781mgy5tz))

  rust's const functions are only pure once you get to runtime [View Highlight](https://read.readwise.io/read/01j6f1a5g0yddv78empzwmh1xp))

  rust
  is as pure as possible but no purer [View Highlight](https://read.readwise.io/read/01j6f1env98rtskyvf5sp1eygp)) [[dev/rust]] [[dev]]

raw_content:
  # In Search of Code Purity

  ![rw-book-cover](https://i.ytimg.com/vi/voRBS0r4EyI/maxresdefault.jpg?v=65aa862f)

  ## Metadata
  - Author: [[No Boilerplate]]
  - Full Title: In Search of Code Purity
  - Category: #articles
  - Document Tags: [[dev]] [[dev/rust]] 
  - URL: https://www.youtube.com/watch?v=voRBS0r4EyI
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=In%20Search%20of%20Code%20Purity

  > [!note]
  > Goal: The intention is to leverage the principles of functional programming purity in a project, utilizing Rust or other programming languages, to enhance code readability, maintainability, and reliability. This to-do list will help achieve that by outlining actionable steps for implementation.
  > - [ ] 🦀 **Familiarize with Rust's const functions** to understand how they execute at both compile time and runtime, ensuring the utilization of pure functions.
  > - [ ] ⚙️ **Implement pure functions** in the codebase, ensuring they do not produce side effects and maintain referential transparency for predictable behavior.
  > - [ ] 🔍 **Establish a system for tagging functions** as pure in the codebase, allowing both developers and the compiler to reason about function behavior effectively.
  > - [ ] 📜 **Utilize Rust macros wisely** to enable compile-time evaluations effectively, while understanding their limitations compared to const functions.
  > - [ ] 📝 **Incorporate error handling** strategies focused on return types and assertions for better debugging of const functions.
  > - [ ] 🧪 **Experiment with caching techniques** that leverage the predictability of pure functions to optimize performance in the application.
  > [!tldr]
  > Alternate title: Rust's Hidden Purity System
  I was taught formal methods at university but these ultra-safe development techniques are expensive, require using unusual external verification languages, and most damning for web and application developers, they slow down iteration.
  After graduating and getting a webdev job, I despaired that the safety and guarantees of the formal systems that I had been introduced to weren't available to me as a web developer.
  I was going to have to act if I wanted to live in a different world.

  ❤️ If you would like to support what I do, I have set up a Patreon here: https://www.patreon.com/noboilerplate - Thank you!

  📄 All my videos are built in compile-checked markdown, transcript source code available here https://github.com/0atman/noboilerplate this is also where you'll find links to everything mentioned. 

  🖊️ Corrections are in the pinned ERRATA comment.

  🦀 Start your Rust journey here: https://www.youtube.com/watch?v=2hXNd6x9sZs

  👕 Bad shirts available here https://www.teepub...

  ## Highlights
  first function here factorial is a pure function a function that doesn't cause or rely upon side effects we know this without reading the function body because it doesn't have IO in the signature the second function main prints to the screen and so must have I/O this is a fantastic way to keep side effects managed and covers half of the nightmare errors I've seen throughout my career [View Highlight](https://read.readwise.io/read/01j6ez3db15q2wagxxh4fxpagw))

  if your language has a way of separating or tagging functions that are pure and then can hold you to that contract both you and the compiler can reason about your code in useful new ways [View Highlight](https://read.readwise.io/read/01j6ezg1548mj8f5ntkwrhxh86))

  If a pure function is called twice with the same inputs the result is guaranteed to be the same every time this is called referential transparency or idance or determinism this enables perfect predictable caching of return values which your compiler might automatically and easier debugging [View Highlight](https://read.readwise.io/read/01j6ezh53e7hcszmxxd91aze3r))

  const functions are functions that can be executed at compile time as well as runtime they differ from rust macros which can only run at compile time and can do anything by being much more limited [View Highlight](https://read.readwise.io/read/01j6ezpb7jgqybcmhz38r5sdxk))

  when debugging the only way to get information out of a const function is by its return type or Hal in compilation
  with a panic or a failed assertion [View Highlight](https://read.readwise.io/read/01j6f15drv4ypknhpcqz8jh9dc))

  macros execute arbitrary code at compile time and then can insert the
  results of that processing as potentially const values [View Highlight](https://read.readwise.io/read/01j6f1arc85y5twtf781mgy5tz))

  rust's const functions are only pure once you get to runtime [View Highlight](https://read.readwise.io/read/01j6f1a5g0yddv78empzwmh1xp))

  rust
  is as pure as possible but no purer [View Highlight](https://read.readwise.io/read/01j6f1env98rtskyvf5sp1eygp)) [[dev/rust]] [[dev]] 


path: Readwise/Learn vLANs, Subnets, and NAT to Improve Your Network Security.md
sortable_path: ReadwiseLearn vLANs, Subnets, and NAT to Improve Your Network Security.md
title: Learn vLANs, Subnets, and NAT to Improve Your Network Security
lead: ![rw-book-cover](https://i.ytimg.com/vi/gk_kHgNhJVo/maxresdefault.jpg)
checksum: 7e654cb2820f2ee4ede92922078f051911a475de01677813d437c514b5ce0a8d
created: 2024-09-12 14:56:45.86268239+00:00
modified: 2024-09-12 14:29:22.21184189+00:00
metadata: {}
body:
  ![rw-book-cover](https://i.ytimg.com/vi/gk_kHgNhJVo/maxresdefault.jpg)

  ## Metadata
  - Author: [[Jim's Garage]]
  - Full Title: Learn vLANs, Subnets, and NAT to Improve Your Network Security
  - Category: #articles
  - Document Tags: [[homelab]] 
  - URL: https://www.youtube.com/watch?v=gk_kHgNhJVo
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=Learn%20vLANs%2C%20Subnets%2C%20and%20NAT%20to%20Improve%20Your%20Network%20Security
  > [!tldr]
  > This text explains how to set up a static IP address, configure subnets, and use VLANs and NAT for better network security. It emphasizes the importance of organizing your network into different subnets and assigning VLAN tags for improved traffic management. The author also highlights the role of firewalls in controlling access to various devices on the network.

  ## Highlights
  that's pretty much how op works it would know that your tablet is making an internet request even though it's coming from that same ISP IP address therefore we're able to break down One external IP address into multiple
  internal addresses [View Highlight](https://read.readwise.io/read/01j54cajqj3xyfj1eemhcmsvqw))
  > [!note]
  > NAT in a nutshell

  what it does is it takes a single wire and it splits it up into lots of little wires now if you do that right through proper subnetting and VLAN tagging you can introduce security but it's dependent on making sure that you put the right devices in the right subnets and you control or access those protocols those IP addresses with strict firewall rules [View Highlight](https://read.readwise.io/read/01j54hz2c5z7kpt964rxs33095))

raw_content:
  # Learn vLANs, Subnets, and NAT to Improve Your Network Security

  ![rw-book-cover](https://i.ytimg.com/vi/gk_kHgNhJVo/maxresdefault.jpg)

  ## Metadata
  - Author: [[Jim's Garage]]
  - Full Title: Learn vLANs, Subnets, and NAT to Improve Your Network Security
  - Category: #articles
  - Document Tags: [[homelab]] 
  - URL: https://www.youtube.com/watch?v=gk_kHgNhJVo
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=Learn%20vLANs%2C%20Subnets%2C%20and%20NAT%20to%20Improve%20Your%20Network%20Security
  > [!tldr]
  > This text explains how to set up a static IP address, configure subnets, and use VLANs and NAT for better network security. It emphasizes the importance of organizing your network into different subnets and assigning VLAN tags for improved traffic management. The author also highlights the role of firewalls in controlling access to various devices on the network.

  ## Highlights
  that's pretty much how op works it would know that your tablet is making an internet request even though it's coming from that same ISP IP address therefore we're able to break down One external IP address into multiple
  internal addresses [View Highlight](https://read.readwise.io/read/01j54cajqj3xyfj1eemhcmsvqw))
  > [!note]
  > NAT in a nutshell

  what it does is it takes a single wire and it splits it up into lots of little wires now if you do that right through proper subnetting and VLAN tagging you can introduce security but it's dependent on making sure that you put the right devices in the right subnets and you control or access those protocols those IP addresses with strict firewall rules [View Highlight](https://read.readwise.io/read/01j54hz2c5z7kpt964rxs33095))


path: Readwise/Looking After Your Autistic Self.md
sortable_path: ReadwiseLooking After Your Autistic Self.md
title: Looking After Your Autistic Self
lead: ![rw-book-cover](https://readwise-assets.s3.amazonaws.com/static/images/article4.6bc1851654a0.png)
checksum: 5a3ca0e7d35adbdb6c030f7218614ed4fb7d1ba3fb2ab6dc7b8a2bf85bdc57b1
created: 2024-09-12 14:56:45.871936219+00:00
modified: 2024-09-12 14:29:22.21184189+00:00
metadata: {}
body:
  ![rw-book-cover](https://readwise-assets.s3.amazonaws.com/static/images/article4.6bc1851654a0.png)

  ## Metadata
  - Author: [[Niamh Garvey]]
  - Full Title: Looking After Your Autistic Self
  - Category: #books
  > [!tldr]
  > Autistic people often feel overwhelmed by sensory stress and emotional changes in their daily lives. Recognizing their triggers can help them manage these feelings and create a sense of safety. Using sensory tools and strategies allows them to participate in activities without becoming overwhelmed.

  ## Highlights
  In my experience, there is a misconception that autistic children grow into ‘less autistic’ adults. I believe this stems from our ability, as autistic adults, to adapt our behaviour to ‘stand out’ less, and to ‘fit in’ more. We learn how to hide our differences and hide our overwhelm. But this takes its toll on us, and can actually increase our levels of stress. [View Highlight](https://read.readwise.io/read/01j6ta5tywrynbek3nwrk4ztpf))

  Autistic people can react differently to stress than non-autistic people. Research has found that autistic children release higher amounts of the stress hormone cortisol than non-autistic children. Additionally, the levels of cortisol last longer in their bodies, even after the thing that caused the stress has gone (Spratt et al. 2012). [View Highlight](https://read.readwise.io/read/01j6tb32z54r5n39rmednd9p0d))

  What Skills Are Involved in Executive Function?
  • Planning: Recognising that a task needs to be done, and planning how to do it.
  • Organising: Getting ready for a task: Recognising what tools or skills you will need.
  • Initiation: Starting a task.
  • Flexible thinking: Seeing a task through and not giving up when faced with problems.
  • Time management: Being able to divide your time appropriately to complete all the steps of a task.
  • Finishing a task: Not giving up on a task, keeping focused and motivated until the end.
  • Evaluation: Looking back at how you did a task, evaluating how you did it, and learning from it.
  • Emotional regulation: Managing emotions throughout a task so that the task can be completed. [View Highlight](https://read.readwise.io/read/01j6tbdfg6e1wfrs92988vk3mb))

  A study published in 2015 (Bishop-Fitzpatrick et al. 2015) found that autistic adults without intellectual disability experienced substantially higher levels of stress than non-autistic adults. Not only that, but when stress levels increased, autistic adults’ social functioning went down significantly. [View Highlight](https://read.readwise.io/read/01j6tb2h8a03x46nqxsatrwcs2))

  Research has found that autistic adults have significantly more challenges with executive function skills than non-autistic adults, with one study finding that 20–30% of autistic adults had difficulty with planning, while 20% had difficulty with flexible thinking (Johnston et al. 2019). This study also found that having a higher IQ did not equate to having better executive function skills. Only 35% of autistic adults were found to have no impairment in executive function skills. [View Highlight](https://read.readwise.io/read/01j6tbg0wvc6rrxs57pnpbqpqn))

  A trigger is something that sets off your stress response. There are endless types of things that may trigger your stress response. For autistic people, a trigger could be a type of environment (e.g. a busy crowded room), a social difficulty, a sensory experience (e.g. a loud noise), a communication challenge, a demand on your organisation skills, a change in routine etc. [View Highlight](https://read.readwise.io/read/01j6tb3tpnc9cs5f76gkkm8b8b))

  There might be no real danger, but our brains and bodies acts like there is. When we are stressed, our bodies experience changes that may include dizziness, a racing heartbeat, high blood pressure, breathing fast, and sweating (World Health Organization 2008). [View Highlight](https://read.readwise.io/read/01j6tb4xc2qpbh3z0gvpt8958g))

  Triggers can cause you to feel anxious or overwhelmed, angry or frightened, unsafe or under attack. Sometimes individual triggers may not cause an immediate stress response, but a build-up of triggers, or too many triggers at once, can lead to fight, flight, or freeze mode, and you might experience anxiety, overwhelm, shutdown, or meltdown (see [Chapter 11](private://read/01j68en5pg3ysg1jcbwjsjmy61/#chap_11) for information on meltdowns and shutdowns). [View Highlight](https://read.readwise.io/read/01j6tb631tgjc6dyzvs1yw22kp))

  Learning what triggers your stress response is not just important to reduce the psychological impact of stress, but it also improves the physical health of your body. Putting strategies in place to deal with your triggers will help reduce the damaging effect of chronic stress on your body. Over-exposure to the stress hormone cortisol from chronic stress can increase the risk of anxiety, depression, headaches, muscle pain, problems with digestion, heart disease, sleep disturbance, difficulty maintaining a healthy weight, and impaired memory and concentration (Mayo Clinic 2021). [View Highlight](https://read.readwise.io/read/01j6tb9cyhtard039hqes709t7))

  The Five Steps to Managing Triggers
  1. The Detective Habit: Identifying your triggers.
  2. Coping Strategies: Learn to manage your triggers.
  3. Rationing: Spread out your triggers.
  4. Recovery: Plan your recovery time between triggers, and after triggers.
  5. Quick Calm Strategies: These are strategies to help you calm down quickly. As developing immediate calming strategies is a huge topic, this will be dealt with in the next chapter. [View Highlight](https://read.readwise.io/read/01j6tbn89zmyj8vdd2tvcqq327))

  Executive function is the ability to get things done. It is the ability to organise yourself, and carry tasks through from beginning to end. Our daily lives are full of tasks, and thus we rely on our executive function skills to do everything from getting dressed to leaving the house on time, from working to preparing meals etc. [View Highlight](https://read.readwise.io/read/01j6tbar3qva0233pbzz8xpgv2))

  In order to start identifying what my triggers are, I began to develop my ‘detective habit’. This is a habit of reflecting on how I felt and behaved in a scenario, so I could learn to identify my triggers. [View Highlight](https://read.readwise.io/read/01j6tbp0fjq1fvf5hxd3z6p5g1))

  The detective habit is about looking back at a scenario that I found hard, analysing it with non-judgemental eyes, and giving thought and consideration to what could have caused the stress. Once I identify the triggers, I then make plans to support myself when exposed to the identified triggers. [View Highlight](https://read.readwise.io/read/01j6tbq246p82d1yr80dj96dwx))

  How to Use the Detective Habit ... What happened?
  • What did I feel? Did I feel stressed, scared, out of control, angry etc.?
  • Was there anything in the environment that could have been a trigger? Was there a sensory stressor? ... Did the environment mean there was too much information to take in at once? Did the environment create challenges for any of my executive function skills? ... • At what point did I start to feel a stress response? Was it when someone started talking to me? Was it when someone tried to get eye contact? Was it when I walked into a shop? Was it when the environment changed? Was it at the point of transitioning from one task to another? ... Were my basic needs met before I encountered the trigger? By basic needs, I mean hunger, thirst, sleep, body temperature, and physical comfort. ... • What were my strengths in the situation, i.e. what did I manage well? Which of my strengths could I use in similar scenarios in future?
  • What would have helped me to feel more comfortable, or avoid becoming stressed and/or overwhelmed?
  • What coping strategies could I use if that situation happens again, or if I’m exposed to the same trigger or triggers?

  The DSM-5 (Diagnostic and Statistical Manual, 5th edition) is the American Psychiatric Association’s guide to mental illness and disorders, including diagnosing autistic people. It suggests that autistic people have rigid thinking, insist on sameness, are inflexible, and are overly ritualised. ... What the DSM-5 doesn’t explain properly, in my opinion, is that many of these diagnostic traits come out when we are stressed, but may improve when we are calm and happy.

  Every time I came up with a coping strategy, I asked myself what strength I was using to develop that strategy. [View Highlight](https://read.readwise.io/read/01j6tca09mxawkj3xcah30yy47))

  Interestingly, an autistic friend of mine lately told me about her strategy for getting the staff to turn down the music in restaurants. She taps her ear and says to the staff, ‘My hearing aid is buzzing from the music being so loud, could you please turn it down?’ It works every time. I expressed my discomfort with this as it’s a blatant lie (she has no hearing aid), and she said, ‘No, it’s not a lie, my ear is a hearing aid, in a way, and my ear hears the loud music as a horrible buzzing’. [View Highlight](https://read.readwise.io/read/01j6tcjsnfvnr1kz1906cpz5mz))

  Sometimes I’m not aware of my own triggers, or autistic differences, until someone else points them out to me. ... Validating the feelings of an autistic person is one of the best things someone else can do to support that autistic person, especially in times of stress. ... if you plan to ask others about your own triggers and traits, be prepared for some surprises, and be aware that you may find some observations upsetting.

  When I first began to identify my triggers, my first thought was ‘Now I know what to avoid’. But I soon realised that I would become agoraphobic if I tried to live a life avoiding all my triggers. I also wouldn’t be able to experience so many things that bring me joy. [View Highlight](https://read.readwise.io/read/01j6wyjkm7shc41zxzk5c6xzev))

  I therefore realised that I cannot shut all triggers out of my life; instead I need to learn to deal with them. Taking control of my triggers means taking care of myself while still living a full life. This involves planning and preparing myself to cope with triggers. [View Highlight](https://read.readwise.io/read/01j6wyprn8vttk71kp619rt10n))

  One of the ways I take control of my triggers is by rationing them out. This means being careful that I don’t plan too many triggering events or activities close together. By spreading triggers out, I give myself time to recover after each one, and time to prepare and plan for the next one. [View Highlight](https://read.readwise.io/read/01j6wyr4pg3m4n08ysqth3tgz7))

  The world is full of triggers, and dealing with them takes energy, mental planning, and work. I don’t have infinite energy to cope with triggers; I need time to rest and refuel my energy levels. I therefore pre-emptively plan time for myself to rest or decompress during and after social situations, or any situation that I know will require a lot of my coping strategies. [View Highlight](https://read.readwise.io/read/01j6wz0zc2hkz1z4417922tkks))

  KEY POINTS
  ◊ Triggers are things that set off a stress response in our brains, and make our body feel the need to fight, flight, or freeze.
  ◊ Autistic people can get overwhelmed or stressed from exposure to their triggers.
  ◊ Every autistic person has different triggers, so it’s important to get to know your own.
  ◊ The detective habit is a method of reflection that can help identify one’s triggers, and then create strength-based coping strategies.
  ◊ Other people can be helpful in identifying your triggers, but take caution that the person you ask is sensitive and uncritical.
  ◊ Autistic people can react differently to triggers at different times. If your basic needs are not met, or if you are stressed, you are more likely to react strongly to a trigger.
  ◊ Rationing out your triggers helps avoid triggers building up and becoming overwhelming.
  ◊ Planning time to rest after a build-up of triggers is really important, as is having a few techniques to calm yourself when out and about. [View Highlight](https://read.readwise.io/read/01j6wz69za3httx5ksj1zz0hnq))

raw_content:
  # Looking After Your Autistic Self

  ![rw-book-cover](https://readwise-assets.s3.amazonaws.com/static/images/article4.6bc1851654a0.png)

  ## Metadata
  - Author: [[Niamh Garvey]]
  - Full Title: Looking After Your Autistic Self
  - Category: #books
  > [!tldr]
  > Autistic people often feel overwhelmed by sensory stress and emotional changes in their daily lives. Recognizing their triggers can help them manage these feelings and create a sense of safety. Using sensory tools and strategies allows them to participate in activities without becoming overwhelmed.

  ## Highlights
  In my experience, there is a misconception that autistic children grow into ‘less autistic’ adults. I believe this stems from our ability, as autistic adults, to adapt our behaviour to ‘stand out’ less, and to ‘fit in’ more. We learn how to hide our differences and hide our overwhelm. But this takes its toll on us, and can actually increase our levels of stress. [View Highlight](https://read.readwise.io/read/01j6ta5tywrynbek3nwrk4ztpf))

  Autistic people can react differently to stress than non-autistic people. Research has found that autistic children release higher amounts of the stress hormone cortisol than non-autistic children. Additionally, the levels of cortisol last longer in their bodies, even after the thing that caused the stress has gone (Spratt et al. 2012). [View Highlight](https://read.readwise.io/read/01j6tb32z54r5n39rmednd9p0d))

  What Skills Are Involved in Executive Function?
  • Planning: Recognising that a task needs to be done, and planning how to do it.
  • Organising: Getting ready for a task: Recognising what tools or skills you will need.
  • Initiation: Starting a task.
  • Flexible thinking: Seeing a task through and not giving up when faced with problems.
  • Time management: Being able to divide your time appropriately to complete all the steps of a task.
  • Finishing a task: Not giving up on a task, keeping focused and motivated until the end.
  • Evaluation: Looking back at how you did a task, evaluating how you did it, and learning from it.
  • Emotional regulation: Managing emotions throughout a task so that the task can be completed. [View Highlight](https://read.readwise.io/read/01j6tbdfg6e1wfrs92988vk3mb))

  A study published in 2015 (Bishop-Fitzpatrick et al. 2015) found that autistic adults without intellectual disability experienced substantially higher levels of stress than non-autistic adults. Not only that, but when stress levels increased, autistic adults’ social functioning went down significantly. [View Highlight](https://read.readwise.io/read/01j6tb2h8a03x46nqxsatrwcs2))

  Research has found that autistic adults have significantly more challenges with executive function skills than non-autistic adults, with one study finding that 20–30% of autistic adults had difficulty with planning, while 20% had difficulty with flexible thinking (Johnston et al. 2019). This study also found that having a higher IQ did not equate to having better executive function skills. Only 35% of autistic adults were found to have no impairment in executive function skills. [View Highlight](https://read.readwise.io/read/01j6tbg0wvc6rrxs57pnpbqpqn))

  A trigger is something that sets off your stress response. There are endless types of things that may trigger your stress response. For autistic people, a trigger could be a type of environment (e.g. a busy crowded room), a social difficulty, a sensory experience (e.g. a loud noise), a communication challenge, a demand on your organisation skills, a change in routine etc. [View Highlight](https://read.readwise.io/read/01j6tb3tpnc9cs5f76gkkm8b8b))

  There might be no real danger, but our brains and bodies acts like there is. When we are stressed, our bodies experience changes that may include dizziness, a racing heartbeat, high blood pressure, breathing fast, and sweating (World Health Organization 2008). [View Highlight](https://read.readwise.io/read/01j6tb4xc2qpbh3z0gvpt8958g))

  Triggers can cause you to feel anxious or overwhelmed, angry or frightened, unsafe or under attack. Sometimes individual triggers may not cause an immediate stress response, but a build-up of triggers, or too many triggers at once, can lead to fight, flight, or freeze mode, and you might experience anxiety, overwhelm, shutdown, or meltdown (see [Chapter 11](private://read/01j68en5pg3ysg1jcbwjsjmy61/#chap_11) for information on meltdowns and shutdowns). [View Highlight](https://read.readwise.io/read/01j6tb631tgjc6dyzvs1yw22kp))

  Learning what triggers your stress response is not just important to reduce the psychological impact of stress, but it also improves the physical health of your body. Putting strategies in place to deal with your triggers will help reduce the damaging effect of chronic stress on your body. Over-exposure to the stress hormone cortisol from chronic stress can increase the risk of anxiety, depression, headaches, muscle pain, problems with digestion, heart disease, sleep disturbance, difficulty maintaining a healthy weight, and impaired memory and concentration (Mayo Clinic 2021). [View Highlight](https://read.readwise.io/read/01j6tb9cyhtard039hqes709t7))

  The Five Steps to Managing Triggers
  1. The Detective Habit: Identifying your triggers.
  2. Coping Strategies: Learn to manage your triggers.
  3. Rationing: Spread out your triggers.
  4. Recovery: Plan your recovery time between triggers, and after triggers.
  5. Quick Calm Strategies: These are strategies to help you calm down quickly. As developing immediate calming strategies is a huge topic, this will be dealt with in the next chapter. [View Highlight](https://read.readwise.io/read/01j6tbn89zmyj8vdd2tvcqq327))

  Executive function is the ability to get things done. It is the ability to organise yourself, and carry tasks through from beginning to end. Our daily lives are full of tasks, and thus we rely on our executive function skills to do everything from getting dressed to leaving the house on time, from working to preparing meals etc. [View Highlight](https://read.readwise.io/read/01j6tbar3qva0233pbzz8xpgv2))

  In order to start identifying what my triggers are, I began to develop my ‘detective habit’. This is a habit of reflecting on how I felt and behaved in a scenario, so I could learn to identify my triggers. [View Highlight](https://read.readwise.io/read/01j6tbp0fjq1fvf5hxd3z6p5g1))

  The detective habit is about looking back at a scenario that I found hard, analysing it with non-judgemental eyes, and giving thought and consideration to what could have caused the stress. Once I identify the triggers, I then make plans to support myself when exposed to the identified triggers. [View Highlight](https://read.readwise.io/read/01j6tbq246p82d1yr80dj96dwx))

  How to Use the Detective Habit ... What happened?
  • What did I feel? Did I feel stressed, scared, out of control, angry etc.?
  • Was there anything in the environment that could have been a trigger? Was there a sensory stressor? ... Did the environment mean there was too much information to take in at once? Did the environment create challenges for any of my executive function skills? ... • At what point did I start to feel a stress response? Was it when someone started talking to me? Was it when someone tried to get eye contact? Was it when I walked into a shop? Was it when the environment changed? Was it at the point of transitioning from one task to another? ... Were my basic needs met before I encountered the trigger? By basic needs, I mean hunger, thirst, sleep, body temperature, and physical comfort. ... • What were my strengths in the situation, i.e. what did I manage well? Which of my strengths could I use in similar scenarios in future?
  • What would have helped me to feel more comfortable, or avoid becoming stressed and/or overwhelmed?
  • What coping strategies could I use if that situation happens again, or if I’m exposed to the same trigger or triggers?

  The DSM-5 (Diagnostic and Statistical Manual, 5th edition) is the American Psychiatric Association’s guide to mental illness and disorders, including diagnosing autistic people. It suggests that autistic people have rigid thinking, insist on sameness, are inflexible, and are overly ritualised. ... What the DSM-5 doesn’t explain properly, in my opinion, is that many of these diagnostic traits come out when we are stressed, but may improve when we are calm and happy.

  Every time I came up with a coping strategy, I asked myself what strength I was using to develop that strategy. [View Highlight](https://read.readwise.io/read/01j6tca09mxawkj3xcah30yy47))

  Interestingly, an autistic friend of mine lately told me about her strategy for getting the staff to turn down the music in restaurants. She taps her ear and says to the staff, ‘My hearing aid is buzzing from the music being so loud, could you please turn it down?’ It works every time. I expressed my discomfort with this as it’s a blatant lie (she has no hearing aid), and she said, ‘No, it’s not a lie, my ear is a hearing aid, in a way, and my ear hears the loud music as a horrible buzzing’. [View Highlight](https://read.readwise.io/read/01j6tcjsnfvnr1kz1906cpz5mz))

  Sometimes I’m not aware of my own triggers, or autistic differences, until someone else points them out to me. ... Validating the feelings of an autistic person is one of the best things someone else can do to support that autistic person, especially in times of stress. ... if you plan to ask others about your own triggers and traits, be prepared for some surprises, and be aware that you may find some observations upsetting.

  When I first began to identify my triggers, my first thought was ‘Now I know what to avoid’. But I soon realised that I would become agoraphobic if I tried to live a life avoiding all my triggers. I also wouldn’t be able to experience so many things that bring me joy. [View Highlight](https://read.readwise.io/read/01j6wyjkm7shc41zxzk5c6xzev))

  I therefore realised that I cannot shut all triggers out of my life; instead I need to learn to deal with them. Taking control of my triggers means taking care of myself while still living a full life. This involves planning and preparing myself to cope with triggers. [View Highlight](https://read.readwise.io/read/01j6wyprn8vttk71kp619rt10n))

  One of the ways I take control of my triggers is by rationing them out. This means being careful that I don’t plan too many triggering events or activities close together. By spreading triggers out, I give myself time to recover after each one, and time to prepare and plan for the next one. [View Highlight](https://read.readwise.io/read/01j6wyr4pg3m4n08ysqth3tgz7))

  The world is full of triggers, and dealing with them takes energy, mental planning, and work. I don’t have infinite energy to cope with triggers; I need time to rest and refuel my energy levels. I therefore pre-emptively plan time for myself to rest or decompress during and after social situations, or any situation that I know will require a lot of my coping strategies. [View Highlight](https://read.readwise.io/read/01j6wz0zc2hkz1z4417922tkks))

  KEY POINTS
  ◊ Triggers are things that set off a stress response in our brains, and make our body feel the need to fight, flight, or freeze.
  ◊ Autistic people can get overwhelmed or stressed from exposure to their triggers.
  ◊ Every autistic person has different triggers, so it’s important to get to know your own.
  ◊ The detective habit is a method of reflection that can help identify one’s triggers, and then create strength-based coping strategies.
  ◊ Other people can be helpful in identifying your triggers, but take caution that the person you ask is sensitive and uncritical.
  ◊ Autistic people can react differently to triggers at different times. If your basic needs are not met, or if you are stressed, you are more likely to react strongly to a trigger.
  ◊ Rationing out your triggers helps avoid triggers building up and becoming overwhelming.
  ◊ Planning time to rest after a build-up of triggers is really important, as is having a few techniques to calm yourself when out and about. [View Highlight](https://read.readwise.io/read/01j6wz69za3httx5ksj1zz0hnq))


path: Readwise/Making a Blog With Rust.md
sortable_path: ReadwiseMaking a Blog With Rust.md
title: Making a Blog With Rust
lead: ![rw-book-cover](https://readwise-assets.s3.amazonaws.com/static/images/article3.5c705a01b476.png)
checksum: 36e6123acfe607792575c05dadbea65a8c9e668b67daec950e307d6cb0efd24e
created: 2024-09-12 14:56:45.878767072+00:00
modified: 2024-09-12 14:29:22.21184189+00:00
metadata: {}
body:
  ![rw-book-cover](https://readwise-assets.s3.amazonaws.com/static/images/article3.5c705a01b476.png)

  ## Metadata
  - Author: [[mckayla.blog]]
  - Full Title: Making a Blog With Rust
  - Category: #articles
  - URL: https://mckayla.blog/posts/making-a-blog-with-rust.html
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=Making%20a%20Blog%20With%20Rust
  > [!tldr]
  > The author created a personal blog using Rust, aiming for an easy writing experience and control over the site’s generation. They chose Rust for its simplicity and productivity, despite its reputation for being complex. The blog's framework, called Pocky, allows publishing posts easily through Markdown and Git without extra fuss.

  ## Highlights
  I'm a hacker to my core. I love to poke at things, tear things apart, and shuffle around the parts as I put them back together. [View Highlight](https://read.readwise.io/read/01j6ax5r2tem9q9dx3ctw86mj1))

raw_content:
  # Making a Blog With Rust

  ![rw-book-cover](https://readwise-assets.s3.amazonaws.com/static/images/article3.5c705a01b476.png)

  ## Metadata
  - Author: [[mckayla.blog]]
  - Full Title: Making a Blog With Rust
  - Category: #articles
  - URL: https://mckayla.blog/posts/making-a-blog-with-rust.html
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=Making%20a%20Blog%20With%20Rust
  > [!tldr]
  > The author created a personal blog using Rust, aiming for an easy writing experience and control over the site’s generation. They chose Rust for its simplicity and productivity, despite its reputation for being complex. The blog's framework, called Pocky, allows publishing posts easily through Markdown and Git without extra fuss.

  ## Highlights
  I'm a hacker to my core. I love to poke at things, tear things apart, and shuffle around the parts as I put them back together. [View Highlight](https://read.readwise.io/read/01j6ax5r2tem9q9dx3ctw86mj1))


path: Readwise/On finishing things.md
sortable_path: ReadwiseOn finishing things.md
title: On finishing things
lead: ![rw-book-cover](https://readwise-assets.s3.amazonaws.com/static/images/article1.be68295a7e40.png)
checksum: 056e9890d2fe8f4af27b5bf9900acc78fa8c9f4280bb5d1a6297fd4739f7801d
created: 2024-09-12 14:56:45.885621159+00:00
modified: 2024-09-12 14:29:22.21184189+00:00
metadata: {}
body:
  ![rw-book-cover](https://readwise-assets.s3.amazonaws.com/static/images/article1.be68295a7e40.png)

  ## Metadata
  - Author: [[alexreichert.com]]
  - Full Title: On finishing things
  - Category: #articles
  - URL: https://www.alexreichert.com/blog/finishing
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=On%20finishing%20things

  > [!note]
  > **Background:** The intent is to develop the ability to consistently complete projects in a timely manner while overcoming obstacles related to accountability, clarity of goals, and the fear of sharing work.
  > - [ ] 📝 **Create a project specification document for each new project to clarify goals and outline necessary tasks.**
  > - [ ] ⏳ **Set a deadline for project completion, ideally within 2 to 4 weeks, to establish a concrete finish line.**
  > - [ ] 🌐 Develop a public projects page to share specs, demos, and retrospectives, including unfinished projects, to foster a sense of accountability.
  > - [ ] 🎯 Regularly review and adjust project goals to ensure they are clear and measurable, reducing procrastination.
  > - [ ] 🔄 Share work with peers or a community for feedback to overcome the fear of sharing and validate project usefulness.
  > [!tldr]
  > Finishing projects can be really challenging, as it's often unclear when something is truly complete. Sharing work publicly can help overcome this difficulty and offer personal growth, accountability, and potential connections. To improve, setting clear goals and deadlines can make it easier to push through to the finish line.

  ## Highlights
  This begs the question: why is it important to share your work with the world?
  First, because there's practically no downside, and very, very high potential upside. [View Highlight](https://read.readwise.io/read/01j68aj6hyksvsfzm62xr7y5k7)) [[favorite]] 

  because it's weirdly therapeutic. In the same way that journaling can alleviate anxiety by externalizing it, writing publicly encourages you to process your thoughts more rigorously, and launching an app forces you to find out if your idea has legs or not. [View Highlight](https://read.readwise.io/read/01j68akfqnw95egtaczyadh2z8)) [[productivity]] 

  First of all, more often than not, the end goal is neither clear nor concrete. It's not obvious where the "finish line" even is. When this is the case, it's easy to procrastinate by nitpicking the design, adding little flourishes, or using "perfectionism" as an excuse. [View Highlight](https://read.readwise.io/read/01j68anqkv399fr50q8qhehvgm)) [[favorite]] [[productivity]] 

  I think there are two strategies that would help a lot: 1) writing a spec (i.e. a plan) upfront, and 2) timeboxing the project by giving myself a deadline. [View Highlight](https://read.readwise.io/read/01j68aq1fbhqx79hp9mnvn39n1)) [[productivity]] [[favorite]] 

  I've started setting up a [projects page](https://www.alexreichert.com/projects), where I plan to share the specs, demos, and retrospectives of my personal projects. Even for the "unfinished" ones, sharing them here gives me a small sense of closure. [View Highlight](https://read.readwise.io/read/01j68ath2r2az2v2hwzc6y7jxt))

raw_content:
  # On finishing things

  ![rw-book-cover](https://readwise-assets.s3.amazonaws.com/static/images/article1.be68295a7e40.png)

  ## Metadata
  - Author: [[alexreichert.com]]
  - Full Title: On finishing things
  - Category: #articles
  - URL: https://www.alexreichert.com/blog/finishing
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=On%20finishing%20things

  > [!note]
  > **Background:** The intent is to develop the ability to consistently complete projects in a timely manner while overcoming obstacles related to accountability, clarity of goals, and the fear of sharing work.
  > - [ ] 📝 **Create a project specification document for each new project to clarify goals and outline necessary tasks.**
  > - [ ] ⏳ **Set a deadline for project completion, ideally within 2 to 4 weeks, to establish a concrete finish line.**
  > - [ ] 🌐 Develop a public projects page to share specs, demos, and retrospectives, including unfinished projects, to foster a sense of accountability.
  > - [ ] 🎯 Regularly review and adjust project goals to ensure they are clear and measurable, reducing procrastination.
  > - [ ] 🔄 Share work with peers or a community for feedback to overcome the fear of sharing and validate project usefulness.
  > [!tldr]
  > Finishing projects can be really challenging, as it's often unclear when something is truly complete. Sharing work publicly can help overcome this difficulty and offer personal growth, accountability, and potential connections. To improve, setting clear goals and deadlines can make it easier to push through to the finish line.

  ## Highlights
  This begs the question: why is it important to share your work with the world?
  First, because there's practically no downside, and very, very high potential upside. [View Highlight](https://read.readwise.io/read/01j68aj6hyksvsfzm62xr7y5k7)) [[favorite]] 

  because it's weirdly therapeutic. In the same way that journaling can alleviate anxiety by externalizing it, writing publicly encourages you to process your thoughts more rigorously, and launching an app forces you to find out if your idea has legs or not. [View Highlight](https://read.readwise.io/read/01j68akfqnw95egtaczyadh2z8)) [[productivity]] 

  First of all, more often than not, the end goal is neither clear nor concrete. It's not obvious where the "finish line" even is. When this is the case, it's easy to procrastinate by nitpicking the design, adding little flourishes, or using "perfectionism" as an excuse. [View Highlight](https://read.readwise.io/read/01j68anqkv399fr50q8qhehvgm)) [[favorite]] [[productivity]] 

  I think there are two strategies that would help a lot: 1) writing a spec (i.e. a plan) upfront, and 2) timeboxing the project by giving myself a deadline. [View Highlight](https://read.readwise.io/read/01j68aq1fbhqx79hp9mnvn39n1)) [[productivity]] [[favorite]] 

  I've started setting up a [projects page](https://www.alexreichert.com/projects), where I plan to share the specs, demos, and retrospectives of my personal projects. Even for the "unfinished" ones, sharing them here gives me a small sense of closure. [View Highlight](https://read.readwise.io/read/01j68ath2r2az2v2hwzc6y7jxt))


path: Readwise/Own Your Content on Social Media Using the IndieWeb.md
sortable_path: ReadwiseOwn Your Content on Social Media Using the IndieWeb.md
title: Own Your Content on Social Media Using the IndieWeb
lead: ![rw-book-cover](https://i.ytimg.com/vi/X3SrZuH00GQ/maxresdefault.jpg)
checksum: e2cc448dc0ea3e46e6ffc9f52dcae1d63a1c5e65a4b4580938d5d88cb7e89900
created: 2024-09-12 14:56:45.902871614+00:00
modified: 2024-09-12 14:29:22.21184189+00:00
metadata: {}
body:
  ![rw-book-cover](https://i.ytimg.com/vi/X3SrZuH00GQ/maxresdefault.jpg)

  ## Metadata
  - Author: [[Jamstack TV]]
  - Full Title: Own Your Content on Social Media Using the IndieWeb
  - Category: #articles
  - Document Tags: [[dev]] [[indie-web]] [[selfhosted]] 
  - URL: https://www.youtube.com/watch?v=X3SrZuH00GQ
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=Own%20Your%20Content%20on%20Social%20Media%20Using%20the%20IndieWeb
  > [!tldr]
  > The video discusses how to take control of your content on social media by using your own website. It emphasizes the importance of owning your data so you can manage it on your own terms, rather than relying solely on social media platforms. By creating personal sites, you can archive and share your content while maintaining ownership and creative control.

  ## Highlights
  here a couple of my favorite ones that include some indie web stuff max bulk Mattias OTT Jeremy Keith Charlie Owen Erin Pirozhki and Paul Paul Robert Lloyd I've really done a nice job with their sites [View Highlight](https://read.readwise.io/read/01j55sdfykg3xfaj3ehnwj2rf4)) [[design]]

raw_content:
  # Own Your Content on Social Media Using the IndieWeb

  ![rw-book-cover](https://i.ytimg.com/vi/X3SrZuH00GQ/maxresdefault.jpg)

  ## Metadata
  - Author: [[Jamstack TV]]
  - Full Title: Own Your Content on Social Media Using the IndieWeb
  - Category: #articles
  - Document Tags: [[dev]] [[indie-web]] [[selfhosted]] 
  - URL: https://www.youtube.com/watch?v=X3SrZuH00GQ
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=Own%20Your%20Content%20on%20Social%20Media%20Using%20the%20IndieWeb
  > [!tldr]
  > The video discusses how to take control of your content on social media by using your own website. It emphasizes the importance of owning your data so you can manage it on your own terms, rather than relying solely on social media platforms. By creating personal sites, you can archive and share your content while maintaining ownership and creative control.

  ## Highlights
  here a couple of my favorite ones that include some indie web stuff max bulk Mattias OTT Jeremy Keith Charlie Owen Erin Pirozhki and Paul Paul Robert Lloyd I've really done a nice job with their sites [View Highlight](https://read.readwise.io/read/01j55sdfykg3xfaj3ehnwj2rf4)) [[design]] 


path: Readwise/PARA Method and Zettelkasten What’s The Difference.md
sortable_path: ReadwisePARA Method and Zettelkasten What’s The Difference.md
title: PARA Method and Zettelkasten: What’s The Difference?
checksum: b3d29a128bbede792fc200163c028626943837012eea89e45c727a3bc639340d
created: 2024-09-12 14:56:45.916065903+00:00
modified: 2024-09-12 14:29:22.21284182+00:00
metadata: {}
lead:
  ![rw-book-cover](https://rdl.ink/render/https%3A%2F%2Fmattgiaro.com%2Fpara-method-and-zettelkasten%2F)

body:
  ![rw-book-cover](https://rdl.ink/render/https%3A%2F%2Fmattgiaro.com%2Fpara-method-and-zettelkasten%2F)

  ## Metadata
  - Author: [[mattgiaro]]
  - Full Title: PARA Method and Zettelkasten: What’s The Difference?
  - Category: #articles
  - Document Tags: [[notetaking]] [[productivity]] 
  - URL: https://mattgiaro.com/para-method-and-zettelkasten/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=PARA%20Method%20and%20Zettelkasten%3A%20What%E2%80%99s%20The%20Difference%3F
  > [!tldr]
  > The PARA method organizes digital information into Projects, Areas, Resources, and Archive, focusing on actionability. In contrast, Zettelkasten is a note-taking method that emphasizes linking ideas without a strict structure to foster new insights. While both methods can be used together, they serve different purposes and should not be confused.

  ## Highlights
  PARA is an acronym for Projects, Areas, Resources, and Archive. 
  It’s a way of organizing all digital information. 
  Re-read this sentence again. [View Highlight](https://read.readwise.io/read/01j6mjrgpc2gnjjwzpzyr7ndgc))

  the Zettelkasten is a note-taking method. it focuses on links between notes and how to think in associations.
  When dissecting and studying the Zettelkasten method, you see that all notes are contained within ONE slip box, and are linked between them.
  There is absolutely no structure. [View Highlight](https://read.readwise.io/read/01j6mjs40nymdj2zsnjk4rwm42))

  **Zettelkasten is a note-taking method designed to spart new insights. PARA is not. It’s a way of organizing files and information for a specific project.** [View Highlight](https://read.readwise.io/read/01j6mjsp1f97yprmm81h7c6nn7))

  So people who look to implement the zettelkasten methodology using PARA didn’t get the point of both methodologies. [View Highlight](https://read.readwise.io/read/01j6mjxkq0a5z7m3w967zj3xxz))

raw_content:
  # PARA Method and Zettelkasten: What’s The Difference?

  ![rw-book-cover](https://rdl.ink/render/https%3A%2F%2Fmattgiaro.com%2Fpara-method-and-zettelkasten%2F)

  ## Metadata
  - Author: [[mattgiaro]]
  - Full Title: PARA Method and Zettelkasten: What’s The Difference?
  - Category: #articles
  - Document Tags: [[notetaking]] [[productivity]] 
  - URL: https://mattgiaro.com/para-method-and-zettelkasten/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=PARA%20Method%20and%20Zettelkasten%3A%20What%E2%80%99s%20The%20Difference%3F
  > [!tldr]
  > The PARA method organizes digital information into Projects, Areas, Resources, and Archive, focusing on actionability. In contrast, Zettelkasten is a note-taking method that emphasizes linking ideas without a strict structure to foster new insights. While both methods can be used together, they serve different purposes and should not be confused.

  ## Highlights
  PARA is an acronym for Projects, Areas, Resources, and Archive. 
  It’s a way of organizing all digital information. 
  Re-read this sentence again. [View Highlight](https://read.readwise.io/read/01j6mjrgpc2gnjjwzpzyr7ndgc))

  the Zettelkasten is a note-taking method. it focuses on links between notes and how to think in associations.
  When dissecting and studying the Zettelkasten method, you see that all notes are contained within ONE slip box, and are linked between them.
  There is absolutely no structure. [View Highlight](https://read.readwise.io/read/01j6mjs40nymdj2zsnjk4rwm42))

  **Zettelkasten is a note-taking method designed to spart new insights. PARA is not. It’s a way of organizing files and information for a specific project.** [View Highlight](https://read.readwise.io/read/01j6mjsp1f97yprmm81h7c6nn7))

  So people who look to implement the zettelkasten methodology using PARA didn’t get the point of both methodologies. [View Highlight](https://read.readwise.io/read/01j6mjxkq0a5z7m3w967zj3xxz))


path: Readwise/Project People vs. Area People Are You Running a Sprint Or a Marathon.md
sortable_path: ReadwiseProject People vs. Area People Are You Running a Sprint Or a Marathon.md
title: Project People vs. Area People: Are You Running a Sprint Or a Marathon?
checksum: ef4ca0385892d8f2058a37d15b9d120cbff159f13c3cd05e14fb4cc588351e81
created: 2024-09-12 14:56:45.926844723+00:00
modified: 2024-09-12 14:29:22.21284182+00:00
metadata: {}
lead:
  ![rw-book-cover](https://i0.wp.com/fortelabs.com/wp-content/uploads/2020/02/cropped-cropped-Icon_Red-1.png?fit=192%2C192&ssl=1)

body:
  ![rw-book-cover](https://i0.wp.com/fortelabs.com/wp-content/uploads/2020/02/cropped-cropped-Icon_Red-1.png?fit=192%2C192&ssl=1)

  ## Metadata
  - Author: [[Tiago Forte]]
  - Full Title: Project People vs. Area People: Are You Running a Sprint Or a Marathon?
  - Category: #articles
  - Document Tags: [[productivity]] 
  - URL: https://fortelabs.com/blog/project-people-vs-area-people-are-you-running-a-sprint-or-a-marathon/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=Project%20People%20vs.%20Area%20People%3A%20Are%20You%20Running%20a%20Sprint%20Or%20a%20Marathon%3F

  > [!note]
  > Goal: The intent is to enhance productivity by effectively organizing tasks into projects and areas of responsibility, enabling better focus and balance in work and life.
  > - [ ] 🗓️ **Establish a daily routine** to create structure and consistency in work and personal life.
  > - [ ] 🎯 **Set specific deadlines** for tasks to promote urgency and focus on achieving desired outcomes.
  > - [ ] 🌳 Take regular breaks and engage in nature to recharge and maintain mental clarity.
  > - [ ] 📝 **Maintain a journal** to reflect on thoughts and anxieties, aiding in self-awareness and emotional balance.
  > - [ ] 🌟 **Evaluate the balance** between project-focused work and ongoing areas of responsibility to ensure sustainable productivity.
  > - [ ] 🚀 **Break larger projects into smaller tasks** with milestones to track progress and maintain motivation. 
  > - [ ] 🧘‍♂️ Integrate a mindful practice, such as meditation, to cultivate awareness and reduce stress.
  > [!tldr]
  > The author, Tiago Forte, suggests organizing work into two categories: projects, which are short-term tasks with specific outcomes, and areas of responsibility, which are ongoing aspects of life that require maintenance. He emphasizes the importance of balancing both, as projects provide excitement and achievement, while areas foster peace and fulfillment. By understanding and managing these categories effectively, individuals can improve their productivity and well-being.

  ## Highlights
  A **project** is any endeavor that has:
  1) A desired *outcome* that will enable you to mark it “complete”
  2) A *deadline* or timeframe by which you’d like it done. [View Highlight](https://read.readwise.io/read/01j5p8akz4t1csffcf6ps9rj56))

  An **area of responsibility** has 1) a *standard* to be maintained that 2) is continuous over time. [View Highlight](https://read.readwise.io/read/01j5p8aqhhnkykx9aw3f5jk4an))

  Areas are crucial to your wellbeing, security, fulfillment, and peace of mind. Whereas projects have outcomes, areas have *standards* *of performance* that you want to maintain. [View Highlight](https://read.readwise.io/read/01j5p8ex5f82m4zjkzte47n5f1))

  Once you view your life through the lens of discrete projects and continuous areas, it becomes clear that both of these structures are essential. Projects bring you excitement, achievement, and recognition, whereas areas bring you balance, peace, and meaning. [View Highlight](https://read.readwise.io/read/01j5p8h36864xvfwed8kx1wbv3))

  Every project requires a “heavy lift” to some degree, but those heavy lifts are far more powerful and effective (and brief) when you’ve already been collecting material in a “slow burn.” __It is only when heavy lifts become a chronic, default way of approaching everything that they lead to burnout and exhaustion__. [View Highlight](https://read.readwise.io/read/01j5p8mmxvbt84hm0zh4ecky0p))

  “Project people” are good at sprints. Give them a clear goal and a path to get there, and they will ferociously chase after it with everything they have. [View Highlight](https://read.readwise.io/read/01j5p8nq7mx2gcg1bkbebk7jb7))

  But the weakness of sprinters is that once they’ve reached their goal, they will often have trouble keeping it going. They will often change direction and run after the next goal, leaving their past achievements to wither. Sprinters are prone to starting many things and getting obsessed for a short time, before moving abruptly to something else. [View Highlight](https://read.readwise.io/read/01j5p8ph0pee8fazkr6jcn9e52))

  “Area people” excel at marathons. Send them on a long journey with some supplies and they will doggedly keep at it for as long as it takes. [View Highlight](https://read.readwise.io/read/01j5p8pnmq54457hb2a9fwkyby))

  The weakness of marathoners is that they often have trouble generating a lot of power on short notice. When an opportunity opens up that requires quick, decisive action, they’ll have difficulty changing direction and drawing down their reserves to chase it down [View Highlight](https://read.readwise.io/read/01j5p8q8wmf4j78vppmcst8fe4))

  Projects require you to be **laser-focused,** to ferociously drive toward an outcome, **to overcome or circumvent obstacles**, and to **ignore distractions along the way**. Areas, on the other hand, require **mindfulness, balance, and reflection**. This is the realm of **habits, rituals, and intentional communities**. Whereas projects tend to be more black and white, areas require more introspection and self-awareness because it takes more nuance to decide if you are meeting your standard in a given area. [View Highlight](https://read.readwise.io/read/01j5p8zgbrdb2x0dc8v9aba3pc))

  If you are a “Project person” and want to improve your ability to sustain your areas, here are some techniques you can try:
  • Adopt a morning or evening routine
  • Set limits to your working hours
  • Take regular breaks and walks in nature
  • Journal and write out your internal anxieties and thoughts
  • Create a meditation habit (or other mindful habit)
  • Set your intentions each day, week, month, or year
  • Evaluate your schedule for a balance of intense work and healthy, mindful activities [View Highlight](https://read.readwise.io/read/01j5p94wamdw1k24avskcd8vd2)) [[review/plan]] [[favorite]] 
  > [!note]
  > Implement

  We all know the importance of work-life balance and healthy boundaries, but once in a while we have to let all that go and focus every ounce of energy we have on a singular outcome. This is, by definition, unsustainable. But that is why it’s so important to move fast and break through barriers as quickly as possible: __the faster you reach your objective, the sooner you can stop to rest and recover__. [View Highlight](https://read.readwise.io/read/01j5p9bh2gd06bbgmgyp9tn7ef))

  Some seasons of our lives are all about the journey, but others are more like sprints.
  *Source: [The Universe Will Now Explode for Your Pleasure](https://us1.campaign-archive.com/?u=78cbbb7f2882629a5157fa593&id=c4f01c7ab5) by Venkatesh Rao* [View Highlight](https://read.readwise.io/read/01j5p9fyk6bjw8gg0v5n09q5yx))

raw_content:
  # Project People vs. Area People: Are You Running a Sprint Or a Marathon?

  ![rw-book-cover](https://i0.wp.com/fortelabs.com/wp-content/uploads/2020/02/cropped-cropped-Icon_Red-1.png?fit=192%2C192&ssl=1)

  ## Metadata
  - Author: [[Tiago Forte]]
  - Full Title: Project People vs. Area People: Are You Running a Sprint Or a Marathon?
  - Category: #articles
  - Document Tags: [[productivity]] 
  - URL: https://fortelabs.com/blog/project-people-vs-area-people-are-you-running-a-sprint-or-a-marathon/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=Project%20People%20vs.%20Area%20People%3A%20Are%20You%20Running%20a%20Sprint%20Or%20a%20Marathon%3F

  > [!note]
  > Goal: The intent is to enhance productivity by effectively organizing tasks into projects and areas of responsibility, enabling better focus and balance in work and life.
  > - [ ] 🗓️ **Establish a daily routine** to create structure and consistency in work and personal life.
  > - [ ] 🎯 **Set specific deadlines** for tasks to promote urgency and focus on achieving desired outcomes.
  > - [ ] 🌳 Take regular breaks and engage in nature to recharge and maintain mental clarity.
  > - [ ] 📝 **Maintain a journal** to reflect on thoughts and anxieties, aiding in self-awareness and emotional balance.
  > - [ ] 🌟 **Evaluate the balance** between project-focused work and ongoing areas of responsibility to ensure sustainable productivity.
  > - [ ] 🚀 **Break larger projects into smaller tasks** with milestones to track progress and maintain motivation. 
  > - [ ] 🧘‍♂️ Integrate a mindful practice, such as meditation, to cultivate awareness and reduce stress.
  > [!tldr]
  > The author, Tiago Forte, suggests organizing work into two categories: projects, which are short-term tasks with specific outcomes, and areas of responsibility, which are ongoing aspects of life that require maintenance. He emphasizes the importance of balancing both, as projects provide excitement and achievement, while areas foster peace and fulfillment. By understanding and managing these categories effectively, individuals can improve their productivity and well-being.

  ## Highlights
  A **project** is any endeavor that has:
  1) A desired *outcome* that will enable you to mark it “complete”
  2) A *deadline* or timeframe by which you’d like it done. [View Highlight](https://read.readwise.io/read/01j5p8akz4t1csffcf6ps9rj56))

  An **area of responsibility** has 1) a *standard* to be maintained that 2) is continuous over time. [View Highlight](https://read.readwise.io/read/01j5p8aqhhnkykx9aw3f5jk4an))

  Areas are crucial to your wellbeing, security, fulfillment, and peace of mind. Whereas projects have outcomes, areas have *standards* *of performance* that you want to maintain. [View Highlight](https://read.readwise.io/read/01j5p8ex5f82m4zjkzte47n5f1))

  Once you view your life through the lens of discrete projects and continuous areas, it becomes clear that both of these structures are essential. Projects bring you excitement, achievement, and recognition, whereas areas bring you balance, peace, and meaning. [View Highlight](https://read.readwise.io/read/01j5p8h36864xvfwed8kx1wbv3))

  Every project requires a “heavy lift” to some degree, but those heavy lifts are far more powerful and effective (and brief) when you’ve already been collecting material in a “slow burn.” __It is only when heavy lifts become a chronic, default way of approaching everything that they lead to burnout and exhaustion__. [View Highlight](https://read.readwise.io/read/01j5p8mmxvbt84hm0zh4ecky0p))

  “Project people” are good at sprints. Give them a clear goal and a path to get there, and they will ferociously chase after it with everything they have. [View Highlight](https://read.readwise.io/read/01j5p8nq7mx2gcg1bkbebk7jb7))

  But the weakness of sprinters is that once they’ve reached their goal, they will often have trouble keeping it going. They will often change direction and run after the next goal, leaving their past achievements to wither. Sprinters are prone to starting many things and getting obsessed for a short time, before moving abruptly to something else. [View Highlight](https://read.readwise.io/read/01j5p8ph0pee8fazkr6jcn9e52))

  “Area people” excel at marathons. Send them on a long journey with some supplies and they will doggedly keep at it for as long as it takes. [View Highlight](https://read.readwise.io/read/01j5p8pnmq54457hb2a9fwkyby))

  The weakness of marathoners is that they often have trouble generating a lot of power on short notice. When an opportunity opens up that requires quick, decisive action, they’ll have difficulty changing direction and drawing down their reserves to chase it down [View Highlight](https://read.readwise.io/read/01j5p8q8wmf4j78vppmcst8fe4))

  Projects require you to be **laser-focused,** to ferociously drive toward an outcome, **to overcome or circumvent obstacles**, and to **ignore distractions along the way**. Areas, on the other hand, require **mindfulness, balance, and reflection**. This is the realm of **habits, rituals, and intentional communities**. Whereas projects tend to be more black and white, areas require more introspection and self-awareness because it takes more nuance to decide if you are meeting your standard in a given area. [View Highlight](https://read.readwise.io/read/01j5p8zgbrdb2x0dc8v9aba3pc))

  If you are a “Project person” and want to improve your ability to sustain your areas, here are some techniques you can try:
  • Adopt a morning or evening routine
  • Set limits to your working hours
  • Take regular breaks and walks in nature
  • Journal and write out your internal anxieties and thoughts
  • Create a meditation habit (or other mindful habit)
  • Set your intentions each day, week, month, or year
  • Evaluate your schedule for a balance of intense work and healthy, mindful activities [View Highlight](https://read.readwise.io/read/01j5p94wamdw1k24avskcd8vd2)) [[review/plan]] [[favorite]] 
  > [!note]
  > Implement

  We all know the importance of work-life balance and healthy boundaries, but once in a while we have to let all that go and focus every ounce of energy we have on a singular outcome. This is, by definition, unsustainable. But that is why it’s so important to move fast and break through barriers as quickly as possible: __the faster you reach your objective, the sooner you can stop to rest and recover__. [View Highlight](https://read.readwise.io/read/01j5p9bh2gd06bbgmgyp9tn7ef))

  Some seasons of our lives are all about the journey, but others are more like sprints.
  *Source: [The Universe Will Now Explode for Your Pleasure](https://us1.campaign-archive.com/?u=78cbbb7f2882629a5157fa593&id=c4f01c7ab5) by Venkatesh Rao* [View Highlight](https://read.readwise.io/read/01j5p9fyk6bjw8gg0v5n09q5yx))


path: Readwise/Reader Frequently Asked Questions.md
sortable_path: ReadwiseReader Frequently Asked Questions.md
title: Reader: Frequently Asked Questions
lead: ![rw-book-cover](https://s3.amazonaws.com/readwiseio/2022/12/reader-logo.jpg)
checksum: 48890bd8f92508d21d43157234c6bf4dcea2b675ed622adbb342fa88b0ecd6d0
created: 2024-09-12 14:56:45.939782939+00:00
modified: 2024-09-12 14:29:22.21284182+00:00
metadata: {}
body:
  ![rw-book-cover](https://s3.amazonaws.com/readwiseio/2022/12/reader-logo.jpg)

  ## Metadata
  - Author: [[Daniel Doyon]]
  - Full Title: Reader: Frequently Asked Questions
  - Category: #articles
  - URL: https://blog.readwise.io/p/f8c0f71c-fe5f-4025-af57-f9f65c53fed7/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=Reader%3A%20Frequently%20Asked%20Questions
  > [!tldr]
  > You can save articles to Reader using the browser extension or the mobile app, and highlights sync with Readwise. Reader allows you to highlight text and images while reading on the web, and all highlights are accessible in the app and synced to your note-taking apps. To manage your articles, you can move them to your Library and create custom views based on your preferences.

  ## Highlights
  ![](https://readwise-community.ghost.io/content/images/2024/01/CleanShot-2024-01-27-at-16.50.32@2x.png) [View Highlight](https://read.readwise.io/read/01j53426gkd6xdb1bkxftyezfd))

raw_content:
  # Reader: Frequently Asked Questions

  ![rw-book-cover](https://s3.amazonaws.com/readwiseio/2022/12/reader-logo.jpg)

  ## Metadata
  - Author: [[Daniel Doyon]]
  - Full Title: Reader: Frequently Asked Questions
  - Category: #articles
  - URL: https://blog.readwise.io/p/f8c0f71c-fe5f-4025-af57-f9f65c53fed7/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=Reader%3A%20Frequently%20Asked%20Questions
  > [!tldr]
  > You can save articles to Reader using the browser extension or the mobile app, and highlights sync with Readwise. Reader allows you to highlight text and images while reading on the web, and all highlights are accessible in the app and synced to your note-taking apps. To manage your articles, you can move them to your Library and create custom views based on your preferences.

  ## Highlights
  ![](https://readwise-community.ghost.io/content/images/2024/01/CleanShot-2024-01-27-at-16.50.32@2x.png) [View Highlight](https://read.readwise.io/read/01j53426gkd6xdb1bkxftyezfd))


path: Readwise/SIMPLIFY Your Python Code With the Facade Pattern.md
sortable_path: ReadwiseSIMPLIFY Your Python Code With the Facade Pattern.md
title: SIMPLIFY Your Python Code With the Facade Pattern
lead: ![rw-book-cover](https://i.ytimg.com/vi/tCzmda1VCUQ/maxresdefault.jpg)
checksum: fa3400cf95edb7b24bfe3f0267f753dd1a8d27d9c4e37e3418fbe02fa9929a57
created: 2024-09-12 14:56:45.946653187+00:00
modified: 2024-09-12 14:29:22.21284182+00:00
metadata: {}
body:
  ![rw-book-cover](https://i.ytimg.com/vi/tCzmda1VCUQ/maxresdefault.jpg)

  ## Metadata
  - Author: [[Isaac Harris-Holt]]
  - Full Title: SIMPLIFY Your Python Code With the Facade Pattern
  - Category: #articles
  - Document Tags: [[dev]] [[dev/design-patterns]] 
  - URL: https://www.youtube.com/watch?v=tCzmda1VCUQ
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=SIMPLIFY%20Your%20Python%20Code%20With%20the%20Facade%20Pattern
  > [!tldr]
  > The facade pattern is a design approach that simplifies complex code by providing a user-friendly interface. It helps developers hide underlying complexities, making it easier to work with libraries and frameworks. By using this pattern, you can create cleaner and more efficient Python code.

  ## Highlights
  You could think of the facade pattern almost like a wrapper around one or many complex subsystems making them **easier to interact with**. [View Highlight](https://read.readwise.io/read/01j5qry2jq70c28ebz4zdeqe8z)) [[dev]]

raw_content:
  # SIMPLIFY Your Python Code With the Facade Pattern

  ![rw-book-cover](https://i.ytimg.com/vi/tCzmda1VCUQ/maxresdefault.jpg)

  ## Metadata
  - Author: [[Isaac Harris-Holt]]
  - Full Title: SIMPLIFY Your Python Code With the Facade Pattern
  - Category: #articles
  - Document Tags: [[dev]] [[dev/design-patterns]] 
  - URL: https://www.youtube.com/watch?v=tCzmda1VCUQ
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=SIMPLIFY%20Your%20Python%20Code%20With%20the%20Facade%20Pattern
  > [!tldr]
  > The facade pattern is a design approach that simplifies complex code by providing a user-friendly interface. It helps developers hide underlying complexities, making it easier to work with libraries and frameworks. By using this pattern, you can create cleaner and more efficient Python code.

  ## Highlights
  You could think of the facade pattern almost like a wrapper around one or many complex subsystems making them **easier to interact with**. [View Highlight](https://read.readwise.io/read/01j5qry2jq70c28ebz4zdeqe8z)) [[dev]] 


path: Readwise/SQLite is not a toy database.md
sortable_path: ReadwiseSQLite is not a toy database.md
title: SQLite is not a toy database
lead: ![rw-book-cover](https://antonz.org/assets/2021/sqlite-is-not-a-toy-database.png)
checksum: 7db0491f9d5641b159484a0348bec20fca7595e8b2ebb9fb5f1487cb28b96303
created: 2024-09-12 14:56:45.961257351+00:00
modified: 2024-09-12 14:29:22.21284182+00:00
metadata: {}
body:
  ![rw-book-cover](https://antonz.org/assets/2021/sqlite-is-not-a-toy-database.png)

  ## Metadata
  - Author: [[Anton Zhiyanov]]
  - Full Title: SQLite is not a toy database
  - Category: #articles
  - Document Tags: [[dev]] [[dev/sql]] 
  - URL: https://antonz.org/sqlite-is-not-a-toy-database/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=SQLite%20is%20not%20a%20toy%20database

  > [!note]
  > **Background:** Utilize SQLite for a wider array of applications beyond merely functioning as a basic data storage solution.
  > ### Key Takeaways:
  > 📊 **Leverage Advanced Indexing Capabilities:** 
  > SQLite supports partial indexes and indexes on expressions, enabling the creation of efficient indexes on generated columns. This functionality allows users to transform SQLite into a document database by storing raw JSON and indexing on extracted JSON fields.
  > 📝 **Utilize Built-in Statistical Functions:** 
  > SQLite makes it easy to perform descriptive statistics, such as calculating mean, median, and percentiles, with minimal setup. By loading the sqlite3-stats extension, users can execute complex statistical queries in a straightforward manner, enhancing data analysis capabilities.
  > 📁 **Seamless JSON Data Handling:** 
  > SQLite excels at analyzing and transforming JSON data, allowing users to directly query JSON files as if they were regular tables. This feature simplifies data manipulation, making it convenient for users to extract and analyze JSON information efficiently.
  > [!tldr]
  > SQLite is highlighted as a versatile tool suitable for developers, data analysts, and various professionals due to its widespread use, serverless nature, and ease of integration. The database console feature is particularly praised for its data analysis capabilities and simplicity, offering powerful functions like CSV import, SQL query support, and various export options. Additionally, SQLite's compatibility with data exploration tools and its efficiency in processing large datasets make it a robust choice for those working with JSON, Common Table Expressions, set operations, generated columns, and mathematical statistics. The document also touches on SQLite's performance capabilities, handling hundreds of millions of records efficiently, with insert speeds improving when connecting CSV files as virtual tables.

  ## Highlights
  The console is a killer SQLite feature for data analysis: more powerful than Excel and more simple than `pandas`. One can import CSV data with a single command, the table is created automatically:
  > .import --csv city.csv city
  > select count(*) from city;
  1117 [View Highlight](https://read.readwise.io/read/01j6hehc1ap6yxya4135j8z7d1))

  Data could be exported as SQL, CSV, JSON, even Markdown and HTML. Takes just a couple of commands:
  .mode json
  .output city.json
  select city, foundation_year, timezone from city limit 10;
  .shell cat city.json [View Highlight](https://read.readwise.io/read/01j6hekgzt1yg4dse4xt6kqec4))

  There is nothing more convenient than SQLite for analyzing and transforming JSON. You can select data directly from a file as if it were a regular table. Or import data into the table and select from there.
  select
  json_extract(value, '$.iso.code') as code,
  json_extract(value, '$.iso.number') as num,
  json_extract(value, '$.name') as name,
  json_extract(value, '$.units.major.name') as unit
  from
  json_each(readfile('currency.sample.json'))
  ; [View Highlight](https://read.readwise.io/read/01j6henb91d2vd1d43x4yj6e5w))

  Descriptive statistics? Easy: mean, median, percentiles, standard deviation, you name it. You’ll have to load an extension, but it’s also a single command (and a single file).
  .load sqlite3-stats
  select
  count(*) as book_count,
  cast(avg(num_pages) as integer) as mean,
  cast(median(num_pages) as integer) as median,
  mode(num_pages) as mode,
  percentile_90(num_pages) as p90,
  percentile_95(num_pages) as p95,
  percentile_99(num_pages) as p99
  from books; [View Highlight](https://read.readwise.io/read/01j6hev7qj7qyszxhwft53r1w9))

  There is a popular opinion among developers that SQLite is not suitable for the web, because it doesn’t support concurrent access. ... the write-ahead log mode ... there can be as many concurrent readers as you want. There can be only one concurrent writer, but often one is enough.

  SQLite supports partial indexes and indexes on expressions, as ‘big’ DBMSs do. You can build indexes on generated columns and even turn SQLite into a document database. Just store raw JSON and build indexes on `json_extract()`-ed columns [View Highlight](https://read.readwise.io/read/01j6hf4c5250yyf6871sphxenm))

raw_content:
  # SQLite is not a toy database

  ![rw-book-cover](https://antonz.org/assets/2021/sqlite-is-not-a-toy-database.png)

  ## Metadata
  - Author: [[Anton Zhiyanov]]
  - Full Title: SQLite is not a toy database
  - Category: #articles
  - Document Tags: [[dev]] [[dev/sql]] 
  - URL: https://antonz.org/sqlite-is-not-a-toy-database/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=SQLite%20is%20not%20a%20toy%20database

  > [!note]
  > **Background:** Utilize SQLite for a wider array of applications beyond merely functioning as a basic data storage solution.
  > ### Key Takeaways:
  > 📊 **Leverage Advanced Indexing Capabilities:** 
  > SQLite supports partial indexes and indexes on expressions, enabling the creation of efficient indexes on generated columns. This functionality allows users to transform SQLite into a document database by storing raw JSON and indexing on extracted JSON fields.
  > 📝 **Utilize Built-in Statistical Functions:** 
  > SQLite makes it easy to perform descriptive statistics, such as calculating mean, median, and percentiles, with minimal setup. By loading the sqlite3-stats extension, users can execute complex statistical queries in a straightforward manner, enhancing data analysis capabilities.
  > 📁 **Seamless JSON Data Handling:** 
  > SQLite excels at analyzing and transforming JSON data, allowing users to directly query JSON files as if they were regular tables. This feature simplifies data manipulation, making it convenient for users to extract and analyze JSON information efficiently.
  > [!tldr]
  > SQLite is highlighted as a versatile tool suitable for developers, data analysts, and various professionals due to its widespread use, serverless nature, and ease of integration. The database console feature is particularly praised for its data analysis capabilities and simplicity, offering powerful functions like CSV import, SQL query support, and various export options. Additionally, SQLite's compatibility with data exploration tools and its efficiency in processing large datasets make it a robust choice for those working with JSON, Common Table Expressions, set operations, generated columns, and mathematical statistics. The document also touches on SQLite's performance capabilities, handling hundreds of millions of records efficiently, with insert speeds improving when connecting CSV files as virtual tables.

  ## Highlights
  The console is a killer SQLite feature for data analysis: more powerful than Excel and more simple than `pandas`. One can import CSV data with a single command, the table is created automatically:
  > .import --csv city.csv city
  > select count(*) from city;
  1117 [View Highlight](https://read.readwise.io/read/01j6hehc1ap6yxya4135j8z7d1))

  Data could be exported as SQL, CSV, JSON, even Markdown and HTML. Takes just a couple of commands:
  .mode json
  .output city.json
  select city, foundation_year, timezone from city limit 10;
  .shell cat city.json [View Highlight](https://read.readwise.io/read/01j6hekgzt1yg4dse4xt6kqec4))

  There is nothing more convenient than SQLite for analyzing and transforming JSON. You can select data directly from a file as if it were a regular table. Or import data into the table and select from there.
  select
  json_extract(value, '$.iso.code') as code,
  json_extract(value, '$.iso.number') as num,
  json_extract(value, '$.name') as name,
  json_extract(value, '$.units.major.name') as unit
  from
  json_each(readfile('currency.sample.json'))
  ; [View Highlight](https://read.readwise.io/read/01j6henb91d2vd1d43x4yj6e5w))

  Descriptive statistics? Easy: mean, median, percentiles, standard deviation, you name it. You’ll have to load an extension, but it’s also a single command (and a single file).
  .load sqlite3-stats
  select
  count(*) as book_count,
  cast(avg(num_pages) as integer) as mean,
  cast(median(num_pages) as integer) as median,
  mode(num_pages) as mode,
  percentile_90(num_pages) as p90,
  percentile_95(num_pages) as p95,
  percentile_99(num_pages) as p99
  from books; [View Highlight](https://read.readwise.io/read/01j6hev7qj7qyszxhwft53r1w9))

  There is a popular opinion among developers that SQLite is not suitable for the web, because it doesn’t support concurrent access. ... the write-ahead log mode ... there can be as many concurrent readers as you want. There can be only one concurrent writer, but often one is enough.

  SQLite supports partial indexes and indexes on expressions, as ‘big’ DBMSs do. You can build indexes on generated columns and even turn SQLite into a document database. Just store raw JSON and build indexes on `json_extract()`-ed columns [View Highlight](https://read.readwise.io/read/01j6hf4c5250yyf6871sphxenm))


path: Readwise/Site Design Standards.md
sortable_path: ReadwiseSite Design Standards.md
title: Site Design Standards
lead: ![rw-book-cover](https://seirdy.one/favicon512.63ee1da7ff5f42b764febf0cf7a793b5.png)
checksum: b72147d03def5426d7bd81dc52016a0ba32c730b3a028e917081f02a30c945b8
created: 2024-09-12 14:56:45.974847487+00:00
modified: 2024-09-12 14:29:22.21284182+00:00
metadata: {}
body:
  ![rw-book-cover](https://seirdy.one/favicon512.63ee1da7ff5f42b764febf0cf7a793b5.png)

  ## Metadata
  - Author: [[Rohan Kumar]]
  - Full Title: Site Design Standards
  - Category: #articles
  - Document Tags: [[dev]] [[indie-web]] 
  - URL: https://seirdy.one/meta/site-design/#static-indieweb
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=Site%20Design%20Standards
  > [!tldr]
  > The website seirdy.one focuses on high accessibility standards, adhering to most Web Content Accessibility Guidelines (WCAG) while continuously improving link purpose clarity. It is compatible with various browsers, including older ones, and uses semantic, well-structured markup to enhance content accessibility. The site also incorporates IndieWeb features, allowing interactions like Webmentions, while planning future enhancements.

  ## Highlights
  I only set custom colors in response to the `prefers-color-scheme: dark` media query. These custom colors have an Advanced Perceptual Contrast Algorithm (APCA) lightness contrast close to the ideal value of 90. I use autism- and overstimulation-friendly colors: the yellow links have low saturation to reduce harshness. [View Highlight](https://read.readwise.io/read/01j6q0y08pr5az55kbqx1za16z)) [[design]] 
  > [!note]
  > Be carefull with over stimulation design

  I run axe-core, the IBM Equal Access Accessibility Checker, the Nu HTML Checker (local build, latest commit), and webhint on every page in my sitemap. After filtering out false-positives (and reporting them upstream), I receive no errors. I repeat this run with every change to my Hugo templates and stylesheets. [View Highlight](https://read.readwise.io/read/01j6q1k4ha86p96pnhz2m9szcp)) [[dev/accesibility]] 

  This website conforms to Web standards. Each build runs `xmllint` to catch syntax errors. Every few commits, I run a local build of [the Nu HTML Checker](https://github.com/validator/validator) and [html proofer](https://github.com/gjtorikian/html-proofer), and see no errors. I do [filter out false Nu positives](https://git.sr.ht/~seirdy/seirdy.one/tree/master/item/linter-configs/vnu_filter.jq), and I [report and fix false-positives](https://github.com/w3c/css-validator/issues?q=author%3ASeirdy) when possible. [View Highlight](https://read.readwise.io/read/01j6q1vgnhs9b2rqh77xxw9y5v)) [[dev/web-dev]] 

  [The IndieMark page](https://indieweb.org/IndieMark) lists all the ways you can “IndieWeb-ify” your site. [View Highlight](https://read.readwise.io/read/01j6q2cs5dpg7dc3qb130600n8)) [[indie-web]] 

  IndieWeb features implemented
  I’ve implemented several features from IndieMark:
  • IndieAuth compatibility, using the external [IndieLogin.com service](https://indielogin.com/).
  • Microformats: representative `h-card`, in-text `h-card` and `h-cite` when referencing works, `h-feed`.
  • Sending and receiving Webmentions. I receive Webmentions with [webmentiond](https://github.com/zerok/webmentiond), and send them from my own computer using [Pushl](https://github.com/PlaidWeb/Pushl/).
  • Displaying Webmentions: I render backlinks, IndieWeb “likes” (not silo likes), and comments below posts. I model their appearance after Tumblr’s display of interactions.
  • Backfeeding content from silos: I’m only interested in backfilled content containing discussion, not “reactions” or “likes”. Powered by [Bridgy](https://brid.gy/). [View Highlight](https://read.readwise.io/read/01j6q2a4dcrmq9eegvrsgz1hja)) [[indie-web]] 

  IndieWeb sites need not implement *every* IndieWeb standard. Progressive enhancement and graceful degradation let me implement interesting features, and skip less interesting ones. Skipped features include: [View Highlight](https://read.readwise.io/read/01j6q2j1gyftbdbr59hsggy34t))

raw_content:
  # Site Design Standards

  ![rw-book-cover](https://seirdy.one/favicon512.63ee1da7ff5f42b764febf0cf7a793b5.png)

  ## Metadata
  - Author: [[Rohan Kumar]]
  - Full Title: Site Design Standards
  - Category: #articles
  - Document Tags: [[dev]] [[indie-web]] 
  - URL: https://seirdy.one/meta/site-design/#static-indieweb
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=Site%20Design%20Standards
  > [!tldr]
  > The website seirdy.one focuses on high accessibility standards, adhering to most Web Content Accessibility Guidelines (WCAG) while continuously improving link purpose clarity. It is compatible with various browsers, including older ones, and uses semantic, well-structured markup to enhance content accessibility. The site also incorporates IndieWeb features, allowing interactions like Webmentions, while planning future enhancements.

  ## Highlights
  I only set custom colors in response to the `prefers-color-scheme: dark` media query. These custom colors have an Advanced Perceptual Contrast Algorithm (APCA) lightness contrast close to the ideal value of 90. I use autism- and overstimulation-friendly colors: the yellow links have low saturation to reduce harshness. [View Highlight](https://read.readwise.io/read/01j6q0y08pr5az55kbqx1za16z)) [[design]] 
  > [!note]
  > Be carefull with over stimulation design

  I run axe-core, the IBM Equal Access Accessibility Checker, the Nu HTML Checker (local build, latest commit), and webhint on every page in my sitemap. After filtering out false-positives (and reporting them upstream), I receive no errors. I repeat this run with every change to my Hugo templates and stylesheets. [View Highlight](https://read.readwise.io/read/01j6q1k4ha86p96pnhz2m9szcp)) [[dev/accesibility]] 

  This website conforms to Web standards. Each build runs `xmllint` to catch syntax errors. Every few commits, I run a local build of [the Nu HTML Checker](https://github.com/validator/validator) and [html proofer](https://github.com/gjtorikian/html-proofer), and see no errors. I do [filter out false Nu positives](https://git.sr.ht/~seirdy/seirdy.one/tree/master/item/linter-configs/vnu_filter.jq), and I [report and fix false-positives](https://github.com/w3c/css-validator/issues?q=author%3ASeirdy) when possible. [View Highlight](https://read.readwise.io/read/01j6q1vgnhs9b2rqh77xxw9y5v)) [[dev/web-dev]] 

  [The IndieMark page](https://indieweb.org/IndieMark) lists all the ways you can “IndieWeb-ify” your site. [View Highlight](https://read.readwise.io/read/01j6q2cs5dpg7dc3qb130600n8)) [[indie-web]] 

  IndieWeb features implemented
  I’ve implemented several features from IndieMark:
  • IndieAuth compatibility, using the external [IndieLogin.com service](https://indielogin.com/).
  • Microformats: representative `h-card`, in-text `h-card` and `h-cite` when referencing works, `h-feed`.
  • Sending and receiving Webmentions. I receive Webmentions with [webmentiond](https://github.com/zerok/webmentiond), and send them from my own computer using [Pushl](https://github.com/PlaidWeb/Pushl/).
  • Displaying Webmentions: I render backlinks, IndieWeb “likes” (not silo likes), and comments below posts. I model their appearance after Tumblr’s display of interactions.
  • Backfeeding content from silos: I’m only interested in backfilled content containing discussion, not “reactions” or “likes”. Powered by [Bridgy](https://brid.gy/). [View Highlight](https://read.readwise.io/read/01j6q2a4dcrmq9eegvrsgz1hja)) [[indie-web]] 

  IndieWeb sites need not implement *every* IndieWeb standard. Progressive enhancement and graceful degradation let me implement interesting features, and skip less interesting ones. Skipped features include: [View Highlight](https://read.readwise.io/read/01j6q2j1gyftbdbr59hsggy34t))


path: Readwise/Software Deployment Models – Explained for Beginners.md
sortable_path: ReadwiseSoftware Deployment Models – Explained for Beginners.md
title: Software Deployment Models – Explained for Beginners
checksum: 24d4831b81b9c4ed4c793bafce738871ec62ad407d63a780742ea9a28e94c75d
created: 2024-09-12 14:56:45.998040242+00:00
modified: 2024-09-12 14:29:22.21284182+00:00
metadata: {}
lead:
  ![rw-book-cover](https://www.freecodecamp.org/news/content/images/2024/01/pexels-joshua-135018--1-.jpg)

body:
  ![rw-book-cover](https://www.freecodecamp.org/news/content/images/2024/01/pexels-joshua-135018--1-.jpg)

  ## Metadata
  - Author: [[freeCodeCamp.org]]
  - Full Title: Software Deployment Models – Explained for Beginners
  - Category: #articles
  - Document Tags: [[dev]] 
  - URL: https://www.freecodecamp.org/news/software-deployment-models/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=Software%20Deployment%20Models%20%E2%80%93%20Explained%20for%20Beginners
  > [!tldr]
  > Software deployment models refer to the different ways in which software code can be deployed. This article explores various deployment models, including client/server computing, thin and fat client architectures, microservices, and Application Programming Interfaces (APIs). Client/server computing involves splitting computing tasks between clients and servers, with clients making requests and servers providing services or resources. Thin client architectures place most of the processing on the server side, while fat client architectures handle both the presentation layer and application logic on the client machine. Microservices involve dividing applications into smaller, independent services that communicate over a network, while APIs enable communication and integration between different software applications. The article also briefly touches on web applications, single page applications (SPAs), and different types of APIs, such as open APIs and REST APIs.

  ## Highlights
  Client/server computing architectures are a type of distributed computing architecture in which computing tasks are split between two types of machines: clients and servers. [View Highlight](https://read.readwise.io/read/01j59dqe78wf56va1yz6gb3df0))

  The client/server architecture provides several advantages, including:
  • Scalability, meaning that servers can be added or removed from the network as demand changes. This allows the system to scale up or down as needed without having to make changes on the clients.
  • Centralization, which means that by centralizing resources on servers, it is easier to manage and control access to those resources, and to enforce security policies. [View Highlight](https://read.readwise.io/read/01j59dqwmj1saw3r59nt5qy2v8))

  In a *thin* client architecture, the client machine is responsible for only the presentation layer, while the application logic and data processing are handled on the server side. __Thin clients typically have limited processing power and memory, and rely heavily on network connectivity to function__. [View Highlight](https://read.readwise.io/read/01j59drt66pd1rvgzhqdk6jvae))

  On the other hand, in a *fat* client architecture, the client machine is responsible for both the presentation layer and the application logic. The client machine typically has more processing power and memory, and can execute code and process data locally. [View Highlight](https://read.readwise.io/read/01j59dtzv6kms42sp02x7p6rz6))

  Now, should you design your software as a microservices or monolith architecture? In a *monolith* architecture, the entire application is built as a single, self-contained unit. All functionality, from data access to user interface, is bundled together in one codebase and deployed as a single unit. [View Highlight](https://read.readwise.io/read/01j59dx0jgkzhxpcsrbvhmb8p5))

  Web applications are software applications that are accessed through a web browser over a network such as the Internet. The purpose of web applications is to provide users with a convenient and accessible way to perform various tasks and access services over the web. [View Highlight](https://read.readwise.io/read/01j59dzd3j41bgbampr7rqjsxd))

raw_content:
  # Software Deployment Models – Explained for Beginners

  ![rw-book-cover](https://www.freecodecamp.org/news/content/images/2024/01/pexels-joshua-135018--1-.jpg)

  ## Metadata
  - Author: [[freeCodeCamp.org]]
  - Full Title: Software Deployment Models – Explained for Beginners
  - Category: #articles
  - Document Tags: [[dev]] 
  - URL: https://www.freecodecamp.org/news/software-deployment-models/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=Software%20Deployment%20Models%20%E2%80%93%20Explained%20for%20Beginners
  > [!tldr]
  > Software deployment models refer to the different ways in which software code can be deployed. This article explores various deployment models, including client/server computing, thin and fat client architectures, microservices, and Application Programming Interfaces (APIs). Client/server computing involves splitting computing tasks between clients and servers, with clients making requests and servers providing services or resources. Thin client architectures place most of the processing on the server side, while fat client architectures handle both the presentation layer and application logic on the client machine. Microservices involve dividing applications into smaller, independent services that communicate over a network, while APIs enable communication and integration between different software applications. The article also briefly touches on web applications, single page applications (SPAs), and different types of APIs, such as open APIs and REST APIs.

  ## Highlights
  Client/server computing architectures are a type of distributed computing architecture in which computing tasks are split between two types of machines: clients and servers. [View Highlight](https://read.readwise.io/read/01j59dqe78wf56va1yz6gb3df0))

  The client/server architecture provides several advantages, including:
  • Scalability, meaning that servers can be added or removed from the network as demand changes. This allows the system to scale up or down as needed without having to make changes on the clients.
  • Centralization, which means that by centralizing resources on servers, it is easier to manage and control access to those resources, and to enforce security policies. [View Highlight](https://read.readwise.io/read/01j59dqwmj1saw3r59nt5qy2v8))

  In a *thin* client architecture, the client machine is responsible for only the presentation layer, while the application logic and data processing are handled on the server side. __Thin clients typically have limited processing power and memory, and rely heavily on network connectivity to function__. [View Highlight](https://read.readwise.io/read/01j59drt66pd1rvgzhqdk6jvae))

  On the other hand, in a *fat* client architecture, the client machine is responsible for both the presentation layer and the application logic. The client machine typically has more processing power and memory, and can execute code and process data locally. [View Highlight](https://read.readwise.io/read/01j59dtzv6kms42sp02x7p6rz6))

  Now, should you design your software as a microservices or monolith architecture? In a *monolith* architecture, the entire application is built as a single, self-contained unit. All functionality, from data access to user interface, is bundled together in one codebase and deployed as a single unit. [View Highlight](https://read.readwise.io/read/01j59dx0jgkzhxpcsrbvhmb8p5))

  Web applications are software applications that are accessed through a web browser over a network such as the Internet. The purpose of web applications is to provide users with a convenient and accessible way to perform various tasks and access services over the web. [View Highlight](https://read.readwise.io/read/01j59dzd3j41bgbampr7rqjsxd))


path: Readwise/THE ZETTELKASTEN MANIFESTO What is a Zettelkasten.md
sortable_path: ReadwiseTHE ZETTELKASTEN MANIFESTO What is a Zettelkasten.md
title: THE ZETTELKASTEN MANIFESTO | What is a Zettelkasten?
lead: ![rw-book-cover](https://zettlr.com/storage/app/media/img/social_media_img.png)
checksum: f3f9b76befddfcb5bd236eaee3b0544ce494058c8b39d843073839279627e9b3
created: 2024-09-12 14:56:46.007976575+00:00
modified: 2024-09-12 14:29:22.21284182+00:00
metadata: {}
body:
  ![rw-book-cover](https://zettlr.com/storage/app/media/img/social_media_img.png)

  ## Metadata
  - Author: [[Zettlr]]
  - Full Title: THE ZETTELKASTEN MANIFESTO | What is a Zettelkasten?
  - Category: #articles
  - Document Tags: [[notetaking]] 
  - URL: https://www.zettlr.com/post/what-is-a-zettelkasten
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=THE%20ZETTELKASTEN%20MANIFESTO%20%7C%20What%20is%20a%20Zettelkasten%3F

  > [!note]
  > This is the definitive explanation of a Zettlelkasten
  > [!tldr]
  > Website traffic analytics show high interest in the Zettelkasten method, which is a knowledge management system. Users seek simple answers to complex problems of managing knowledge effectively. Structuring notes and self-reflection are key components of creating a personalized Zettelkasten system.

  ## Highlights
  We live in a society that likes a dead-simple approach to problems; one solution each. But a Zettelkasten evades this 21st-century mindset. A Zettelkasten is a multitude of different approaches to a common problem — the problem of knowledge management. [View Highlight](https://read.readwise.io/read/01j60nacy93812ptm2c0fh226q))

  there is not *the* Zettelkasten approach — but one for every human being living on this planet. [View Highlight](https://read.readwise.io/read/01j62awnqp75y0p29mgp8werra)) [[notetaking]] 

  It does not help to copy a workflow by a different person, because a Zettelkasten must at all costs reflect the working habits of the person using it. [View Highlight](https://read.readwise.io/read/01j62b22nehaew7g0y0g2cw3fg))

  The first thing you must respect when beginning to structure your knowledge is exactly that: a certain structure. This is what people like us can explain to you and help you with. But the second thing is where you are completely on your own: self reflection. __To manage your knowledge, you have to know how you work__. [View Highlight](https://read.readwise.io/read/01j62b418gmqzv0j2ng9wg4pw6)) [[favorite]] 

  The structure of a Zettelkasten is fairly easy described: It's a database. It is simply a place where you file your knowledge in a semi-structured way. [View Highlight](https://read.readwise.io/read/01j62hpbfbv82tkf6kq9b3ddef))

  The more important part of a Zettelkasten therefore is self reflection. You need to be constantly on the watch for how *you* work. [View Highlight](https://read.readwise.io/read/01j62hsdeyxwtxf429t43ve5rb))

  Do not listen too much to too specific advises on how to start a Zettelkasten. Just start and use the structure *you* need. And stop reading tutorials on Zettelkästen. [View Highlight](https://read.readwise.io/read/01j62hvprnrb55xhvd525v03ww))

raw_content:
  # THE ZETTELKASTEN MANIFESTO | What is a Zettelkasten?

  ![rw-book-cover](https://zettlr.com/storage/app/media/img/social_media_img.png)

  ## Metadata
  - Author: [[Zettlr]]
  - Full Title: THE ZETTELKASTEN MANIFESTO | What is a Zettelkasten?
  - Category: #articles
  - Document Tags: [[notetaking]] 
  - URL: https://www.zettlr.com/post/what-is-a-zettelkasten
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=THE%20ZETTELKASTEN%20MANIFESTO%20%7C%20What%20is%20a%20Zettelkasten%3F

  > [!note]
  > This is the definitive explanation of a Zettlelkasten
  > [!tldr]
  > Website traffic analytics show high interest in the Zettelkasten method, which is a knowledge management system. Users seek simple answers to complex problems of managing knowledge effectively. Structuring notes and self-reflection are key components of creating a personalized Zettelkasten system.

  ## Highlights
  We live in a society that likes a dead-simple approach to problems; one solution each. But a Zettelkasten evades this 21st-century mindset. A Zettelkasten is a multitude of different approaches to a common problem — the problem of knowledge management. [View Highlight](https://read.readwise.io/read/01j60nacy93812ptm2c0fh226q))

  there is not *the* Zettelkasten approach — but one for every human being living on this planet. [View Highlight](https://read.readwise.io/read/01j62awnqp75y0p29mgp8werra)) [[notetaking]] 

  It does not help to copy a workflow by a different person, because a Zettelkasten must at all costs reflect the working habits of the person using it. [View Highlight](https://read.readwise.io/read/01j62b22nehaew7g0y0g2cw3fg))

  The first thing you must respect when beginning to structure your knowledge is exactly that: a certain structure. This is what people like us can explain to you and help you with. But the second thing is where you are completely on your own: self reflection. __To manage your knowledge, you have to know how you work__. [View Highlight](https://read.readwise.io/read/01j62b418gmqzv0j2ng9wg4pw6)) [[favorite]] 

  The structure of a Zettelkasten is fairly easy described: It's a database. It is simply a place where you file your knowledge in a semi-structured way. [View Highlight](https://read.readwise.io/read/01j62hpbfbv82tkf6kq9b3ddef))

  The more important part of a Zettelkasten therefore is self reflection. You need to be constantly on the watch for how *you* work. [View Highlight](https://read.readwise.io/read/01j62hsdeyxwtxf429t43ve5rb))

  Do not listen too much to too specific advises on how to start a Zettelkasten. Just start and use the structure *you* need. And stop reading tutorials on Zettelkästen. [View Highlight](https://read.readwise.io/read/01j62hvprnrb55xhvd525v03ww))


path: Readwise/The Definitive Guide to Docker Swarm.md
sortable_path: ReadwiseThe Definitive Guide to Docker Swarm.md
title: The Definitive Guide to Docker Swarm
lead: ![rw-book-cover](https://gabrieltanner.org/blog/the-definitive-guide-to-docker-swarm.png)
checksum: 535a03ed666c4949cb5766a4b4a302df7dbb7d901280a2115844d49d5dac8e40
created: 2024-09-12 14:56:46.02425034+00:00
modified: 2024-09-12 14:29:22.21284182+00:00
metadata: {}
body:
  ![rw-book-cover](https://gabrieltanner.org/blog/the-definitive-guide-to-docker-swarm.png)

  ## Metadata
  - Author: [[Gabriel Tanner]]
  - Full Title: The Definitive Guide to Docker Swarm
  - Category: #articles
  - URL: https://gabrieltanner.org/blog/docker-swarm/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=The%20Definitive%20Guide%20to%20Docker%20Swarm
  > [!tldr]
  > This text is a guide to Docker Swarm, a tool to scale and manage Docker projects easily. Docker Swarm helps in load balancing, cluster management, and service deployment within a cluster of Docker hosts. It provides features like replicated and global services, scaling, and rolling updates for efficient container management.

  ## Highlights
  After the registry is running we can continue with pushing the local image to the registry using the **push** command.
  docker-compose push [View Highlight](https://read.readwise.io/read/01j5js3hxamp3s08ebhf5ka502))
  > [!note]
  > Se puede subir una imagen desde un compose.yml file

raw_content:
  # The Definitive Guide to Docker Swarm

  ![rw-book-cover](https://gabrieltanner.org/blog/the-definitive-guide-to-docker-swarm.png)

  ## Metadata
  - Author: [[Gabriel Tanner]]
  - Full Title: The Definitive Guide to Docker Swarm
  - Category: #articles
  - URL: https://gabrieltanner.org/blog/docker-swarm/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=The%20Definitive%20Guide%20to%20Docker%20Swarm
  > [!tldr]
  > This text is a guide to Docker Swarm, a tool to scale and manage Docker projects easily. Docker Swarm helps in load balancing, cluster management, and service deployment within a cluster of Docker hosts. It provides features like replicated and global services, scaling, and rolling updates for efficient container management.

  ## Highlights
  After the registry is running we can continue with pushing the local image to the registry using the **push** command.
  docker-compose push [View Highlight](https://read.readwise.io/read/01j5js3hxamp3s08ebhf5ka502))
  > [!note]
  > Se puede subir una imagen desde un compose.yml file


path: Readwise/The Strategy Pattern Will Make Your Python Code CLEANER.md
sortable_path: ReadwiseThe Strategy Pattern Will Make Your Python Code CLEANER.md
title: The Strategy Pattern Will Make Your Python Code CLEANER
lead: ![rw-book-cover](https://i.ytimg.com/vi/hVLb3-OE3pM/maxresdefault.jpg)
checksum: a70272b65855743057d8b250d4104e0955e7ad8a6e4bcd9ab6d0bbb6755ad180
created: 2024-09-12 14:56:46.03234999+00:00
modified: 2024-09-12 14:29:22.21284182+00:00
metadata: {}
body:
  ![rw-book-cover](https://i.ytimg.com/vi/hVLb3-OE3pM/maxresdefault.jpg)

  ## Metadata
  - Author: [[Isaac Harris-Holt]]
  - Full Title: The Strategy Pattern Will Make Your Python Code CLEANER
  - Category: #articles
  - Document Tags: [[dev]] [[dev/design-patterns]] 
  - URL: https://www.youtube.com/watch?v=hVLb3-OE3pM
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=The%20Strategy%20Pattern%20Will%20Make%20Your%20Python%20Code%20CLEANER
  > [!tldr]
  > The strategy pattern is a design method that helps organize code by separating different algorithms into distinct classes. This makes code cleaner, more modular, and easier to maintain, allowing for easy changes at runtime without extensive conditional statements. By using this pattern, developers can enhance their code's flexibility while keeping it readable and manageable.

  ## Highlights
  the strategy pattern is a design pattern that allows you to cleanly separate different algorithms and behaviors into separate classes.
  __Each algorithm implements a common interface__ so you can easily switch between them at runtime without having to modify your core code. [View Highlight](https://read.readwise.io/read/01j5qs5ace2bghpggy8trfaz6r))
  > [!note]
  > Is this kinda the same as the factory class?

  we're going to use Python's protocol typeint protocol is like an interface in other languages it allows you to define the methods an object
  should have without knowing the implementation details up front [View Highlight](https://read.readwise.io/read/01j5qsbjkgnknchvq55mj1eec6))

  you may be wondering why you might pick Python's protocol over using an abstract base
  class or ABC unlike ABC's Protocols are duct typed meaning you don't have to explicitly inherit from them in order to implement them [View Highlight](https://read.readwise.io/read/01j5qsjaf9qdk5a5d46drkv43e))

  Protocols are duct typed [View Highlight](https://read.readwise.io/read/01j5qsr9779888tpa2mp6w0438))
  > [!note]
  > In "The Strategy Pattern Will Make Your Python Code CLEANER," Isaac Harris-Holt uses the term "Protocols are duct typed" to describe how Python's protocol mechanism allows objects to be used interchangeably based solely on their method signatures, rather than requiring explicit inheritance from a protocol. This flexibility enables developers to integrate external libraries or new classes into their code without needing to modify existing structures, as long as the new objects conform to the expected method definitions. Essentially, duct typing promotes a more modular and adaptable coding style, where compliance with an interface is determined by the presence of specified methods rather than formal inheritance.

  the power of the single method interface it allows you to write modular extensible and
  flexible code it's easily testable and very readable [View Highlight](https://read.readwise.io/read/01j5qsr0gh3pvf1w3j0jtqm0ez))

  you'll see this pattern used a lot particularly in languages like go where the standard library has single method interfaces like io.writer and io.reader the truly powerful thing here is that these interfaces are used by the standard Library so if you implement a read method on your struct you can use it in standard Library functions without having to do any manual type conversions [View Highlight](https://read.readwise.io/read/01j5qswey6zs8mdgxjnv71v4gy))
  > [!note]
  > Usages

raw_content:
  # The Strategy Pattern Will Make Your Python Code CLEANER

  ![rw-book-cover](https://i.ytimg.com/vi/hVLb3-OE3pM/maxresdefault.jpg)

  ## Metadata
  - Author: [[Isaac Harris-Holt]]
  - Full Title: The Strategy Pattern Will Make Your Python Code CLEANER
  - Category: #articles
  - Document Tags: [[dev]] [[dev/design-patterns]] 
  - URL: https://www.youtube.com/watch?v=hVLb3-OE3pM
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=The%20Strategy%20Pattern%20Will%20Make%20Your%20Python%20Code%20CLEANER
  > [!tldr]
  > The strategy pattern is a design method that helps organize code by separating different algorithms into distinct classes. This makes code cleaner, more modular, and easier to maintain, allowing for easy changes at runtime without extensive conditional statements. By using this pattern, developers can enhance their code's flexibility while keeping it readable and manageable.

  ## Highlights
  the strategy pattern is a design pattern that allows you to cleanly separate different algorithms and behaviors into separate classes.
  __Each algorithm implements a common interface__ so you can easily switch between them at runtime without having to modify your core code. [View Highlight](https://read.readwise.io/read/01j5qs5ace2bghpggy8trfaz6r))
  > [!note]
  > Is this kinda the same as the factory class?

  we're going to use Python's protocol typeint protocol is like an interface in other languages it allows you to define the methods an object
  should have without knowing the implementation details up front [View Highlight](https://read.readwise.io/read/01j5qsbjkgnknchvq55mj1eec6))

  you may be wondering why you might pick Python's protocol over using an abstract base
  class or ABC unlike ABC's Protocols are duct typed meaning you don't have to explicitly inherit from them in order to implement them [View Highlight](https://read.readwise.io/read/01j5qsjaf9qdk5a5d46drkv43e))

  Protocols are duct typed [View Highlight](https://read.readwise.io/read/01j5qsr9779888tpa2mp6w0438))
  > [!note]
  > In "The Strategy Pattern Will Make Your Python Code CLEANER," Isaac Harris-Holt uses the term "Protocols are duct typed" to describe how Python's protocol mechanism allows objects to be used interchangeably based solely on their method signatures, rather than requiring explicit inheritance from a protocol. This flexibility enables developers to integrate external libraries or new classes into their code without needing to modify existing structures, as long as the new objects conform to the expected method definitions. Essentially, duct typing promotes a more modular and adaptable coding style, where compliance with an interface is determined by the presence of specified methods rather than formal inheritance.

  the power of the single method interface it allows you to write modular extensible and
  flexible code it's easily testable and very readable [View Highlight](https://read.readwise.io/read/01j5qsr0gh3pvf1w3j0jtqm0ez))

  you'll see this pattern used a lot particularly in languages like go where the standard library has single method interfaces like io.writer and io.reader the truly powerful thing here is that these interfaces are used by the standard Library so if you implement a read method on your struct you can use it in standard Library functions without having to do any manual type conversions [View Highlight](https://read.readwise.io/read/01j5qswey6zs8mdgxjnv71v4gy))
  > [!note]
  > Usages


path: Readwise/The Waiting Time Paradox, or, Why Is My Bus Always Late.md
sortable_path: ReadwiseThe Waiting Time Paradox, or, Why Is My Bus Always Late.md
title: The Waiting Time Paradox, or, Why Is My Bus Always Late?
lead: ![rw-book-cover](https://readwise-assets.s3.amazonaws.com/static/images/article4.6bc1851654a0.png)
checksum: ebc6c5cdf18673447a212d8f5f3f92409035fcef76650b67fc8693d4f7e61a31
created: 2024-09-12 14:56:46.050363585+00:00
modified: 2024-09-12 14:29:22.21284182+00:00
metadata: {}
body:
  ![rw-book-cover](https://readwise-assets.s3.amazonaws.com/static/images/article4.6bc1851654a0.png)

  ## Metadata
  - Author: [[jakevdp.github.io]]
  - Full Title: The Waiting Time Paradox, or, Why Is My Bus Always Late?
  - Category: #articles
  - URL: https://jakevdp.github.io/blog/2018/09/13/waiting-time-paradox/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=The%20Waiting%20Time%20Paradox%2C%20or%2C%20Why%20Is%20My%20Bus%20Always%20Late%3F
  > [!tldr]
  > The text discusses the waiting time paradox in the context of bus arrivals. It explains that while one might expect the average wait time for a bus that arrives every 10 minutes to be 5 minutes, under certain assumptions, the average waiting time can actually be 10 minutes. The text explores this paradox through simulations and probabilistic arguments, showing that the average waiting time aligns with the average interval between bus arrivals. It also discusses the use of Poisson processes to model bus arrival times and concludes that the waiting time paradox assumption may not hold true in real-world scenarios where bus arrival intervals are not exponentially distributed.

  ## Highlights
  Briefly, the inspection paradox arises whenever the probability of observing a quantity is related to the quantity being observed. Allen gives one example of surveying university students about the average size of their classes. Though the school may truthfully advertise an average of 30 students per class, the average class size *as experienced by students* can be (and generally will be) much larger. The reason is that there are (of course) more students in the larger classes, and so you oversample large classes when computing the average experience of students. [View Highlight](https://read.readwise.io/read/01j5vf1r4qjgrnqa3dq94f19e5))

raw_content:
  # The Waiting Time Paradox, or, Why Is My Bus Always Late?

  ![rw-book-cover](https://readwise-assets.s3.amazonaws.com/static/images/article4.6bc1851654a0.png)

  ## Metadata
  - Author: [[jakevdp.github.io]]
  - Full Title: The Waiting Time Paradox, or, Why Is My Bus Always Late?
  - Category: #articles
  - URL: https://jakevdp.github.io/blog/2018/09/13/waiting-time-paradox/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=The%20Waiting%20Time%20Paradox%2C%20or%2C%20Why%20Is%20My%20Bus%20Always%20Late%3F
  > [!tldr]
  > The text discusses the waiting time paradox in the context of bus arrivals. It explains that while one might expect the average wait time for a bus that arrives every 10 minutes to be 5 minutes, under certain assumptions, the average waiting time can actually be 10 minutes. The text explores this paradox through simulations and probabilistic arguments, showing that the average waiting time aligns with the average interval between bus arrivals. It also discusses the use of Poisson processes to model bus arrival times and concludes that the waiting time paradox assumption may not hold true in real-world scenarios where bus arrival intervals are not exponentially distributed.

  ## Highlights
  Briefly, the inspection paradox arises whenever the probability of observing a quantity is related to the quantity being observed. Allen gives one example of surveying university students about the average size of their classes. Though the school may truthfully advertise an average of 30 students per class, the average class size *as experienced by students* can be (and generally will be) much larger. The reason is that there are (of course) more students in the larger classes, and so you oversample large classes when computing the average experience of students. [View Highlight](https://read.readwise.io/read/01j5vf1r4qjgrnqa3dq94f19e5))


path: Readwise/This Week in Self-Hosted.md
sortable_path: ReadwiseThis Week in Self-Hosted.md
title: This Week in Self-Hosted
lead: ![rw-book-cover](https://selfh.st/favicon.png)
checksum: 85f6772d185c506917e80ce2741342be55af33bdfd1c56ab01d4ba4863b39489
created: 2024-09-12 14:56:46.058877577+00:00
modified: 2024-09-12 14:29:22.21284182+00:00
metadata: {}
body:
  ![rw-book-cover](https://selfh.st/favicon.png)

  ## Metadata
  - Author: [[Ethan Sholly]]
  - Full Title: This Week in Self-Hosted
  - Category: #articles
  - URL: https://selfh.st/newsletter/2024-08-23/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=This%20Week%20in%20Self-Hosted
  > [!tldr]
  > Self-hosted news, updates, launches, and a spotlight on Pocket ID - a self-hosted OIDC authentication provider

  ## Highlights
  ![](https://github.githubassets.com/assets/pinned-octocat-093da3e6fa40.svg) [View Highlight](https://read.readwise.io/read/01j6vrq67ew0b2bq6vy9efws1q))

raw_content:
  # This Week in Self-Hosted

  ![rw-book-cover](https://selfh.st/favicon.png)

  ## Metadata
  - Author: [[Ethan Sholly]]
  - Full Title: This Week in Self-Hosted
  - Category: #articles
  - URL: https://selfh.st/newsletter/2024-08-23/
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=This%20Week%20in%20Self-Hosted
  > [!tldr]
  > Self-hosted news, updates, launches, and a spotlight on Pocket ID - a self-hosted OIDC authentication provider

  ## Highlights
  ![](https://github.githubassets.com/assets/pinned-octocat-093da3e6fa40.svg) [View Highlight](https://read.readwise.io/read/01j6vrq67ew0b2bq6vy9efws1q))


path: Readwise/Writing Is Magic. It Can Change Your Life.md
sortable_path: ReadwiseWriting Is Magic. It Can Change Your Life.md
title: Writing Is Magic. It Can Change Your Life
lead: ![rw-book-cover](https://readwise-assets.s3.amazonaws.com/static/images/article0.00998d930354.png)
checksum: d613c3c369cf2242e971e57eaef29bea9a2c582d11210ed82b9eeaa27d0580a7
created: 2024-09-12 14:56:46.067835913+00:00
modified: 2024-09-12 14:29:22.21284182+00:00
metadata: {}
body:
  ![rw-book-cover](https://readwise-assets.s3.amazonaws.com/static/images/article0.00998d930354.png)

  ## Metadata
  - Author: [[omerxx@gmail.com]]
  - Full Title: Writing Is Magic. It Can Change Your Life
  - Category: #articles
  - Document Tags: [[star]] 
  - URL: https://omnivore.app/aleidk/writing-is-magic-it-can-change-your-life-18dfa8bdd0b
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=Writing%20Is%20Magic.%20It%20Can%20Change%20Your%20Life
  > [!tldr]
  > Today, I want to share a powerful skill with you. If you choose to embrace it—and there are countless ways to do so—you’ll see growth in every aspect of your life. Yes, it’s that impactful.

  ## Highlights
  “Begin with the end in mind”: Effective writing evokes emotion. Consider the feeling you want to create - excitement, amazement, or anger - and aim to engage your readers. 
  ​ [View Highlight](https://read.readwise.io/read/01j547jfjajaa9k41dtnpxsxge)) [[blog]] 

  Good stories have an **intention** and an **obstacle**. That’s it. You want something; there’s a problem; what do you do? (shock, frustration, deep thinking). Find a solution! Let’s fix the issue. 
  ​ [View Highlight](https://read.readwise.io/read/01j547jwm5swdx523nhy2n0w2z)) [[notetaking]] 

  Use “low-level” writing. Studies show that The New York Times uses 12th-grade level language. 
  Warren Buffett changed his writing style over 40 years. 
  He simplified it from a 16th-grade to a 10th-grade level. Now, he explains things more clearly. 
  If they can, you should too. Use simple language, AI tools like GPT, and apps like [Hemingway](https://click.convertkit-mail2.com/4zu4mx47q9ieh5lx3lguxh3drwv77/7qh7h8hoz8kxolfz/aHR0cHM6Ly9oZW1pbmd3YXlhcHAuY29tLw==) to help. 
  ​ [View Highlight](https://read.readwise.io/read/01j547kb2be2txj046yrh9a3pg))

  ​[Rhythm in writing](https://click.convertkit-mail2.com/4zu4mx47q9ieh5lx3lguxh3drwv77/owhkhqhronk0rduv/aHR0cHM6Ly93d3cuYmJjbWFlc3Ryby5jb20vYmxvZy9yaHl0aG0taW4td3JpdGluZw==). Words can be music. Sentences can have a flow. 
  Replace commas with periods. Control the tone. 
  Make the readers feel their heart beats, their emotion, their... soul. 
  Did it work? **Make them** ***listen*** **while they read**. 
  ​ [View Highlight](https://read.readwise.io/read/01j547m5raqmgazwydfrwfpef9)) [[blog]] [[favorite]] 

  Start by warming up. Yes, really. Take 10 minutes, pick a piece you like, and write it down, **word by word**. 
  Warm up your brain and body for writing! 
  ​ [View Highlight](https://read.readwise.io/read/01j547mrzvshcwd1jmdh92gg28))

  **Don’t perfect it**. Start with a ROUGH first draft. Then take a break. Then hard edit. 
  ​ [View Highlight](https://read.readwise.io/read/01j547n5d9btvs9q9xrzz1xvva))

  **Publish**! Whether it’s once a week or once a month, it doesn’t matter. 
  The more you practice, the better you become; the more you publish, the better you get at sharing ideas. 
  Practice storytelling. [View Highlight](https://read.readwise.io/read/01j547nethjk4bbf0prnncdsk4))

raw_content:
  # Writing Is Magic. It Can Change Your Life

  ![rw-book-cover](https://readwise-assets.s3.amazonaws.com/static/images/article0.00998d930354.png)

  ## Metadata
  - Author: [[omerxx@gmail.com]]
  - Full Title: Writing Is Magic. It Can Change Your Life
  - Category: #articles
  - Document Tags: [[star]] 
  - URL: https://omnivore.app/aleidk/writing-is-magic-it-can-change-your-life-18dfa8bdd0b
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=Writing%20Is%20Magic.%20It%20Can%20Change%20Your%20Life
  > [!tldr]
  > Today, I want to share a powerful skill with you. If you choose to embrace it—and there are countless ways to do so—you’ll see growth in every aspect of your life. Yes, it’s that impactful.

  ## Highlights
  “Begin with the end in mind”: Effective writing evokes emotion. Consider the feeling you want to create - excitement, amazement, or anger - and aim to engage your readers. 
  ​ [View Highlight](https://read.readwise.io/read/01j547jfjajaa9k41dtnpxsxge)) [[blog]] 

  Good stories have an **intention** and an **obstacle**. That’s it. You want something; there’s a problem; what do you do? (shock, frustration, deep thinking). Find a solution! Let’s fix the issue. 
  ​ [View Highlight](https://read.readwise.io/read/01j547jwm5swdx523nhy2n0w2z)) [[notetaking]] 

  Use “low-level” writing. Studies show that The New York Times uses 12th-grade level language. 
  Warren Buffett changed his writing style over 40 years. 
  He simplified it from a 16th-grade to a 10th-grade level. Now, he explains things more clearly. 
  If they can, you should too. Use simple language, AI tools like GPT, and apps like [Hemingway](https://click.convertkit-mail2.com/4zu4mx47q9ieh5lx3lguxh3drwv77/7qh7h8hoz8kxolfz/aHR0cHM6Ly9oZW1pbmd3YXlhcHAuY29tLw==) to help. 
  ​ [View Highlight](https://read.readwise.io/read/01j547kb2be2txj046yrh9a3pg))

  ​[Rhythm in writing](https://click.convertkit-mail2.com/4zu4mx47q9ieh5lx3lguxh3drwv77/owhkhqhronk0rduv/aHR0cHM6Ly93d3cuYmJjbWFlc3Ryby5jb20vYmxvZy9yaHl0aG0taW4td3JpdGluZw==). Words can be music. Sentences can have a flow. 
  Replace commas with periods. Control the tone. 
  Make the readers feel their heart beats, their emotion, their... soul. 
  Did it work? **Make them** ***listen*** **while they read**. 
  ​ [View Highlight](https://read.readwise.io/read/01j547m5raqmgazwydfrwfpef9)) [[blog]] [[favorite]] 

  Start by warming up. Yes, really. Take 10 minutes, pick a piece you like, and write it down, **word by word**. 
  Warm up your brain and body for writing! 
  ​ [View Highlight](https://read.readwise.io/read/01j547mrzvshcwd1jmdh92gg28))

  **Don’t perfect it**. Start with a ROUGH first draft. Then take a break. Then hard edit. 
  ​ [View Highlight](https://read.readwise.io/read/01j547n5d9btvs9q9xrzz1xvva))

  **Publish**! Whether it’s once a week or once a month, it doesn’t matter. 
  The more you practice, the better you become; the more you publish, the better you get at sharing ideas. 
  Practice storytelling. [View Highlight](https://read.readwise.io/read/01j547nethjk4bbf0prnncdsk4))


path: Readwise/Writing Over Infinite Scrolling Journal Like a Scientist.md
sortable_path: ReadwiseWriting Over Infinite Scrolling Journal Like a Scientist.md
title: Writing Over Infinite Scrolling | Journal Like a Scientist
lead: ![rw-book-cover](https://i.ytimg.com/vi/0LhmdYa5vvA/maxresdefault.jpg)
checksum: ff3161ffb5d5a68f8dc3eeaf13de9bcfa782eed796d7f132af455e13d0faf6ab
created: 2024-09-12 14:56:46.089560489+00:00
modified: 2024-09-12 14:29:22.21284182+00:00
metadata: {}
body:
  ![rw-book-cover](https://i.ytimg.com/vi/0LhmdYa5vvA/maxresdefault.jpg)

  ## Metadata
  - Author: [[Charlotte Fraza]]
  - Full Title: Writing Over Infinite Scrolling | Journal Like a Scientist
  - Category: #articles
  - Document Tags: [[Education]] [[notetaking]] 
  - URL: https://www.youtube.com/watch?v=0LhmdYa5vvA
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=Writing%20Over%20Infinite%20Scrolling%20%7C%20Journal%20Like%20a%20Scientist

  > [!note]
  > **Background:** I want to start journaling about my projects, focusing primarily on software development but also incorporating any other interests or activities I engage in.
  > ---
  > ### Key Takeaways and To-Dos:
  > 📝 **Experiment Logging:** For each project or experiment, document the hypothesis, methods, results, and conclusions. This structured approach will help in tracking progress and learning outcomes effectively.
  > 🔍 **Continuous Logging:** Maintain a habit of continuously logging thoughts and observations throughout the project. This ongoing documentation can capture insights as they arise and provide clarity during the development process.
  > 🤝 **Weekly Reflection:** Set aside time for weekly reflections to review all notes taken throughout the week. This will help consolidate ideas, identify valuable insights, and create a coherent framework for understanding your progress.
  > [!tldr]
  > Charlotte Fraza discusses the importance of note-taking and journaling in the scientific process. She emphasizes that logging experiments and reflecting on failures can enhance learning and problem-solving skills. By capturing ideas and documenting resources, individuals can improve their understanding and share knowledge with others.

  ## Highlights
  experiment logging So within science what you do is
  you record all your experiments successful or not and all the questions that you pose and the answers that you seek and then you note down what you learned from each of these experiments [View Highlight](https://read.readwise.io/read/01j536cg9k591ndzmjdyn3acx0))

  experiment logging the idea what you do is for each experiment that you make is you write down these sections so you write down the hypothesis methods results and conclusions [View Highlight](https://read.readwise.io/read/01j536ety7c80mnxr62zpjdxzp))

  he second part of experiment logging is the brain dump so this is also something that I really learned to do during my PhD and this is whenever you sit down for a full work day or at the end of a work day you kind of dump all the information that you have in your brain about the experiment [View Highlight](https://read.readwise.io/read/01j536hwghwa7h71cfjs4mhw3f))

  the idea of resource documentation or research logging is that throughout any learning process you __log or take a record of all the resources that you use__, and this is mainly because at the end of learning something you usually forget what you've used to get there. [View Highlight](https://read.readwise.io/read/01j536q30j8nqkpcd7dqgrh2ar)) [[favorite]] [[notetaking]] 

  the idea of continuous logging is that you keep writing down the thoughts you have about that experiment as you are conducting it. [View Highlight](https://read.readwise.io/read/01j536tb8h218sb5f4jzbh4c4e)) [[notetaking]] 

  having reflection moments or weekly reflection in my case and that's really to come back to all the notes you've taken throughout the week and to combine them into one coherent framework and also to pick out the ideas that you really like [View Highlight](https://read.readwise.io/read/01j5373tkcxah1j67yk861wjpp))

  don't cross out any of the previous ideas that you have that you currently don't like cuz I find often that as you change yourself throughout time if you go back to some really old notebooks it's actually really nice to see some of the thoughts you were having and sometimes these thoughts are actually more valuable at this moment than you estimated them to be at the previous moments [View Highlight](https://read.readwise.io/read/01j5377gqcfcwfzmwe0mtb9w32))

  sharing and reflecting together with another person is actually really nice [View Highlight](https://read.readwise.io/read/01j537948pfqmqcdrfpj1dth6v))

  you would write down your hypothesis to how you think this would go what you think you would learn what you think you would gain from this skill acis
  you would write down your methods how you think you're going to learn as much as possible about the brain in 30 days and you would write down your results but then in the end you would also write down your conclusions [View Highlight](https://read.readwise.io/read/01j6s8wm539b8fne7spch2qqnp))

  these are usually to-dos that I think I need to do doubts I have about the experiment that I'm going to do what I think throughout that day I will learn or kind of what I have to consider and also a lot of times I write down what I think can go wrong [View Highlight](https://read.readwise.io/read/01j6s90vvygxh31fm58cp5xj11))

raw_content:
  # Writing Over Infinite Scrolling | Journal Like a Scientist

  ![rw-book-cover](https://i.ytimg.com/vi/0LhmdYa5vvA/maxresdefault.jpg)

  ## Metadata
  - Author: [[Charlotte Fraza]]
  - Full Title: Writing Over Infinite Scrolling | Journal Like a Scientist
  - Category: #articles
  - Document Tags: [[Education]] [[notetaking]] 
  - URL: https://www.youtube.com/watch?v=0LhmdYa5vvA
  - Archive: https://web-archive.alecodes.page/bookmarks?bf=1&search=&title=Writing%20Over%20Infinite%20Scrolling%20%7C%20Journal%20Like%20a%20Scientist

  > [!note]
  > **Background:** I want to start journaling about my projects, focusing primarily on software development but also incorporating any other interests or activities I engage in.
  > ---
  > ### Key Takeaways and To-Dos:
  > 📝 **Experiment Logging:** For each project or experiment, document the hypothesis, methods, results, and conclusions. This structured approach will help in tracking progress and learning outcomes effectively.
  > 🔍 **Continuous Logging:** Maintain a habit of continuously logging thoughts and observations throughout the project. This ongoing documentation can capture insights as they arise and provide clarity during the development process.
  > 🤝 **Weekly Reflection:** Set aside time for weekly reflections to review all notes taken throughout the week. This will help consolidate ideas, identify valuable insights, and create a coherent framework for understanding your progress.
  > [!tldr]
  > Charlotte Fraza discusses the importance of note-taking and journaling in the scientific process. She emphasizes that logging experiments and reflecting on failures can enhance learning and problem-solving skills. By capturing ideas and documenting resources, individuals can improve their understanding and share knowledge with others.

  ## Highlights
  experiment logging So within science what you do is
  you record all your experiments successful or not and all the questions that you pose and the answers that you seek and then you note down what you learned from each of these experiments [View Highlight](https://read.readwise.io/read/01j536cg9k591ndzmjdyn3acx0))

  experiment logging the idea what you do is for each experiment that you make is you write down these sections so you write down the hypothesis methods results and conclusions [View Highlight](https://read.readwise.io/read/01j536ety7c80mnxr62zpjdxzp))

  he second part of experiment logging is the brain dump so this is also something that I really learned to do during my PhD and this is whenever you sit down for a full work day or at the end of a work day you kind of dump all the information that you have in your brain about the experiment [View Highlight](https://read.readwise.io/read/01j536hwghwa7h71cfjs4mhw3f))

  the idea of resource documentation or research logging is that throughout any learning process you __log or take a record of all the resources that you use__, and this is mainly because at the end of learning something you usually forget what you've used to get there. [View Highlight](https://read.readwise.io/read/01j536q30j8nqkpcd7dqgrh2ar)) [[favorite]] [[notetaking]] 

  the idea of continuous logging is that you keep writing down the thoughts you have about that experiment as you are conducting it. [View Highlight](https://read.readwise.io/read/01j536tb8h218sb5f4jzbh4c4e)) [[notetaking]] 

  having reflection moments or weekly reflection in my case and that's really to come back to all the notes you've taken throughout the week and to combine them into one coherent framework and also to pick out the ideas that you really like [View Highlight](https://read.readwise.io/read/01j5373tkcxah1j67yk861wjpp))

  don't cross out any of the previous ideas that you have that you currently don't like cuz I find often that as you change yourself throughout time if you go back to some really old notebooks it's actually really nice to see some of the thoughts you were having and sometimes these thoughts are actually more valuable at this moment than you estimated them to be at the previous moments [View Highlight](https://read.readwise.io/read/01j5377gqcfcwfzmwe0mtb9w32))

  sharing and reflecting together with another person is actually really nice [View Highlight](https://read.readwise.io/read/01j537948pfqmqcdrfpj1dth6v))

  you would write down your hypothesis to how you think this would go what you think you would learn what you think you would gain from this skill acis
  you would write down your methods how you think you're going to learn as much as possible about the brain in 30 days and you would write down your results but then in the end you would also write down your conclusions [View Highlight](https://read.readwise.io/read/01j6s8wm539b8fne7spch2qqnp))

  these are usually to-dos that I think I need to do doubts I have about the experiment that I'm going to do what I think throughout that day I will learn or kind of what I have to consider and also a lot of times I write down what I think can go wrong [View Highlight](https://read.readwise.io/read/01j6s90vvygxh31fm58cp5xj11))


path: notes/iterators.md
sortable_path: notesiterators.md
title: iterators
checksum: e181d3acf5996718f4a1d1d4246d72a96f51dc21b04619af7fb7a501b9c078cc
created: 2024-09-13 17:03:45.390693131+00:00
modified: 2024-09-13 17:18:05.727266518+00:00
metadata: {}
lead:
  > The iterator pattern allows you to perform some task on a sequence of items
  > in turn. An iterator is responsible for the logic of iterating over each item
  > and determining when the sequence has finished.
  [Rust book](https://doc.rust-lang.org/book/ch13-02-iterators.html)

body:
  > The iterator pattern allows you to perform some task on a sequence of items
  > in turn. An iterator is responsible for the logic of iterating over each item
  > and determining when the sequence has finished.
  [Rust book](https://doc.rust-lang.org/book/ch13-02-iterators.html)

  An itetarator it's usually related to some sort of lists, vectors or collection
  of items, but the iterator can be anything that implements the interface. The
  interaface depends on the language, but usually only needs a `next(Self) -> Item`
  method that returns the next item to be acted upon.

  The adventage of iterators is that you can use them with anything that accept
  thems (kinda in the reusable side of programming), and modern standard
  libraries implements patterns to use them like: `forEach`, `map`, `sum`, etc

  Another common use case is to iterate on something indefinetly as long as it
  continue to provide new items. For example you can implement a
  `PollingIterator` that fetch data from a remote source until the source says
  there's no more data:

  ```python
  class EmailPoll:
      """Iterator class that pools emails from the EmailService indefinetly."""

      def __init__(self, service: EmailService, wait_time: int):
          super(EmailPoll, self).__init__()
          self.service = service
          self.wait_time = wait_time
          self.current_mails = self.service.fetch_emails()

      def __iter__(self):
          return self

      def __next__(self):
          while len(self.current_mails) == 0:
              self.current_mails = self.service.fetch_emails()

              if len(self.current_mails) == 0:
                  print(f"No new emails, waiting {self.wait_time}s")
                  sleep(self.wait_time)

          return self.current_mails.pop(0)


  email_service = EmailService()
  for mail in EmailPoll(email_service, 3):
      print(mail)

  ```

raw_content:
  # iterators

  > The iterator pattern allows you to perform some task on a sequence of items
  > in turn. An iterator is responsible for the logic of iterating over each item
  > and determining when the sequence has finished.
  [Rust book](https://doc.rust-lang.org/book/ch13-02-iterators.html)

  An itetarator it's usually related to some sort of lists, vectors or collection
  of items, but the iterator can be anything that implements the interface. The
  interaface depends on the language, but usually only needs a `next(Self) -> Item`
  method that returns the next item to be acted upon.

  The adventage of iterators is that you can use them with anything that accept
  thems (kinda in the reusable side of programming), and modern standard
  libraries implements patterns to use them like: `forEach`, `map`, `sum`, etc

  Another common use case is to iterate on something indefinetly as long as it
  continue to provide new items. For example you can implement a
  `PollingIterator` that fetch data from a remote source until the source says
  there's no more data:

  ```python
  class EmailPoll:
      """Iterator class that pools emails from the EmailService indefinetly."""

      def __init__(self, service: EmailService, wait_time: int):
          super(EmailPoll, self).__init__()
          self.service = service
          self.wait_time = wait_time
          self.current_mails = self.service.fetch_emails()

      def __iter__(self):
          return self

      def __next__(self):
          while len(self.current_mails) == 0:
              self.current_mails = self.service.fetch_emails()

              if len(self.current_mails) == 0:
                  print(f"No new emails, waiting {self.wait_time}s")
                  sleep(self.wait_time)

          return self.current_mails.pop(0)


  email_service = EmailService()
  for mail in EmailPoll(email_service, 3):
      print(mail)

  ```


