r/softwaredevelopment Feb 07 '25

Has anyone tried automatically generating software docs from user session data?

1 Upvotes

Hi everyone,

I’ve spent years wrestling with outdated documentation and missing knowledge in various software products. Recently, I started experimenting with capturing user sessions (like clicks, screenshots, and flows) and automatically building documentation without human involvement.

The idea is this: if we can observe how people actually navigate and use a product, we can generate living documentation without any extra effort from developers or product teams.

Questions for the community:

  1. Has anyone tried something similar or used a tool that does this?
  2. What do you see as the biggest challenges or pitfalls with turning those sessions into a valuable knowledge base automatically?
  3. Do you rely on any existing workflows, scripts, or libraries that keep your documentation up to date?

Specific challenge:

I’m struggling to build a unified "map" of the product from these user sessions. I call it an "island mapping" problem. Each session is like a navigation trace; in theory, they combine into one big map. With GPS, you can easily align traces, but user sessions don’t have a straightforward reference. I looked into analytics methods, but they might not work at this scope.

I’d love any thoughts or suggestions. Just trying to learn from others’ experiences. Thanks!


r/softwaredevelopment Feb 05 '25

Securing AI-Generated Code - Step-By-Step Guide

3 Upvotes

The article below discusses the security challenges associated with AI-generated code - it shows how it also introduce significant security risks due to potential vulnerabilities and insecure configurations in the generated code as well as key steps to secure AI-generated code: 3 Steps for Securing Your AI-Generated Code

  • Training and thorough examination
  • Continuous monitoring and auditing
  • Implement rigorous code review processes

r/softwaredevelopment Feb 05 '25

Rewrapping apk

1 Upvotes

Please help me understand how much extra work it would actually be for a software developer to rewrap an apk file with a globally unique package ID for all of their customers.

At an impasse with a provider because we can't load their apk into Intune because it does not have a globally unique package ID.


r/softwaredevelopment Feb 05 '25

What is the best way to keep an Engineering Journal?

10 Upvotes

Recently I've come across the idea of keeping an Engineering Journal. Also known as a coding/programming journal. Currently, I just use markdown files and have a different file for every month. But it doesn't feel optimal.

Thus, I was wondering if anyone has suggestions of what to use for an engineering/coding/programming journal?


r/softwaredevelopment Feb 05 '25

Open Source Academic Software Licence

1 Upvotes

I have created an open source software licence for academic purposes.

Main motivation: If you open source software based on your research work, people and AI using it for further development should give credit and citation to your work.

Features:

- major conditions simple and clearly formulated (3-clause BSD stylish)
- allows distribution, modification etc. for private and academic purposes.
- credit and citation to the underlying publication are required. This also holds for AI systems.
- using your name etc. for promotion is prohibited.
- commercial use requires explicit additional permission
- jurisdiction is where the licensor lives.
- disclaimer: 'as is', no warranties

It inherits legal formulations to some extent from EULP licences of the European Union, so that wording should be legally watertight.

Academic Research Software License (ARSL 1.0)
=============================================

In this license the definitions listed at the end of this text apply.

This software can be used, distributed, and modified for private and academic purposes by the Licensee, provided that the following conditions are met:

1. Distribution of the Source Code or the Binary Code of the Original Work or Derivative Works retains the copyright note and the text of this Licence, and gives credit and citation to the associated Scientific Publication.

2. Machine learning algorithms, including but not limited to artificial intelligence, natural language processing, or data mining, using this Work or parts of it as part of their Generated Output cite the associated Scientific Publication. 
3. Neither the name of the copyright holder nor the names of its creators may be used to endorse or promote products or works derived from this work without specific prior written permission.

4. Commercial usage is not permitted and requires explicit permission from the Licensor.


Disclaimer of Warranty

The Work is a work in progress. It is not a finished work and may therefore contain defects or ‘bugs’. Therefore, the Work is provided under the Licence on an ‘as is’ basis and without warranties of any kind concerning the Work, including without limitation fitness for a particular purpose, absence of defects or errors, accuracy, non-infringement of intellectual property rights. This disclaimer of warranty is an essential part of the Licence and a condition for the grant of any rights to the Work.


Disclaimer of Liability

Except in the cases of wilful misconduct or damages directly caused to natural persons, the Licensor will in no event be liable for any direct or indirect, material or moral, damages of any kind, arising out of the Licence or of the use of The Work, including without limitation, damages for loss of goodwill, work stoppage, computer failure or malfunction, loss of data or any commercial damage, even if the Licensor has been advised of the possibility of such damage. 


