Sunday, December 29, 2013

Playing with roots of unity


This post doesn't have a goal, I'm just recording some behavior I came across. Sometimes people approach me at parties and tell me how interested their children are into math; now I can point them here.

 Let $p$ be prime, and let $\zeta$ be a $p$-th root of unity. This means that $\zeta^p=1$ (but $\zeta \neq 1$). For every integer $k$, defined $\epsilon_k$ to be $\zeta^k + \zeta^{-k}$.

 Note that $\epsilon_0 = 2$, and $\epsilon_k = \epsilon _{-k}$. Let's see how these multiply:
$$ \begin{align} \epsilon_k \epsilon_l &= (\zeta^k + \zeta^{-k})(\zeta^l + \zeta^{-l}) \\ &= (\zeta ^ {k+l} + \zeta ^ {k-l} + \zeta ^ {-k+l} + \zeta ^ {-k-l}) \\ &= \epsilon_{k+l} + \epsilon _ {k-l} \end{align} $$
Now I will show that all the $\epsilon_k$'s can actually be expressed as polynomials in $\epsilon_1$. First let's expand powers of $\epsilon_1$ using the binomial expansion: $$ \begin{align} \epsilon_1^n &= (\zeta + \zeta^{-1})^n \\ &= \sum_{l=0}^n \binom{n}{l} \zeta^l \zeta^{-(n-l)} \\ &= \sum_{l=0}^n \binom{n}{l} \zeta^{2l-n} \end{align} $$

Let's add the terms in pairs, starting with the first and last: $$ \binom{n}{0} \zeta^{-n} + \binom {n}{n} \zeta^n. $$ This is just $\epsilon_n$.

Now add the second and second-to-last terms: $$ \begin{align} \binom{n}{1} \zeta^{2-n} &+ \binom {n}{n-1} \zeta^{2(n-1)-n} \\ \binom{n}{1} \zeta^{2-n} &+ \binom {n}{n-1} \zeta^{n-2} \end{align} $$ which is $n \epsilon_{n-2}$.

In this way, every term pairs up with another term, giving an integer times an $\epsilon_k$ (remember that binomial coefficients are always integers!). When $n$ is even, there is also the middle term $\binom{2l}{l}$, coming from $l=n/2$. This term is actually even making it an integral multiple of $\epsilon_0$.

To summarize: every $\epsilon_1 ^n$ is an integral sum of $\epsilon_k$'s for $k$ <= $n$. Even better, it is $\epsilon_n$ + an integral sum of $\epsilon_k$'s for $k$ < $n$! Which means we can turn it around to say that $\epsilon_n$ is $\epsilon_1^n$ minus an integral sum of $\epsilon_k$'s for $k$ < $n$.

Why is this good? Because continuing in this way, we can replace each $\epsilon_k$ with an $\epsilon_1^k$ plus/minus some other stuff, which we can then replace in the next step. And each time our coefficients stay integers.

So we get that $\epsilon_n$ is an integral polynomial in $\epsilon_1$. Here are the first few for $n$ <= $4$, I'm just going to write $\epsilon$ for $\epsilon_1$ now: $$ \begin{align} \epsilon_1 &= \epsilon \\ \epsilon_2 &= \epsilon^2 - 2 \\ \epsilon_3 &= \epsilon^3 - 3 \epsilon \\ \epsilon_4 &= \epsilon^4 - 4 \epsilon^2 + 2 \end{align} $$

As I find time I will study these polynomials and record my results here. Feel free to make contributions in the comments!

Monday, December 9, 2013

Tracking invitations via external services

Let's say you are writing a mobile application which allows users to invite their friends via Facebook, Gmail, and services like those. To make things concrete, let's say your application lets users create shopping lists for parties, and lets users link to their Facebook and Gmail accounts.

So Farah gets the app, links her Facebook account, creates a shopping list and invites her friend Priya to collaborate on it. By linking to Facebook, she is able to access her Facebook friend list of which Priya is a member, so that's how she sends the invitation.

Priya gets a message from Farah in her Facebook mailbox. Here's what we want to have happen:
  1. If Priya already has the app, and has linked her Facebook account, she automatically sees the invitation when she next opens the app,
  2. If she doesn't have the app, she will download it (by following the app-store link conveniently included in the Facebook message) and link her Facebook account. When she does that, the invitation will appear in the app.
