r/learnprogramming • • 20h ago

At what point did programming stop feeling like memorizing random rules and start making sense?

97 Upvotes

Something I've been thinking about while learning programming is how different it feels to understand a concept in a tutorial versus actually being able to use it on your own.

You can watch someone explain loops, functions, data structures, or algorithms, and everything seems to make sense at the time. Then you open a blank editor, try to build something without following a tutorial, and suddenly you don't even know where to start.

I wonder if this is just a normal stage of learning or if there's a better way to approach it.

For those of you who have been programming for a while, was there a particular point when things started to click? Was it building your first project, solving problems on platforms like LeetCode, reading other people's code, or struggling through bugs until you finally understood what was happening?

I'm also curious how you balance learning new concepts with actually building things. Sometimes it feels like there's an endless amount of material to study, and it's difficult to tell when you know enough to move on to the next thing.

I'd appreciate hearing what genuinely helped you improve, especially things you wish you'd done differently when you were starting out.


r/learnprogramming • • 8h ago

Junior Devs Who Got Hired 2026 - What Made You Get In?

72 Upvotes

Hey,

So I self studied full stack development since the beginning of the year, I'm applying for few months already.

I work as a guard in a security company. I created a shift management app with Next.js (JS/Node.js/TS/React), where the guards send their availability with notes for the next week, and the manager sees everything in one place, per building.

I'm having a hard time finding a job. I got one change, I passed home exam with language I didnt work with, but after that I did not pass the HR interview (she told me where I fell, it is fixable for the next interview).

I don't even know what to do, I feel like giving up. I tried to build a task manager app for my home recurring tasks, with AI native, I just told him to give me commit names and I picked what he needs to do, it feels like these days I'm not even needed.

Please help me guys!


r/learnprogramming • • 18h ago

Discussion When people mention having a "personal style" in programming, What does that actually mean?

47 Upvotes

With all of the AI code thats out there now, I've heard people say that most code has lost the unique style of the developers. I can assume its just how they have structured the code and solved the problems but I'm not sure. If that is correct how can I have/develop that as I learn?


r/learnprogramming • • 22h ago

Help! I want to learn coding and game design but am completely clueless!

30 Upvotes

I'm 19 female, and I'm interested in learning to code for game design as a career and trying to decide if I should go to college. I was homeschooled my whole life so careers/college was never a topic so now I'm completely lost. I'm interested in coding because I love the details of game design and I'm pretty sure that's a wide field but I know nothing about the business nor how to code so I'm looking for advice and some insight into what I'd be getting myself into, and mostly where I can learn coding/where to start/maybe a website to teach me or two. I am completely new to this, I don't know anything about the difference "languages" and all that so any advice/tips would be helpful! Thanks for reading.


r/learnprogramming • • 16h ago

Trying to learn how to code, is CS50 the way to go?

22 Upvotes

Hi guys I'm a high schooler who recently got interested in coding but I have been almost solely relying on ai. I know that I need to actually understand whats going on so I plan to learn how to code proficiently. I can code and understand basic python so far, but I am wondering if CS50 will allow me to progress more efficiently and faster.


r/learnprogramming • • 4h ago

How did you improve your coding skills as a beginner?

19 Upvotes

I find coding a bit difficult. What helped you improve? Any tips or resources that worked for you?


r/learnprogramming • • 20h ago

Topic How do I improve programming fundamentals and basics?

14 Upvotes

How do I improve my coding ?


r/learnprogramming • • 10h ago

Question Early Exits in small sections

12 Upvotes

Hello, I have been practicing early exits throughout my code and was told I probably shouldn't be using them in small cases like the following where nesting wouldn't bring the code out too much, this is c++ code:

int findMaxInArray(const int arr[], const int num_elements) {  
  int maxIndex = 0;

  for (int i = 1; i < num_elements; i++) {
    if (!(arr[i] > arr[maxIndex])) {
      continue;
    }
    maxIndex = i;
  }
  return arr[maxIndex];
}

r/learnprogramming • • 3h ago

Returning to front end (React/TS) after a 3-year hiatus. Best way to bridge the knowledge gap and refresh my portfolio?

9 Upvotes

