Software Development Linkopedia April 2024

Here is our monthly selection of knowledge on programming, software testing and project management. This month you will find some interesting information and opinions about the habits of great software engineers, trunk-based development, AI testing, documentation culture, test automation, software testing with AWS.

Software Development Linkopedia April 2024

Text: Habits of great software engineers The role of a software developer often gets distilled down to a singular activity: coding. While coding is undeniably the heartbeat of the profession, defining a developer by this act alone is akin to defining a painter by their ability to mix colors. It’s a crucial part but just the tip of the iceberg. The true essence of a software developer’s role combines many different skills, mindsets, and disciplines. Imagine a world where every software developer is just a coder. In such a world, code might get written, but would it solve any problems? Would the code be even useful or just an implementation of something fancy? The difference between a developer and a great developer is the breadth and depth of their approach in delivering value.

Text: Why I Prefer Trunk-Based Development As someone who has been involved in web development for years, I’ve had my fair share of experiences with different branching strategies. Over time, I’ve grown to prefer trunk-based development (TBD) for its simplicity and alignment with continuous deployment, especially when compared to the more traditional Git Flow model.

Text: When Software Testing Gets Creative: Evaluating Generative AI Picture this: you’ve always tested software by checking if it does exactly what you designed it to. Now, imagine working with an AI that writes poems, designs images, or even codes on its own. How do you know if it’s doing a good job? That’s the fascinating challenge of generative AI testing.

Text: Motivating developers to care about documentation “Documentation” can mean different things, so let’s start by defining what documentation is not. To do that, I’d like to dispel what I call the myths of documentation: “Documentation is bureaucracy,” “Documentation is a nice-to-have,” and “Documentation takes too much time.” All of these are myths. When done well, documentation helps the team move faster with less rework – it’s not a nice to have. And if it takes too much time it’s because the process isn’t set up right.

Text: Make Your Test Automation Better With Tags Are you running your entire automated test suite all the time? Using tags will speed things up by deciding which tests to run only when you need them.

Text: NoSQL Databases and Node.js In recent years, non-relational DBMSs have reemerged with proponents’ claiming advantages in scalability and simplicity. Many of these DBMSs now exist targeted towards a variety of usage scenarios. They are popularly referred to as NoSQL databases.

Text: Agile Project Management Techniques in Oracle Database Environments In the rapidly evolving world of software development and database management, agility is not just a buzzword; it’s a strategic imperative. Oracle Database environments are robust, powerful, and capable of handling significant data loads with complex structures.

Text: Streamlining Your Software Testing Process Through AWS Insights The modern software development cycle is increasingly complex, necessitating systems and processes that can adapt and scale swiftly. Companies strive to maintain robust, error-free software solutions by investing in sophisticated software testing methods.

Video: Strategies for Software Project Managers to Say No The software development project manager has been working hard to meet a deadline and then he receives an email from your boss, asking him to take on a new project. He is e at capacity with his time, resources, and focus, but he still feels obliged to say “yes”.

Video: ROI of Using of Containers for Software Development The use of online containers as lightweight virtual software development environments is becoming more prevalent in DevOps across industries. Some of the major vendors such as GitHub have started to propose solutions.

Video: Hidden Gems: Java Tools and Libraries This session is a whirlwind tour of many lesser known, but very interesting, Java tools and libraries. You will have a sneak peek at dozens of tools to improve security, builds, architecture, tests and other areas.

Video: Building an Universal JavaScript App Using NuxtJS Nuxt is a free and open source JavaScript library based on Vue.js, Nitro, and Vite. Nuxt is inspired by Next.js, which is a framework of similar purpose, based on React.js. The framework aims to create performant and production-grade full-stack web apps and websites with confidence.

Video: Agile Cross-Team Collaboration How-Tos This presentation discusses the how-to’s of Agile cross-team collaboration that is the most important factor for successful software and digital product and project development beyond one team.

Video: Keeping the DevOps Pipelines Clean and Simple with Jenkins This session concentrates on the strengths of Jenkins and how they can be leveraged to configure and maintain dozens of projects while still keeping each of the pipelines simple and handy for the daily use of the developers.

Tools: Mock Service Worker (MSW) is an open source API mocking library that allows you to write client-agnostic mocks and reuse them across any frameworks, tools, and environments.

Tools: Open Source JavaScript Code Analysis The quality of the JavaScript code is often verified with the traditional activities of unit and functional testing. There are however tools that allow checking code before or during its execution to assess its quality and its adherence to coding standards using a process called code analysis. This article presents a list of open source tools to perform static and dynamic code analysis on JavaScript programs.