r/ProgrammingBuddies • • Mar 20 '25

LOOKING FOR BUDDIES I want a programming buddy!!!

288 Upvotes

For the past 7 years, I've been into coding, making games (unity, now web). And here I'm at: Gave up on uni completely in the 6th semester...

For the past many years I always tried working on projects with my friends. But it always ended up the same way: unfinished, not replying, back to playing games.

So I'm looking for someone who's not like that. Someone who can keep up the hype, and keeping it in the "important" folder. So It doesn't become like an activity: where I pray you to come code with me on the project for 1 hour. Which ends up being me watching your screenshare tutoring you. You, without ambition.

I admit, I also wasted a lot of time playing games, not tryharding my projects alone. It feels like I'm still in that wrong environment, but I'm trying to change that!

Ultimately I want to make a living out of this, so I'm aiming at the skies. And don't want to live a life, working for someone else, than gaming till the morning.

I really enjoy explaining / tutoring stuff. So I'd love if we start with my almost finished project and than we move on. It's made using C# blazor, signalr, nginx, html, css, js. But I can teach you all of this if you're new. The project is already live on the internet, it's just not ready to be launched yet.

So if I awaked your interest, feel free to DM me!!! I'd be very happy!!!


r/ProgrammingBuddies • • Nov 02 '20

We're Trending Today, So Be Extra Nice To Each Other. We're about making buddies after all.

285 Upvotes

Those here, I hope our group will connect you with others. :)


r/ProgrammingBuddies • • Dec 14 '20

Be careful

203 Upvotes

Hey guys just want to let you know be careful when meeting people on here. Ran into a guy that’s building his company website and profiting off of it and he’s using free labor by finding “coding buddies” to help him. Never code for free unless it’s a project your both interested in. Specially if one guy is literally piggy backing off you to build his business.


r/ProgrammingBuddies • • Dec 21 '24

I can teach you C++ for free

166 Upvotes

I am a grade A software student who was forced to leave his country because of war (Lebanon). I hope this doesn't happen to anyone of you anyways if you are a passionate student wanting to start in your programming journey but don't know where to start DM me ill teach you the basics and everything you need to know in maybe 5 hours or so. You would definitely learn the basics of c++ but more importantly how algorithims and compilers work which will be the floor that you will build everything on later on in your career. Contact me don't hesitate.


r/ProgrammingBuddies • • Nov 28 '20

LOOKING FOR A BUDDY Willing to help you start software developer career

155 Upvotes

Hi, I want to help someone who got hit by the current covid situation and wants to change a career and become a software engineer.

For start I'm offering 25-50 hours of mentoring free of charge (of course) depending on your needs. I'm also offering 1:1 coding sessions focused on your programming skills.

Little bit about me - I'm a lead engineer and software developer for past 12+ years. I feel comfortable teaching you Python, mainly for backend. I can also teach you a bit about frontend development. I have experience with many other languages but I don't feel like I know enough to teach you.

(Edit. thank you all for your interest. I got more messages and replies than I expected and it might take me a while to go through all of them.)


r/ProgrammingBuddies • • Dec 17 '20

Software Developer looking for newbie

125 Upvotes

Hello, I'm a professional full-stack developer working with Java and React.js.

I'm looking for someone who is new to programming who wants to spend a few hours going over a new skill. Tutoring is a hobby of mine that helps me to draw inspiration for my own coding practice. If you are interested in learning HTML/CSS/JavaScript, React, Node.js, Data Structures, or C++ (I'm a bit rusty with that one) - then just shoot me a DM.


r/ProgrammingBuddies • • Aug 16 '25

OFFERING TO MENTOR Hi, I'm Nikita

118 Upvotes

Hey! I'm a programming teacher for kids learning English, and I want to practice by teaching coding for free. We can build websites, games, or learn something new together.

What I can teach:

· Web Development: Pure HTML, CSS, JavaScript + a bit of React. · Game Dev: Roblox Studio, Godot, Unity (basics). · Python: Telegram bots, PC automation, and backend with Flask.

If you're interested, message me! No pressure—just fun and practice.

I don't think I can help you find a job or something like that, but basics in programming I can explain


r/ProgrammingBuddies • • Nov 30 '20

10 small but Fun Projects to make you fall in Love with Python! (Full Code)

113 Upvotes

Hi Buddies !

I have consolidated a few Python Projects (with complete code) that are small but really cool - to develop interest for the newbies like me !
-Posting Pictures on Instagram using Python
-Generate Random Programming Jokes
-Create your own Your Twitter Bot
-Create your social media Profile's Captcha

