openCC/golang-tools.md

101 lines
11 KiB
Markdown

# Mission statement
The golang-tools community is a group of people whose main focus and interest is the development of tools for the Go language. It is open to everyone. Tooling topics include (but are not limited to) code analysis, compilers, editor and IDE plugins, language servers, and standard libraries.
The golang-tools working group is useful for:
* getting feedback on ideas
* experimenting with a group of "trusted testers"
* external proof-reading of proposals, blog posts etc
A key goal of the golang-tools group is that all forums of communication, but especially the regular calls, are friendly and welcoming. We want to create an environment in which everyone feels both supported and able to share their opinions and experience, frankly, freely, and openly. The wider [Go Code of Conduct](https://go.dev/conduct), which we observe just like all other Go forums, summarises this well.
# Community spaces
Discussion within the community takes place in three main spaces. There are also dedicated golang-tools sessions held at GopherCon each year.
## Slack
Most day-to-day discussion take place in the `#tools` channel on the [Gophers Slack](https://gophers.slack.com/) ([sign-up here](https://invite.slack.golangbridge.org/)).
## Mailing list
The [golang-tools](https://groups.google.com/forum/#!forum/golang-tools) mailing list contains community updates as well as other forms of announcements.
## Calls
The community operates a monthly “catch-up” call covering updates about large-impact changes, new tool initiatives, ongoing community projects and much more. The agenda is community-driven and anyone can suggest items that they would like to cover.
Like the other discussion spaces these calls are open to anyone and people new to the community are encouraged to join in and share in the conversation. The details (date, link, phone number, …) for each call are shared via the mailing list as well as the Slack channel.
### Shared Calendar
As of October 2020, all calls/events will be added to the [shared calendar](https://calendar.google.com/calendar/u/0?cid=Y19vNjYyZXR1YTZlNTdsNW9kdDI0M2w5ZmxiOEBncm91cC5jYWxlbmRhci5nb29nbGUuY29t).
### Upcoming calls
Note that calls always happen on the same [Google Meet link](https://meet.google.com/xuq-tcoc-dkp). Anyone can join the calls - no Google account is required.
* 2023-04-19 - [Agenda](https://docs.google.com/document/d/1bUHgwr7TlNWr-_7Z8yWNHlmfchJn2O6xZy6xN-2vNKA/edit)
### Call archive
* 2023-02-22 - [Meeting notes](https://docs.google.com/document/d/1Tly7F5k_Hr-_BMOgjWZYJu5oObc-CLblOyTSVtp85Y4/edit) - [video](https://www.youtube.com/watch?v=2wGFFyVLdy8)
* 2023-01-11 - [Meeting notes](https://docs.google.com/document/d/1AzX7Gj2p-VlesbCEF3PbQhAYV3jpM-QWqWQIWHBAJtw/edit) - [video](https://www.youtube.com/watch?v=lwh3_1_T_AU)
* 2022-11-16 - [Meeting notes](https://docs.google.com/document/d/1XQItB9RIPWLWOwXH1u7TsdXvkzKqOtANIBQwBz36MxQ/edit) - [video](https://www.youtube.com/watch?v=brIgemnAPJI)
* 2022-09-21 - [Meeting notes](https://docs.google.com/document/d/1VrbwBXd5lMny-bacytlFSMm2Uf6CWGonAXqmnS9Q9Vs/edit) - [video](https://www.youtube.com/watch?v=HE9LGb_1haQ)
* 2022-08-03 - [Meeting notes](https://docs.google.com/document/d/1AQtZQaGwxTpQdyEY4q2dyo1HyP8P3JQgpXZF0LcsiD0/edit) - [video](https://youtu.be/R6l21BlQoWM)
* 2022-06-22 - [Meeting notes](https://docs.google.com/document/d/17XSlU8kIIqbyjGbIqXx-G_ByhlrNjxIxVbu6kLK5QMY/edit) - [video](https://www.youtube.com/watch?v=nnjydSz1gM4)
* 2022-05-18 - [Meeting notes](https://docs.google.com/document/d/13pLMmPRcqyAsGgzCjbb145N9KF2AiBW7u6I5jornQaA/edit) - [video](https://youtu.be/PiUC0qN4n90)
* 2022-04-13 - [Meeting notes](https://docs.google.com/document/d/1HaBRsUK9z2UygQPsO7Q5gVV0vM7fL085ScpEHpSUrnc/edit) - [video](https://www.youtube.com/watch?v=5f5c7oOWxEQ)
* 2022-02-16 - [Meeting notes](https://docs.google.com/document/d/1XWEAauEY_TOe-gd04IHA2bRgLGd8SMsOfvW3ak8oDTY/edit) - [video](https://www.youtube.com/watch?v=7S_tGsE7pA4)
* 2022-01-12 - [Meeting notes](https://docs.google.com/document/d/1SNCAJesMR8KJjyM-AlVTZStrRfTNTUOiYX-FvyL-8nQ/edit) - [video](https://youtu.be/oXm-JFzbSYY)
* 2021-10-06 - [Meeting notes](https://docs.google.com/document/d/15CTfyASn5wBgpAAGhOpgaGg7LaUVd7WYVSZHuybTTVk/edit) - [video](https://youtu.be/VaKo_8oTRK4)
* 2021-09-15 special edition: supporting type parameters [Agenda](https://docs.google.com/document/d/1Wk2Jp9yV8h3ApKsepBrsE37s8f4sDb0eVjfGOaIPsHM)
* 2021-08-18 - [Meeting notes](https://docs.google.com/document/d/1fFwOXTOmPvR2E240z5WC1_VVs7h5vhcH4M81qT-2fW0/edit#) - [video](https://youtu.be/yd7eC7myvfA)
* 2021-06-16 - [Meeting notes](https://docs.google.com/document/d/1P6gv4lHoHz27-PzI2dpmYzdPej2yWHEN2J3L2Czvy2E/edit#) - [video](https://youtu.be/KqFpAS6yfVU)
* 2021-05-12 - [Meeting notes](https://docs.google.com/document/d/1GFbAAkRfGV_U9b2afFyLjdVgkIu0XrOjWeWig7rfUkk/edit#) - [video](https://youtu.be/rH62CnkYlEs)
* 2021-04-14 - [Meeting notes](https://docs.google.com/document/d/1w4E4a6QptBn2R3ispbYdhcNmir0JfD_z9r7W1q00Xxk/edit#) - [video](https://youtu.be/jyFz4jM25u8)
* 2021-03-10 - [Meeting notes](https://docs.google.com/document/d/1C-XxosukrdAr1KZH6YTJR_xvKcDS9bh-AyxTxnWq0lk/edit#) - [video](https://youtu.be/IphhYpCJJXw)
* 2021-02-10 - [Meeting notes](https://docs.google.com/document/d/1tMg4QUtK-bB9j0mlP_bV94yLttmdyCawsDzSSp0M4A0/edit#) - [video](https://youtu.be/E078rWljk7g)
* 2021-01-13 - [Meeting notes](https://docs.google.com/document/d/1PF07-EfaYi86Fl9pzpEVfuC9G6M52y5fxmttxjExFNk/edit#) - [video](https://youtu.be/qz8hBQhYtQs)
* 2020-11-18 - [Meeting notes](https://docs.google.com/document/d/1iH4fPsQv36J1XBNVZ6oU1OuVI1R9CMKCLpKqk14jpp0/edit#) - [video](https://youtu.be/Nh05OITe2dY)
* 2020-10-21 - [Meeting notes](https://docs.google.com/document/d/1P4X9OKlHq0UlcAEyGCkVYyCML4grObpiD2zDEK5f5nQ/edit#) - [video](https://youtu.be/fFl5Ddt3fxc)
* 2020-09-16 - [Meeting notes](https://docs.google.com/document/d/1GJ5K2fYVXPG6pOzUh6xMFv1Nq5VTaBylDP1Z0y-SHHw/edit#) - [video](https://youtu.be/MlVbgQnq9vE)
* 2020-08-19 - [Meeting notes](https://docs.google.com/document/d/17dQqU9V-86j-8H-063ehVt5nsRnQjfXfvDMG_FzkOY0/edit#) - [video](https://youtu.be/dKLunKg-rvw)
* 2020-07-22 - [Meeting notes](https://docs.google.com/document/d/13hupZM403jvJ9zeld2UU0n05NNdxFCuaLkysYNDj7vg/edit#) - [video](https://youtu.be/m3b2zl1WJ-s)
* 2020-06-24 - [Meeting notes](https://docs.google.com/document/d/1Seg5Rda1wekSM5CIiNjX9m0I3FSjlEd98RH0xAqCyEs/edit#) - [video](https://youtu.be/i6yIBHbGbtg)
* 2020-05-13 - [Meeting notes](https://docs.google.com/document/d/11NVS-dsJ-IvIM4hAzxlGvyh_8DxdntnQpYugda1zv1I/edit#) - [video](https://youtu.be/PkZenOPIRfw)
* 2020-04-08 - [Meeting notes](https://docs.google.com/document/d/1DkRPo0tCG3iIy0Y1_vfbwEou3drXDYcH_HpxlAqRrOc/edit#) - [video](https://youtu.be/av1wUxqtifU)
* 2020-03-11 - [Meeting notes](https://docs.google.com/document/d/1gURv4JVuhSi_Rl68Wn7F4J9ZfHyjtt2YM1QVkotDB68/edit#) - [video](https://youtu.be/Q-nv_eU14cE)
* 2020-01-28 - [Meeting notes](https://docs.google.com/document/d/1Fj8TQSmEC6iWNrF_31-qEueWFY1KKs2AuQRc_4rWM4A/edit#) - [video](https://www.youtube.com/watch?v=rvuM4lfHcfA)
* 2019-12-03 - [Meeting notes](https://docs.google.com/document/d/1ABilBtF7F1tFaGxX3fKZH2zrqADhpoMMcGHFoqJyEtE/edit#) - [video](https://www.youtube.com/watch?v=DeHYSvSKenA&feature=youtu.be)
* 2019-10-29 - [Meeting notes](https://docs.google.com/document/d/1F3T58Nj_Ft3bu15Wd4hAZAW6kLl_M1EH5XP43l_3CpY/edit#) - [video](https://www.youtube.com/watch?v=hFJMi9KS0dY&feature=youtu.be)
* 2019-09-24 - [Meeting notes](https://docs.google.com/document/d/1FpM5xjNdLnVMYxdPxLRHt6-yYBJ7zURWNbUB8QtFSlw/edit#) - [video](https://www.youtube.com/watch?v=E5w02B62oqc&feature=youtu.be)
* 2019-08-27 - [Meeting notes](https://docs.google.com/document/d/1NiIbz1h4-UaavdL-SC2hTp54Y87p-1joaLa-r5HgKaE/edit#) - [video](https://www.youtube.com/watch?v=OTKPu0kZ6sQ&feature=youtu.be)
* 2019-07-26 - [Meeting notes - second session at GopherCon San Diego](https://docs.google.com/document/d/1ZI_WqpLCB8DO6teJ3aBuXTeYD2iZZZlkDptmcY6Ja60/edit#)
* 2019-07-25 - [Meeting notes - first session at GopherCon San Diego](https://docs.google.com/document/d/1-RVyttQ0ncjCpR_sRwizf-Ubedkr0Emwmk2LhnsUOmE/edit)
* 2019-05-28 - [Meeting notes](https://docs.google.com/document/d/15gibnpGJyY-cJeRFIDf_mHzlbSnbZWGHvr5PJqQKUUY/edit?usp=sharing) - [video](https://www.youtube.com/watch?v=qmDsGU0-s7Y&feature=youtu.be)
* 2019-04-30 - [Meeting notes](https://docs.google.com/document/d/179fHEOR2gfJJnu3EouZ11wu01UDun7E0NNfuJywCVFQ/edit?usp=sharing) - [video](https://www.youtube.com/watch?v=xG-dNIK82rc)
* 2019-03-26 - [Meeting notes](https://docs.google.com/document/d/1FWuluOoaQO4kSzPqLuwJC-P3edPme2nEbeo1eNAw-XY/edit?usp=sharing) - [video](https://www.youtube.com/watch?v=fJsi85TunPs)
* 2019-02-26 - [Meeting notes](https://docs.google.com/document/d/1e5JvIKrBS8WKGbMSjDK7H9pMfWQAZ7V-QvQodRhqBl0/edit?usp=sharing) - [video](https://www.youtube.com/watch?v=eRB24Xe64D8&feature=youtu.be)
* 2019-01-29 - [Meeting notes](https://docs.google.com/document/d/1pBKM4GqeBRfas7-RCHPuP-eVz4AfjKInAkKnPS-UkTA/edit?usp=sharing) - [video](https://www.youtube.com/watch?v=mKAj_6ZbvfM)
* 2018-12-11 - [Meeting notes](https://docs.google.com/document/d/1HbjhgorPAUHb6035Uk3vA-EUOyn4TYMND_HT-zc7ecw/edit) - [video](https://www.youtube.com/watch?v=5isg5Xv3Yr0&feature=youtu.be)
* 2018-11-27 - [Meeting notes](https://docs.google.com/document/d/1zP2nKVHolqBoTVOsyKWo5b0o7vimJvhqQ9Ucp8rnrKA/edit) - [video](https://www.youtube.com/watch?v=7Rir0AgfiWg&feature=youtu.be)
* 2018-11-06 - [Meeting Notes](https://docs.google.com/document/d/1rXFrs046jTkVs0fTnQ-ItakV2zKCSxqwV4bfJ6DJWB4/edit)
* 2018-10-23 - [Meeting Notes](https://docs.google.com/document/d/1-bsbA0pDwbnEgPSjQsOo3gnvhToHB38jmgMHqiaO2vA/edit) - [video](https://www.youtube.com/watch?v=sqvMq8e0yco&feature=youtu.be)
* 2018-10-09 - [Meeting notes](https://docs.google.com/document/d/1oEknhf60Cdg9p_i17ESIm3zjTuVK7Adr-lTw78D0Qrc/edit#heading=h.gb40p8nfpls3) - [video](https://www.youtube.com/watch?v=MGwexofwe_U&feature=youtu.be)
* 2018-09-18 - [Meeting notes](https://docs.google.com/document/d/1G7bEKWeFRjd9rPCkBJooC76CCb0Jiem5F_Q48C1zecQ/edit) - [video](https://www.youtube.com/watch?v=xrEtakZ7oWc&feature=youtu.be)
* 2018-08-28 - [Notes from GopherCon "kick off" session](https://docs.google.com/document/d/1lB49VLzDrRd3wbXP1uLf-bHQyJRmH_Dc36JeEBlK-1Q/edit)
### Organizing a call
We try to share the load of organizing and running the calls between Gophers inside and outside of Google (generally alternating between Googlers and non-Googlers). Here are the steps required as organizer:
1. Using a non-google.com account, ask Paul Jolly for editing access to the [shared drive](https://drive.google.com/corp/drive/folders/1V8Eh2cyaSgVMbtD2Cwzdl0du_lU7_eXn), and then create a folder for the next monthly call, and a put a copy of the previous call's agenda in it. The copy will only be visible by anyone with the link, so change that to allow edits (this last step is not possible with docs owned by @google.com accounts).
2. Rename and clear out the agenda for the next call.
3. Update this wiki, archiving the previous call and linking the new upcoming call.
4. Update the [shared calendar](https://calendar.google.com/calendar/u/0?cid=Y19vNjYyZXR1YTZlNTdsNW9kdDI0M2w5ZmxiOEBncm91cC5jYWxlbmRhci5nb29nbGUuY29t) with the new event. By convention calls run from 16:30-17:30 London.
5. Send reminders 1-2 weeks before the call date to the [mailing list](https://groups.google.com/forum/#!forum/golang-tools) and #tools slack channel.
6. On the day of the call, remember to ask a Googler to start recording, and then run through the agenda.