Agile Hardware

So much in the Agile world centers on  people and software.  Ever organizing around developer iterations and quickly integrating the knowledge, feedback, and cross functional improvements.  There is now a force multiplier to this effort.  Not just in scaling bigger – We now are able to leverage as equally quick turns in hardware.   Hardware and software are again matching in a way that allows creativity and innovation explode like never before. It used to be when we were manufacturing we would spend months in design and then more months just waiting.  Spend a princely ransom in the tooling and dies needed just to do limited runs, and then get in prototypes to test how ergonomic, how appropriate for fit or rugged abuse a casing might be. Circuit boards were all or nothing propositions which rarely matched the pace of software development.

3 Dimensional Printing

3D printing has seen an explosion of the type of printers available on the market. These printers are challenging the way we thought about assembly, manufacturing, prototyping, materials, fit, cost, and the list goes on and on. From an idea to physical form is no longer taking the weeks or months it used to.  Some designs can now be reality in hours.  I am going to list just a few of the things that slapped me across the eyes as I got further and further into the world of hardware.  As a burgeoning 3D printer owner – the game of manufacturing is about to change.

Materials

The preponderance of materials come in a filament form.  Types of plastics like ABS and PLA are melted in thin layers to create models.  It doesn’t stop there though. Filaflex is more like a stretchy rubber that enables the printing of more wearable items like sandals or durable phone casings.  Paper, Hershey’s chocolate or sugar, metal powder melted with lasers, resins, carbon fiber and special concrete mixes are just the beginning of an exhaustive list.

Machines

Local motors unveiled the first 3D printed car with plans to be able to manufacture with a 24 hr turn around time.  Microfactories allow consumers to personalize, design and customize.  What does this do to inventory, supply chain and lots?  New and innovative designs get noticed in a hurry.

Voxel8 looks to revolutionize circuitry.  Allowing printing with traces and room for electrical components.

MakerBot is quickly adding features to every printer it creates.  The community of thingiverse has grown tremendously and allows many to share designs.  Not only are many playful, but categories to replace broken parts or get re-mixed with other hardware parts (Ikea is popular).  Many models get remixed as evolutionary design improvements from others.

The Mcore IRIS printer makes 3D models full of life-like color. Paper-based model  construction also makes the consumable materials cheaper.

Formlabs printer uses a laser hardened resin and produces some of the most finely detailed models.

Look at up and coming machine designs:

The Griffin Delta printer is defining a new standard in a printer that can be assembled as a home project.  This printer also scales in size for the your intended use.

A 15 yr old is now designing the Orb.  Using a record player like turntable, his modular approach and new modeling language aren’t the only innovations.  Heating and material changes promise to speed the print times by a factor of 10.

Software

Sketchup, Tinkercad, Inkscape, Repetier, Blender, Slic3r, Cura, Skanect, Makerware.  Software is enabling us to capture our ideas more quickly.  The import and export,  formats  and fixes are really driven as the some of the most important features.   Surface Tessellation Language (.stl) is a way of geometrically dividing and describing a surface. The .STL file is common but not the only way to capture 3 dimensional information.   Meshes and object capture are also common. HTML5 and Fusion tables allow interaction with different types of 3 dimensional information.
Measurement is predominantly in metric as it scales so much more easily.  mm and microns are common units.  Software also starts being predictable at model supports, material needed and time to print.  Speeds (for the moment) are mm/s.  All this easily translates into predictable micro transactions of a few dollars.

If You Can See It

Hardware and software allows 3-D scanning of objects around us.  ASUS Kinect is often used with a 3D printed handle to scan in art and people.  A  cosplay or Halloween costume becomes an action figure. Possibly even a chess piece as an aggregated 3D model of a family portrait. Makerbot’s Digitizer sells alongside their printers.  Another amazing must have in this year’s laptops and phones is Intel’s RealSense.  This camera will scan, measure, translate objects into models and give us that long awaited Minority Report interaction with the screen.

Remix Ideas

Take some relatively disparate areas and start enabling a 3D mindset.  Letting kids use a Sharpie for drawing can easily translate into a 3D toy.  Video Games already hold 3D models.  Popular pokemon figures, Minecraft buildings can all be exported and create a personal model to inspire and spark the imagination.  NASA topographical data and even Google Earth buildings can be used for sections of landscape or cityscape models.

