{COURSES}

Courses consist of 16 one-hour classes (roughly one credit hour in college terms). In Fall and Winter this is one class per week. In Summer it is two classes back-to-back (only 8 weeks).

Each class contains a 40-minute lesson divided into four 10-minute modules.

10 minutes at the start and end of class are allowed for seating, announcements, and a bit of socialization.

"Where do I sit?"

"What if I'm late?"

"How early can I arrive?"

"What if my ride is late?"

Seats are permanently assigned at registration for the duration of the course.

When you are at a computer you may prefer to use the Google worksheet instead.

Minecraft Roblox Principles Essentials Programmer Developer Engineer LinuxUser LinuxAdmin DevOps KaliHacking NetworkSetup WebAdmin WebAPI Decentralized WebArtAnim WebGames WebSockets ProWebApps DBDeveloper DataScience DataScienceMath StoryGames ChatBots GameCoding GameDesign GameMath GamePhysics GameArt MachineLearnAI Video Sound BlogBrand MicroArtProg GoogleSheets

Minecraft MINE
Discovering Systems Engineering with Minecraft®
It's a well-documented fact that many top systems engineers started out playing Minecraft®. In fact, many of those currently leading local coding clubs and school programs started with Minecraft years ago at SkilStak. Today, kids as young as seven are learning complicated concepts such as the command-line without even realizing it. To them it's just fun.

Every student controls a private Minecraft server with plugins and full operator access for the duration of the course. Each can invite friends and family to help them build it and see what they have learned. Students not only develop their creativity but are introduced to networking, programming, and engineering while building out and maintaining their world and server.

Preparation:
• Gmail account
• Minecraft® account
• Type 15+ wpm

0
Writing
7-12
None
Discover

Roblox RBLX
Discovering Game Development with Roblox®
Roblox® has gone from being Minecraft's top rival to the most popular game creation and publishing platform for those under 16. With one click anyone can publish a Roblox world and immediately make money when others choose to play it. It is not exaggerating to say Roblox has made some 16 year olds into millionaires.

Not only does Roblox development including learning the well-established Lua programming language (used to mod games and by IBM as well) but the game design interface is similar to a simplified Unreal Engine® easing entry into the game and simulation development world—a dream of many young developers.

Preparation:
• Gmail account
• Roblox® account
• Type 15+ wpm

0
Writing
7-12
None
Discover

Principles PRIN
Elementary Principles of Computer Science
Principles of computer science can be learned in fun, unexpected ways that relate to the interests of those who are younger. The course explores them in unique ways tying in popular memes, games, and activities. This ain't yo grandpa's computer science class.

Principles is designed to bridge the gap from playing Minecraft® and Roblox® and other games to starting to learn the more formal principles of computer science and programming while increasing core skills such as typing, math, and reading. Students experiece the thrill of writing their first game code, which itself can become a healthy addiction.

Coding, like many things, benefits from a lot of repetition. Although the lessons remain the same, they are updated every semester to remain current and fun so that Principles can safely be repeated until the student is ready to move to Essentials.

Preparation:
• Gmail account
• Type 15+ wpm

0
Writing
9-12
None
Core

Essentials TECH
Essentials for New Technologists
Everyone starts out as a technologist, one who studies and promotes the use of technology to make the world a better place. Essentials teaches what few others will: how to become (and remain) a productive, respected, contributing member of the technology community.

Students learn how to create a personal (professional) learning network (PLN), make a simple web site, chart a course through the technical jungle, build and manage skills, know and use critical tech tools, write their first code, understand the history and future of computing, and sample the different flavors of technology available in the industry to find what they like.

Preparation:
• Gmail account
• Type 24+ wpm

0
Extras
12+
None
Core

Programmer CODR
Fundamentals of Modern Programming
One cannot become a novelist without mastering the art of writing. Such is true for the art of programming. Fundamentals teaches the universal concepts of programming in all languages by helping students simultaneously master the syntax of three of the most popular and important modern languages: JavaScript, Python, and Golang. Students who complete the course can proudly call themselves polyglot programmers and have the confidence of knowing they could easily master any language in their future.