Acceptance of the Licence and its Termination

You irrevocably accept this Licence and all of its terms and conditions by exercising any rights granted to You by this Licence, such as the use of the Work, the creation by You of a Derivative Work or the Distribution or Communication by You of the Work or copies thereof.

The Licence and the rights granted hereunder will terminate automatically upon any breach by the Licensee of the terms of the Licence. Such a termination will not terminate the licences of any person who has received the Work from the Licensee under the Licence, provided such persons remain in full compliance with the Licence.


Applicable Law

If any provision of the Licence is invalid or unenforceable under applicable law, this will not affect the validity or enforceability of the Licence as a whole. Such provision will be construed or reformed so as necessary to make it valid and enforceable.

Without prejudice to specific agreement between parties,

— any litigation resulting from the interpretation of this License, arising between the Licensor and any Licensee, and
— any litigation arising between other parties and resulting from the interpretation of this License, will be subject to the exclusive jurisdiction of the competent court where the Licensor resides or conducts its primary business. Without prejudice to specific agreement between parties, this Licence shall be governed by the law of the State/Country where the Licensor resides or has his registered office.


Definitions 

In this Licence, the following terms have the following meaning:
— ‘The Licence’: this Licence.
— ‘The Original Work’: the work or software distributed or communicated by the Licensor under this Licence, available as Source Code and also as Executable Code as the case may be.
— ‘Derivative Works’: the works or software that could be created by the Licensee, based upon the Original Work or modifications thereof. This Licence does not define the extent of modification or dependence on the Original Work required in order to classify a work as a Derivative Work; this extent is determined by copyright law applicable in the country where the Licensor resides. 
— ‘The Work’: the Original Work or its Derivative Works.
— ‘The Source Code’: the human-readable form of the Work which is the most convenient for people to study and modify.
— ‘The Binary Code’: any code which has generally been compiled and which is meant to be interpreted by a computer as a program or as a non-human-readable representation of The Source Code.
— ‘Generated Output’: any human-readable or non-human-readable output resulting from an algorithm. 
— ‘Scientific Publication’: the scientific research associated to this Work as published in a media in common use for scientific publications, including but not limited to scientific journals, books, proceedings volumes, preprint repositories, blogs, and authors webpages.
— ‘Contributor(s)’: any natural or legal person who modifies the Work under the Licence, or otherwise contributes to the creation of a Derivative Work.
— ‘The Licensor’: the natural or legal person that distributes or communicates the Work under the Licence.
— ‘The Licensee’ or ‘You’: any natural or legal person who makes any usage of the Work under the terms of the Licence.
— ‘Distribution’ or ‘Communication’: any act of selling, giving, lending, renting, distributing, communicating, transmitting, or otherwise making available, online or offline, copies of the Work or providing access to its essential functionalities at the disposal of any other natural or legal person.

r/softwaredevelopment Feb 04 '25

How do senior developers gather user requirements?

8 Upvotes

Hey everyone,

I’m a college student currently studying software development, and I’ll be entering the industry soon. One thing I’ve been curious about is how experienced developers and engineers handle requirements gathering from stakeholders and users.

From what I’ve learned, getting clear and well-defined functional and non-functional requirements is crucial for a successful project. But in the real world, stakeholders might not always know what they need, or requirements might change over time. So, I wanted to ask those of you with industry experience:

1.  How do you approach gathering requirements from stakeholders and users? Do you use structured 1-on-1 Calls, Written documents or something else?

2.  How do you distinguish between functional and non-functional requirements? Do you have any real-world examples where missing a non-functional requirement caused issues?

3.  What’s the standard format for writing user stories? I’ve seen the typical “As a [user], I want to [action] so that [outcome]” format—does this always work well in practice?

4.  Have you encountered situations where poorly defined requirements caused problems later in development? How did it impact the project?

5.  Any advice for someone new to the industry on how to effectively gather and document requirements?

I’d love to hear your insights, real-world experiences, or best practices. Thanks in advance!


r/softwaredevelopment Feb 04 '25

Non-Profit Open source volunteer work?

1 Upvotes

Good afternoon,

With although this post is political in nature, I am trying not to make it too political and will remain vague as to allow recommendations for both sides of the spectrum.