Hi everyone.

I worked as a Front-End Developer (React.js & TypeScript) for two years (2021–2023) before moving abroad to complete a Post-Graduation in Computer Science. During my studies I balanced a full-time non-tech job alongside my coursework, which meant my coding portfolio lay dormant, and I haven't written production code in roughly 3 years.

Now that I've completed my degree (3.9 GPA) and returned home, I’m feeling stuck on the best path to refresh my practical skills and get back into the market.

A few specific questions I'd love input on:

  1. Stack updates: What major shifts happened in the React/TypeScript ecosystem over the last 2–3 years should I prioritize catching up on?
  2. Refurbishing knowledge vs. courses: Is it worth taking a structured course to quickly repolish, or should I dive straight into building a complete full-stack project from scratch? Any specific updated courses or resources you'd recommend for someone with prior experience?
  3. Portfolio strategy: How should I frame this 3-year gap (academia + non-tech work) on my resume/GitHub when applying for mid-level or junior roles?

Thanks in advance for any insights or advice!


r/learnprogramming • • 6h ago

Is finding open source issues getting harder, or am I approaching it the wrong way?

3 Upvotes

Hi guys,

I've been trying to get back into open-source contributions after spending couple of month working on personal projects.

I had 5 bug fix PRs merged into an OSS projects, and when I create those PR, I had no issue finding issue. But when I checked that same projects recently, there weren't any open issues left.
I've also looked through quite a few other projects, especially libraries I use, but I'm struggling to find issues that aren't already assigned or being worked on. (I've looked about 30 OSS)

Even when I find an issue, someone often opens a PR before I can fully understand and solve it, especially with how fast people can submit PRs using AI nowadays.

So I'm curious, how do you guys actually find issues to work on?
Do you just keep searching through repositories until you find something available? Or do you usually find bugs or improvements, and open your own issues?

Any recs would be helpful as well! I'm into ML and Data engineering, python or TS is preferred.

Thanks!


r/learnprogramming • • 3h ago

What on a frontend resume actually impresses hiring managers? (2.5-year career break, rebuilding with projects)

3 Upvotes

I had a 2.5-year career break and I'm now trying to fill my resume with strong projects. For those of you who hire or have been hired in frontend (React/TypeScript):

  1. What kind of projects or resume items impress you most?
  2. Is one big project with real users better than several small ones?
  3. Anything that works well, or clearly doesn't, for people coming back after a gap?

Thanks, honest answers welcome.


r/learnprogramming • • 12h ago

Topic trying to implement libc for windows to learn about c programming

3 Upvotes

Repo is here, welcome for contributions and anyone interested:
https://github.com/NHCM-dev/nwlibc

Trying to do a simple C standard library implementation for windows using WinAPI, which I think would be pretty useful for those who want to dive deep into C programming and learn about the mechanism about how programs really run


r/learnprogramming • • 15h ago

Resource What is the best way to read python's (crash course edition 3)?

3 Upvotes

I am trying to learn python with crash course then move to CS50p.

i suffer from a learning disablity and i hear people with such disability still learn python.

How should i read the books entirety then make projects or should i read it all and connect what i want for projects?

i want to figure out the best way to learn for me.


r/learnprogramming • • 16h ago

Programming Books That Read Like a Dictionary?

3 Upvotes

Hello. I’ve been wanting to start actually learning more about different programming languages, specifically applications and languages such as C#. I am a learner who loves reading in order to discover new things, but already know a lot about how programming languages work, and how each functions syntax-wise. So I have two questions:

  1. Are there any programming books that specifically work sort of like a dictionary with its documentation, where I can just look to a certain part to know about its syntax for a specific task?

  2. Is C# the way to go for what I want? If needed I can elaborate further. I don’t have an exact thing I want to do. All I know is that C# is a language that works well to build applications and is able to still perform its own tasks math and science wise.

Thanks!


r/learnprogramming • • 23h ago

How to level up when work is repetitive

1 Upvotes

