fides quaerens intellectum

WHL Indoor HAT

Posted: Sunday Mar 15th | Author: JohnO | Filed under: Uncategorized | View Comments

Most of you know I’m an avid ultimate player. The team that was gracious enough to let me captain them just finished third in the Revere league – Congrats! We’ve got one more game left. And then there is a single week break before Spring HAT starts up. The winter is officially dead!


On Application Design

Posted: Wednesday Mar 11th | Author: JohnO | Filed under: Management, Programming | View Comments

Jim and I were talking about how to correctly design an application, but from the people and process point of view – not the technology. Here are some assumptions we have walking into it:

  • Division of Labor: you have different people doing the client-side work than the server-side work. Designers shouldn’t program, and programmers shouldn’t design. Just like stakeholders shouldn’t architect or design, and architects shouldn’t be writing copy.
  • Working in Parallel: you don’t want someone sitting around waiting for someone else to finish their job.
  • Don’t waste time: you don’t want everyone burdened down with reading, comprehending, and updating documentation. If the application cannot tell you what is happening you have a larger problem.
  • You have more than 5 people working on it: you can’t schedule a three hour meeting that includes choosing what features, how you’re going to design those features, and how you’re going to implement those features together. Chances are, at best, one-third of the people in the room care about any one of those. You’re wasting their time if they are there.

Choose the Features

Get your stakeholders together and choose the features you need to accomplish. I don’t care if you put stickies on the wall and do pin the tail on the donkey. I don’t care if you throw darts at a dartboard. I don’t care if you’ve asked your users. The stakeholders are the ones who have something to lose, the ones putting their companies and reputations on the line. They are responsible for making these decisions. Keep in mind. These are features. Requirements. They are not use cases. They are not mockups. They are not movement through the application. They are not step1, step2, step3. They are the raw, and unpolished needs to make money. The stakeholders will not design your product – that is not their job. Your CTO will not design your product, that is not their job.

Design the Features

Your implementation team can go and draw up the tables, make the O-R mapping objects, and make some simple skeletons that they can test with. They can also write some unit tests, business validation, and whatever abstraction they need. They can do all of this without any design whatsoever.

Your client-side team can make mockups. These mockups will be in the native environment. We work on the web. That means these mockups will be in HTML, CSS, and Javascript. They will not be in photoshop. Don’t waste your time designing something you cannot implement. Design in the native environment. These mockups are the application at this point. Don’t design things that are not in the requirements. Go get buy-in from the stakeholders. When you’re with them make their requested changes immediately in front of them. If you’re good, and have a good framework to work with, this will not be hard. Get buy-in. Then go user test these mockups. Get the kinks worked out.

Split out the features among all your people. No one should be over-burdened. Play to their strengths. Once you give a feature to someone – they own it. It is theirs. The stakeholder can’t tell them how to do it. The designer can’t tell them how to implement it. The coder can’t tell the designer how to design it. If you are not writing the code – you do not get to make the decision.

Integrate

Once the kinks are worked out, the client-side team gives their HTML mockups to the implementation team. Any integration kinks can get ironed out – but there should be few if there requirements were clear. This is the end of iteration #1. If the requirements were not clear – go back to the requirements. Forget the design.

Do It Again

Hopefully you can release this pronto. It doesn’t matter if you have users. Get it through QA. Get it released to a server somewhere else. Get some closure. Stamp done on it. Move on. Then start at the top with your stakeholders – what is next.

Problems You Are Going To Run Into

  • The requirements won’t be understood precisely by everyone in the same way. Expect it. And go back to the stakeholders when this happens.
  • Integration and QA should be two thirds the time spent on a given project. In most respectable shops, QA is double the development time. Expect half the development time to be Integration.
  • Problems caught earlier cost less, in both time and money, to fix. Catch them when you are dealing with HTML on the client side. Catch them in unit tests on the implementation side. Deal only with integration issues when you are integrating. Get all your functional stuff out of the way when you are working alone.
  • No one is perfect, plan for it.

On Teams

Posted: Tuesday Mar 10th | Author: JohnO | Filed under: Leadership, Management | View Comments

Over the course of my life I’ve been on more than a few teams. Sports teams, work teams, programming teams, church teams, and student teams. In more than a few ways they are incredibly similar. Almost shocking how similar. There is an enormous amount of research done on teams as well, so much I don’t even know where to start with it. Leadership and teams are how the world works – seems only fit to study it. The single most important factor that I have ever experienced is respect.

The times that I have felt my team succeed (regardless of how well they accomplished, or did not accomplish, the external goal) have been because of respect. Everyone recognizing that each person in the group – while perhaps not equal – all play a role. They all have a spot. Everyone stays within their spot. They don’t strive to be something they are not. They speak when they need to speak. They are silent when they need to be silent. They strive to meet the groups expectations because they are lofty and correct. The group enforces right behavior and conduct. I don’t care if that is the programming culture of the group making you avoid the dumb things we’re going to have to cleanup later, or the clubhouse of the baseball team keeping you in line with your teammates. It is the expectation of every member, by every member to live up to what the group has chosen.

The times that I have felt that I have failed a group are primarily because I never found a spot. I was not able to figure out when to talk, and when to be silent. I did not know the group’s culture. Or my culture was different than the group and neither was being upheld. Failure, when it comes down to it, is a lack of communication. I am granting the fact that everyone in the group is capable and motivated. The only problem after that is communication. Unfortunately it is a stupid problem to have.

