Scala vs Kotlin

Good comparison on Scala vs Kotlin…

Agilewombat

It’s been a long time since I’ve updated this blog. Over the year I’ve moved away from Scala as my preferred language and towards Kotlin. I’ve found Kotlin a refreshing approach as its borrowed a lot of the good things I liked about Scala but kept it simple and practical by avoiding a lot of the gotchas and ambiguity that can exist in Scala.

Here is a collection of things I like about Scala and Kotlin and also a comparison of how these features are accomplished in each language.

Type Declaration and Inference

Something I love about both these languages is they both have static typing with type inference. This gives you the power of compile time type checking with out the declarative boiler plate. Largely it works the same in both languages. Both languages also have preference to immutable type declaration as well with the optional type declaration being…

View original post 1,243 more words

zsh (zee shell) issues & fixes

I recently switched to zsh and it looks good so far. I am not a heavy terminal user but features like auto-complete, aliases, oh-my-zsh are very useful and looks fancier. I am not posting all the steps needed to enable zsh but here are quick fixes for two issues I found.

Enabling subl command

Add following sublime alias  open files in Sublime directly from terminal

alias subl="'/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl'"

Enable regular shell commands

Uncomment following line in .zshrc file

export PATH="/usr/bin:/bin:/usr/sbin:/sbin:$PATH"

Do not forget to restart terminal or $ source ~/.zshrc to activate the changes.

AFTER WORK, IS WHAT DETERMINES YOUR FUTURE! SPEND ONE HOUR PER DAY DOING THESE 5 THINGS AND YOUR LIFE WILL CHANGE FOREVER!

After work, is what determines your future! Spend one hour per day doing these 5 things and your life will change forever!

WHY WE QUIT OUR JOBS IN ADVERTISING TO SCRUB TOILETS

How Far From Home

After being gone exactly 6 months, I feel it necessary we share the uglier side of our trip. Browsing through our blog posts and Instagram feed, it seems like we’re having the time of our lives. And don’t get me wrong – we are. It’s bloody amazing. But it’s not all ice-creams in the sun and pretty landscapes. Noooooo. So far, I think we’ve tallied 135 toilets scrubbed, 250 kilos of cow dung spread, 2 tons of rocks shovelled, 60 metres of pathway laid, 57 beds made, and I cannot even remember how many wine glasses we’ve polished.

You see, to come from the luxuries we left behind in Johannesburg, to the brutal truth of volunteer work, we are now on the opposite end of the scale. We’re toilet cleaners, dog poop scoopers, grocery store merchandisers, and rock shovelers.

It’s painstakingly hard and dirty work.

And although the last few…

View original post 427 more words

Add custom commands to Mac OS X terminal

As a developer, I spent significant amount of time in just typing some commands on terminal. And sometimes I figure it out I typed command wrongly in mid way of execution. I felt the need to to add shortcut commands/custom commands to Terminal to save my time. Here is how I added custom commands to my MAC. OS X terminal comes with .bash_profile file and it will be run every time you open a new terminal. So you can add custom commands, like following, to that file.

#Build maven project
mpb() {
    mvn clean package
}
#Open firefox application, with a argument
ff(){
    open -a /Applications/Firefox.app/ "$1"
}

If you want to keep custom commands in a separate file, you can create .custom-commands.bash hidden shell script file and include it in .bash_profile like below.

source ~/.custom-commands.bash