I have 2 years of experience as Java dev working as a consultant in DC area. I want to start applying for mid level roles next year but I feel like at my current role I not (and won’t) get any hands on experience for more advance issues other than fixing bugs and implementing small features here and there. My main concern is, regardless of what team I join, most of the projects are functional and it’s more maintenance. How can I gain more experience and what topics are expected for mid level devs to be efficient in.


r/learnprogramming • • 20h ago

Help Help continuing?

1 Upvotes

Hello! I've had a problem doing things I genuinely love, I have a huge passion for coding and it is so fun, but I suck at it T-T. I've been trying to learn for so long but I've never actually got anything to be able to stick, I'm still only 18 so I have time. I'd love to go to college but sadly I can't drive for many reasons and also I don't want to do online, it's not something that works for me. Recently (And this could possibly get looked down upon) around 6 months ago I decided to try and teach myself with AI and honestly it has worked wonders I've learned a good bit, except I have a problem which goes to a lot of other things as well, I start something no matter how passionate I am or how fun it is, Usually if I get distracted off of it for one day or even want to just take a break its like I stop doing it entirely, I was learning python for a month then stopped, 3 months later I started learning C# and I've got it down a lot, but I had to buy a new PC cause mine broke and I tried to do it again but like I stopped for some reason. Maybe some will say "Oh well then your not passionate about it" but I genuinely love it, I just get distracted and I dont know how to fix that. I do have an Attention Deficit Disorder so I thought maybe that could be why but I dont want to make excuses.

The only thing to really keep me on it which I loved and had so much fun was friends doing similar things like my friends did 3D modeling and I started it cause I wanted to learn it eventually and put many hours into it. But they stopped and I continued for about a month then stopped, but only cause I got distracted by some other things.


r/learnprogramming • • 49m ago

What free AI tools are actually worth using?

• Upvotes

I’m looking for genuinely useful AI tools for beginners, especially for learning, coding, productivity, and exploring new skills.

Which free tools do you personally use? I’m interested in tools that are actually useful than a huge list of random AI websites.

Would love to hear your recommendations!


r/learnprogramming • • 2h ago

I want to learn cpp

0 Upvotes

some tips how to learn cpp? I can’t code in any language I’m such a beginer.


r/learnprogramming • • 5h ago

Looking to Collaborate on a Spring Boot Project

1 Upvotes

Hey everyone! Is anyone working on a Spring Boot project and looking for a contributor? I'm learning Java backend development and would love to collaborate, contribute to a real project, and learn from other developers along the way.


r/learnprogramming • • 7h ago

Learning FastAPI

1 Upvotes

I am a student learning FastAPI nowadays is it any benefit of learning fast API in the future


r/learnprogramming • • 18h ago

Code Review Please help me find out why formState goes stale in React Hook Form

0 Upvotes

I recently dabbled in react forms and got React Hook Forms setup to be used with my Zod schemas, it all works perfectly... that is until I reset the form. The reset causes the formState (to my knowledge) go stale as validation messages show that the title input is empty, but inspecting its value property through code and looking at the display of typed characters on the screen proves otherwise.

I tried multiple stuff and went through the React Hook Form docs, but tbh the docs were utterly useless as I couldn't make heads or tails of any of it. Interestingly tho, using watcher to re-render the react component causes all of it to work so I suspect its a synchronization issue, but I'm still starting out so I don't know for sure...

Schemas:

const PLAIN_DATETIME_REGEX =
  /^\d{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[12]\d|3[01])T(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d{1,9})?$/;


const DISPLAY_TIME_REGEX = /\bMoments\b|[hm]$/;


export const taskSchema = z.object({
  id: z.uuid().default(() => crypto.randomUUID()),
  status: z.literal(["complete", "incomplete"]).default("incomplete"),
  title: z
    .string()
    .trim()
    .min(1, "Title cannot be empty")
    .max(100, "Title cannot exceed 100 characters"),
  description: z.preprocess(
    (raw: string) => raw?.trim() || undefined,
    z
      .string()
      .max(2000, "Description cannot exceed 2000 characters")
      .optional(),
  ),
  createdAt: z.iso.datetime().default(() => Temporal.Now.instant().toString()),
  deadline: z.preprocess(
    (raw: string) => raw?.trim() || undefined,
    z
      .string()
      .regex(
        PLAIN_DATETIME_REGEX,
        "Deadline must be a valid ISO 8601 plain date and time",
      )
      .optional(),
  ),
  priority: z.literal(["low", "medium", "high"]),
});


