Skip to content
Navigation Menu
Sign in
Appearance settings
Platform
AI CODE CREATION
GitHub Copilot
Write better code with AI
GitHub Copilot app
Direct agents from issue to merge
MCP Registry
Integrate external tools
DEVELOPER WORKFLOWS
Actions
Automate any workflow
Codespaces
Instant dev environments
Issues
Plan and track work
Code Review
Manage code changes
Code Quality
Enforce quality at merge
APPLICATION SECURITY
GitHub Advanced Security
Find and fix vulnerabilities
Code security
Secure your code as you build
Secret protection
Stop leaks before they start
EXPLORE
Why GitHub
Documentation
Blog
Changelog
Marketplace
View all features
Solutions
BY COMPANY SIZE
Enterprises
Small and medium teams
Startups
Nonprofits
BY USE CASE
App Modernization
DevSecOps
DevOps
CI/CD
View all use cases
BY INDUSTRY
Healthcare
Financial services
Manufacturing
Government
View all industries
View all solutions
Resources
EXPLORE BY TOPIC
AI
Software Development
DevOps
Security
View all topics
EXPLORE BY TYPE
Customer stories
Events & webinars
Ebooks & reports
Business insights
GitHub Skills
SUPPORT & SERVICES
Documentation
Customer support
Community forum
Trust center
Partners
View all resources
Open Source
COMMUNITY
GitHub Sponsors
Fund open source developers
PROGRAMS
Security Lab
Maintainer Community
Accelerator
GitHub Stars
Archive Program
REPOSITORIES
Topics
Trending
Collections
Enterprise
ENTERPRISE SOLUTIONS
Enterprise platform
AI-powered developer platform
AVAILABLE ADD-ONS
GitHub Advanced Security
Enterprise-grade security features
Copilot for Business
Enterprise-grade AI features
Premium Support
Enterprise-grade 24/7 support
Pricing
Search
/
Sign in
Sign up
Appearance settings
You signed in with another tab or window.
Reload
to refresh your session.
You signed out in another tab or window.
Reload
to refresh your session.
You switched accounts on another tab or window.
Reload
to refresh your session.
Dismiss alert
{{ message }}
Uh oh!
There was an error while loading.
Please reload this page
.
dry-python
/
dry-python.github.io
Public
Uh oh!
There was an error while loading.
Please reload this page
.
Notifications
You must be signed in to change notification settings
Fork
5
Star
10
Code
Issues
14
Pull requests
36
Security and quality
0
Insights
Additional navigation options
Code
Issues
Pull requests
Security and quality
Insights
Files
Expand file tree
master
Breadcrumbs
dry-python.github.io
/
static
/
slides
/
Copy path
Directory actions
More options
More options
Directory actions
More options
More options
Latest commit
History
History
History
master
Breadcrumbs
dry-python.github.io
/
static
/
slides
/
Copy path
Top
Folders and files
Name
Name
Last commit message
Last commit date
parent directory
..
0344ddd95d4b944a5a9874cee6d7198f.png
0344ddd95d4b944a5a9874cee6d7198f.png
07fb3115c562bce7922a441f21b2754f.jpg
07fb3115c562bce7922a441f21b2754f.jpg
08efb3c614f6ee7d9d59f11a92d2f814.jpg
08efb3c614f6ee7d9d59f11a92d2f814.jpg
09172fe1c142acb120d0c205f28f435e.png
09172fe1c142acb120d0c205f28f435e.png
0b397181aa5c6d6bf6fd699a445f76fc.png
0b397181aa5c6d6bf6fd699a445f76fc.png
0f97676130bd6321766a03b91159f7b1.jpg
0f97676130bd6321766a03b91159f7b1.jpg
10a5cb40054505a4b3a9c7146c2e4d8b.ttf
10a5cb40054505a4b3a9c7146c2e4d8b.ttf
127ce80f030ec2d257e80f1a89c43991.jpg
127ce80f030ec2d257e80f1a89c43991.jpg
168276df2e045f53abadf41f727a60f2.jpg
168276df2e045f53abadf41f727a60f2.jpg
1918b59f4cd7b5f9debfe2f9d52c9f86.jpg
1918b59f4cd7b5f9debfe2f9d52c9f86.jpg
1b48416ed8e37697b951b58bbab9cb3a.png
1b48416ed8e37697b951b58bbab9cb3a.png
1fa2c566de60b024fde7730f19297048.jpg
1fa2c566de60b024fde7730f19297048.jpg
2112306ed16594557ec48c5aadcb9840.png
2112306ed16594557ec48c5aadcb9840.png
26ac5f08c770e19c35a8ef38b905373f.jpg
26ac5f08c770e19c35a8ef38b905373f.jpg
2bb69726eb46f44c13f8fe7d61f9ed22.jpg
2bb69726eb46f44c13f8fe7d61f9ed22.jpg
32ac1bd3b7b763bd5bd7cafed53254e9.png
32ac1bd3b7b763bd5bd7cafed53254e9.png
3631261faf85567f77566aba22830b8b.jpg
3631261faf85567f77566aba22830b8b.jpg
36443d248c8a75fde2a63bea32a21b21.eot
36443d248c8a75fde2a63bea32a21b21.eot
369e6e115b4d64bf62027bd9af901ef5.png
369e6e115b4d64bf62027bd9af901ef5.png
375eee7619857b2ae37a266f111d9881.png
375eee7619857b2ae37a266f111d9881.png
41a288079292c670fc6adbb991c81b5d.png
41a288079292c670fc6adbb991c81b5d.png
43006fbd632816d1077938b4abe8ddd2.png
43006fbd632816d1077938b4abe8ddd2.png
45c54810910de71280ab04b4c696126c.ttf
45c54810910de71280ab04b4c696126c.ttf
472db6ba450b7d54909f1470c13e7e3b.png
472db6ba450b7d54909f1470c13e7e3b.png
48ac918b7c24e57b443ca4ae9d10aeb9.png
48ac918b7c24e57b443ca4ae9d10aeb9.png
4c677b78d12c96ea7adde99ce24d8172.png
4c677b78d12c96ea7adde99ce24d8172.png
4fe320cc81f30022d7972c3827a86880.png
4fe320cc81f30022d7972c3827a86880.png
522a9ee9b3b2ecbdd3676f3bfb53187d.ttf
522a9ee9b3b2ecbdd3676f3bfb53187d.ttf
5cfa93edc92874b68047f148bc57f04a.png
5cfa93edc92874b68047f148bc57f04a.png
6da03cdae769d81519c820c85ac0c75d.png
6da03cdae769d81519c820c85ac0c75d.png
6ebea875df77b49da05bbaaf85494fac.ttf
6ebea875df77b49da05bbaaf85494fac.ttf
7342db757b86c2aceb1a6b33d4ddce96.jpg
7342db757b86c2aceb1a6b33d4ddce96.jpg
780878b97ae6560d8e554b784eb0c1e0.png
780878b97ae6560d8e554b784eb0c1e0.png
82cf1230be0ad8278fb681b2b8a8893c.jpg
82cf1230be0ad8278fb681b2b8a8893c.jpg
83db537e62224a77933877cf674b6322.eot
83db537e62224a77933877cf674b6322.eot
8414a0e844a1f90c2f79d3c3e89e916b.png
8414a0e844a1f90c2f79d3c3e89e916b.png
8b6d1e4fbfa93a942ff6cbb8a8ac9ad7.png
8b6d1e4fbfa93a942ff6cbb8a8ac9ad7.png
8ef1b2a6453aba2b739fcec3b7d92cfc.jpg
8ef1b2a6453aba2b739fcec3b7d92cfc.jpg
91dd966a98076336787a905a24c4dec2.png
91dd966a98076336787a905a24c4dec2.png
9300477553d4bcce7da193f93a2ebace.png
9300477553d4bcce7da193f93a2ebace.png
97e79d3e28a440c77195d8e4d032d447.eot
97e79d3e28a440c77195d8e4d032d447.eot
983d97ca59e8e24e94c6ae9083408e68.woff
983d97ca59e8e24e94c6ae9083408e68.woff
a43f56accdef4a0b01f0d88ad86cccf4.woff
a43f56accdef4a0b01f0d88ad86cccf4.woff
b1b27de9e7945cf6f93f4bf45556f6eb.png
b1b27de9e7945cf6f93f4bf45556f6eb.png
c52a9db5b7fd8a1a5cc9a819fbcea5c9.jpg
c52a9db5b7fd8a1a5cc9a819fbcea5c9.jpg
c7436da758bca93b26c96ebec943822b.gif
c7436da758bca93b26c96ebec943822b.gif
c783ff4507677d561a1134e96eabee52.png
c783ff4507677d561a1134e96eabee52.png
c86fdc0d1c0abfb93f1263ec8a0a7f09.jpg
c86fdc0d1c0abfb93f1263ec8a0a7f09.jpg
cdb5a8286d2f91cc4960fa5c1a9711c2.jpg
cdb5a8286d2f91cc4960fa5c1a9711c2.jpg
d0c15f16bc8fa693a379a071f1e27eb5.png
d0c15f16bc8fa693a379a071f1e27eb5.png
d16535500d9438afb40931462416cd34.woff
d16535500d9438afb40931462416cd34.woff
d901adc64e26852387684441b0a3688f.png
d901adc64e26852387684441b0a3688f.png
ddd-toolkit-2.html
ddd-toolkit-2.html
ddd-toolkit-3.html
ddd-toolkit-3.html
ddd-toolkit.html
ddd-toolkit.html
de3f947fd066cd3377df0eb5ccbbf393.jpg
de3f947fd066cd3377df0eb5ccbbf393.jpg
e4f51d176293502ca62a354118e81189.jpg
e4f51d176293502ca62a354118e81189.jpg
e8302875a09798293cc3d2c49dcf6fdb.jpg
e8302875a09798293cc3d2c49dcf6fdb.jpg
ea36d933df7211c5a711818f2145d767.png
ea36d933df7211c5a711818f2145d767.png
ebc6682574f1147cb5360827813df21f.jpg
ebc6682574f1147cb5360827813df21f.jpg
ef28087b0403552a5cdf87fa0f38b05a.jpg
ef28087b0403552a5cdf87fa0f38b05a.jpg
f11ba60ae1c65b37e61628cb13c29e14.woff
f11ba60ae1c65b37e61628cb13c29e14.woff
fb03c6601ab6f48952c4364edcae8167.eot
fb03c6601ab6f48952c4364edcae8167.eot
fe2a6f1002015746d4defff9ebec738d.jpg
fe2a6f1002015746d4defff9ebec738d.jpg
ff29acad88e2da075922992e6c969c32.png
ff29acad88e2da075922992e6c969c32.png
introducing-dry-python.html
introducing-dry-python.html
keeping-software-soft.html
keeping-software-soft.html
reveal.css
reveal.css
reveal.css.map
reveal.css.map
reveal.js
reveal.js
reveal.js.map
reveal.js.map
View all files
You can’t perform that action at this time.