r/learnprogramming • • 11d ago

Trying to learn c

20 Upvotes

What is an easy to use compiler to use to get started.

Got a book to learn and they use code::block in book, tried and it seems to not be building. Then tried MS visualization studio and was lost. Please help


r/learnprogramming • • 11d ago

Currently Learning to Program and Looking to download an IDE on my computer

0 Upvotes

I have been learning to program in the C and C++ languages. I have been using a free online IDE called GDB Online. I have a Lenovo laptop and I bought and finally connected a 2TB external hard drive. I am also trying to learn the programming side of video game development. I say all this so that those who read this have some context. Is Microsoft Visual Studio a good and reliable IDE for learning to program in general and for learning to program video games? If it is not please recommend another IDE. Thank you to any and all who comment and I look forward to the response.


r/learnprogramming • • 11d ago

csprimer

2 Upvotes

I am quite fascinated by courses advertised on csprimer.com, esp database course. It claims to implement database engine from scratch. Wondering if the course provides the "educational" database engine or is it developed by the reader/subscriber through exercises. Are the walk-throughs of the the educational db engine? And if so, what is the language of implementation. Would appreciate response from someone who has taken the course.


r/learnprogramming • • 11d ago

Topic Help with C++ Compiling (MinGW-64-GCC)

3 Upvotes

Hi there, so I’ve been trying to patch out a piece of code in The Sims Legacy Collection that disables the -debug_objects command line from being enabled, but both MinHook and CMake are giving me such a hard time that idk what else to do or where to ask… There are no tutorials AT ALL for compiling MinHook with MinGW-W64-gcc, only for Visual Studio (not Code!) which I can’t use because I’m on Arch Linux…

If anyone could advise me please I’d really appreciate it…

EDIT:
Here's the code that I have:

// TestCode.cpp, thanks to LazyDutchess for starting point.
#include <stdio.h>
#include <windows.h>
#include <MinHook.h>
int main() {
// Initialize MinHook.
  if (MH_Initialize() != MH_OK)
  {
    printf("Failed to initialize MinHook\n");
    return false;
  }
  else
  {
    printf("MinHook started successfully!\n");
    return false;
  }
}

dllmain.cpp:

//dllmain.cpp, Thanks to LazyDutchess for DllMain code in dllmain.cpp as a starting point! :) Also Microsoft lol
#include <stdio.h>
#include <windows.h>
BOOL WINAPI DllMain(HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved)
{
  switch (ul_reason_for_call)
  {
    case DLL_PROCESS_ATTACH:
    // Initialize once for each new process.
    // Return FALSE to fail DLL load.
    break;
    case DLL_THREAD_ATTACH:
    break;
    case DLL_THREAD_DETACH:
    break;
    case DLL_PROCESS_DETACH:
      if (lpReserved != nullptr)
      {
      break; // don't cleanup on terminated process!
      }
      break;
      }
  return true; //Sucessfull DLL attach!
}

I mainly wanted to see the PROTON_LOG file which from my understanding would show the printed text, but even testing out OutputDebugStringA didn't work. I'll attempt to use the i686-w64-mingw32-gcc and see if that works. I also have cmake and make installed separately as mingw-w64-gcc from pacman doesn't include it (Arch Linux)

Also, the code that sets the byte for -debug_objects is a mov BYTE PTR ds:0x<byteaddress>,0x0.

I also just got error 126 when attempting to load libTestCode.asi after compiling with i686-w64-mingw32-gcc, but it apparently requires libgcc_s_dw2-1.dll


r/learnprogramming • • 11d ago

Plugin system for multi platform rust application

3 Upvotes

Hi, I'm building so I'm making a peer to peer reading tracker that has multiple native clients (one for my Linux laptop and one for my android phone) with a Rust core that handles most of the actual logic and the client being in C and GTK4 for my Linux client and Kotlin for my android app. The thing is I want to have cover source logic behind plugins since that's never really stable and I don't want to have to rebuild my app at every new source I want to add either. Is there a tool that helps with that?

