Note: Long Read
Background
The title of this work is something of a misnomer as the reader will discover in the developing narrative. It is obviously deliberate and probably a miserable attempt at trolling, but it encapsulates a direct response to all those agents and principals who continue to evaluate the nature of the job and talent market of African software developers based on a premise whose Boolean value is not dissimilar from the eponymous theme of The Flat Earth Society, an organization that continues to promote a fallacy across the world against centuries of scientific and empirical evidence.
Just as pre-Copernican astronomers developed elegant mathematics based on the underlying falsehood of a flat earth, these investors and thought leaders have sponsored ideas based on false premises, oversimplifying the issues involved using the most available set of heuristics and consequently reaching conclusions that are apparently quite logical, such that we are yet to see any serious challenge to their common stance on the public Internet.
Skyscrapers on Quicksand
Here are the fascinating ideas these entities have propagated across digital media:
- African Slavery risks being repackaged, and reborn as global software and technology continue to advance at a breakneck pace, leaving the question of the economic development of Africa blowing in the wind.
- A business whose mission is to train and export African software developers to the western hemisphere effectively lowers the software development cost of its client companies, enabling them to remain globally competitive against local businesses and markets. (Troll: Do not assume western hemisphere here to be a proxy for any entity that can afford to pay higher, international prices for premium quality software work, regardless of its GPS coordinates)
- A corollary of point 2 is that this export business activity is not local market friendly, essentially harms local businesses’ competitiveness and considerably weakens their ability to access cheap local talent, crowding them out of the market for high quality software work. An interesting phrase has been coined to describe and possibly provide a measure of this market dynamic – Ecosystem Impact Assessment (EIA)
- What follows is that strategies adopted by a company that specializes in the described business area to meet its obligations and commitments to foreign clients, strategies such as hiring out elite (not in-house trained) developers for export, creates imbalances within the identified ecosystem, yielding a negative EIA value and, in the larger society, a significant nuisance value.
- There is a linear relationship between the narrowness of the hiring funnel of a company and the economic value it adds/subtracts to/from its country of operations. If a company – in this case a software company – has depressingly low hiring rates, say below 1%, this does not add economic value to its country of operations; therefore there exists a causative arrow from high hiring rates to accretive domestic economic value.
Readership
This work, apart from being a response to the prevailing narratives in certain quarters around West Africa, is directed at an audience interested in understanding issues beyond mere instances and anecdotes. Therefore, we discuss many of the issues at the abstraction level of underlying principles and only use instances sparingly. The no-time, short-attention-span skimmer is referred to the many resources available online specially packaged to meet their understandably unique reading requirements.
To work with the right context for thinking about the concerns raised, some elementary concepts governing the subject matter will be introduced and explained. In places where practice diverges from theory, these shall be noted accordingly. We have put in a lot of effort to keep things as simple as possible but not simpler (mathematical proofs and game theoretic analyses, for instance, have been skipped). Developing the main ideas from first principles and staying as close to primary sources as possible, let us begin.
Distributed Networks and Scale
A cursory understanding of distributed systems and their properties is an important mental model for making sense of the issues at hand.
According to Vinton Cerf, co-developer of the TCP/IP communication protocol suite underpinning the Internet, the geometry of the network (more correctly, topology) of the Internet is distributed. Natural approximations of distributed systems can be found in many biological systems like the brainless slime mold and schools of fish which all evidently predate the Internet.
The fundamental computing unit of a distributed network is a node. Figure 1 below, image c, shows what a distributed network looks like, relative to other forms of network topology. For simplicity, we shall go ahead and conflate human operators and intelligent (and dumb) devices as nodes. What does this arrangement of transacting participants afford its users?
- There is no single point of failure; this design property may seem inappropriately named. It does not imply that there is no single point of failure. It means that no single failure of a node or group of nodes can become an existential threat to the entire network. If one of Netflix’s many web services falters, this event does not stop the interested reader from looking up extra materials on distributed systems on Google. Netflix services may be down, but Google will respond to your query. Netflix and Google have millions of nodes deployed on the Internet.
- The movement of data across the Internet is not centrally planned – there is no centralized arbiter dictating how data should be transmitted once it has left its originating node; the best path from origin to destination is algorithmically computed at the instant the system is required to move data from node to node based on standardized protocols.
- Save for communist China and a couple others on the fringe of censorship (which can still be subverted), there are no barriers to the transmission and reception of data on the Internet. The Internet flattens geographies, giving little meaning to national boundaries and regional lines.
- Advances in the supporting infrastructure of distributed networks from cloud computing to highly flexible degrees of automation have made it possible to scale almost any idea to billions of people on the planet.
One of the direct implications of these assertions is that any arbitrage that would traditionally exist among pricing structures for various services in brick-and-mortar settings due to a dearth of market information will now analogously exist in an online business area only if a node (read here, a participating entity on the network) is unaware of what obtains on the distributed network for such services or, for some other reason, has chosen or been configured to be willfully ignorant – a dumb endpoint. It also means that if any arbitrage opportunities exist as a result of the locality of markets and geographies, smart nodes can exploit these differentials, seeking the highest total return for their time and efforts.
A simple analogy based on (human) nodes. Two hypothetical software developers, Alice and Bob, with the same skill sets and located in the same geographical area, basically have very similar potentials but the realization of these potentials is a function of how much network information they are able to extract and create value from and how consistently they are able to do this over time spent on the network.
Alice, aware of the huge possibilities on the network, may position herself properly, advertise her portfolio of services on a personal website and social media, consistently deliver high quality on remote jobs, actively contribute to the value of the network through various means and generally increase (and improve) her visibility on the network. Bob, on the other hand, while possessing similar intrinsic value may never codify these abilities on the network to any significant degree of consistency or contribute these abilities to the overall network value – but he continues to remain locally relevant.
One has leveraged the scaling properties and configurations of the network to increase her value, while the other has unconsciously decided to restrict his sphere of relevance to his geographical location regardless of the characteristics of the network of which he is a member. While located in the same geographical region and possessing very similar skill sets, two software developers, by their selfish choices, have sharply diverged in their actual values as perceived by the network who, in this case, is the observer.
From Nodes to Clusters
Our example of locally similar nodes attracting widely different premiums on the network can be extrapolated to clusters of nodes and related resources on the same network. An emergent property of distributed networks is that they tend to self-organize – motivated, high-value nodes may aggregate and increase their perceived value to the network so that the whole [cluster] becomes greater than the sum of its parts. Power-law effects [1] introduce systemic inequalities as a natural result of this aggregation of high-value resources.
Italian sociologist and philosopher Vilfredo Pareto laid the first foundations of power-law effects from his observations of income distributions and land ownership, and ultimately originated the generalized 80/20 rule which is now observable in fields and systems as varied as physics and financial markets.
Power-law effects, for the case in point, mean that a cluster of nodes on the network contributes a disproportionate amount of value and resources to the network relative to its size. It also implies that this cluster extracts an outsized value from the network. It is important to state here that power laws are scale invariant – it is possible to observe their properties and effects at any scale given the same distribution [2].
The scale invariant property is particularly important as it highlights the universality (and hence neutrality) of the phenomenon. There is no organized conspiracy going on. The value extracted by the cluster can range from pecuniary rewards to intangibles like goodwill and brand recognition. The morality and fairness of the equation – contribution versus gains – of this interaction between a cluster and its enveloping network is not the thrust of this work.
It would also help to keep in mind that the general progress and survival of distributed networks has depended on more than a consensus of the majority. Adaptability and flexibility get higher marks. The high-value nodes and resources available to clusters also strengthen their reach and impact. This planetary scale characteristic engenders a self-reinforcing cycle that adds more value to the already very valuable cluster, sparking the unintended consequence of inequalities in the network.
Section Summary
We have now successfully described the technical operating environment of the treacherous company described in the opening section (which is a type of cluster). Therefore, we are clear on one axis of context. Distributed networks essentially transfer the onus to the nodes. This highlights a very important point; it is possible to incentivize a network of players to behave in a particular way based on payoffs using technology.
It should be immediately evident that the incentive structures of distributed networks lean towards combining resources to deliver value to the network. It should also be noted that arbitrary combinations do not blindly lead to the delivery of value. It is possible to have value destroying combinations, but these obviously cannot withstand the forces that launch daily offensives on existing structures. Not for the long haul.
Therefore, the quality of the combinations surely matters. We shall now try to provide answers to the economic and social questions on why these combinations develop in the first place, and investigate how the nature and culture of distributed networks influence these answers.
Open Source Philosophy and the Theory of the Firm
In November 1937, British economist Ronald Coase published his seminal treatise, The Nature of the Firm, and sparked the discussion on why firms emerge, explaining that they are clusters of resources and heterogeneous agents where relationships are based on hierarchical, command systems rather than market-based channels [3]. In relation to this theory, Coase also floated the term, transaction costs – the general costs of interfacing with and conducting business activities using the market system.
According to his propositions, firms emerge when the gains of conducting some business activity is less in markets, net of transaction costs, relative to undertaking the same business activity within the organization, while they fade when the opposite is true – in-house costs are higher relative to the cost of interfacing and transacting through markets channels.
Transaction costs are particularly important as the results of analysis here lead to tradeoffs which guide the decisions of firms on interfacing with markets. Various forms of this theory have largely explained the motivations for the emergence of companies across various industries especially as the prevailing production cost models of the last century were simply better-looking derivatives of the industrial age.
Open source technologies represent a direct challenge to this historical model of conducting business and production activities. Open source, here, describes the publicly accessible nature of the development process and inputs that lead to some product (we restrict our scope of products to software for obvious reasons) at almost zero cost, leaving the product open to modification and redistribution by its users. In this sense and to this extent, open source technologies are free.
The open source movement, relying on the earlier described properties of distributed networks, provided a sustainable solution to the age-old problem of information asymmetry in firms (due to managerial hierarchy and command centralization) and markets (due to the Agency Problem), and shifted focus to the problem of the sourcing and optimal allocation of human ingenuity [4].
Solving this information asymmetry problem was particularly crucial as it reimagined traditional command hierarchy and dismantled workplace idolatry, freeing up a lot of creative energy to collaborate and find expression through the many useful products and services witnessed over the last three decades. The spread of open source production models flies in the face of the theory of the firm on the following grounds.
First, the definition of transaction costs for interfacing firms with markets can no longer be generalized across industries as open source philosophies effectively break down this requirement for a specialized transaction interface – any entity who has need for an open source software product can go ahead and fork it, modify the codebase and redistribute as required.
At the simplest level, the end user does not need to retain the services of a law firm in order to fork a project (per contractual rights), neither does she need to remit some fraction of profits from a modified, commercialized version of the product to the maintainer of the original codebase (per property rights).
This does not mean that there are no production costs under this paradigm; they exist in open source, not in the traditional forms of property and contractual costs but appear in the form of organizational costs such as the cost of integrating geographically distributed teams, filtering out incompatible contributions from the forking public and controlling the dynamics of continuous collaboration to produce some useful product and provide accompanying support.
Second, in traditional markets, price signaling remains the dominant mechanism by which different agents and resources announce the cost of interfacing with other agents to achieve some business goal. This goes to the core of work motivation and how individual agents in an economic system are incentivized to act in a (classically selfish) manner that ends in the delivery of value to the whole network.
Open source production systems do not follow this established signaling mechanism – not as directly. These peer-based production models are differently motivated. At the center of the motivation framework here is the individual open source contributor. Without trivializing the question of her economic situation at any instant in time, the individual open source software developer typically desires much more than money from her contributions to the community and is not entirely animated by money when considering the work of collaboration ahead of her.
For the record, altruism is not the reason thousands of lines of code get written by this individual [5]. Modern open source developers believe almost religiously that their lines of code, preserved and timestamped for all time by distributed versioning systems, satisfy their intellectual curiosities, bring them respect and performance attribution in the community, influence global business directions through innovative products and transcend the mortal plane of the common lucre that incentivizes other production systems.
This individualistic, ego-leaning, belief system however flawed – like all belief systems – is particularly very powerful and forms one of the main pivots at the margin of decision making for the developer. To be clear, human nature has not undergone some fundamental change because of mere interactions with a machine by code, money still answers everything, however, a dimension of motivation to work that produces globally useful systems and products which has not been fully appreciated has revealed itself.
It is important to note that the openness and approximately zero cost property of the raw material required to produce useful products (which typically become inputs to other products) reinforces this belief system.
The Agitations of the Firm
To fully participate and take advantage of the many opportunities available over the next couple of decades, it has become necessary for traditional firms including new ventures to digitally transform and adapt their business processes and operations into valuable nodes on the distributed network of the Internet.
From the point of view of the network, it does not matter whether their operations are local or international; recall one of the stated properties of distributed networks – the network retires your GPS coordinates to the backseat except for very niche applications such as narrowing a search to your region for ads and personalized services, identifying IP addresses, etc.
To bring these various business activities and processes online and maintain them to a degree of reliability that guarantees high operational availability, firms require the services of another set of nodes – system architects, software engineers, system administrators, etc.
At this point, it is important to separate software companies (whose main business is to architect, develop, test and deploy software for commercial purposes) from non-software-producing firms (e.g. an accounting firm) who may also require the services of the former to achieve this crucial digital transformation. Keep in mind that the distributed network is agnostic to the business of nodes that join or already exist on the network. There is no intrinsic preference for the accounting company or the software company over any other firm (though these entities may take steps to become highly valuable to the network).
In approaching this problem of joining, offering services and playing successfully on the network, certain gaps in the mental faculties of the non-technical firm become evident especially in their implementations and constant frictions with the agents that catalyze the digital transformation process.
First, to a large extent, local companies on the cusp of digital transformation do not really understand what it means to join a globally distributed network. A lot of internal thought processes are restricted to local obsessions – this is not entirely disadvantageous, but it leaves business thinkers and strategists unprepared and highly vulnerable to negative externalities. These entities approximate the role of information technology in an organization to another unavoidable cost center and simply an enabler.
Second, in the cases where it seems some understanding may be assumed, the fluidity and flexibility of the global software talent marketplace completely escapes them: they wrongly assume that this talent market is exactly like theirs, set up with the same rigid human capital allocation rules and structures that have defined the success of century-old, staid enterprises. These entities could not be more wrong.
The logical conclusion of the opening section on the philosophy of the open source movement is that the individual software developer becomes the focal point of all analysis of production resources – not capital or the other classical means of production. This shift is antithetical to the traditions of Ronald Coase’s firms who view human capital as easily dispensable – if you decide you cannot continue to flip switches 40 hours per week, there are many able fingers in the labor market more than willing to give up their digits for little more than minimum wage.
Under the prevailing thought process of the local firm’s evaluation of the software developer and her role, it has got to be possible to separate a human being from the ingenuity of that human being – it should be possible to appropriate value without great considerations to the dispositions of the vessel that carries the valuable resource. The open source model of production effectively destroys this dichotomy from the ground up.
Section Summary
While the traditional cost structure of conducting production, activities remains at the center of many business decisions, open source production models present a different perspective. At the core of this perspective is a costs and benefits analysis from the point of view of the individual software developer, which now presents us with a second axis of context for offering certain recommendations.
General Recommendations
We now provide some general guidance on navigating the global software talent marketplace and how to think about the evolving relationship between the software developer and the firm. This is by no means an exhaustive set of recommendations. We encourage the interested reader to fork and extend this work in the spirit of the open source movement.
- Firms should begin to internalize the fact that they are no less plugged into the proverbial matrix than they are now part of a planetary scale network. This realization will bring the mental shift they require to correctly evaluate opportunities and risks as they deal with the agents known as software developers. To distill this point further, the market of the African software developer is the world, therefore any thought process that assumes the African software developer will persist in some form of ignorance about the potential scale of her reach, limiting her to only local market realities, will be blindsided.
- A corollary of point 1 is that, based on this realization, the firm that desires to remain competitive and lower costs (at some reference standard and quality) will need to get innovative about the sourcing of talent which is precisely what firms in the western hemisphere are doing. Local companies may require government policies that spur innovation and competition in this direction and, so they will need to lobby in this desired direction accordingly. An interesting idea is to work with universities and others to geometrically increase the supply of science, technology, engineering and mathematics (STEM) talent from local feeder educational institutions. A greater pool of talent to feed local and foreign companies from translates to higher supplies left after many have gone through the hiring funnels of foreign-serving local companies.
- Based on our analysis of open source philosophy – their raw material costs (the cost of publicly available information), the low barrier to enter the industry and their general motivations, firms must recognize that developers have little or nothing to lose from saying no and quitting. The odds are obviously stacked against the local firms who want the best of the global marketplace but are unwilling to commit to the work necessary to secure the best. The properties of the distributed network also mean that the requisites for individual developer success do not depend on some firm or group of firms unlike other industries. Software development is inherently a field of abstractions and the tools of the trade ensure that detachment is king (unlike a human-contact-centric field like medicine); in such a fluid environment, it may be particularly difficult for traditional firms to know how to initiate and maintain long term business relationships. In this regard, firms need to improve their global visibility on the distributed network (shocker: they need software developers for this) and become valuable clusters to attract talent to work on interesting business problems.
- Local firms using and depending on open source tools and their numerous derivatives (which include many closed source products) need to formulate an open source interaction strategy and be seen to be contributing to the open source pool of knowledge, in terms of their own works, best practices, lessons learned from software projects, standards to achieve high reliability, etc. It is not satisfactory to have local firms continue to use open source products and rely on them for mission-critical business processes and systems while not contributing to the pool. This is not solicited for morality sake; it is in the best interest of the firm to do so as it becomes a positive signaling mechanism to the community and a psychological magnet for cheap talent. Systemically, and over the long run, the most beneficial outcome for these local firms is a Nash Equilibrium state, where producers and consumers of the pool contents contribute and extract value with as little variability in frequency (and in most cases, size) of contributions as possible. The current trend where the major producers and contributors to the pool of knowledge are companies in the west – including transportation companies and retailers – gives these current custodians the authority and justification to determine the direction of business and technology globally.
Conclusion
The choice to analyze the open source production model against the backdrop of the distributed network of the Internet should be obvious by now: its emergence introduced the lowest common denominator of entrance and participation in the software industry for individuals and firms alike, upending classic production models, calling into question economic theories of incentives and making it possible to accomplish great feats with global reach using publicly available tools and documented processes completely alien to the recorded history of organized production prior to the mid-twentieth century.
Local, non-technical firms interfacing with entities who employ this model of business require a rethink of the current model of their relationships with software developers and a comprehensive overhaul of their hiring and resource allocation strategies.
To keep the reader focused on the core issues and maintain the cognitive requirements at the level of some undergraduate scholar, we have eschewed from dense philosophical material to support our position. However, we think that the mental models already developed are sufficient and correct to function as premises for thinking about the issues raised in the opening section.
Responding to instances and anecdotes would have surely reduced the debate to a race for excellence at the confirmation bias fallacy, and so we chose instead to raise the game to the analysis of premises and infuse the discussion with some rigor. We believe that we have succeeded at least in providing an interdisciplinary framework for evaluating the issues based on foundational concepts.
References
[1] Ball Philip, Critical Mass: How one thing leads to another Farrah, Strauss and Giroux, (2004)
[2] Faloutsos, Michalis, Petros Faloutsos, and Christos Faloutsos. “On Power-Law Relationships of the Internet Topology” ACM SIGCOMM Computer Communication Review, Vol. 29, No.4, pp. 251-262. ACM, 1999
[3] Coase, Ronald H. “The Nature of the Firm” Economica 4, No.16 (1937), 386-405
[4] Benkler, Yochai. “Coase’s Penguin, or, Linux and the Nature of the Firm” Yale Law Journal (2002): 369-446
[5] Lerner, Josh, and Jean Tirole. “Some Simple Economics of Open Source” The Journal of Industrial Economics 50, No.2 (2002): 197-234