Create your first IntelliJ Plugin with Scala

demo based on my Google Summer of Code project

Bartosz Janota

Scala Developer @ KoalaMetrics

Student (Msc) @ Computer Science @ AGH IET

Automotive Technologies Lover

[Extreme] Sports Enthusiast

Student (retired) @ Google Summer of Code 2015 @ University of Massachusetts

IntelliJ IDEA

  • Natural Environment for most developers
  • Java IDE (since 2001)
  • Scala IDE (since late 2009)

All the official plugins - 1457

IntelliJ in numbers

Google Summer of Code

Google Summer of Code is a global program that offers students stipends to write code for open source projects. We have worked with the open source community to identify and fund exciting projects for the upcoming summer.

Who and how?

GSoC in numbers

11th edition

1051 accepted students this year

73 countries

335 from India

33 from Poland

137 open source organizations

$0b1010101111100

June - August

(12 weeks)

me & GSoC 2015

AutoMan Monitoring and Debugging Plugin

for IntelliJ IDEA

AutoMan allows programmers to write sophisticated human-computer programs, current problems:

  • humans behave very differently than computers
  • programs that manage hundreds or thousands of workers
  •  copious status messages only on STDOUT

Technical challenges

  • They have a basic information-reporting facility in AutoMan, that allows information to be exported - needs refinement - some hacking in Scala
  • AutoMan is highly concurrent and IntelliJ Plugins need to be thread-safe using IntelliJ's concurrency model - these models ale totally different (threads vs. futures/actors)
  • Reusable frontend
  • 100% Scala

What I did

How to start

Thank you :)!

Made with Slides.com