Get Even More Visitors To Your Blog, Upgrade To A Business Listing >>

New Programmer? Learn How to Tackle Your First Project!

Stuck copying code? This guide for beginners will show you how to tackle programming projects by focusing on logic and Pseudocode, not just syntax. Learn how to start thinking like a programmer and build your projects from scratch without copying others’ code!

Canva artwork

I was compelled to write this blog from a lightbulb moment. For all those in a similar situation (Wanting to learn how to code — But not knowing where to start or how to do so without feeling like you’re just completely copying YouTube/Stack overflow projects and not learning anything).

This is the guide for you! A guide I wish I had access to (It never really sunk in before)

Table of contents:

  • My lightbulb moment, and how I’m going to tackle projects going forward 💡
  • The Importance of Pseudocode and Logic, as opposed to memorising syntax 🧠
  • Exactly how I made this project, step by step! 🐱‍💻
  • Link to the project, and what you can look through to visualise this blog and the journey of my project 👀

My lightbulb moment, and how I’m going to tackle projects going forward 💡

I remember the moment vividly, it was so random! Over the past year or so, I’ve been tinkering with all sorts, from building a website, basic Python projects, working with docker, etc, and suddenly, at around 8 am on a random working day, I had an idea that hit me like a train.

For the past few months, my ‘learning time’ has been all about cloud, observability, k8s, reliability engineering, and similar topics, I put off diving into more coding projects, as I always felt as If I was just copying rather than truly learning (The same was true when I dabbled in CS50 prior. — But without taking a few of the classes in that course, I don’t believe this lightbulb moment would have happened!)

Is he still yapping? What was the lightbulb moment then!?

This was simply understanding that I don’t need to memorise Syntax or copy other people’s exact projects/tutorials to build my idea, I can do this entirely on my own, which is where I believe, the true learning starts!

So, what’s the trick?

You have to learn how to think logically, like a programmer… That’s it! From here, everything is smooth(…er) sailing. The only issue here is that thinking logically can be extremely difficult, the project I chose, is fairly basic, but even with this, I had to think, now imagine the type of problems/programs engineers are working on in production — Huge props to you!

I’m hoping you better understand what I mean by all of this througout the article and when I break down the exact steps I took in creating my project!

The Importance of Pseudocode and Logic, as opposed to memorising syntax 🧠

Never heard of Pseudocode before? You’re honestly in for a treat, this is a complete game-changer!

The way I explained this to my non-technical fiancée: “Imagine you want to write a paragraph (the program) in Spanish (programming language (you’re not native, and probably know the basics, such as Hola or Hamburguesa 😅)), you can either just copy word for word from an online article (which we don’t want), or you can just write/do. However, instead of just writing a bunch of Spanish words, and having to then worry about If the paragraph works, makes sense, explains what you want it to, etc, is much harder than If you pre-plan the paragraph (program) first in English/your native language.

Doing so natively will allow you to make sure the paragraph has the outcome you desire and makes sense in a language you understand, before attempting in another.

This is the core concept of Pseudocode, and I realized this may not have been the best example, but I think the shoe still fits.

Official definition: Pseudocode is a detailed yet readable description of what a computer program or algorithm should do.

You didn’t mention the logic part of this section.

“Programming logic, at its core, involves the development of systematic procedures that solve specific problems.”

Building the logic of a program is much easier doing so in English, rather than Python/the programming language you choose. This is why I’ve paired the two in this section.

As rather than memorising Syntax, you’ll understand that one of the hardest parts of these initial projects, is just building the logic first, coming up with what the computer will interpret, and whether the outcome will be as desired.

Exactly how I made this project, step by step! 🐱‍💻

  1. Idea creation — What I wanted the program to do, which in this case, was a simple game: Rock, Paper, Scissors.
  2. From here, I decided on the programming language I was going to use, this being Python (ensure you have the dependencies installed for that language). Following this, I’d pull up the Syntax of the language to help me in the later stages.
  3. Utilise pseudocode to plan the project, here’s what mine looked like:
Pseudocode in my IDE (VS code)

4. The 2nd fun part! Now I need to utilise the language syntax and translate my pseudocode into ‘real’ code (I will most likely do this in another language too in the future)

Translating the main logic part of the program

5. Testing! This can take a while, as I needed to go through every scenario to ensure the program worked correctly (This is when I found a few bugs with my if, elif, and else statements not being indented correctly which caused the computer to skip over some of the statements, more can be seen on this in the actual code on GitHub (Linked below).

Link to the project, and what you can look through to visualise this blog and the journey of my project 👀

The best way to visually put this into perspective will be by checking out my public code on my GitHub: Link to the project repository.

Python program file, click here
How to access commits, click here

In the repository, you will be able to explore the code and commit history, both providing different insights into the project. The code will allow you to see the raw program file with my pseudocode, notes, and the Python program itself. The commit will help you understand some of the changes I made throughout this project (some will have notes on what I changed).

Here’s a snapshot of both:

Python file
Commits

Then If you click on the commits where I was solving the bugs, you should see something like this:

In this section, you will see my write-up on the issue, and the changes I made to the code itself (red is code that got removed from the previous iteration, and green is what it should be after that specific commit.

Final remarks

I truly hope you all enjoyed reading this blog, whether you’re also new to programming, and are unsure about how to begin (as I was for the longest time), or maybe you’re a seasoned SWE who is curious about how I’m tackling projects, and how messy the code is 😅

I have an open LinkedIn network and this is where I spend most of my time, feel free to connect with me, and message me anytime!

My Linkedin

Alternatively, you can drop me a mail to my publicly available address, which was created for this type of thing, and is open to EVERYBODY: [email protected]

👋 If you find this helpful, please click the clap 👏 button below a few times to show your support for the author 👇

🚀Join FAUN Developer Community & Get Similar Stories in your Inbox Each Week


New Programmer? Learn How to Tackle Your First Project! was originally published in FAUN — Developer Community 🐾 on Medium, where people are continuing the conversation by highlighting and responding to this story.

Share the post

New Programmer? Learn How to Tackle Your First Project!

×

Subscribe to Top Digital Transformation Strategies For Business Development: How To Effectively Grow Your Business In The Digital Age

Get updates delivered right to your inbox!

Thank you for your subscription

×