digitalmars.D - The D AGM
- Johan Coder (52/52) May 12 2019 Hello D community,
- FeepingCreature (10/25) May 13 2019 Please don't call people out like this. It's rude, offputting,
- Johan Coder (8/18) May 13 2019 He spoke in a public meeting with importance to my job. He chose
- Guillaume Piolat (4/8) May 13 2019 Thank you for your insights in this discussion.
- James Thompson (6/8) May 13 2019 It would be interesting to try this for a couple of weeks and see
- Johan Coder (3/11) May 13 2019 I agree. If not even required I will post as myself if most other
- Bastiaan Veelo (9/22) May 14 2019 I highly recommend not to post anonymously. I value the voice of
- Kagamin (3/6) May 14 2019 Ad hominem isn't and never was professional conduct and can't
- Johannes Loher (59/116) May 13 2019 I mostly agree with this. To be honest, when I first saw the agenda for
- Kagamin (4/5) May 13 2019 IIRC it was said before that conferences are beer parties with a
- Bastiaan Veelo (19/32) May 13 2019 The vision documents have not been working very well. The vision
- Robert Schadek (12/29) May 13 2019 A couple of started to move the vision document into the issue
- Johan Coder (2/33) May 13 2019 Very good idea, thank you.
- Nicholas Wilson (30/61) May 13 2019 I'm going to preface this by saying that I have/had no experience
- rikki cattermole (2/2) May 13 2019 I just want to say thanks, I think that the AGM was a success.
- Johan Coder (3/5) May 13 2019 I am glad you gained from it. Do you have (or if not maybe there
- Johan Coder (4/13) May 13 2019 There is the video at
- Seb (7/13) May 13 2019 I highly recommend joining DConf next year yourself in person as
- Martin Tschierschke (10/24) May 14 2019 I was not sure at which point I should add my comment about the
- matheus (7/13) May 13 2019 So you decided to go anonymous but on the other hand you expose
- Johan Coder (4/16) May 13 2019 This is not exposing. He was out there with known name. Anonymous
- Arun Chandrasekaran (7/9) May 13 2019 No, come on!! Stefan Koch aka UplinkCoder has difficulty in speaking.
- Johan Coder (5/15) May 13 2019 Thank you, I will watch. But in the AGM his content was not good
- Stefan Koch (6/9) May 14 2019 Please do point out which content you had problems with?
Hello D community, I use D professionally from some months back. Posting as anonymous to avoid opening debates at work. I come from a Scala-Java-Python background and in many ways D is a breathe of fresh air. True in others is not which is expected. Also started following the github stream of work because we are interested in a few bugfixes in language-and phobos-space. Not much on forums but have been active in other languages similar forums and on occasions in their official meetups. I looked at the conference and AGM on video because it is related to my day job. I have had hopes about the AGM but it was a bit disappointing due to a few things. Feed back inspired from similar meetings I saw: - Formalism is very important and it is great that Walter and Andrei insist on it. Python PEP are very informal and the process is argumentative. Java and Scala are better and should give inspiration. - The DIPS discussion was too long. DIP 1000 needs more documentation but that should be one minute decision. DIP 1015 is not very important, why discuss it again? All languages have things like this and I like D bool more than verbose Java boolean. But it does not matter anyway! DIP 1016 was the interesting but was not discussed. No discussion about the DIPS pipeline which is the most important! - The vision part was also too long and too few clear conclusion. A lot of important things not discussed. - Form of meeting was..... much to be improved. Anyone could hold the microphone for any time and say whatever. No filter and honest some people said too little in too much (not sure how to express). Many words with little content. The person at https://youtu.be/cpTAtiboIDs?t=4462 loves to hear himself. There should be a limit. In such meetings the moderator needs to control it, and they did a poor job. - Meeting should not be with time limit. All items must be discussed and it ends when topics end. Why only two hours for so many items? - Items came in random order. If there is a time limit most important topics must come first. Most meeting was on minor things! - Speaking of meeting moderator, who was that? Mike, Ethan or Nick? The moderator/s did a bad job at making the meeting work. One problem is Nick was not organized and difficult to understand even. More complicated is I don't understand Nicks role. Was he chosen by the D foundation? If so I suggest he is replaced for next year. If not I did not see a process of election by the community. Does it means he appointed himself? Anyone can do that by collecting a random list of popular topics and saying he will hold an AGM? That would be an even bigger problem. This is my list. It is in random order too! Most important: make time for all topics. Discuss important topics first. Moderation should limit time with the microphone and move the meeting forward such that everything is discussed.
May 12 2019
On Monday, 13 May 2019 at 05:27:00 UTC, Johan Coder wrote:- Form of meeting was..... much to be improved. Anyone could hold the microphone for any time and say whatever. No filter and honest some people said too little in too much (not sure how to express). Many words with little content. The person at https://youtu.be/cpTAtiboIDs?t=4462 loves to hear himself.Please don't call people out like this. It's rude, offputting, and in any case you are not the moderator. Anyways, I have no idea what you want the organizers to do about it. Make visitors preregister their questions?- Speaking of meeting moderator, who was that? Mike, Ethan or Nick? The moderator/s did a bad job at making the meeting work. One problem is Nick was not organized and difficult to understand even. More complicated is I don't understand Nicks role. Was he chosen by the D foundation? If so I suggest he is replaced for next year. If not I did not see a process of election by the community. Does it means he appointed himself? Anyone can do that by collecting a random list of popular topics and saying he will hold an AGM? That would be an even bigger problem.History isn't made by those most qualified, but by those who bothered to show up. That said, yes, absolutely anyone can collect a random list of popular topics and say they will hold an AGM. Of course, the problem is getting people to pay attention...
May 13 2019
On Monday, 13 May 2019 at 07:34:02 UTC, FeepingCreature wrote:On Monday, 13 May 2019 at 05:27:00 UTC, Johan Coder wrote:He spoke in a public meeting with importance to my job. He chose it. Not obligated. Spoke too much and took time from important topics. Yes I am not the moderator but he or she should have tell him to make it short.- Form of meeting was..... much to be improved. Anyone could hold the microphone for any time and say whatever. No filter and honest some people said too little in too much (not sure how to express). Many words with little content. The person at https://youtu.be/cpTAtiboIDs?t=4462 loves to hear himself.Please don't call people out like this. It's rude, offputting, and in any case you are not the moderator.Anyways, I have no idea what you want the organizers to do about it. Make visitors preregister their questions?A good moderator can interrupt some one who speaks too much repeatedly and does not say insightful things. Please do not make it my fault that some guy took over the AGM.
May 13 2019
On Monday, 13 May 2019 at 18:08:26 UTC, Johan Coder wrote:He spoke in a public meeting with importance to my job. He chose it. Not obligated. Spoke too much and took time from important topics. Yes I am not the moderator but he or she should have tell him to make it short.Thank you for your insights in this discussion. It seems one lesson to take from this is that anonimity in these forums should not be an option.
May 13 2019
On Monday, 13 May 2019 at 21:43:36 UTC, Guillaume Piolat wrote:It seems one lesson to take from this is that anonimity in these forums should not be an option.It would be interesting to try this for a couple of weeks and see how the overall tone changes. If we're supposed to be following 'professional conduct' here it doesn't seem too strange to have our actions affect our professional reputations.
May 13 2019
On Monday, 13 May 2019 at 22:24:53 UTC, James Thompson wrote:On Monday, 13 May 2019 at 21:43:36 UTC, Guillaume Piolat wrote:I agree. If not even required I will post as myself if most other people do so.It seems one lesson to take from this is that anonimity in these forums should not be an option.It would be interesting to try this for a couple of weeks and see how the overall tone changes. If we're supposed to be following 'professional conduct' here it doesn't seem too strange to have our actions affect our professional reputations.
May 13 2019
On Monday, 13 May 2019 at 23:48:08 UTC, Johan Coder wrote:On Monday, 13 May 2019 at 22:24:53 UTC, James Thompson wrote:I highly recommend not to post anonymously. I value the voice of people way more if they don’t hide behind a pseudonym. If you feel you need to be anonymous to protect your position at work then I pity you, as I wouldn’t be working at a place like that. I think everybody benefits when people post under their real name. Not the least the poster, as every valuable contribution to a discussion will add to her/his professional credibility. Bastiaan.On Monday, 13 May 2019 at 21:43:36 UTC, Guillaume Piolat wrote:I agree. If not even required I will post as myself if most other people do so.It seems one lesson to take from this is that anonimity in these forums should not be an option.It would be interesting to try this for a couple of weeks and see how the overall tone changes. If we're supposed to be following 'professional conduct' here it doesn't seem too strange to have our actions affect our professional reputations.
May 14 2019
On Monday, 13 May 2019 at 22:24:53 UTC, James Thompson wrote:If we're supposed to be following 'professional conduct' here it doesn't seem too strange to have our actions affect our professional reputations.Ad hominem isn't and never was professional conduct and can't hope to be.
May 14 2019
Am 13.05.19 um 07:27 schrieb Johan Coder:Hello D community, I use D professionally from some months back. Posting as anonymous to avoid opening debates at work. I come from a Scala-Java-Python background and in many ways D is a breathe of fresh air. True in others is not which is expected. Also started following the github stream of work because we are interested in a few bugfixes in language-and phobos-space. Not much on forums but have been active in other languages similar forums and on occasions in their official meetups. I looked at the conference and AGM on video because it is related to my day job. I have had hopes about the AGM but it was a bit disappointing due to a few things. Feed back inspired from similar meetings I saw: - Formalism is very important and it is great that Walter and Andrei insist on it. Python PEP are very informal and the process is argumentative. Java and Scala are better and should give inspiration. - The DIPS discussion was too long. DIP 1000 needs more documentation but that should be one minute decision. DIP 1015 is not very important, why discuss it again? All languages have things like this and I like D bool more than verbose Java boolean. But it does not matter anyway! DIP 1016 was the interesting but was not discussed. No discussion about the DIPS pipeline which is the most important! - The vision part was also too long and too few clear conclusion. A lot of important things not discussed. - Form of meeting was..... much to be improved. Anyone could hold the microphone for any time and say whatever. No filter and honest some people said too little in too much (not sure how to express). Many words with little content. The person at https://youtu.be/cpTAtiboIDs?t=4462 loves to hear himself. There should be a limit. In such meetings the moderator needs to control it, and they did a poor job. - Meeting should not be with time limit. All items must be discussed and it ends when topics end. Why only two hours for so many items? - Items came in random order. If there is a time limit most important topics must come first. Most meeting was on minor things! - Speaking of meeting moderator, who was that? Mike, Ethan or Nick? The moderator/s did a bad job at making the meeting work. One problem is Nick was not organized and difficult to understand even. More complicated is I don't understand Nicks role. Was he chosen by the D foundation? If so I suggest he is replaced for next year. If not I did not see a process of election by the community. Does it means he appointed himself? Anyone can do that by collecting a random list of popular topics and saying he will hold an AGM? That would be an even bigger problem. This is my list. It is in random order too! Most important: make time for all topics. Discuss important topics first. Moderation should limit time with the microphone and move the meeting forward such that everything is discussed.I mostly agree with this. To be honest, when I first saw the agenda for the AGM and the time that was allocated to the AGM, I was in shock: It is simply too much to discuss in that amount of time. It actually turned out much better than I expected but we still had to cut the complete list of genral topics due to lack of time. I think the problems with the meeting boil down to a few points: 1. Unclear purpose At least from what I understand, the meeting did not serve any specific purpose and it did also not set any clear expectations. Is this meeting just an extended form of the "Ask us Anything!" panel, just with a predefined agenda? Or is something where we can actually try to make some decisions or at least find some sort of conensus on some things? 2. Missing form There was absolutley no form to the meeting. As the previous poster also mentioned, it was basically "go through a list of points and whoever wants to say something to a point just does so". This sort of meeting form is _very_ ineffective and inefficient. The previous poster made some good suggestions already but there is a lot more that can be improved. 3. Missing structure in the agenda This also has already been said by the previous poster. Basically it was just a list of points grouped more or less randomly. I believe this is due to how the list was assembled (Nicholas just included all issues with D, the D community and the process of how D is developed he could think of and also all pointer that others suggested to him should be added to the list) but also due to the nature of the list: The topics are quite diverse, e.g. there were language related issues but also process related issues. It is non trivial how to even create a meaningful structure to _all_ of these topics and I believe that simply not enough time has been spent on that. 4. Unclear roles This has also been said already in some form. Who is the moderator (and relating back to my seond point, what is the job of the moderator)? What are Walter's and Andrei's (well, from now on Atila's instead) role in the meeting. What was Nicholas' role? What about the comminity's? I believe one problem in particular with moderation was that the moderator should be as neutral as possible and focus on the process of the meeting instead of making his own point. Mike and Ethan tried this and did a fairly good job, but you noticed that Nicholas struggled with that because he feels strongly about many of the topics. This is not meant as an offense at all, it just means that Nicholas was not qualified to be a moderator for this meeting. Also why did we not have any official recorder? I know that the meeting was recorded on video but for things like this it is important to document the _results_ in a way that can easily be acted upon and that is much easier with a written record. Now we basically only have the notes that some of us took... Going forward, if we are to repeat the AGM next year, I believe we need to address these issues. In particular, we need to: 1. Define a clear purpose for the AGM. 2. Define a clear form / structure for the meeting. 3. Create a much better structured agenda (this could also mean that we simply need to explicitly exclude some of the points). 4. Define who is responsible for what in the AGM. This list is ordered by how important I believe the points to be but I firmly believe that we need to address all of them. I hope this helps in making the AGM a bigger success next time. Best regards, Johannes
May 13 2019
On Monday, 13 May 2019 at 07:34:45 UTC, Johannes Loher wrote:1. Define a clear purpose for the AGM.IIRC it was said before that conferences are beer parties with a hope they will understand something from body language what they couldn't say in text.
May 13 2019
On Monday, 13 May 2019 at 07:34:45 UTC, Johannes Loher wrote: [...]Going forward, if we are to repeat the AGM next year, I believe we need to address these issues. In particular, we need to: 1. Define a clear purpose for the AGM. 2. Define a clear form / structure for the meeting. 3. Create a much better structured agenda (this could also mean that we simply need to explicitly exclude some of the points). 4. Define who is responsible for what in the AGM. This list is ordered by how important I believe the points to be but I firmly believe that we need to address all of them. I hope this helps in making the AGM a bigger success next time. Best regards, JohannesThe vision documents have not been working very well. The vision was good, but they were not a very good indication of where the language is going and what is being worked on and how. One purpose of the AGM is that its records (I believe that Mike will work on those) are hoped to replace the vision documents as a more accurate and useful indication of where D is going, what its vitality is etc. As this was the first AGM in this form, I don't find it surprising that there are things to improve upon. I think it worked out pretty well, and want to thank Nicholas for his initiative. I think having a public AGM helps a lot to reach a more harmonious and unified working community. Otherwise these topics are discussed/complained about in the corridors within their respective bubbles where they don't achieve much. To all those criticising the agenda: it has been out there for comments for a long time, but I dont think Nicholas has received much feedback. Bastiaan.
May 13 2019
On Monday, 13 May 2019 at 09:11:51 UTC, Bastiaan Veelo wrote:The vision documents have not been working very well. The vision was good, but they were not a very good indication of where the language is going and what is being worked on and how. One purpose of the AGM is that its records (I believe that Mike will work on those) are hoped to replace the vision documents as a more accurate and useful indication of where D is going, what its vitality is etc. As this was the first AGM in this form, I don't find it surprising that there are things to improve upon. I think it worked out pretty well, and want to thank Nicholas for his initiative. I think having a public AGM helps a lot to reach a more harmonious and unified working community. Otherwise these topics are discussed/complained about in the corridors within their respective bubbles where they don't achieve much. To all those criticising the agenda: it has been out there for comments for a long time, but I dont think Nicholas has received much feedback. Bastiaan.A couple of started to move the vision document into the issue tracker of this https://github.com/dlang/projects github project. We also created a couple of major milestones, individual issues should be associated with. The idea here is that, we use the same tools we manage programming languages with for the english language. If you think about it, what is a vision document. I would say it is a program written in a very ambiguous programming language. So why not use the same tool we all already know? Next years AGM agenda will then be trivial to prepare.
May 13 2019
On Monday, 13 May 2019 at 10:02:16 UTC, Robert Schadek wrote:On Monday, 13 May 2019 at 09:11:51 UTC, Bastiaan Veelo wrote:Very good idea, thank you.The vision documents have not been working very well. The vision was good, but they were not a very good indication of where the language is going and what is being worked on and how. One purpose of the AGM is that its records (I believe that Mike will work on those) are hoped to replace the vision documents as a more accurate and useful indication of where D is going, what its vitality is etc. As this was the first AGM in this form, I don't find it surprising that there are things to improve upon. I think it worked out pretty well, and want to thank Nicholas for his initiative. I think having a public AGM helps a lot to reach a more harmonious and unified working community. Otherwise these topics are discussed/complained about in the corridors within their respective bubbles where they don't achieve much. To all those criticising the agenda: it has been out there for comments for a long time, but I dont think Nicholas has received much feedback. Bastiaan.A couple of started to move the vision document into the issue tracker of this https://github.com/dlang/projects github project. We also created a couple of major milestones, individual issues should be associated with. The idea here is that, we use the same tools we manage programming languages with for the english language. If you think about it, what is a vision document. I would say it is a program written in a very ambiguous programming language. So why not use the same tool we all already know? Next years AGM agenda will then be trivial to prepare.
May 13 2019
I'm going to preface this by saying that I have/had no experience running an AGM and that there were a lot of topics On Monday, 13 May 2019 at 05:27:00 UTC, Johan Coder wrote:- The DIPS discussion was too long. DIP 1000 needs more documentation but that should be one minute decision.The problem was not that dip1000 was under-documented it was the process by which it happened, specifically on the reviewing side where there is no document to refer to what it is supposed to be doing.DIP 1015 is not very important, why discuss it again? All languages have things like this and I like D bool more than verbose Java boolean.Because the entire community though that the decision and the chain of reasoning was... bad, to put it mildly, and we need a process in place for dealing with such an outcome.But it does not matter anyway! DIP 1016 was the interesting but was not discussed.DIP 1016 was discussed a lot at the conference so there was less need to cover it in as much depth.No discussion about the DIPS pipeline which is the most important!I'm pretty sure that was discussed.In such meetings the moderator needs to control it, and they did a poor job.perhaps, again, first time doing it. The items were ordered by priority, so not so bad, but I take you point.- Meeting should not be with time limit. All items must be discussed and it ends when topics end. Why only two hours for so many items?Alas, it was all we had. I originally wanted to split it over where the "Ask Us Anything" slot ended up and the Saturday morning, because I think that that is not a particularly useful session (and they serve similar roles), but apparently tradition demands that session. Though it will be interesting to see if it continues with Atila at the helm.- Items came in random order. If there is a time limit most important topics must come first.Again it was ordered by priority.Most meeting was on minor things!I don't think that was the case. Keep in mind that other things were discussed throughout the conference.- Speaking of meeting moderator, who was that? Mike, Ethan or Nick? The moderator/s did a bad job at making the meeting work. One problem is Nick was not organized and difficult to understand even. More complicated is I don't understand Nicks role.I wrote the agenda.Was he chosen by the D foundation? [Did] he appointed himself? Anyone can do that by collecting a random list of popular topics and saying he will hold an AGM?Sort of, I submitted it as a DConf proposal. It was accepted.That would be an even bigger problem.The fact that we had one is an achievement. I don't think it would have happened otherwise.If so I suggest he is replaced for next year.Why, are you volunteering?This is my list. It is in random order too! Most important: make time for all topics. Discuss important topics first. Moderation should limit time with the microphone and move the meeting forward such that everything is discussed.Noted.
May 13 2019
I just want to say thanks, I think that the AGM was a success. A lot more was done and solved than I was expecting.
May 13 2019
On Monday, 13 May 2019 at 12:11:41 UTC, rikki cattermole wrote:I just want to say thanks, I think that the AGM was a success. A lot more was done and solved than I was expecting.I am glad you gained from it. Do you have (or if not maybe there is somewhere) a list with high level problems solved?
May 13 2019
I read on the forum more about it. Me and my three friends do not mean the entire community.DIP 1015 is not very important, why discuss it again? All languages have things like this and I like D bool more than verbose Java boolean.Because the entire community though that the decision and the chain of reasoning was... bad, to put it mildly, and we need a process in place for dealing with such an outcome.There is the video at https://www.youtube.com/watch?v=cpTAtiboIDs. Where?No discussion about the DIPS pipeline which is the most important!I'm pretty sure that was discussed.
May 13 2019
On Monday, 13 May 2019 at 18:04:07 UTC, Johan Coder wrote:I highly recommend joining DConf next year yourself in person as the best part of DConf are the offline discussions. Anyhow, the change of the DIP process was partially announced here: https://www.youtube.com/watch?v=cpTAtiboIDs&t=3015s (the upcoming change of leadership will affect the DIP process).There is the video at https://www.youtube.com/watch?v=cpTAtiboIDs. Where?No discussion about the DIPS pipeline which is the most important!I'm pretty sure that was discussed.
May 13 2019
On Monday, 13 May 2019 at 21:03:37 UTC, Seb wrote:On Monday, 13 May 2019 at 18:04:07 UTC, Johan Coder wrote:I was not sure at which point I should add my comment about the AGM video. I would like to ask everybody, who has been in the room, to watch the video and please tell me if my impression is wrong, that the AGM in total _seams_ to be a very poorly prepared event. For me it was not an advertisement for Dlang. But, being the first time held, it now gives a lot of room for improvement. :-)I highly recommend joining DConf next year yourself in person as the best part of DConf are the offline discussions. Anyhow, the change of the DIP process was partially announced here: https://www.youtube.com/watch?v=cpTAtiboIDs&t=3015s (the upcoming change of leadership will affect the DIP process).There is the video at https://www.youtube.com/watch?v=cpTAtiboIDs. Where?No discussion about the DIPS pipeline which is the most important!I'm pretty sure that was discussed.
May 14 2019
On Monday, 13 May 2019 at 05:27:00 UTC, Johan Coder wrote:I use D professionally from some months back. Posting as anonymous to avoid opening debates at work.What?- Speaking of meeting moderator, who was that? Mike, Ethan or Nick? The moderator/s did a bad job at making the meeting work. One problem is Nick was not organized and difficult to understand even.So you decided to go anonymous but on the other hand you expose people's name and pointing their (According your opinion) mistakes. I think this is rude and shameful. Matheus.
May 13 2019
On Monday, 13 May 2019 at 13:27:51 UTC, matheus wrote:On Monday, 13 May 2019 at 05:27:00 UTC, Johan Coder wrote:This is not exposing. He was out there with known name. Anonymous people criticized others all the time. Like Walter or Andrei.I use D professionally from some months back. Posting as anonymous to avoid opening debates at work.What?- Speaking of meeting moderator, who was that? Mike, Ethan or Nick? The moderator/s did a bad job at making the meeting work. One problem is Nick was not organized and difficult to understand even.So you decided to go anonymous but on the other hand you expose people's name and pointing their (According your opinion) mistakes.I think this is rude and shameful.I think this is clueless.
May 13 2019
On Sun, May 12, 2019 at 10:30 PM Johan Coder via Digitalmars-d <digitalmars-d puremagic.com> wrote:The person at https://youtu.be/cpTAtiboIDs?t=4462 loves to hear himself.No, come on!! Stefan Koch aka UplinkCoder has difficulty in speaking. That's absolutely fine. I love listening to his talks. He is _to the point_ and doesn't beat around bush in his talks! Watch https://www.youtube.com/watch?v=crHnumzsLUs&list=PL3jwVPmk_PRxo23yyoc0Ip_cP3-rCm7eB&index=6 and many more.
May 13 2019
On Monday, 13 May 2019 at 21:50:48 UTC, Arun Chandrasekaran wrote:On Sun, May 12, 2019 at 10:30 PM Johan Coder via Digitalmars-d <digitalmars-d puremagic.com> wrote:Thank you, I will watch. But in the AGM his content was not good (and of course I have nothing against imperfect speech, mine is definitely worse). Overall point is to keep remarks short and to the point so the meeting is covered entirely.The person at https://youtu.be/cpTAtiboIDs?t=4462 loves to hear himself.No, come on!! Stefan Koch aka UplinkCoder has difficulty in speaking. That's absolutely fine. I love listening to his talks. He is _to the point_ and doesn't beat around bush in his talks! Watch https://www.youtube.com/watch?v=crHnumzsLUs&list=PL3jwVPmk_PRxo23yyoc0I _cP3-rCm7eB&index=6 and many more.
May 13 2019
On Tuesday, 14 May 2019 at 01:50:31 UTC, Johan Coder wrote:Thank you, I will watch. But in the AGM his content was not good (and of course I have nothing against imperfect speech, mine is definitely worse).Please do point out which content you had problems with? It should be noted that I had an agenda to push. And a general meeting a good opportunity to do so. Which topics would you rather have heard? If I had not spoken up would it have changed anything?
May 14 2019