Skip to content

Latest commit

 

History

History
332 lines (328 loc) · 40.3 KB

README.md

File metadata and controls

332 lines (328 loc) · 40.3 KB

explains

update playlist

the full playlist is on youtube

  1. introducing anthony explains!
  2. python cli tested with pytest - (beginner to intermediate)
  3. python @decorators - (intermediate)
  4. my favorite python str method! (beginner - intermediate)
  5. how to make a simple github PR (beginner)
  6. the python @property decorator (beginner - intermediate)
  7. python type(x).__name__ vs x.__class__.__name__ (intermediate)
  8. python return annotations: NoReturn vs None (intermediate)
  9. what's wrong with python's blank except:? (beginner - intermediate)
  10. how I use selenium + html/css to make thumbnails (intermediate)
  11. python: raising Error without parens (intermediate)
  12. python's tricky for ...: else: statement (beginner - intermediate)
  13. python's pass statement (beginner - intermediate)
  14. shell bling strings! (beginner - intermediate)
  15. setting up an ubuntu focal virtual machine (beginner - intermediate)
  16. python executable zipapps (intermediate)
  17. pretty python profiling (intermediate)
  18. python implicit string joining (beginner - intermediate)
  19. postmortem debugging in python (beginner - intermediate)
  20. configuration management (devops) (intermediate)
  21. how to pronounce PyPI (beginner)
  22. all python argument / parameter types (beginner - intermediate)
  23. what is a tty? (beginner - intermediate)
  24. introduction to markdown (beginner)
  25. how do I get started in open source? (beginner)
  26. a flake8 plugin from scratch (intermediate)
  27. finding regressions with git bisect (intermediate)
  28. pytest's parametrize (beginner - intermediate)
  29. python curses "hello world" (beginner - intermediate)
  30. git: empty initial commit (beginner - intermediate)
  31. dockerfile RUN : \ && syntax (beginner)
  32. python variable unpackings (beginner - intermediate)
  33. docker: ADD «url» considered harmful? (intermediate)
  34. what is a shebang (#!)? (beginner - intermediate)
  35. what is test driven development? (beginner - intermediate)
  36. python single vs double quote strings! (beginner)
  37. git: ignoring noisy whitespace changes (beginner - intermediate)
  38. git: useful trick for pushing branches (beginner - intermediate)
  39. python github actions w/ tox and pre-commit (intermediate)
  40. releasing a python package to pypi (beginner - intermediate)
  41. virtualenv vs. venv (beginner - intermediate)
  42. implementing --version with importlib.metadata (intermediate)
  43. string formatting in python (beginner - intermediate)
  44. introduction to tox (beginner - intermediate)
  45. python argparse tutorial (beginner - intermediate)
  46. typing __getitem__ (python / mypy) (intermediate)
  47. fixing a git mistake with reflog (intermediate)
  48. introduction to python typing + mypy (beginner - intermediate)
  49. python packaging: src layout (intermediate)
  50. three ways to edit git commits (intermediate)
  51. stdin / stdout / stderr (beginner - intermediate)
  52. hacker mode tmux debugging (intermediate)
  53. regular expressions crash course (beginner - intermediate)
  54. web security: what is a csrf exploit? (intermediate)
  55. python: functools.lru_cache (beginner - intermediate)
  56. python __future__ "module" (beginner - intermediate)
  57. undoing an accidental git commit (intermediate)
  58. python packaging: basic setup.py and declarative metadata (intermediate)
  59. what is deadsnakes? (beginner - intermediate)
  60. getting started with programming (beginner)
  61. git show (+ some tips!) (beginner)
  62. python star imports (beginner - intermediate)
  63. intro to apt (debian / ubuntu) (beginner + intermediate)
  64. correct conditional arguments in bash (beginner - intermediate)
  65. using the python __import__ builtin correctly (intermediate)
  66. special paths: ~, ~user, ., .. (beginner)
  67. protip: exiting really fast! (beginner)
  68. python: Ellipsis (...) and typing (beginner - intermediate)
  69. git cherry-pick (intermediate)
  70. customizing the python repl (intermediate)
  71. what is PATH? (beginner - intermediate)
  72. python packaging: data files (intermediate)
  73. a virtualenv from nothing! (beginner - intermediate)
  74. tox --devenv (beginner - intermediate)
  75. python packaging: optional dependencies (intermediate)
  76. regexes: capture groups (beginner - intermediate)
  77. python typing: why not self? (intermediate)
  78. generator basics (+typing) (beginner - intermediate)
  79. stop using git add . (beginner - intermediate)
  80. why not global pip / virtualenv? (intermediate)
  81. bash hash cache! (beginner - intermediate)
  82. git: a checked-in directory (intermediate)
  83. typing: exception types (intermediate)
  84. why you should end a file in a newline (beginner)
  85. git workflow: branch name collisions (intermediate)
  86. sort your imports! (beginner - intermediate)
  87. what is the underscore (_) for? (beginner)
  88. python curses: color (intermediate)
  89. semantic versioning (beginner - intermediate)
  90. file modes and chmod (beginner - intermediate)
  91. making a regex not match itself! (intermediate)
  92. I run 'rm -rf /' and see what happens (beginner - intermediate)
  93. git fetch (--prune) (beginner - intermediate)
  94. top 10 new things in python3.9 (beginner - intermediate)
  95. testing functools.lru_cache with pytest! (beginner - intermediate)
  96. git: commit message pro tip (beginner - intermediate)
  97. typing: what is Type[X]? (intermediate)
  98. python debugger crash course: pdb / breakpoint (beginner - intermediate)
  99. why pytest.mark.usefixtures? (intermediate)
  100. git apply and manual stashing (intermediate)
  101. intro to python namedtuples! (beginner - intermediate)
  102. namedtuple to json and other pitfalls (intermediate)
  103. how namedtuple works (advanced)
  104. why python -m pip? (beginner - intermediate)
  105. fixing NameError / TypeError in python type annotations (intermediate)
  106. why backslash in triple-quoted-strings """\ (intermediate)
  107. what's (wrong with) hacktoberfest? (beginner)
  108. pure python windows .exe (no compiler!) (intermediate)
  109. python dist-packages vs. site-packages (intermediate)
  110. testing optional python dependencies (intermediate)
  111. typing: why main() -˃ int (beginner - intermediate)
  112. debugging with dir() (+__dir__) (beginner - intermediate)
  113. python: pretty headers with str.center (beginner)
  114. don't put passwords in commands! (beginner - intermediate)
  115. python: comma, = assignment! (beginner - intermediate)
  116. python typing: re.match and Optional (intermediate)
  117. python: .sort() vs sorted(...) (beginner - intermediate)
  118. python typing: @property (beginner - intermediate)
  119. python: 4 ways to set namedtuple defaults (intermediate)
  120. what is the /opt directory? (beginner - intermediate)
  121. git: visualizing main line commits (intermediate)
  122. bash: passing string as stdin (beginner - intermediate)
  123. python: what is __slots__ and __dict__ (intermediate)
  124. why __slots__ = () (namedtuples) (intermediate)
  125. how do editable pip installs work? (intermediate)
  126. what is argv (and argc)? (beginner - intermediate)
  127. is python with types faster? (intermediate)
  128. bash: multiple lines to stdin with heredocs (beginner - intermediate)
  129. a python plugin system via entrypoints (intermediate)
  130. git diff A...B (3 dots) (beginner - intermediate)
  131. faster than git clone! (beginner - intermediate)
  132. python: len(x) vs x.__len__() (beginner - intermediate)
  133. python typing: Final / @final (intermediate)
  134. python: raw (NOT REGEX) r'strings' (beginner - intermediate)
  135. a "hello world" python C extension (intermediate - advanced)
  136. making python releases less painful with abi3 (intermediate - advanced)
  137. useful interview datastructures: defaultdict (beginner - intermediate)
  138. reset a clone with git clean! (beginner - intermediate)
  139. with + context managers (part1: the hard way) (intermediate - advanced)
  140. with + context managers (part2: the easy way) (intermediate)
  141. how @contextmanager works (with/contexts part 3) (advanced)
  142. is python's round() broken? (beginner)
  143. useful interview datastructures: Counter (beginner - intermediate)
  144. easy fake objects with python's SimpleNamespace (beginner - intermediate)
  145. what is a git tag? (beginner - intermediate)
  146. python: typing *args / **kwargs (intermediate)
  147. python typing: Optional is not optional! (intermediate)
  148. mypy's "implicit optional" (and why I disable it) (intermediate)
  149. customize ANY website (beginner - intermediate)
  150. python: more advanced breakpoint() usage (intermediate)
  151. what is docker and how does it work? (intermediate)
  152. docker run: always use --rm! (beginner - intermediate)
  153. what is sass vs scss? (beginner)
  154. repeatedly checking command output (beginner - intermediate)
  155. why do asset urls have hex segments? (beginner - intermediate)
  156. python cffi tutorial (intermediate - advanced)
  157. python regex: \d gotcha! (beginner - intermediate)
  158. customizing "command not found" (intermediate)
  159. why docker build --pull? (intermediate)
  160. useful commands: pstree (beginner - intermediate)
  161. don't use os.system! (beginner - intermediate)
  162. python: all about comprehensions! (beginner - intermediate)
  163. python: os.exec* vs subprocess (intermediate)
  164. python typing: @overload (intermediate)
  165. structural subtyping in python with Protocol! (intermediate)
  166. what is virtualenvwrapper + quick start (beginner - intermediate)
  167. github tweak: custom tab width (beginner)
  168. what is advent of code? (beginner)
  169. what is atomicity (intermediate)
  170. python: what is nonlocal (intermediate)
  171. python typing: Literal (intermediate)
  172. counting in binary / 2s complement (beginner - intermediate)
  173. oops I typed git git ... again (beginner - intermediate)
  174. python: binary search the easy way (interview tips) (intermediate)
  175. pytest: parametrize permutation (intermediate)
  176. more powerful than control-C (beginner - intermediate)
  177. pytest: testing exceptions (beginner - intermediate)
  178. what is a pager / less ? (beginner - intermediate)
  179. python: naming and underscores (beginner - intermediate)
  180. what is the bang (!) in git aliases (beginner - intermediate)
  181. python typing: aliases (beginner - intermediate)
  182. argparse: making a command wrapper (parse_known_args) (intermediate)
  183. bash protip: fc "fix command" (beginner - intermediate)
  184. python integer literal underscores! (beginner)
  185. what is git -C ... (intermediate)
  186. bash: pushd / popd (beginner - intermediate)
  187. what is cd - / git checkout - (beginner)
  188. typing: Protocol + @runtime_checkable (intermediate)
  189. what is a singleton? (and python patterns) (intermediate - advanced)
  190. python: conditional context and ExitStack (intermediate)
  191. python deque (useful interview datastructures) (intermediate)
  192. images in the terminal? what is a sixel (beginner - intermediate)
  193. useful tools: uq (beginner - intermediate)
  194. git: cleaning up merged branches (beginner - intermediate)
  195. python: decorating a class (intermediate)
  196. python: class-based @decorators (intermediate - advanced)
  197. intro to git lfs (intermediate)
  198. python scoping (beginner - intermediate)
  199. docker: deleting files makes your image bigger! (intermediate)
  200. getting started with packer (intermediate)
  201. all about xargs ! (beginner - intermediate)
  202. bash "strict mode": -euo pipefail (beginner - intermediate)
  203. 3 ways to clear / fix the terminal (beginner)
  204. python is compiled? (+ disassembler) (intermediate)
  205. what is a boolean trap? (programming antipattern) (beginner - intermediate)
  206. python: str.translate (intermediate)
  207. python easter eggs: __future__ braces (beginner)
  208. the wc command (beginner)
  209. debugging python segfaults with gdb (intermediate - advanced)
  210. interview question: 4 / 7 swap (beginner - intermediate)
  211. github actions vulnerability or "why bug bounties are a scam" (intermediate)
  212. python easter eggs: antigravity (beginner)
  213. python insertion-ordered dicts (beginner - intermediate)
  214. python @decorator stacking (intermediate)
  215. typing: dealing with import cycles (beginner - intermediate)
  216. python easter eggs: easiest hello world! (beginner)
  217. what is dynamic programming? (beginner - intermediate)
  218. unix commands: fold (beginner)
  219. listing only directories with ls (beginner)
  220. github tip: getting perma-links (beginner)
  221. finding python source code and docs (beginner)
  222. how I sped up python's tokenize module by 25% (intermediate)
  223. python: why is -c faster than -m? (intermediate)
  224. python: {...} is faster than dict(...) (intermediate)
  225. showing actual file bytes with hexdump (beginner - intermediate)
  226. python: how do any / all work? (beginner)
  227. python: why str('foo') (python 2 / 3 compat) (beginner - intermediate)
  228. bash: /bin/[ is an executable ? (intermediate)
  229. the install command (beginner - intermediate)
  230. 3 ways to fix an accidental git commit to main (beginner - intermediate)
  231. don't use time.time() for performance measurement (beginner - intermediate)
  232. how to search a repo using git grep (beginner)
  233. the 2 modes of python's str.split (beginner)
  234. python: what are *splat **args? (intermediate)
  235. why doesn't flake8 mark this import as unused? (beginner - intermediate)
  236. pathlib is slow? how I improved black's caching by 40x (intermediate)
  237. how to make a virtualenv from cpython source (intermediate)
  238. enable tab completion in pdb! (beginner)
  239. sed command basics (beginner - intermediate)
  240. what pythons should I support? (beginner - intermediate)
  241. python: what is assert? (beginner)
  242. python: shlex module (beginner - intermediate)
  243. python: what is hashability? (intermediate)
  244. python: why object() in this code? (intermediate)
  245. intro to terraform (intermediate)
  246. git rebase (and git rebase -i) (intermediate)
  247. testing output with pytest (beginner - intermediate)
  248. python: exception catching and isinstance gotcha (beginner - intermediate)
  249. one-off 3rd party mypy types (intermediate)
  250. PS1, coloring, and fixing weird wrapping (beginner - intermediate)
  251. python match statement (PEP 634) (intermediate - advanced)
  252. NotImplemented vs NotImplementedError (beginner - intermediate)
  253. packaging python typed code (intermediate)
  254. interview questions: anagrams (beginner - intermediate)
  255. python: functools.partial (beginner - intermediate)
  256. speed up git in big repos with this trick (beginner)
  257. correct apt-get for ubuntu / debian in docker (intermediate)
  258. what is podman vs docker (beginner - intermediate)
  259. a file even root can't delete! (chattr) (intermediate)
  260. python: yield from (beginner - intermediate)
  261. pytest: xfail vs xpass and all test statuses (beginner - intermediate)
  262. python easter eggs: __peg_parser__ (beginner)
  263. what is the XDG base directory specification? (intermediate)
  264. move a virtualenv! (intermediate)
  265. atomic file replacement (os.rename vs os.replace) (intermediate)
  266. floats are broken? (+3 solutions in python!) (beginner - intermediate)
  267. how I find standard python type signatures (beginner - intermediate)
  268. python curses: mouse integration (intermediate)
  269. the rlwrap command (beginner - intermediate)
  270. can cpython be 76% faster by changing hash()? (no) (intermediate)
  271. what is a .pth file? (intermediate)
  272. nesting context managers with classes (intermediate)
  273. a FREE stateful cron using aws (intermediate)
  274. what are git submodules? (intermediate)
  275. programmable nintendo switch controller (intermediate)
  276. python typing: object vs Any (intermediate)
  277. python typing: NotImplemented is a bool? (intermediate)
  278. the find command (beginner - intermediate)
  279. use the clipboard from the terminal (beginner)
  280. pgrep / pkill commands (beginner - intermediate)
  281. SUPER FAST cpython with mypyc (intermediate)
  282. updating a forked repository (beginner - intermediate)
  283. docker takes so much disk! (beginner - intermediate)
  284. python: traceback basics + raise from (beginner - intermediate)
  285. git: check in executable file (+ on windows) (beginner - intermediate)
  286. line buffering vs. block buffering (intermediate)
  287. the comm command! (intermediate)
  288. man pages for git subcommands (beginner - intermediate)
  289. flake8: avoiding F401 in __init__.py (beginner - intermediate)
  290. top 10 new things in python 3.10 (beginner - intermediate)
  291. what is a deadletter queue? (intermediate)
  292. atomically replace / delete directories (intermediate - advanced)
  293. ☃.com and punycode / idna (beginner - intermediate)
  294. how to get pip for deadsnakes / docker pythons (intermediate)
  295. @staticmethod / @classmethod (beginner + advanced)
  296. date.today() is twice as slow as datetime.now().date()??? (intermediate)
  297. simple python dockerfile w/ flask (intermediate)
  298. python typing: Generator[T, S, R] (intermediate)
  299. python: explicit relative imports (intermediate)
  300. debugging mypy types (beginner - intermediate)
  301. what are python doctests? (beginner - intermediate)
  302. terminal keyboard shortcut for unicode! (beginner)
  303. bash: strings with ! / !... event not found (beginner - intermediate) anthony explains
  304. default zoom key shortcut (beginner)
  305. smaller / faster builds with dockerignore (beginner - intermediate)
  306. python: why reload() is a bad idea (beginner - intermediate)
  307. what is the py launcher? (intermediate)
  308. the uniq command (+ some sort) (beginner - intermediate)
  309. gradual typing python (and my approach) (beginner - intermediate)
  310. importing non-module python files (intermediate)
  311. the cut command (beginner - intermediate)
  312. bash: special redirection (intermediate)
  313. python typing: TYPE_CHECKING (intermediate)
  314. else is good, actually (beginner - intermediate)
  315. Fussy Fox + flake8 vulnerability (intermediate)
  316. setting up required github PR checks (beginner - intermediate)
  317. python has an optimizer? (intermediate)
  318. pytest: testing env variables (intermediate)
  319. python easter eggs: this (beginner)
  320. git: main vs. origin/main (beginner - intermediate)
  321. python warnings (beginner - intermediate) explains #320
  322. docker beside docker (intermediate - advanced)