Touch-Based Interactive Learning Environment for Programming

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Students face challenges in learning computer programming due to the delay between writing, compiling, and executing code, which can be frustrating and inefficient, especially when using touch-based devices that require intuitive and immediate feedback.

Innovation Solution

A touch-based, interactive learning environment is provided, where users can input code on a touch-sensitive surface, receive real-time feedback, and interact with suggested code segments through intuitive gestures, allowing for immediate modification and execution of software code without the need for physical keyboards or mice.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If students use traditional coding methods with physical keyboards and desktop computers, then they can write and execute code, but they experience delay between writing, compiling, and executing code which reduces learning efficiency

Engineering Contradiction:
Improvelearning efficiencyVSAvoiddelay between writing and executing code
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent replaces the mechanical keyboard input system with a touch-sensitive display interface. Students interact with code directly by touching the screen to select, insert, and modify code segments, eliminating the mechanical typing process and enabling immediate interaction with the coding environment.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The system provides pre-written code segments that students can select and insert with a single touch gesture. This copying mechanism allows students to quickly assemble code without manually typing each character, significantly reducing the time between writing and executing code.

Inventive Principle:
Principle #26Copying

2Ease of operation

If students use touch-based devices for programming, then they gain portability and ease of use, but they face challenges in intuitively writing programming constructs using touch gestures

Engineering Contradiction:
Improveease of useVSAvoidcomplexity of writing programming constructs
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The system automatically generates and presents suggested code segments based on the student's current input or context. The device serves itself by providing intelligent completions and recommendations, reducing the cognitive load and complexity of writing programming constructs from scratch.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent introduces an intermediary layer between the student's touch input and the final code. The system acts as a mediator that translates simple touch gestures and partial inputs into complete, syntactically correct code segments, simplifying the programming process for touch-based interaction.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If the system provides suggested code segments, then students can quickly assemble code, but the suggested segments may exceed display length requiring truncation

Engineering Contradiction:
Improvecode assembly speedVSAvoiddisplay area
Core Design Contradiction:
ProductivityVSArea of stationary object

Solution Approach 1:

The patent divides long code segments into smaller, manageable portions that can be displayed within the available screen space. The system segments the code visually while maintaining the ability to provide the complete code upon selection, resolving the conflict between providing comprehensive code suggestions and fitting them within limited display area.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11556242B2Touch-based interactive learning environment
Publication Date: 2023.01.17 APPLE INC
  • US11556242B2 patent drawing
  • US11556242B2 patent drawing
  • US11556242B2 patent drawing

AI summary

In an example method, a device presents a user interface on a touch sensitive surface of the device. The user interface includes a first portion for displaying a sequence of code and a second portion for displaying suggested segments of code. The device receives one or more character inputs in the first portion of the user interface, and determines, based on the one or more character inputs, one or more suggested segments of code. The device presents the one or more suggested segments of code in the second portion of the user interface, and receives a touch input selecting a particular suggested segment of code. The device inserts the selected suggested segment of code into the first portion of the user interface.