The Things that Must Connect

Ideas, efforts, capital, and more than everything else, the team.  This is something I hear time and time again, and know so very well, but it seems some companies still lack that insight.  To them the idea is the idea, the effort, or just the capital, the team is a second rank priority.

Those companies I would immediately sell them short, because they’ve sold the most important aspect of anything short, the team and the individuals of the team.

What about when those things connect?  It’s always a hard road, it is always difficult day to day in the beginning, but when all those thing connect under a good team, the company has a huge chance of success.  I’d even proffer to say far greater than the average business’s chance of success.

Everything from the operational needs of a company to the capital outlay, the people with experience will always tell you team first, everything else is secondary.  The first statement in the agile manifesto is, “Individuals and interactions over processes and tools“, which I can’t agree with more than I already do.  The individuals of the team are of the utmost importance, without, you have no team worth any effort, capital, or ideas.

On this topic, what are good ways to get teams to connect with the ideas, efforts, and capital of a project?  How does a team really buy into the ideas, stay strong during the effort, and were does one generate solid capital for a project?

The Team and Ideas

Google has one of the best methods for assuring buy in on ideas for a team.  It is one of the simplest solutions I’ve ever heard, let team members work on the projects they want to.  With this simple idea you get automatic buy in on the ideas of a project because it was chosen by the individual.

The Google solution of course does not work everywhere.  In places were there are only a few team members or a few projects to work on, there is only singular focus on a couple primary ideas.

A good solution in smaller teams is to find, at least that I’ve personally found effective, is to break apart architectural needs and goals into stuff people want, let them pick and chose, and then the remnants that no one really wants to touch, dole it out accordingly.  This way the unmotivated is somewhat avoided by the motivated.  Result, increased buy in for the ideas behind the project.

The Team and Efforts

What motivates a team to work together well?  One of the best things that works, especially from a management perspective, is an Agile process that places individuals together on a frequent basis.  However I’ll be the first person to point out that a weak team, Agile does NOT fix.  In those situations there are needs to have a strong leader, that can mitigate differences and initiate communication and assure that the individuals are working to bridge the disparate goals into the primary objective goal.  Either way, a strong leader is pivotal to assure good cohesion of the group, but things are even better by an order of magnitude if the team just works well together.

What about other forms of motivation?  What about the extra effort?  Well first off, I’m a strong proponent of not burning out team members and that means working a sustainable pace.  Unless one wants to throw away the project and start from scratch in the short term, a project needs effort from the team members in a sustainable, consistent, and smooth way.  If too much effort is expected, dire consequences are all that is left to be had, so work sustainable, and reap the good results.

So far these things mentioned are big picture things to get a team to really put together a strong effort.  The other ideas, that are far more effective than anything I’ve ever seen, are doing things together as a team outside of work.  I don’t mean require a bowling day with the team.  I don’t mean push everyone into doing something outside of work.  What I’m talking about is the good natured friendliness of people to have a beer after work, to check out a movie, to grab lunch together to discuss a few work related, or non-work related topics.  When a team is cohesive on that level, the team just naturally is more relaxed about putting forth a strong effort and especially about working a high speed sustainable project effort.

The Team Capital

The team capital can mean several different things; revenue or income related money matters, assets and equipment to work with, and any of a number of things that capital is needed to complete a project.  This major connection point is probably the second most important of all the connecting points.  Without solid capital and the tools that are purchased there is only so much a team can do without tools.  Sure they can hang out, talk, and even come up with solutions, but they can’t create those with capital and tools.

A major element of motivating a team and assuring a good sustainable effort is to equip a team appropriately.  I don’t mean they need a X Box in the corner and a 60″ TV to play it on, even though it would be nice.  What I’m talking about is making sure team members have appropriate space or even offices maybe.  Make sure the team has monitors, good solid monitors with high quality and maybe even dual monitors.  Make sure each member has good hardware and the appropriate software for their efforts.  If they’re a BA make sure they have solid specifications and analysis tools, make sure developers get the good tools like ReSharper, TestDriven, and others.  With the right tools, a project can then have the appropriate priority focus on the people and interactions, without the right tools the team just dwells on how to even finish their day.

