Skip to content

2025

How to Debug Like a Pro

Debugging is a superpower! Here are some tips:

  • Use print statements (but don’t forget to remove them).
  • Rubber duck debugging: explain your code to a rubber duck.
  • Take breaks—sometimes the answer comes when you least expect it.
  • Use a real debugger (VS Code, PyCharm, etc.).

Happy debugging! 🦆

Why Markdown is Awesome

  • It’s easy to read and write.
  • You can use it almost anywhere (GitHub, blogs, docs).
  • Supports code, math, images, and more.
  • Works great with MkDocs and Material theme!

Pro tip: Try using emojis and tables for extra flair! 😎

Top 5 Python Tricks

  1. List comprehensions: [x*x for x in range(10)]
  2. Unpacking: a, b = b, a
  3. F-strings: f"Hello, {name}!"
  4. The enumerate() function for loops
  5. Using zip() to iterate over multiple lists

Try them out in your next project!

Markdown Extensions Demo

This document demonstrates the use of various markdown_extensions available in mkdocs with pymdown-extensions. Each section includes a short explanation of the extension and a working example.

Table of Contents

[toc]


Admonition

Provides styled callouts for notes, warnings, tips, etc.

Note

This is a note admonition.

Warning

This is a warning admonition.

Codehilite

Adds syntax highlighting to code blocks. guess_lang can be disabled to avoid misclassification.

def hello():
    print("Hello, world!")

Adds clickable permalinks to each heading in the Table of Contents.

Subsection Example

This subsection has a permalink.

Arithmatex

Supports MathJax or KaTeX for LaTeX-style math rendering.

\(E = mc^2\)

Inline math: \(a^2 + b^2 = c^2\)

Pymdownx Extensions

b64

Allows embedding base64-encoded images directly in Markdown.

![Red dot](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVQIW2P4z8DwHwAFgwJ/l9hU3gAAAABJRU5ErkJggg==)

betterem

Improves handling of emphasis (e.g., avoids nested emphasis bugs).

Italic vs Bold vs BoldItalic

caret

Adds support for superscript.

This is superscript text.

critic

Enables Critic Markup for editorial suggestions and inline changes.

deleted text added text {~~ replaced text ~> new text ~~} highlighted comment

details

Creates collapsible blocks.

Click to Expand

This is hidden in a collapsible block.

emoji

Replaces emoji shortcodes with Unicode or image emojis.

:tada: 👍 💯

escapeall

Escapes all Markdown-sensitive characters by default.

*This* is not italic because of escapeall.

extra

A bundle of useful extensions like abbreviations and tables.

Abbreviation: HTML*[Hyper Text Markup Language]

highlight

Allows highlighting using == markers.

==Highlighted text==

inlinehilite

Adds highlighting inside inline code blocks.

Here is some ==inline code== that’s highlighted.

keys

Formats keyboard keys.

Press Ctrl+Alt+Del to reboot.

Auto-converts URLs and emails into links.

Visit https://github.com/ for more info.

mark

Highlights text using == markup.

==Marked text==

pathconverter

Automatically converts relative paths to absolute ones when needed (e.g., for images).

An image: example

progressbar

Creates text-based progress bars.

[= ] 25%

smartsymbols

Automatically replaces common textual representations with symbols.

© ™ ® → → <-> ...

snippets

Allows reusing content from other files.

--8← "snippets/example.md"

striphtml

Strips raw HTML tags from Markdown output.

This paragraph will be stripped if striphtml is enabled.

superfences

Supports advanced fenced code blocks like mermaid, plantuml, etc.

graph TD;
    A-->B;
    A-->C;
    B-->D;
    C-->D;

tabbed

Creates tabbed content sections.

=== "Tab One" Content for tab one.

=== "Tab Two" Content for tab two.

tasklist

Adds GitHub-style task lists.

  • Task one
  • Task two

tilde

Enables strikethrough text using ~~.

Strikethrough text

First Blog Post

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer nec odio. Praesent libero. Sed cursus ante dapibus diam.

Highlights

  • Markdown: Easy to write and read.
  • Math: Beautiful equations like:
\[ a^2 + b^2 = c^2 \]
  • Code: Example below:
console.log("Hello, World!");

Welcome to the blog! This is the first post.

Second Blog Post

Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Duis mollis, est non commodo luctus, nisi erat porttitor ligula.

Updates

  • New Features: Added support for advanced Markdown.
  • Math Example:
\[ \nabla \cdot \mathbf{E} = \frac{\rho}{\epsilon_0} \]
  • Code Snippet:
<div class="example">
  <p>Hello, World!</p>
</div>

Stay tuned for more updates!

Third Blog Post

Curabitur blandit tempus porttitor. Nullam id dolor id nibh ultricies vehicula ut id elit.

Random Thoughts

  • Philosophy: "Cogito, ergo sum."
  • Math Fun:
\[ \sum\_{n=1}^\infty \frac{1}{n^2} = \frac{\pi^2}{6} \]
  • Code Example:
puts "Hello, World!"

Thanks for reading!