How can we do this? Here's my solution which is simple and easy.

The app's server will maintain two types of user objects - active users and passive users. An active user is one who has downloaded the app and registered as a user. A passive user is someone to whom an invitation has been sent, but who may not have downloaded the app yet.

Active user objects have a (possibly empty) set of linked external accounts. A passive user object will contain exactly one linked account.

When Farah sends Priya the message, the system will look for an active user object containing a linked account for Priya@Facebook. If it finds one, it associates the invitation to that user object so that Priya sees it the next time she logs in.

If there is no active user, the system will look for a passive user. If it finds one, it will associate the invitation to it, and if not, it creates one and associates the invitation to the new object.

When Priya finds and downloads the app, she will hopefully link her Facebook account. At this time the system will look for passive users attached to her Facebook account. When it finds it (and there should be only one), it will link the newly created active object to this pre-existing passive object, and via the passive user will gain access to all associated invitations.

Since the passive user object is not removed from the system, no lists containing it need to be updated. So Farah's party list will continue to hold a reference to the passive object, and when the system asks for the user it will "follow the links" to the active object.

Since the passive object acts only as a forwarding mechanism now, the information about the linked Facebook account can be moved to the active object to avoid wastage of space. And in fact we don't need to hold on to the passive object at all - we could just maintain a mapping from the passive object IDs to the active ones. So a "getUser" function would look like

getUser(userId)
{
  if(userId in passiveToActive.keys)
    userId = passiveToActive[userId]
  return db.findUserObj(userId);
}

Note that multiple passive objects could link to a single active object - this would happen if someone received invitations via multiple services. When they link those services this mechanism will pull all that passive activity over to the active account, which is just what we want.

Saturday, December 7, 2013

A Calculation involving Circles

This is a computation I did for a friend last month. We wanted to describe the set of points the ratio of whose distances from two other points remained fixed.

Let me say that better: I have two points in the plane, $S$ and $T$, and am given a positive fixed quantity $\alpha$. I want to describe the set of points $P$ for which

$$ \frac{\text{distance} (P,S)} {\text{distance}(P,T)} = \sqrt {\alpha}$$
The reason I put in a square-root is because I'm actually going to work with the square of this formula.

Notice that if $\alpha = 1$, then I just get a line. So I'm only going to consider the cases in which $\alpha \neq 1$.

I'll start by naming the coordinates of these points:
$$S= (a_1, b_1), T = (a_2, b_2), P= (x, y)$$

Then the ratio of distances reads as

$$\frac{(x-a_1)^2+(y-b_1)^2}{(x-a_2)^2+(y-b_2)^2} = \alpha$$

Now I'm going to do some algebra.

$$(x-a_1)^2+(y-b_1)^2 = \alpha((x-a_2)^2+(y-b_2)^2)$$

$$x^2-2a_1x+a_1^2 + y^2-2yb_1+b_1^2 = \alpha(x^2-2a_2x+a_2^2 + y^2-2yb_2+b_2^2)$$

$$x^2-2a_1x+a_1^2 + y^2-2yb_1+b_1^2 = \alpha x^2-2a_2\alpha x+\alpha a_2^2 + \alpha y^2-2y\alpha b_2+\alpha b_2^2$$

$$(1-\alpha)x^2 + (- 2a_1 + 2\alpha a_2 )x +(a_1^2-\alpha a_2^2) + (1-\alpha) y^2 + (- 2 b_1 + 2 \alpha b_2 )y + (b_1^2 - \alpha b_2^2) = 0$$

Now since $\alpha \neq 1$, I can divide by $(1-\alpha)$:

$$\left [x^2 + \frac{- 2a_1 + 2\alpha a_2 }{1-\alpha} x + \frac{a_1^2-\alpha a_2^2}{1-\alpha} \right ] + \left [ y^2 + \frac{- 2 b_1 + 2 \alpha b_2 }{1-\alpha}y + \frac{b_1^2 - \alpha b_2^2}{1-\alpha} \right ] = 0$$

Now I'm going to use a clever little transformation called "completing the square", which is basically a convenient rewriting of

$$X^2+2AX+B$$
as
$$ (X+A)^2+(B-A^2)$$

It's the same, you can check. I do this to both the $x$ component and the $y$ component (separately!), and get

