Monday, November 24, 2014

Leap of Faith

God has blessed me and my family with an incredible financial opportunity, in the form of a new career path for me. While the financial benefit of taking this new role is rather obvious, the prior position I had provided significant emotional and professional fulfillment. I'll likely continue to find much of the same in the new place too, but a transition like this also means leaving Egypt to find... Hopefully the land of milk and honey.

I'm not always great at trusting God. He gave me an independent spirit and a strong intellect, so letting go and letting God tends to give me some of my greatest struggles. I want to have control of all of the variables as I change roles. Instead, I need to pray about all of them, and then let God take the reigns. Some of the things that came to us easily before have become more challenging now. It's definitely a stress inducing situation to start a new job when my family is so much bigger now, newly within the last year. Suffice it to say that there's not much of the same life for me as a year ago. Sure I still have the same wife and same house. But things are dramatically different from before.

God has provided us strength so far. I can say we've hit some low and weak points recently though. Change is hard. Thankfully I can trust Him through the whole ordeal. And I know that at the end of the day all of this will just glorify Him, as best I know how.

Saturday, November 15, 2014

The Best Time

Family Time
For everything there is a season, and a time for every matter under heaven:
a time to be born, and a time to die;
a time to plant, and a time to pluck up what is planted;
a time to kill, and a time to heal;
a time to break down, and a time to build up;
a time to weep, and a time to laugh;
a time to mourn, and a time to dance;
a time to cast away stones, and a time to gather stones together;
a time to embrace, and a time to refrain from embracing;
a time to seek, and a time to lose;
a time to keep, and a time to cast away;
a time to tear, and a time to sew;
a time to keep silence, and a time to speak;
a time to love, and a time to hate;
a time for war, and a time for peace.
Ecclesiastes 3:1-8
Fatherhood makes every moment the best time. At the moment of my first child's birth, I had the best time because I witnessed a miracle. At the moment of birth for each of my twins, I had the best time because I witnessed a miracle twice. During the first 24 hours of my first child's life I had the best time because each breath of a newborn baby sounds better than the most perfected orchestra playing the world's perfect symphony. I had the best time during the first 24 hours of my twins' lives because each one showed me again how much each second makes a difference.  One of my twins spent 11 days in NICU. That was the best time because it reminded me to trust God. I was broken down more than once during those 11 days. But God still used it as the best time for His purpose... I'm still figuring out some of what that was though.  The other twin got to come home with us when the hospital released my wife. The other twin missed her sister desperately in those days away from her. That was the best time because I got to bond with her intimately while helping her cope with a loneliness she couldn't understand. I had the same loneliness. I still don't understand why we feel these things, but having that moment God used it as the best time to teach me how to love something so dearly, and yet have no direct access to it.

Tonight I got to have the best time helping my oldest child cope with a friendship that has fractured. In the eyes of a child, this kind of friendship breaking causes a kind of pain that I only think adults experience when we lose someone we dearly love. Children, as I've experienced it, have a capacity for unlimited and unconditional love. When, however, that love does not return - they don't seem to know how to describe what they feel - lonely. Tonight I had the best time as a dad helping my daughter stop being lonely. God helped with that too - I showed her how to pray when she hurts.

I could extrapolate so many moments in my life since the birth of my child as the best time. Many of the moments before then, certainly, had some greatness in them. However, I found my faith reborn at the moment of that first child's birth - that was the best time for God to find my heart and call me to Him. The work God did to lead me to that moment, I thank Him greatly for. However, since I did not seek Him directly before that time, unfortunately many of my best time moments before then are lost to me. However, I know He was there, carefully planning for every best time I get to have.

