Live data from Hacker News

Ask HN: Why can't programmers get along with business type people?

news.ycombinator.com

51–60 of 64 posts

Re: Ask HN: Why can't programmers get along with business type people?

#51
post #19

I believe it's largely down to short term goals versus long term goals. From the business perspective, the company should do things quickly because that means the jobs are more profitable, cashflow is stable, and the business team believe that they can always find more clients even if the product is horrible. This is the short term outlook. From the programmers perspective the company should do things slowly because…

On a related note, project management role tends to move quickly from one project to another, while the technical people are always responsible for the same area of the code/product.

As a consequence, what tends to happen, is that the project management tries to release as early as possible, and this is their primary role and they are accountable for it, but when you got a robustness issue in one or multiple customer site 6 months later, no one will ask the project manager to fix the issue, but the technical people will be under high pressure and will have to justify why the issue has not been caught earlier.

On the same vein, project management won't necessarily have any issue increasing the technical debt, since they might not be the one leading the next major product iteration, so they have the option to pass the debt to someone else so to speak. On the other hand, the technical team has never that option available.

This is an awful generalization, and some people are more mindful than other of the consequences, but this is a general tendency I have seen in multiple places. This is just another way to look at the long term with short term consequences.

Re: Ask HN: Why can't programmers get along with business type people?

#52
Here are my 2 cents, since i am involved in both management and programming.

Developers and programmers are often right about their opinions. BUT, that opinion is not always the output that company wants. Here is a simple example;

- Company wants to get rid of one of their products. (not enough sales, a new better product is planned, etc. )

- Dev lead wants to have extra resource for his/her team because of deadlines etc.

- It gets rejected

- Dev lead warns the company that releases will be delayed and customers will not be happy (true)

- Manager doesn't do anything about it because product's future is already decided.

- Dev lead is not happy about this decision.

It is kind of hard to satisfy both management and employees at the same time but that is the nature of it.

Re: Ask HN: Why can't programmers get along with business type people?

#53
Business people are only in for the money (and power). Programmers are little artists interested in something that in it's core has nothing to do with money. Programming is about a passion for creating things with technology. The main problem is that most people are taught, and still think, that money makes things possible, while in reality money is the most destructive thing mankind has ever encountered. Money hinders development in so many ways, not to speak of the horror it causes like: wars, poverty, abuse, pollution and much more. Business people do not understand this.

Re: Ask HN: Why can't programmers get along with business type people?

#54

Sometimes IT staff don't get on with people from "the business" and sometimes people from one department of "the business" don't get along with someone from another part of "the business". Usually stems from a lack of empathy. Often people get so wrapped up in their own department's work that they don't stop to consider how things are working in other departments and what pressures the other person may be facing. Tot…

You are not in business to "define, build, test and ship something". You are in business to make money and the development process helps with one of the ways to make money.

The first paragraph is spot on.

Re: Ask HN: Why can't programmers get along with business type people?

#55
Ethic. First.

People constructing are accountable for being able to build on time (announcing fair informations). Constructing/building a product (not only coding) require the most accurate information possible and accountability. People are paid mostly with a (lower than business) fixed amount of money.

People selling relies on assymetry of informations. They are paid on commission (often not on the benefits but a percentage of the gross sell).

The business are hired with an incentive to lie, the builders are fired if they do so.

Business makes all the more money that coding costs less, and vice versa. And both coders and business are understood to be valuable and listened to. This is a classical conflict of interest.

If you had the classical Babel tower problem, some social origin issues (business schools are expensive), and what could be considered an unfair share of the values regarding the costs for persons (remember a coder lose all IPs on its works and his paid less than a business person making money on their relation ships that they are «free» to keep), than you have also a very simple marxist doxa (know how to make money) vs praxein (how to do) problem of unfair repartition of value. And according to marx it results in conflict between proletarian (coders) vs capitalists (business).

To sum up, take whatever explication you want it is a stupid logical conflict: a power struggle (that need no symmetry) because as pointed here and there by other contributors the incentive/goals are differents but they share the future/resources of the same company.

Re: Ask HN: Why can't programmers get along with business type people?

#56

For me the division is mostly centered on quality. The sales I'm working with want me to ship whatever, ship fast. I want to ship quality. Since money always wins, this usually ends with me giving in, feeling bad about it and .. blaming the sales people for being short-sighted/focused on the immediate return only.

How many products (physical or virtual) have absolute quality? What is the price point and competitive advantage of your product? Software is no different than physical products in balancing quality with price. The only advantage software has is that we can improve the quality later.

If people buy your product because it has the fewest bugs and is more resilient when things go wrong then push hard on the sales team. But if your product gets sold due to it looking nice and having a few wiz bang features then give them some slack.

Re: Ask HN: Why can't programmers get along with business type people?

#57
post #36
post #30

Earlier quoted context omitted.

Also, programmers are usually "to the point" people, while business people love buzzwords.

Condescending remarks like this don't help the issue. A business person can also say "Business people are down to earth, while programmers love to use jargon that nobody understands." There are good and bad communicators on both sides.

There is a reason why anybody who works in a job in which he faces the laws of nature, will prefer a very precise vocabulary and will shy away from using words that could not possibly have an unambiguous meaning. It is exactly the opposite of what for example advertisers, politicians or business people do. They want to keep everything as ambiguous as possible. They do this because in their jobs they do not face the laws of nature but other people. So, it is way less of a problem for them than for an engineer. The bridge will simply collapse if the computations are ambiguous.

Re: Ask HN: Why can't programmers get along with business type people?

#58
A very generic question, so I'll put out a very generic answer.

"Business" is about making stuff people want. Business folks work with each other -- many times under low levels of trust and high levels of risk -- to make something people want.

"Programmers" already know what they're doing: programming. Therefore programmers really don't care so much about what people want. Somebody is paying them, so they program. They work inside a tight domain and usually with a small number of people that they get to know over a long-ish period of time.

These are two vastly different universes. Business folks are always using business skills to interact with coders: negotiation, price commitment, conflict facilitation, and so forth. They don't care what whiz-bang you are using to do the job. They just want the value.

Programmers are always applying programming skills to non-programming domains. Why doesn't the business know exactly what it wants? Why do they keep hassling us with providing estimates? How can people who are so clueless about things actually be running the marketing department? Why do they keep pushing for unrealistic schedules? And so on.

Very early on, organizations start stove-piping jobs. Bill is a CPA. He should only do accounting stuff. Joe is really good with people. We're just going to have him do pre-sales. Amit is a database guru. We'll have him do all the DBA work. We need to have some defined roles around here! Where's my job description?

This seems to make sense, but over and over again, this logical separation of concerns comes back to bite. After a year or so of doing just the "DBA work", whatever that is. He starts viewing things not involving database administration as a waste of time.

You keep that up over many years, and allow the company to grow? You've got a bunch of folks who all like the folks they interact with and see everyday, but are deeply suspicious and completely clueless about everybody else. Not a good thing.

Re: Ask HN: Why can't programmers get along with business type people?

#59
post #50
post #30

Earlier quoted context omitted.

Also, programmers are usually "to the point" people, while business people love buzzwords.

Not the most scientific test in the world, but Wikipedia's 'List of Buzzwords'[1] page has 79 for business and 82 for technology. Programmers love them more! [1] http://en.wikipedia.org/wiki/List_of_buzzwords

Many of the technology buzzwords are actually business buzzwords, not programming buzzwords. For instance, PaaS and SaaS are business models, not anything technical. Cloud and Digital Rights Management are marketing terms.
Post reply on HN