Kotlin Code Typing Test

Live CPM0
Accuracy100%
Time01:00
Start typingKotlin / 60s
Type the displayed code. Pasting and drag-and-drop are disabled.Ready for Kotlin, 60 seconds. Start typing when you are ready.
data class CartItemCartItem(val sku: String, val name: String, val price: Double, val quantity: Int) class CartCartItem { private val items = linkedMapOf<String, CartItemCartItem>() private val history = mutableListOf<String>() fun add(item: CartItemCartItem): Boolean { if (item.sku.isBlank() || item.price < 0.0 || item.quantity < 1) return false val previous = items[item.sku] items[item.sku] = if (previous == null) item else previous.copy(quantity = previous.quantity + item.quantity) history += "added:${item.sku}" return true } fun remove(sku: String, quantity: Int = 1): Boolean { val current = items[sku] ?: return false if (quantity < 1 || quantity > current.quantity) return false if (quantity == current.quantity) items.remove(sku) else items[sku] = current.copy(quantity = current.quantity - quantity) history += "removed:$sku" return true } fun totals(): Map<String, Double> { val subtotal = items.values.sumOf { it.price * it.quantity } val discount = if (subtotal >= 500.0) subtotal * 0.1 else 0.0 val tax = (subtotal - discount) * 0.11 return mapOf("items" to items.values.sumOf { it.quantity }.toDouble(), "subtotal" to subtotal, "discount" to discount, "tax" to tax, "total" to subtotal - discount + tax) } fun recentEvents(limit: Int): List<String> = history.takeLast(limit.coerceAtLeast(0)) }
Focus here and start typing to begin
built for developersReal code typing practice. Useful metrics. Improve faster.Learn more

Codestroke is a code typing test for developers. Practice real JavaScript, Python, SQL, Java, C++, HTML/CSS, PHP, Go, and Kotlin snippets instead of ordinary prose.

This Kotlin typing test focuses on data classes, collection operations, lambdas, and null-safe syntax. Choose a 30, 60, or 120 second session and track your code typing speed and accuracy as you practice.

Kotlin code typing practice

Practice a Kotlin typing test with data classes, collection operations, lambdas, and null-safe syntax. Build Kotlin typing speed while keeping concise typed code accurate.

Try the main code typing test or choose another language from the directory below.

01

Real snippets

Practice syntax, punctuation, and indentation developers actually use.

02

Useful metrics

Track live CPM, accuracy, time, and detailed session results.

03

Flexible practice

Choose a 30, 60, or 120 second test and improve at your pace.

how speed and accuracy work

Code typing speed is measured in CPM (characters per minute), so symbols, brackets, and indentation count just like letters. Accuracy shows how much of the snippet you entered correctly. Pick a language to practice a focused code typing test:

code typing test FAQ

What does the Kotlin typing test include?

The Kotlin test includes realistic snippets with data classes, collection operations, lambdas, null-safe syntax, and concise typed functions.

What is a code typing test?

A code typing test measures how quickly and accurately you can type real source code instead of ordinary prose. Codestroke is built for developers.

How does a coding speed test work?

Code contains symbols, brackets, and short tokens, so CPM measures every typed character. Codestroke also reports WPM, accuracy, and the selected test duration.

Why measure CPM instead of WPM?

Words per minute can be misleading for code because syntax contains punctuation and short tokens. CPM gives a clearer view of code typing speed.

Which languages can I practice?

You can practice JavaScript, Python, SQL, Java, C++, HTML/CSS, PHP, Go, and Kotlin snippets.

Is Codestroke free?

Yes. The typing test is free in modern web browsers, and you can begin as a guest without creating an account.

language directory9 Language Speed Tests & Technical ExplainerExplore

Kotlin typing practice for data classes and collections

Practice Kotlin with data classes, collections, lambdas, and small stateful utilities. This route is a focused way to make Kotlin's concise expressions, generic types, and null-safe operators comfortable under time pressure.

01data classes and immutable properties

02collection operations and lambdas

03null-safe calls, sealed results, and collection transforms

Pay attention to question marks, Elvis operators, type parameters, and trailing lambdas as expressions get shorter. Compare code typing scores on the leaderboard.

CPM vs WPM in CodeCode snippets contain symbols, brackets, and short tokens. CPM (Characters Per Minute) measures every keypress accurately, while WPM equals CPM divided by 5.
Real Snippets & DurationsPractice 30s, 60s, or 120s sessions with real language syntax across 9 programming languages in guest mode or with optional account sync.