-
Architects: The Case for Software Leaders
Last updated: Friday, February 24, 2023
Published in: CODE Magazine: 2023 - March/April
Despite our best efforts, relatively few software development projects are a raging success. Jeffrey talks about the various roles - even non-technical ones - that every project should have if there’s any hope of success.
-
A Good Idea is Just the Start
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2018 - January/February
If you ever thought you’d like to develop the Next Big Thing, you’ll need Q’s advice about how to get started and what to do before you start writing code.
-
The Mythical Business Layer
Last updated: Wednesday, September 1, 2021
Published in: CODE Magazine: 2014 - November/December
Dino explains the business layer so that even a seven-year-old can understand.
-
Manager’s Corner: The Emperor Has No Clothes
Last updated: Monday, January 3, 2022
Published in: CODE Magazine: 2013 - November/December
I’ve been working on a technical assessment of a system for a new client during the last few weeks. As I looked at line after line of the source code they gave me, I saw test-driven design (TDD), inversion of control (IOC), dependency injection (DI), and plenty of other TLAs (three letter acronyms). I saw “convention over configuration.” I saw layer upon layer of abstraction. There was more unit test code than code. Code coverage was very high. Marvelous! I can almost hear some of you salivating.
-
We Are Customer Service!
Last updated: Thursday, December 16, 2021
Published in: CODE Magazine: 2011 - January/February
Rod Paddock editorial Jan/Feb 2011
-
Managed Coder: Yes or No (But Maybe…)
Last updated: Tuesday, December 21, 2021
Published in: CODE Magazine: 2010 - July/August
Writing software is hard, particularly when the schedules keep programmers “nose to the grindstone”; every so often, it’s important to take a breather and look around the world and discover what we can find-ironically, what we find can often help us write software better.Philosophy doesn’t just question the imponderables about the universe; sometimes it shows us the limitations of our own, programming-trained mind, and leaves us to question the approaches we take in building software for the rest of the human race.
-
Jumpstart Your Project Management Skills
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2010 - May/June
Your manager just dropped into your office and said, “We have a very important, new assignment with a limited budget and tight schedule. I am assigning you to be the project manager. Good luck.”Your manager turns and leaves your office. After your heart rate subsides, you start to think about your new assignment. How shall I proceed? What tools will I use? What are my deliverables? One of the most challenging roles in the Information Technology industry is that of Project Manager (PM). PMs are delegated a great deal of responsibility but with often little authority. In this article, you will learn valuable skills and tools that you can apply to become a good project manager and add value to your company.
-
Post Mortem: Tower48 Software Escrow
Last updated: Saturday, January 18, 2020
Published in: CODE Magazine: 2009 - September/October, Markus Egger Talks Tech
-
Successful Software Development
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2009 - March/April
Software development is a lot more than just writing lines of code.You need to think about project management, prototyping, database design, software architecture, framework usage and a whole host of other factors. In this article you will learn one approach to developing software applications from start to finish.This approach has been used successfully to develop hundreds of applications by a software development company that has been around since 1991.
-
MVP Corner: Good Contracts or Good Friends
Last updated: Wednesday, February 20, 2019
Published in: CODE Magazine: 2008 - November/December
Nov/Dec 2008 MVP Corner by Juilia Lerman
-
Speed Up Project Delivery with Repeatability
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2008 - November/December
Automate high-friction, unpredictable tasks in your environment to regain sanity and achieve a rapid, sustainable pace.Every environment has them: The dreaded manual tasks that drain productivity from the team and adds instability to the processes. We usually only dedicate half our brain power and never enough time to deal with them, which only compounds the problem. What if you could easily automate out the most painful tasks and gain a huge boost in productivity and speed of delivery?
-
Introduction to Scrum
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2008 - May/June
Scrum is an agile software development process to manage software projects. Scrum is based on three simple principles: visible progress, constant inspection, and adaptation. With Scrum, teams use an empirical approach to adapt to changing requirements and priorities. Teams using Scrum focus on delivering working software to their customers on a frequent basis.
-
Managing an Agile Software Project
Last updated: Wednesday, February 20, 2019
Published in: CODE Magazine: 2008 - May/June
Everything right or wrong with a software project is management’s fault.Either management staffed the right people or the wrong people. Management was absent or involved. Management is hard, and there are numerous factors that can cause success or failure of a project. In the best situation you have great people who do great work. A software manager can even succeed despite themselves if they happen to staff a top-notch team even though the managers, themselves, might not be very competent. The success that a top-notch team achieves is still the manager’s fault. Failure, however, is harder to blame on the team because a manager must be able to solve problems as they come along. This article will focus on tips and knowledge to use when managing an agile software project.
-
Adaptive Leadership Chapter 3: Deliver a Continuous Flow of Value
Last updated: Tuesday, February 19, 2019
Published in: Book Excerpts, Newsletters
The agile software movement has now been around for a full decade. As coauthor of the original Agile Manifesto, Jim Highsmith has been at its heart since the beginning. He's spent the past decade helping hundreds of organizations transition to agile/lean. When it comes to agile, he's seen it all–in a variety of industries, worldwide. Now, in Adaptive Leadership, he has compiled, updated, and extended his best writings about agile and lean methods for a management audience. Highsmith doesn't just reveal what’s working and what isn't; he offers a powerful new vision for extending agility across the enterprise. Drawing on what's been learned in application development, this guide shows how to use adaptive leadership techniques to transform the way you deliver complete solutions, whatever form they take. You'll learn how enterprise agility can enable the ambitious organizational missions that matter most; how leaders can deliver a continuous stream of value; how to think disruptively about opportunities, and how to respond quickly by creating more adaptive, innovative organizations.
-
Agile Legacy System Analysis and Integration Modeling
Last updated: Thursday, February 21, 2019
Published in: Book Excerpts, Newsletters
Most systems do not exist in isolation, instead they must interact with other systems in some fashion. Furthermore, there is very little "greenfield" development where you build a new system from scratch, instead the vast majority of software development is more along the lines of "brownfield" efforts where you improve upon an existing system(s). When you are building a system you must identify the potential interactions it will have with other existing computing assets, and identify what you will build upon, to reuse those legacy assets effectively. The documentation which describes how to interface to an external system is referred to as a contract model in Agile Modeling. If the contract model(s) exist, and are up-to-date, then you should consider yourself lucky. In many organizations legacy systems are poorly documented, if documented at all, leaving it up to the first team to come along to update the documentation at least to the level at which they require it. This effort is often referred to as "legacy system analysis".
-
Chapter 1: Whole Teams
Last updated: Wednesday, February 20, 2019
Published in: Book Excerpts, Newsletters
When agile teams don’t get immediate results, it’s tempting for them to fall back into old habits that make success even less likely. In Being Agile, Leslie Ekas and Scott Will present eleven powerful techniques for rapidly gaining substantial value from agile, making agile methods stick, and launching a “virtuous circle” of continuous improvement. Drawing on their experience helping more than 100 teams transition to agile, the authors review its key principles, identify corresponding practices, and offer breakthrough approaches for implementing them. Using their techniques, you can break typical waterfall patterns and go beyond merely “doing agile” to actually thinking and being agile.
-
Coaching Agile Teams: A Companion for ScrumMasters, Agile Coaches, and Project Managers in Transition - Chapter 2
Last updated: Wednesday, August 31, 2022
Published in: Book Excerpts
“This book excerpt is from Coaching Agile Teams: A Companion for ScrumMasters, Agile Coaches, and Project Managers in Transition, authored by Lyssa Adkins, published by Pearson/Addison-Wesley Professional, May 2010, ISBN 0321637704, Copyright 2010 Pearson Education Inc. For a full Table of Contents: www.informit.com/title/0321637704”
-
Visual Studio Team Foundation Server 2012: Adopting Agile Software Practices: From Backlog to Continuous Feedback, 3rd Edition - Chapter 2 - Scrum, Agile Practices, and Visual Studio
Last updated: Saturday, January 18, 2020
Published in: Book Excerpts
-
Integrating VFP into VSTS Team Projects
Last updated: Wednesday, August 31, 2022
Published in: CODE Focus Magazine: 2007 - Vol. 4 - Issue 1 - Sedna: Beyond Visual FoxPro 9, VFP Conversion Papers
Whenever more than one person works on a software development project, introducing some process to coordinate the activities of the team members is a priority.The larger the team, the harder it is to manage. To meet this need, Microsoft created Visual Studio Team System (VSTS). VSTS is a state-of-the-art Software Development Life Cycle tool suite that is tightly integrated into Microsoft Visual Studio 2005. VSTS provides deep support for .NET projects; however, whenever a software solution includes components developed on a platform other than .NET, such as Microsoft Visual FoxPro (VFP), VSTS loses some of its value because the projects aren’t integrated into VSTS. Leveraging the extensibility features of VSTS and VFP, this article will help you integrate VFP projects into VSTS team projects enabling your team to apply a comprehensive process to your entire software development effort.
-
Die VSS Die!
Last updated: Wednesday, February 23, 2022
Published in: CODE Magazine: 2004 - September/October
Jonathan Goodyear (the Angry Coder) September/October 2004
-
Make, Buy, or Lease: the Software Acquisition Dilemma
Last updated: Wednesday, February 20, 2019
Published in: VFP Conversion Papers, EPS/CODE Articles & Whitepapers
Over the past several years, a revolution has taken place in software development, fueled by new modeling tools, integrated development environments and visual code assembly.
-
Wiki Technology for Teams
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2002 - July/August
Software development is a collaborative process.This article is the second in a series focused on the tools and techniques developers use to effectively work in concert. This time, we look at a Web-based phenomenon, known generally as wiki, which has the potential to arm your distributed team with a fluid, open and low-noise forum for building and managing project artifacts as well as foster a collective knowledge and project continuity.
-
Introduction to Gathering Requirements and Creating Use Cases
Last updated: Thursday, December 9, 2021
Published in: CODE Magazine: 2001 - Issue 2
Studies indicate that between 40% and 60% of all defects found in software projects can be traced back to errors made while gathering requirements.This is huge! Finding problems while they are just in the planning stages is MUCH easier to deal with than finding them after the code has been written. So, how can developers avoid these errors and create a solid design for their software? This article will describe various methods for gathering software requirements and writing Use Cases - the first two steps in the software development process.
-
Customers vs. Code: The Initial Contact
Last updated: Thursday, December 9, 2021
Published in: CODE Magazine: 2000 - Summer
Or: Everything you wanted to know about customers, but were too busy coding to ask.In the last issue, Nancy and Barbara gave us a brief overview of some customer relationship issues. This time, they take a closer look at the initial contact phase.
-
Customers vs. Code: Customer Relationships
Last updated: Wednesday, December 8, 2021
Published in: CODE Magazine: 2000 - Spring
Customer relationships are an often-overlooked part of what we, as programmers, do. But customers are essential; after all, they're the ones we are creating systems for. We've heard from many programmers that customers are obstructive, stubborn, and computer-illiterate. Have you experienced similar frustrations? Why do projects often seem like battles, rather than cooperative efforts to solve specific problems?
-
6 Tips for Assigning Tasks That Your Testers Will Actually Complete
Last updated: Thursday, February 21, 2019
Published in: Newsletters
One of the most effective ways to obtain feedback from beta testers is to ask them for it in the form of tasks. A task is a specific activity you can assign to your beta testers that they can perform and report back to you on. You can request testers do everything from installing the product, to updating to a newer version of your software, to requesting feedback on a specific product feature/bug.
-
Converting Your Beta Testers into Brand Evangelists
Last updated: Thursday, February 21, 2019
Published in: Newsletters
Brand evangelists can be a powerful force for your product. A brand evangelist is a customer who’s not only a big fan of you and the products you sell, but often makes it their mission to refer or recommend your products to everyone around them.