Minutes of the 5th meeting of the Scala Center, Q2 2017

Minutes are archived on the Scala Center website.

The following is a summary of the meeting which took place on Tuesday 30 May 2017. After the meeting, it was discovered that part of the proceedings had not been undertaken correctly, and the outcome was subsequently reviewed. This is explained in detail in the Addendum.

Summary

The following agenda was distributed to attendees: agenda.

Scala Center activities for the past quarter included progress on: Scastie, Zinc, sbt, the Scala Improvement Process, the Scala Platform Process, the Scala and Scala Center websites, Scalafix, direct-dependency-only compilation, the 2.13 collections overhaul, Scala.js, Scala Native, the Spark and Capstone MOOCs, and ecosystem “open source sprees”.

Full details on these activities are in Heather’s report.

Martin Duhem has been hired as an engineer and will initially work on Scala Native.

Three new proposals were made:

  • SCP-010: Better Compilation Performance Information (James Belsey)
    • voted on and accepted
  • SCP-011: Debugging Position Information (Miles Sabin, on behalf of Lars Hupel)
    • discussed; postponed for further consideration; please also see the Addendum
  • SCP-012: Improve Resources for Learning sbt (Bill Venners)
    • withdrawn after discussion

Date, Time and Location

The meeting took place at 2:00pm on Tuesday, May 30 at the Bella Center in Copenhagen.

Minutes were taken by Seth Tisue (secretary).

Attendees

Attendees present

Board members and officers physically present:

  • James Belsey, Morgan Stanley
  • Stu Hood, Twitter
  • Raúl Raja Martinez, 47 Degrees
  • Adriaan Moors, Lightbend
  • Jeff Olchovy, Tapad

Participating remotely were:

  • Thomas Gawlitza, SAP
  • Jonathan Perry, Goldman Sachs
  • Bill Venners, community/Artima

Officers:

  • Heather Miller (director), EPFL
  • Martin Odersky (technical advisor), EPFL
  • Jon Pretty (board chairperson), Propensive
  • Seth Tisue (secretary), Lightbend

Not present:

  • Lars Hupel, community/Typelevel
  • Tim Perrett, Verizon
  • Frederick Reiss, IBM

Proceedings

As chairperson, Jon Pretty conducted the meeting.

Activities

As Executive Director, Heather Miller summarized Scala Center activities since the last meeting.

Staffing levels at the Scala Center are the same as last quarter with the exception of new employee Martin Duhem, who will initially work on Scala Native.

Most of Heather’s remarks were based on her detailed report on the Center’s recent activities. The following notes are a supplement to her report.

Scastie: Heather demoed the latest UI.

Scala Platform: Some progress items are in the report, but Heather explained that Jorge has focused mostly on sbt and zinc instead recently, but Travis may be able to help pick up the slack.

Scala Native: Seth asked about the possibility of compiling scalac with Scala Native. Heather said they’re interested but there isn’t a ticket on it yet.

open source sprees: Heather says the name was changed from “hackathon” to emphasize that it can serve as an introduction to working on open source and multiple open source projects are involved at each spree.

Election of Officers

Jon Pretty (chairperson), Martin Odersky (technical advisor), and Seth Tisue (secretary) were re-nominated and unanimously re-elected. There were no other nominations.

Financial Statement

See Heather’s report for details and figures on the Center’s financial situation.

Proposals

SCP-010 Better Compilation Performance Information

Proposed by James Belsey from Morgan Stanley. (He also credited Rory Graves and Mike Skells.)

See the proposal text for details. Also, there was some pre-meeting discussion between board members and community members on the pull request.

On the pull request, in response to Stu’s question about stable, long-lived compiler benchmarks, Adriaan said “We at Lightbend have been working on this. We haven’t announced because it’s still in progress”, but a blog post on this work is coming soon.

During the meeting itself, James also responded to Stu’s concerns by emphasizing that most developers are unlikely to contact the Scala team directly with specific performance concerns.

Martin and Adriaan voiced support for the proposal; Martin suggested some additional metrics that could be tracked.