https://princepatni.com/blog/tech/10-fun-projects-to-make-you-fall-in-love-with-python/


r/ProgrammingBuddies • • Nov 15 '20

MAKING A TEAM Hey people! I love to teach, and I'm planning to be available on the weekends on the Discord server, streaming and teaching stuff. Maybe C, maybe Python, ... Totally depends on the participants, and my skill level (of course), but would you be interested?

111 Upvotes

I did find a potential member for this on the server, let me know what y'all think!

I've had some experience doing this in the past (teaching over Discord) and I honestly enjoyed it. The only reason I'm doing this is to quench my desire to share what I know. And I'd be really happy to quench your desire for learning.

Cheers!

(I don't know if plugging in my YouTube here is good, but let me know!)


r/ProgrammingBuddies • • Nov 04 '20

LOOKING FOR A BUDDY Learn python together?

110 Upvotes

Anyone want to learn python together kind of a beginner and still have lots to learn also maybe we can talk on discord too?


r/ProgrammingBuddies • • Feb 19 '21

Helping buddy If you are a programmer then these data structure might make your life easier. [8 min read]

109 Upvotes

I wrote this post back in june 2020 and it got pretty good response over their, so I though to help fellow programmers on reddit by posting in this sub reddit r/ProgrammerTIL. Hope it helps.

Note: If you are beginner or an intermediate then first go through these data structures for better understanding and you can also go through these algorithms which will help you a lot in your entire programming career.

Arrays

An array is the simplest and most widely used data structure. Other data structures like stacks and queues are derived from arrays.

Here’s an image of a simple array of size 4, containing elements (1, 2, 3 and 4).

Each data element is assigned a positive numerical value called the Index*,* which corresponds to the position of that item in the array. The majority of languages define the starting index of the array as 0.

The following are the two types of arrays:

  • One-dimensional arrays (as shown above)

  • Multi-dimensional arrays (arrays within arrays)

Basic Operations on Arrays

  • Insert — Inserts an element at a given index

  • Get — Returns the element at a given index

  • Delete — Deletes an element at a given index

  • Size — Gets the total number of elements in an array

Commonly asked Array interview questions

  • Find the second minimum element of an array

  • First non-repeating integers in an array

  • Merge two sorted arrays

  • Rearrange positive and negative values in an array

Stacks

We are all familiar with the famous Undo option, which is present in almost every application. Ever wondered how it works? The idea: you store the previous states of your work (which are limited to a specific number) in the memory in such an order that the last one appears first. This can’t be done just by using arrays. That is where the Stack comes in handy.

A real-life example of Stack could be a pile of books placed in a vertical order. In order to get the book that’s somewhere in the middle, you will need to remove all the books placed on top of it. This is how the LIFO (Last In First Out) method works.

Basic operations of stack:

  • Push — Inserts an element at the top

  • Pop — Returns the top element after removing from the stack

  • isEmpty — Returns true if the stack is empty

  • Top — Returns the top element without removing from the stack

Commonly asked Stack interview questions

  • Evaluate postfix expression using a stack

  • Sort values in a stack

  • Check balanced parentheses in an expression

Queues

Similar to Stack, Queue is another linear data structure that stores the element in a sequential manner. The only significant difference between Stack and Queue is that instead of using the LIFO method, Queue implements the FIFO method, which is short for First in First Out.

A perfect real-life example of Queue: a line of people waiting at a ticket booth. If a new person comes, they will join the line from the end, not from the start — and the person standing at the front will be the first to get the ticket and hence leave the line.

Basic operations of Queue

  • Enqueue() — Inserts an element to the end of the queue

  • Dequeue() — Removes an element from the start of the queue

  • isEmpty() — Returns true if the queue is empty

  • Top() — Returns the first element of the queue

Commonly asked Queue interview questions

  • Implement stack using a queue

  • Reverse first k elements of a queue

  • Generate binary numbers from 1 to n using a queue

Linked List

A linked list is another important linear data structure which might look similar to arrays at first but differs in memory allocation, internal structure and how basic operations of insertion and deletion are carried out.

A linked list is like a chain of nodes, where each node contains information like data and a pointer to the succeeding node in the chain. There’s a head pointer, which points to the first element of the linked list, and if the list is empty then it simply points to null or nothing.

Linked lists are used to implement file systems, hash tables, and adjacency lists.

Following are the types of linked lists:

  • Singly Linked List (Unidirectional)

  • Doubly Linked List (Bi-directional)

Basic operations of Linked List:

  • InsertAtEnd — Inserts a given element at the end of the linked list

  • InsertAtHead — Inserts a given element at the start/head of the linked list

  • Delete — Deletes a given element from the linked list

  • DeleteAtHead — Deletes the first element of the linked list

  • Search — Returns the given element from a linked list

  • isEmpty — Returns true if the linked list is empty

Commonly asked Linked List interview questions

  • Reverse a linked list

  • Detect loop in a linked list

  • Return Nth node from the end in a linked list

  • Remove duplicates from a linked list

If you have read this far then do care to check my course, which is absolutely free, on sorting algorithm here. This course contain Questions, Video explanation, Text based theory, Psuedo codes and real codes with book recommendations

Graphs

A graph is a set of nodes that are connected to each other in the form of a network. Nodes are also called vertices. A pair(x,y) is called an edge*,* which indicates that vertex x is connected to vertex y. An edge may contain weight/cost, showing how much cost is required to traverse from vertex x to y*.*

Types of Graphs:

  • Undirected Graph

  • Directed Graph

In a programming language, graphs can be represented using two forms:

  • Adjacency Matrix

  • Adjacency List

Common graph traversing algorithms:

  • Breadth First Search

  • Depth First Search

Commonly asked Graph interview questions

  • Implement Breadth and Depth First Search

  • Check if a graph is a tree or not

  • Count the number of edges in a graph

  • Find the shortest path between two vertices

Trees

A tree is a hierarchical data structure consisting of vertices (nodes) and edges that connect them. Trees are similar to graphs, but the key point that differentiates a tree from the graph is that a cycle cannot exist in a tree.

Trees are extensively used in Artificial Intelligence and complex algorithms to provide an efficient storage mechanism for problem-solving.

Commonly asked Tree interview questions

  • Find the height of a binary tree

  • Find kth maximum value in a binary search tree

  • Find nodes at “k” distance from the root

  • Find ancestors of a given node in a binary tree

Hash Table

Hashing is a process used to uniquely identify objects and store each object at some pre-calculated unique index called its “key.” So, the object is stored in the form of a “key-value” pair, and the collection of such items is called a “dictionary.” Each object can be searched using that key. There are different data structures based on hashing, but the most commonly used data structure is the hash table.

Hash tables are generally implemented using arrays.

The performance of hashing data structure depends upon these three factors:

  • Hash Function

  • Size of the Hash Table

  • Collision Handling Method

Commonly asked Hashing interview questions

  • Find symmetric pairs in an array

  • Trace complete path of a journey

  • Find if an array is a subset of another array

  • Check if given arrays are disjoint

If you have read this far then do care to check my course, which is absolutely free, on sorting algorithm here. This course contain Questions, Video explanation, Text based theory, Psuedo codes and real codes with book recommendations


r/ProgrammingBuddies • • Nov 11 '20

Lead Frontend Developer willing to mentor

105 Upvotes

Hi there,

** UPDATE **

Yes, I do have paid Mentorship services, but the following is free of charge:

  • Blog Articles, Library Projects, and Coding Challenges on my website.

  • Slack -> I'll ask you a bunch of questions Frontend/career-related, give Free Development Plan to fill, and propose some basic path to improve as well for free. (after you fill it)

  • I won't promote my paid services to you until you don't ask for it (sorry if I did), I'm also sorry if you thought I wanted to "pull you in" only for paid services, it wasn't my intention.

  • I'd like to build a community on Slack, where people show their portfolio, ask for code reviews, ask any burning questions on how to improve, what to learn, etc. - this is also for free, but of course, my time is limited and I will prioritize mentees who decided on my services. (I promise to answer, maybe just with a little bit more delay) But maybe the community can help each other as well? :)

  • I'd love to receive feedback on my website, what I can improve, which blog articles you would like to see, projects, coding challenges, and just anything to make sure you can grasp knowledge faster.

  • Paid things are something like 1:1 sessions (call), more dedicated time, more individual projects, support - You can totally skip it and enjoy free resources/options.

As the title says, I'm a Lead Frontend Developer for some big company. I've started working on Blog articles, Projects with solutions, and Coding Challenges on my website. My ultimate goal is to share knowledge in the best possible way. I know HTML, CSS, JS, React, TypeScript, Node.js (Express / Socket.IO, etc.), Phaser (2D Games), CI/CD, Testing (units, e2e, A/B) and a lot of Frontend related tools. I can also guide with some automation, soft-skills, leadership, design systems, and UX/UI. I do mentor people in my work as well (probably like 20+ of them already).

Additionally, I was a Technical Recruiter for 2 years, I can help out with "pre-interview", reviewing the portfolio, giving some tips & tricks for your CV, and "how to get the first job" thingies.

If you are starting and want some plan what to learn, how to optimize absorbing knowledge, and don't get stuck in tutorials hell - it's tough to go on this journey. It's also fine if you want to improve as you got blocked somewhere in your career. Hearing your problems, answering your questions, and helping out with mentoring will definitely be a benefit for both of us. I'm creating a lot of free resources and want to keep them of the best quality. I do prefer the individual mentorship and have paid services for that - I won't focus on group mentoring.

I'm currently working on topics like "How to use CLI", "Introduction to Git", "Create your first GitHub repository", "Browser and DevTools", "Backend vs Frontend" - all the things you will need in your first IT job, but I can lend a hand with advanced concepts too.

I'm just a funny guy who likes to share knowledge with others, feel free to DM me, contact via chat, we can also continue on my Slack channel.

P.S. To avoid promotion, send me a DM to get a link to my website.


r/ProgrammingBuddies • • Dec 14 '24

I can suggest you the best programming books & learning path

104 Upvotes

I am a self-taught developer, programming since 2001. All my learning comes from books and hands-on projects. I still continue to read the latest books and I help junior developers with book suggestions and learning paths.

If you want suggestions on Full Stack, Frontend, Backend, PHP, Javascript/Typescript, Python, AI/ML, or Cloud ( AWS + GCP ), comment here. I will suggest books and some hands-on projects or learning paths.

If a particular concept is troubling you, comment here. I can help you find the right path.


r/ProgrammingBuddies • • Apr 19 '21

Teaching programming for free

103 Upvotes

Hi everyone,
Because of the serious lack of social interactions due to lockdowns I decided to try this crazy idea: offering 1-to-1 programming lessons for free, hoping to have some nice time talking to new people while helping them at the same time. It looks like a win-win situation to me, but I'm not sure if it will work as I hope for.
Preferred teaching topics:

  • C

  • C++

  • Operating systems

  • Algorithms and data structures

The idea is to have video calls and talk about these topics, plus using screen sharing for code examples and/or drawing. I'm happy to explain concepts, write small code snippets and answer to technical questions. But, I'm not willing to help debugging your code: the whole point for me (as an extrovert) is to "recharge" myself from the human interaction while talking about the stuff I like most, not to struggle in debugging ugly bugs in people's code. As a developer, I already have to debug stuff all the time: don't want to do it here too, I hope you'll understand :-)Also, I'm not looking for chat buddies: chatting distracts me during work and lowers my productivity too much, while I don't particularly enjoy it at human level. I prefer to virtually meet the other person from time to time, dedicating 100% of attention to him/her for something like 30min - 1h and then going back to my stuff. Most programmers prefer exactly the opposite, I know. Sorry. I wanna try this experiment that way: if it doesn't feel beneficial to both the parties, it doesn't make sense to do it.

Something about me: senior software engineer with 5 years of experience in "big tech" plus many other years of experience in writing software for smaller companies and/or open source projects.

If you're interested, DM me.

--------------------------------------------
EDIT: I honestly didn't expect such a big response! I'm so happy and full of enthusiasm to talk with all of you. Thanks for all the upvotes and the rewards!
Just, at the moment I'm starting to get overwhelmed by long conversations and it's taking me an incredible amount of time to answer to everybody. Also, I'm getting lost in trying to follow 20+ conversations. So, I see no choice other than asking you to write a bit shorter messages :-)
I'll try to meet with everybody except with rude and impolite people or people with negative reddit karma. A minimum level of screening seems reasonable to me.

Technical details: Meeting platform: Zoom. I'm in the GMT+3 time zone and I'm generally available Mon-Sat from 2pm to 10pm.

EDIT[2]: If you book a meeting, please be serious about that. If something happens and your plans change, just contact me, in advance. But, let's hope this happens rarely. If you're not 99.9% sure about your availability for a given time/date, just don't schedule anything until you are. I respect your time: please, respect mine too.


r/ProgrammingBuddies • • Nov 16 '20

I'm willing to teach JavaScript HTML and CSS

103 Upvotes

If you're a beginner and willing to learn any of these just let me know! I'm proficient in all 3 and I know if I were a beginner, I would of gained a lot more traction having a mentor-type of person. All I'm looking for is helping people out and giving them a jump start into frontend development.

It's not like I'm super experienced or anything I just feel like I could meet lots of people with similar interests. So don't be afraid to send me a message especially if you do want to try your hand in any one of these.

edit: If you guys have any questions just ask! I'm not "mentoring" per say but I'll still try helping you guys out where I can.


r/ProgrammingBuddies • • Jun 08 '25

Anyone interested to start the coding journey with me

101 Upvotes

Anyone who has just started coding and will start c++

Join this link

https://discord.gg/pSXwYnk4


r/ProgrammingBuddies • • Nov 17 '20

Free Front-End Development Coaching and Mentorship

101 Upvotes

Hey all!

*UPDATE* - Thanks for all of your messages! I've now filled the remaining spots. For anyone interested, feel free to join my Discord channel :)

I've set up a free service to help those who are self-teaching and looking to become front-end developers.

Coming from a self-taught background myself, I want to help others who are going through the same process that I went through and offer guidance and support. It took me ~11 months to teach myself and land my first job. Although this was a few years back, the whole process is still very fresh in my mind. There are certain things I would have done differently and also things that I think worked pretty well - I'm hoping some of my insight and advice will help others.

Everything is completely free. I'll only be able to take on a limited number of students for direct 1:1 mentorship, but I do have spots still open :)

To apply, please DM me, and I'll be able to give you some more information!


r/ProgrammingBuddies • • Nov 18 '20

Come join our programming community!

100 Upvotes

Are you a programmer, or want to become a programmer? Come join us!

We are a hacker/programmer collective called the Electric Hive. One of our primary missions is to mentor budding programmers, and we pursue this mission with an expanding mentorship program. Thanks in part to support from r/ProgrammingBuddies members, we are lucky enough to currently have a queue of mentors, so we're looking to add on both new mentees and mentors to be paired.

We include young people, old people, complete newbies, wizard hackers, doctoral graduates, self-taught coders, and everyone in between. If you are a person who likes other people and wants to program, you belong with us. :)

