Software Development

Development Stories
Illustrated data sets connecting in an AI system 5 Pitfalls to Avoid When Developing AI ToolsDeveloping a tool that runs on artificial intelligence is mostly about training a machine with data. But you can’t just feed it information and expect AI to wave a magic wand and produce results. The type of data sets you use and how you use them to train the tool are important. Here are five pitfalls to be wary of.
Software engineer looking at her computer monitors and integrating code Code Integration: When Moving Slowly Actually Has More RiskMany decisions about code branching models are made in the name of managing risk, and teams sometimes pick models that make integration harder in the name of safety. Moving slowly and placing barriers to change can seem safer, but agile teams work best when they acknowledge that there is also risk in deferring change.
Chess king left standing with other fallen pieces around it Choosing the Right Threat Modeling MethodologyThreat modeling‍ has transitioned from a theoretical concept into an IT security best practice. Choosing the right methodology is a combination of finding what works for your SDLC maturity and ensuring it results in the desired outputs. Let’s look at four different methodologies and assess their strengths and weaknesses.
Looking at code through eyeglasses Fearless Refactoring, Not Reckless RefactoringFearless refactoring is the agile concept that a developer should be able to incrementally change code without worrying about breaking it. But it's not believing that you don't need a safety net to detect and correct defects quickly when changes are made—that's just reckless. Here's how to avoid reckless refactoring.
Developer typing programming language Comparing XML and JSON: What’s the Difference?XML (Extensible Markup Language) and JSON (JavaScript Object Notation) are the two most common formats for data interchange. Although either can be used to receive data from a web server, there are differences that set them apart. Here are the abilities and support for each option so you can choose what works for you.
Software team working after a big release Strategically Using Slack Time after a ReleaseWhen you've worked for months on a big software release, afterward you may want to jump into the next project. But building in some slack time between sprints is a good idea. After a big release, there will probably be more work as new users discover bugs in your software. Plan for some more testing and development.
Android phone showing apps Google's Android App Bundle Is a Win for Developers and UsersGoogle’s new Android App Bundle is a publishing format that offers a more efficient way for developers to build and release apps. It creates lean application APKs that are optimized for each device configuration, without refactoring. This means engineers need to code less, and users are happy to get a smaller download.
Rocks stacked on the beach Building Levels of Testing in Software DevelopmentQuality is now considered everyone's responsibility, and many developers are acquiring testing skills to validate their code before it gets to dedicated quality engineers. But where should you start? Consider beginning with unit tests that help you write better code, then building to integration tests and E2E testing.