about 3 years ago Syntax Podcast
GitHub Projects, Milestones, Labels, and Actions
Kids using adult lingo
Wes Bos
we were at a store the other day and she saw Prime, him, which is the, like, In the browser, having some place to jot down ideas. Right? Yeah. You know who does a really good job at this is a Versus
Scott Tolinski
his daughter is, like, 9, and she has, like, the word of the week in school, whatever the kids are saying that week. And he's like she said she's, like, really into posting. And he's like, what is posting? What are you posting about? And she's like, say all these memes, and he'd be like, can you describe this meme to me? Like, can you playing with this Zach, and she wouldn't have any clue. She just thinks it's funny because everybody thinks it's funny. Or he said that he was doing dishes, and she said, slay daddy or something. Oh, yeah. He was doing dishes, and he's just like, This is a thing we have chosen to do. This is a thing that we're not going to do. This is the thing for the current Next. Js version of the site. This is a thing for the new site. This is just an exploration. There's not gonna be any code attached to this. This is just me, maybe there's got to be something in there that Can compile 1 to the other. Yeah. And last but not least, we have GitHub actions. Actions are just kind of a general,
Wes Bos
And, like, the kids at her school must be crazy about it because, like, they don't have YouTube. She's never she She's no idea who Logan Paul is, but she was crazy about Prime. I was like, how do you how do you even know what this is? It's like the kids that older kids at school have it. Yeah. Walk around with their bottles. Mhmm. Wild. Mhmm. You're about to hit that era where the kids gotta have the thing. Yeah. Gotta have it.
Wes Bos
Oh my goodness. And what else did they say? My oldest daughters
Wes Bos
because they they're like, you know what a noob is? I was like, Come on. Like, I invented
Wes Bos
I just died. I melted because he's like 3, you know, and he hears the stuff that we're saying. You're kidding me.
Wes Bos
alternative.
Wes Bos
are calling me noobs Triage We do a couple of things with GitHub Actions, including we obviously
Scott Tolinski
wait. You I'm doing the dishes. I'm not slaying. I'm doing the dishes.
Wes Bos
in the age of noob.
Wes Bos
noob, you know, like, oh my god. I grew up
Transcript
Announcer
Monday. Monday. Monday.
Announcer
Open wide dev fans, get ready to stuff your face with JavaScript, CSS, node modules, barbecue tips, get workflow, breakdancing,
Announcer
soft skill, web development, the hastiest, the craziest, the tastiest TS Webb development treats coming in hot. Here is Wes, Barracuda,
Announcer
Boss, and Scott
Using GitHub labels
Scott Tolinski
insanity of
Wes Bos
project management software bug software, I always hate that. Like,
Scott Tolinski
Just generalized everybody
Wes Bos
JPEG that he made in the browser.
Scott Tolinski
the
Wes Bos
it wasn't sharing And I went deep into the web project
Scott Tolinski
pray that, or drop a review if you like this show.
Scott Tolinski
of exactly at a glance
Wes Bos
On things
Wes Bos
needed if it's related to something.
Wes Bos
And then also the
Scott Tolinski
they look pretty, in the, GitHub issues thing, but they also give you a good idea
Wes Bos
as
Wes Bos
has thousands and thousands of issues.
Wes Bos
My buddy had a issue with Pretty
Wes Bos
labels get updated
Scott Tolinski
what's going on here. For instance, if if anybody key.
Scott Tolinski
Another cool thing is discussions. I I briefly mentioned discussions. Discussions are basically a way to have almost like a forum type of situation for any individual product. You can even do, discussions where things are voted upon so people And vote on feature requests and things like that, which honestly is probably something that we should get going on,
Wes Bos
bug and Jira
Wes Bos
management thing, and I found the bug, and then I found the fix for it. But, like,
Wes Bos
And if you look at that, you would think, oh, there's lots of problems with VSCode. But In reality, it's just a high volume project. So they do a really good job at auto applying
Scott Tolinski
and then like the issues. Right? You can have, We're gonna be talking a little bit about some of these tools and whether or not, you if you're using them or not using them, maybe why should you give them a look? Because, So oftentimes, you'll see these milestones being used specifically for releases. So you'll see, like, alright, version dad,
Scott Tolinski
should I open an issue if I have things that I wanna see out of the site? I said, sure. Whatever. But maybe this is a better way to do it to have it in discussions rather than issue. Right? To open up these things, Get people talking, get people sharing, and and having that type of discussion.
Wes Bos
Code. VSCode
Wes Bos
a generated
Using GitHub milestones
Scott Tolinski
You can in that issue, say, I do not like that. Yeah. I know that some of this stuff does feel like, you know, you you can spend so much time on it, But a lot of these systems are really best done, like you said, when things get automated, How we doing? 30% done, you know? Mhmm. And there's some cool tools here in terms of, like, insights too, which isn't something that I I've really dove into, and it's again, it's gonna be less important in a smaller team. But in a larger team, a lot of people work in a lot of hands on deck. If you click in the top right of a project, there's a little chart. It's kind of even, like, pretty low key.
Scott Tolinski
You can also, from an individual issue, by the way, attach
Scott Tolinski
That way, you can see at any given point just how many outstanding issues there are. And even if I'm in a specific issue. Right? Like, I opened up the theme engine issue here. I can see a little progress bar for that milestone directly in there, And I can see. Alright.
Scott Tolinski
you can attach directly from that issue to be a part of a specific milestone.
Scott Tolinski
This is a part of the new website milestone, Maybe I should. Well, Oh, oh, listen. We are using them in the new syntax website. So this is all all of this this entire episode should be prefaced with. If you wanna see some of the stuff in action, We're building in public largely for the Syntax website, the new Syntax website. If you go to the repo for the Syntax website, Syntax.fmforward/website,
Scott Tolinski
1.0 me personally, I've been wanting in GitHub for so so long, And we all looked at other tools like Trello right, Maybe So that's great. Discussions, Luckily for us in the modern era here, we've been given many new wonderful tools from GitHub. So
Scott Tolinski
a project to that issue. So it's not like you have to create things multiple times or anything like that. If you creating GitHub issue.
Scott Tolinski
then in projects And have something, like, really pretty amazing at the end of the day with all of this. But you do for a feature request. Right? I want this on the website, but, you know, it's really hard if all of that stuff kind of gets mixed in with the actual tasks we have to do. So So you just give it a label. Hey. This is a suggestion.
Scott Tolinski
projects, individual projects, releases, things that are can be grouped into an individual project. Again, you can modify all of these from the issue itself.
Scott Tolinski
so So we have projects, which is what we just talked about. It's a way to keep track of what's being worked on at any given time. These things can be 1 to 1 with GitHub issues. They don't have to be.
Scott Tolinski
what project is this a part of? This is a part of the website 2.0 project. Okay. And then automatically adds it to your to do list essentially,
Scott Tolinski
which is great. Everything kind of flows through issues in PRs. Right? Now milestones are kind of very similar, but milestones are less of, or Height or Notion or these types of things to accommodate some of these things. But in reality, So as a 6 year old, he said, to open it up to the community. In fact, When I was talking about the syntax site creation in our Discord channel, people were saying, and tackle them in an organized manner.
Scott Tolinski
Last well, not maybe not lastly, but, I also want to talk about labels as a way to organize your projects.
Scott Tolinski
our wonderful way to keep track of mostly releases,
Scott Tolinski
you know, that's gonna fluctuate because we're gonna be adding and changing issues all the time, but we can see that we're this far along in the progress of it. And if I this issue is a part of that. So when I close that, it's going to move that that forward.
GitHub wiki
Wes Bos
people. I honestly prefer a little bit more when people use like a git book or something
Wes Bos
When you have lots of documentation
Wes Bos
rather than a wiki, but
Scott Tolinski
x happens, do y. If x then y.
Wes Bos
from middle daughter, Ios Safari the other day. He wanted to, like, you know, like you can share navigator. Share
Wes Bos
for here's how to install X, Y, or Z, and you need contributions
Scott Tolinski
There's even a wiki feature. I don't know if you use wiki at all. Wiki allows you to build your own personal wiki. I don't really use it that much. Yeah. It's handy for
GitHub Projects overview
Wes Bos
into Gatorade
Scott Tolinski
Yeah. And I think we wanna keep things fun and maybe short run and interesting, and, But Alright. Well, you know what I gotta have, Wes? I gotta have some, really good project management features, and I gotta I gotta have them all connect to GitHub.
Wes Bos
merch right now. We just had Peace.
Wes Bos
which I thought was very cute. Oh, man. Our our kids are starting to say stuff like that too. Our littlest one the other day says, oh, you're kidding me.
Scott Tolinski
But you know what my son said to me yesterday? He just turned 6.
Scott Tolinski
I said, where did you hear sick? He's like, all my friends say it, dad. I was like, did you know that that we say that on our podcast? And he's like, no. Not a clue. So Oh, man. He was able to get to sick just Purely by his friends, changes
Scott Tolinski
mugs Zinn whatever from those crappy places. I don't I don't remember what they're called.
Wes Bos
a meeting about some of the syntax merch stuff,
Scott Tolinski
And this was a thing that or in in a project. It's not necessarily 1 to 1 with an issue. That said, you can attach one of these to dos or one of these items. You can attack them to issues and have them be 1 to 1. You can have a com Kanban board that This way I can keep track of it in a a nice organ organized way the same way we would a Notion, but it's all in all in GitHub,
Scott Tolinski
You know what? This is actually very funny and also unrelated.
Scott Tolinski
So I try to avoid avoid those kind of shops. But, yeah, we're we're hopefully, gonna bring you bring you something interesting, you know, and that's very exciting for us.
Wes Bos
and I'm
Scott Tolinski
it's really super nice to keep it all in one spot. My name is Scott Toleniscum, a developer from Denver. And with me, as always,
Scott Tolinski
is Wes Bos. Wes, what's going on, my dude? When we're working with GitHub and GitHub issues and pull requests,
GitHub actions
Scott Tolinski
in Jira, wherever, GitHub projects, it's a fancy.
Scott Tolinski
workflows and projects and these type of automation tools. If you haven't given them a try, Maybe now is a good time to take a second look and see exactly what's out there because, you will see that I have been implementing a lot of this stuff mostly just to give it a try and to get get organized with it, but also, because I want to get more organized with this kind of stuff. So we'll we'll get some discussions going before this episode is out. So that way, If you wanna contribute and ask about features or ideas or anything like that with the site or feature requests, those types of things, we can have some place for you to put that. Alright. That's it for today. Thanks everybody for tuning in. We'll catch you on Wednesday.
Wes Bos
not deploy, sorry, it'll reject the pull request. So there's all kinds of really neat stuff you can do with that GitHub actions. But
Wes Bos
pages. Like
Scott Tolinski
mess with and tweak. You have to rerun things over and over again.
Scott Tolinski
for a full archive of all of our shows. And don't forget to subscribe in your podcast player
Wes Bos
But I have had April 2023 Sprint. And you go, oh, man, that means they're going to try to work on this thing. And they didn't have to say, hey, we're going to work on this next month. It's just you just know by looking at the labels and not having to go deeper into whatever or it's not a specific URL, like I've logged a bug and then you'll see the label simply get updated to
Scott Tolinski
tweaking on It can take that individual item in my to do list and automatically move it into the done column, which granted you can do in all of these other tools that connect to GitHub as well, but this is all within GitHub itself. You can assign and everything like that, and you get the added features of If you start typing in a number for commits or whatever, you get that automatic linkage between commits, PRs, those types of things that you would typically get. So I listened to some podcasts And, I'm not gonna reveal what and he was talking about his
Scott Tolinski
really super nice, but at the same time, annoying to debug, annoying to Kanban board to done. Right? Level up tutorials is now free. We, we have a course on GitHub actions from Brian Douglas who worked at GitHub at the time.
Wes Bos
So we just have like a it run it through Prettier and it fixes that type of stuff. And then it also
Wes Bos
the the JavaScript that people pull requests, so everyone will pull requests themselves to a JSON file and people and
Wes Bos
Tech website.
Scott Tolinski
hey, they are very full featured. And if your coach there already, might as well everything in the same spot, and I I gotta say I'm a big fan myself. So, check out the syntax repo. We'll have obviously a link to that in the show notes. And if you wanna contribute, I'll open up the discussions And what's cool about this is after creating a project, you can create a project on an organization itself or you can create a project on a specific You could have a sprint where, everything is labeled and connected. Everybody sees what each other's working on, and those are all connected directly to PR's in code. So I find these tools to be really super nice. Now what's so cool about this is that you can take just like a Notion.
Scott Tolinski
If a poll request is submitted,
Scott Tolinski
Man, that's a whole another skill set working with those things. It's a whole another skill set, and you gotta spend some time.
Wes Bos
Working on my uses.
Scott Tolinski
issues or, don't expect to hit the syntax swag shop and just get our our logo smacked on a bunch of, I don't know. What's that crappy? Crappy, and I've never quite enjoyed it. Yeah. Yeah. Yeah. I I don't know if I have either. You know what? I love labels. I don't know about you, but I do. Labels, Wiki key kind of for the project where people are asking questions or a FAQ type of deal. So you'll see a lot of, like, Next. Js and Gatsby and node and all these things, Tailwind, and A lot of these people use discussions really well. Right?
Wes Bos
No, we don't build the site, but we format It's like Kids the kids have no idea what they're talking about either. Like my,
Scott Tolinski
These types of things can all work in coordination with your automation, your projects, your milestones, all these things, your issues. And you could really Is Scott pulling his weight right now? It looks like he's been working on this thing forever. Scott has 18 to dos and has only completed one thing. So,
Scott Tolinski
the more time you spend automating this stuff how to pronounce it's Gantt.
Wes Bos
painful experiences trying to get GitHub Actions
Scott Tolinski
Head on over choose syntax.fm the status of these things. So that way it can be in progress planning to do, done the types of things that you typically do with one of those, and we are
Scott Tolinski
the more abilities. You'll have to automate how your repo is functioning overall in these kind of less of a project management tracking system and more of a system to see how many outstanding issues
Scott Tolinski
you do need to spend that time. I don't I don't know about you, Wes, but GitHub actions for me Welcome to Syntax on this Monday, hasty treat. We are going to be planning And a lot of these things can be really highly connected, which is one of the since why I love all of these features so much. Just the automation abilities here. And GitHub has done a really great job of this. And and these are things that, like, Seriously didn't exist a couple of years ago. So if you're new ish to this stuff I mean, it used to just be issues, then we got discussions and projects and milestones and all that stuff. Another cool thing is this pin issue thing, which is somewhat new. You can pin 3 issues at the top of an issues thing. So let's say you are working on a big open source project. You get the same question all the time. One of the kind of be in Ramuh. You can pin that single issue to the top and then
Wes Bos
Goof up it all the time. And it's annoying to be like, Can you please fix the indentation?
Wes Bos
It'll deploy it or it'll
Wes Bos
which is great when you're debugging something and trying to get it to work.
Scott Tolinski
you haven't looked at GitHub It looks like a little little graph chart. And if you click on that, it takes you to the insights page where you can see a chart, like actual charts. Like, here's a here's a bar chart of how many issues are currently set to be to do, how many are in planning, how many are in progress, how many are done. And you can create your own custom charts based on anything that you want so you can configure, duplicate, whatever. You can choose all the accesses you can see.
Scott Tolinski
depends on the the project size you're doing. But, really, you could spend, like, a straight up week
Wes Bos
nothing but
Wes Bos
I'll fix it at some point or I'll deploy it at some point. So if it like 404s
Scott Tolinski
your type checking, run your test, do whatever. If that passes, make it approved.
Wes Bos
organizational ways. I have used a package in the past called ACT, which allows you to run your GitHub actions locally,
Wes Bos
Will check if you actually have a user's page. You know, like, it'll ping the URL that you're submitting. Uh-huh. Sometimes people just submit, like, random
GitHub Projects benefits
Scott Tolinski
the love of Trello. Some people have. I I personally am not a big fan of it. It feels archaic to use.
Wes Bos
Trello
Scott Tolinski
And I've used GitHub issues flows. Otherwise, they're just gonna be overwhelmed with So he he he's very knowledgeable about GitHub, In Notion, you can have a database with data, And you can choose to display that in a table or you can have an alternate view and say, oh, no. You know, actually, I want this in a calendar view. Oh, no. Actually, I want this in a Kanban board view. Right? And you can do that same here where you have access to several different types of view. So the default is basically just a table, then you could have your Kanban board, which is fully customizable. So you're not, like, stuck with whatever tables are are giving you there. You can create your own vertical columns. What I have is to do planning in progress and done.
Wes Bos
just kind of putting things into categories, applying dates to them, but like no, like, formal project management structure. And I've worked in the past with Our sprint ends in 2 weeks.
Wes Bos
We used all this
Wes Bos
in my things app of Asana
Wes Bos
and all excited about all the different possibilities that we could we could do.
Scott Tolinski
the projects tab in GitHub is somewhat new. The projects tab is a way to define individual projects Like I said, if you change the status of a a poll request or a poll request gets completed and issue gets closed, you can have that item you get moved in your project,
Scott Tolinski
this podcast started on Trello. Wasn't it years ago? We did. Yeah. We absolutely did. We would use it for all of our cards before we moved to Notion, the people arriving on your shoes page will actually click on it instead of opening up a new issue for it, that same thing, because it acts as like a searchable, findable
Scott Tolinski
labels and all sorts of stuff. Well, Hey. I kinda like that way more than working in Notion. I'm sorry, Notion, but, which, you know, a lot of the the bigger repos, you know, if you wanna see, like, some big open source projects, whether it's any of the big front end frameworks or something, a lot of these Folks have to have really buttoned up, On talking about that's sick.
Scott Tolinski
and it still feels the exact same. I I don't know if you've been on Trello, but it's felt a user. For, like, the past 10 years or whatever. It it hasn't really changed.
Scott Tolinski
it. I've never used Jira or anything like that until just recently when I, move to century here. I had to create a Jira account for the very first time, and I was like, oh, this is this is Jira. Alright. But what I always really wanted was a lot of these features baked into GitHub. And and many of the times, what you end up sacrificing when you get off of GitHub is kind of tenuous connections between apps that will then log in to GitHub and then try to manage your your GitHub issues and, you know, I don't wanna say, like, nonstandard, but, I mean, it's not GitHub doing it. Right? It's sending messages to close out and change issues and apply,
Scott Tolinski
And let me tell you. In the past, I don't know what kind of tool. I don't necessarily, can create an issue on the Syntax website, on the,
Wes Bos
To do lists
Wes Bos
and all all of that type of stuff. I've worked on many different projects in my day,
GitHub Projects views
Scott Tolinski
which,
Scott Tolinski
automatically It's a wonderfully fleshed out version of what we have kind of used in the past with GitHub issues.
Scott Tolinski
I just I just like it to keep it all in one spot. But what's cool about this is you can connect it all to your GitHub issues. You can connect it all to your project, and you can connect it all to PRs and code. So when you create
Scott Tolinski
and running things like sprints. Right?
Scott Tolinski
an item using this thing and submitting things.
Scott Tolinski
Why might you use this? You'd use it for organizing your tasks, planning your work, automating your workflows, tracking progress, Trello is the one that comes up all the time, and and I gotta say, like, I don't understand,
Scott Tolinski
that are like my content calendar. This is the content that I'm planning out. Right?
GitHub Projects like Notion
Scott Tolinski
Those are pretty standard. Right? And then we also have, other views where you can have a timeline view where you can say specifically, I plan on working on this GitHub issue from this time to this time. Now I personally find that feature to be a little less important when there's 2 of us working on the code base. Right? I don't necessarily that are private, So milestones, are needing to be complete before a release.
Wes Bos
Yeah. What's that type of
Scott Tolinski
It's called a Gantt chart. Actually, I'm gonna look up how to Yeah. How to pronounce that. Oh, man. I'm having flashbacks right now. It's it's It's written g a n t t, but I've said it on this podcast before. And people were like, how do you not heard of that before? And a lot of the bigger projects that you're seeing will do, inside of here, we also have, actions with issues and PRs
Scott Tolinski
Because I never really used them.
Wes Bos
graph called? It's funny because I went to school for this.
Wes Bos
different times of project management things where things can be worked on at the same time, and and then there's waterfall tasks where Yeah. It's called a, We learned about the, like,
Scott Tolinski
You might find it really interesting to see, oh, okay. What's being worked on? How long is it taking? Who's working on these things? And what is the overall progress tracking of these things?
Scott Tolinski
care that much. It feels like a little overkill. But Yeah. If you're working on a team with several people, con Kanban boards. And you can also have that automatically linked to PRs and issues. So if I close an issue, GitHub Actions. And if you wanna learn all of the ins and outs there, that that course is free. You can go take that course right now on level up that video. So, check it out. So if you're the type of person, you're in Trello, you're in Notion, you're
GitHub discussions
Scott Tolinski
milestones.
Scott Tolinski
issues, projects, But, you know, you could you could do a whole ton with them. And the more involved you get into GitHub actions, actual repo. So I have projects under the Syntax organization
Scott Tolinski
really nice discussion pages. This is one of those things that I always really love, then run your type,
Gantt charts
Scott Tolinski
other things like milestones.
Scott Tolinski
oh, we better we better have a talking to to see what's going on there. Right? You can get actual information about what's going on in your project.
Wes Bos
It's honestly, it's a good review, especially if you're a project manager and you've got 6 employees working on different things. You need to be able to visualize, all right, who's working on what? Where are we at with this type of thing?
Wes Bos
If there's anything that my university training is good for, it's how to pronounce Gantt.
Scott Tolinski
Do you do you use milestones at all, Wes? No. I don't.
Scott Tolinski
So either way, the projects tab inside of your GitHub projects are are overall really super great, and they connect really nicely with everything else, including