Learn how to code for kids
兒童程式這樣學,6 階段讓孩子愛上 Coding! 程式語言 (178371) - Cool3c
Scratch? Python? C? Kernighan on Languages for Kids Coding - Computerphile - YouTube
Learn today, build a brighter tomorrow. | Code.org
Code.org - Learn Computer Science where President Obama learned JavaScript programming
CodeMonkey
Computer Science Unplugged Teach CS without computer
Kids Learning Skills and Being Awesome. - DIY
Character Lab
Kojo Home Logo, Music, Graph, Graphics with Scala
GitHub Classroom
Your Career in Web Development Starts Here | The Odin Project
12 Playful Ways to Learn How to Code
Mitch Resnick: Let's teach kids to code - YouTube
Teach Computer Science & Coding to Kids - CS First with Scratch 3
Start with Code – Google
Three ways to get started with computer science and computational thinking
Official Google Australia Blog: CS + X: What's your X?
Python in Education
Computer Science - YouTube CrashCourse
Learn to Code for Free – Grasshopper JavaScript
mytechnotalent/Python-For-Kids: A comprehensive and FREE Online Python Development tutorial FOR KIDS utilizing an official BBC micro:bit Development Board going step-by-step into the world of Python for microcontrollers.
Python for Kids - YouTube
Machine Learning for Kids
Coding for kids: Art, games, and animations with our new beginners' Python path - Raspberry Pi
Raspberry Pi Projects
Code Club | Raspberry Pi Projects
Introduction to Python: Variables, functions, and loops | Raspberry Pi Projects
Scratch Machine Learning | Raspberry Pi Projects
Raspberry Pi Tutorials - YouTube
5 Exciting Activities for Kids to Learn Coding on a Raspberry Pi
Practical advice for teaching kids how to program | Opensource.com
Linda Liukas: A delightful way to teach kids about computers | TED Talk | TED.com
The EduBlocks Project for Python
Learn Python programming the easy way with EduBlocks | Opensource.com
GP Blocks
start [GP Docs]
Going from Scratch to GP (www.gpblocks.org) – Cymplecy (Simplesi)
Code Shrew Python like language
Code Shrew paper
Situating Constructionism
Coding for Kids-A Guide for Teachers and Parents | Udemy
Hour of Code
Go eLearning - 一小時學習編程網站
Hour of Code Hong Kong 一小時編程香港 (2022)
Hour of Code | Khan Academy
Learning programming on Khan Academy (article) | Khan Academy
Visualizing Code
Bogdan-Lyashenko/js-code-to-svg-flowchart: js2flowchart - a visualization library to convert any JavaScript code into beautiful SVG flowchart. Learn other’s code. Design your code. Refactor code. Document code. Explain code.
Live code editor
code2flow - online interactive code to flowchart converter
Flowgorithm - Flowchart Programming Language
Math Inspector - A visual programming environment for scientific computing with numpy and scipy
App Inventor
Setting Up App Inventor | Explore MIT App Inventor
Machine Learning
Teachable Machine web-based tool that makes creating machine learning models fast, easy, and accessible to everyone
Scratch
Scratch - Imagine, Program, Share, write code with blocks
Scratch - Ideas
Scratch - Explore
TurboWarp - Run Scratch projects faster
Projects | Computer coding for kids and teens | Raspberry Pi
Scratch Coding Cards PDF
Scratch API - Scratch Wiki
Invent with Scratch book, ❗!important
Scratch - Tuts+ Code Category
Creative Computing
Scratch Wiki
Blocks - Scratch Wiki
Modules – Code Club
What's new in Scratch 3.0, a programming language designed for kids
Computer Science Concepts in Scratch | Scratch
Scratch is a big deal | Bryan Braun - Frontend Developer
ScratchJr - Home age 5-7
Scratch Day for Younger Children – Scratch Foundation Blog – Medium
scratchnative/scratchnative: Convert Scratch3 projects to native executables
Scratch Can Even Do Linux Kernel
Scratch Basics - YouTube
Scratch Blocks in 60 Seconds - YouTube
Scratch Programming - YouTube
Scratch Game Programming for Young Adults | Udemy
進學國小資訊組 - Scratch 線上版課程教案整理
Froggy Volley on Scratch
ScratchX Experimental Extensions to Scratch
micro:bit, Ardiono, ...
Scratch 3.0 + micro:bit (first review) - YouTube
mBot 教學(2)-mBlock 積木式程式設計 Scratch 2
phosphorus Compile Scratch project to HTML
scratchblocks/scratch-diff: Compare Scratch projects and scripts. Returns a structural diff (tree). JS/Node.
Scratch Blocks UI - Developers which is actually a combination of Blockly and Scratch
LLK/scratch-blocks: Scratch Blocks is a library for building creative computing interfaces.
Blockly | Google Developers
Blockly Games
Snap! (Build Your Own Blocks)
Snap! 9.0.7
Snap! (programming language) - Scratch Wiki
Extensions
scratch-vm/extensions.md at develop · LLK/scratch-vm
Makeblock Extension(s) for Scratch 3.0 - mBlock / mBlock Extensions - Makeblock Forum
20. Kittenblock 插件开发指南 -- 01 — kittenbot docs 文档
21. Kittenblock 插件开发指南 -- 02 — kittenbot docs 文档
Physical Programming with Blocks
Arduino Create
Arduino Bricks » Linux Magazine
Rete.js
retejs/rete: JavaScript framework for visual programming and creating node editor
国内主流 Arduino 图形化编程软件专业评测 - 知乎
Alternative Arduino Interfaces - learn.sparkfun.com 2014
BlocklyDuino/BlocklyDuino: BlocklyDuino is a web-based visual programming editor for arduino.
carlosperate/ardublockly: Visual programming for Arduino. Based on blockly, implements Arduino code generation and facilitates program uploading.
Otto Blockly Arduino, ESP
OttoDIY/blockly: Otto Blockly; a fully integrated graphical programming for any type of Arduino projects, including robots, ready to install in your computer, it works offline and also online
Helloblock 亚博-下载专区 Arduino
S4A
Snap4Arduino
Snap4Arduino
MrYsLab/s2a_fm: A Scratch Hardware Extension For Arduino
MakeCode Maker - Blocks / Javascript editor
Openblock based on Scratch
openblockcc/openblock-desktop: Graphic programming software for hardware like: arduino, microbit, esp32, esp8266...
Visual Embedded Rust Programming with Visual Studio Code - Technology - PCBway
Brown Dog Gadgets - Projects, DIY Kits & Solar-Powered Gadgets
Brown Dog Gadgets - YouTube
Project Bloks
Project Bloks - Project Bloks research into tangible programming is complete
Google Launches 'Project Bloks' To Help Young Learners Learn To Code
Tinkergen
Codecraft
Make2Learn - TinkerGen
Makeblock mBlock
mBlock - Programming Software Designed for STEAM Education Scratch based, Block + Python + Arduino IDE
mBlock 5, Scratch 3
mBlock 5 Web
mBlock 5 | Makeblock – Let Creation Be a Way of Life
慧编程(mBlock 5) · GitBook
Introduction · GitBook
mBlock 3, Scratch 2
mBlock 3 Web
mBlock 3 Examples (Collection) - makeblock education
【图形化学习 Arduino】(一)基础概念 - 知乎
Arduino 图形化学习 二:认识编程软件 - 知乎
What is "Scratch Mode" in mBlock? Why would I use it? | Vernier
Introduction - mBlock | A Powerful Coding Tool for STEAM Education
An Overview of Using Makeblock in Arduino Programming
MakeblockResourcesforCodeLearners.pdf
How to Load a Programme into mBot - YouTube
mBot 教學(1) - mBot 初體驗
mBot 教學(2)-mBlock 積木式程式設計
mBot 教學(3) - 開發 mBot 應用程式
mBlock Software | mBlock - STEAM Programming Software Tool
Makeblock APP Play Store All-in-1 controller for Makeblock robots, links to the other 2 apps
mBlock - Scratch-based Programming Software - Apps on Google Play mBlock App
mBlock Blockly (formerly mBlock APP) Play Store A game-based programmable robot app
教學(10) 藍牙控制應用 apps
mBlock 3 Extension
mBlock Extension Center
【mBlock 3】Create Extensions for educational robot mblock | mBlock – STEAM Programming Software
mblock_extension_guide.pdf - Google Drive
探奇 EV3 樂高機器人 LEGO BOOST mBot 教學 Touch Classroom : mBlock Extension 實作–為 mBot Ranger 加一個軟體計時器
自己寫個 mBlock extension (一) TM1637 4-digit-display | Mister Ngan
自己寫個 mBlock extension (二) 1602 I2C LCD Module | Mister Ngan
自己寫個 mBlock extension (三) 2-digit-display using 74HC595 | Mister Ngan
mBlock 5 Extension
mBlock Extension Builder
mBlock Extension Builder Supports More Devices and ExtensionsGuide of Using mBlock Extension Builder (2 Great Examples Included) - mBlock | A Powerful Coding Tool for STEAM Education
Developer Documentation · GitBook
DFRobot Mind+
Mind+官方教程-Mind+图形化编程软件
Home - Mind+ - Get ready to take the leap from zero to a coding expert
Kittenblock
Kittenblock-Kittenbot
Scratch 3 based, Block + Python + Arduino IDE
最新版软件下载_Kittenblock 更新手记 - KittenBlock 软件 - Kittenbot 小喵科技——专注图形化编程教育 - Powered by Discuz!
KittenBot/Kittenblock
Welcome to Kittenbot Team’s Documents — kittenbot docs documentation
Kittenblock 教程 — kittenbot docs 文档
kittenbot-docs/kittenblock at master · KittenBot/kittenbot-docs
Microsoft Makecode (PXT)
Microsoft MakeCode
About – Microsoft MakeCode
Resources – Microsoft MakeCode
Microsoft MakeCode Offline App
One chip to flash them all - Microsoft MakeCode
microsoft/uf2: UF2 file format specification
microsoft/uf2-linux: UF2 flashing support for Linux (Raspberry Pi Zero)
microsoft/pxt: Microsoft MakeCode (PXT - Programming eXperience Toolkit)
MakeCode (PXT) Documentation - Microsoft MakeCode
MakeCode Languages: Blocks, Static TypeScript and Static Python - Microsoft MakeCode
Platforms
We Code MakeCode | Using Microsoft MakeCode for Minecraft and MakeCode Arcade
Microsoft MakeCode for micro:bit
micro:bit Editor updates : Support June 2019 v2
makecode editor : Support October 2018 v1
MakeCode Maker - Blocks / Javascript editor
Project Alava: Programming Webs of Microcontrollers - Microsoft MakeCode
Add a new board - Microsoft MakeCode
Writing Tutorials
Tutorials - Microsoft MakeCode
Just edit README.md
in project's resource explorer.
Then your project will have a help panel on the right.
Use the special /tutorial:${URL}
to load the project to view it step by step.
e.g:
https://makecode.microbit.org/#tutorial:https://makecode.microbit.org/_FhVVTw4Cp8cL
https://arcade.makecode.com/#tutorial:https://github.com/cyrusn/flappy_duck_tutorial
Extensions (libraries)
they used to be called "Packages"
Use custom blocks for development
Custom blocks - Microsoft MakeCode
Defining blocks - Microsoft MakeCode
MakeCode Playground
Then you can create GitHub repo and expose that as Extension
Extensions - Microsoft MakeCode
Building your own extension - Microsoft MakeCode
GitHub extension authoring - Microsoft MakeCode
GitHub Extensions authoring
Or install pxt
locally
npm i -g pxt # once
# for each project
mkdir microbit
cd microbit
pxt target microbit
pxt serve
Building your own extension - Microsoft MakeCode
吉哥的分享 - 如何製作 makecode 裡的 micro:bit 積木
大榔頭的電腦隨筆: 自製 Makecode 拼塊(一):製作拼塊檔案
大榔頭的電腦隨筆: 自製 Makecode 拼塊(二):上傳及使用拼塊
pxt-microbit/libs/core at master · Microsoft/pxt-microbit
Add core
as dependencies,
"dependencies": {
"core": "*",
"ws2812b": "github:Microsoft/pxt-ws2812b#v0.0.4"
},
Then you can use pins
functions.
吉哥的分享 - microbit 連接 LCM1602
吉哥的分享 - microbit 共陰極 RGB 積木
Threading
Serial not concurrency safe? · Issue #1157 · Microsoft/pxt-microbit
Actually its the fiber yielding to other threads when blocked by serial IO.
basic.forever()
vs control.inBackground()
They're both fibers. inBackground()
have a fiberDone
callback for clean up after function exited.
basic.forever()
https://github.com/microsoft/pxt-microbit/blob/22812c6541604f4581fa92fde38c7a6d64091c84/libs/core/basic.cpp#L88
https://github.com/microsoft/pxt-microbit/blob/22812c6541604f4581fa92fde38c7a6d64091c84/libs/core/codal.cpp#L135-L141
control.inBackground()
https://github.com/microsoft/pxt-microbit/blob/4ee39351bd75424d8463cd79fdb438a980122c46/libs/core/control.cpp#L252
https://github.com/microsoft/pxt-microbit/blob/22812c6541604f4581fa92fde38c7a6d64091c84/libs/core/codal.cpp#L143-L148
Mixly
Lets Mixly!
mixly/Mixly_Arduino: A visual programming editor based on blockly for Arduino、Microbit、MicroPython、Python
Raspberry Pi
Snap! » Raspberry Pi Geek
karstenda/BlocklyPi
BIPES Project Block based Integrated Platform for Embedded Systems
Install MicroPython on ESP32 or ESP8266 to use with BIPES
Piper Make
Drag-n-drop coding for Raspberry Pi Pico - Raspberry Pi
Squishy Circuits
Squishy Circuits | Invent. Create. Explore
Squishy Circuits - How To
How To Make Squishy Circuits | Makerspace Projects
捏麵人配方可以做導電黏土?居家實驗室帶你做出能吃又好玩的濕軟電路!
科學在家玩-導電黏土 DIY @ 親子一起 WHY :: 痞客邦 ::
Conductive Threads
Overview | Conductive Thread | Adafruit Learning System
Paper Circuits
Welcome to Chibitronics
Copper Tape Chronicles on Vimeo
Using Copper Tape with Paper Circuits - Tutorial Australia
Working with Copper Tape and Paper to Craft Circuits - YouTube
Enginursday: Cardboard Circuits - News - SparkFun Electronics
Let It Glow Holiday Cards - learn.sparkfun.com
Inspiration for autumn activities - Bare Conductive
How to make a card that lights up - YouTube
趣味纸电路制作套件 16 案例 创客教育 STEAM 科学 手工 促销-淘宝网
Capacitive Touch sensor
How do touchscreens work? - YouTube
cap-touch with ubit
How to create a touch sensor for the micro:bit with Electric Paint - Bare Conductive touch_sensor - Microsoft MakeCode
Making Distance Sensors: trigger the Touch Board with proximity - Bare Conductive
Circuits and Techniques for Implementing Capacitive Touch Sensing
Capacitive Touch with Makey Makey - Tutorial Australia Arduino code
Capacitive Touch Interface - Processing for Pi
The touch lamp; a neat idea, and older than you'd think! - YouTube
Speaker
Paper Speakers (copper tape as coil) - YouTube
How do speakers work? - YouTube
Kid's PC build
Every Little Hacker needs a Little Linux Computer – Medium
Building a Linux system for a Child, part 1: What and Why |
Building a Linux system for a Child, part2: Distros and software |
DoudouLinux - English
DoudouLinux - 中文
Edubuntu
ubermix Home
Sugar Labs
Typing
【社长说82】《金山打字通》的背后,是近半个世纪的打字发展史 #金山打字通 - YouTube
Learn Touch Typing Free - TypingClub
Learn Typing
Typing Lessons - Learn To Type And Improve Typing Speed Free - Typing.com
CS w/o computer
CS Unplugged primary school
Computer Science Field Guide high school
How To Make Super Cool (And Easy) Cub Scout Robots | Cub Scout Ideas
Spintronics
Spintronics First Look - YouTube
Mechanical circuits: electronics without electricity - YouTube
Making Non-Electric Circuits With Computer Logic - YouTube
Learn by Writing Games
12 Free Coding Games to Learn Programming for Beginners
Learn to Code With Games
Best 10 Python Game Project Ideas for Beginners in 2023
Microsoft MakeCode Arcade
Arcade Documentation - Microsoft MakeCode
MakeCode Arcade: Retro Gaming, Modern Programming - Microsoft MakeCode
Making A Game Using Microsoft MakeCode Arcade Tutorial
What is MakeCode Arcade? | MakeCode Arcade with Raspberry Pi Zero | Adafruit Learning System
microStudio - Game Engine
microStudio Game Engine Hands-On – GameFromScratch.com
PICO-8 Fantasy Console
PICO-8 - Wikiwand
CHIP-8 - Wikiwand
Guide to making a CHIP-8 emulator - Tobias V. Langhoff
How to Create Your Very Own Chip-8 Emulator
Cowgod's Chip-8 Technical Reference
CodeCombat - Learn how to code by playing a game multiple languages
Code Avengers
Elevator Saga - the elevator programming game JavaScript
Coding Games and Programming Challenges to Code Better multiple languages
Codewars multiple languages
Online Tutorial to Learn Java - CodeGym Java
CodeGuppy | JavaScript for kids and teens
#1 Solidity Tutorial & Ethereum Blockchain Programming Course | CryptoZombies
Kodu Game Lab | KoduGameLab
W3Schools Code Game instruction blocks
basic-computer-games/19_Bunny at main · coding-horror/basic-computer-games
WarriorJS Docs JavaScript
olistic/warriorjs Game written in JavaScript for learning JavaScript and artificial intelligence.
Robocode Home
CheckiO - coding games and programming challenges for beginner and advanced TypeScript, Python
Elevator Saga - the elevator programming game JavaScript
Learn to Code for Free – Grasshopper JavaScript
JSRobot JavaScript
Learn by Gaming
see minecraft
Programming
Turing Complete on Steam
SHENZHEN I/O on Steam
while True: learn() on Steam
Bots Are Stupid on Steam
Human Resource Machine on Steam
7 Billion Humans on Steam
Rogue Bit on Steam
Shortcuit on Steam
The SQL Murder Mystery
The SQL Murder Mystery: Detailed Walkthrough