Swift Track Management

This page provides the Exercism community with the information and tools needed to manage the Swift track.

Students
25,445
Submissions
396,328
Mentoring Discussions
3,365

The Swift track needs attention ⚠️

Building

Swift syllabus

Learn More

Help create the track syllabus: is a set of concepts and learning exercises put together to teach foundational elements of the programming language.

Next goal: Create a complete syllabus with at least 40 concepts. Find out more.
35 concepts being taught
Ba
Basics
5,431 learnt
Bo
Booleans
2,288 learnt
Nu
Numbers
2,932 learnt
Ch
Characters and Strings
2,465 learnt
Es
Escaping functions
1,937 learnt
Hi
Higher Order Functions
1,937 learnt
Co
Conditionals
1,871 learnt
Te
Ternary operator
1,871 learnt
Ar
Arrays
1,409 learnt
Ra
Ranges
21 learnt
fo
for loops
19 learnt
Tu
Tuples
1,241 learnt
Op
Optionals
1,034 learnt
Co
Conditionals Switch
715 learnt
Co
Control transfer
715 learnt
Wh
While and repeat loops
715 learnt
Ca
Capturing
563 learnt
Cl
Closures
563 learnt
Sh
Shorthand arguments
563 learnt
Tr
Trailing closures
563 learnt
Di
Dictionaries
685 learnt
Im
Importing
663 learnt
St
String Indexing
663 learnt
St
String Methods
663 learnt
De
Default Parameters
876 learnt
Fu
Function Overloading
876 learnt
In
Inout Parameters
876 learnt
Mu
Multiple Return Values
876 learnt
Ne
Nested Functions
876 learnt
Va
Variadic Parameters
876 learnt
Me
Methods
552 learnt
Se
Self
552 learnt
St
Structs And Classes
552 learnt
Va
Value and reference types
552 learnt
En
Enumerations
489 learnt
18 active learning exercises
Started
Attempts
Completions
Mentoring requests
Layers of Lasagna Layers of Lasagna
7,815
44,226 (avg. 5.7)
5,431 (69.5%)
83 (1.1%)
Wings Quest Wings Quest
2,652
12,242 (avg. 4.6)
2,288 (86.3%)
37 (1.4%)
Freelancer Rates Freelancer Rates
3,817
48,291 (avg. 12.7)
2,932 (76.8%)
49 (1.3%)
Cal's Custom Sign Shop Cal's Custom Sign Shop
2,847
25,649 (avg. 9.0)
2,465 (86.6%)
15 (0.5%)
Secret Agent Double-Null0111 Secret Agent Double-Null0111
2,434
11,517 (avg. 4.7)
1,937 (79.6%)
24 (1.0%)
Vexing Vehicle Purchase Vexing Vehicle Purchase
2,347
24,675 (avg. 10.5)
1,871 (79.7%)
32 (1.4%)
Magician-in-Training Magician-in-Training
1,605
21,092 (avg. 13.1)
1,409 (87.8%)
26 (1.6%)
ChessBoard ChessBoard
26
69 (avg. 2.7)
21 (80.8%)
0 (0.0%)
Bird Watcher Bird Watcher
20
56 (avg. 2.8)
19 (95.0%)
1 (5.0%)
Santa's Swifty Helper Santa's Swifty Helper
1,297
4,995 (avg. 3.9)
1,241 (95.7%)
8 (0.6%)
Slice Sizing Slice Sizing
1,171
16,577 (avg. 14.2)
1,034 (88.3%)
28 (2.4%)
Expert Mixologist Expert Mixologist
841
11,126 (avg. 13.2)
715 (85.0%)
17 (2.0%)
Double-Null0111: Closures Are Forever Double-Null0111: Closures Are Forever
656
5,174 (avg. 7.9)
563 (85.8%)
8 (1.2%)
High Score Board High Score Board
745
5,170 (avg. 6.9)
685 (91.9%)
6 (0.8%)
The 1st Rule of Poetry Club The 1st Rule of Poetry Club
756
8,090 (avg. 10.7)
663 (87.7%)
7 (0.9%)
Lasagna Master Lasagna Master
947
8,797 (avg. 9.3)
876 (92.5%)
18 (1.9%)
Windowing System Windowing System
643
7,845 (avg. 12.2)
552 (85.8%)
10 (1.6%)
Log Lines Log Lines
522
2,194 (avg. 4.2)
489 (93.7%)
2 (0.4%)

Practice Exercises

Learn More

