Transforming teachers into coding instructors.

To teach code, you have to learn code.

Imagine a teacher running a math class without knowing math, or a language arts teacher who cannot speak the language. Teachers are at the heart of learning, but they can only effectively guide students when equipped with mastery of the subject matter.

Our Teacher Coding Bootcamps provide teachers with the depth of knowledge and strong coding fluency they need to instruct computer science curriculum with fidelity and rigor. Only then can they have self-efficacy and confidence in their ability to teach computer science.

Any teacher can teach computer science.

Our Bootcamps are rigorous professional development courses in computer science, taught by master trainers via an in-person cohort model. By mastering the curriculum they’ll be teaching, any teacher of any level can gain the knowledge and skills they need to teach computer science.

Building a sustainable teaching capacity.

Our Bootcamps help districts build a sustainable and scalable computer science teaching capacity, like they have in the other core subjects. Rather than relying on a few specialist computer science teachers, districts will have the teaching competency to grow, adapt, and move their computer science programs forward.

Our warranty: guaranteeing capacity.

If a teacher who has completed a Coding Bootcamp leaves the district or is unable or unwilling to teach the computer science class they were trained for during the next school year, then during that year the district can send a replacement teacher to a scheduled Coding Bootcamp at another location at no additional cost.

The best way for teachers to learn.

Master Trainers

Every Bootcamp is taught in-person by a TechSmart Master Trainer. They’re not only experts with computer science degrees, but experts on how to teach computer science. They have the empathy and communication to guide a classroom full of teachers of all coding skill levels together.

Cohort Model

Teachers attend Coding Bootcamps as a cohort group, in accordance with best practices for professional development. The group setting enables teachers as lifelong learners of various backgrounds to support one another and share invaluable feedback as they progress through a common experience. After they graduate, it also forms the basis for a professional learning community.

On-site, on your schedule.

Our Master Trainers will come to your district for Teacher Coding Bootcamps, on a custom schedule that works for you. Bootcamps can be scheduled during the summer or the school year, grouped together or spread out over months.

Learning the content, and how to teach it.

Computer Science & Coding

There’s a Coding Bootcamp for every course in the TechSmart Curriculum. Teachers will build strong coding skills and a depth of computer science knowledge while mastering all the material needed to instruct that course.

Coding Pedagogy

Teachers learn best practices and techniques for delivering computer science instruction. Trainers walk teachers through each step of the pedagogy, modeling and demonstrating it, before the teachers step to the front of the classroom in mock teaching practicums.

Coding Bootcamp Outcomes

Qualification to Teach CS

Teachers are fully prepared to teach their computer science course. They have mastered all the content, tools, and pedagogy they will need.

Depth of Knowledge

Beyond learning the content for a single course, teachers have developed a coding fluency and built a strong depth of knowledge in computer science.

Confidence & Self-Efficacy

Teachers will become confident in their ability to deliver top-quality computer science instruction, comfortable with choosing the right tools and strategies.

Coding Competency Certification

At the end of each Coding Bootcamp, teachers receive a Coding Competency Certification, proving their mastery of the subject matter.

Coding Bootcamp Courses

Elementary SchoolMiddle SchoolHigh School

CST10: Coding in Skylark 1

Scope
  • 7 days of professional development
  • 60 hours of continuing education credits
Course Description

The first course in the Skylark bootcamp curriculum prepares educators to teach the fundamentals of coding in the Skylark language. It covers the event-based structure of the Skylark language and the frame-based animation model common to most programming languages, along with core coding concepts such as variables, text input and output, conditionals, and mouse and keyboard input. In addition, teachers also learn to use the TechSmart platform, tools, and pedagogy style, and practice mock-teaching with peers in their cohort for direct, immediate feedback and knowledge-sharing.

Outcomes
  • Write programs that make computers follow instructions
  • Create animations that move characters around on screen
  • Precisely time and control character movement
  • Process text-based information from the user
  • Write code that makes decisions, choosing between multiple options
  • Specify position on-screen based on coordinates
  • Write code that reacts to input from the mouse and keyboard
Language:

CST20: Coding in Skylark 2

Scope
  • 5 days of professional development
  • 40 hours of continuing education credits
Course Description

The second Skylark course continues from the first, introducing more advanced coding topics to round out the Skylark language. Teachers learn to instruct students on higher-level coding structures and concepts such as loops, lists, and boolean logic.