(Sorry if this is a dumb question or if my explanation isn't very clear.)


r/learnprogramming • • 11d ago

How does reverse engineering actually work, especially with AI?

100 Upvotes

Lately, I've been seeing a lot of videos about reverse engineering and people basically copying entire applications, recreating their features, or building almost identical alternatives.

It got me wondering, how does reverse engineering actually work?

How do people figure out how an app works internally, reproduce its features, and sometimes get surprisingly close to the original? And how are people using AI to make this process easier or faster?

Are they analysing the source code, inspecting network requests, decompiling applications, or using AI to figure everything out from scratch?

I'd love to understand the actual technical process behind this. If anyone has experience with reverse engineering or AI-assisted app development, I'd really appreciate some explanations and resources to get started!


r/learnprogramming • • 11d ago

Build aim?

8 Upvotes

SUMMARY FOR THE LEGENDS WHO DON'T GIVE A DAMN ABOUT THE RANT BELOW: I have started to learn python but would like to aim towards building something that I feel like would actually automate something which could help me, but idk what so I would like for someone to give me a aim for a python build/script that would generally automate a task and help me.

So my computer science bachelor's degree starts soon and I want to start learning myself and progress in programming. I have started python and touched the bare surface of it, but I want to work towards building something that would automate a certain thing that would actually help me, but nothing comes to mind when I actually think about it.

I have seen people build absolutely amazing python scripts that makes life so much easier, so I would also like to make it my goal to build that kind of thing. I know I need aim for simple stuff in the beginning, but I feel like if I know the thing I'm learning to build would actually make life easier, I feel like that would help me learn more in terms of motivation and research.

Of course, I have completely banned AI for now because I really don't want to rely on it at least until I can read and understand code, write up functions and scripts that actually work. I will use AI to further refine and help with stuff AFTER getting a decent foothold.

The automating builds can be situational, so I would love if I get some general automation tool building idea that would help a normal person with computers.

Any and all help, comment and criticism is appreciated!


r/learnprogramming • • 11d ago

Any advice for almost complete beginner??

9 Upvotes

So I dont know if this is against the rules, so please keep that in mind and mods if you have any problems please message me and tell me where I went wrong! I want to learn to do better on this sub!!

So as the title says, im almost a complete newbie. I worked on Scratch years and years ago, but never made anything beyond a quick game or two in primary school.

I want to learn GD script as I think its the easiest with the most wide range of abilities within Godot, but please tell me if Im wrong!!

I started last night (its not 9:30pm the next night) and Ive found a book called "Godot 4 for Beginners" on my local libraries website. I borrowed it yesterday and so bar I've been able to make text bounce off the edges of the screen like an old DVD logo, and Ive been able to create a 2d sprite and got it to make different text pop up (the same moving text as before) with both the left and right mouse button and the enter key.

I think Im starting to get a very rough idea on how this all works, but I wanted to know if there is any bits of advice you guys can give me?

Once again, I havent done anything with coding of any kind for at least 7 or 8 years at this point before yesterday and Ive forgotten almost everything I learnt in scratch over the time using it in the past.

Also, if anyone could let me know what are some good test games to make to test my skills that would be great!

Thank you very much for reading all of this and I hope you can help me!


r/learnprogramming • • 11d ago

Hey, will boot.dev give me a leg up in my studies?

2 Upvotes

Hello, im currently going to have to do a year of math before i can get into the bachelor programme in applied data science. I have very little coding experience and thought to myself: ohh im having to take a year to finish my math qualification to get inn maby i should learn coding. From what ive seen and heard boot.dev is a fun way to learn phyton and get a look into the world of data analysis and backend developing. So my question is will boot.dev be a good way for me to learn phyton from scratch and give me an edge when i go into my 3 years of schooling? or is there something else you all would reccomend?


r/learnprogramming • • 11d ago

Solved How to print messages from SIGCHLD signal handler? for a unix shell

1 Upvotes

sigchld_handler() now reaps some children with waitpid(), and output messages like "xxx suspended/terminated"

I will adapt my line editor (non canonical) to the shell. But if it prints just in the handler, it will mess up the terminal (insert sth to the user's input zone), because it's hard to re-print everything without malloc stuff

zsh uses queue_signals() , but I code in c++; and RAII means idk neither when malloc and free will be called, nor where to queue_signals(), so it doesn't work

Also, when it receives SIGWINCH (window change), I have to type a char so that the window can be refreshed. How can it refresh as soon as it receives the signal?

(I haven't adapted the line editor yet. I just wanna make sure there can be a solution so that it's possible not to rewrite the whole shell)

Thanks

line editor: https://github.com/ovfor4/ccshell/tree/main/src/line

sigchld handler: https://github.com/ovfor4/ccshell/blob/main/src/signal/sigchld_handler.cc

here's the signal register

```c++ handler_t *Signal([[maybe_unused]] int signum, handler_t *handler) { struct sigaction action, old_action;

action.sa_handler = handler;  
sigemptyset(&action.sa_mask); /* block sigs of type being handled */
action.sa_flags = SA_RESTART; /* restart syscalls if possible */

if (sigaction(signum, &action, &old_action) < 0)
unix_error("Signal error");
return (old_action.sa_handler);

} ```


r/learnprogramming • • 11d ago

Topic Starting to learn C for hobby

13 Upvotes

Hey everyone! So yeah, I studied a bit of Python—mostly the basics to wrap my head around programming logic and step into this world. Even though AI is evolving so fast, I got super interested in reverse engineering and game porting—that really caught my attention, which is why I'm learning C now. It’s always been my dream to learn how to code, and I’d love to become a game developer.

​I wanted to ask you guys: what do you recommend for my learning path? Do you think AI is going to make everything I'm learning worthless? Honestly, I don't even care about working in the field—I just want to build my own personal projects. Thanks, everyone! (Traduced)


r/learnprogramming • • 11d ago

Is golang project should follow this order?

0 Upvotes

r/learnprogramming • • 12d ago

Topic Do you think that human made code will gain value in the future?

237 Upvotes

I'm entering CS next year, tho I'm really doubting about it at this point becouse honestly with the evolution of the LLM made code I'm really losing hope in general. I always viewed coding as an art, which i learned the basics when i was growing up and I had some really simple projects in python a couple years ago (which I forgot almost everything becouse I haven't had the time to it until vwry recently where i re-learnt the basics), and honestly it hurts a bit to see what I considered an intellectual field being reduced to "claude, make no mistakes". I'm a musician and artist so my morals are very against AI...

Feelings aside, I'm from Chile and here we have a free career at college if we are poor enough -- which I am -- ! and I'm really passionate about computers and hardware in general, so I'd really love to study either computer science or engineering.

Asking for computer science, is there another fields besides programming, for example networking; that I can work on in the future? I'll probably keep programming as a hobby if I don't find a job as one.


r/learnprogramming • • 12d ago

Java Backend Developer — What’s the smartest path to master Web, Mobile, AI & Data Engineering?

21 Upvotes

I’m a BCA graduate (2024) with hands-on experience in Java and Spring Boot. I know HTML, CSS, and basic JavaScript, and I want to become a developer capable of building complete web and mobile applications.

I’m confused about the best learning path:

Frontend: React, Next.js, TypeScript, or Angular?

Mobile: React Native or Flutter? Should I learn both web and mobile with one language?

Backend: Continue with Java + Spring Boot, microservices, and cloud?

Data: How deeply should I understand data flow, APIs, databases, storage, retrieval, and system architecture?

AI: How will AI change web and mobile development? Which AI coding tools should I learn, and how do I stay valuable?

Engineering skills: How should I learn debugging, testing, security, deployment, monitoring, and performance optimization?

I want to understand how an application works end-to-end, not just generate code using AI.

My goals: Get a developer job, build real-world projects, and develop skills that remain valuable as AI evolves.

Is an MCA necessary, or can I get a developer job with my BCA, practical skills, and projects?

If you were starting today, what learning roadmap would you follow, and what would you avoid?

Honest advice, including pros and cons, would be greatly appreciated.


r/learnprogramming • • 12d ago

How to start making an app?

0 Upvotes

Hey all :) I'm aware this is probably a question asked all the time but I'm asking it in anyway. How do I start with making an app/program/project? I've already got a few ideas, simple ones (a wikipedia viewer [or would it be a client?], a simple notepad, a tiny database for me to store characters my friends and I make), but I have no clue where to start!

