diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml index ca36bd9b2..86d3d78a1 100644 --- a/.github/ISSUE_TEMPLATE/config.yml +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -1,4 +1,4 @@ -blank_issues_enabled: true +blank_issues_enabled: false contact_links: - name: Get in Contact url: https://us-rse.org/steering-committee/ @@ -14,4 +14,4 @@ contact_links: about: If you want to ask a question or get help here, post an issue. - name: Code of Conduct url: https://us-rse.org/code-of-conduct/ - about: Read the US-RSE Code of Conduct \ No newline at end of file + about: Read the US-RSE Code of Conduct diff --git a/.github/ISSUE_TEMPLATE/newsletter-draft.yml b/.github/ISSUE_TEMPLATE/newsletter-draft.yml new file mode 100644 index 000000000..29d526af1 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/newsletter-draft.yml @@ -0,0 +1,81 @@ +name: "Newsletter Draft: New Edition" +description: "Start a new US-RSE newsletter draft and prepare for collaborative editing." +title: "Newsletter Draft [Month Year]" +labels: ["newsletter", "draft"] +assignees: ["@TinasheMTapera"] +body: + - type: markdown + attributes: + value: | + ## ✨ Newsletter Draft Checklist + + This issue helps coordinate the creation of a new US-RSE newsletter edition and synchronize collaboration across GitHub and HackMD. + + - type: input + id: month + attributes: + label: Newsletter Month + description: Month of the newsletter edition (e.g., April) + placeholder: "April" + validations: + required: true + + - type: input + id: year + attributes: + label: Newsletter Year + description: Year of the newsletter edition (e.g., 2025) + placeholder: "2025" + validations: + required: true + + - type: textarea + id: highlights + attributes: + label: Headline Highlights + description: Brief description of main highlights or themes for this edition + placeholder: "Community celebrations, RSE’25 announcement, job board, etc." + + - type: textarea + id: tasks + attributes: + label: Newsletter Tasks + description: Checklist to complete this edition + value: | + ### 🛠️ Tasks + + - [ ] Create new markdown draft using Jekyll post format + - [ ] Add file to `_posts/` with filename: `YYYY-MM-DD-newsletter.md` + - [ ] Add YAML frontmatter with correct `title`, `date`, and tags + - [ ] Push draft to `feature/draft-newsletter-[month-year]` branch + - [ ] Share HackMD link in Slack channels + - [ ] `#newsletters` + - [ ] `#working-group-chairs` + - [ ] `#community-calls` + - [ ] `#events` + - [ ] `#general` + - [ ] Open PR into `develop` with `[WIP] Newsletter [Month Year]` + - [ ] Create HackMD mirror and paste link below + - [ ] Collect input and finalize sections by [insert target date] + - [ ] Develop content for headline + - [ ] Gather Steering Committee updates + - [ ] Update community call details and youtube links + - [ ] Forward previous month's events and opportunities + - [ ] Clear slack list triage + - [ ] Get new events and opportunities from slack #events & #general + - [ ] Check job posting links + - [ ] Finalize and merge to `main` + + - type: input + id: hackmd-link + attributes: + label: HackMD Link + description: Paste the link to the HackMD collaborative draft + placeholder: "https://hackmd.io/@usrse/newsletter-April-2025" + + - type: textarea + id: notes + attributes: + label: Additional Notes + description: Anything else to note or watch out for this edition? + placeholder: Add any notes, context, or reminders here... diff --git a/.github/workflows/generate-newsletter.yml b/.github/workflows/generate-newsletter.yml new file mode 100644 index 000000000..8c7a4399b --- /dev/null +++ b/.github/workflows/generate-newsletter.yml @@ -0,0 +1,58 @@ +name: Generate Newsletter File + +on: + issues: + types: [opened] + +jobs: + generate-newsletter: + if: contains(github.event.issue.title, 'Newsletter Draft:') + runs-on: ubuntu-latest + + steps: + - name: Checkout repository + uses: actions/checkout@v3 + + - name: Extract values from issue body + id: vars + run: | + month=$(echo "${{ github.event.issue.body }}" | grep -i "Newsletter Month" -A 1 | tail -n 1 | xargs) + year=$(echo "${{ github.event.issue.body }}" | grep -i "Newsletter Year" -A 1 | tail -n 1 | xargs) + # Convert month name to MM + month_num=$(date -d "$month 1" '+%m') + date="${year}-${month_num}-01" + branch="feature/newsletter-${year}-${month_num}" + filename="_posts/${date}-newsletter.md" + + echo "month=$month" >> $GITHUB_OUTPUT + echo "month_num=$month_num" >> $GITHUB_OUTPUT + echo "year=$year" >> $GITHUB_OUTPUT + echo "date=$date" >> $GITHUB_OUTPUT + echo "branch=$branch" >> $GITHUB_OUTPUT + echo "filename=$filename" >> $GITHUB_OUTPUT + + - name: Create feature branch from develop + run: | + git fetch origin develop + git checkout -b "${{ steps.vars.outputs.branch }}" origin/develop + + - name: Generate newsletter draft from template + run: | + cp _template/newsletter-template.md "${{ steps.vars.outputs.filename }}" + sed -i "s/{{ month }}/${{ steps.vars.outputs.month }}/g" "${{ steps.vars.outputs.filename }}" + sed -i "s/{{ year }}/${{ steps.vars.outputs.year }}/g" "${{ steps.vars.outputs.filename }}" + sed -i "s/{{ date }}/${{ steps.vars.outputs.date }}/g" "${{ steps.vars.outputs.filename }}" + + - name: Commit and push + run: | + git config user.name "github-actions[bot]" + git config user.email "github-actions[bot]@users.noreply.github.com" + git add "${{ steps.vars.outputs.filename }}" + git commit -m "Add newsletter draft for ${{ steps.vars.outputs.month }} ${{ steps.vars.outputs.year }}" + git push origin "${{ steps.vars.outputs.branch }}" + + - name: Comment on issue with branch details + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + gh issue comment ${{ github.event.issue.number }} --body "Draft file created for **${{ steps.vars.outputs.month }} ${{ steps.vars.outputs.year }}** at \`${{ steps.vars.outputs.filename }}\` in branch \`${{ steps.vars.outputs.branch }}\`.\n\nYou can now:\n1. Open the branch in VS Code using GitFlow (\`feature/newsletter-${{ steps.vars.outputs.year }}-${{ steps.vars.outputs.month_num }}\`)\n2. Edit and review the draft\n3. Open a PR into \`develop\` when ready" diff --git a/_includes/carousel.html b/_includes/carousel.html new file mode 100644 index 000000000..d3f63e2e1 --- /dev/null +++ b/_includes/carousel.html @@ -0,0 +1,251 @@ +{% assign letterstring = "a,b,c,d,e,f,g,h,i,j,k,l,m,n" %} +{% assign letters = letterstring | split: ',' %} +{% assign number = include.number | minus: 1 %} + + + + + \ No newline at end of file diff --git a/_includes/head.html b/_includes/head.html index acab403f8..d42cf6006 100644 --- a/_includes/head.html +++ b/_includes/head.html @@ -8,7 +8,8 @@ - + + {% if page.redirect %}{% endif %} {% unless site.hide_share_buttons %}{% endunless %} {% include metatags.html %} diff --git a/_posts/2025-05-27-madren-community-travel-funds-report.md b/_posts/2025-05-27-madren-community-travel-funds-report.md new file mode 100644 index 000000000..c94c62d89 --- /dev/null +++ b/_posts/2025-05-27-madren-community-travel-funds-report.md @@ -0,0 +1,34 @@ +--- +layout: post +title: "Daniel Madren's Community and Travel Funds Report: Indiana Regional Group Inaugural Meetup" +tags: [community-awards, usrse, travel-fund, networking, affinity-group] +author: Daniel Madren +date: 2025-05-27 +image: "/assets/img/newsletter-202505/IMG_2725 (1).jpg" +carousels: + - images: + - image: "/assets/img/newsletter-202505/IMG_2725 (1).jpg" + - image: "/assets/img/newsletter-202505/IMG_7213.jpg" + - image: "/assets/img/newsletter-202505/IMG_1849.jpg" + - image: "/assets/img/newsletter-202505/IMG_1846.jpg" + - image: "/assets/img/newsletter-202505/IMG_1842.jpg" + - image: "/assets/img/newsletter-202505/IMG_1839.jpg" + - image: "/assets/img/newsletter-202505/IMG_1836.jpg" + - image: "/assets/img/newsletter-202505/IMG_1833.jpg" +--- + +Thanks to the US-RSE Community and Travel Funds program, supported by the Alfred P. Sloan Foundation, I had the chance to bring together RSE team members from Purdue, Indiana University, and the University of Notre Dame for a meetup in Indianapolis. We wanted to better understand how each of our teams operate, where we’re running into the same challenges, and how we might work together to build something more intentional: a sustainable, connected US-RSE Indiana Regional Group. + +[Notre Dame CRC](https://crc.nd.edu/) | [Purdue RCAC](https://www.rcac.purdue.edu/) | [IU UITS Research Technologies](https://uits.iu.edu/services/technology-for-research/index.html) + +We started by grounding ourselves in the mission and community of US-RSE, including its working groups, affinity groups, and the upcoming 2025 conference in Philadelphia. From there, we dove into how each of our institutions fund and organize RSE work, how we intake and prioritize projects, and how we support our team members’ growth and success. What stood out most was how much common ground we share. From hiring struggles and questions about career progression to finding the right balance of visibility and support, it became clear that we weren’t alone in what we were experiencing. We also recognized that each team had developed unique strategies, workflows, and tools that others could benefit from and that we have much to learn from one another if we stay connected. + +To explore what that could look like, we held a breakout session using easel pads, markers, and sticky notes. Everyone had a chance to vote on the ideas they felt most excited about. The most popular ideas? Regular meetups and knowledge-sharing events, a focus on building regional support groups, and more in-person connections at conferences and symposiums. We also discussed shared documentation, training opportunities, and ways to keep in touch, including launching our shared regional slack channel! + +One of the biggest highlights of the day was that we were able to co-locate this meetup with Purdue’s 2025 Research Computing Cyberinfrastructure Symposium. Because of the travel support, folks from Notre Dame and IU could take part in the symposium, attend the RSE meetup, and build relationships all in one trip! Personally, this experience has been transformational. As a program manager, I’ve gained new insights into how RSE operations work across institutions, but more than that, I’ve found a sense of community. These meetups reminded me that we don’t have to go it alone. We’re not competitors, we’re collaborators. We’re all trying to build something sustainable, meaningful, and supportive. And now, thanks to this initiative, I know I can reach out to any one of these folks and get thoughtful, honest feedback and support. + +For anyone considering organizing a similar meetup, my advice is simple....just start! The US-RSE Community Funds program helps break down the barriers of institutional silos. It’s one thing to talk about how a center operates, it’s another to experience it firsthand. Through USRSE networking like this, teams from Notre Dame have visited Purdue to tour our data center and the Envision Center, and our team has supported Notre Dame’s own RSE Mini-Con. These kinds of exchanges build trust, empathy, and shared purpose. My advice for those applying for community funds is to focus on depth over formality. Prioritize face-to-face conversations, make time for open brainstorming, and listen for the ideas that resonate most across institutions. With even modest support, you can plant seeds for a thriving, collaborative RSE community. + +- Daniel + +{% include carousel.html height="45" unit="%" duration="10" number="1" %} \ No newline at end of file diff --git a/_posts/newsletters/2025-04-28-newsletter.md b/_posts/newsletters/2025-04-28-newsletter.md index 75f6f22d7..9050233ed 100644 --- a/_posts/newsletters/2025-04-28-newsletter.md +++ b/_posts/newsletters/2025-04-28-newsletter.md @@ -480,14 +480,15 @@ These opportunities were recently posted to the [RSE Opportunities page](https:/ -{% assign today = 'now' | date: "%Y-%m-%d" %} +{% assign today = site.time | date: "%Y-%m-%d" %}