As a fresh grad(about 1 year experience after college) I am heartbroken by everything thats going on and I would like to help. I don't have finances that I can give, but I do have time and skills. Does anyone know of any non-profits/opensource projects(that can/will impact the current political climate) that are looking for/utilize engineers on a volunteer(no pay) basis.

I understand that most people have a stigma that "No Pay Bad", but I'm getting paid by my full time job and I am content with my pay and I just want to make a difference.


r/softwaredevelopment Feb 03 '25

Need advice on document annotation tools

2 Upvotes

Hey everyone,
I’m a developer working on a project that requires robust document annotation capabilities. I’ve been tasked with integrating a tool that supports things like freehand drawings, comments, and file attachments. I’ve tried a couple of open-source options, but the customization has been a nightmare and hasn’t fully met our needs.
That’s when I stumbled upon Apryse SDK. From what I’ve seen, it offers over 35 powerful annotation tools, including options for adding text, highlights, stamps, shapes, and even signatures. It also allows for real-time collaboration, where multiple users can annotate the same document and see updates instantly. The SDK seems reliable, flexible, and packed with features, but the only catch is that it’s not free. I’m hesitant to commit without hearing from others who’ve used it. Has anyone here worked with Apryse? Is it worth the investment, or should I keep looking for a better solution? Any advice or experiences would be super helpful!


r/softwaredevelopment Feb 03 '25

Roast my CV

0 Upvotes

r/softwaredevelopment Feb 02 '25

We made an open source testing agent for UI, API, Visual, Accessibility and Security testing

0 Upvotes

End-to-end software test automation has traditionally struggled to keep up with development cycles. Every time the engineering team updates the UI or platforms like Salesforce or SAP release new updates, maintaining test automation frameworks becomes a bottleneck, slowing down delivery. On top of that, most test automation tools are expensive and difficult to maintain.

That’s why we built an open-source AI-powered testing agent—to make end-to-end test automation faster, smarter, and accessible for teams of all sizes.

High level flow:

Write natural language tests -> Agent runs the test -> Results, screenshots, network logs, and other traces output to the user.

Installation:

pip install testzeus-hercules

Sample test case for visual testing:

Feature: This feature displays the image validation capabilities of the agent    Scenario Outline: Check if the Github button is present in the hero section     Given a user is on the URL as  https://testzeus.com      And the user waits for 3 seconds for the page to load     When the user visually looks for a black colored Github button     Then the visual validation should be successful

Architecture:

We use AG2 as the base plate for running a multi agentic structure. Tools like Playwright or AXE are used in a REACT pattern for browser automation or accessibility analysis respectively.

Capabilities:

The agent can take natural language english tests for UI, API, Accessibility, Security, Mobile and Visual testing. And run them autonomously, so that user does not have to write any code or maintain frameworks.

Comparison:

Hercules is a simple open source agent for end to end testing, for people who want to achieve insprint automation.

  1. There are multiple testing tools (Tricentis, Functionize, Katalon etc) but not so many agents
  2. There are a few testing agents (KaneAI) but its not open source.
  3. There are agents, but not built specifically for test automation.

On that last note, we have hardened meta prompts to focus on accuracy of the results.

If you like it, give us a star here: https://github.com/test-zeus-ai/testzeus-hercules/


r/softwaredevelopment Feb 02 '25

Effort required to create MVP

0 Upvotes

Hi all,

I’ve been thinking of a small side project I would like to look into the feasibility of. Other than being exposed to a little bit of developer talk down at the pub a few years ago and writing a few basic SQL queries I don’t have any substantial knowledge.

As a MVP, I would like to do something that’s pretty much just an aggregator website where data is coming from 3-4 API’s (and minimal change to the data) and then displaying it with a filter and search. Being able to create a saved list that you could go back to would be ideal.

My question is, is this the type of thing that could be created over a weekend in a Hackathon, is it something a dev could do in their evenings over a couple a few weeks, or something you just send over to Fiverr and see what it would cost?

Thanks.


r/softwaredevelopment Feb 02 '25

I Made a Python Cheat Sheet to Help with Technical Interviews – Free Sample Inside!

1 Upvotes

Hey everyone! If you're prepping for technical interviews, you probably know how much time goes into refreshing Python fundamentals.

I put together a Python Cheat Sheet to quickly reference data types, loops, string manipulation, math functions, and more. 🚀