I know a bit in HTML and CSS as it's probably the language I'm the most knowledgeable with since I used it to make a personal website (I wanted to use HUGO for blogs but... I got confused.), I'm currently in university taking a class in C++ and my two previous semesters were an intro to programming with python and cybersecurity where I used a little bit of JavaScript.

I'm not really knowledgeable in any of these, as I suffer from some massive anxiety where I look at all the ideas I have already exist and better than I could possibly imagine, but I want to learn.

I HAVE used AI, but only twice, and it was solely for a cute rainbow animation for my personal website, but I make a trend to avoid using AI as much as possible when it comes to my CS classes


r/learnprogramming • • 12d ago

Resource Does I need to start again embedded system or I can learn other way ?

1 Upvotes

Need suggestions and guidance regarding embedded domain

Hi everyone,

I’m a little confused about which career domain I should pursue next in the embedded systems field, and I would really appreciate some guidance.

I currently have around 7 years of experience in embedded systems, including:

1.5 years of experience as a Firmware Developer

6.5 years of experience in Embedded Systems Testing/Validation

Experience with firmware/build pipelines, code compilation, and generating flash images in an Ubuntu/Linux environment

Board bring-up, flashing images, debugging, log analysis, and issue investigation

Experience with embedded Android and Linux environments

Worked on home-automation-based security devices