When people breach their group-given role, it can get real bad. When a leader, who is given that leadership position by the group (which is the only real way you get a leadership position), steps outside the group’s accepted behavior it is all over. They are no longer a leader. It doesn’t matter if they have the ‘Manager’ title, or the Captain’s ‘C’ on their jersey. Their decisions will be questioned, challenged, and possibly ignored. It is hard for a leader to recover from some of these issues. Which is why star players get traded all the time.

I feel that I am going through this is more than a few areas of life. Trying to be a leader for some, a role-player for others. All the while trying to figure out the unstated group culture. Politics is hard.


Constantine’s Sword

Posted: Saturday Mar 7th | Author: JohnO | Filed under: In the News, Power | View Comments

I just finished watching Constantine’s Sword by James Carroll. It was not what I expected from a seminarian and ex-Catholic priest. I expected more of a documentary explaining theology behind the peace movements. Carroll, during his priesthood, while a chaplain at Boston University, was a big part of the Christian anti-war movement. What the move actually is was very different. Part of my expectations were based on a lecture I saw that Carroll gave during the Religion & Violence Conference given last February at Trinity Church in Wall St. New York City. In that lecture he gave a fantastic analysis of the American civil religion and violence, heavily based on biblical themes though in no way actually backed by it. I got a story about primarily about anti-Semitism throughout the Christian ages. On its way through that story was the interaction with state-backed religion, and a smart bit of theology about it. The stories were incredibly moving. One of the most moving images was seeing the erection of a Cross directly outside the walls of Auschwitz by the then Pope. It is unfathomable to me that the institution of the church could be so insensitive. I highly recommend this film for all to see.

When the theme first hit me, I immediately had an interesting thought. In reconstructing the history surrounding Jesus’ crucifixion we knows “the Jews” is a highly misleading construct. There is no single party, Jewish or Roman to blame. And any party that could ever be called “the Jews” would only ever contain the aristocratic conservative wing of those in power. In my mind, it would have been just as easy to write “the politicians” crucified him. Imagine what two thousand years of that thought would have done throughout history.

Carroll’s journey as a priest, backward in time finding the origins of Christianity peaceful led him to join the peace movement as a priest during the Vietnam era. It led him to leave the priestly order as well. He remarks an amazement to now find that religion is once again a driving force towards hatred and war in our time. All at the service of the state.

I want to leave with just one quote, from a current Catholic priest:

If you want to make religion a constructive force in society, religions must begin with an honest admission of those moments when they haven’t been a constructive force, but a destructive force. The thing that frustrates me [to] no end is when religious leaders get up and suggest that religious leaders have always been on the side of good and virtue. Let’s be honest.
Fr. John Pawlikowski


The Next Gospel Tract

Posted: Thursday Mar 5th | Author: JohnO | Filed under: The Gospel | View Comments
Unfortunately Campus Crusade did not like this one.

Unfortunately Campus Crusade did not like this one.


[HT: MB]

Erasing “The Other” as a Category

Posted: Thursday Mar 5th | Author: JohnO | Filed under: The Christian Life | View Comments

I’ve talked here before about the category of “the other” and how Jesus and the theology of the NT changes approaching people that you find to be very different from yourself. Here Raffi talks some about too.

Human beings curved in on themselves.


That’s how Martin Luther defined “sin.” That picture, of a human being in it for himself/herself, is still the most widely used caricature of sin in use today. One is sinful primarily when one considers his/her own good. It’s a very individualistic, atomized picture.


It’s a straw man.

I would not go as far to call that a straw man as a whole. But if that is your only definition of sin – then your definition is certainly a straw man. As Raffi suggests many people would easily consider themselves sin-free. And most people are not entirely individualistic in nature. Many people of faith or no-faith freeing give money and time for various causes.

If we love and are willing to sacrifice for our families, to the exclusion and at the expense of all other families, we are in the clutches of sin.


If we love and are willing to sacrifice for our communities, to the exclusion and at the expense of all other communities, we are in the clutches of sin.


If we love and are willing to sacrifice for our nation, to the exclusion and at the expense of all other nations, we are in the clutches of sin. And perhaps more firmly in those clutches, since we often fail to realize it, given what we’ve been sold about sin.


It’s just a question of where you draw the circle, of where the arc starts curving in on itself.

The point of “the other” is make sure they don’t exist. We are conditioned to treat others outside our circle in in-human ways; to denigrate, marginalize, and ignore. That is sin. That is anti-Gospel, and anti-Kingdom.


Fiscal Responsibility

Posted: Tuesday Mar 3rd | Author: JohnO | Filed under: Contemporary Church, In the News, The Christian Life | View Comments

Reading this article gave me the same response

As I read about these companies I feel a sense of shame as a Christian.

The Muslim banks are able to make profit their second order of business, where their first is observance to Islamic law. And Islamic law is set up to ensure the continued existence of the communities and the faith.

But surely we Christians should have something to say to the lending crisis. Perhaps my rural parishioners’ restraint and discipline is a start. What do we say next?

I think that the Christian alternative to the American Dream is the answer. I’m not yet sure what that dream looks like. Perhaps that will be my next thesis.


Wise as Serpents, Innocent as Doves

Posted: Monday Mar 2nd | Author: JohnO | Filed under: The Christian Life | View Comments

A clever post by Raffi about being both innocent as doves and wise as serpents. It is fairly easy to be either of these extremes. I used to be a high-handed theological serpent when it came to people. I saw everything starkly and in black and white, except myself of course. I have definitely swung around like a pendulum to the the other side. I certainly did the “serpent” act wrong most of the time. Maybe I’m doing the “dove” act wrong most of the time as well. But that is why life is here. Live and learn, rinse and repeat. We have more than once chance. We are not the sum of our successes or failures. Though each of our successes and failures have consequences that we have to live with – for better and worse.