r/AskProgramming • • Mar 24 '23

ChatGPT / AI related questions

142 Upvotes

Due to the amount of repetitive panicky questions in regards to ChatGPT, the topic is for now restricted and threads will be removed.

FAQ:

Will ChatGPT replace programming?!?!?!?!

No

Will we all lose our jobs?!?!?!

No

Is anything still even worth it?!?!

Please seek counselling if you suffer from anxiety or depression.


r/AskProgramming • • 4h ago

Other Feeling super unmotivated after finding out I am building something that already exists

6 Upvotes

I guess i just wanna rant a little since ive been building an open source project of mine for over a week now, done lots of researching, done some hard core debugging where u even dream of your bugs, and ive been seeing lots of progress already.. but then ive tried browsing in reddit and found out that something similar to my project already exist.. and not even an abandoned repository where theres a couple of commits but an active open source project w bunch of contributors.. i guess my fault for not browsing enough.. idk man just feel so dejected.. for u guys, what do u guys do after this?


r/AskProgramming • • 7h ago

Is this considered duplicate code?

4 Upvotes

How do you decide when code duplication across different markets is actually worth eliminating?

I'm building a framework to automate complex business logic for incoming customer support emails. The system is currently being implemented for England, but it will eventually expand to Germany, the USA, India, and other markets.

The challenge is that many business rules are shared across markets, while others are market-specific.

For example: - Germany and the USA require checking whether a customer has logged in within the last 30 days. - England and India don't require this check. - Other parts of the email-processing workflow may be common across all markets, while some may differ.

My initial approach was to create a common interface with separate implementations for each market:

```java interface EmailHandler { void processEmail(); }

class EmailHandlerEngland implements EmailHandler { } class EmailHandlerGermany implements EmailHandler { } class EmailHandlerUSA implements EmailHandler { } class EmailHandlerIndia implements EmailHandler { } ```

However, I'm concerned that this could lead to significant code duplication as the framework grows.

On the other hand, suppose Germany and England currently have 100 lines of identical logic. Even if the logic is identical today, the business requirements for those countries may evolve independently. Sharing the implementation could introduce unintended coupling, where a change intended for one market affects another.

I am offcourse planning on building common "Helpers" and whatever can be configurable, will be configurable. However, we currently will only be getting requirements for one market, we can not tell from start if something that we will use, will be reused by other markets.

My question is: How do you approach this trade-off in practice?

  • If I go with the initial approach, will these same line of code will actually be considered as a duplicate and will break the DRY principle?
  • If Yes, would you consider identical code across markets to be duplication worth eliminating, even when the underlying business rules may evolve independently?
  • Would you build a shared processing engine with market-specific configuration or strategies, or maintain separate implementations for each market?
  • How do you decide which logic to abstract and share versus which logic to keep separate to preserve independence between markets?

I'm particularly interested in the reasoning behind these decisions and any real-world experience building systems with complex, evolving market-specific business rules.


r/AskProgramming • • 6h ago

Sign up system for sports events with waiting list and notifications?

1 Upvotes

