Scala in the Enterprise
Intro
• Eric Pederson
– ericacm@gmail.com / @ericacm
– Background in Java, Groovy, Javascript, PHP, etc.
• Consulting at NYSE
– One Scala app in production, one in QA
– Contract finished 1Q11
Platform
• JDK 1.6
• Scala 2.8
– Started development in March
– 2.8 was bundled with Intellij IDEA
• Using lots of Java libs
– Spring, Hibernate, CXF, Mule, ApacheMQ
– Bouncycastle, OpenSAML, Velocity, etc, etc.
• Only Scala lib currently in use is ScalaTest
What’s been working well
• Improved productivity
• Concise code
• Java interop
• Type inferencing
• REPL (mvn scala:console)
• Collections API
– Especially higher ordered fns (map/filter/etc)
• Lambdas / Closures
– Prevents proliferation of classes
What’s been working well
• Mixins / trait stacking
– trait UserIdentifierCmd extends ApiKeyCmd {..}
– trait RoleIdCmd extends ApiKeyCmd {..}
– object cmd extends UserIdentifierCmd with RoleIdCmd {..}
• For comprehenions / expressions
• Case classes / pattern matching
• Actors
• Type aliases
• Structural (duck) typing
• Import aliases
Complaints
• Eclipse support is weak
• Lack of type inferencing in IDEA
• Collections are not serializable
• Cannot write classfile annotations in Scala
• Would like Groovy style .? null short circuiting
Complaints
• Someone needs to write a “FP in Scala” book
– Plenty of literature using Haskell
– Blog posts here and there on advanced Scala FP
– scalaz is looking promising in this area
– Something like “Learn you a Haskell for Great
Good” plus an in-depth discussion on scalaz.
Currently looking at
• Lift “Box” or similar
– Options don’t include failure info
– scalaz Validation
• http://applicative-errors-
scala.googlecode.com/svn/artifacts/0.6/html/index.html
– http://www.milessabin.com/misc/Chain.scala
• Camel
– To replace Mule
– Scala DSL, Akka integration
• Scalate / SSP
• scala-time
• scalaz

More Related Content

PPTX
Developing Java EE applications with NetBeans and Payara
PPTX
JavaEE Microservices platforms
PPTX
Deploying Elastic Java EE Microservices in the Cloud with Docker
PPTX
Glass fish performance tuning tips from the field
PPTX
Scala and Spark are Ideal for Big Data
PDF
Gradual migration to MicroProfile
PDF
Chicago Microservices Integration Talk
PPTX
Architecture of Falcon, a new chat messaging backend system build on Scala
Developing Java EE applications with NetBeans and Payara
JavaEE Microservices platforms
Deploying Elastic Java EE Microservices in the Cloud with Docker
Glass fish performance tuning tips from the field
Scala and Spark are Ideal for Big Data
Gradual migration to MicroProfile
Chicago Microservices Integration Talk
Architecture of Falcon, a new chat messaging backend system build on Scala

What's hot (20)

PDF
Monitor Micro-service with MicroProfile metrics
PDF
Secure JAX-RS
PPTX
React Component in scala.js
PDF
Solving Enterprise Integration with Apache Camel
PDF
Effective cloud-ready apps with MicroProfile
PPTX
Why real integration developers ride Camels
PDF
Javantura v4 - FreeMarker in Spring web - Marin Kalapać
PPT
Java SE 7 New Features and Enhancements
PPT
Evolving IGN’s New APIs with Scala
PPTX
Essential Camel Components
PPTX
MVC 6 - the new unified Web programming model
PDF
Camel oneactivemq posta-final
PPTX
ASP.NET vNext
PDF
Javantura v4 - Spring Boot and JavaFX - can they play together - Josip Kovaček
PPTX
Road Trip To Component
PDF
Laravel 4 presentation
PPTX
Real-world #microservices with Apache Camel, Fabric8, and OpenShift
PDF
CFWheels - Pragmatic, Beautiful Code
PDF
Apache CXF New Directions in Integration
ODP
Integrating Apache Syncope with Apache CXF
Monitor Micro-service with MicroProfile metrics
Secure JAX-RS
React Component in scala.js
Solving Enterprise Integration with Apache Camel
Effective cloud-ready apps with MicroProfile
Why real integration developers ride Camels
Javantura v4 - FreeMarker in Spring web - Marin Kalapać
Java SE 7 New Features and Enhancements
Evolving IGN’s New APIs with Scala
Essential Camel Components
MVC 6 - the new unified Web programming model
Camel oneactivemq posta-final
ASP.NET vNext
Javantura v4 - Spring Boot and JavaFX - can they play together - Josip Kovaček
Road Trip To Component
Laravel 4 presentation
Real-world #microservices with Apache Camel, Fabric8, and OpenShift
CFWheels - Pragmatic, Beautiful Code
Apache CXF New Directions in Integration
Integrating Apache Syncope with Apache CXF
Ad