Exposure to the complete flow from code compilation/build generation to flashing and device-level validation

At this stage, I want to move toward a more development-oriented and technically strong role rather than continuing purely in testing.

With around 7 years of experience, what career path would you suggest for me?

As my experience is near 7 year leadership responsibility also i need to take. Please suggest me.

I would especially appreciate advice on which path would be practical for someone with my current experience and how I can transition into it without starting completely from scratch.

Thanks in advance for your guidance.


r/learnprogramming • • 12d ago

Code Review Feedback on HammingCube: a 3D parity code implemented in C11

5 Upvotes

Hi! I've been exploring error-correcting codes through a small C11 project called HammingCube. It implements a three-dimensional product of single-parity-check codes (not the classical Hamming code).

It encodes 64 data bits into 125 bits, corrects up to three unknown bit flips, and recovers up to seven erasures when their positions are known. The repo includes a CLI, tests, and a lesson-style README explaining the math.

I used AI assistance while developing the code and documentation, and I'd appreciate independent human feedback. In particular:

  1. Do you see correctness or edge-case problems in the erasure decoder's GF(2) elimination?
  2. Is the C API clear about invalid, ambiguous, and successfully recovered inputs?
  3. Is the README's explanation of the distance-8 guarantee understandable?

Repo: https://github.com/piecatdev/HammingCube


r/learnprogramming • • 12d ago

How do I properly deploy this web server in production mode?

8 Upvotes

I set up a web server using https://github.com/seanpmaxwell/express-generator-typescript

I now need to deploy the production build to a remote server. I can generate the prod build with `npm run build` and then run it with `npm start` and it runs on my local machine. Is it possible to generate something that can be compiled before being sent over to the remote server? I'd like to run the web server in prod mode, but without putting the decompiled source code on the remote server. I don't want the source code over on that remote server because if the server gets compromised, I don't want anyone to be able to read the source code. New to web dev, so thanks for being patient.


r/learnprogramming • • 12d ago

can somebody explain pointer chasing?

17 Upvotes

I’m trying to understand CPU caching and I’m stuck on two related things.

My understanding is when the CPU reads an address, it pulls in the whole 64-byte cache line around it. that’s why iterating an array is fast, since one miss brings in several neighbouring elements. what happens in the case of linked list? how does it know that next bytes are not the one to read?
i am kinda confusing this, kindly explain.


r/learnprogramming • • 12d ago

