TapCoding is an iOS app for learning Apple's Swift programming language. The app takes students through coding basics like variables, strings, and operators before moving into things like functions, objects, and the use of data. Each level is a mix of clear explanations, short quizzes, code block activities, and actually typing code. Unlike other block-based coding tools, TapCoding blocks are actually blocks of Swift code that students have to move around. Typing real code (guided by the app) encourages mastery of the syntax that discourages many novice programmers.
TapCoding isn't really gamified in any way. Other than encouraging users to build a streak of consecutive coding days, the app really just focuses on building coding skills. When solving coding problems, TapCoding gives a couple of opportunities to correct errors and then supplies the correct answer. Though there's no section for hints, the different activities help ensure that concepts are pretty clear. Repeating lessons is always an option to ensure understanding.
Vidcode is a site that aims to get teen girls excited about coding by emphasizing creativity and social media culture and expression. Users can upload their own photos and videos and use pre-made effects to create projects such as stop-motion videos, music videos, memes, and much more, all while learning about the code that makes these things possible. When users create their accounts, they can choose to link their Facebook or Instagram accounts to grab photos and videos to use in their projects.
When students log in, they’ll see two screens in a project: a lesson on the left and a space to input code on the right. Students can experiment with code, and the lesson screen offers hints on how to change the coding to see subtle and dramatic changes occur in the project. Students can then share their projects and videos with their friends or teacher, making the coding experience a social one.
Users begin by watching amusing themed videos with expert lecturers and clear visuals, answer a few multiple-choice questions, and then get started right away on coding challenges. Each challenge gives step-by-step tasks, which users program in an online development environment. During the process, a real-time interpreter displays results of code immediately. For extra help, students can jump back and forth between slides, videos, and the coding environment as needed.
Treehouse is a self-paced learning site for web design, coding, business, and more. Its developers are constantly adding more material but always include beginner, intermediate, and expert help. With over a dozen tracks for learning, each takes from a few hours to a few dozen hours to complete. Examples of tracks include Web Design, Starting a Business, WordPress Development, Android Development, Learn Java, and iOS Development with Swift 2.0. Students can also learn on the go with the free Treehouse app.
Students start each track by watching a series of videos, then take quizzes and try out their new coding knowledge. Badges can be earned for successful completion of skills. The videos are professionally done and are generally short, making it easy to learn in spurts if necessary. The website is intuitive and clearly laid out and contains a forum for help and support from fellow learners. After the seven-day free trial (which requires inputting payment information), users can subscribe to the Basic plan (access all the videos, practice online with the Code Challenge Engine, and participate in the forums) or the Pro plan (access additional talks from industry leaders, see bonus content, and download the videos). Users can cancel or pause their accounts at any time.