# 10 Thought-Provoking Software Engineering Debates Without Clear Answers
Written on
Chapter 1: The Passionate World of Software Engineering
Software engineers are undeniably a passionate group. While we may overlook many issues, we become incredibly vocal when discussing coding, software architecture, best practices, and everything related to our craft. Even the most reserved coder can find their voice on these subjects, often without holding back.
Given that I have spent a decade in software engineering, I wanted to create a listicle that reflects this milestone. Irony aside, I am genuinely interested to see how many of you have grappled with these topics and whether you have arrived at any definitive conclusions. I'll share my thoughts at the end, so keep reading!
Section 1.1: Git Flow vs. Trunk
By the time you reach your second year in coding, you should ideally have stopped pushing changes directly to the master (or main) branch. If you haven’t, it’s high time to change that! Assuming you’ve adapted, and have worked in environments with multiple engineers—perhaps even across various teams or within a monorepo—you’ve likely engaged in discussions about this topic.
There are numerous advocates for Git Flow, just as there are for Trunk. Personally, I've utilized both methodologies; however, I found myself leaning more toward Trunk due to its ease of use. I would like to believe that selecting the appropriate tool for the task at hand would clarify this debate, but I’m not entirely convinced. While I slightly favor Git Flow for monorepos, I've successfully managed a sizable monorepo using Trunk for many years. Git Flow often seems like an unnecessary complication in an already intricate software engineering landscape. Nevertheless, this may heavily depend on your release schedule, leaving me, after a decade, still without a definitive answer.
Subsection 1.1.1: A Male-Dominated Industry?
This is a challenging topic, as it transcends code, paradigms, and tools…
Chapter 2: Exploring Controversial Topics
In this chapter, we delve into more contentious issues in the software engineering realm.
Video Description: Explore the seven things that no programmer ever wants to hear, shedding light on the frustrations and challenges faced by developers in the industry.