www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.announce - D Language Foundation June 2022 Monthly Meeting Summary

reply Mike Parker <aldacron gmail.com> writes:
The monthly meeting for June 2022 took place on June 10. The 
following Foundation staff and D contributors attended:

* Walter Bright
* Iain Buclaw
* Ali Çehreli
* Martin Kinkelin
* Dennis Korpel
* Mathias Lang
* Átila Neves
* Razvan Nitu
* Mike Parker
* Robert Schadek

The purpose of this meeting was to revise the latest draft of the 
Vision Document. I don't have a whole lot to summarize, as the 
document itself will reflect what we discussed, but I will 
provide some background for those who haven't been following 
along.


We first started discussing a new vision document last summer. 
This was a direct response to people bringing up "a lack of 
vision" in the forums. It's one of those things all of us would 
like to have, but there's always something that takes higher 
priority. So I put it on a meeting agenda so that we could get 
something started.

For a little while, Andrei used to post a kind of vision document 
to the D Wiki twice a year. It included a list of items showing 
some of the progress made in the previous six months, and a list 
of goals to accomplish for the next six months. I thought we 
should do something different, as that's more of a task list than 
a vision.

My initial concept was a living document describing what Walter 
and Átila were each focused on, followed by a list of things they 
intended to do in the future, and a list of things that would be 
nice to do in the future, resources permitting. These lists would 
be accompanied by potential tasks contributors could choose to 
take on in order to make the most impact.

I asked Walter and Átila to send me a write up of the things they 
were focused on. I would take that, write up the rest of the 
document, and then we could revise it and release it.

It's an understatement to say we took our time. The vision 
document was low on the priority list for each of us, and there 
was always a higher priority task to get done. That said, it was 
still on my mind. And I began to reconsider the format.