How to join

Our community is gathered in Zulip, which is a Slack/instant messenger alternative (but better IMO due to having good conversation threading and being open source). Please note you can use Zulip as a webapp or as an app on your device of choice.

You can join us here on Zulip:

https://electrichive.zulipchat.com/join/56ymma2all5h6ubmrihckzng/

In addition, you can join us on Discord, which is currently less active but being built up:

https://discord.gg/mb7FCsmSpP

The mentorship program

Our mentorship program is built around 1-on-1 pairings of mentors and mentees. We invite anyone who's interested to apply for the program by filling out the appropriate form linked here:

If you want to be a mentor, we typically recommend that you have at least a year's worth of active programming experience. If you want to be a mentee, no prior experience is required!

What we offer

We offer, among other things:

  • a community to learn, commiserate, and grow with

  • an active mentorship program

  • a fairly extensive collection of learning resources

  • a job/coding interview training area, with learning and practice resources

About us

I believe we are an inclusive, welcoming, and helpful community, and we invite anyone of a like mind to join us. Our community is free, and we never charge for our help. We're in the process of applying for 501c3 nonprofit status in the USA, although it's taking a while due to Covid-related slow-downs.

Related links

For more info:

Please note the Reddit posts have some out-of-date links. The Zulip chat invitation link at the top of my post is where you can join the community and get up-to-date info.

