Skip to main content

Command Palette

Search for a command to run...

How to present you projects!

Part of the "Writing everyday" series. Now with 20% extra cat doodles!

Published
4 min read
How to present you projects!
J

I like programming and learning about stuff I find interesting. Particularly interested in functional programming and typing systems.

I have a background in Cognitive Science/Psychology and Mathematics. Sadly halted due to physical and mental health issues arising from getting Covid. Which unfortunately hit me quite hard back on 2020. I'm still dealing with some sequels so I would prefer working from home.

I find it fun trying to find insights that cut across disciplines. I tend to favor the "theoretical" side of things. But I also try to get as much hands-on experience as possible.

I am writing a blog. Trying to share what I learn, and that others might find useful. I try to focus on the unique things I can bring to the table. Hoping to add value to the life of other developers. I always have a thousand ideas racing through my mind, so I don't have any trouble coming up with ideas on what to write. If any, I have a hard time cutting down on the number of things I want to write about :D

On a personal note. I have always been quite solitary and introverted. But I don't think I'm shy. I love videogames and started programming because I wanted to make my own.

How to present your projects

Understand how others see your GitHub Repos

I don't know about you, but I don't care about the generic create-react-app project that GitHub user "space_bunny_3510" built.

Face it. Whoever checks your repo will spare you a minimal amount of time. They don't care. Why would they?

Make them care

Seize their attention, before they lose interest.

The very first thing you see in a GitHub repo is the README file. That is our prime target for our attention-seizing scheme. You should also make it trivial to find relevant information.

The README file

I suppose your main audience is potential recruiters. So you should think about what they want to see. That is, the kind of thing you can offer the people that may want to hire you. You should also think about what they need to see so that they can make a decision.

I have a set of questions that will guide me in writing my READMEs

  • How I worked on this.
    • You could screenshots of your design or links to a Figma file. Or anything else that showcases how you approached this project.
  • How to navigate this project.
    • A summary of how the folder structure is set up.
  • Why did I build the project this way?
    • Here you can showcase your critical thinking. Your choices, and your awareness of the different alternatives for tackling this type of project.
  • If I had more time I would change this...
    • Show that you are aware of your shortcomings and that you can self-reflect about how to keep growing with every project you work on.
  • What did I learn?
    • List all the new skills you gained! You can also show that you are willing and eager to tackle projects that will require you to learn new stuff
  • Others
    • I would add a link for any relevant blog posts I wrote while building this project :)

A concise and relevant description is nice too.

Git commit messages

I'd bet seeing a messy commit history will raise some serious red flags. A small set of changes can drastically improve your commit game!

Every commit should be atomic. That means, a single chunk of changes or a single feature or added file per commit. Generally, atomic commits make a good heuristic. There is not much use in trying to formally define what "atomic" may mean in this context.

Let's keep it pragmatic! One useful heuristic I use is asking "can I describe this commit in less than 70 characters?" That is because the commit message should be no longer than 70 or so characters.

Commit messages should start with a verb in the imperative form. For example "Fix error when reloading the page". Here is another heuristic for writing commit messages: "If applied, this commit will ". You see that it only makes sense if the message starts with an imperative verb.

A concrete example: Frontend Mentor challenges

Let's see how I try to apply these principles. I'll share a Frontend Mentor challenge I did the last December. The only new change I will make today is adding a README file, according to the guidelines above.

You can check the repo for the project. And you can play with it here https://jorchrl.github.io/spaceTourism-website/. It is hosted on GitHub pages.

You can check both the commit messages and the README on the repo. But I'll share screenshots here anyways.

Here's the commit history:

Screen Shot 2022-03-05 at 20.11.15.png

And here is the README:

Screen Shot 2022-03-05 at 21.45.44.png

I would advise you to keep this as concise as possible.

Nobody enjoys a wall of text.

Epilogue

I am trying to write something everyday. I figured that it would be easier than working in more highly-polished posts. Well, I did write something today. The problem is that I spent the whole day!

I hope you find this helpful, or at least entertaining. Help me grow by leaving some feedback for me!

See you tomorrow! (I hope)

M

Great writing Jorge. Do you really think recruiters check your github profile? I have doubts here. Half of them do not even check your cv and LinkedIn profike. 😊

2
J

Well, in my case, my entire CV is basically just a link to my github profile. I have a grand total of 0 professional experience in software development XD

Besides, one of my newly found Hashnode buddies told me that if they don't even bother checking, I wouldn't want to work with them anyway ;)

3
M

I doubt a recuiter will check it, it is more probable before the technical interview. even if you have 0 dev experience you can still write a lot of things for example about the projects on your Github. I recommend checking my bio on LinkedIn it is both technical and personal: https://hu.linkedin.com/in/mikl%25C3%25B3s-szeles-00115053 Jorge Romero Up till now, I am only sure that one recruiter from Cloudera read my bio. She is my favourite recruiter. 😊

1
J

Miki Szeles good point. I guess a better approach would be to try and get my projects as much exposure as possible on Hashnode, linkedin, GitHub and others.

I'm gonna be working on my linkedIn profile this week :)

10
M

Cool. You should also share some of your articles on LinkedInJorge Romero