Minutes of the 30th meeting of the Scala Center, Q3 2023

Minutes are archived on the Scala Center website.

Summary

The following agenda was distributed to attendees: agenda.

Center activities for the past quarter focused on Scala 3 compiler performance, a specification for match types, scala3-migrate, sbt, Scastie, and Scala Days in Madrid.

Details are below and in the Center’s activity report:

No new proposals were received this quarter.

Other business discussed included Scala 2, the role of the community representatives, Scala Days, the Scala blog, and officer elections.

Date, Time and Location

The meeting took place virtually on Tuesday, October 17, 2023 at 15:00 (UTC).

Minutes were taken by Seth Tisue (secretary).

Attendees

Officers:

  • Chris Kipp (chairperson)
    • also board member, representing Lunatech
  • Darja Jovanovic (executive director), EPFL
  • Sébastien Doeraene (interim technical director), EPFL
  • Seth Tisue (secretary), Lightbend
    • also board member, representing Lightbend, subbing for Lukas Rytz

Board members:

  • Daniela Sfregola, Morgan Stanley
  • Paweł Marks, VirtusLab (subbing for Krzysztof Romanowski)
  • Noel Markham, Xebia Functional (subbing for Maureen Elsberry)
  • Claire McGinty, Spotify
  • Lukas Rytz, Lightbend
  • Eugene Yokota, community representative

Paweł introduced himself, as it was his first time attending. He is best known to the community as the Scala 3 release officer.

Technical report

Seb, as interim technical director, summarized Scala Center activities since the last meeting. He presented from these brief slides, which concisely show what the Center is working on:

His remarks were based on the Center’s more detailed Q3 quarterly activity report:

And the Center’s Q4 roadmap:

The following notes do not repeat the content of the report and roadmap, but only supplement them.

Eugene suggested that the Center do more to make sure that these activities and plans are known to the community, including to “CTO level” people. Even quite short blog posts can be beneficial for this, he suggested. Seb and Darja both agreed that there should be more publicity outside of the Scala contributors forum, though it’s challenging with the current smaller team. Darja also reminded the board that posts on the Scala blog don’t always need to originate from the Center. Depending on the subject matter, posts from member companies and from the wider community are welcome.

Chris asked if the Center looks at download numbers and uses that information to help decide what to work on. Seb said yes, they do.

Eugene asked about the work on improved stack traces: is it for Scala 3 only? Seb said it works on Scala 2 as well, but the improvements are more dramatic on Scala 3, because TASTy can be used. Seth mentioned that the team at Lightbend is considering helping to bring this work to Scala 2 users.

Management report

Darja presented this section.

Scala Days Madrid was a Q3 highlight. Center staff gave three talks and sat on two panels. The Center had a booth for outreach and fundraising. In addition to co-organizing the conference itself (with Xebia Functional), the Center also co-organized associated events like ScalaBridge, the Scala open source spree, an all-day tooling summit, an in-person SIP meeting, and an advisory board (and SIP) dinner.

Scala Days allows the Center to raise awareness of the Center, meet the community, receive feedback, gather fundraising leads, and encourage community activity such as meetups.

Staff changes at the Center this quarter: Chris’s Lunatech-sponsored stint at the Center has ended. Guillaume Martres has taken a job in industry, though he will stay involved with Scala 3 compiler work part-time. These interns completed their stints: Lucas Nouguier, Ayman Lamyaghri, Shiv Verkaran. Sylvie Buchard has left the Center, after many years of part-time service; the Center has hired Valerie Meillaud to replace her (also part-time).

The rest of Darja’s remarks were about budget and fundraising. She outlined the Center’s fundraising strategy and presented worst-case and best-case budget scenarios, depending on funding. The Center will likely finish the year in the red, but it’s not clear yet by how much. In order to grow the team again, new member companies are needed. Membership regulation changes are under consideration. Some other sources of funds are also being explored. She noted that the financial climate is currently difficult industry-wide.

A board member asked about accepting direct donations from individuals. Darja said these will be accepted through the “Scala shop”, when it opens.

A board member asked about Scala 2 vs Scala 3. Could the Center’s focus on Scala 3 be a negative for fundraising, as many companies are still on Scala 2? Some discussion ensued. Note that some of the Center’s work already spans both versions, and that proposals involving Scala 2 are welcome. In its fundraising efforts, the Center could remind prospective members of this.

Scala 2 report

This was presented by Lukas.

Since the last meeting, Scala 2.13.12 was released, with the most notable change being support for quickfixes (aka “actionable diagnostics”). They are supported in Metals and support is coming soon in IntelliJ. The compiler can also directly apply the fixes it suggests. Another notable change is that -Xsource:3 errors can be downgraded to warnings or silenced entirely. The release also supports JDK 21, which is an LTS release.

The following forum threads are open for discussing the contents and timing of the next releases:

Chris asked about quickfixes versus Scalafix. When is it appropriate for fixes to be compiler-based versus Scalafix-based? Lukas acknowledged that there is overlap, but he noted that Scalafix is user-extensible.

Community report

Eugene said the community has largely been “peaceful”. There are encouraging signs of local meetups coming back to life in London, Tokyo, and elsewhere. The Northeast Scala Symposium has restarted and will be virtual this year. However, there is community concern about the Scala job market, especially considering that the job market industry-wide is currently challenging, given recent layoffs at many companies, including major Scala users such as Twitter. It is difficult to distinguish the climate for Scala job seekers specifically from the job market generally.

He mentioned strong ongoing community-based interest in Bazel and improvements to its Scala support.

Chris asked about the role of the community representative(s). Are they intended to represent the open-source community specifically, or the Scala community more generally? Are we doing enough to encourage proposals to be submitted through this channel? Eugene said he is interested in hearing input from everyone, but he sees his own role as representing open source primarily, since companies are free (and encouraged) to join the board instead. He also said that since the Center’s engineers can’t themselves do everything the community wants, perhaps the Center could organize working groups to help the community to self-organize to accomplish certain goals.

Several board members mentioned how crucial it is for Scala’s success (including Scala 3’s success specifically) that IntelliJ’s Scala support be high qualtiy.

Chris invited board members to share feedback about Scala Days Madrid. One board member said they were pleasantly surprised by how many new and diverse faces were present and reminded us (to general agreement) that it’s important to keep the conference a good experience for newcomers as well as veterans.

Darja invited the board to help produce content for the Scala blog. Posts don’t always have to be written by Center staff. She also mentioned the idea of using the blog to alert the community to news and posts sourced elsewhere. A board member asked about news sites such as The Scala Times and This Week in Scala; could those be carried on the Scala blog? Darja said she’d think about whether there’s a path for something like that, to help get more Scala news out to more people. Two board members mentioned the possibility of using the blog to let the community about new libraries. And it was noted that some of the Center’s activities get publicized on the contributors’ forum only but might be of wider interest.

Elections

For chairperson, Chris Kipp indicated his willingness to continue as chair and was re-elected unanimously. (Chairs are not expected to serve for longer than one year, but a willing chair is welcome to serve for longer. The chair not need be a voting board member.)

Also re-elected without any other nominations being made were Martin Odersky (technical advisor) and Seth Tisue (secretary).

Conclusion

Because of December holidays, a likely time for the next meeting is early or mid January. Chris said he’ll try to schedule all of the 2024 meetings soon, rather than wait and schedule them a quarter at a time.