$$\left [ \left (x + \frac{- a_1 + \alpha a_2 }{1-\alpha} \right )^2 + \left ( \frac{a_1^2-\alpha a_2^2}{1-\alpha} - \left ( \frac{-a_1 + \alpha a_2 }{1-\alpha} \right ) ^2 \right ) \right ]
+ \\
\left [ \left (y + \frac{- b_1 + \alpha b_2 }{1-\alpha} \right )^2 + \left ( \frac{b_1^2-\alpha b_2^2}{1-\alpha} - \left ( \frac{- b_1 + \alpha b_2 }{1-\alpha} \right ) ^2 \right ) \right ] = 0
$$

Now I move the constants (the parts not involving $x$ or $y$) to the right-hand-side of the $=$ sign. Watch those signs!

$$\left (x - \frac{a_1 - \alpha a_2}{1-\alpha} \right )^2
+ \\
\left (y - \frac{b_1 - \alpha b_2}{1-\alpha} \right )^2
=
\left ( \left ( \frac{- a_1 + \alpha a_2 }{1-\alpha} \right ) ^2 - \frac{a_1^2-\alpha a_2^2}{1-\alpha} \right ) + \left ( \left ( \frac{ - b_1 + \alpha b_2}{1-\alpha} \right ) ^2 - \frac{b_1^2-\alpha b_2^2}{1-\alpha} \right )
$$

And because $(-1)^2=-1$,

$$\left (x - \frac{a_1 - \alpha a_2}{1-\alpha} \right )^2
+ \\
\left (y - \frac{b_1 - \alpha b_2}{1-\alpha} \right )^2
=
\left ( \left ( \frac{a_1 - \alpha a_2}{1-\alpha} \right ) ^2 - \frac{a_1^2-\alpha a_2^2}{1-\alpha} \right ) + \left ( \left ( \frac{b_1 - \alpha b_2}{1-\alpha} \right ) ^2 - \frac{b_1^2-\alpha b_2^2}{1-\alpha} \right )
$$

END OF LONG CALCULATION.

What did this give us? Well, that final relation describes a circle of $(x,y)$ points, whose center is

$$\left ( \frac{a_1 - \alpha a_2}{1-\alpha}, \frac{b_1 - \alpha b_2}{1-\alpha} \right )$$

which we can write as
$$\frac{S-\alpha T}{1-\alpha}$$

The square of the radius of this circle is

$$ { \left ( \left ( \frac{a_1 - \alpha a_2}{1-\alpha} \right ) ^2 - \frac{a_1^2-\alpha a_2^2}{1-\alpha} \right ) + \left ( \left ( \frac{b_1 - \alpha b_2}{1-\alpha} \right ) ^2 - \frac{b_1^2-\alpha b_2^2}{1-\alpha} \right ) }
$$

$$=\frac{{(a_1-\alpha a_2)^2-(a_1^2 - \alpha a_2^2)(1-\alpha)+(b_1-\alpha b_2)^2-(b_1^2 - \alpha b_2^2)(1-\alpha)}}{(1-\alpha)^2}
$$

Let's simplify the numerator. We start by expanding it out:

$$(a_1^2-2\alpha a_1 a_2+\alpha^2a_2^2)-(a_1^2 - \alpha a_2^2 - a_1^2\alpha + \alpha^2 a_2^2) + (b_1^2-2\alpha b_1 b_2+\alpha^2b_2^2)-(b_1^2 - \alpha b_2^2 - b_1^2\alpha + \alpha^2 b_2^2)
$$
Lots of these terms cancel one another, and in fact we are left with
$$\alpha(a_1^2-2a_1a_2+a_2^2) + \alpha(b_1^2-2b_1b_2+b_2^2)
$$

$$=\alpha ((a_1-a_2)^2 + (b_1-b_2)^2)$$

So the radius of the circle is (the positive value of)

$$\frac{\sqrt{\alpha ((a_1-a_2)^2 + (b_1-b_2)^2)}}{1-\alpha}
$$

which is $\sqrt\alpha/(1-\alpha)$ times the distance between $R_1$ and $R_2$.

In summary

The set of points which have a fixed ratio of distances from two other fixed points is either

a. A line, if that ratio is 1
b. Another circle, whose center is $\frac{R_1-\alpha R_2}{1-\alpha}$ and radius is $\sqrt\alpha/|1-\alpha| |R_1 - R_2|$.

Valuation, Money, Trade / Part 3 / Currencies and Trade