I am very much looking forward to the innovative “WOW” factor as 3d printing continues to affect so many products, so quickly.  Personal in a visual and tactile way; ideas are more agile than ever.

Advertisements

Clock Time, Event Time, and Bullet Time

When becoming agile, there are many ways that we start to look inward in order to change how flexible we can be.  We start to think about work differently.  We think about how we collaborate together.  We think about task, story and epic level things.  We also ponder time itself.    Is there a placeholder event for that?  Is this the appropriate time? Is the time-box up? I remember the high school teacher’s frustration at having students look eagerly at the clock – anticipating the moment when the bell would sound the end of class. Ultimately later in the year, the note underneath, which was posted and read “Time will pass.  Will you?”

 Clock Time

There are things that are run by clock time.  In the agile world we set limits on meetings and sprints Many organizations still account for hours. Things that are run by the clock.  It lends a sense of urgency and there is a certain puzzling in order to fit activities and interactions to fit appropriately.  Time does not stop. It marches.  What does change though – is our perception of time.  Some moments whiz by or instead as Shakespeare said slowly drags on and “Creeps in this petty pace from day to day, To the last syllable of recorded time”.  When our days are managed by the clock, I often wonder if this alien and measured arbiter of fate sometimes robs us of an empowered position.  Some teams often measure a sprint burn down with hours remaining (Which I’ve previously talked about here) .

Event Time

When timelines are populated by events they often give us a sense of achievement and better context than Chronos‘ stamp of numbers.  I am looking for a task to complete rather than time to run out.  Choosing achievement over activity and hallmarking instead by the memorable actions which have culminated in a sense of completion.  Sometimes ending a day in a ‘good spot’.  Event time seems to allow for creativity and innovation that spark and motivate just a little more.  Doing something Better than before, not just the same way over and over.  Is event time always better? probably not as with all things there is a balance.  It will Clock time that helps us determine if something ‘unsustainable’. But, again, only because we haven’t achieved the desired events. A Team might measure tasks, not as hours remaining, but rather as events – only wanting to know if they are in progress or done. A retrospective timeline will often be measured in 3 ways – the chronological timeline (1) earmarked with events (2) and our reactions (3).

Bullet Time

The matrix first coined the term, being fluid and moving faster than we thought possible.  Unfortunately it always seems to be during crisis moments.  Whether on a six story drop on an amusement park ride or in front of a release review.  Our brain registers everything and goes into a hyper protective mode.  It’s sometimes hard to remain calm and in a problem solving in a panic driven environment.  At times the uber-urgency brings out some of the best in our teams in an almost Apollo 13 type of way.  There are no lives on the line, but the sense of responsibility doesn’t seem any lessened.  It usually takes longer term investments in teams of people to make critical and good decisions.  To support those teams we invest in infrastructure and technologies.  We let them adopt lightweight processes which enable them to move quickly.  Bullet time is not a sustainable thing. But some of the best days are briefly ventured here, when the team pulls together and works itself out of a crisis.  Even better when the team plans to avoid the same thing from ever happening again and moves back into Clock or Event time.

The Agile Manifesto Pictionary

In 2001 something happened. A document was drafted and called the Agile Manifesto. It is wonderfully simple and requires just a bit of thought-full-ness  in order to consider a favored balance of someone or something OVER something else.    In order to help bring the point across I often draw a small picture of the document that goes something like this…

                                                                                                     The teams seem to remember iagilepictographt much, much better.

Individuals and interactions over processes and tools

My drawing for a person is simple and quick.  a stick figure.  the emphasis is that they share the same thought cloud.
Over
a hammer and a wrench or some gears….  processes and tools were meant to enable people… not fetter them.

Working software over comprehensive documentation

A train made out of 1’s and Zeroes.  = working software.  In the old days we didn’t have enough 1’s to go around.
Over
pieces and stacks of paper

Customer collaboration over contract negotiation

Simple Stick people – but one of the is holding a ‘$’… Just as in a USER buying our software.
Over
Jail.  Locked down and imprisoned by paper that seemed to hold everything we wanted but quickly grew heavy and burdensome.  protecting a prior understanding rather than representing how we work together.

