Skip to content

Commit

Permalink
Adjust interruption part #36
Browse files Browse the repository at this point in the history
  • Loading branch information
pintergreg committed Nov 18, 2024
1 parent 35080e8 commit 7516e28
Show file tree
Hide file tree
Showing 3 changed files with 64 additions and 6 deletions.
45 changes: 40 additions & 5 deletions lectures/16_automatization.md
Original file line number Diff line number Diff line change
Expand Up @@ -818,9 +818,10 @@ table: KDE / Plasma 6.1 series [release schedule](https://community.kde.org/Sche
- takes time to understand
- context switching is costly
- switching between tasks
- that is why it is advisable to define small tasks during the sprint planning
- 1--4 hours, but ideally closer to 1
- preventing interruption
- that is why it is advisable to define small tasks during the sprint planning
- 1--4 hours, but ideally closer to 1
- preventing interruption
- a programmer probably get one uninterrupted 2-hour session in a day [@parnin2013programmer]
<!-- - [also withing a OS / CPU]{.text-smaller} -->


Expand All @@ -829,9 +830,10 @@ table: KDE / Plasma 6.1 series [release schedule](https://community.kde.org/Sche
:::::::::::: {.columns}
::::::::: {.column width="60%" .mt-3}
- according to a study, the average lost time per major interruption is **23 minutes** [@mark2008cost]
- for developers, it could be far worse
- for developers, it could be worse
- according to another study it is at least 15 minutes [@parnin2013programmer]
- "getting back to the exact state of mind you were at right before an interruption is nearly impossible" [@to2018cost]
- planned and unplanned interruptions
- interruptions can be planned and unplanned

:::::::::
::::::::: {.column width="40%"}
Expand Down Expand Up @@ -875,6 +877,39 @@ source: [The Cost of Interruption for Software Developers](https://www.brightdev
:::


## techniques to minimize context switching

:::::::::::: {.columns .column-gapless}
::::::::: {.column width="50%"}
- time blocking
- divide workday into blocks
- time batching
- do similar tasks in a batch
- prioritize tasks
- tackle the biggest task first in the morning
- turn off notifications
- adopt asynchronous communication
- e-mail, documentation, [ADR]{.tooltip title="architecture decision record"}

::: {.text-smaller}
source: [The high price of context switching for developers & ways to avoid it](https://pacohq.com/blog/guide/the-high-price-of-context-switching-for-developers/) [@pande2021high]
:::

:::::::::
::::::::: {.column width="50%"}
![ideal, very bad, much better schedule](figures/time_blocking.drawio.svg){width=400}
:::::::::
::::::::::::

<!--- "eat the frog"
- frog is a metaphor for the biggest and most important task-->

<!--
## pomodoro technique
::: {}
:::-->

# references

::: {#refs}
Expand Down
4 changes: 4 additions & 0 deletions lectures/figures/time_blocking.drawio.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
21 changes: 20 additions & 1 deletion lectures/references.bib
Original file line number Diff line number Diff line change
Expand Up @@ -973,7 +973,7 @@ @misc{shipp2019war
}
@misc{mccreary2017when,
author = {Jason McCreary},
title = {When to make a Git Commit },
title = {When to make a Git Commit},
howpublished = {\url{
https://dev.to/gonedark/when-to-make-a-git-commit
}},
Expand All @@ -982,3 +982,22 @@ @misc{mccreary2017when
day = {11},
note = {[Accessed 18-11-2024]},
}
@inproceedings{parnin2013programmer,
title={Programmer, interrupted},
author={Parnin, Chris},
booktitle={2013 IEEE Symposium on Visual Languages and Human Centric Computing},
pages={171--172},
year={2013},
organization={IEEE}
}
@misc{pande2021high,
author = {Nitin Pande},
title = {The high price of context switching for developers & ways to avoid it},
howpublished = {\url{
https://pacohq.com/blog/guide/the-high-price-of-context-switching-for-developers/
}},
year = {2021},
month = {4},
day = {23},
note = {[Accessed 18-11-2024]},
}

0 comments on commit 7516e28

Please sign in to comment.