Currencies
Now let's throw in the fact that societies developed separately. It would have been great if the world had a universal measure of value from the start, but unfortunately this is not how things happened, and money developed differently in different cultures and countries, and societies developed pride in their currencies and saw them as symbols of their identity. They were still transacting with one another though, so the valuation table needed entries to translate between different currencies now.

Suppose we take two currencies, cA and cB, and consider their valuation tables' entries for cows.

1 cow = 5 cA
1 cow = 10 cB

Well, great! We conclude that 1 cA = 2 cB.

Oh but wait, let's look at the entries for bathroom tiles.
1 tile = 1 cA
1 tile = 1.5 cB

Oops.

This is hardly unexpected - it is a reflection of how different societies have different valuation tables because of their different priorities, wants and needs, and access to resources. But it makes finding the combined valuation table's entries complicated.

So instead of trying to "solve for" the cross-currency ratios, we do something different. We make the currencies themselves things-to-be-transacted, and let individuals and societies create entries for external currencies. So the society with currency cA would have an entry in their valuation tables which looks like
1 cB = <some number> cA

Trade
Now who even needs these valuations? Why would a member of society A require the currency of society B? The only reason would be that they need to transact with members of society B i.e. engage in import and export.

So the trader in bathroom tiles would use one ratio, and the trader in cows would use another. But if they're smart, they will trade in both tiles and cows! Let's look at the perspective for a trader from society A, the case for B is just the opposite. We will use the numbers from above.

Trader A takes 15 cA and buys 3 cows. He sells these cows in society B for 30 cB. With those 30 cB he buys 20 bathroom tiles, which he brings back home and sells for 20 cA. His profit from the transaction is 5 cA.

Why couldn't he just keep doing this? Well, sometimes he can, and some people do. But usually what happens is that the other people in these transactions realize what is happening and start adjusting their prices - the cow seller in society A starts charging more for her cows and the cow buyer in society B starts paying less. Or a similar price adjustment happens with the bathroom tiles - in both cases the valuations of societies A and B start to converge.

The problem with prices converging, is that people who are not engaging in these clever cross-border trades start getting screwed. Cows become more expensive for everyone in society A, not just to our trader. And bathroom tiles become more expensive in society B, leading to great unhappiness on that side.

On the one hand one could say to the people in society A - "Look, they are willing to pay more for cows, why don't you just send your cows over instead of milking them or eating them yourselves?". But people want their cows, dammit, and they'll be damned if they're going to be forced to send them over to society B.

Duties / Tarrifs
So they band together collectively and raise the price of transporting cows across the border. The price of the cows stays the same, so they continue living happily, but the cost of doing the clever (nefarious!) cow-tile trade goes up. Now the cow-tile trader is not making so much money, and after society B enacts a similar rule on bathroom tiles, societies A and B continue to see their old prices for cows and tiles.

If the cost of doing business (the duty, or tariff) is too high, the cow-tile trader won't engage in the transactions. But the people of societies A and B are quite smart, and they don't make those costs that high. Instead, they raise them to where the trader makes only 2 cA per transaction instead of 5 cA. Now 2 cA is better than nothing, thereby giving him incentive to trade, and the remaining 3 cA gets taken in duties and is used for the beautification of the public parks. (That 3 cA will actually consist of some cA and some cB... you can figure out the details).

The last example showed the trader as being the "good guy" trying to do business despite the obstacles put in place by the duty-regimes in both nations he wants to trade in. Here's another narrative, which has also occurred several times in history. Let's use the same valuations for cows and bathroom tiles as before:

1 cow = 5 cA
1 cow = 10 cB
1 tile = 1 cA
1 tile = 1.5 cB

Again, the trader will buy tiles from nation B and sell them cows. The differences in this scenario are:

  1. The trader has an abundance of cows to sell, so domestic prices are unaffected
  2. The trader deploys soldiers in nation B and tells them not to raise their tile prices. Oh, and they better buy all these cows which are being sent over the border.
