From The Challenges - LinkedIn Carousel Generator
Exploring the software engineering lessons we can learn from the solutions I've seen.
Hi this is John with this week’s Coding Challenge.
🙏 Thank you for being one of the 81,510 software developers who have subscribed, I’m honoured to have you as a reader. 🎉
If there is a Coding Challenge you’d like to see, please let me know by replying to this email📧
Welcome To Coding Challenges - From The Challenges!
In this Coding Challenges “from the challenges” newsletter I’m sharing some of the common mistakes I see software engineers make when tackling the Coding Challenges.
I’m sharing both the mistakes people make and some thoughts on how you can you avoid making the same mistakes when taking on the coding challenges or when writing software professionally. Sometimes we have to make mistakes to learn from them, somethings we can learn from other people’s mistakes, then make our own new ones! 😀
Recapping The LinkedIn Carousel Generator Coding Challenge
In the build your LinkedIn carousel generator coding challenge the goal was to build your own carousel generator for LinkedIn posts (aka a PDF document builder). In short create a tool that let’s people customise and provide text for a PDF generator.
Whether or not you use it to generate content for LinkedIn, being able to generate PDFs is useful for many reporting and invoicing software products.
If You Enjoy Coding Challenges Here Are Three Ways You Can Help Support It
Refer a friend or colleague to the newsletter. 🙏
Sign up for a paid subscription - think of it as buying me a coffee ☕️ twice a month, with the bonus that you also get 20% off any of my courses.
Buy one of my courses that walk you through a Coding Challenge.
Five Common Mistakes Software Engineers Make Solving the LinkedIn Carousel Generator Coding Challenge
I’ve pulled together this list of common mistakes from the hundreds of submissions I’ve been sent privately and the many shared in the Coding Challenges Shared Solutions GitHub Repo.
Mistake 1 - Not Deploying The Solution And Not LinkIng It From The Readme
Of the solutions to this coding challenge that I’ve seen almost all of them were web based. If that’s the case deploy it! Especially when it’s all done client side so could be deployed cheaply or for free using the free tier of most cloud providers or free offering from the likes of Cloudflare.
Even the ones that had backends would fit in the free tier offerings. By deploying the code and linking to a live deployment you’re gaining two things:
Experience deploying your code to production.
Creating a working portfolio project - hiring managers like seeing your work, not just the code, but deployed and usable.
Mistake 2 - Magic Numbers Without Comments Or Constants
Magic numbers are a maintenance problem that has plagued software engineering for decades. Please try to avoid them, use well named constants instead.
Alternately if for some reason creating names constants would be unclear, add a comment that explains what they are.
Mistake 3 - Avoid Utils
Try to avoid creating catch -ll classes, modules, and packages. Utils is a common example of this. It’s better to figure out what the code relates to and place it there. If it genuinely belongs on it’s own find a relevant name.
Also worth avoiding: shared, common, utility; like utils they will become a dumping ground for all sorts of potentially reusable code.
Mistake 4 - Out Of Date Comments and Commented Out Code
Comments should provide value, if they’re out of date they don’t.
Commenting out code just makes the files noisy. We have VCS, just delete the code and then when and if you need it back, recover it from the VCS.
Mistake 5 - Not Updating The Readme
Readme’s are so important in a repo, they should tell the audience of the repo:
What the code there does.
How to use it.
How to build, test, run and deploy it (as appropriate).
So don’t just leave the default README that your framework or template generates in there!
Request for Feedback
I’m writing these coding challenges and this new from the challenges series to help you develop your skills as a software engineer based on how I’ve approached my own personal learning and development.
What works for me, might not be the best way for you - so if you have suggestions for how I can make these challenges more useful to you and others, please get in touch and let me know. All feedback greatly appreciated.
You can reach me on Bluesky, LinkedIn or through SubStack
Thanks and happy coding!
John
P.S. If You Enjoy Coding Challenges Here Are Four Ways You Can Help Support It
Refer a friend or colleague to the newsletter. 🙏
Sign up for a paid subscription - think of it as buying me a coffee ☕️ twice a month, with the bonus that you also get 20% off any of my courses.
Buy one of my courses that walk you through a Coding Challenge.
Subscribe to the Coding Challenges YouTube channel!