|
Agile Code for Agile Teams 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.
|
|
|
Software for Good: The Maker Movement 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.
|
|
|
Alternative JVM Languages For Java Projects 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.
|
|
|
When Software Smells Bad 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.
|
|
|
How The Cloud Changes Software Production 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.
|
|
|
Measure the Measurable: Improving Software Quality Through Telemetry 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.
|
|
|
An Introduction to Scala 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.
|
|
|
Copeland on Weinberg Lee Copeland and Jerry Weinberg have crossed paths—both on page and in person—many times over the years. Here, Lee reflects on some of those meetings and their valuable lessons.
|
|
|
License to Open Source 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.
|
|
|
Slicing Requirements for Agile Success 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.
|
|