

Using Scala to handle exponential growth at a startup (part 2) - pughbri
https://www.lucidchart.com/techblog/2013/02/13/using-scala-to-handle-exponential-growth-at-a-startup-part-2/

======
mark_l_watson
That was a good interview. I also got very interested in Scala while taking
Martin Odersky's excellent functional programming class last year. I ended up
concentrating on Clojure for my (solo) work because of decades of Lisp
experience, but the Scala language and developing ecosystem is also very
compelling.

I have friends who are still doing Java enterprise scale work, but for most
applications something more light weight and concise like Scala, Clojure, or
JRuby seems like a better way to use the JVM ecosystem. In addition to more
agile languages, I believe that the best practices for most development use
microframeworks and composable libraries.

~~~
ralphc
I had eight years of (hobbyist) Lisp experience when I was laid off in May; by
then I was using Clojure in my home projects. Two of my interviews mentioned
Scala, one place used it as their main language. I decided that, even if the
languages were equally powerful and interesting, I was betting on the wrong
horse, and have started to concentrate with Scala.

~~~
mark_l_watson
I think you made the correct decision. BTW, even though I am using Clojure on
my own business ideas/projects, in the last 15 years as a consultant I have
always used Common Lisp, Java, Ruby, or Clojure because one of those languages
was what a particular customer requested. I never try to talk a customer into
a particular technology stack.

------
manishsharan
My pet peeve with these type of articles is that they miss the fact that there
are two type of growth challenges that a organizations face. One , the happy
growth, is where a lot of people begin using the system . The other growth is
team growth -- when you need to on-board a lot of people quickly and get them
up-to speed so that your organization can sustain its growth.

I appreciate the fact that Scala with Akka is very good at concurrency issues.

I am curious to know how well organizations have scaled up their Scala teams.
How easy was it transition new developers into organization-bread-and-butter
type of products.

~~~
amalag
As a follow up, PHP as he mentioned he considered an entry level language.
Scala is not. He had skilled developers who could pick up Scala? I think in
most cases the 'retooling' would be a big problem.

~~~
pughbri
Brian from Lucidchart here. I do think we have a fantastic dev team at
Lucidchart which makes the switch to Scala easier. We've tried to keep a very
high bar in our hiring.

Our team has been able to come up to speed on Scala and get productive pretty
quickly. Within a month, the team felt comfortable in Scala. Most team members
read through Odersky's "Programming in Scala" book to get an overview of the
language which was helpful. We've also had some team members go through the
Coursera class.

Our experience is that there is a cost to Scala when it comes to new hires.
Very few new hires have any meaningful Scala experience so they have to come
up to speed on the language whereas with Java or PHP most new hires are
already proficient in the language. In the end, however, we believe that the
benefits of Scala, Play and Akka over the long term will outweigh the short
term cost of training new hires. Even with our new hires, we find they are
pretty comfortable and productive after a month of learning and using Scala.

~~~
continuations
What are the reasons that made you decide on Play+Scala instead of Play+Java?

I'm going through a similar decision so would love to hear your thoughts on
this.

------
amalag
PHP to Scala, sounds like crawling to running to me.

------
enuncajon
Good article about making tough decisions early on that enable growth down the
road. Thank you for the perspective and transparency.

------
why-el
The link to the previous post in the article 404s. Here it is:
[https://www.lucidchart.com/blog/2012/12/18/using-scala-
expon...](https://www.lucidchart.com/blog/2012/12/18/using-scala-exponential-
growth-at-a-startup/)

------
tel
Semitangent: I'm always interested in stories about startups using or
considering between Scala/Haskell.