Unfortunately, most schools only teach a single language creating strong biases in beginning programmers (or aversion often in the case of Java) who often never learn another leading many to limit their opportunities both professionally and socially with pedantic technical bigotry. We teach to learn and use the right tool for the job.

Most programmers will continue on to become developers adding mastery of paradigms, patterns, and best practices to the their programming skills.

1
Extras
12+
Essentials
Core

Developer DEVL
Development Paradigms, Patterns, and Practices
When a company like Google hires they are looking for developers (not just programmers). Few teach programming as an art form, yet that is exactly what it is. A developer is an artisan who has demonstrated he or she can not only program in any language (given a bit of time to learn it) but also possesses the creative, organizational, and intuitive aptitude to craft elegant solutions to problems. A developer cares about approach, sustainability, and detail and has learned—above all—to focus on the need above the technology. Just because one can do something does not mean one should. Artisanal developers value simplicity and elegance over complexity. They lose sleep refactoring their code to be the easiest possible to understand by even junior programmers. Developers have committed themselves to the art of programming as well as the practice. Other code practitioners revere their creations as more than just code, but as works of art.
2
Writing
12+
Programmer
Core

Engineer ACSE
Applied Computer Science Engineering
To truly understand computer science one must learn how a computer functions at the lowest level, on the chips. Unfortunately, most do not teach this because of the complicated resources required. SkilStak's small class size and hands-on approach enable this.

Students code Microchip PIC® microcontrollers in Assembly on the first day. Coding in C later becomes quickly understood and appreciated including normally confusing concepts as memory management, pointers, and system calls. These languages fill in the language collection providing a perfect set from lowest to the highest level.

Arduino® and Raspberry Pi® also introduced as students learn the art of physical programming things that operate in the real world and not just on the screen.

This is the capstone corse of core computer science. Students who complete this course have the best start possible as they progress further undertaking any project possible for work, school or fun.

3
Writing
12+
Developer
Core

LinuxUser LNUX
GNU/Linux® Essentials and Scripting
🚧
2
Writing
12+
Essentials
Ops

LinuxAdmin LNXA
GNU/Linux® System Administration
🚧
2
Accepted
12+
LinuxUser
Ops

DevOps DOPS
Survey of DevOps Tools and Technologies
🚧
3
Accepted
12+
LinuxAdmin
Ops

KaliHacking KALI
Pentesting with Kali Linux®
🚧
3
Writing
12+
LinuxUser
Ops

NetworkSetup NETZ
TCP/IP Network Essentials
🚧
2
Consider
12+
Essentials
Ops

WebAdmin WADM
Web Server and Serverless Content Distribution
🚧
2
Consider
12+
LinuxUser
Ops

WebAPI WAPI
Developing Robust Web APIs
🚧
3
Consider
12+
WebAdmin, DBDeveloper, Developer
Apps

Decentralized PEER
Survey of Decentralized Computing
🚧
4
Consider
12+
Essentials
Ops

WebArtAnim WBRT
Web Art, Animation, and Effects
🚧
1
Writing
12+
Programmer
Apps

WebGames WBGM
Web Game and Simulation Development
🚧
2
Writing
12+
Developer
Apps

WebSockets WBSK
Web Sockets Applications Development
🚧
3
Consider
12+
WebAPI
Apps

ProWebApps WBJM
Serverless JAMstack Progressive Web Applications Development
🚧
3
Planning
12+
Developer
Apps

DBDeveloper DBDV
Integrated Data Storage and SQL Development
🚧
3
Writing
12+
Developer
Apps

DataScience DATS
Survey of Data Science Tools and Technologies
🚧
4
Consider
12+
Programmer
Apps

DataScienceMath MATD
Mathematics for Data Science
🚧
4
Consider
12+
Essentials
Base

StoryGames RITE
Programming Story Games, Narratives, Visual Novels, and Other Interactive Fiction
Life is a story. It is no surprise then that storytelling has found its way into everything from social media "stories" to marketing to games, movies, and, of courses literature. Even images tell a story. Effective story telling is not only incredibly fun in every medium, it is an essential skill. Writing, grammer, syntax, and all the other principles of good literature come along for the ride when one learns to write a good story.