Responding to change over following a plan

A chameleon – and this is how I think of adaptability. Responding to change.  If I have some colored markers I’ll stripe a few bits if rainbow in there. We are teaching teams with an emphasis on problem solving skills.  They must adjust and respond to change, as no situation is ever ideal.
Over
A treasure map.  A plan.  I Love me a plan. – Yet most experienced coaches and veterans will tell you that plans seldom encompass or foresee every detail when in the thick of action.  So you train your team to adapt, adjust, and be problem solvers in order to overcome the things that get in our way and the difficulties along the path.  Buried treasure, by the way, is not valuable. Like in software – if it is hidden and no-one uses it or knows it is there…  it is not worth much.

Try it and see if the 4 principles are easier to recall.  Even if you are recalling a gecko pirate…  wait another second and it will lead you to ‘adaptability over plan’.

 

Take It To The Team

It is inevitable and tempting that many decisions that affect the team are made without ever consulting the ones that are primarily targeted.  Even if  enacted with good intent.  We still see this on a different scale when the software user was never consulted but significant choices were made in their best interests as well.  Certainly there is a balance somewhere in something that might be too small or trivial and as opposed to another extreme where the user is relegated to insignificance.  Taking choices to the teams and discussing solutions which impact them, is every bit as important as involving a software user.

  • Find out what they think and how they think.  This is a chance to connect and understand; an opportunity for innovation and creativity.
  • Get impact that you might not have considered.  Omniscience is not a human ability.
  • Consider some alternatives and adjustments to the plan from the team. Consider even that sometimes you may not be thinking ‘heads-up’ enough for vision and strategy if this is something the team could/should already be capable of deciding.
  • The team may not get the Last word or Decision – but include them in every step of the way.  They are learning about the organization and processes.  What they elect to change might surprise you and start to shift the organization or process in a better direction.

I wrote up a small Empowerment Quiz considering the posture of the teams I encountered.  Were they defensive? Perhaps timid? Spending time having the right conversations, actions and decisions to become better teams is important for me.  Ever made easier because the team is always important to me.  To be able to represent the team as working on the most valuable work to the organization, that the team’s work was high quality, and that we were adjusting to meet the needs of the user is a great job to have.  That a team is also improving the product, as well as it’s own skills, processes, and tools… even more so.

Shared leadership is a chance to grow and learn in an environment conducive to improvement.  We help each other to be accountable.  We are teaching and learning to see from different levels of perspective.  Being an active part of the solution is far more valuable than swept along in the tide.  The answers we search for and find ourselves tend to be more valued than the ones we are readily given. If there is a decision likely to involve them, before one is made, take it to the team.

 

To Whom It Should Concern

To Whom It Should Concern,

I am writing to you on behalf of a team I have will have the distinct pleasure to work with.  I don’t know when – as I have yet to meet them,  but they are out there.  Some when in time. This team will adopt an entirely new way of working and will change many of the processes around them. They will also change the tools they are used to.   This team is a natural collaborator.  They may not have all the answers, but I will see them get stronger and more  resourceful with every challenge that they come across.   They will develop a calm and deliberate manner with which they approach the work.  They will help the organization to understand the product they inherited and their own capacity for work.  This team will often strive for opportunities to better themselves. They are earnest in delivering a product that is slowly becoming what the user really wants.  It may require a bit if patience as this team matures.  There will be sparks of innovation and creativity that pay small dividends and will continue to accumulate for the benefit and influence with the other teams.  This team will need your support and at times your patience.  They may even struggle at times or misstep as they find answers on their own.  They may even challenge you.  I will tell you, there is greatness in this team. They will grow and tackle some tough problems for the organization.  They will try, learn, teach, and influence others to improve just as they expect it from themselves.  Congratulations on having such a team.  They are the ones doing some heavy lifting.  I hope you trust their professionalism and that they honestly want to create something valuable.    Help them with obstacles and to celebrate the small wins along the way.  Stay engaged.  Your interest and guidance will eventually find that they will be able to run faster than you could imagine.  Congratulations.

Xtreme Feedback