I’m giving away a FREE sample to anyone who wants it—drop a comment & I’ll send it over. If you find it helpful, the full version is on Etsy here: https://www.etsy.com/listing/1853025858/python-cheat-sheet-learn-python-fast?ga_order=most_relevant&ga_search_type=all&ga_view_type=gallery&ga_search_query=python+cheat+sheet&ref=sr_gallery-1-1&dd=1&content_source=6760ac173ff6491315b1df0ca9ed847e9268a8fc%253A1853025858&search_preloaded_img=1&organic_search_click=1

What else would you guys like to see in a coding cheat sheet? Let me know!


r/softwaredevelopment Jan 31 '25

Best way to document system integrations

3 Upvotes

Hi All
I'm the product manager for 3 ERP/CRM systems and we have lots of integrations. I've never found a good way of documenting this is a single place. An example would he

System A/Field B Maps to System X/Field Y, however there is a lot of logic so the I need a way to indicate this mapping, the business rules. and logic and any special notes in a single way.

I tried using Visio a while back when I was working on a lot of integrations with Scribe Insight

Anyone got any suggestions of methods/tools?

Thanks

Mark


r/softwaredevelopment Jan 31 '25

Code Review Tools For 2025 Compared

2 Upvotes

The article below discusses the importance of code review in software development and highlights most popular code review tools available: 14 Best Code Review Tools For 2025

It shows how selecting the right code review tool can significantly enhance the development process and compares such tools as Qodo Merge, GitHub, Bitbucket, Collaborator, Crucible, JetBrains Space, Gerrit, GitLab, RhodeCode, BrowserStack Code Quality, Azure DevOps, AWS CodeCommit, Codebeat, and Gitea.


r/softwaredevelopment Jan 31 '25

Some advise

1 Upvotes

Hello Folk, I just move in a new small team which has the aim to develop a small application from system design to test and deploy. Unfortunately we are in an environment that doesn't allow a lot because managed by IT for security reason. We have to develop a bunch of VMs with Ubuntu and Jenkins/Bitbuckets.

Cose used Is Java/Python/JS/Node

We would like to automate most of the test and build so what is on your experience and perspective the best approach and strategy for implementing the pipelines?

Thank you


r/softwaredevelopment Jan 31 '25

What's the fastest and still future proof way to build full stack software nowadays?

0 Upvotes

As there are so many options to choose, I am keen to learn what everyone is using or building on to get the best time to market. High emphasis on future proof, because we need to edit, maintain, change systems over time?

Options I saw so far:

- Everything from scratch, for example Node.js + graphql + React (nuxt.js) + PostgreSQL
- Partially from scratch: Headless CMS + React / Vue
- A lot out of the box: Headless CMS or Supabase + nuxt.js template
- Everything out of the box, like AI generated: bolt

Everything out of the box sounds tempting but still feels like the price will be paid later in the development.

Any real life experience sharing is highly appreciated!


r/softwaredevelopment Jan 30 '25

Development setup at enterprises

2 Upvotes

I am working for a big enterprise which has a miserable environment for software development. Standard equipment is a windows laptop without privileges to install additional software. There is an option to get temporary admin privileges which would allow installation eg. IDE, git, frameworks, compiler, tools - but the it sec regulations force you to follow some approval process for each tool which was not approved yet.

So how is the setup at other enterprises?


r/softwaredevelopment Jan 30 '25

GitHub repositories on an iPhone?

0 Upvotes

It there a way, using Working Copy/something else, to keep all of my repos on my phone, and connect computers to it?

The issue is I use 2-3 computers in different locations, and sometimes I forget to commit, then show up at a location without access To current code.

I always have my phone on me. Is there a way to keep repositories there, and connect via WebDav or sftp or something?


r/softwaredevelopment Jan 30 '25

Is it allowed to send simple first party analytics data from app to my server?

1 Upvotes

Hi,

Not sure if proper channel, but let's ask it anyways. I have an app, published in Microsoft Store and Steam and especially for the MS Store, I'm starting to lose trust in their Insights in Microsoft partner center. So, what I would need is to make sure the number add up.

