Michelle Duke
I'm a Content Producer working in tech & innovation. Known as the “Hackathon Queen” 👑 I'm on the GitHub DevRel team and love sharing stories from our amazing community of developers.
The GitHub community is capable of incredible things. GitHub Actions is just one of our newest tools made available to developers around the world. Automate your workflow, and take control…
The GitHub community is capable of incredible things. GitHub Actions is just one of our newest tools made available to developers around the world. Automate your workflow, and take control of your code!
Check out our latest story from one of our earliest GitHub Actions adopters. Read about their projects, challenges, and lessons learned.
Today, we hear from Nikita Sobolev (@sobolevn). He’s created numerous Actions including Python Style Guide, dotenv-linter, restrict-cursing-action, docker-image-size-limit.
Nikita has over 10 years experience in software development and started coding at university. This is where his love started and it sounds like he never looked back:
I started coding at the University. And love it since then! I have started to build automated tools for other developers as a part of my job. I run a small company “wemake.services”, we do custom development and consulting for our clients. So, we need to have lots of custom tools to help us in the process. We build linters, code-quality tools, and bots to help us.
GitHub Actions seems like a cool idea on the surface, but why are people actually using it? Nikita says it’s all about being able to automate things:Why use GitHub Actions?
We love to automate stuff. And we also love to imply explicit contracts to every step of what we do as software developers: how we write code, how we work with other tools like git and GitHub, how we communicate with each other and our clients.
Nikita has a few different Actions, and they are all completely different. Want to ensure there’s no broken Python code when shipping? Then Nikita’s got an Action for it.
By contrast, Nikita’s “Restrict Cursing Action” is all about communication:
It is all about communication. We don’t want to ruin the communication with anyone just by accidentally using any bad words. We also don’t want other people to use strong language in our projects. Open-source should be fun! Luckily, this check can be automated!
Open source should be fun, and so should coding. Who wants to code something that’s not fun? Speaking of fun, we asked Nikita what his favourite Action is. He said it’d probably have to be “dotenv-linter”:
It lints your “.env” files. It’s not a common thing, but a broken “.env” file can cause you so much confusion! It is better to double check.
Finally, there’s “docker-image-size-limit”. This is an important Action that does one simple thing; ensures Docker images aren’t too big. If you’re having trouble with docker size limits, this is definitely one to check out. Nikita also says he has ideas for more Actions that will be coming soon. Keep an eye on his repo for more Actions.
Lots of people love using GitHub Actions for various reasons. Nikita says one of their favourite things about GitHub Actions is how easy it is to get started. “Just a few clicks and you’re done!”
One of my favourite things is the setup process. It literally takes three clicks for an average python / js / etc project to start working with GitHub Actions. All thanks to template project starters. That, by the way, can be easily and fully customized to suit your needs. It is way easier than most of other CIs.
He says it’s not only easy to start, but it’s also easy to find Actions you want to use because there’s a whole marketplace place for them:
I also love the marketplace. It is awesome! You can do a deep dive in the categories you are interested in like: “Core reviews” or “Management” or “Deployment”. Or you can just go window shopping for some random categories and find tools that you might use one day.
Finally, Nikita said they love the community:
GitHub is well-known for [its community]. The community is already working on new awesome tools.
There’s plenty of ways for you to get involved. Just read on to find out how!
We hope you enjoyed our interview with Nikita. You can also watch one talk his talks on GitHub Actions… in Russian!
If you’re interested in building your own GitHub Action, get started with the Learning Lab course. You can also find heaps of Actions, over on the GitHub Marketplace.
Recently we ran the GitHub Actions Hackathon where people like you built Actions. Check out all the cool Actions built. Even Nikita submitted a new Action. You can fork, clone, use, or contribute to all the Actions created for the hackathon. Keep your eye on this site for more awesome hackathons coming soon.
If you want to read more stories about awesome developers, check out our other Action Heroes blog posts.
We’re open sourcing Annotated Logger, a Python package that helps make logs searchable with consistent metadata.
Want to know how to take your terminal skills to the next level? Whether you’re starting out, or looking for more advanced commands, GitHub Copilot can help us explain and suggest the commands we are looking for.
As part of the GitHub for Beginners guide, learn how to improve the security of your profile and create a profile README. This will let you give your GitHub account a little more personality.