I once posted that in an agile sense it seems like We Can Never Go Fast Enough.  Going fast means we need to have quick reflexes; the ability to adjust. This in turn relies upon feedback.  Some information that quickly lets us know how we are doing and allows us to steer back on course. If someone is YELLING, then it’s our ears. Very often, however, it is our eyes that tell us.  It is why we lean so heavily on information radiators and large visual displays.
There has been a growing trend for a while now in pursuing ever faster feedback mechanisms; often named Extreme Feedback.   

The Extreme isn’t so  bad. Not as in some reality show which uses shock collars when something gets broken, but rather in the ability to very quickly ascertain information.

1) Where the code is
2) What State the code is in
3) If Something undesired actually happens – Signal for help!  600px-Nabaztag-IMG_1666

Whether it’s a bunny from Nabaztag or an Arduino (Uno or Mega) with some LED’s like this starter kit – these indicators can be tied into a build process and let the entire team know what is happening.  Collocated or distributed, these devices are fun ways to immediately inform the team about what is going on.

A Team Foundation Server Build Bunny

http://stackoverflow.com/questions/303614/whats-your-favorite-extreme-feedback-device
https://blog.codecentric.de/en/2013/07/using-a-raspberry-pi-to-control-an-extreme-feedback-devices/
https://jenkins-ci.org/content/extreme-feedback-lamp-switch-gear-style
https://wiki.jenkins-ci.org/display/JENKINS/eXtreme+Feedback+Panel+Plugin

I might choose the bunny because Easter is almost here! I might choose an Arduino because I am tired of Hidden Easter Eggs!
From the Quality side of things, I always disliked very long processes that went on and didn’t have any verification until a dozen or more changes were involved. Let alone another dozen processes had already been gone through.  It was even worse, if like in waterfall, the next stage was the verification of several months of work.  Extreme feedback pushes into the small changes that the build is compiling and does a great job of simply making everyone aware. Quality in the moment. Devices like this can be tied into deployments, and even into Test results. What about some aggregated sprint or release results? Granted the feedback on a release is going in the BIGGER direction – but the automated indicator of a 😦  *sad* bunny is impetus enough to rouse ourselves to action and address the problem.  In a fun way of course.  

If the team has a budget (and I often think it should), this might be a great, fun, and motivating project to help the team to get ‘to good’ as soon as something goes wrong.  In TDD (Test Driven Development) terms “getting back into the green”.  A passing state, and out from the red, broken state, as soon as possible.  The term leverages from the eXtreme Programming or XP Practices that Kent Beck championed.

Have fun if your team decides to use one.  Let us know how creative you were.

Without A Net

As a traveler I know there is always something new just lurking around the corner.  Whether it is taking a metro train and navigating a city, navigating a building, or even meeting people for the very first time.  Sometimes even when I am doing something practiced, a new situation has the tendency to spill itself all over the comfortable events I had planned on neatly unfolding.

There was a book written a while ago Working Without a Net.  I liked the premise that – eventually we should get used to doing some great things without worrying if we had a safety net below us.  Now I do NOT condone physically working without safety equipment.  Yet the mental equivalent of something comfortable which might hold us back from trying something amazing now and again, resonates with me.   The chapter about channeling one’s anger, seemed outdated, since it suffices only as a very short term motivator. – But, back to my story…

I have had a slide deck around for a little while.  I spent an hour updating it.  Improving it a little each time I bring it out.  It might be getting a little long with all the cumulative material through the ages.  Yet it allows me to cover the breadth and depth of the material.  I am comfortable with the content.

I had arrived early to the room.  I usually like to get a feel for the space which I am going to be throwing ideas around in.  Often I will change the contents around in some formation that benefits the audience as they participate.  Sometimes just to introduce a a change that keeps a creative ember burning somewhere that spacial permanence has seemed to desensitize the returning audience.  Tables and chairs arranged. CHECK.

Then the projector, screen, computer, slide deck, and any typical markers or post-its that a ‘meeting-in-a-bag’ might offer.  CHECK.

I know my voice can dial up to carry across the room – no mic. needed.  Wireless presenter to allow for some mobility.  CHECK.

Audience is starting to trickle in now. CHECK.