Outcomes
  • Combine decision-making questions to create complex logical statements
  • Write code that reacts to when characters collide on-screen
  • Store multiple pieces of data in a single collection (list)
  • Use loops to repeat code
  • Use loops to process data stored in lists
  • Create new copies of program elements dynamically as the code runs
  • Students write text to screen in a special drawing section of the code
Language:

CST30: Transition to Python 1

Scope
  • 5 days of professional development
  • 40 hours of continuing education credits
Course Description

The second half of the Skylark curriculum begins to introduce text-based Python code, and prepares teachers to guide their students through the transition from drag-and-drop block-based coding to typed lined-based code. Teachers cover fundamental concepts and skills from Python and other high-level languages such as the main program, commenting code, and writing and debugging precise syntax.

Outcomes
  • Structure code as a single program, rather than a series of instructions to individual characters
  • Replace many simple block combinations with typed Python code
  • Reinforce knowledge of coding structures from previous courses
  • Draw custom shapes based on screen positions
Language:

 

CST40: Transition to Python 2

Scope
  • 5 days of professional development
  • 40 hours of continuing education credits
Course Description

This bootcamp completes the Skylark section of the curriculum, familiarizing teachers with the necessary Python syntax to help their students fully transition into line-based coding. The course covers the details of Python syntax and organization, including accessing object fields and methods, organizing code into main and event loops, and using the event loop to intercept mouse and keyboard input.

Outcomes
  • Replace all simple blocks with typed Python code
  • Move code out of individual groups based on purpose (events) and construct a single large program with standard Python code organization
  • Write code that reacts to outside occurrences (such as mouse and keyboard input) in a more Python-like fashion
Language:

CST101: Coding in Python 1

Scope
  • 9 days of professional development
  • 75 hours of continuing education credits
Course Description

This bootcamp prepares educators to teach the basics of Python. It uses a ground-up approach that assumes no previous knowledge, starting from the basics of text-based input and output and covering the fundamental structures of programming such as conditionals and loops. This course also provides instruction on simple procedural graphics and mouse and keyboard input, giving teachers tools to help their students express themselves through code. In addition, teachers also learn to use the TechSmart platform, tools, and pedagogy style, and practice mock-teaching with peers in their cohort for direct, immediate feedback and knowledge-sharing.

Outcomes
  • Write programs that make computers follow instructions
  • Write code that makes decisions, choosing between multiple options
  • Write code that loops, repeating instructions until certain outcomes are reached
  • Pull in outside libraries that increase the capabilities of their programs
  • Create code that opens windows on a computer and draw graphics with shapes and colors
  • Animate shapes using traditional frame-based animation techniques
  • Interpret signals from the mouse and keyboard to control their programs
Language:

CST102: Coding in Python 2

Scope
  • 5 days of professional development
  • 40 hours of continuing education credits
Course Description

The second course in the Python bootcamp rounds out teacher’s knowledge of CS coding fundamentals. Teachers begin to learn data structures, such as lists, as well as more complex code organization in the form of functions. The CST101 and CST102 bootcamps together prepare teachers to cover an entire year of basic Python coding.

Outcomes
  • Store and organize multiple items at once using a list data structure
  • Analyze and manipulate lists with looping code
  • Create code image objects from .jpg and .png images
  • Load animations from a sheet of frame images
  • Analyze when two image objects are colliding on screen and write code that reacts to it
  • Organize their code to be more efficient and useful
  • Use functions to write multiple sections of code that communicate with each other
Language:

CST201: Coding in Python 1

Scope
  • 9 days of professional development
  • 75 hours of continuing education credits
Course Description

This bootcamp prepares educators to teach the basics of Python. It uses a ground-up approach that assumes no previous knowledge, starting from the basics of text-based input and output and covering the fundamental structures of programming such as conditionals and loops. This course also provides instruction on simple procedural graphics and mouse and keyboard input, giving teachers tools to help their students express themselves through code. In addition, teachers also learn to use the TechSmart platform, tools, and pedagogy style, and practice mock-teaching with peers in their cohort for direct, immediate feedback and knowledge-sharing.

Outcomes
  • Write programs that make computers follow instructions
  • Write code that makes decisions, choosing between multiple options
  • Write code that loops, repeating instructions until certain outcomes are reached
  • Pull in outside libraries that increase the capabilities of their programs
  • Create code that opens windows on a computer and draw graphics with shapes and colors
  • Animate shapes using traditional frame-based animation techniques
  • Interpret signals from the mouse and keyboard to control their programs
Language:

CST202: Coding in Python 2

