Python 3.6.2 Updates, AI Ethics, & Career Trends
Code Best Practices and Tools
Python Docstrings vs. Comments
Discussion on the abstract syntax tree performance implications of using triple-quote strings as comments versus standard hash (#) comments.
• Hash comments are preferred for developer communication as they do not appear in the final bytecode.
• Docstrings are intended for documentation and are stored in the __doc__ dunder property.
The 'Arrange-Act-Assert' Pattern
An efficient way to structure test cases to improve readability and reliability:
• Arrange: Setup prerequisites
• Act: Execute the logic being tested
• Assert: Validate results
"I find when I follow up my code, my tests are more focused and they're not less rambly."
Python 3.6.2 and Ecosystem Updates
• Critical Security Fixes: Version 3.6.2 addresses multiple vulnerabilities, including integer overflows and environment variable injection.
• Build Improvements: Significant improvements for Windows, including the transition to msbuild.exe for better reliability.
• Open Source Inclusion: The Imposter Syndrome Disclaimer is introduced as a tool to encourage more diverse contributions to open-source projects.
The Future of AI and Programming Trends
The 'Dark Secret' of AI
We explore the challenges of deep learning models that operate via mechanisms their creators do not fully comprehend.
• Explainability Challenges: The difficulty of debugging non-deterministic AI decisions.
• Moral Implications: The upcoming legal debates in the EU regarding the 'right to an explanation' for machine-derived decisions.
Developer Language Migration
Analysis of GitHub data regarding language stability and attractiveness:
• Python ranks as the most 'attractive' and stable language, with developers being the least likely to migrate away from it.
• High migration rates from languages like Fortran, MATLAB, and R toward Python for statistical work.