Large organizations want to be like lean start-ups but they need to rethink how they hire, incentivize and manage their staff to become an agile organization. Organizations should reward teams for making low-risk decisions based on what they can learn quickly and build in the value of learning in addition to delivery. By Ben Linders
“Look what I did!” is one of the favorite statements I like to hear from developers in the teams I work in. Like a parent who hears this utterance from their child sometimes you are amazed and at other times you just say “That’s nice”. You never discourage the kids from trying things out. This includes those kids who just happen to be developers.
Many companies don’t embrace the “Need to Learn” in order to be relevant. This results in me getting calls to help companies replace developers who have left with the explanation “I’m stagnating here, my skills are drying up”.
I didn’t know that “Failure” was a four-letter word. A mistake you learned something from is not a failure. A mistake you repeat and never learn the lesson is the failure.
This interview with Jeff Gothelf, author, coach, workshop leader and public speaker, is about Scaling Lean at Craft 2017.
via Scaling Lean Startup: Principles over Process — InfoQ
Ok, kiddies it’s that time again, the State of Agile, year 11. For all the companies I hear stating “We are doing this NEW thing called Agile” or “We have been doing Agile for the last 15 years”, take a few moments and click on the link and read where Agile is headed.
We have been using JIRA On-Demand or JIRA Cloud for a few years now. It was an easy SaaS decision and helped us get started very quickly. After a while, we realized that most of the cool add-ons for JIRA are only available to the JIRA Server instance. Our web applications have an Issue-Track (Critical-Response) form that users fill out to report a problem or ask for an enhancement. Currently we take these forms and manually transfer them into JIRA. The JIRA licenses are too expensive to give all our customers a JIRA user ID’s. So we designed an integrated JIRA interface into our Issue Track page that talks direct to our JIRA-Cloud Instance. No more copy-paste. One of our government customers has a security rule that only allows API usage to servers with a single IP address. Well, JIRA Cloud instances from Atlassian are actually hosted on Amazon Web Services which uses a pool of IP addresses for better performance which makes sense. For us to get a single IP we will need to migrate our JIRA Cloud instance to a JIRA server instance. We have decided to stay as close to the way Atlassian manages their cloud instances so we will be using AWS as well but, with a single IP address. I will document this journey over time in this Blog, one for some reference documentation and two because I like to share.
Couchbase incorporated Swagger into our documentation a few months ago. “Swagger” refers to an ecosystem of tools and other resources for managing REST APIs. Core to Swagger is the Swagger specification. (The group behind Swagger donated the spec to … more
My business card states my title as “Technology Evangelist”. I learn technology, use it in solutions to the point where I can teach it to others then I preach it. My audience is mostly people who probably think I’m a little crazy. When it comes to REST and API’s the answer I recommend now is using Swagger and its toolset to design, manage and document your valuable API’s. I scream every time I see Word/Excel/Email documents beings used to define API’s in large systems. Using 20th-century tools to manage modern 21st-century processes like API’s doesn’t scale and helps contribute to some of the failures I have seen.
via Managing REST APIs with Swagger (video) — JSFeeds
“Backlog” is one of those SCRUMmy terms used to identify features or functions that have been dreamed up or discussed for an application. You collect these ideas into a list which is called the “Backlog”. Then this list is reviewed (Sprint Review) and the ideas are refined (Groomed) and an estimate of effort (Story Points) is assigned to it. Then folks get together and discuss which ones should be done in the next timeframe (Sprint). To collect these ideas some companies use an issue tracking system or an off the shelf ticket system (Atlassian JIRA) and others just use a spreadsheet… gasp.
Sometimes all you need is a simple web application that all the participants can use to enter any ANY of the ideas that came up. Even things like “The buttons should be colored blue.” I needed a simple project to help me learn some technologies that are new to me. Hence the “Backlogger” was born. The whiteboard above shows the original concept.
Technologies used in Backlogger
- Mongo without the headache, neDB
The design requirements were meant to be simple as possible to make this project something that could be done quickly. They also needed to be flexible to allow for better learning.
- Single Page Application
- Open Source
- No user logins, just a password, we are a big happy family
- Self-contained application, no need for outside services or servers
- Mongo database and Mongo queries
- Allow for a maintainable list of people names who contributed ideas to the backlog
- Allow for a maintainable list of functional areas to help groups the ideas
- One time entry of an idea, no editing,
- The editing of an idea will be done during the grooming
- Filters that help find ideas quickly
- Ability to backup and wipe the database (Mongo Documents)
- Simple report that can be printed directly
GeekMustHave would like to thank Phoenix Learning Labs for the resources and funding to do this project. GeekMustHave would also like to thank the MDHHS-DWIP team for the testing and feedback.
Open source, common components
What does it look like?
Backlogger is an Open Source project available on Github.
I’ve used “Backlogger” in one project so far but others who have seen it have expressed some interest in it. That’s another reason why it’s Open Source.
Depending on the feedback I might do additional updates. Maybe I need a “Backlogger” for the “Backlogger”?
Being brave is about doing what is necessary, even when you are afraid. The single most important thing in agile is to inspect and dare to change things which aren’t working. You can start with small experiments to find solutions, and if it turns they do not work, then you can stop them. By Ben…
One of the quotes I love from this article is
Being brave is not about removing fear or not being afraid – it is about doing what is necessary even when you are afraid.
It is true being a developer is being a craftsman. It’s a learn-code-adapt-repeat cycle, not just a code-repeat cycle.
via Courage to Become Agile — InfoQ
I would like to clarify something immediately with this post. Its title does not contain the number 7, nor does it talk about effectiveness. That was intentional. I have no interest in trying to piggy-back on Stephen Covey’s book title to earn clicks, which would make this post a dime a dozen. In fact, a google search…
There are some great tips here. This is an excellent read.
- Document and readable code
- the “Unhappy” path, when shit breaks
- Automated testing
- I said so. Isn’t a decision
via Habits That Pay Off for Programmers — DZone Agile Zone
Git is the de facto standard for agile software development when it comes to version control systems. This well-supported open source project is flexible enough to support a range of workflows that suit the needs of any given software team. This Atlassian article is a great overview on how to handle the branches in a typical development project that has small and big changes as well as things breaking.
No truer word are spoken than these, “The Agile Manifesto is simple, clean and doesn’t enforce any methods.” This opinion piece by Yusuf Autas is right on the money. Less is more, less meeting, less new roles, less new terminology. Focus on building something quickly, refine it until the customer says “Wow”! Some of the Scrum disciplines are just in place so management can see a process they might be able to interject new goals and visions. I like to use Kanban Tool to organize my projects. This is simple and to the point task management system.
Larger projects may require some better tasks tracking in which case I would use Atlassian’s JIRA and its boards. It is possible to connect these two tools together to take advantage of the best features of each of them.
I am currently working on some presentation and course material on putting the Agile train back on track after the Scrumnado wrecks I have witnessed. I will post them here at GeekMustHave.