sneaking scala through the back door

Post on 11-May-2015

7.006 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Is your organization committed to the power of the Java platform but stuck in the Java language? Do you spend your time wishing you could use Scala at work, but don’t see how you can get it approved? There are good reasons to push for it! Scala is a popular language with Java developers because of its expressiveness and lack of boilerplate code. It allows you to focus on the problem rather than the ceremony required by Java. Yet, businesses are often reluctant to move to Scala, citing concerns about availability of developers and risks of working in a new language. Learn strategies for bringing Scala into your organization, including using it in non-production code, integrating Scala into a Java application, and easing your fellow programmers into functional programming. See how to use Scala for new development while maintaining your investment in existing Java code. Hear stories of how other organizations have done this and succeeded. You’ll leave knowing how you can move to Scala without risking your job or the success of your projects.

TRANSCRIPT

Sneaking Scala through

the Back Door

Dianne MarshOSCON 2013

Try the Front Door

Know the “Why”

DO

Present from audience’s point of

view

DO

Use buzzwords

DON’T

Emphasize high value points

DO

Represent success stories

DO

Typesafe Customers

Edda

Records AWS History

Open SourceScala

Freedom & Responsibility

Killer Apps

•Play for web (Scala and Java)

•Akka for concurrency

•Object-oriented + mathematical modeling = good fit for Scala

Domains

•Business Intelligence

•Social apps

•Border security

•eCommerce

•Anti-spam

•Advertising

Companies say ...

•Rapid development and productivity

•Asynchronous stateless scalabilty

•Massive configurability for peak load

•Reduces time to market

•DSL reduces load on devs

Anticipate objections

DO

Companies say ...•“Easy to find very good Java engineers and

excite them with new technologies”

•“Look for smart, energetic engineers eager to learn”

•“No prior knowledge of Java, productive 2-3 weeks into project”

•“Quickly productive with Scala”

•Reduces time to market

•DSL improves reduces load on devs

Use Scala for new development

DO

Leverage existing Java code

DO

Convert all legacy code immediately*

*(maybe never)

DON’T

Use Scala as a Better Java

DO

Use Scala for non-production code

DO

Refer to code written before 2.9

DON’T

Make Scala perl-like

DON’T

Discuss developer productivity

DO

Draw from team’s experience

DO

Use Scala to attract candidates

DO

Try ScalaTest

DO

Stress about functional perfection

DON’T

Try Play web framework

DO

Try Scalaz

DON’T

Learn about parallel collections

DO

Leverage TypeSafe’s support

DO

Be a language zealot

DON’T

Get feedback from others

DO

Contact Info

•twitter: @dmarsh

•Google+: dmarsh@netflix.com

•email: dmarsh@netflix.com

Additional References

• Making a persuasive argument: http://sixminutes.dlugan.com/logos-examples-speaking/

• Atomic Scala at http://atomicscala.com

• Learn Scala with the Koans at http://scalakoans.org

• Integrate testing with Scalatest: http://www.scalatest.org/

• Case studies: http://typesafe.com/company/casestudies

• Futures and promises in 2.10: https://speakerdeck.com/heathermiller/futures-and-promises-in-scala-2-dot-10

top related