and with a quorum – off we go.  First Slide… Starting into the topic… and the projector goes out.   *sigh*

Is there a quick 10 second fix… nope.. and then the priorities start to become clear.

Why are we here -FOR THE AUDIENCE.  These people are important to me and I absolutely do not want to wast their time.  They have asked me to explain and explore a topic they have all previously expressed an interest in learning more about….  Alright – I made the slides – and those were from my experiences and insights… I’m still functioning….   What do I have around me… I have just switched from assessing situation, and a quick personal (psychological) inventory to looking at my surroundings.  What in the environment can I use to aid my survival.  🙂

Abandoning the projector and screen

I see a whiteboard… I’ve got a marker or two… and the slides now become the old ‘Chalk Talk’ using some dry erase markers.

What were the really REALLY important things I want them to come away with… my mind starts leaping forward and re-arranging the material instantly.  Let’s draw it out.

Along the way I reach out and offer some choices as an audience… there might be two different exercises we can do to practice this… ‘which one would you like?’  The decision from the crowd takes a few seconds… It is one way to characterize the group – how long do they take to make a decision and how many were vocal.

The time and breadth of topic passes quickly as we get questions along the way which perfectly explore some common areas that can be misunderstood.  GREAT Questions that actually lead me to cover areas I might have missed AND take the audience along the route they wish to explore.  I feel more like a guide than a presenter.  Our safari into the topic still leaves me with how fun it can be though I’ve been here many times before- just not in the same vehicle driving through it.

Joking, laughter, and even a few AHA moments.

And before we go, a few minutes for being retrospective and feedback about the time we spent together… Some pretty high marks…no mention of the projector.  The ability to switch manner of delivery and increase participation is perhaps left unstated; simply appreciated. No thing is perfect but our ability to make adjustments along the way is perhaps one of the basic tenants for agile – have a plan but get used to adapting.

A few linger afterward and want to explore other areas of knowledge.  I wonder if the teachers choose the students as often as students prefer to choose their teachers?

The NET that I was careful to prepare, the slide deck… seemed as if it held me back from really connecting and getting the best curiosity and participation from those who attended.  What else is there that might be so comfortable, it may actually hold back and keep from moving into some spectacular things?

Never Going Fast Enough

There is something about organizations today that is prevalent.  The feeling that we just can’t go fast enough.  Many don’t really know the organization’s capability, or aptly characterize what is going on.  To know precisely where and how to improve may be lacking, let alone be aware of the impact of it all.  Teams themselves get impatient and  start to lose some of their calm about the problems that beset and beleaguer them.  So what if we were to make a few basic premises about the organizational landscape.

1) We are all here to do the right thing.

Not everything will help, but wouldn’t it make a difference knowing that we ALL want the software that we deliver to not only rock… but paper and scissors as well. MakerBot’s 3-D printer MakerWare will install and tell you that you are installing a bundle of AWESOME.  I wish we were all as excited about developing and using our software! Trusting that we want to do better lets me have some patience as we try a few things to improve.  Being open and honest also means we are saying directly what concerns us. It also means that if we see a problem then we also know enough to get in there and be a part of the solution. We need EVERYONE’S creativity and innovation. Not locked in up in a solitary head, but communicated and collaborating with the team.  It also means that when teams get moving, they will be fairly quick to act in solving and addressing problems.

2) Organizations are fighting for growth – or sit back, stagnate and eventually become obsolete.

The universe allows very few things to continue without some form of upkeep, maintenance, and eventual improvement.  Mathematical equations might be one exception, but algorithms which are great at data mining are not.  Software is the same way.  Technology improves our platforms of usage with smart phones and tablets.  Education and expectation grow the demand of an increasingly integrated and aware customer base. Innovation changes paradigms and allows some great advancement or advantage.  Moving forward and improving is a continuous adaptation.  The time to react, from perception to deliverable is now the measure for organizations.  How nimble, how agile are we?

3) There are no limits, only plateaus- get beyond them.

Bruce Lee said something to this effect.  We have a tendency to complain about limited memory, limited attention, limited time.  Another way to put it is cognitive load.  The ability to think is relies on internal processes such as motivations, reasoning, planning, learning, and solving.  External processes would include perceptions, stimulus, and actions.  Most of my own limitations start with where I think I can’t.  I have always been most rewarded in pushing beyond what I’ve done before and doing it from the perspective that I CAN… GO.