So those are a few points I just wanted to make and also to provide a quick once over for people to read.  This entry is a kind of reference for how I like to start and work with a team on a moving forward basis.  It really is all so simple;  Individuals & The Team first, capital & tools second, find solid sustainable effort, and get buy in for the ideas of the project.

BlogHer in Portland? Slashdot on Sun Tzu Business Ethics! Stuff…

So as I scan through various entries, of the gazillion I try to keep up with a few news tidbits and ideas jumped out at me.  The first is the idea of getting the BlogHer Conference here in Portland, since it just lost the OSCON to… well I won’t even discuss were it is going.  Hazelnut Tech Talk & Silicon Florist both mention the prospective event here in Portland, so go read up and see if you can help out, or know of anyone else who could.

A Slashdot Entry I Read, WOW!

So there is an entry about two business professors from Harvard and Stanford that published ‘Divide and Conquer: Competing with Free Technology Under Network Effects‘ which is a somewhat interesting read.  I see it mostly as a stupid fight, as commercial software and open source can coexist, and would do even better if it learned to.  The old adage of Benjamin Franklin and his ideals of win win capitalism is much better than our current Sun Tzu crap that most of these leaders seem to go on.  I think the simple fact that Sun Tzu was writing about committing genocide against other peoples, winning wars were people would die, is lost upon many business professionals.  Many modern day business professionals would do well to learn more about the original business ideals held by the founding fathers all the way through to Lincoln even.

So really in the end, all us developers are going to transfer ideas, open source just helps us transfer those better.  Even now Microsoft of all entities even pushes for it via the CodePlex site and in other ways.  I disagree with the us vs. them idea of the Harvard and Stanford ideals in the article that are being perpetuated, but with the multi-billion dollar Microsoft even pushing the idea because of the appeal to so many developers, to the betterment of the industry as a whole, I don’t think the us vs. them mentality will hold out for that much longer.

Thinking Thoughts of Improving Software and Software Returns

I’ve been thinking a lot lately, especially after meeting many recruiters in the Portland area, about the various aspects, values, and returns that software provides for companies and the human and office infrastructure that we have built up around that.  I’ll have more entries based on these topics very soon.  The general topics that I’ve been batting around are all out there already, but somehow I’m starting to form a more cohesive picture of how things could create much better software and in turn much larger returns from the creation of better software.

Companies generally have a prime competency.  Microsoft makes software, so does Google, and so do other companies.  Bank of America, GM, and others like that actually, do NOT make software.  The later mentioned companies however do create a lot of software, but it is not their primary purpose.  The later companies focus on financial matters, cars, and other things.  The focus is NOT software.

So why do they spend so many millions and employ so many to build software?

So how about these companies get better at focusing on their prime motive of existence, their underlying business case, and get real software creators to build software?  Well in the past there has been many issues the biggest with the poor returns and products that so many large companies, like Bank of America and GM have received from outside software creators.  That begs the questions;

How does a company, who doesn’t have a prime focus in software, get quality, fast, decent priced software today?  How do we dispel and functionally remove the bad reputation of software among CIOs and other in the non-software companies?

This is were a lot of my ideas are starting to extract and pull some interesting things together.  I hope over the next few months I’ll be able to pull these ideals and effectively pull them together.

Of all these things, the primary driving force behind my conjuring ideas is that software should be better, get done faster, and especially be better priced here in America.  So stay tuned and I’ll definitely have more ideas, thoughts, and discussion points brought up by these ideas.

Efficiency, Performance, and Quality.  That is what I’m talking about.

Jeremy Miller on Cohesion & Coupling

As usual, Jeremy Miller does a rocking job on describing what are generally high level, complex topics.  I haven’t read the whole article yet, but definitely check out his recent on Cohesion & Coupling.  Definitely good topics to understand, and worth thinking through as it helps software development in many ways, for you, for me, for everyone in the field.