Scope
  • 5 days of professional development
  • 40 hours of continuing education credits
Course Description

The second course in the Python bootcamp rounds out teacher’s knowledge of CS coding fundamentals. Teachers begin to learn data structures, such as lists, as well as more complex code organization in the form of functions. The CST201 and CST202 bootcamps together prepare teachers to cover an entire year of basic Python coding.

Outcomes
  • Store and organize multiple items at once using a list data structure
  • Analyze and manipulate lists with looping code
  • Create code image objects from .jpg and .png images
  • Load animations from a sheet of frame images
  • Analyze when two image objects are colliding on screen and write code that reacts to it
  • Organize their code to be more efficient and useful
  • Use functions to write multiple sections of code that communicate with each other
Language:

CST203: Coding in Python 3

Scope
  • 5 days of professional development
  • 40 hours of continuing education credits
Course Description

The second half of the Python bootcamp curriculum begins to cover more advanced CS topics in more depth compared to previous courses. Teachers cover new, complex data structures such as dictionaries and multi-dimensional lists, and learn an extensive set of coding tools around graphics, sound, and data storage designed to help their students make advanced, polished visual programs.

Outcomes
  • Organize data in relation to each other with dictionaries
  • Approximate real-world objects by storing groups of data together
  • Combine multiple levels of lists to create grid-based programs
  • Play sound files in programs
  • Use fonts in programs to position and draw text on screen
  • Store data outside programs in a Python-like format
Language:

CST204: Coding in Python 4

Scope
  • 5 days of professional development
  • 40 hours of continuing education credits
Course Description

The final course in the Python bootcamp curriculum completes the coverage of Python coding. Teachers cover the remaining structural elements of object-oriented coding that will prepare their students for advanced CS topics in Java. These include include classes -- the fundamental building block of object-orientation -- as well as more general file-based input and output systems.

Outcomes
  • Organize data to approximate real-world objects in a professional format
  • Write code with an understanding of how it will be used by other coders
  • Determine the necessary access and privacy levels for their public code
  • Build on and expand the work of other coders as a starting point for their programs
  • Read in and manipulate arbitrary text data from outside files
  • Protect code from erroneous input and outside code by creating and manipulating system error messages
Language:

CS301: Coding in Java 1

Scope
  • 14 days of professional development
  • 110 hours of continuing education credits
Course Description

The first Java coding bootcamp uses a ground-up approach to teach the fundamentals of the Java coding language, even to educators with no previous coding experience. The course covers the breadth of syntax and structure knowledge necessary to help teachers get their students writing complete Java programs, including basic text input and output, Java data types, boolean logic, and fundamental coding structures such as conditionals, loops, arrays, methods, and objects. In addition, teachers also learn to use the TechSmart platform, tools, and pedagogy style, and practice mock-teaching with peers in their cohort for direct, immediate feedback and knowledge-sharing.

Outcomes
  • Write code that gives the computer instructions using Java symbols and structures
  • Perform mathematical calculations with coding
  • Read in and process outside information, both text and hardware (mouse and keyboard)
  • Write code that makes decisions, choosing between given options
  • Write code that loops, repeating sections of the program either a set number of times or until a given condition is met
  • Manipulate data that is stored in related groups such as lists and objects
  • Animate images using traditional frame-based animation techniques
  • Play sounds in programs
  • Combine structures, such as arrays, to make more complex structures, such as grids
  • Organize code into common Java structures to make it more efficient
Language:

CST401: Advanced Coding in Java

Scope
  • 10 days of professional development
  • 90 hours of continuing education credits
Course Description

The second Java course provides teachers with advanced, detailed knowledge in the Java language, especially topics dealing with classes, as well as the fundamental mathematical thinking that underlies all programming languages. Teachers will cover non-decimal bases and their importance to various areas of coding, as well as common sorting and searching algorithms and how to compare them.

Outcomes
  • Organize their code into professional structures such as objects / classes
  • Learn about “object-oriented design” -- thinking of code in terms of real-world objects and categories of objects
  • Manipulate code objects to control the way they interface with other Java code
  • Learn about how their code may interface with others coders’ programs
  • Extend and customize both their own code objects and those written by others
  • Understand the unique mathematical formats commonly used in coding
  • Understand traditional searching and sorting techniques
  • Evaluate and compare traditional algorithms for speed and efficiency
  • Use advanced techniques for handling mouse and keyboard input
Language:

Take the first step.

Let’s talk about how we can help.