Programmers in this course survey a number of story telling platforms, practices, and applications as we delineate and practice the technical and creative writing skills required, whether the story be expressed visually in Ren'Py®, or purely through text, or an RPG, or even an interactive narrator bot that can be welcomed into a chat room in other courses

The beauty of this course is the connection between creative writing and visual arts with games and simulation. Teachers of English might spark some new ideas on how to raise interest in writing without spending an extra dime in the classroom using freely available programming options online.

2
Writing
12+
Programmer
Apps

ChatBots CBTZ
Programming Interactive Chat Bots
🚧
2
Planning
12+
Programmer
Apps

GameCoding GMCD
Game and Simulation Programming
🚧
3
Planning
12+
Programmer
Apps

GameDesign GMDS
Game and Simulation Design
🚧
2
Planning
12+
Essentials
Apps

GameMath MATH
Beginning Game and Simulation Mathematics
The #1 barrier to becoming a great programmer at an early age is math skills. Those who have some math almost instantly understand the core concepts of functional programming, which was originally based on math. The problem is these math skills are not taught early enough for many and when they are no correlation to applications a young student cares about is made. This course embraces students natural love of games and simulation at the young age and directly uses it to help them learn the math that will break the barrier to programming as well as promote better grades in school.

Students modify games to learn math and physics in a hands on way using unique games created at SkilStak® as well as Minecraft® and Roblox®. Principles of statistics, vectors, coordinates, and algebra are explored as they complete challenges and create new versions of existing games. It's safe to say you have never seen a math class like this.

This course does have some homework that will "unlock" things when they are in class. This ensures students associate more traditional study with the application of their learning for tech. For this reason, most students will opt for a lab slot or two as well.

1
Planning
7-12+
None
Base

GamePhysics FIZX
Beginning Game and Simulation Physics
🚧
1
Accepted
7-12+
None
Base

GameArt RT3D
Game and Simulation 3D Modeling
🚧
3
Accepted
12+
Essentials
Sculpt

MachineLearnAI LERN
Survey of AI, Machine, and Deep Learning
🚧
4
Accepted
12+
Programmer
Survey

Video VIDZ
Video Streaming, Capture, and Editing
🚧
1
Accepted
12+
Essentials
Video

Sound SNDZ
Sound Creation, Capture, and Editing
🚧
1
Accepted
12+
Essentials
Sound

BlogBrand BLOG
Modern Blogging and Branding
🚧
1
Accepted
12+
Essentials
Writing

MicroArtProg RTME
Programming Kinetic and Interactive Art with Microelectronics
🚧
2
Consider
12+
Programmer
Apps

GoogleSheets GSHE
Organize, Automate, and Publish with Programmable Google Sheets
Whether you want to create a database-less progressive web app, add a secure and authenticated form, or provide a way to collaborate in real time with your customers and partners. This course helps you learn the single most approachable tool for personal and business management, data capture, analysis, and organization, Google Sheets. Practically anything that can be coded in JavaScript can be incorporated into this ubiquitous tool that anyone with coding skills can use. This course shows programmers how.

Educators have long known the value of Google Sheets to fill the gap in IT educational infrastructure. Many of these teachers operate essentially as a business-of-one within their organizations. The truth is most small to mid-sized businesses (which many predict are the future) have come to discover what these teachers have known: simple, accessible and sustainable IT resources that meet the core needs of small organizations are all that is required, no databases, no heavy APIs, no complicated microserves, just simple, scripted spreadsheets, forms and documents.

Most companies and schools will grow to depend on these services that are not only free and "serverless" but are available to anyone. Big companies know this inevitability and are fighting to win the "productivity tools" market because they know the winner will gain the principle share of future IT infrastructure sales. [This is why Microsoft bought GitHub and Amazon bought Cloud9.] Get started learning these tools now.

2
Consider
12+
Programmer
Apps