Skip to content

Commit ad56ab9

Browse files
committed
add operating system and debugging resources
1 parent a41265c commit ad56ab9

File tree

4 files changed

+39
-6
lines changed

4 files changed

+39
-6
lines changed

content/pages/04-web-development/38-debugging.markdown

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ standalone tools that you can use in any
5050
Python objects running in an application
5151

5252

53-
### Python-specific Debugging tutorials
53+
### Python-specific debugging tutorials
5454
The Python ecosystem has a range of tools to help with debugging your code.
5555
These tutorials are specific to Python libraries like pdb and objgraph.
5656

@@ -59,7 +59,10 @@ These tutorials are specific to Python libraries like pdb and objgraph.
5959
[pdb](https://docs.python.org/3/library/pdb.html)
6060
can be used to find a defect in a block of Python code.
6161

62-
* [pdb - Interactive Debugger](https://pymotw.com/2/pdb/) is featured on
62+
* [How to Use Pdb to Debug Your Code](https://pybit.es/pdb-debugger.html)
63+
is a wonderful code-first tutorial on getting started with pdb.
64+
65+
* [pdb - Interactive Debugger](https://pymotw.com/3/pdb/) is featured on
6366
the Python Module of the Week blog and has some great detail on using
6467
the program effectively.
6568

@@ -70,6 +73,21 @@ These tutorials are specific to Python libraries like pdb and objgraph.
7073
* [Debugging in Python](https://pythonconquerstheuniverse.wordpress.com/2009/09/10/debugging-in-python/)
7174
elaborates on what pdb does and how it can be used.
7275

76+
* [Profiling Python web applications with visual tools](https://mitjafelicijan.com/profiling-python-web-applications-with-visual-tools)
77+
details a configuration for visualizing code execution using
78+
[KCachegrind](http://kcachegrind.sourceforge.net/html/Home.html).
79+
80+
* [pdb: Using the Python debugger in Django](https://mike.tig.as/blog/2010/09/14/pdb/)
81+
is a tutorial specific to working with pdb in [Django](/django.html)
82+
projects.
83+
84+
* [My Startling Encounter With Python Debuggers](https://benbernardblog.com/my-startling-encounter-with-python-debuggers/)
85+
along with
86+
[the follow-up second post](https://benbernardblog.com/my-startling-encounter-with-python-debuggers-part-2/)
87+
are a fantastic couple of posts that walk through a specific scenario
88+
of how a well-tested distributed web crawler failed and how tools like
89+
gdb, top and Winpdb were used to debug a multithreaded application.
90+
7391

7492
### General debugging resources
7593
The following resources are not specific to Python development but

content/pages/05-deployment/13-operating-systems.markdown

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -154,6 +154,13 @@ chose one operating system over others.
154154
explains the rationale for switching from the Apple-based operating system
155155
to Linux along with what applications the author now uses.
156156

157+
* [Operating Systems: Three Easy Pieces](http://pages.cs.wisc.edu/~remzi/OSTEP/)
158+
is a free book by University of Wisconsin Computer Science professors
159+
that teaches how operating systems are built. Although you do not know
160+
exactly how to build your own OS to use one, understanding the
161+
foundation for how software works is incredibly helpful in unexpected
162+
ways while developing and operating your applications.
163+
157164

158165
### Operating system learning checklist
159166
1. Choose either a Debian-based Linux distribution such as Ubuntu or a

content/pages/meta/04-page-statuses.markdown

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -48,8 +48,8 @@ kept up to date with accurate descriptions and resources.
4848
|[Text Editors and IDEs](/text-editors-ides.html) | maintain |
4949
|[Vim](/vim.html) | maintain |
5050
|[Emacs](/emacs.html) | maintain |
51-
|[Sublime Text](/sublime-text.html) | starter |
52-
|[PyCharm](/pycharm.html) | starter |
51+
|[Sublime Text](/sublime-text.html) | maintain |
52+
|[PyCharm](/pycharm.html) | intermediate |
5353
|[Jupyter Notebook](/jupyter-notebook.html) | maintain |
5454
|[Shells](/shells.html) | starter |
5555
|[Bourne-again shell (Bash)](/bourne-again-shell-bash.html) | starter |
@@ -104,7 +104,7 @@ kept up to date with accurate descriptions and resources.
104104
## Chapter 4: Web Development
105105
|Page | Status |
106106
|-----------------------------------------------------------|--------------|
107-
|[Web development](/web-development.html) | starter |
107+
|[Web development](/web-development.html) | intermediate |
108108
|[Web frameworks](/web-frameworks.html) | maintain |
109109
|[Django](/django.html) | intermediate |
110110
|[Flask](/flask.html) | maintain |

theme/templates/article.html

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,15 @@
2121
<link href='https://api.mapbox.com/mapbox-gl-js/v0.44.2/mapbox-gl.css' rel='stylesheet' />
2222
{% endif %}{% endblock %}
2323

24-
{% block banner %}{% include "banner.html" %}{% endblock %}
24+
{% block banner %}
25+
<div style="margin: 0 0 12px;background-color:#22B24C;">
26+
<div class="cn">
27+
<p class="banner sns">
28+
<a href="https://developer.okta.com/" style="color:#fff">Easily secure and authenticate user accounts in your Python web applications with Okta</a>.
29+
</p>
30+
</div>
31+
</div>
32+
{% endblock %}
2533

2634
{% block content %}
2735
{% if article %}

0 commit comments

Comments
 (0)