-
You won’t believe how much time you will save with this Git pre-push hook
Introduction A significant part of being a successful software developer is refining our workflows to optimize productivity. One method I’ve found incredibly useful is integrating Git hooks with static code analysis tools such as Detekt for my Android projects. The Role of Git Hooks and Detekt in Code Quality Before we dive into the actual…
-
DigitalOcean Droplets killing your npm install? You need more swap!
Move from 500MB to 1GB with just a few commands: Enjoy.
-
Run a IntelliJ/Android Studio configuration with a shortcut
If you are like me, you have a few “Run configurations” when you develop an app: Run the app Run the tests Run the static analysis Run the UI tests You can generally only run the latest one using a keyboard shortcut. I found an IJ/AS plugin that lets you associate a shortcut to any…
-
Show layout bounds from command line
Lately I found myself clicking through Android Settings menu to enable and disable “Show layout bounds” to check if views are where are supposed to be a bit too often. Using the menu once is OK. Using the menu twice is still OK. I live by the Rule of three so when I hit the…
-
Rainbow Brackets – Android Studio / Intellij IDEA plugins
My first Android course ended a few days ago, but good old habits stay: let’s keep talking about my always-installed Android Studio / Intellij IDEA plugins 😄 One of my favorite programming habit is keeping my functions short and clear. Even with this approach it happens more often than I like that I struggle to…
-
Diventa un Android Dev
Dal 1 febbraio 2021, in collaborazione con CGM Consulting, partirà il mio corso di programmazione Android destinato a tutti coloro che si stanno avvicinando al mondo della programmazione mobile: https://bit.ly/corso-android-ivan-morgillo Anche se sei già un dev, c’è sempre la possibilità di aiutare qualche amico o amica interessati ad una carriera come Android Dev 😉 Il…
-
IntelliJ IDEA / Android Studio Tricks: “Presentation Assistant” plugin
One of my great passions related to programming is “Pair programming” or in its group version “Mob programming”. I have been fascinating by Extreme Programming for a long time and I strongly believe in its effectiveness. However something that often added friction while practicing PP was my extensive use of keyboard shortcuts. It’s a personal…
-
D’oh!! There is no copy method for Sealed Classes in Kotlin!
A few weeks ago we looked at one of my pain points of working with Kotlin Data Classes: nested copy and we improved on a basic Kotlin solution using a Lens. Today we look at another type of nesting: Sealed Classes nesting. When we wanted to create some sort of restricted hierarchy in Java we…
-
IntelliJ IDEA / Android Studio Tricks: “Save Actions” plugin
One of my favorite plugins that I constantly suggest to install is Save Actions Save Actions plugin allows me to run a few code quality actions whenever a file is saved: pretty straightforward. The configuration is accessible from Preferences -> Other Settings -> Save Actions and the default looks pretty much like this: This is…
-
How to fix the pain of modifying Kotlin nested data classes
When Kotlin arrived a few years ago one of the selling points was immutability: In object-oriented and functional programming, an immutable object (unchangeable object) is an object whose state cannot be modified after it is created. https://en.wikipedia.org/wiki/Immutable_object This is very cool! Value objects are such a huge help when it comes to reasoning about code, safety and avoiding weird subtle misbehaviours due to “things…