Author Archives: Vikas Hazrati

About Vikas Hazrati

Vikas is the CTO @ Knoldus which is a group of software industry veterans who have joined hands to add value to the art of software development. We do niche product and project development on Scala and Java. We consult and coach on effective software development and agile practices. With our focus on software craftsmanship you can be assured of a good quality at the right price. To know more, send a mail to info@knoldus.com or visit www.knoldus.com

Continuous Integration : Integrating BuildKite with Your Scala Project


In a very broad sense, BuildKite (earlier called BuildBox) is a continuous integration server that allows you to keep working on your code while there is a CI box which is reporting about any issues. The problem with most web … Continue reading

Posted in Architecture, Devops | 2 Comments

And You Thought Option is Just Another Way to Handle null


Ok, to start with, the recommendation is to use None instead of null. Ideally if in Scala code, we end up getting a NPE then that is sin! Well at least at Knoldus :) null in Java is used as … Continue reading

Posted in Scala | Tagged , | Leave a comment

FunHop: Understanding Referential Transparency


In this episode of FunHop, we would try to look at what is Referential Transparency, what is substitution model and how being immutable really helps. Referential transparency means that we can exchange the expression by its value or a value … Continue reading

Posted in Scala | Tagged , | Leave a comment

FunHop : What Are These Side Effects?


FunHop is imagined as a series which allows us to gradually hop into the realms of Functional Programming. Our vehicle for the journey is going to be Scala but the fundamentals are applicable across languages. In this episode we would … Continue reading

Posted in Scala | Tagged , | Leave a comment

Idiomatic Error Handling in Scala


Error handling in Scala can just be written like Java. Put in a little bit of pattern matching magic and you are done. However, given a little use of Scala built-in terrific beauties it can be made much better. Let … Continue reading

Posted in Scala | Tagged , | 5 Comments

Running with Implicits – Extending Functionality


We had an interesting case of enhancing the functionality of a logging library with our own case to feed data into DataDog. That brought us back to the quick discussion on implicits in Scala. Implicits in a quick sense is … Continue reading

Posted in Scala | Tagged , , | Leave a comment

Spray with Akka Starter Kit


Over the last few months, Spray is fast becoming the de-facto for all the products that we are working on. Irrespective of whether it is a product which has a full featured UI or a gaming component which needs to … Continue reading

Posted in Architecture, Scala | Tagged , , , , | Leave a comment

QuickTip: Integrating Amazon S3 in your Scala Product


This post is supposed to be a quick cheat sheet of integrating your Scala product with Amazon S3. The pre-requisites are that you have a valid S3 account and have the keys to access the account. We have put our … Continue reading

Posted in Amazon EC2, Scala | Leave a comment

Working with Multiple ssh Keys and Multiple Git Repositories


With multiple, git hosting repositories available and lots of coding being done, you end in situations like the subject of this email. Say, for example you have 2 accounts on BitBucket, you would not be allowed to use the same … Continue reading

Posted in Agile, Architecture | Leave a comment

Partial Functions and Modularizing Actor Receive blocks


A partial function is defined as It is a unary function which defines a domain. Not all values of A would be a part of the domain. For instance, in the following code block The odd values of A would … Continue reading

Posted in Architecture, Scala | Tagged , , , | 1 Comment