4) Teams require work

Investing time in the communication, collaboration, and the cultivation of the team is important.  Remember the team is the only thing in the organization that will do the work and get the software to done. Investments in great performing teams will allow the organization to really move.  Just as individuals collaborate, so do teams. It starts to scale. I know some individuals out to change the organization.  How much more influential might teams themselves become?  How about programs of teams?  We might not be able to go fast enough. I will say, however, that if we see the improvement – our rate of change will increase as we push against our own limitations as an organization.

 

 

The Eye of a Transformation Storm

A little known fact about myself.  I used to have a great fear of speaking up in front of a room, in front of others.  No Joke.  It went to such an extreme that I buried myself in books (especially English literature) and memorized vast amounts of quotes from others.  My own words never seemed worthy enough to be expressive and meaningful. So I relied on these quotes and spent a lot of time trying to be prepared when I HAD to speak or give some speech. Then immersion was next.  Speaking again and again and learning something new from every single experience.  A powerful one is when the speaker actually listens to the rest of the room and adjusts to where the group asks to explore. It would be unfair if this circumstance is more like performing a rescue. Getting all gear prepared, getting into the helicopter, starting it up and then just sitting there yelling at a stranded victim to come to you.  We actually need to be at the very perspective they are, help them triage, prioritize and assess, and move.  Ever a balance with leading the group to where it needs to go.

I look back across the years from whence I deliberately wandered and can only smile.  I now find it wonderfully rewarding to speak to rooms of people.  This is where it starts. The spark to transform an organization starts in small teams and grows.  In the beginning of this transformation the inevitable J-Curve panic sets in.  Sometimes the initial chaotic dismay is like listening to a storm. There seem to be SO many problems that I often hear ‘I thought that Agile was supposed to solve all our problems’, and ‘Agile isn’t working’.  The reply is usually – that Agile will not SOLVE your problems, but it will certainly help expose them!  We rely on people to solve problems.  Agile just provides some framework in which we structure the interaction.  We all know that although people are quite comfortable with old processes, that they certainly didn’t work out well either.

Supporting each team in adopting, and watching them grow faster and faster, overcoming the next obstacle, is rewarding.  Watching as they begin to mentor other teams, even more so.  Jot down a few things about what you would like to change.  Then be patient about growing to get there.  As you improve, having a taste of what went well, teams usually move forward from there.  We aren’t only problem solving the right software in the right way, we are building some great teams as well.  The next step is to terra-form the organization to support and allow those teams to thrive.

There will be storms along the way.  I can tell you however that they usually pass.  Come and go.  With every one the landscape changes just a little.  Maybe because Spring is here; but with each deliverable, as we endeavor to make ourselves a little more agile – I see organizations being transformed as well.

Agile Conversations

There are plenty of conversations that are happening in teams.  No matter where along an experience spectrum you are.  I have one of the most rewarding jobs in the world in being able to participate in many of them along the way.  Listening to understand where the team finds itself, what it clearly recognizes, and the destination they have in mind.  Sharing my own experiences when the wisdom is appropriate is expected.  Having a genuine interest in who people are, helping them grow and change the organization they are a part of, has ever been rewarding.  Writing is one way to help practice the communication we come to rely on.  Communicating is typically very high on the scrum master list of things to improve around the team.  Rightly so. Information radiators, stand-ups, conversations, are a few of the things that guide our work and help us learn or focus. Edward Tufte knew how important it was to visually convey information.   With conversations I find myself mindful of a few guiding principles.

Be gentle and respect someone else’s time.  Keep them involved, not as a tactic, but because of genuine appreciation.

Help them from where they are, not from lecturing where they ought to be. Share the experience and learn along the way.  The inner fixed points from which we tether in order to perceive the world are familiar.  They can also limit us, because that person on the other side of the conversation is rarely at the same vantage.

Come away with the next small action that can help.  Working in the moment helps.  Decisions on what next to try and what might be too big to go after just yet, are important.  Collaboration, convergent expectation, and earning trust that we are all invested in growing in the same direction.