Contact info

Please feel free to drop questions, comments, suggestions, etc. on this post, in a PM to me on Reddit, Zulip, or Discord, or in an email to opheron [at] protonmail.com.

Hope to see you around!


r/ProgrammingBuddies • • Nov 27 '20

LOOKING FOR A MENTOR I'm thinking of building a peer to peer mentoring platform for programmers. Would you use it?

92 Upvotes

Hi all,

I'm not sure this is the right place to ask, but since it could potentially benefit your community, I would like to hear your advice.

The title explains my question quite well. I'm thinking of building a peer to peer mentoring platform for programmers and I'm very curious to hear what you think, and if you'd use it.

To give you some perspective, here's my story that I shared in another thread:

I built Mentee (joinmentee.com) out of frustration of not being able to learn from people outside my network. Cold messaging on LinkedIn returns <20% response rates (if lucky), while I know there are many passionate people that want to share their experience and knowledge on the things that excite them.
That's why I decided to build world's first peer to peer mentoring platform.
I built the landing page in Wix and made designs in Figma. Integrated the clickable demo on the website to be able to show the UX, and voila.

The main piece of returning feedback I've been receiving is that although people are really fond of the general idea, they feel it needs to address a niche or specific focus group first before broadening to adjacent industries.

I've been contemplating a few industries and communities, and one that really sticks out is programming. I feel you guys are fond of sharing your expertise with your peers to see them succeed at what they love to do.