More than once, people have called me hopelessly optimistic. I think that optimism comes from having deeply centered hope... not from being hopeless.  My optimism stems from the fact that right now, in this moment, God has brought me the best time. Like the Bible verse I quoted, God knows the right time for everything, which makes every time the best time. Sometimes I spend the best time quietly reflecting, reading, and writing. Sometimes I spend the best time as a father. Much of my best time comes from fatherhood right now. Children depend deeply on their fathers (and mothers - but I can't speak firsthand about motherhood) which makes their need the best time to raise them. I desire to live every day as if I have the best time doing it, because I want my children to understand what it means to have such hope - deeply rooted in Faith.

Friday, October 10, 2014

Sprint Review

How about that. I haven't written in this blog in over a year. I suppose I have some legitimate things that may have caused this lapse. Probably the first thing on the list is lack of diligence, but I'm back. For now at least.

In software engineering agile development uses something called a Sprint Retrospective. Basically, your team looks at the work originally planned into the sprint, and then compares that with what actually got done. It's a concept of continuous improvement. How do we get better at estimating a sprint and then how do we get better at execution?

I think that the same thing applies to our lives in Christ. As we work on the things the Holy Spirit compels us towards, we should take the opportunity to reflect on the good parts of how we followed through, and also reflect on how we can do better during the next "sprint." We have a best practices guide in our Bibles, we have a product owner in God and we have a scrum master in Jesus. We need to rely on all of these things to have the best sprints we can in life. And in all these things we even get to have our daily scrum stand ups with our prayers and devotional time.

I'm still figuring out how God needs me to work on His scrum team. We all need to adopt the continuous delivery mindset... To always strive to improve our impact as Christians the way God would desire for us.

Thursday, September 5, 2013

God, the Product Owner

Who is your master - Sin, or Jesus?
I James, am a slave of God and the Master Jesus, writing to the twelve tribes scattered to Kingdom Come: Hello! Consider it a sheer gift, friends, when tests and challenges come at you from all sides. You know that under pressure, your faith-life is forced into the open and shows its true colors. So don’t try to get out of anything prematurely. Let it do its work so you become mature and well-developed, not deficient in any way. James 1:1-7 – The Message 
In a software development environment, the role of Product Owner has an important job to do.  There is something called a product backlog - which I will touch on very briefly here - that the Product Owner is responsible for adding items to, removing items from, and prioritizing items in order of importance for working on.  Consider this as the master to-do list, the one that the entire team looks to for work to do, put in order with the most important things on top.

God is the product owner.  God informs us of the most important things in our lives that He wants from His team. During prayers, and during other times, it is up to us as His servants to ensure we're working on the right things in the backlog.  Thankfully, we have an open view of His backlog - it is not a secret for us, He makes it very clear what He wants, and when He wants it.

So, as I sit here considering the concept of a God-Product Backlog, I wonder what the first thing on my list is, in terms of things that are not yet on my "in progress" list. I think as Christians it is not enough for us to be content with what we're already doing, but also to look for things that we could be doing in the future.  God's product is "Humanity", and His message must be spread to all of His creation about His Son, our Savior.

So, I recently took something off of the backlog, and it's now in progress.  Actually, the thing that's in progress is a pretty discrete item - explaining why I see God as the Product Owner.  If the task had a title, it would be "Write a Blog Post About God as Product Owner".  It's description would be, well, you're reading it's description right now.  It has high priority, at least I think it does, because I feel inspired by the Holy Spirit to write about it.  In fact, all of this writing is coming to me easily, mostly because He is in control of it, and I know the Agile process well enough to help Him for my words.

Seeing as I've been inspired to talk about the Agile God, the interesting thing about an Agile backlog is that it's not static.  At any given time, the Product Owner can evaluate the product backlog items, prioritize it, add items to it, and remove items from it. It's also up to the Product Owner to ensure that when the team, or the scrum master, have questions or concerns that they are managed as swiftly as possible.  If the action item requires it, the team and any interested members can leave notes on the action item for the active team member to consider.  Interestingly enough, all of our product backlog items also have notes in them - in the form of The Bible.  Sure, we could rely on other members of our team to provide us with additional notes, but to hear His message for Your life, first, pray, then devote time to The Bible.  It's helped provide me with clarity about this idea of Agile God.

I've not yet really expanded my horizons for the "God" part of the Agile God concept, outside of using The Bible for inspiration on how to tie my ideas about agile development into my faith.  Of course I would certainly welcome any and all feedback as I start this journey with God and Christ, as my understanding of both God and Agile development can certainly gain more subject matter expertise.  I'd hardly consider myself a prime authority on either subject.  That said - I'll go back to the product backlog, and how God is in control of the Life product backlog.

Challenges, triumphs, defeats, war, peace, and all of the things that God has declared have their time and place, have been put into His backlog.  Who knows, this conflict with Syria is floating around in His backlog, too.  I don't know how He has prioritized military conflict in this Syria situation, and I know that God would not advocate bloodshed.  However, He knows why this Syrian issue is happening, and He knows the best way for it to better serve His plans.  Hopefully the people involved in the critical decision making process are praying about their questions related to their "in progress" faith tasks.  Hopefully they've gone to The Bible to find His comments about what is happening.  And, hopefully we, the people of God, have enough of a voice to have it heard in the places where it needs.  For, another concept of Product development is team size.  The ideal team size, as studied for optimization, sits at or around 7.  Which is interesting, 7 is a very important biblical number.

There's no possible way that in a nation of millions that we can all assume that one person can be truly held accountable for all of our deeds. Jesus was the Son of Man. No human can make that claim.  We need to start taking the time to look at Product backlog of life and making sure that we're delivering the most valuable items to God, as He has called us to do.  And, we also need to rely on those that are absolutely closest to us to help keep us accountable to Him.  And by closest, I mean the people that know every little thing your life in Faith includes.

I don't know what is in your backlog. I don't even know yet everything that is in mine - probably because it's not been fully formed yet, neither has yours.  I do know that I can trust the people I'm closest to to keep me accountable for the backlog items I choose to work on.  I'm doing my best to open up my life to the people closest to me for inspection and constructive criticism.  It's really the best way to prove that I am worthy of calling myself a Christian Man.

I think I'll focus next on the second part of the trinity, Jesus, who I see as the Scrum Master.  As a brief snippet, the Scrum Master is the liaison between the Product Owner and Team - removing impediments that get in the way.  Here's a hint - our impediments are called Sin. We all have them, we all do it, Jesus makes sure that God understands that, while these things are not the right things for us to be working on, He will help us course correct, because He has taken responsibility for our Sins.  Thank God and Jesus for that.  I'd hate to be on any development team that didn't have a good working relationship with the Product Owner.

Sunday, September 1, 2013

God for Geeks

Simple Scrum Diagram
I think it helps people have a good relationship with God if they create a personal metaphor that gives them a more direct perspective on His work, and His plan.  In the case of most of the faithful I know, they also happen to be passionate about writing computer software.  One of them even gave me a great idea for helping me shape my personal understanding of God a little better, which could easily turn into multiple blog posts spanning several paragraphs.  See, something I'm extremely passionate about is the concept of agile software development, specifically in the desire of moving towards continuous delivery.

I was having a faith conversation regarding predestination and free will with a fellow developer who I'm also working on agile practices with, and came to an interesting theory.  God, to me, is like the ultimate agile developer - He definitely gave each and every one of us the free will to work on his Life product however we so choose, and while he has every single epic perfectly planned, the sprints that we go through do not get planned until it's implementation time.  He even has a great backlog of user stories that he has certain individuals assigned to.

I italicized some terms that are part of the concept of agile development, I can, and will, write about God as a Product Owner (another one of those buzzwords), about how Life is a product, not a project - also an important distinction - and all kinds of other things that combine agile development theory with my strongly increasing faith.  I don't know yet how long this blog series will carry me - I'm not really doing it for me, I'm doing it because He assigned this user story to me, and He wants me to carry it out.  I'm going to do my best to move out of His way, and let Him work through me and my understanding of software development to explain His purpose for me, and for Life.  I don't know yet exactly where this journey will take me, nor do I know all of the technical implementation details of the user story.  All I know is that the final result will be His story, told through the eyes of a developer that loves Agile practices.

I'm not sure yet what a good starting point would be.  Scrum is a simple concept, with so many complex and interacting components that each one could certainly grab my attention for the length of one, or possibly many, blog posts.  I guess I just need to move out of the way and let Him give me some guidance on where to start first, seeing as He is the Product Owner (He owns Life) and His Son is the ultimate Scrum Master (Jesus removed Sin as the ultimate impediment).  Maybe that's a good place to start - explaining what a Scrum Master is, or what a Product Owner is, and explaining why I see God as the Product Owner of Life.  I'll pray about it a little bit, but I've been inspired by the Holy Spirit to keep working on this - and while He is patient, He also has a reason for calling people to action.  Thank God for his inspirations!

Saturday, July 20, 2013

Mashed Potatoes

Short side rant: Shame on Facebook and YouTube for their initial response to this movie trailer.  Glory to Him, humans can't take away His message, no matter what. God wanted this message heard, YouTube and Facebook are not big enough to get in HIS way. That trailer is obviously now back on YouTube, after originally being banned.

This has nothing to do with my mashed potatoes post, and yet it also has everything to do with my mashed potatoes post.  I was working on preparing potatoes for becoming mashed potatoes.  As I peeled them, cleaned them, and then cubed them, thinking about God along the way, it struck me as a fitting metaphor for The Christian Church (or The Body of Christ).  Every potato (human) is a little different.  Preparing potatoes to become mashed (humans for heaven) requires peeling (saving).  Christ is the potato peeler, the peels are the Sin of humans.  As the potatoes become peeled (saved) - some of the dirt from other peels gets on the peeled potatoes.  When Humans come into contact with Sin, we once again become tempted to Sin (potatoes get dirty again).  Jesus is also the faucet that washes off the dirt - He's multifaceted like that ;).  Once the potatoes get mashed, it becomes a uniform (tasty) mass that all support one another.  However, the cook (God) notices when one of the potatoes is missing, the body is incomplete!

I apologize if the metaphorical mind of mine went on a really wide tangent that I'm doing a terrible job explaining.  However, Kirk Cameron is a potato.  So am I.  Someday, we'll all be a part of the Body of Heaven, mashed together for eternity in one quite scrumptious future!

Thursday, June 13, 2013

Code Life Review

So, one of the wonderful things that I get to do at work these days is take part in code reviews. I show off my code, good, bad, or otherwise, to people that have an interest in the code I'm writing. They show their code to me. And, we can point at things in the code and actively direct attention to good code, and code that could use some constructive improvement.

 The thing we get to do with code reviews is make changes, in almost real-time, to correct mistakes. We can append additional changed files to the ones we originated a review on, so that we can show exactly where we improved anything somebody listed as a "defective" portion of code. We get do-overs, and it works well to make our code significantly better. The code we write tells a better story about the team we are on when code reviews are included.

 When we sin, we are showing the human defects in our lives. God is the primary code reviewer in our lives - he knows exactly what it is that we've done that doesn't "follow standards" and he definitely knows all about the "unsafe practices" or "pattern violations". The thing is, His people didn't get a chance to do a code life review, sin became a permanent part of their lives. Then Jesus came along. Guess what, even when we do screw up (we are human after all) He goes through and makes our code lives clean. Sure, the evidence of our sin sits on our soul. But, we get to apply a change-set any time sin happens. Jesus gives us that chance and that love. How about that :D. Amen.