# Not using Dispatchers.Default as Default

**URL:** <https://discuss.kotlinlang.org/t/not-using-dispatchers-default-as-default/13872>\
**Category:** Language Design\
**Created:** [August 14, 2019, 6:45pm UTC](https://discuss.kotlinlang.org/t/not-using-dispatchers-default-as-default/13872 "2019-08-14T18:45:06Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![linkot](https://avatars.discourse-cdn.com/v4/letter/l/e480ec/32.png) [@linkot](https://discuss.kotlinlang.org/u/linkot)\
**Post date:** [August 14, 2019, 6:45pm UTC](https://discuss.kotlinlang.org/t/not-using-dispatchers-default-as-default/13872/1 "2019-08-14T18:45:06Z")

</div>

Not using Dispatchers.Default as Default makes the programming of your first coroutine to frustrating for beginners. Look at this question, this remembers me to my struggle with my first coroutine:

> **[r/Kotlin - Coroutines for the absolute stupid](https://www.reddit.com/r/Kotlin/comments/cq7ifp/coroutines_for_the_absolute_stupid/)**
>
> 21 votes and 14 comments so far on Reddit

launch() {} should be equivalent to launch(Dispatchers.Default) this way you could write your first coroutine and have fun without bothering about what the hell Dispatchers are. It’s also more readable, if you just see launch() do you know which context it is? No, because you don’t know in which context I actually am and Default is not the default.  
Maybe there is a reason why it is the way it is, and I think changing it now would break older programs but it would be much better if you could first learn coroutines and later extend that knowledge with Dispatchers. I for my own got the habit to never use launch without parameters because I think that’s to error prone, knowing the actual context anytime is like playing the role of the compiler.