Viewers also liked (6)

PDF
2004 Survey of Experiences with Primary Health Care in US, UK, CA, AU, NZ
PDF
13091 Momin Gurung Black Belt Certificate
PDF
10589_Momin_Gurung_Black_Belt_Certificate
PPT
Current State of Pain Management Services in Primary Care in the UK
PPS
Health & Wealth
PPT
Nepal Introduction
2004 Survey of Experiences with Primary Health Care in US, UK, CA, AU, NZ
13091 Momin Gurung Black Belt Certificate
10589_Momin_Gurung_Black_Belt_Certificate
Current State of Pain Management Services in Primary Care in the UK
Health & Wealth
Nepal Introduction
Ad

Similar to Scala in the Enterprise (20)

PPTX
Scala adoption by enterprises
PPT
The State of Scala
PPTX
Scala in the Wild
PPT
Introducing Scala to your Ruby/Java Shop : My experiences at IGN
PDF
Challenges of moving a java team to scala
PDF
WTFAST Crack Latest Version FREE Downlaod 2025
PDF
uTorrent Pro Crack Latest Version free 2025
PDF
Adobe Master Collection CC Crack 2025 FREE
PDF
AOMEI Partition Assistant Crack 2025 FREE
PPTX
Evolving Scala, Scalar conference, Warsaw, March 2025
PDF
K7 Total Security 16.0.1260 Crack + License Key Free
PDF
Scala - from "Hello, World" to "Heroku Scale"
ODP
A Tour Of Scala
PPTX
Scala in practice
PDF
QCon 2015 Scala for the Enterprise: Get FuNkEd Up on the JVM
PDF
Unit 1 notes.pdf
PDF
Martin Odersky: What's next for Scala
PDF
Absorbing Scala Into Java Ecosystem
PDF
Scala in Model-Driven development for Apparel Cloud Platform
PDF
Scala Frustrations
Scala adoption by enterprises
The State of Scala
Scala in the Wild
Introducing Scala to your Ruby/Java Shop : My experiences at IGN
Challenges of moving a java team to scala
WTFAST Crack Latest Version FREE Downlaod 2025
uTorrent Pro Crack Latest Version free 2025
Adobe Master Collection CC Crack 2025 FREE
AOMEI Partition Assistant Crack 2025 FREE
Evolving Scala, Scalar conference, Warsaw, March 2025
K7 Total Security 16.0.1260 Crack + License Key Free
Scala - from "Hello, World" to "Heroku Scale"
A Tour Of Scala
Scala in practice
QCon 2015 Scala for the Enterprise: Get FuNkEd Up on the JVM
Unit 1 notes.pdf
Martin Odersky: What's next for Scala
Absorbing Scala Into Java Ecosystem
Scala in Model-Driven development for Apparel Cloud Platform
Scala Frustrations

Recently uploaded (20)