Practice Exercises are exercises designed to allow students to solve an arbitrary problem, with the aim of them making use of the concepts they have learned so far.

Synced primary repo: d9571e15124798a6b9c7974df5222269d7f3c08f (Updates should be instant)

Next goal: Implement 135 practice exercises. Find out more.
85 active practice exercises
Started
Attempts
Completions
Mentoring requests
Hello World Hello World
17,697
38,751 (avg. 2.2)
12,995 (73.4%)
16 (0.1%)
Difference of Squares Difference of Squares
2,292
8,359 (avg. 3.6)
1,537 (67.1%)
225 (9.8%)
Gigasecond Gigasecond
2,030
3,808 (avg. 1.9)
1,394 (68.7%)
276 (13.6%)
Leap Leap
2,970
6,529 (avg. 2.2)
2,496 (84.0%)
585 (19.7%)
RNA Transcription RNA Transcription
1,345
3,394 (avg. 2.5)
1,107 (82.3%)
155 (11.5%)
Space Age Space Age
1,048
2,379 (avg. 2.3)
880 (84.0%)
95 (9.1%)
Sum of Multiples Sum of Multiples
1,137
3,236 (avg. 2.8)
933 (82.1%)
121 (10.6%)
Two Fer Two Fer
2,387
4,208 (avg. 1.8)
1,890 (79.2%)
921 (38.6%)
Reverse String Reverse String
275
893 (avg. 3.2)
228 (82.9%)
2 (0.7%)
Darts Darts
78
287 (avg. 3.7)
57 (73.1%)
1 (1.3%)
Bob Bob
984
3,601 (avg. 3.7)
817 (83.0%)
87 (8.8%)
ETL ETL
775
1,471 (avg. 1.9)
678 (87.5%)
19 (2.5%)
Armstrong Numbers Armstrong Numbers
67
403 (avg. 6.0)
56 (83.6%)
1 (1.5%)
Grade School Grade School
744
2,444 (avg. 3.3)
603 (81.0%)
26 (3.5%)
Grains Grains
721
2,492 (avg. 3.5)
612 (84.9%)
61 (8.5%)
Hamming Hamming
895
2,018 (avg. 2.3)
827 (92.4%)
75 (8.4%)
Isogram Isogram
626
1,511 (avg. 2.4)
532 (85.0%)
17 (2.7%)
List Ops List Ops
661
5,030 (avg. 7.6)
477 (72.2%)
15 (2.3%)
Nucleotide Count Nucleotide Count
1,059
2,304 (avg. 2.2)
799 (75.4%)
63 (5.9%)
Raindrops Raindrops
776
1,558 (avg. 2.0)
666 (85.8%)
31 (4.0%)
Binary Search Binary Search
394
1,124 (avg. 2.9)
303 (76.9%)
3 (0.8%)
Circular Buffer Circular Buffer
298
1,443 (avg. 4.8)
216 (72.5%)
3 (1.0%)
Clock Clock
492
1,584 (avg. 3.2)
383 (77.8%)
12 (2.4%)
Collatz Conjecture Collatz Conjecture
306
811 (avg. 2.7)
260 (85.0%)
4 (1.3%)
Diamond Diamond
281
867 (avg. 3.1)
207 (73.7%)
1 (0.4%)
Flatten Array Flatten Array
335
1,037 (avg. 3.1)
263 (78.5%)
7 (2.1%)
ISBN Verifier ISBN Verifier
276
950 (avg. 3.4)
215 (77.9%)
6 (2.2%)
Kindergarten Garden Kindergarten Garden
338
782 (avg. 2.3)
280 (82.8%)
5 (1.5%)
Perfect Numbers Perfect Numbers
347
1,112 (avg. 3.2)
300 (86.5%)
7 (2.0%)
Phone Number Phone Number
494
1,885 (avg. 3.8)
416 (84.2%)
10 (2.0%)
Protein Translation Protein Translation
264
1,015 (avg. 3.8)
201 (76.1%)
5 (1.9%)
Proverb Proverb
221
705 (avg. 3.2)
175 (79.2%)
4 (1.8%)
Queen Attack Queen Attack
322
783 (avg. 2.4)
273 (84.8%)
5 (1.6%)
Robot Name Robot Name
476
949 (avg. 2.0)
388 (81.5%)
7 (1.5%)
Robot Simulator Robot Simulator
317
791 (avg. 2.5)
249 (78.5%)
9 (2.8%)
Scrabble Score Scrabble Score
451
1,170 (avg. 2.6)
390 (86.5%)
6 (1.3%)
Secret Handshake Secret Handshake
255
450 (avg. 1.8)
207 (81.2%)
1 (0.4%)
Sieve Sieve
301
655 (avg. 2.2)
255 (84.7%)
1 (0.3%)
Strain Strain
309
469 (avg. 1.5)
254 (82.2%)
2 (0.6%)
Sublist Sublist
257
774 (avg. 3.0)
191 (74.3%)
3 (1.2%)
Triangle Triangle
478
1,317 (avg. 2.8)
403 (84.3%)
6 (1.3%)
Bottle Song Bottle Song
75
521 (avg. 6.9)
46 (61.3%)
2 (2.7%)
Acronym Acronym
346
1,256 (avg. 3.6)
226 (65.3%)
7 (2.0%)
All Your Base All Your Base
228
678 (avg. 3.0)
148 (64.9%)
1 (0.4%)
Allergies Allergies
368
890 (avg. 2.4)
274 (74.5%)
7 (1.9%)
Anagram Anagram
402
1,046 (avg. 2.6)
341 (84.8%)
9 (2.2%)
House House
167
378 (avg. 2.3)
117 (70.1%)
1 (0.6%)
Largest Series Product Largest Series Product
184
632 (avg. 3.4)
137 (74.5%)
6 (3.3%)
Matrix Matrix
224
421 (avg. 1.9)
163 (72.8%)
0 (0.0%)
Meetup Meetup
199
422 (avg. 2.1)
130 (65.3%)
1 (0.5%)
Pangram Pangram
195
455 (avg. 2.3)
153 (78.5%)
4 (2.1%)
Pascal's Triangle Pascal's Triangle
171
301 (avg. 1.8)
118 (69.0%)
1 (0.6%)
Prime Factors Prime Factors
177
317 (avg. 1.8)
133 (75.1%)
3 (1.7%)
Pythagorean Triplet Pythagorean Triplet
176
570 (avg. 3.2)
122 (69.3%)
3 (1.7%)
Rotational Cipher Rotational Cipher
134
407 (avg. 3.0)
97 (72.4%)
2 (1.5%)
Saddle Points Saddle Points
143
450 (avg. 3.1)
105 (73.4%)
2 (1.4%)
Say Say
109
368 (avg. 3.4)
69 (63.3%)
1 (0.9%)
Series Series
213
525 (avg. 2.5)
159 (74.6%)
1 (0.5%)
Simple Linked List Simple Linked List
214
641 (avg. 3.0)
147 (68.7%)
0 (0.0%)
Twelve Days Twelve Days
231
397 (avg. 1.7)
171 (74.0%)
1 (0.4%)
Word Count Word Count
533
877 (avg. 1.6)
424 (79.5%)
12 (2.3%)
Atbash Cipher Atbash Cipher
124
472 (avg. 3.8)
96 (77.4%)
1 (0.8%)
Binary Search Tree Binary Search Tree
176
758 (avg. 4.3)
121 (68.8%)
3 (1.7%)
Crypto Square Crypto Square
119
465 (avg. 3.9)
84 (70.6%)
0 (0.0%)
Custom Set Custom Set
141
383 (avg. 2.7)
86 (61.0%)
1 (0.7%)
Food Chain Food Chain
96
211 (avg. 2.2)
65 (67.7%)
0 (0.0%)
Knapsack Knapsack
28
115 (avg. 4.1)
16 (57.1%)
0 (0.0%)
Linked List Linked List
158
435 (avg. 2.8)
107 (67.7%)
6 (3.8%)
Luhn Luhn
145
549 (avg. 3.8)
107 (73.8%)
5 (3.4%)
OCR Numbers OCR Numbers
104
252 (avg. 2.4)
66 (63.5%)
2 (1.9%)
Roman Numerals Roman Numerals
167
419 (avg. 2.5)
120 (71.9%)
3 (1.8%)
Run-Length Encoding Run-Length Encoding
120
356 (avg. 3.0)
86 (71.7%)
1 (0.8%)
Simple Cipher Simple Cipher
109
277 (avg. 2.5)
70 (64.2%)
0 (0.0%)
Bowling Bowling
115
344 (avg. 3.0)
61 (53.0%)
0 (0.0%)
Complex Numbers Complex Numbers
92
170 (avg. 1.8)
56 (60.9%)
0 (0.0%)
Nth Prime Nth Prime
136
379 (avg. 2.8)
96 (70.6%)
1 (0.7%)
Palindrome Products Palindrome Products
104
509 (avg. 4.9)
70 (67.3%)
0 (0.0%)
Pig Latin Pig Latin
105
262 (avg. 2.5)
67 (63.8%)
0 (0.0%)
Tournament Tournament
103
385 (avg. 3.7)
75 (72.8%)
2 (1.9%)
Transpose Transpose
99
318 (avg. 3.2)
60 (60.6%)
0 (0.0%)
Matching Brackets Matching Brackets
132
337 (avg. 2.6)
98 (74.2%)
1 (0.8%)
Dominoes Dominoes
100
157 (avg. 1.6)
58 (58.0%)
0 (0.0%)
Minesweeper Minesweeper
122
332 (avg. 2.7)
78 (63.9%)
2 (1.6%)
Wordy Wordy
131
376 (avg. 2.9)
87 (66.4%)
4 (3.1%)
Poker Poker
297
444 (avg. 1.5)
66 (22.2%)
1 (0.3%)
7 deprecated practice exercises
Started
Attempts
Completions
Mentoring requests
Accumulate Accumulate
972
2,226 (avg. 2.3)
705 (72.5%)
42 (4.3%)
Beer Song Beer Song
182
253 (avg. 1.4)
133 (73.1%)
1 (0.5%)
Binary Binary
23
35 (avg. 1.5)
23 (100.0%)
0 (0.0%)
Hexadecimal Hexadecimal
6
6 (avg. 1.0)
6 (100.0%)
0 (0.0%)
Octal Octal
14
18 (avg. 1.3)
14 (100.0%)
0 (0.0%)
Scale Generator Scale Generator
179
376 (avg. 2.1)
108 (60.3%)
1 (0.6%)
Trinary Trinary
17
23 (avg. 1.4)
17 (100.0%)
0 (0.0%)
50 unimplemented practice exercises
Affine Cipher Affine Cipher
Alphametics Alphametics
Baffling Birthdays Baffling Birthdays
Bank Account Bank Account
Book Store Book Store
Change Change
Connect Connect
Conway's Game of Life Conway's Game of Life
D&D Character D&D Character
DOT DSL DOT DSL
Eliud's Eggs Eliud's Eggs
Error Handling Error Handling
Forth Forth
Go Counting Go Counting
Grep Grep
Hangman Hangman
High Scores High Scores
Intergalactic Transmission Intergalactic Transmission
Killer Sudoku Helper Killer Sudoku Helper
Ledger Ledger
Lens Person Lens Person
Markdown Markdown
Micro Blog Micro Blog
PaaS I/O PaaS I/O
Parallel Letter Frequency Parallel Letter Frequency
Piecing It Together Piecing It Together
POV POV
Rail Fence Cipher Rail Fence Cipher
Rational Numbers Rational Numbers
React React
Rectangles Rectangles
Relative Distance Relative Distance
Resistor Color Resistor Color
Resistor Color Duo Resistor Color Duo
Resistor Color Trio Resistor Color Trio
REST API REST API
Satellite Satellite
SGF Parsing SGF Parsing
Spiral Matrix Spiral Matrix
Split-Second Stopwatch Split-Second Stopwatch
Square Root Square Root
State of Tic-Tac-Toe State of Tic-Tac-Toe
Swift Scheduling Swift Scheduling
Tree Building Tree Building
Two Bucket Two Bucket
Variable Length Quantity Variable Length Quantity
Word Search Word Search
Yacht Yacht
Zebra Puzzle Zebra Puzzle
Zipper Zipper

Programming Tags

Learn More

Help manage the tags used to group, filter and recommend solutions, approaches and articles.

0 tags

Test Runner

Learn More

Create Test Runners that have the single responsibility of taking a solution, running all tests and returning a standardized output.

Current version: 32f2b277f307eb68625409ffe04b233d2c1deb29 (Takes up to 10 mins to deploy)

Total Test Runner Runs
380,678
Test Run Pass Rate
17.7% (67276)
Test Run Fail Rate
23.3% (88591)
Test Run Error Rate
59.1% (224811)

Representer

Learn More

Build a Representer: a bit of code that has the single responsibility of taking a solution and returning a normalized representation of it.

Next goal: Build a Representer. Find out more.

Analyzer

Learn More

Build an Analyzer for Swift: Exercism's analyzers automatically assess student's submissions and provide mentor-style commentary.

Next goal: Build an Analyzer. Find out more.