So my question to you is: what do you think of the idea/platform? Would you use it?
What would you like to see on such a platform?

I'm looking to build something people truly love, so please don't hesitate to ask for whatever comes up in your mind! I look forward to it.


r/ProgrammingBuddies • • Nov 20 '20

For aspiring devs

92 Upvotes

I see a ton of posts from aspiring devs and received a message from one asking some questions. Below is my answer as I feel it may help additional people.

Let me break this into a few different answers.

For learning: Use resources like TeamTreehouse, Udemy, etc. to learn the basics, and then start building something you're passionate about. You're going to retain more information by TRYING to get something to work.

For turning ideas into code: Before I landed a job as a developer I worked in factories. I took a Team Treehouse course on Unity because I had a game I wanted to make. After work each day I'd spend a few hours building my pet project, fighting through problems, and learning new concepts. Now, my games didn't actually go anywhere financially speaking, but my main point is that pet projects will require a substantial amount of effort and drive. Especially after a long day of coding, pet projects can be difficult to find motivation for.

For finding employment: Networking is by far the most successful way to gain employment. Go to meetups in your area, foster/ maintain friendships with people in the industry, etc. Even if the individual isn't a developer, they may still have an "in" for you.

For "imposter syndrome": I went through a code camp (DeltaV in Cedar Rapids, IA). Going in I was absolutely terrified and lacked any confidence, despite the fact that I'd dabbled with JS, C#, and Python prior. Once the course got going I noticed just how far ahead of my peers I was and I ended up being the go-to when they struggled. It can be difficult to properly gauge your skill level and knowledge when you don't have peers around. This is where networking can continue to help.


