Product information
| Name of product | Talk Python Training web platform |
|---|---|
| Product description | A web platform for purchasing and watching self-paced Python programming courses. Includes the course catalog, the video player with captions and transcripts, checkout, student accounts, and usage reporting for team licenses. |
| Version evaluated | Continuously deployed. Evaluated as of 10 August 2026. |
| Report date | 10 August 2026 |
| Vendor | PDX Web Properties, LLC |
| Contact | sales@talkpython.fm |
| Evaluation type | Self-assessment prepared in-house. This is not a third-party audit. |
Scope
Covered by this report: the web platform. The course catalog and course detail pages, the video player including its captions controls, checkout, account management, and team usage reporting.
Not covered by this report:
- The iOS and Android applications. Native accessibility is assessed against a different criteria set and requires device testing. No claim in this document applies to them.
- Downloadable course materials. Slides, PDFs, and source-code bundles distributed with courses have not been evaluated.
- Third-party embedded services. Payment processing is provided by Paddle and bot protection by Cloudflare Turnstile. Where these affect a criterion, the relevant row says so.
Applicable standards
| WCAG | Web Content Accessibility Guidelines 2.2, Level A and Level AA. Level AAA was not evaluated. |
|---|---|
| Revised Section 508 | 36 CFR Part 1194, Appendices A, B and C. |
| EN 301 549 | V3.2.1, accessibility requirements for ICT products and services. |
Conformance terms
| Supports | The functionality meets the criterion without known defects. |
|---|---|
| Partially Supports | Some functionality meets the criterion. |
| Does Not Support | The majority of the functionality does not meet the criterion. |
| Not Applicable | The criterion is not relevant to this product. |
| Not Evaluated | The criterion has not been assessed. It is reported as such rather than assumed, so that no claim in this report rests on untested ground. See the evaluation roadmap. |
Evaluation methods
Automated testing. axe-core driven through Playwright against Chromium, run against the production codebase. The rule set was restricted to the normative tags for this report: WCAG 2.0 through 2.2 at Level A and AA, Section 508, and EN 301 549. Advisory best-practice rules were excluded so that results map only to normative criteria.
Pages exercised: home, course catalog, pricing policy, terms of service, privacy policy, team licensing, team evaluation, comparison page, sign in, register, student account, and the video player playing a lecture as a signed-in student.
Keyboard focus testing. Every focusable element on each page was focused and its computed style compared before and after, to identify controls that receive focus without indicating it. The method is deterministic and repeatable.
Manual code review. Template markup was inspected directly for table semantics, form labeling, and ARIA usage.
The test harness is maintained in the product codebase and is re-runnable, so this report is regenerated from evidence as the platform changes.
Limits of the testing performed
Automated tools detect a subset of accessibility barriers. The following were not covered by the methods above, and criteria depending on them are reported as Not Evaluated:
- Screen reader testing with NVDA, JAWS, or VoiceOver.
- Sequential tab order and keyboard traps. The focus testing above establishes whether focus is visible, not whether its order is meaningful.
- Approximately 200 color-contrast comparisons that could not be resolved automatically, predominantly text over gradients, photographs, or video.
- Responsive and mobile-viewport behavior, including reflow at a 320 pixel width.
- Team usage reporting, which requires an account administering a company. Assessed from markup review only.
WCAG 2.2 Level A
| Criterion | Conformance | Remarks |
|---|---|---|
| 1.1.1 Non-text Content | Supports | Automated testing found no missing or empty alternative text across the pages exercised. Decorative icons carry aria-hidden. |
| 1.2.1 Audio-only and Video-only (Prerecorded) | Partially Supports | Course video carries narration and is not video-only. Full text transcripts are published for every lecture. No audio-only content is published. |
| 1.2.2 Captions (Prerecorded) | Supports | Every course lecture ships with captions. Captions are available in multiple languages, with size and screen position adjustable by the viewer. |
| 1.2.3 Audio Description or Media Alternative (Prerecorded) | Partially Supports | A full text transcript is published for every lecture, satisfying the media-alternative path. No separate audio description track is provided. See 1.2.5. |
| 1.3.1 Info and Relationships | Supports | Automated testing found no structural violations. Data tables in team reporting were confirmed by code inspection to use header cells with scope attributes. |
| 1.3.2 Meaningful Sequence | Not Evaluated | Requires reading-order verification with a screen reader. |
| 1.3.3 Sensory Characteristics | Not Evaluated | Requires manual review of instructional content. |
| 1.4.1 Use of Color | Supports | Links within blocks of prose are underlined. Status indicators in team reporting carry text labels alongside color, and progress bars are accompanied by a numeric percentage. |
| 1.4.2 Audio Control | Not Evaluated | Requires manual confirmation that no audio plays automatically for three or more seconds on load. |
| 2.1.1 Keyboard | Partially Supports | The player provides keyboard shortcuts for play, seek, mute, fullscreen, caption toggle, caption position, and moving between lectures. Full keyboard operability of every control has not been verified. |
| 2.1.2 No Keyboard Trap | Not Evaluated | Requires sequential keyboard navigation by a human tester. |
| 2.1.4 Character Key Shortcuts | Partially Supports | The player binds single-character shortcuts with no documented mechanism to remap or disable them. The criterion requires that such shortcuts can be turned off, remapped, or are active only on focus. |
| 2.2.1 Timing Adjustable | Not Evaluated | Requires review of session timeout behavior. |
| 2.2.2 Pause, Stop, Hide | Not Evaluated | The home page carries a looping background video. Whether a pause mechanism is required and present has not been confirmed. |
| 2.3.1 Three Flashes or Below Threshold | Supports | No flashing content is used in the interface. Course video is screencast and presenter material with no strobing effects. |
| 2.4.1 Bypass Blocks | Not Evaluated | Presence and behavior of a skip-to-content mechanism has not been confirmed across the platform. |
| 2.4.2 Page Titled | Supports | Automated testing found a descriptive title on every page exercised. |
| 2.4.3 Focus Order | Not Evaluated | The focus testing performed establishes whether focus is visible, not whether its order is meaningful. |
| 2.4.4 Link Purpose (In Context) | Supports | Automated testing found no links lacking an accessible name. |
| 2.5.1 Pointer Gestures | Supports | No multipoint or path-based gestures are required. The caption size control provides single-activation alternatives on either side of the slider. |
| 2.5.2 Pointer Cancellation | Not Evaluated | Requires manual review of pointer event handling in the player. |
| 2.5.3 Label in Name | Not Evaluated | Requires comparison of visible labels against accessible names. |
| 2.5.4 Motion Actuation | Not Applicable | No functionality is operated by device motion. |
| 3.1.1 Language of Page | Supports | Every page declares a language. Automated testing found no violations. |
| 3.2.1 On Focus | Not Evaluated | Requires manual verification that focusing a control causes no change of context. |
| 3.2.2 On Input | Not Evaluated | Requires manual verification across forms. |
| 3.2.6 Consistent Help | Not Evaluated | Requires review of where help and contact mechanisms appear across pages. |
| 3.3.1 Error Identification | Not Evaluated | Requires exercising form validation on sign in, registration, and checkout. |
| 3.3.2 Labels or Instructions | Supports | Automated testing found no unlabeled form controls across the pages exercised. |
| 3.3.7 Redundant Entry | Not Evaluated | Requires review of the checkout and registration flows. |
| 4.1.2 Name, Role, Value | Supports | Automated testing found no violations across the pages exercised, including the video player and its captions controls. |
WCAG 2.2 Level AA
| Criterion | Conformance | Remarks |
|---|---|---|
| 1.2.4 Captions (Live) | Not Applicable | No live content is offered on this platform. |
| 1.2.5 Audio Description (Prerecorded) | Does Not Support | No audio description track is provided for course video. Courses are screencast-based programming instruction in which the narration describes on-screen action as it occurs, and complete text transcripts are published for every lecture. These do not substitute for audio description, and the criterion is not met. |
| 1.3.4 Orientation | Not Evaluated | Requires testing in both orientations on a device. |
| 1.3.5 Identify Input Purpose | Not Evaluated | Requires review of autocomplete attributes on account and checkout forms. |
| 1.4.3 Contrast (Minimum) | Partially Supports | All contrast failures identified by automated testing have been corrected, including the site footer, catalog filter controls, the primary action button, brand link color, and video player chrome. Approximately 200 further comparisons could not be resolved automatically, predominantly text over gradients, photographs, or video, and have not been individually assessed. |
| 1.4.4 Resize Text | Not Evaluated | Requires testing at 200 percent zoom. |
| 1.4.5 Images of Text | Not Evaluated | Requires review of marketing imagery and course artwork. |
| 1.4.10 Reflow | Not Evaluated | Requires testing at a 320 pixel viewport width. Wide comparison and reporting tables are the primary areas of concern. |
| 1.4.11 Non-text Contrast | Not Evaluated | Applies to control boundaries, focus indicators, and graphical objects such as progress bars in team reporting. |
| 1.4.12 Text Spacing | Not Evaluated | Requires applying the specified spacing overrides and checking for clipping or overlap. |
| 1.4.13 Content on Hover or Focus | Not Evaluated | Applies to the captions popover and navigation dropdowns. |
| 2.4.5 Multiple Ways | Supports | Content is reachable through global navigation, a filterable catalog, site search, and a sitemap. |
| 2.4.6 Headings and Labels | Supports | Automated testing found no heading-order violations and no unlabeled controls across the pages exercised. |
| 2.4.7 Focus Visible | Partially Supports | A platform-wide keyboard focus indicator is implemented and applies to links, buttons, form controls, and video player controls. One control on the team evaluation page is known not to display it. |
| 2.4.11 Focus Not Obscured (Minimum) | Not Evaluated | The platform uses a fixed navigation bar, which is the common cause of failure for this criterion. |
| 2.5.7 Dragging Movements | Not Evaluated | Applies to the caption size and volume sliders. Both appear to offer non-dragging alternatives, which has not been confirmed. |
| 2.5.8 Target Size (Minimum) | Not Evaluated | Video player control bar targets are approximately 20 pixels against a 24 pixel minimum, and are expected not to meet this criterion. |
| 3.1.2 Language of Parts | Not Evaluated | Relevant because captions are offered in several languages. Whether language changes are marked up has not been confirmed. |
| 3.2.3 Consistent Navigation | Supports | Global navigation is rendered from shared layouts and is consistent in order and placement. |
| 3.2.4 Consistent Identification | Supports | Components with the same function carry consistent labels and iconography. |
| 3.3.3 Error Suggestion | Not Evaluated | Requires exercising form validation. |
| 3.3.4 Error Prevention (Legal, Financial, Data) | Not Evaluated | Applies to checkout, which is operated by Paddle as merchant of record. |
| 3.3.8 Accessible Authentication (Minimum) | Not Evaluated | Sign in and registration are protected by Cloudflare Turnstile. Whether this constitutes a cognitive function test under the criterion has not been established. |
| 4.1.3 Status Messages | Not Evaluated | Requires review of whether dynamic updates are announced to assistive technology. |
Revised Section 508 report
Chapter 3: Functional Performance Criteria
| Criterion | Conformance | Remarks |
|---|---|---|
| 302.1 Without Vision | Not Evaluated | Requires screen reader testing. |
| 302.2 With Limited Vision | Partially Supports | Identified contrast failures have been corrected and a focus indicator is implemented. Zoom, reflow, and the unresolved contrast comparisons remain unassessed. |
| 302.3 Without Perception of Color | Supports | Color is not the sole means of conveying information. Prose links are underlined and status indicators carry text labels. |
| 302.4 Without Hearing | Supports | Captions are provided for all course video, in multiple languages, and full transcripts are published for every lecture. |
| 302.5 With Limited Hearing | Supports | Captions, transcripts, and independent volume control are available. |
| 302.6 Without Speech | Not Applicable | No functionality requires speech input. |
| 302.7 With Limited Manipulation | Partially Supports | Keyboard operation is available and player shortcuts reduce reliance on precise pointing. Target sizes in the player control bar and full keyboard operability are unverified. |
| 302.8 With Limited Reach and Strength | Partially Supports | As 302.7. |
| 302.9 With Limited Language, Cognitive, and Learning Abilities | Not Evaluated | Not covered by the methods used. |
Chapter 4: Hardware
Not Applicable. This is a web platform. No hardware is supplied.
Chapter 5: Software
Largely not applicable. The product is delivered through the user's own web browser and is not installed software. It provides no platform accessibility services of its own and does not interfere with the accessibility features of the operating system or browser. Where software criteria map to web content, the WCAG tables above apply. The mobile applications, which would fall under this chapter, are outside the scope of this report.
Chapter 6: Support Documentation and Services
| Criterion | Conformance | Remarks |
|---|---|---|
| 602.2 Accessibility and Compatibility Features | Supports | This report documents accessibility features and is published at a public URL rather than supplied on request. |
| 602.3 Electronic Support Documentation | Partially Supports | Support documentation is delivered as web pages covered by this report. Downloadable course materials are outside its scope. |
| 602.4 Alternate Formats for Non-Electronic Support Documentation | Not Applicable | No non-electronic documentation is provided. |
| 603.2 Information on Accessibility and Compatibility Features | Supports | Accessibility questions are answered through the published support channel. |
| 603.3 Accommodation of Communication Needs | Supports | Support is provided by email, accommodating users who cannot use voice communication. |
EN 301 549 report
| Chapter | Conformance | Remarks |
|---|---|---|
| 4. Functional performance | See remarks | Maps to the Section 508 Chapter 3 table above. |
| 5. Generic requirements | Partially Supports | Caption language, size, and position preferences persist per user account, addressing activation and preservation of accessibility settings. |
| 6. ICT with two-way voice communication | Not Applicable | No two-way voice functionality. |
| 7. ICT with video capabilities | Partially Supports | Caption playback and synchronization are supported, with user control over caption size and position. Audio description playback is not supported, consistent with WCAG 1.2.5. |
| 8. Hardware | Not Applicable | No hardware supplied. |
| 9. Web | Partially Supports | Maps to the WCAG 2.2 Level A and AA tables above. |
| 10. Non-web documents | Not Evaluated | Downloadable course materials are outside the scope of this report. |
| 11. Software | Not Applicable | Delivered through the user's browser. Mobile applications are outside the scope of this report. |
| 12. Documentation and support services | Supports | Maps to Section 508 Chapter 6 above. |
| 13. ICT providing relay or emergency service access | Not Applicable | No relay or emergency functionality. |
Evaluation roadmap
The following assessments are planned, and this report will be revised as each is completed. They are listed in the order they are being addressed.
- Assistive technology testing with NVDA, JAWS, and VoiceOver, which resolves 302.1, 1.3.2, 4.1.3, and related criteria.
- Accessible Authentication (3.3.8), establishing whether the bot-protection mechanism on sign in constitutes a cognitive function test.
- Individual assessment of the unresolved contrast comparisons, which is required before 1.4.3 can move beyond Partially Supports.
- Keyboard tab order and trap testing (2.4.3, 2.1.2), beginning with the captions popover.
- The outstanding focus indicator on the team evaluation page (2.4.7).
- Reflow, zoom, and text spacing (1.4.10, 1.4.4, 1.4.12).
- Target size in the video player control bar (2.5.8).
- Configurable or disableable single-character shortcuts (2.1.4).
Accessibility feedback
If you encounter an accessibility barrier using this platform, or need information in an alternative format, contact sales@talkpython.fm. Reports of specific barriers are prioritized over the roadmap above.
Disclaimer
This report describes the accessibility of the product as evaluated on the date shown. It is a self-assessment prepared in-house and is not a third-party audit or a certification. Its contents are provided for information purposes and do not constitute a warranty. Conformance claims apply only within the scope described above.