Summary Statement:  Go read it!

Solution Layout for High Ball

I added a graphic of the solution layout of the High Ball Application with some basic descriptions of the various sections.  I do want to however reduce the number of projects inside the solution, but for now I’ve left it in the very separated out way I initially created the solution.

My next idea is to get some initial views done to use as a starting point for functionality.  I’d like to complete the security administration section soon, so the other parts of the application can be further fleshed out.  I will admit though, I’m not 100% sure how I want to setup the security, and am currently brain storming the idea.  If anyone would like to jump in on that lemme know.

Laundry, Grocery Stores, Streetcars, and Hacking Away…

Just reading up on some thoughts being fed through twitter and I stumbled on one by @robbyrussel “today == laundry + hacking day”.  I couldn’t help but run through a few scenarios were I’ve seen people getting work done over the last few years.  Everywhere from the grocery store to the zoo bomb runs (before jumping aboard the ride).  Of course, one of my favorite ways to get work done is to jump aboard the streetcar and wire up with the SprintPCS card and work away.  For some reason, the streetcar, or MAX, is usually a great thinking place for me.

I’ve also read that maybe 5-15% of the people who could work remotely actually do.  A lot of that has to do with a paranoia from business interests about what an employee is doing and they are rightfully concerned.  I wouldn’t want someone to work remote, not do anything, grab a check and then disappear on me.  This fortunately is easily resolved with various modern processes and communications.  Agile itself bodes fairly well to remote work even, as long as those communication channels are maintained well.  I worked for about a month with someone completing work for me in Brazil, with just a few hours of communication a day, to remove roadblocks and hurdles, he (Jay! thx for the help!) was able to knock out the work tasks for the project super fast.

That leads me into another though, meddling over into my transit interests and economics in general.  A few assumptions stated; the tech market provides a vast amount of wealth in the US, it also consumes a vast amount of resources.

Technology workers continue their move toward more social interaction at work and to continue increasing productivity and efficiencies while decreasing our vast usage of the infrastructure. With these actions the tech sector alone could begin a revival of sorts within the economy itself!  But as I look at some companies that I’ll refer to as legacy companies, it is a slower move than it should be.  This shift to a more socially interactive, agile, and effective production method for software, and even hardware, in the marketplace needs to increase.

In Atlanta,Georgia and other auto-centric areas of the country the tendency for telecommuting has been increasing, but not nearly as much as it could.  In no ways would it eliminate the poor infrastructure design of Atlanta, that will take a lot of other work, but it would lead to more economic activity and allow for growth of more elaborate town centers.  Portland on the other hand, would probably benefit even more from this because it is already setup for this type of work.  Numerous individuals already work remotely in Portland, Oregon and have social interaction and efforts that make many legacy companies efforts seem arduously slow and cumbersome.

Just to name a few companies right off, that could drastically benefit from this even more are Microsoft, Intel, and other giants.  In many ways these companies have done great things with remote work, arguably their best work is done via remote effort.  They however could save millions a year on real estate and space needs by merely investing in local infrastructure and economic activity to provide places to setup these remote workers.  A coffee shop, a town center, simple meeting place for groups, are perfect for this type of effort.

The companies that have the greatest distances to cover to gain competitive advantage with remote work utilization are the real legacy companies.  These companies range from Ford, GM, Blue Cross, and other giant entities that really don’t build software as a primary revenue generator, but do build a lot of software.  These companies need to improve their management capability to better leverage these remote working abilities.  The advantages are too numerous to avoid.

When looking for work, always push for this type of work atmosphere, at least push for it being reviewed.  I can promise that any company that doesn’t take more advantage of remote workers will eventually lose their edge and fall to the wayside with the legacy companies that have already been put to death by inefficient and arduous old school thought.

It’s time to provide this freedom on a large scale.  Get with the progress.  Cheers!