r/ProgrammingBuddies • • May 15 '21

We solved +5000 Leetcode problems in our Study Group, join us! (with engineers from Facebook and Google as organizers)

91 Upvotes

We are starting the May 2021 Leetcode Study Group on Discord, after the success of the previous ones.

You can join at https://habiter.app/leetcode, to solve problems, network and even get referrals (Facebook and Google engineers between the organizers and alumni).

How does it work?

We get into groups of 2/3, we send daily problems and we solve them together. If you continue to show progress we pair you up with mentors from top tech companies for interview tips and referrals.


r/ProgrammingBuddies • • May 05 '21

HELPING BUDDIES How should you start with programming ? [ 4 min read]

90 Upvotes

Hey r/ProgrammingBuddies, I wrote this article on my website diamondcoder and got a pretty engaging response. Might help you guys as well. Hope you will love the article.

Before you begin learning how to code, it’s important to reflect on the point I made above: everything in computer science is cumulative.

I like to reiterate this because the biggest mistake you can make as an aspiring programmer is giving up because you don’t think you’re smart enough to learn programming. Learning to code has nothing to do with your intelligence. Yes, it’s difficult to learn programming, not because of who you are, but because there are a lot of topics to learn.

First rule, accept that the following scenario is going to happen: you’re introduced to a new topic that makes absolutely no sense to you.

That scenario is going to happen over and over again. How you handle that situation, each time it happens, is the only factor that will determine your success.

If the current topic you’re learning doesn’t make sense to you, stay where you are. Do not proceed to the next topic. To reiterate, the topics are cumulative. Skipping ahead is like trying to attach a roof to a house that lacks a frame, walls, and a foundation.

I find myself in this situation all the time. I often have to rewatch the same lecture of a video tutorial several times for me to grasp what I’m learning. Don’t get discouraged if you find yourself in my shoes.

If the tutorial (or book) you’re using didn’t sufficiently explain the topic, you’re going to have to find other resources that work for you. There’s no excuse for giving up just because your tutorial’s coverage of a topic didn’t work for you. You can find just about anything you’re looking to learn for free on YouTube. Figure out what to search for (e.g., [the topic] in [your programming language] + any other helpful keywords).

If you’re searching on YouTube for educational tutorials, check the stats first. Take a quick look at the rating and/or the view count. If you’re still unsure if a video is worth your time, read some of the comments to gage others’ opinions.

A lot of topics aren’t going to make sense the first time around. So, refrain from the negative self-thoughts.

The goal is to be conscious of your comprehension as you’re learning. As you progress through the learning path, you need to self-reflect. For each topic you cover, ask yourself questions such as:

  • “Does this topic make sense to me?”

  • “Was there any new terminology? If so, was a formal definition provided for each new term?”

  • “Were there any new skills? Do I understand how each new skill is used in application? Can I demonstrate my understanding of this skill by solving practice problems?”

  • “Will I remember what I just learned tomorrow? And the day after? If not, how am I going to commit it to memory?”

One last piece of advice: never underestimate the power of memorization. Memorization is a totally underutilized approach in learning. Yes, comprehension of a topic is the ultimate goal. However, comprehension may take time. If you are really struggling to grasp a topic, break down the topic and memorize the important terms. If you can’t comprehend how something works, your immediate goal should be memorization.

1 — Computer Science Fundamentals