export const taskFormSchema = taskSchema.omit({
  id: true,
  status: true,
  createdAt: true,
});


export const taskViewSchema = taskSchema.transform(
  ({ description, createdAt, deadline, ...rest }) => ({
    ...rest,
    description: description,
    createdAt: formatDateTimeSince(createdAt),
    deadline: formatDateTimeUntil(deadline),
  }),
);


export type Task = z.infer<typeof taskSchema>;
export type TaskForm = z.infer<typeof taskFormSchema>;
export type TaskView = z.infer<typeof taskViewSchema>;

Form Component:

export default function TaskSaver() {
  const {
    register,
    handleSubmit,
    reset,
    formState: { errors },
  } = useForm<TaskForm>({
    resolver: zodResolver(taskFormSchema),
    mode: "onChange",
    defaultValues: {
      title: "",
      description: "",
      deadline: "",
      priority: "low",
    },
  });


  const addTask = useTasksStore((state) => state.addTask);
  const id = useId();


  const onSubmit: SubmitHandler<TaskForm> = (data) => {
    const result = taskSchema.safeParse(data);


    if (!result.success) {
      console.error(result.error);
      return;
    }


    addTask(result.data);
    reset();
  };


  return (
    <form onSubmit={handleSubmit(onSubmit)} className={styles.root}>
      <div className={styles.group}>
        <label htmlFor={`title-${id}`} className="sr-only">
          Title
        </label>


        <input
          type="text"
          {...register("title")}
          id={`title-${id}`}
          className={clsx(styles.input, styles.inline)}
          placeholder="Title"
        />


        {errors.title && <p className={styles.error}>{errors.title.message}</p>}
      </div>


      <div className={styles.group}>
        <label htmlFor={`description-${id}`} className="sr-only">
          Description
        </label>


        <textarea
          {...register("description")}
          id={`description-${id}`}
          className={clsx(styles.input, styles.multiline)}
          placeholder="Description"
        ></textarea>


        {errors.description && (
          <p className={styles.error}>{errors.description.message}</p>
        )}
      </div>


      {/* Needs to be worked on: below */}
      <div className={styles.group}>
        <label htmlFor={`deadline-${id}`} className="sr-only">
          Deadline
        </label>


        <input
          {...register("deadline")}
          id={`deadline-${id}`}
          className={clsx(styles.input, styles.inline)}
          placeholder="Deadline"
        />


        {errors.deadline && (
          <p className={styles.error}>{errors.deadline.message}</p>
        )}
      </div>


      <div className={styles.group}>
        <label htmlFor={`priority-${id}`} className="sr-only">
          Priority
        </label>


        <select
          {...register("priority")}
          id={`priority-${id}`}
          className={clsx(styles.input, styles.dropdown)}
        >
          <option value="low">Low</option>
          <option value="medium">Medium</option>
          <option value="high">High</option>
        </select>
      </div>


      <div className={styles.group}>
        <button type="button" className={clsx(styles.button, styles.reject)}>
          Cancel
        </button>


        <button type="submit" className={clsx(styles.button, styles.accept)}>
          Save
        </button>
      </div>
    </form>
  );
}

r/learnprogramming • • 21h ago

Topic been coding for a bit, cannot manage stress, need advice.

0 Upvotes

i love results, i made a bit of tools, simple games and all and plan on doing allot more.

but the second i get into somewhat unfamiliar territory or my code doesn't run the first or second time i spiral, stop really thinking and just play with values hoping it works, that'll last as long as the problem isn't done

my leg starts shaking and my chest hurts, my breathing gets worse ect, avarage stress session

i thought it'd get better the more i solve problems but that doesn't really work, it only makes me better at solving problems i solved before, but i still stress when i mess them up. i tried music, breathing techniques and stopping caffeine intake, really does nothing for me

i am able to make stuff but the process is mentally tiring which i assume only makes it worse, and i take so so much longer than i should. this happens with any type of problem solving (especially math) but the most with programming, i'm wondering if anyone has experienced/knows how to deal with this and eliminate it