Heather says Jorge is excited about working on this, but it will have to be balanced against his sbt/zinc and other work. The proposal itself leaves the effort level unspecified; Heather suggests half an engineer for a quarter, then assess.

In the voting at the end, Twitter abstained but the rest of the board members present voted in favor. This was a sufficient number of votes despite absences, so the proposal is accepted.

SCP-011 Debugging Position Information

Drafted by Sam Halliday and proposed via Lars Hupel (who couldn’t make the meeting).

See the proposal text for details. Also, there was some pre-meeting discussion on the pull request involving Iulian Dragos, Wiesław Popielarski, Sébastien Doeraene, and others.

Concerns and questions raised included:

  • How does IntelliJ manage to support some of this already? Do we need to consult with JetBrains on this?
  • Is solvable in a sufficiently standardized way, across IDEs?
  • James Belsey said that .NET has good support here and “it makes a huge difference in debugging”.
  • James Belsey asked about async debugging (e.g. with scala-async), but Adriaan thought that was probably a separate proposal.
  • Heather was concerned about whether this is tackle-able in the short term with the available engineers.

(Much of the discussion is indistinct on the recording of the meeting, so this isn’t an complete representation, unfortunately.)

“I don’t feel like we have enough knowledge” yet on this, commented Jon. The board voted on whether the proposal was ready for a vote, and the majority thought it was not, so the proposal isn’t rejected, just postponed for possible future consideration. There was substantial praise for the proposal from multiple board members. Stu Hood emphasized the importance of giving quality feedback to the proposers.

SCP-012 Improve Resources for Learning sbt

Drafted by Jon Pretty and proposed via Bill Venners.

See the proposal text for details.

Could this be a MOOC? Heather explained that we need to distinguish between initiatives funded by EPFL/MOOC money and those financed by advisory board funds.

Martin felt strongly that sbt is not a suitable subject for an EPFL-branded MOOC.

James Belsey said that even though Morgan Stanley uses sbt, only a small number of their developers actually need that much expertise on it. If they’re a typical shop in that respect, then the audience for more learning materials might not be that large.

Jeff Olchovy says sbt is used heavily at Tapad, and he has presented on sbt at several Scala conferences. He supports the proposal because he thinks the existing sbt documentation is lacking for beginners, not for more advanced users.

Heather says that when Jorge gathered feedback about sbt, some of the feedback was about documentation. So some documentation improvements could actually happen just as part of his general sbt work.

Seth felt that although more and better sbt materials would be good to have, he thinks the previously accepted proposal SCP-008 is far from completed and is higher priority, and that any available writing and editing resources should go there first.

Some further discussion is indistinct on the meeting recording. In the end, Bill withdrew the proposal on Jon’s recommendation, based on the feedback.

Other business

Stu Hood praised the stepped-up communication and increased transparency from the Scala Center in recent months.

Closing remarks

Jon reminded everyone to please let potential new board members know about the Center and encourage them to join.

Planning of the next meeting will happen later.

Addendum

Following the meeting, it emerged that the criterion upon which a majority of attendees voted to postpone the acceptance vote of SCP-011 (despite broad support)—that JetBrains (as the developers of the most popular IDE for Scala) should be involved in the discussion—was ill-founded, as JetBrains had worked closely with Sam Halliday in the drafting of the proposal.

This was not clear to the attendees in the meeting as GitHub (where many of JetBrains’ could be seen) was not functioning at the time, and the member making the proposal (Lars Hupel) was unable to be present in the meeting.

Jon felt that had this been known during the meeting, many of the attendees would have voted differently, and subsequently invited all voting members of the board to review the decision to postpone the proposal. All voting members were informed of the new information, and asked firstly whether they would like to overturn the earlier decision to postpone the vote, and secondly (regardless of their answer to the first question), whether they vote to accept the proposal as a recommendation.

The respondents voted unanimously (with 3 abstentions) to overturn the decision to postpone the vote on the proposal, and voted 7-1 (with 3 abstentions) in favor of accepting the proposal as a recommendation. SCP-011 has therefore been adopted as a recommendation.