The first step is learning computer science fundamentals, which I cover in my article: Intro to Computer Science Terminology. This article is written specifically with my audience in mind — everyone. I intentionally created this so that it is easy to understand for anyone with no background in computers.

The concepts covered in the article are predominantly definitional. You can casually read through the article, and that’s fine it that suffices for you. I recommend committing these terms to memory. Approach each term as though you’re in school and you need to be able to recall each term’s definition for an exam. You don’t have to commit yourself so thoroughly if you don’t want to. However, the more of these concepts that you can commit to memory, the easier it will be to understand later topics.

2 — Propositional Logic (optional)

No, you don’t have to be strong in math to be a programmer. Math skills can be helpful, but they’re not necessary.

If you’re insecure about your math abilities, I recommend learning propositional logic. The principles covered in propositional logic are the building blocks of programming.

You can learn propositional logic from this YouTube tutorial: Basic Concepts in Propositional Logic.

3 — Java Programming

After you’ve learned the basics of computer science, you’ll be ready to learn a programming language.

I have put a lot of thought and effort into designing a path that is suitable for everyone, regardless of their background. I chose Java for this learning path because Java is the language that I am most experienced in.

Java is one of the most in-demand programming languages. It’s classified as an object-oriented programming language (you’ll learn what this means later on) and it’s used to make desktop, web, and mobile applications.

If you want to know the fastest way to master any Programming Language then visit: Fastest way to master Programming.

If you’re looking for a video tutorial, I recommend watching videos #1–19, 31–33, 88, and 93 in the Java YouTube tutorial by Derek Banas: Java Video Tutorial.

The first video in the YouTube tutorial will direct you to download a computer program called Eclipse. Eclipse is an Integrated Development Environment (IDE). You can think of an IDE as a fancy term for a word editor that is made for programmers. It’s just a computer application that provides a text editor for programming, along with other tools for running your programs. Here’s the link to Derek Banas’s YouTube video on how to download Eclipse: Install Eclipse for Java.

4 — Algorithms and Data Structures

An algorithm is a set of instructions (or steps) for performing a specific task, where each step must be clearly defined, capable of being executed, and finite (meaning, it doesn’t continue executing infinitely).

A data structure is a way of organizing data in memory.

Algorithms and data structures are two of the most challenging topics of programming. You don’t need to learn algorithms for basic competency in programming. However, if you aspire to work as a software engineer at a reputable tech company, you will be expected to demonstrate comprehension of algorithms and data structures during the interviews.

On a personal note, the tutorial below is what took my algorithm skills from novice to expert: Tutorials on algorithms and data structure. I’ve purchased a lot of tutorials on algorithms. This was by far the most comprehensive one that I’ve come across. Whether you want to learn algorithms and data structures or prepare for technical interviews, this tutorial is your best bet for success.

Note: the course is expensive, but essential. I was able to get in contact with the instructor, and she has generously offered a coupon code which reduces the cost from $50 to $10. The coupon code will be applied automatically when you click the link.

I recommend using the following tutorial alongside the Udemy tutorial: VisuAlgo. VisuAlgo is a free resource that shows visuals of how the values input into an algorithm change throughout its execution.

5— Android development

Android development is, in my opinion, one of the most fun applications of Java programming. Android apps are predominantly programmed in Java, so once you learn Java, you’re ready to learn Android.

Here is the best free video guide to master Android development: Guide to master Android app development

After you complete the Udacity course above, you have a couple options where to go from there. There should be an extension to the above course that is taught by the same group of Google employees. The additional lectures should become visible once you get through the course (if you can’t find it, search for it on Udacity). That is a good option, especially since it’s free.

If you lack the funding, I highly recommend the following: Head First Android Development: A Brain-Friendly Guide. This article gives detailed explanations and helpful visuals to really help you learn the underlying concepts of Android. Each chapter walks you through an example application. Everything is explained thoroughly, using words and diagrams that anyone can understand.

Helpful Resources

Stack Overflow is a website where programmers can get free help with their code. If you get stuck and want to ask a question, search for it first. If you can’t find your question, create an account and post the question yourself!

There are a ton of educational sites where you can find programming tutorials. Some of my favorites are Codecademy, Udemy, Udacity, Team Treehouse, and Khan Academy.


r/ProgrammingBuddies • • Sep 13 '25

LOOKING FOR BUDDIES Looking for a buddy

84 Upvotes

Hi, I’m 22F and looking for a programming buddy! (Not just programming, if we click on hobbies too, even better).

