InfoQ Homepage Quality Content on InfoQ
-
Code Reviews in Practice
Code reviews are a great way to find bugs, get input from other team members, and share knowledge and ownership. For maximum benefit, integrate code reviews into your development process to ensure that no code reaches production without being reviewed. Reviews tend to uncover unresolved issues in the development process which you may need to address.
-
Readable Code - Why, How and When You Should Write It
Most people would say they want readable code, and may even prefer readability over functionality. But when it comes down to asking people to define readability, opinions will start to diverge. At Explore DDD 2018 , Laura Savino covered why we want readable code, what it really means to be readable, and when readability absolutely must take priority over other considerations.
-
Getting More Work Done in Fewer Working Hours
When Jason Lengstorf’s body was actively falling apart due of the way he was working, he decided to limit his computer usage and create pockets of high-focus effort. Working fewer hours prevents you from becoming overtired or unfocused. We need to treat downtime with the same level of care as we treat our uptime, using breaks to make creative connections, recharge, and to remember why we work.
-
Sustainable Software with Agile
Sustainable software enables you to deliver changes to the customer more quickly with a lower likelihood of bugs, decrease of the total cost of ownership of applications, and increase business agility. It’s possible to verify the sustainability of software using a combination of automated analysis of source code, expert review of technical artifacts, and comparison with benchmark data.
-
Software Engineering for Creativity, Collaboration, and Inventiveness
A software engineering discipline must be iterative, based on feedback, incremental, experimental, and empirical. Craftsmanship is not sufficient; engineering is an amplifier, it enhances creativity, collaboration, and inventiveness. Continuous delivery is grounded in engineering principles.
-
Oath for Programmers
Our society demands a commitment to professional behavior; we need an oath for programmers as lives and fortunes depend upon the proper construction and execution of software, argues Robert Martin. According to him, this will have to be enforced by membership in an professional association.
-
Tackling Technical Debt at Meetup
Continuous product health can be realized by regularly prioritizing the highest impact technical debt items and knocking those off systemically. You need to continuously iterate how you're tackling technical debt to drive more and more impactful results. Going for maximum impact items first and communicating the impact of paying down technical debt is what Yvette Pasqua, CTO of Meetup, recommends.
-
Adopting Agile and DevOps at Wyndham Vacation Rentals UK
Embedding agile and DevOps had a positive impact on the role of QA at Wyndham; focusing effort in the earlier lifecycle stages has led to smoother releases with fewer bugs and post-production issues. Business colleagues and customers are more involved throughout the delivery cycle, making testing a shared responsibility .
-
Managing Crowdsourced Testing
Crowdsourced testing is a unique way of involving the crowd- meaning the real users/testers- into software testing under real world conditions. It helped Swisscom to find defects very early in the development process and increase the quality of products.
-
Putting Quality Back in Agile with Lean
The agile manifesto and lean practices are very complementary; lean can be a useful addition to a very strong agile process to increase quality. Interviewing real clients or client proxies to deeply understand their pain points and visualizing the process by diving into the handovers between departments helps to uncover problems faster and fix those problems more efficiently for a lower price.
-
Refocusing e-Commerce with Lean
Auchan:Direct, the online grocery delivery service of Auchan France, decided to apply lean to develop a new e-Commerce website. Their CEO was the first customer and they used continuous and fast feedback from their clients on the new experience to improve website quality using continuous delivery.
-
A Crystal Ball to Prioritise Technical Debt in Monoliths or Microservices: Adam Tornhill's Thoughts
At QCon London, Adam Tornhill presented “A Crystal Ball to Prioritise Technical Debt”, and claimed that although the technical debt metaphor has taken the software world with storm, most organizations find it hard to prioritise and repay their technical debt. Key takeaways from the talk included methods to identify ‘hotspots’ of code complexity and churn.
-
Dead Code Must Be Removed
Dead code needs to be found and removed; leaving dead code in is an obstacle to programmer understanding and action, and there's the risk that the code is awakened which can cause significant problems. Deleting dead code is not a technical problem; it is a problem of mindset and culture.
-
The Future of QA at Atlassian
Mark Hrynczak, Cloud QA Manager for Atlassian, gave a talk on this year’s company summit in which he shared his vision of how a high valuable QA team should perform. High value for a QA team is defined as being, in the first place, totally aligned with the company strategic goals ,thus contributing to solve the most important problems that an organization might face at a specific moment.
-
Increase Learning with 10% Autonomy Time
Giving teams autonomy to spend 10% of their time for learning reduces delivery time, increases quality, and increases motivation. The 10% rule gives teams full autonomy to work on things they consider important. It results in freeing up people's creativity and letting teams grow their potential.