What makes a team agile? Is it in the way it plans projects or how it engineers its products? In this article, Steve Berczuk explains how agile code and technical practices can help a team stay agile across the product lifecycle.
Communities are sprouting up all over the world to provide an outlet for those who want to create new things and hack existing ones. In this article, Jonathan Speicher writes about one such group, HackPittsburgh, some of the projects he’s worked on, and the value the maker movement brings to those who work in the software industry.
Java Virtual Machine has become a successful platform for applications written in many languages, not just Java. Alternatives like JRuby, Scala, Clojure, and Groovy can be more concise and offer new ways to approach problems.
Most software needs to be "maintainable" and have high "internal quality." But what does that mean in practical terms? Code smells form a vocabulary for discussing code quality and how well suited code might be to change. The smells also provide good indications as to what to refactor and how.
Creating services in the cloud enables new capabilities and features to improve your product and empower your team. But the cloud also introduces challenges as to how to build and test such services. This introduction to the cloud shows how you can leverage this powerful technology and addresses how the cloud affects software development, testing, and the team.
Observing customers in a usability lab can be invaluable for improving product design. But, once your software leaves the lab, do you know what your customers are actually doing and whether or not your software meets their expectations? Learn how engineers on the Microsoft Office team apply a variety of software telemetry techniques to understand real-world usage, how the results drive product improvements, and how you can apply similar techniques.
Scala is a programming language that blends functional and object-oriented language features. Scala programs run on the Java Virtual Machine and can easily interact with Java code. Learn how Scala can yield concise, safe, and compatible code and how you can start learning Scala on your own.
Open source is widespread and growing in many software development organizations. While there's no purchase cost, the code does come with license obligations. Understanding open source from an intellectual property perspective can help avoid downstream legal.
Agile teams need to analyze product requirements in enough detail to build, test, and deliver the right requirements in short time frames. For the many teams that struggle to define "just enough, just in time” requirements, here's help.