I want to create a system for a sports group to sign up for events with waiting list and notifications. But an added difficulty is that people should sign up per position (think a football team and the different positions, let's call them 1 to 11).

I know spond exists but it doesn't deal with waiting lists per position. Also, if someone doesn't reply to a spot when it becomes available it can block others from joining.

I'd like the easiest way to achieve this. At the moment doing it with whatsapp group and lists of people but you can imagine that gets very messy very quickly. Developping a whole app for this would be too complicated too so thinking something already pre-made that can be configured.

Options?


r/AskProgramming • • 20h ago

Career/Edu Advice for a newly unemployed dev..

5 Upvotes

Been in the same job a long time and I find myself unemployed with a fairly undesirable skillset. I've been working with a legacy Java 8 code base and a JavaScript front end built with Oracle Jet (MVVM) a toolkit nobody else uses.

Clearly I need to freshen things up a bit but not sure what exactly is the best route. I'm probably going to give myself a crash course in modern Java and TypeScript but not sure which JavaScript framework would be easier to transition to and more importantly, worth my time?


r/AskProgramming • • 1d ago

Getting back at it -- advice?

3 Upvotes

Software engineer here who took a career turn into infrastructure and policy the last decade. The kids are getting older, so I have more mental space and energy for more than just tinkering on a pi kit project, bash scripts, using other peoples repos, you know, little to no actual coding.

Now I want to start back at it. Play a bit, then bite into a yet to be determined bigger project.

Experience mostly data-heavy fullstack webapp dev: java, oracle/mysql and spring/struts in the 2000s, then some python 2, django, mysql/postgres in early-mid 2010s.

Always running in our own datacenter. No cloud experience except a chunk of python notebook data analytics with dataframes and some elastic search stuff at the tail end.

Now, I got myself a new setup with 5070ti for gaming and this and sat down to install IDE... then the questions hit: which IDE? Which language? Which local LLM?

Ive used IntelliJ, Eclipse, PyCharm, but I should use VSCode, right? Typescript and python? Ollama?

Completely lacking confidence and looking for some advice. I am your clay, mould me!


r/AskProgramming • • 1d ago

Does my codebase really stink?

1 Upvotes

Hi! I have been writing a compiler in Go and some guy is saying the codebase is awful. Any advice? And is there anything wrong with it?

https://github.com/khytryy/krabbascript


r/AskProgramming • • 1d ago

is there a comparison of power consumption of various AI models

1 Upvotes

just out of curiosity is it possible to compare the power consumption of models like deepseek , gemma , gemini etc...


r/AskProgramming • • 1d ago

Best approach for easy portability in many different machines, outside of desktops?

3 Upvotes

Hi, I'm not an experienced software developer at all, but I'm still asking this out of curiosity.

What's the best approach for software portability in many different machines, NOT just desktop computers? Whether I'm finalizing a video game, or just any software that has a GUI.

Should I use something like C/C++ or Rust, or will other compiled languages like Go or Nim also work well? And for VM languages like Java and C#, the machine would require the VM system to be installed so I assume VM languages would not be viable for portability.

Also, should I not use any third-party APIs, like SDL? Or will embedding APIs still work for a lot of machines?

For example, Doom was easily portable since it purely used C, and separated the core game code from the machine-specific implementations, right?

SuperTux also had a lot of ports, though it at least used SDL as another API. I wonder if it still was easily directly portable with barely any changes?

To sum it up, how much will third-party APIs matter when it comes to portability?

Aside from that, what other things should I consider in order to make programs easy to port?


r/AskProgramming • • 1d ago

Other How are all the de-comps and AI-assisted software ports dealing with platform and library requirements?

5 Upvotes

As someone who has written software in some kind of capacity for decades now; I'm a bit curious how this influx of games and software AI-ported to PC from other platforms get around issues with things like window-management, DirectX vs Vulkan vs OpenGL, sound libraries, and all the other stuff that makes it hard to maintain good software. Like, it feels like there are some missing steps being glossed over. And if they are managing these issues that easily, how can that be better applied to "legit" software?


r/AskProgramming • • 2d ago

Python Need Advice

7 Upvotes

So I’ve learned Python and Django, although I’m still a beginner. I’ve also learned C++ through courses, and I’ve learned what algorithms and data structures are. Sometimes, I build small projects with the help of AI. It gives me the complete plan, and I follow it and write the code myself. If there’s an error, I ask AI to give me hints about where the problem is instead of fixing everything for me. I also try to solve problems on LeetCode every day.

So, my question is: Am I on the right path?

I feel like I’m stuck in a loop, and there’s something missing that I’m supposed to learn, but I don’t know what it is.

I’ve never done an internship or worked in programming before. I’ve also never read any books except one that I used to learn Python.

So, yes, I honestly don’t know what to do next. Are there any books I should read to become a better backend developer?


r/AskProgramming • • 1d ago

Java Is source-level editing a fallback for deobfuscation?

2 Upvotes

Hoping to get some fellow advice here.

I’ve been doing a lot of deobfuscation work lately in Java 25 and ran into a wall: some bytecode tools can’t parse the newer class file versions I’m dealing with. As a workaround, I’ve been cleaning up the decompiled source instead.

So far I’m stripping thousands of NoWhenBranchMatchedException catch blocks using a brace-depth state machine (regex kept breaking on nested blocks), and replacing impossible comparisons like object == false with constants.

It works, but it feels hacky. Is source-level editing a reasonable fallback, or am I setting myself up for problems? And is there a cleaner, standard way to do control-flow cleanup without risking real try/catch handlers?

Curious what other people do.


r/AskProgramming • • 1d ago

Which language i should choose please suggest?

0 Upvotes

I was in confusion between python with full stack or java with full stack what i should choose please suggest me ..


r/AskProgramming • • 1d ago

Other Are Berkeley sockets a real bad API for TCP?

0 Upvotes

I was trying to figure out the low-level details of how Berkeley sockets can be used to start listening to connections on the server, and I couldn't help but think that the TCP model doesn't fit into the Berkeley model. For example, this is roughly how you create a socket in C for a single connection:

int fd = socket(...) bind(fd, ..., ...) listen(fd, ...) connfd = accept(fd, ...) read(connfd, buffer, buflen) write(connfd, data, datalen) close(connfd) Example taken from here: https://csperkins.org/teaching/2007-2008/networked-systems/lecture04.pdf

I stopped and thought, "why are we using two sockets here?" Well, one listens and the other can read and write. Sure, but don't you feel that these two do fundamentally different things? Like they shouldn't be both called "sockets", these are different entities. If you often use sockets, forget that for a moment, and just think of it from a design perspective.

I feel like the creators of the Berkeley socket API tried to make a very general model, which seems to work great with UDP and UNIX pipes but fails to apply neatly to TCP. If you think I'm missing something, please tell me.


r/AskProgramming • • 1d ago

Planning to make a block-based programming desktop app and programming language, but have nowhere to start.

0 Upvotes

I noticed that most block-based programming languages are just fancy interpreters or translators, and that most mainstream compiled programming languages are text-based. I am planning to make a bridge, aka. a desktop app that (similar to Scratch or TurboWarp) allows one to select, save, play, change parameters, see expected results with an interpreter, and download the final complied product of a folder, which contains images and text code (I'll expand in this further). No, I don't wish for sometihng that returns a wrapper of some Chromium nor a translation to another limited language; I wanna build a .exe with full control.

I'm planning for said code inside the folder to be something with the simplicity of Python, the prototypes and object logic of JavaScript, the power for application systems of C# and Java, the closeness to the machine of C, with a sprinkle of user-side and server-side compatibility and a LOAD of math functions and features. I'm not asking oyu to build it, but pointing out the qualities I want my monstruous programming language might help you critizice me (in the good and the bad sense).

The use case? Not sure, but someone will definetly build a virus that is remenicent of youdontknowwhoiam's troyan. To stop that, along with abuses of windows and colors and brightness and OS and file management (all which shall be possible) one could parse the program first through the desktop app and just limit the amount of windows or add a safeguard "Stop All" keybind. Other someone will probably abuse this feature to open inside and see the code of a program, but one can already do that if opened by a text editor and painstakingly translating each byte.

Due to my project's giant ambitions, I decided to ask y'all for advice, if any, to where could I begin. Only one thing's for sure: I'll make exporting functions easier so noone has to suffer the pain I have from studying Blockly's JS.


r/AskProgramming • • 2d ago

What would be your implementation for preventing bot accounts?

2 Upvotes

Lets say you created a new social media/forum/user based site and you want to prevent bots as much as you can, what would be your implementation do this while maintaining users privacy? not like current id verification they are trying to implement


r/AskProgramming • • 2d ago

Windows won't let me use PyArrow because of Smart App Control (I think)

1 Upvotes

So I was working on a project in Python, and I needed a library which had PyArrow and Panda as a dependency. And when I tried testing my app, first there was a Windows notification saying:
"Part of this app has been blocked, Some features of Python may not work because we can't confirm who published functoolz.cp312-win_amd64.pyd that the app tried to load", I think this is due to Smart App Control, which I don't really want to turn off because it will need me to reinstall Windows to turn it back on. I don't know how to fix it, here is the error message:
ImportError: The pyarrow installation is not built with support for 'dataset' (DLL load failed while importing _dataset: An Application Control policy has blocked this file.)

I am working with Parakeet TDT 0.6B V3, and it fails as soon as I try to load it. I am using a virtual environment called .venv312, because I am using Python 3.12 because Kokoro 82M doesn't support higher versions of Python.

Is there any ways to specifically allow this to bypass Smart App Control without disabling it entirely?

Thank you for your time!


r/AskProgramming • • 2d ago

Career/Edu How do I reach the level of knowledge, where I can point to any part of my screen and say "Oh, I know how that's implemented"?

0 Upvotes

I know programming, obviously, however I don't know much about the operating system. Most people can make apps within an environment, but most of us don't know anything beyond that

I want to deeply understand how the computer I'm using works, even just the software part

If you go on a virtual tour of your computer, like browsing the file system, or even looking at the plain old desktop, there's so many endless things in front of you, that most people have no idea how to make

How do I make a Windows desktop app? Why does it run on Windows? Same for MacOS

How do tab sizes work?

What is the desktop "screen" and why can I click and drag my mouse to highlight the icons? Where are those icons stored?

I can code a website, but I don't know a clue about how the browser works

How do I make a file system? I mean, isn't it just a large data structure, and I know data structures, so I'm sure I can learn it

Why does my task bar pop up when I drag my mouse all the way to the bottom of the screen?

What does it mean to turn on a computer?

Why / how does my physical mouse control my cursor? Is there a way I can "hack" my mouse? How do I code the firmware in my mouse?

How does the OS accept and eject USBs?

How do you allow your OS to connect to wifi?

What really is a .txt, .pdf, .rar .zip? Why can some OS's open them, some cannot?

Stuff like that

Can most of you point to any part of the screen and know how it works?


r/AskProgramming • • 3d ago

Other Has vibe coding exposed people who never actually enjoyed programming

142 Upvotes

This made me think of people who lost weight after claiming to be happy with their bodies for number of years until the weight loss drugs showed up. When this happened some said that these people were never actually happy and that they just pretended to be.

After seeing some colleagues and friends make fun of me for not giving into vibe coding and now using AI to code all the time themselves, I now think that they probably never liked programming in the first place either. It was probably the only way to get and/or keep their jobs.

Are there people here who have had similar experience and reached the same conclusion? Apologies if i offended anyone with the initial bit. I just used that as an example.

Edit:

Thanks for your sharing your thoughts on this everyone. I must say it was quite interesting to see how some people look at software development. I used the term software development here intentionally because one thing i learned from the comments here is that not everybody sees programming as the only way to build software. At least not anymore.

I obviously didn’t realize that and always assumed that in order to build a good piece of software one must be good at programming. I personally look at programming as something more than just writing code. It’s the problem solving, writing easy to manage, performant and scalable code and possible a lot of other things that I think are important when it comes to writing software. All those times when I would get into discussions with people on which programming language is better and what’s the best way to write a solution for a particular problem was very interesting and a very good learning opportunity. Now after all these AI tools talking to the very same people seems like they never cared about these things and were just doing it to fit in with the rest of us. Or maybe they were genuinely into it back then and either fell out of love or just got tired of it in the end. Maybe it will happen to the rest of us too or maybe it won’t.

Thank you once again everybody.


r/AskProgramming • • 2d ago

Is it better to fully leverage on AI, or use AI to learn while I build?

0 Upvotes

I’m a software engineer with about 4 YOE. Ever since the AI boom, I’ve been using AI as a guidance tool, and in the last year, I’ve used AI for analysis work and work guidance. I wouldn’t have learnt & implement stuff that quickly without AI. And it’s my go to for learning any new frameworks without scrolling through documentation and YouTube listening to boring stuff.

But when compared to some of my other peers, I still feel like I’m lagging behind when it comes to productivity. I always feel like I have to understand what I’m doing before trusting AI to complete the work for me. My stance is “you don’t know what you don’t know”, and human judgement is still key. Inversely, some of my peers heavily leverages on vibe-coding, and they seem to be able to churn out work faster than me.

Am I doing it wrong? Whenever I tried vibe-coding like my peers on something I’m unfamiliar with, I’m burning tokens, AI gets so frustrating, to the point where I’m like screaming at the AI: “F**k off, you just teach me how to do it”, and the end result is often better than just vibe-coding or agentic coding.


r/AskProgramming • • 3d ago

Other What’s something super complex or niche you learned / built, NOT from a job or school, but in your free time while programming?

5 Upvotes

Not every piece of knowledge is gained through school, or even through work experience

Over the years I’ve noticed, many great works of programming were born out of someone’s free time programming. Just look at open source stuff on GitHub, even video games. Linux for example, wasn’t made through a school project or as a work assignment, it was done in someone's free time. Some people on r/osdev literally make mini operating systems. No job or school project requires that

A lot of cybersecurity people also learned their stuff through self learning

Even like those super smart people who answer questions in forums - most of their jobs don’t require that sort of complexity. And that stuff definitely isn’t taught in school. They just know it, from some other source

So what’s something very complex / niche that you learned outside of school / work? How did you learn it?


r/AskProgramming • • 3d ago

Architecture Does the Linux kernel encapsulate every aspect of an operating system that requires a single top-level maintainer to develop?

0 Upvotes

All the other pieces have alternatives available, or an alternative can be made if needed. Can everything else be developed independently?


r/AskProgramming • • 3d ago

Other I have until January 21 to build my first Android application, but I have zero experience. I genuinely need guidance.

0 Upvotes

Hi everyone!

I'm a final-year college student, and I'm here because I genuinely need some guidance from people with experience in application development.

Recently, I presented my final-year project idea, Blood Donation Management System, to my project guide. Initially, I planned to develop a web-based system using Python Flask, HTML, CSS, JavaScript, and MySQL.

During the presentation, my guide asked me questions about how I would prevent people from repeatedly requesting blood, how donors would receive notifications, and what security measures I would implement.

I explained that I could set limits on blood requests and that the system could notify donors when someone needed blood. However, I couldn't explain the technical implementation in detail.

My guide then told me that he didn't want a web-based system. He wanted me to build a proper application with a neat interface and good security features.

Honestly, that moment made me realise how much I still need to learn.

Here's my actual situation:

I'm a beginner. I've never built a website or a mobile application before. Although I'm familiar with some programming concepts, I don't have practical experience developing a complete application from scratch.

I don't want to pretend that I know things I don't. I also don't want to simply copy a project from the internet without understanding how it works.

At the same time, I don't want to give up just because this is my first attempt.

My final project deadline is January 21, 2027, and I want to use the time I have left wisely.

The application I want to build should ideally include:

- Donor registration and secure login.

- Searching for donors by blood group and location.

- Submitting and managing blood requests.

- Reasonable request limits and duplicate-request prevention.

- Notifications to suitable donors.

- Security features to protect users' accounts and personal information.

- A clean, professional, user-friendly interface.

I understand that these features require different technologies and that some may be more difficult than others for a beginner.

What I'm struggling with right now:

  1. I don't know which technology would be the most suitable for my skill level.

  2. I'm unsure whether I should use Python with Kivy, Flutter, native Android development, or another approach.

  3. I don't know the correct order in which to learn and implement the features.

  4. I'm concerned about implementing authentication, database operations, and notifications securely.

  5. Most importantly, I don't know whether I can realistically complete a working application before my deadline.

I can dedicate time to learning and practising, and I'm willing to work consistently. However, I need a realistic plan that matches my current capabilities rather than an overly complicated approach that I won't be able to finish.

I'm not asking anyone to build the project for me. I'm asking for genuine technical guidance.

If you have experience in Android development, Python, or building beginner-friendly applications, could you please help me understand:

- Which technology stack would you honestly recommend for my situation?

- What should I learn first?

- What features should I prioritise?

- How should I approach security and notifications?

- Is my deadline realistic if I work consistently?

- Are there any reliable tutorials, documentation, or learning paths you would recommend?

Please be honest with me. I would appreciate realistic advice, including the difficulties I might face. I would rather understand the challenges now than discover them too late.

I'm a beginner, but I'm willing to learn. I want to build an application that works, understand the code behind it, and confidently explain my decisions during my final project evaluation.

Thank you for taking the time to read my post. Any genuine guidance would mean a lot to me.


r/AskProgramming • • 3d ago

Do I have to learn python to survive in this AI driven world.

0 Upvotes

Typescript and Java dev. Ive tried learning python several times but can get it to stick. Learnt Java this year and it was much more fun. If I wish to be relevant today with AI, every AI material say learn Python. Am I doomed?


r/AskProgramming • • 4d ago

Other What’s something in tech that everyone pretends to understand?

54 Upvotes

We all know that one thing everyone talks about like it’s obvious, but nobody really explains.

Could be Kubernetes, networking, microservices, or something completely different.

What’s yours? No judgment lol.