Dmitry Kandalov
banner
dmitrykandalov.bsky.social
Dmitry Kandalov
@dmitrykandalov.bsky.social
I have witnessed programming for DOS and spent the last 20 years in the Java lands, most recently working with server-side Kotlin.

Everything I post here (and more) is also on https://dmitrykandalov.com/micro-blog
Thanks to everyone who came to the "47 Refactorings in 45 minutes" talk Kodee and I did at Droidcon London today. You can find all the code here github.com/dmcg/gilded-.... Since someone asked, these are some of the heuristics I use for Kotlin code dmitrykandalov.com/tidy-kotlin.
October 30, 2025 at 1:48 PM
September 20, 2025 at 9:38 PM
Here is an example of how a small change trying to optimise Kotlin code with `inline` and then using imperative style with `return` can break things.
February 20, 2025 at 12:19 PM
Great talk by @antonarhipov.bsky.social at the Kotlin London meetup tonight. You can find the (recent enough) slides here speakerdeck.com/antonarhipov. My main takeaway is that Kotlin contracts could make DSL builder parameters mandatory (like function parameters?) 🤔
February 11, 2025 at 11:51 PM
The amount of actively used calendars is a good reminder that the “new year” is very much a social construct. There’s also Julian calendar (making all historical dates “wrong”). There are time zones with changing rules and borders. And of course leap seconds! 🙃
December 31, 2024 at 2:21 PM
Random #IntelliJ tip. You can use the "Search Usages" action (which shows a popup with usages) recursively! It will figure out the outer scope of the selected usage (e.g., a function in which it's defined) and show another popup with usages. (It doesn't work in all languages though.)
December 18, 2024 at 11:48 PM
Here is an #IntelliJ action to optimise imports (in the background!) in all project Kotlin files gist.github.com/dkandalov/a4.... Admittedly, this is a hack (aka a "tactical workaround") that will make #IntelliJ log exceptions, but it's better than modal dialogs blocking all IDE windows #LivePlugin
December 13, 2024 at 5:47 PM
November 30, 2024 at 11:51 AM
Here is an example of how #IntelliJ inspections/intentions (aka refactoring suggestions) can guide you to a better code and why I prefer "forEach" to "for" loops in #Kotlin. And don't get me started on the meaning of "retry" and UPPERCASE CARGO CULT (see dmitrykandalov.com/tidy-kotlin#...).
November 29, 2024 at 1:16 PM
The UI looks a bit wonky and there is no obvious keyboard shortcut for this diff popup (I tried hard in the past, let me know if it's there), but overall I really like the option to commit without ceremony! Could we also have "Commit without Dialog" action please 😬 #IntelliJ
November 11, 2024 at 10:35 PM
This is probably the longest #IntelliJ alt+enter menu I've seen in the wild! (At which point does it become too much? 🤷)
November 4, 2024 at 10:39 PM
I like to occasionally check what is going on in the #IntelliJ background tasks (and then hide the popup). While waiting for youtrack.jetbrains.com/issue/IJPL-5... to make it possible with built-in actions, here is a workaround in ~8 lines gist.github.com/dkandalov/d3... #LivePlugin #Kotlin
October 30, 2024 at 6:46 PM
It only takes ~5 lines of code to remove editor notification panels in #IntelliJ gist.github.com/dkandalov/3c... Because some panels can only be closed with the mouse (e.g. "Kotlin Scripting is in Beta"). Some cannot be closed at all (e.g. "Decompiled .class file") 🙄 #LivePlugin #Kotlin
October 29, 2024 at 5:09 PM
This is likely the oldest (years old) and the most used (by me) #IntelliJ action which I never published. It opens the "IDE Internal Errors" window, so you can move between errors and clear them gist.github.com/dkandalov/0c... #LivePlugin #Kotlin
October 28, 2024 at 11:04 PM
If you need inspiration to find names for your variables and functions, why not try random search results? (Some joke about AI is missing here.) This is the source code github.com/dkandalov/li.... Please shout if you can make this auto-complete always work 🙈 #LivePlugin #Kotlin
October 27, 2024 at 4:59 PM
This is what Eclipse looks like on macOS these days 😵 I don't think it ever looked polished on Mac, but the 20+ year-old icons make me grateful for #IntelliJ UI evolution (even if it takes effort getting used to a new look and feel every couple of years).
October 24, 2024 at 9:33 PM