Skip to content

Commit dd2f70d

Browse files
authored
Merge pull request #85 from scala/minutes-march-2019
March 2019 advisory board minutes
2 parents 127e7ff + dd7f0ca commit dd2f70d

File tree

2 files changed

+298
-0
lines changed

2 files changed

+298
-0
lines changed
299 KB
Binary file not shown.
Lines changed: 298 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,298 @@
1+
---
2+
layout: contact
3+
---
4+
5+
# Minutes of the 12th meeting of the Scala Center, Q1 2019
6+
7+
Minutes are [archived](https://scala.epfl.ch/records.html) on the
8+
Scala Center website.
9+
10+
## Summary
11+
12+
The following agenda was distributed to attendees:
13+
[agenda](https://github.com/scalacenter/advisoryboard/blob/master/agendas/012-2019-q1.md).
14+
15+
Rob Norris is the new community representative, replacing Lars Hupel.
16+
(Bill Venners continues as the other community representative.)
17+
18+
Scala Center activities for the past quarter focused on
19+
Coursier, Bloop, MOOCs, documentation, Metals, mdoc,
20+
Scala.js, SIP meetings for Scala 3, and Scala Days 2019.
21+
22+
Full details on these activities are in
23+
[Sébastien's report](../2019-03-06-march-6-2019.pdf).
24+
25+
The main additional topic discussed at the meeting was the question of
26+
allowing board members to contribute engineering effort directly
27+
instead of funds. Sentiment on the board is generally positive; the
28+
change in still in process with EPFL legal and with a prospective new
29+
member.
30+
31+
No new proposals were made this quarter.
32+
33+
## Date, Time and Location
34+
35+
The meeting took place virtually on Wednesday, March 6, 2019 at 4:30pm
36+
(UTC).
37+
38+
Minutes were taken by Seth Tisue (secretary).
39+
40+
## Attendees
41+
42+
Board members present:
43+
44+
* James Belsey, Morgan Stanley
45+
* Stu Hood, Twitter
46+
* Rob Norris, community/Typelevel
47+
* Olga Makhasoeva, 47 Degrees
48+
* Adriaan Moors, Lightbend
49+
* Jonathan Perry, Goldman Sachs
50+
* Frederick Reiss, IBM
51+
* Julien Tournay, Spotify
52+
* Bill Venners, community/Artima
53+
54+
Apologies:
55+
56+
* Thomas Gawlitza, SAP
57+
58+
Officers:
59+
60+
* Sébastien Doeraene (director), EPFL
61+
* Jon Pretty (chairperson), Propensive
62+
* Martin Odersky (technical advisor), EPFL
63+
* Seth Tisue (secretary), Lightbend
64+
65+
## Proceedings
66+
67+
As chairperson, Jon Pretty conducted the meeting.
68+
69+
### Community representative
70+
71+
The meeting began with a vote to approve the Rob Norris as the new
72+
community representative.
73+
74+
Seb explained that the nomination arose as the outcome of discussions
75+
among "the whole Scala Center", as well as discussion at the December
76+
meeting. Then, Rob was voted in by the board. (Jon stopped the vote
77+
once the necessary number of votes were in.)
78+
79+
After the vote, Rob joined the meeting and introduced himself. "I've
80+
been using Scala for about ten years, and I've been involved in the
81+
community and speaking at conferences for the last five or six
82+
years. [...] I spend a lot of time talking to [Scala] beginners, as
83+
well as advanced users." See separate [blog
84+
post](https://www.scala-lang.org/blog/2019/03/18/announcing-new-community-representative.html)
85+
for further information on Rob's background and professional
86+
affiliations.
87+
88+
### Activities
89+
90+
As the Center's Executive Director, Sébastien Doeraene summarized
91+
Scala Center activities since the last meeting.
92+
93+
Most of Seb's remarks were based on his [detailed report](../2019-03-06-march-6-2019.pdf)
94+
on the Center's recent activities. The following notes are a
95+
supplement to Sébastien's report.
96+
97+
He began by saying that the report has be redesigned to be more
98+
integrated, an group effort. He invites feedback on the new format.
99+
100+
The Coursier work (on
101+
[SCP-020](https://github.com/scalacenter/advisoryboard/blob/master/proposals/020-sbt-transitive-dependencies-conflicts.md))
102+
is progressing well, but isn't complete yet.
103+
104+
The main Bloop highlight is faster incremental and no-op compiles,
105+
especially for complex builds.
106+
107+
The trial of EdX as a MOOC platform began in January with the new
108+
Programming Reactive Systems course. Results are still preliminary,
109+
but "it looks like it's gaining as much traction as the other
110+
courses". Firmer conclusions will be possible in a few more months.
111+
112+
Metals is "not shipped yet, but almost" (but has users already,
113+
regardless). Code completion support will be in soon, at which point
114+
it will be "a viable alternative" IDE experience, in Seb's view.
115+
116+
For Scala Days 2019, platinum sponsorships are all signed and a number
117+
of gold sponsorships are lined up, with more coming. The conference
118+
schedule has now been announced. 15% of tickets sold in less than
119+
two weeks, which is very promising.
120+
121+
### Financial report
122+
123+
(Note that the USD/CHF exchange rate is currently very nearly 1-to-1.)
124+
125+
"We got the rough results from the fourth quarter of our MOOCs for
126+
2018... We took in CHF 96K total," but it isn't known yet exactly how
127+
much of that money will actually come to the Scala Center. This is
128+
"slightly lower than our usual income for the MOOCs, we're not really
129+
sure why, but we hope that the new course will of course change the
130+
direction."
131+
132+
The board continues with eight full members, for CHF 400K/year total
133+
income. Payroll outlay is currently only around CHF 300K, so the
134+
Center is hiring and is actively interviewing candidates. "If you
135+
know people who would like to work at the Scala Center, send them
136+
my way," said Seb.
137+
138+
### Community feedback
139+
140+
Bill said, "I've always had a hard time getting people to tell me
141+
what their pain points are. I'm supposed to represent the community,
142+
but people don't complain [to me] very much. So I came up with an idea
143+
that is actually working, which is that I give free lunch-and-learns,
144+
where I have slides to talk about what's in Dotty and so on, and ask
145+
about pain points." These are usually "the usual suspects". "Upgrade
146+
is always mentioned as a pain point. Upgrading to new versions of
147+
Scala can be hard. Upgrading is something very practical that
148+
everyone faces. Not just from Scala 2 to Scala 3, but in general."
149+
150+
Seb broadened the topic a bit to include library upgrades as well as
151+
Scala upgrades. He mentioned that the Scala website does offer advice
152+
for library authors on this. Rob says that library compatibility is a
153+
frequent subject of discussion within Typelevel; Cats, for example,
154+
has a guide on this. Could standards around this be more standardized
155+
and publicized? The advent of TASTy may change the picture, though
156+
broadly, Seb said, "just replace binary compatibility with TASTy
157+
compatibility".
158+
159+
On another subject, Rob emphasized "how excited everyone is about
160+
Metals and how pleased everybody is about how it's coming along. I
161+
ran into a lot of people who are using it and very excited about it"
162+
and the technologies it's based on, such as Scalameta and Bloop. Seb
163+
promised to pass that on to the team, especially Olaf and Jorge.
164+
165+
### Proposals
166+
167+
No proposals were received this quarter.
168+
169+
### Other business
170+
171+
### Contributor members
172+
173+
As already mentioned at the [previous
174+
meeting](https://scala.epfl.ch/minutes/2018/12/05/december-5-2018.html),
175+
there is an open possibility of allowing prospective board members to
176+
participate by contributing engineering effort directly, instead of
177+
primarily contributing funds. Seb has been in discussions with one
178+
prospective board member interested in this arrangement. But Seb
179+
emphasized that this won't go forward unless the board approves.
180+
181+
Seb also observed that "affiliate members" (at the lower CHF 15K
182+
funding level, but without voting rights) have so far been rare. So
183+
the idea is to introduce a "contributor" membership, where the member
184+
would provide a full-time engineer or equivalent. This would be known
185+
as a "contributor" membership. Initially this would be without voting
186+
rights, but if the right legal arrangement can be drafted and cleared,
187+
this could eventually lead to full membership with voting rights.
188+
189+
Jon explains: "Initially, the anticipation was that we would be
190+
getting sponsors who had sufficient financial resources to spare 50K
191+
CHF/year to be on the board. But for some companies, it's easier to
192+
provide a full time engineer, say a company in Poland for example,
193+
versus a bank in London or a Silicon Valley company. So I would frame
194+
this as accommodating forms of payment that work better for
195+
differently sized and differently located companies."
196+
197+
James asked for clarification on the timetable of eventually granting
198+
voting rights. Seb said "right now no, the regulations don't allow
199+
it", but the hope is to change that, it's "obvious" for "fairness".
200+
But making the change requires clearing it first with EPFL's lawyers,
201+
then presumably also with board members' own legal departments.
202+
203+
James also asked about control: "Do they get to choose what they work
204+
on, or are going to dictate to them what they work on?" Seb said it
205+
would be a "common agreement".
206+
207+
Of course, as Jon observes, the agreement for existing members doesn't
208+
involve either the board dictating, or the Center dictating. The
209+
board makes recommendations; the Center then chooses what to work on,
210+
but can't disregard recommendations too much, if they want to keep the
211+
board satisfied.
212+
213+
Seb said that they're still drafting wording around this question. He
214+
expects there will be "a provision that we evaluate their work, and we
215+
if we aren't satisfied with it for two months in a row, or something
216+
like like that, then their contributor membership is in jeopardy."
217+
218+
Seb said the Center has so far identified two projects that would be
219+
good choices for this kind of effort sharing: the Dotty IDE, and TASTy
220+
support in Scala 2 ([SCP-018](https://github.com/scalacenter/advisoryboard/blob/master/proposals/018-converging-214-30.md)).
221+
222+
Stu suggested delaying granting voting rights until after "a minimum
223+
level of [engineer] contribution" has already been reached. Fred
224+
suggested building in some structure around how contributor members
225+
get invited, before the trial period begins.
226+
227+
Jon asked Seb if the draft agreement could be shared with the board.
228+
Seb said yes, but not quite yet, after it's run past EPFL legal.
229+
230+
Stu also raised this question: how many contributor members does the
231+
Center want? Two, three? Twenty, thirty? Ideal terms might depend
232+
on this. James said a large number seems like a "management
233+
headache". Seb agreed, and said he had been thinking perhaps five or
234+
so as a reasonable upper limit, or perhaps even lower, such as three.
235+
James observed, "There's no harm in capping it initially," then
236+
revisiting.
237+
238+
Rob asked what "equivalent" means in the phrase "full-time engineer or
239+
equivalent". Must it be a single person full time, or could it be "40
240+
hours gathered from consultants who don't have anything else to do
241+
that week"? Because "it's much more expensive" to actually hire
242+
someone, but also he didn't think that a patchwork of consultants
243+
would be nearly as useful as a dedicated person. Seb: "We want to
244+
have some flexibility" for engineers to be reassigned, but said he'd
245+
think about how much flexibility would be too much, as he completes
246+
drafting the terms.
247+
248+
Seth asked about contributing less than a full-time engineer, is that
249+
possible? Jon asked a different form of this question: could
250+
it still qualify as a full-time equivalent, if the enginner in
251+
question was considered especially valuable? Seb was skeptical this
252+
could be "formalized".
253+
254+
### Scala at Twitter
255+
256+
Stu said that Eugene Burmako's departure from Twitter has some people
257+
wondering about the status of Scala at Twitter. Internal discussion
258+
about this included questions about Scala 3, JDK 11, Scalameta, and
259+
rsc (the "Reasonable Scala Compiler" project Eugene led).
260+
261+
Some excerpts of Stu's remarks on this:
262+
263+
* "We are continuing approximately as already planned in the
264+
absence of Eugene."
265+
* "Rsc is unlikely to remain a full compiler. We have another
266+
use case for the Rsc work, and we'll be talking more publicly
267+
about those plans soon. I hope to bring a proposal to the next
268+
meeting to attempt to get some Scala Center involvement there."
269+
* "We don't think we are drastically behind on moving to Scala 3, or
270+
on any Scala version upgrade. Upgrading can take a long time
271+
(several years) in 'wall clock time', but for example the
272+
person-time total for moving to 2.12 has only been about 6 months of
273+
one person's time . Many other companies are still moving from 2.11
274+
to 2.12."
275+
276+
To put this in context, Stu confirmed that Twitter has about 10
277+
million lines of Scala code. He also said that the biggest delays in
278+
Scala version upgrades have been caused by Spark and other third party
279+
dependencies. So, backwards compatibility for Scala continues to be a
280+
major concern for Twitter.
281+
282+
Since Spark was mentioned, Martin spoke up to say that "Spark is
283+
already running on Dotty, since Dotty is more forgiving than the Scala
284+
2 series about binary compatibility. Hopefully the problem with
285+
external dependencies will be a lot less [on Scala 3] than it is
286+
currently."
287+
288+
## Conclusion
289+
290+
Jon said that the next meeting will be held in-person at Scala Days in
291+
Lausanne, Switzerland in June. Members not able to attend in-person
292+
may still attend virtually.
293+
294+
The tentative date and time is June 11, in the afternoon, before
295+
Martin's keynote. Timing this to be workable for US west coast
296+
members may not be possible.
297+
298+

0 commit comments

Comments
 (0)