(Sometimes the soldiers weren't even necessary - say if the "cows" were opium and "nation B" were China...)

In fact coupling soldiers with traders is basically how European colonialism worked, certainly in Africa and Asia. I don't know enough about other types of colonialism to comment here.

Today nations don't need to deploy soldiers (although that still happens). There are other ways to coerce other nations in matters of trade.



Valuation, Money, Trade / Part 2 / Valuation and Money

Valuation

Value is hard to measure, mostly because as individuals we have different goals and therefore different valuations for different things. Not only that, even our personal valuations change, some over the span of a few hours and some over our lifetimes. Our valuations change according to our moods, the moods of our loved ones, even according to the weather. "I don't feel like it right now" often means "That action does not have sufficient value for me at this time".

But valuations are necessary, because we need to interact with one another. We need to eat, and so unless we grow/hunt our own food, we need to get it from someone else. We need shelter, so unless we build our own houses we need to buy materials and hire engineers. In fact if we tried to be self-sufficient (live as isolated economic units) we wouldn't get a whole lot done. The power of life comes from the exchange of value, or commerce.

Note that I use the word commerce in the broad sense - to mean the exchange of value. The value being exchanged could be goods, ideas, or a music concert.

Also note that value is always exchanged, never transferred in one direction. Perhaps it is like energy is in physics, the thing which is preserved over a reaction. Even when a thief points a knife at you and takes your wallet, you have effectively exchanged your cash for your physical well-being (minus your emotional trauma!).

Money
So we needed a common peg for valuation, and came up with money. Money has been around for a few thousand years (Sumerian coins etc.) and its main purpose is to allow us to create a translation table:

  • 1 cow = ? sheep
  • 1 back massage = ? soccer balls
  • 1 hamburger = ? lipsticks

With money, we just need to answer the questions

  • 1 cow = ? money
  • 1 back massage = ? money
  • 1 hamburger = ? money
  • 1 sheep = ? money
  • 1 soccer ball = ? money
  • 1 lipstick =? money

and then do arithmetic.

What should we use as a proxy for money? We could use gold, and then the table above would have one entry saying "1 piece of gold = 1 money", and all the translations and arithmetic would work. We could also use any other entry e.g. "1 cow = 1 money" for that matter.

The problem with using cows is that as the number of cows in your society (or economic system) changes, or as their uses change (leather replaced by plastic, more or less vegetarians...), the table will need to change as well. Not that the table isn't changing anyway, but it would help if it didn't change due to the choice of money.

For this reason gold is actually a good choice because it doesn't have a whole lot of intrinsic value. Even stones are more valuable - you can build houses with them. If something doesn't have a lot of value, that value isn't going to change, which gives the valuation table more stability.

This wasn't the traditional reason for using gold. People throughout history used gold, silver and gems because they were rare and pretty. And they were small and could fit into your pocket.

Even better than gold is something which doesn't even occur in the table, something entirely made up. In fact we can just call it "money", and we would still be able to do translations and the arithmetic necessary for commerce. This "money" doesn't even have to be a thing, its just a unit of measurement. And because it's not a thing, we need to find proxies to carry in our pockets and purses, and somehow coins and paper fit that just fine. They're not perfect, because they have intrinsic value, but we try to make that intrinsic value very low as compared to the value they represent, and expect for a few examples with low-value coins, we mostly succeed.

Valuation Tables
Whatever be the unit of money, we need to build valuation tables. Individuals have their own valuation tables, and while the entries might change, they move within ranges. Valuations for a group of people are determined by the individual valuation tables along with the transactions which occur: suppose person A wants to buy a bottle of water from person B, and suppose there is no "market" with established prices yet. Person A has a valuation, say 5 money, and person B has a valuation, say 7 money. If people were rigid and adamant no transaction would take place, but in reality people are flexible and person A's valuation is actually "4 to 6" and person B's is "6 to 8", so they settle on 6 as the transaction price.

Throw more people into the mix, and you get market pricing. Buyers are willing to pay something, and sellers are willing to sell for something, and if they can't find common ground no transaction takes place. If the buyers want it badly enough they will raise their valuations to come in line with the sellers', and likewise if the sellers want to sell badly enough they will lower their prices.

In this way, an economic system gets a valuation table. Like the individual tables, it is constantly changing by little bits, but for the most part the entries move within nice small ranges.

Thursday, December 5, 2013

Wanted: Cartooning as a Service

I like to read. I'm interested in language and etymology, and I like how good writers can put thoughts and feelings into the minds of their readers. Apart from the use of language as a medium of communication, I'm interested in other means of transferring ideas. And lately I've really started to appreciate the power of pictures and animation.

I think this comes from watching YouTube videos, like this one. Or even text with pictures, like this, or this.

So I find more and more that when I am thinking out a long story, I really want to put pictures in. When I have to create corporate presentations, I wish I could make them like this. But I can't, because I can't draw or make cartoons.

So here's what I would like: I want a way to hire the services of a cartoonist on a contract basis. I'd like a site which will let me specify a few parameters, like:


  • Stills or Animation


  • Drawing style - Stick figures, DC comics, South Park etc.


  • Length - time or number of frames


  • with maybe a short description. Then artists get to offer their services if they're interested. I would see their portfolios, as well as their customer ratings and their rate cards. 

    I figure there are a lot more people out there with solid drawing skills than there are jobs for them. And there are a lot of people like me who cannot draw to save their lives. I found Cartoonists for Hire but it's not quite what I'm imagining.

    What do you think? How much would you pay for this service? 

    Wednesday, December 4, 2013

    Valuation, Money, Trade / Part 1 / Structure and Ideas

    Structure
    Structure is the difference between sand and a sand castle, between paper & ink and a book. When you have structure, the structure has value. I will call this the structure's intrinsic value, as opposed to its perceived value, which requires a sentient being/intelligence to perceive it. This may be the opposite of entropy, at least in the sense I understand entropy.

    It may be that structure requires intelligence, but I don't think that's true. I don't even know if it is a property of our physical universe/ reality, or a fundamental property like 1+1=2.

    Whatever be its source, and whatever be its long term behavior, it is clear that on our planet structure is constantly being created. It seems that there are two primary sources:
    1. The Sun - by providing energy for life (whatever that is). Without the maintenance of certain temperature ranges, the chemical reactions for life would not occur. Worth making note of is also photosynthesis, which creates the structures of plants, which provide food to animals, which provide food to more animals.
    2. Intelligence - here I will focus on human intelligence since it has the most impact. We build things - farms, houses, roads, cities and global communications networks. We have ideas (whatever those are) and record them - in writing, painting and song. 
    The things we write define our civilizations and our cultures; we write stories, plays, poems, we write musings on matter and the universe, on life and on consciousness. We write rules to run our societies, which could be at the level of nations or of the local chess club. If a society can be interpreted loosely to mean a group of people, then even business, collectives and corporations are societies, run by rules.

    Goals
    The strangest thing about this whole setup is that nobody knows what it's for, and yet it keeps going. "Write down your goals!", the consultants and career advisers say. "Why don't you have a plan yet?", your family and friends will ask you. These are valid questions, and I think individuals should answer them, and continually refine their answers as they go through this journey called life. But let's not forget that as a group, as a species, we have no idea what the goal is, or if there even is one.

    This means that we (i.e. humans) are all trying to advance, to get ahead, to progress, but without any common goals.

    We have goals in common, here are some obvious ones:

    1. Stay alive
    2. Stay warn
    3. Stay healthy
    4. Find love
    5. Find sex
    6. Find ways to get high
    7. Pursue hobbies and interests
    8. Acquire property
    9. ....

    So there are plenty of goals we hold in common with one another. But it's harder to write down common goals, goals for the species. Here are some questions:

    1. Is the planet to be treated as a source of resources to be farmed, or as a cradle to be nurtured?
    2. If we had to choose, should we pursue Knowledge, or  Love & Happiness?
    3. Should we try to improve upon our biology, or is that "playing God"?

    Individuals have their own opinions (or not), societies may have majority viewpoints, but as a species there is little that we agree on regarding the direction we should move in. And so far, that hasn't stopped us from moving.

    Ideas
    Ideas are created, some are adopted and some are ignored. Some catch on like wildfire, some take years to incubate. Ideas gain power through adoption, one could even define the power of an idea via the number of followers it has. But let's ask why an idea would gain followers - you will find that people will follow/believe/propagate an idea if it does something for them.

    • People in a city will follow traffic rules if it eases the flow of traffic and allows them to get to their destinations faster
    • Some people follow a religion to give them a sense of belonging and security
    • Some people follow a religion to get answers to fundamental questions on the meaning of life and their purpose for being
    • People in companies will follow business processes to avoid making mistakes and extra work for themselves and their co-workers
    • Programmers will use certain languages and tools which allow them to be more productive

    The power of an idea lies in its ability to create value.

    Notice that I am not talking specifically about economic value. Some value could clearly be called economic, but some can't and then there's an entire gray area so I'm not going to get into that.