I realized that the format we had was just an evolution of 
Andrei's version of the vision document. There was no 
"high-level" vision, no overarching goals. So at our monthly 
meeting in February, we scheduled a separate meeting to focus on 
what I referred to as a "vision statement" (you can read about it 
[in the summary of the February 
meeting](https://forum.dlang.org/post/qrtjqubrbuqeiffunili forum.dlang.org)).

We brainstormed a number of goals, some high-level, some low. My 
task after the meeting was to take this list of ideas and craft 
it into a coherent vision statement. I would put this statement 
(a paragraph or two) at the top of the document, and follow that 
up with three sections: Current Focus, Future Focus, and Wishlist.

Eventually, I decided that version of the document wasn't going 
to cut it either. We need more than just one or two paragraphs 
stating high-level goals. We need a list of high-level goals and 
details describing what they mean. [So at our May 2022 
meeting](https://forum.dlang.org/post/uhgndrcnekedjqtarnwl forum.dlang.org), I
proposed that our next monthly meeting be devoted to finalizing that list of
high-level goals.


Before the meeting, I had to come up with the initial list. I 
took the brainstormed ideas from the vision meeting, sorted them 
into categories of high-level goals, and fleshed them out with 
definitions and examples.

At the meeting, everyone provided feedback on the language, the 
level of detail, and the existing categories. We added a new 
category, cut some things, added some information in existing 
categories, and had good discussions about the language, the 
standard library, the ecosystem, and the community.

My task after the meeting was to make all the suggested 
revisions. I expect to finish that this weekend. I'll then submit 
it to the others for a final round of feedback, and I'll ask them 
to make it a top priority so that it doesn't fall out of sight. I 
expect we'll have this portion of the document finalized some 
time next week.

The next step is to add the sections for the Current Focus, 
Future Focus, and the Wishlist. I've also decided to add a 
Contributing section, listing specific tasks contributors can 
carry out, rather than including them in the other sections.


I want to make it clear here that none of us involved in these 
meetings or in the core development and maintenance of D are 
oblivious to the complaints about lack of vision or bad 
management. All of us want to do what we can to turn things 
around. People will always find something to complain about, but 
we all want to see the day where there are no grounds to complain 
about a lack of vision or management.

I'll be talking a little about this in my DConf talk, but we are 
actively looking at ways to improve the situation. We want to 
start by focusing on the community and their contributors. As a 
few examples of what I mean, we want to:

* improve the response time when services fail (e.g., 
code.dlang.org or forum outages)
* enhance the new user experience
* ensure that everyone can easily learn who is responsible for 
what
* make contributing less daunting
* create the conditions for contributors to feel their efforts 
are worthwhile
* establish a framework that allows contributors who require or 
prefer guidance to know where to direct their efforts and, 
critically, provides a designated point of contact for follow up

The PR and Issue Manager positions were an early step in that 
direction. The ongoing plan for the foundation to take over 
responsibility for maintaining services in the ecosystem is 
another step in that direction. Our future plan to establish an 
ecosystem management team will be the next step in that direction.

Getting to where we want to be will take time, and time is a 
resource none of us have a lot of. The further along we get with 
things, the more resources we'll have to take us even further.

Almost all of the real work is happening on the shoulders of 
volunteers. Vladimir Panteleev and Petar Kirov are working out 
the action plan for the server migration and will subsequently be 
involved in admin operations, all on their own time.

The members of the ecosystem management team will be volunteers, 
people who will donate their free time to implement task lists in 
line with the vision document, find volunteers to carry out those 
tasks, and provide the support and follow up needed to see the 
tasks to completion.

There are very few people getting paid for the work going on 
here. Razvan and Dennis are getting $25,000 a year each for their 
positions as PR Managers, funded by Symmetry. I get $1200 per 
month, and Max $1000 per month, directly from the D Foundation's 
general fund. Beyond that, we pay bounties for blog posts (and in 
the future, YouTube content), fund the occasional contract, and 
have provided scholarships for students who focus on D projects 
for their academic work. I say this because right now we are at 
the limit of what can be funded for regular pay. There is room 
for a few contracts still in the work fund, and we continue to 
pay bounties, buy contributor rewards, etc, but there's nothing 
available for adding more regular positions.

Everything that exists in the D ecosystem was built by 
volunteers. In the absence of more funding, that's how it 
continues to be. It all requires volunteers to maintain it. And 
given how much we've grown, it requires volunteers to manage it.

Some people may not be happy with the vision document once it's 
published. I would love it if everyone is, but I expect some 
people will find it lacking. That's one of the reasons it's 
intended to be a living document. As time goes by, we'll revise 
it as necessary. That includes not just changing the current 
focus, or future focus, or adding and removing goals, but 
adapting it to meet the needs of our contributors.

The vision document is not a roadmap with designated stops along 
the way. It's not a checklist of milestones. Our intention is 
that it serve as a general guide for self-motivated contributors 
to decide where to direct their efforts, and for volunteer 
managers to draw up more detailed task lists for those 
contributors who need a little more guidance.

I'm sure someone will ask when it will be published. I'm still 
holding to my promise that we'll get it done before DConf. My 
original plan was to wait until the entire document was 
finalized, but I now intend to publish the high-level portion 
once the final draft is approved, then add the rest to it at some 
point in July.

In the meantime, I'd like to remind everyone of things you can do 
right now to contribute:

* notify Razvan or Dennis that you are available to fix bugs and 
what kind (beginner level, compiler, Phobos, etc)---though Razvan 
is on vacation right now, so you're probably better off 
contacting only Dennis until after July 1
* make a forum post about any old Bugzilla issues that are still 
bothering you, or tweet about them with #DBugfix
* contribute to a D project that you use, or would like to see 
succeed, by reporting and/or fixing bugs
* contribute a blog post to the D Blog
* write a post on your own blog and let me know about it so that 
I can share it
* post regular update tweets about your current D project with 
#dlang, or share it on /r/programming if it's in a usable state

At the very least, you can always contact me for ideas on how to 
contribute (aldacron gmail.com). I'll be happy to throw some at 
you.

The theme of my DConf talk is "it takes a village", because it 
really does. We're working to upgrade our village to a township, 
but we can't do it without help. We're always thankful for 
everyone who contributes in ways large and small, and we hope 
that comes across more clearly as time goes by.

I ask your patience as we continue to take our baby steps toward 
the future.
Jun 24
next sibling parent reply Adam Ruppe <destructionator gmail.com> writes:
I wrote up a thing in my blog about what I'd like to see from 
dips and the steering of the language and there might be some 
overlap with your vision document concepts:

http://dpldocs.info/this-week-in-d/Blog.Posted_2022_06_20.html
Jun 24
parent reply Mike Parker <aldacron gmail.com> writes:
On Saturday, 25 June 2022 at 00:40:44 UTC, Adam Ruppe wrote:
 I wrote up a thing in my blog about what I'd like to see from 
 dips and the steering of the language and there might be some 
 overlap with your vision document concepts:

 http://dpldocs.info/this-week-in-d/Blog.Posted_2022_06_20.html
Cool. Then let's not let it go to waste. You should bring it to a meeting so we can discuss it. Our upcoming July meeting is a quarterly meeting with the industry folks, so that's likely to be a long one. Then our August meeting will happen in person at DConf. So if you want to come and talk about what you've written here, then I can make that our big agenda item for our September meeting (unless you decide to join us in London :-)). We had a meeting last fall where Mathias brought a proposal for a steering committee. There was a good discussion about it, then we took a vote on it and rejected it. Right now, I can speculate that it would still get voted down, but you still should come in and make your case. As for the DIP process, I'm always open to changes as long as they don't skew toward making it too easy (such that we get inundated with DIPs for every idea someone has) or too onerous (such that no one submits any DIPs at all). And please, for anyone reading this, let's not debate the current state of the DIP process in this thread. If you'd like to do that, please start a new thread in the General forums.
Jun 24
parent reply Adam D Ruppe <destructionator gmail.com> writes:
On Saturday, 25 June 2022 at 01:11:26 UTC, Mike Parker wrote:
 we took a vote on it and rejected it
Who are "we"? Where's the roll call?
Jun 24
parent Mike Parker <aldacron gmail.com> writes:
On Saturday, 25 June 2022 at 01:36:12 UTC, Adam D Ruppe wrote:
 On Saturday, 25 June 2022 at 01:11:26 UTC, Mike Parker wrote:
 we took a vote on it and rejected it
Who are "we"? Where's the roll call?
The list of attendees and a summary of the meeting are here: https://forum.dlang.org/post/fnzuguuewsvzswpwiwar forum.dlang.org
Jun 24
prev sibling next sibling parent reply Paul Backus <snarwin gmail.com> writes:
On Friday, 24 June 2022 at 14:27:17 UTC, Mike Parker wrote:
 The monthly meeting for June 2022 took place on June 10.
Just want to say, thanks for writing up these summaries every month. I'm sure it's not the most exciting work, but the transparency is very much appreciated.
Jun 24
parent Mike Parker <aldacron gmail.com> writes:
On Saturday, 25 June 2022 at 01:39:25 UTC, Paul Backus wrote:
 Just want to say, thanks for writing up these summaries every 
 month. I'm sure it's not the most exciting work, but the 
 transparency is very much appreciated.
Thanks! I don't enjoy writing them, but I am glad someone suggested it. It's good to be able to point to a summary of topics discussed and decisions made when questions come up weeks and months down the road.
Jun 24
prev sibling next sibling parent reply zjh <fqbqrr 163.com> writes:
On Friday, 24 June 2022 at 14:27:17 UTC, Mike Parker wrote:

 ...
I think there should be a more detailed introduction to `'DMD'`. There should also be a `list` of `'small problems'` in an obvious place ,to allow more people to participate in `'DMD'`, which is very exciting for `learners`. Let `'professional'` people do difficult problems, and let `'ordinary'` d programmers solve `'simple'` problems. In this way, `D` can save time.
Jun 24
parent reply Paul Backus <snarwin gmail.com> writes:
On Saturday, 25 June 2022 at 01:50:32 UTC, zjh wrote:
 On Friday, 24 June 2022 at 14:27:17 UTC, Mike Parker wrote:

 ...
I think there should be a more detailed introduction to `'DMD'`.
The best introduction is probably Walter Bright's DConf 2016 talk, "Spelunking D Compiler Internals": https://www.youtube.com/watch?v=bNJhtKPugSQ
Jun 24
next sibling parent reply zjh <fqbqrr 163.com> writes:
On Saturday, 25 June 2022 at 02:02:36 UTC, Paul Backus wrote:

 The best introduction is probably Walter Bright's DConf 2016 
 talk, "Spelunking D Compiler Internals":

 https://www.youtube.com/watch?v=bNJhtKPugSQ
I can't access `'Youtube'`. It would be better if there were `articles` to detailed introduce it. Now I only know the general purpose of each `'DMD'` file which `D` author introduced, and I don't know anything more details.
Jun 24
parent reply matheus <matheus gmail.com> writes:
On Saturday, 25 June 2022 at 02:10:34 UTC, zjh wrote:
 On Saturday, 25 June 2022 at 02:02:36 UTC, Paul Backus wrote:

 The best introduction is probably Walter Bright's DConf 2016 
 talk, "Spelunking D Compiler Internals":

 https://www.youtube.com/watch?v=bNJhtKPugSQ
I can't access `'Youtube'`. It would be better if there were `articles` to detailed introduce it. Now I only know the general purpose of each `'DMD'` file which `D` author introduced, and I don't know anything more details.
Can't you access any indivious instances: https://redirect.invidious.io/watch?v=bNJhtKPugSQ ? Matheus.
Jun 27
parent zjh <fqbqrr 163.com> writes:
On Monday, 27 June 2022 at 11:53:25 UTC, matheus wrote:
 https://redirect.invidious.io/watch?v=bNJhtKPugSQ
 Matheus.
Thank you very much. I downloaded it.It's `incredible`.
Jun 27
prev sibling parent zjh <fqbqrr 163.com> writes:
On Saturday, 25 June 2022 at 02:02:36 UTC, Paul Backus wrote:

 The best introduction is probably Walter Bright's DConf 2016 
 talk.
I searched the `'PDF'` version. After reading it, I still felt it was not very `detailed`. I think it can be more detailed. It's already `'2016'` version, and some of the content may be outdated. It would be better to explain it in more detail. Also, you says that `'DMD'` has been unable to realize its `feature` well and correctly. I think `'DMD'` should be radically restructured . In fact, most refactoring is to move the `position` of the function .Or to split `large functions` into small `ones`. As long as it pass the test, `D` should constantly `refactor`. I feel that the existing `'reconstruction'` is too slowly.
Jun 25
prev sibling next sibling parent Mike Parker <aldacron gmail.com> writes:
On Friday, 24 June 2022 at 14:27:17 UTC, Mike Parker wrote:

 I'm sure someone will ask when it will be published. I'm still 
 holding to my promise that we'll get it done before DConf. My 
 original plan was to wait until the entire document was 
 finalized, but I now intend to publish the high-level portion 
 once the final draft is approved, then add the rest to it at 
 some point in July.
Update: I've submitted the revised document to everyone who was present at the meeting (plus Max and Andrei) for review. I've asked them to look it over and get back to me ASAP. I'm hoping to receive their final feedback in time to publish on Thursday or Friday. Again, the document consists only of the high-level goals at this point. I'll draft and finalize as much of the remainder as I can before I fly to London late next month.
Jun 27
prev sibling parent Dukc <ajieskola gmail.com> writes:
On Friday, 24 June 2022 at 14:27:17 UTC, Mike Parker wrote:
 The monthly meeting for June 2022 took place on June 10.
Thanks, I like to read these summaries - keep 'em coming! This one had so much news that it was almost a D blog post.
Jun 28