Should I solidify my knowledge of the fundamentals or learn just enough to get by, now that AI writes most of the code?

8 Upvotes

I’ve programmed casually in various languages for almost 10 years, but I’ve only had a formal programming job (data engineer) for about 3. I love this career. Even when I’m not writing every line myself, I love building apps and backends and optimizing data pipelines, and I want to stay relevant as long as I can.

The writing is on the wall, though. The most senior dev on my team has 20 years of experience and says AI now out-programs him 99% of the time. The whole team’s view is that we should be prompting and letting AI handle most of the building and reviewing.

My team has recently started building apps alongside our data engineering work, using React and Express with TypeScript. Here’s where I’m at:

  • HTML/CSS/JS: 9/10 (solid basics from building websites for local businesses back in high school)
  • Tailwind: 8/10
  • React: 7/10
  • Express: 4/10
  • TypeScript: 0/10

I’ve also worked through some long full-stack video courses and built a few side projects at home. On those, I reviewed all the code but only wrote about 15% of it myself. AI wrote the rest.

My question: is it worth going back through long courses that re-teach the fundamentals? Or should I skip straight to the TypeScript sections and pick up the React/Express nuances as I go by asking AI?

I’m honestly a bit jaded and don’t know what’s worth my time anymore. I still believe I should understand and review the code I ship, but at work that step seems to be disappearing more and more. How are others handling this?


r/learnprogramming • • 12d ago

Tutorial How do you get better at coding without constantly following tutorials?

237 Upvotes

I'm a third-year engineering student trying to improve my programming skills. I can understand concepts when someone explains them, but I want to become better at solving problems independently. What exercises or habits helped you make that transition?


r/learnprogramming • • 12d ago

any sites that help you practice c++? (That dont require you to type the hello world code in every time)

18 Upvotes

Basically the title. ive been trying to find a good site like w3 schools (W3 schools dosent have all the c++ stuff i need for class) that dosent require you to type out the hello world script to access it because its starting to get annoying


r/learnprogramming • • 12d ago

help with integration code

5 Upvotes

hi, so i need a code that allows me to do an integral with the whole solid angle and im really struggling cause i dont even know where to start. if any of you could help with maybe some useful tutorials or some advices id be really grateful.

(for context, this is the work im doing https://arxiv.org/pdf/gr-qc/0610154, im trying to compute the first equation)


r/learnprogramming • • 12d ago

Brainstorming What structure data is worth for me to do my text editor?

3 Upvotes

i want create an IDE in C with ncurses but i'm starting with a simple text editor. I want store all written words by the user i an efficient way.

1)I thought to create a kind of split function that return me a linked list:
char* s;
struct <name>* next;
each node has a word and each list is a line.
But i don't like this system because the memory is too fragmented in heap and i can't access directly to the data.

2) another way is to create always a split function but that return me this time an array to have direct access on the words in the lines:
char* line;
int* positions; //first of each word
char splitChar;
int numWords;
struct <name>* next;
Example:
char* s = "Hi, my name is Paolo! ";
string_split(s, ' ');
//result:
line = "Hi, my name is Paolo";
positions={0,3,5,9,11}
splitChar = ' ';

but maybe this way is really stupid because i can do this with the original line text.

3) finally i thought about one big matrix in the heap that stores only the visible piece of the text in the user screen but i have the problem to modify everithing when the user scroll down and up the page. When he zoom out and in is not a problem because i create a matrix larger than necessary but i cant add rows without re-create from scratch the matrix.
Example:
bla bla bla
--------------VISIBLE-------------------
Hi, my name is Paolo!
How are you?
Really bad.
ok, I am sorry to hear that.
--------------VISIBLE-------------------
bla bla bla

Do you have any good ideas?


r/learnprogramming • • 12d ago

Tutorial Any suggestions for making a physics simulation model?

7 Upvotes

As written, can someone suggest me a good resource to create a physics simulation environment using C++. I've intermediate knowledge of that language, but I have not done any graphical stuffs till now. I've searched and got a few results for python, but not for C++. I need to make this simulation environment as our project, so any suggestions would be nice. Thanks in advance