PDF
Getting Started with Data Integration: FME Form 101
PDF
A review of recent deep learning applications in wood surface defect identifi...
PDF
How ambidextrous entrepreneurial leaders react to the artificial intelligence...
PDF
A contest of sentiment analysis: k-nearest neighbor versus neural network
PDF
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
PDF
Hybrid horned lizard optimization algorithm-aquila optimizer for DC motor
PPTX
Tartificialntelligence_presentation.pptx
PPTX
O2C Customer Invoices to Receipt V15A.pptx
PDF
A Late Bloomer's Guide to GenAI: Ethics, Bias, and Effective Prompting - Boha...
PDF
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
PPTX
The various Industrial Revolutions .pptx
PPT
Geologic Time for studying geology for geologist
PPTX
Modernising the Digital Integration Hub
PPT
What is a Computer? Input Devices /output devices
PDF
August Patch Tuesday
PDF
Taming the Chaos: How to Turn Unstructured Data into Decisions
PPT
Module 1.ppt Iot fundamentals and Architecture
PDF
STKI Israel Market Study 2025 version august
PDF
WOOl fibre morphology and structure.pdf for textiles
PDF
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
Getting Started with Data Integration: FME Form 101
A review of recent deep learning applications in wood surface defect identifi...
How ambidextrous entrepreneurial leaders react to the artificial intelligence...
A contest of sentiment analysis: k-nearest neighbor versus neural network
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
Hybrid horned lizard optimization algorithm-aquila optimizer for DC motor
Tartificialntelligence_presentation.pptx
O2C Customer Invoices to Receipt V15A.pptx
A Late Bloomer's Guide to GenAI: Ethics, Bias, and Effective Prompting - Boha...
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
The various Industrial Revolutions .pptx
Geologic Time for studying geology for geologist
Modernising the Digital Integration Hub
What is a Computer? Input Devices /output devices
August Patch Tuesday
Taming the Chaos: How to Turn Unstructured Data into Decisions
Module 1.ppt Iot fundamentals and Architecture
STKI Israel Market Study 2025 version august
WOOl fibre morphology and structure.pdf for textiles
From MVP to Full-Scale Product A Startup’s Software Journey.pdf

Scala in the Enterprise

  • 1. Scala in the Enterprise
  • 2. Intro • Eric Pederson – ericacm@gmail.com / @ericacm – Background in Java, Groovy, Javascript, PHP, etc. • Consulting at NYSE – One Scala app in production, one in QA – Contract finished 1Q11
  • 3. Platform • JDK 1.6 • Scala 2.8 – Started development in March – 2.8 was bundled with Intellij IDEA • Using lots of Java libs – Spring, Hibernate, CXF, Mule, ApacheMQ – Bouncycastle, OpenSAML, Velocity, etc, etc. • Only Scala lib currently in use is ScalaTest
  • 4. What’s been working well • Improved productivity • Concise code • Java interop • Type inferencing • REPL (mvn scala:console) • Collections API – Especially higher ordered fns (map/filter/etc) • Lambdas / Closures – Prevents proliferation of classes
  • 5. What’s been working well • Mixins / trait stacking – trait UserIdentifierCmd extends ApiKeyCmd {..} – trait RoleIdCmd extends ApiKeyCmd {..} – object cmd extends UserIdentifierCmd with RoleIdCmd {..} • For comprehenions / expressions • Case classes / pattern matching • Actors • Type aliases • Structural (duck) typing • Import aliases
  • 6. Complaints • Eclipse support is weak • Lack of type inferencing in IDEA • Collections are not serializable • Cannot write classfile annotations in Scala • Would like Groovy style .? null short circuiting
  • 7. Complaints • Someone needs to write a “FP in Scala” book – Plenty of literature using Haskell – Blog posts here and there on advanced Scala FP – scalaz is looking promising in this area – Something like “Learn you a Haskell for Great Good” plus an in-depth discussion on scalaz.
  • 8. Currently looking at • Lift “Box” or similar – Options don’t include failure info – scalaz Validation • http://applicative-errors- scala.googlecode.com/svn/artifacts/0.6/html/index.html – http://www.milessabin.com/misc/Chain.scala • Camel – To replace Mule – Scala DSL, Akka integration • Scalate / SSP • scala-time • scalaz