About me:

  • I usually study 2–4 hrs a day (sometimes 4–6 if I’m in full grind mode). Max 2 rest days a week.

  • The path I am taking is Web Development. I am decent at frontend and currently suffering… I mean learning backend. 🫩

  • I ask a lot of questions… I mean A LOT.

Extras:

  • I’ve got too many hobbies and not enough time.

  • Current fixation: online games. I’m terrible at competitive stuff, but if you don’t mind carrying me, I’m down 😅

Just DM me! I don’t bite 😆


r/ProgrammingBuddies • • Feb 23 '21

Helping buddies Avoid these 7 mistakes which 90% of the programmers do [4 min read]

84 Upvotes
  1. Spending a Lot of Time in the Research of Technologies Instead of Writing the Code Actually

Which programming language or framework should I choose to learn? Which database should I choose to learn? If you need an easy solution for this then go read an article where I wrote about the opportunities available for programmers of different languages. Have a look at this

Beginners often get confused and do endless research on technologies, languages, or frameworks which is one of the quite common but big mistakes they make during the learning phase of programming. It is completely ok to do some research about language or framework but doing the over-analysis on technologies for months is not going to give you any positive results. A beginner accepted that he did this mistake and he learned nothing in the entire year of his learning phase. 

2. Not Checking the Working of Your Code Constantly and Letting the Code Pile up Endlessly

A lot of beginners make this common mistake. They write the code for their application and forget about checking it constantly in the middle of writing it. Later when they run the application or the file, they get a bunch of errors and it becomes horrible for them to find out where they went wrong. A good developer keeps checking the working of code just to make sure that the feature which they are implementing is behaving the same way it is supposed to behave. 

3. Coding in Isolation

A lot of beginners do not interact with the other developer or the programming communities due to imposter syndrome or some other reason. This is one of the common and big mistakes most of the programmers make. During the journey of learning to code, it’s always good to embrace the programming community to learn from each other. Stackoverflow, Reddit, etc all these online platforms not just helps in getting the solution for the coding related problems but also helps in learning the best coding approach from the top programmers sitting across the world. 

4. Doubting on Your knowledge and Ability When You See the Errors

Getting the error message is the part of programming but as a beginner, you should not allow yourself to get affected with these error messages. Screwing up in coding is quite normal and it’s ok to make mistakes in coding. When you keep trying to solve these errors from different resources you become much better at coding and you become much better at debugging. You start understanding why your code is giving this error message, what they mean and how they can help you solve problems. It takes some time to learn the error message and understand the pattern to fix the coding problem. 

5. Ask for Help in a Wrong Way

At some point in time, every beginner gets stuck in some coding problems during the learning phase of programming. It’s quite common and asking for help from someone is ok. A lot of beginners don’t get a clear and concise answer for their problems because they don’t understand how to ask the question in a right and constructive way. They don’t understand what details they should provide, how to phrase a question, how to explain what solution they have tried, and how things are connected in their code. Remember that whatever community (StackOverflow, Reddit) you’re visiting to ask your question, ask that in the right way to get the correct solution quickly and easily. Below are some points to keep in mind to ask the question in the right way… 

6. Not Paying Attention to Change the Bad/Spaghetti Code

Your code is similar to the exercise you do in your gym or a daily workout plan. Every exercise has a correct way to do it and doing the exercise in a correct form makes the workout more effective. A similar thing happens in coding as well. Often programmers are lazy in making the changes in their code but sometimes avoiding it completely makes your code horrible and frustrating for other developers to work on that. 

7. Giving up Just Right Before the Change is About to Happen

Programming needs a lot of patience and time to learn. It needs discipline, focus, time, efforts, and attention from programmers. A lot of beginners give up right before they’re about to see the results. And it happens generally due to the lack of patience and frustration in programming. A lot of things are overwhelming in programming and when we find that we are not getting closer to become a good programmer we give up easily. Every newbie programmer needs to understand that they’re not alone who is facing this problem. Coding is a journey and it’s completely ok in the beginning to follow the wrong strategy of learning to code. Better to learn from the mistakes and avoid that in the future instead of giving up on coding. 

Note : If you read it until here then have a look at this article where I told about the correct way to master any programming language. Here is the article.

Save your time searching for algorithms; Go and learn sorting algorithm in less than week for free here


r/ProgrammingBuddies • • Dec 02 '20

If anyone is interested in learning HTML & CSS,

81 Upvotes

I will teach you if you don't mind :).

Hi, I am Sangwon. I am at California LA timezone.

Please let me know if you are interested in! ( I learn more by teaching )

contact: [email protected] or DM?. :D

p.s I am 30 years old, male. Don't mind anyone to teach(age range: 15-50, male/female/trans anyone).

Or if you want, you can teach me as a mentor!