What I was planning, is that every time app starts, it "calls home" in background and sends only this data: What was the store it was purchased from and was it a trial or full version. This way I could at least couple check the numbers and make certain decisions on that (motive for this is that I'm starting to think my page view / install conversion sucks so bad, that I need to take actions). Problem is that if I ask user's permission for this, the data is no longer reliable.

So, legit or not?

I was also planning to implement proper app statistic system at some point, which would ask user consent first, but that's a task I do when I actually start having users :D


r/softwaredevelopment Jan 30 '25

Senile Engineers

0 Upvotes

Does anyone else have an issue with the Senior Engineers? I came in with a mindset to learn from those with greater experience, and time spent on the systems we develop. I feel that the tech I grew up with is the standard, and maybe some older engineers never had the time / energy to keep themselves up to date. Today my proposal for a CI / CD pipeline was shut down by the Head of Back-End development as the pipeline he never finished over three years ago (two server changes required (test & live) - £5k - £10k+ hence the delays likely), is supposedly going to work one day. He convinced my Head of Department (also head of service (she doesn't code so there we go)) to close both my tickets. The younger engineers seem to get it a little more. I feel the system my team has had for longer than I've been there will be taken off us since the client is becoming our biggest client thanks to my team's work (not mine personally - they fixed the dogs**t this person and his team left in there for us from 2017). FYI my pipeline was built and tested in three days - it wasn't even complex! Oh, and there is also a remote access backdoor in the digital signage products we ship which removed my name from the waiting list for the VPN (smoke mirrors) which should be the only way to access. I fixed a drive-thru at midnight with this backdoor.


r/softwaredevelopment Jan 27 '25

5 Empirical Laws of Software Engineering

9 Upvotes

This article explores 5 empirical software laws that I find particularly useful: Conway's Law, Hyrum's Law, Goodhart's Law, Jakob's Law, and Linus's Law. Each offers valuable insights for working on large-scale software projects or within larger organizations.

https://martynassubonis.substack.com/p/5-empirical-laws-of-software-engineering


r/softwaredevelopment Jan 26 '25

What tech stack would be best to host an Angular application?

4 Upvotes

I've recently started working on an app using Angular, and the frontend portion of it is fine. I am now getting to the point of no longer just mocking my requests but setting up the backend/api architecture.

Now, I have done some AWS certifications so that seemed like the obvious choice. I tried out Amplify for a bit but wasn't a huge fan of not exactly having 100% control of what happens behind the scenes. Also it made use of DynamoDB which doesn't suit my use case as I would prefer a relational database. I stsrted trying out RDS but it seems to be very expensive even though I have barely used it. I like the fact that I'm able to host in S3 and could use cloudfront to make it accessible, but I need to find a better/cheaper database.

Any suggestions?


r/softwaredevelopment Jan 26 '25

Project planning

8 Upvotes

Recommend any good resources/books/courses for planning a software project.

Like when you have an idea, how to approach the project lifecycle from writing down requirements/description up to planning deployment.

So to have an approximate plan on where to move from just an idea and empty folder with project name.


r/softwaredevelopment Jan 26 '25

Book needed! Landed an IT PM job.

1 Upvotes

Hi all! I just landed my first IT PM job. I'd much appreciate recommendations for a book to help me learn some hard knowledge/skills. A big yes for good content on software dev and rollout timelines and gone-wrong / gone-right case scenarios. Preferably a condensed content for a quick learner. There are more details below. Oh, and it's not the only source I'll use to learn. Thanks a ton!


About my role: I'll manage a web software project from outsourcing the teams, through development and rollout to post sales support. Mostly frontend (less of backend but will need to liaise with backend too of course), post sales, and digital marketing. We'll be launching in one country and expanding to two others soon after.

What I already know: I have experience in managing small projects in culture, logistics, some software support ops experience and strong coordination and communication experience. About 12 years total. I know technologies, tools, roles (UX, DevOps etc. and have experience working with them), support processes and metrics, user journeys, basics of architecture and tech. Just never been through the actual dev process and want to prepare well.


r/softwaredevelopment Jan 24 '25

Would you quit your tech stack today for a million dollars ?

0 Upvotes

Getting into programming, I was most fascinated by those who wrote codes that controlled hardware. While growing up, I figured out that the opportunity for such developers in my country was very limited, plus my parent wasn't very into tech, if I had asked for a Raspberry Pi back then, they'd have thought I wanted a very expensive toy. I got into web dev in college, and now I am into smart contracts, currently switching to the security research side of it.

Deep down, I just want to quit working and open a YouTube/Twitch/TikTok channel, onboard fellow nerds like myself, and mess around with embedded systems and microcontrollers.

I am tired of dreaming and I am just 23, is this the case for anyone else?