r/learnprogramming • • 23h ago

I’m 20, living on my own, and currently working a pretty tough job just to pay the bills. In my spare time, I’m grinding backend development under the guidance of my dad (a Senior Engineer).

0 Upvotes

Hey everyone,

I’m 20, living on my own, and currently working a pretty tough job just to pay the bills. In my spare time, I’m grinding backend development under the guidance of my dad (a Senior Engineer).

My current status & stack:

  • Stack: Python, Django, SQL, PostgreSQL, Docker, Git, REST APIs, JSON, OOP.
  • Learning method: I don't code purely from memory. I search for solutions, watch tutorials, use LLMs, and — most importantly — cross-check AI answers against official documentation to filter out hallucinations.
  • English level: Reading & listening comprehension is around B1–B2. I can read docs and understand native speakers easily. However, my spoken English feels like A2 — I get stuck and stumble over words. I recently started practicing with a native US speaker, but it's still tough.

Where my anxiety comes from: My brother recently landed a Junior dev role at a European company (the hiring process was in Russian because of the team structure). In my case, I'll need to pass technical interviews fully in English.

I’m constantly worried that:

  1. The EU junior market is moving too fast and I’ll be left behind despite all this effort.
  2. Relying on Google, docs, and AI means I'm "doing it wrong" or not learning properly.
  3. My weak spoken English will instantly disqualify me during behavioral/technical interviews.

My questions to the community:

  • Is my learning methodology (using AI + verifying with docs) acceptable for a Junior, or should I be memorizing more?
  • How high is the language barrier for Junior Backend roles in the EU? Is basic tech-communicative English enough to get hired?
  • Any advice on pushing through the fatigue of balancing a bad job, living alone, and studying?

TL;DR: 20yo living alone, balancing a bad job while learning Python/Django + Docker with my Senior dev dad. Reading B1-B2 English, speaking A2. Worried about EU market shifts and failing English interviews. Looking for feedback and reality checks.


r/learnprogramming • • 22h ago

Topic Python vs Java in 2026: Which should a beginner learn first?

0 Upvotes

If you're starting programming from scratch, choosing between Python and Java can feel confusing. Both are useful languages, but a lot depends on what you want to build and how you prefer to learn.

Here's how I would approach the decision.

1. Python: easier to get started

Python has relatively simple, readable syntax, so beginners can focus more on programming logic instead of writing lots of setup code.

For example:

for i in range(5):
    print(i)

Python is a reasonable first choice if you're interested in:

  • Data analysis and data science
  • AI and machine learning
  • Automation and scripting
  • General programming fundamentals

One thing to remember: Python's simple syntax doesn't mean the advanced topics are easy. Data science and machine learning still require practice, statistics, and a good understanding of the underlying concepts.

2. Java: more structure from the beginning

Java requires more explicit structure, even for a small program. That can feel a little overwhelming initially, but it also introduces concepts such as classes, types and object-oriented programming early in the learning process.

Java is worth considering if you're interested in:

  • Backend development
  • Enterprise applications
  • Object-oriented software development
  • Working with Java-based frameworks such as Spring Boot

Java isn't necessarily a bad first language. If you already know that you want to build Java applications, starting directly with Java can make sense.

3. Which one should you choose?

My practical suggestion would be:

  • Completely new to coding and unsure about your direction? Try Python first.
  • Already interested in Java-based backend development? Start with Java.
  • Want to learn both eventually? Pick one, learn the fundamentals, build a few small projects, and then move to the second.

Whichever language you choose, spend time on variables, conditions, loops, functions, data structures, debugging, and problem-solving. Being able to build and explain a small program is more valuable than simply finishing a long tutorial.

Also, don't choose a language based only on claims that it guarantees better jobs or salaries. The relevant skills, projects, role requirements, and your ability to solve problems matter a great deal.

A question for people who have already learned one or both:

If you could advise someone learning programming from scratch in 2026, would you recommend Python or Java first—and what made the biggest difference in your learning experience?

I'd especially like to hear from people who started with one language and later learned the other. What became easier, and what was harder than you expected?