What do Engineers do?

Consider a continuous flow gas turbine at a power plant. Combustible fuel is injected into a stream of highly compressed air inside the machine before being shot into its combustion chamber. The ignition of the air-fuel mixture releases its latent chemical energy in a violent yet continuous fashion. The engine does not even flinch at the perpetual explosion ceaselessly triggered inside its belly. The machine appears insatiable as it swallows fuel and air with an inhuman ferocity. The different stages of the engine’s operation, perceived as an adjoining whole, begin to resemble a living metabolism rather than just a thermodynamic process. Inside the turbine, the energy released in the combustion chamber has nowhere to go but across the blades of the machine. This is where the first round of alchemy happens. The captive explosion forces the turbine blades to spin about the turbine axis. This blade rotation, reaching up to thousands of revolutions per minute, turns a mechanical shaft linked to the rotor of a generator. It is here that chemical energy undergoes a transmutation into mechanical energy. Next, the generator’s stator1 performs a dance with the spinning rotor. One holds steady as the other pirouettes; the rotor’s magnet spins inside the copper ballroom of the stator’s electrical coils. Here the magnetic field and electrical current perform their own synchronized tango. The oscillatory fury of the magnetic field inside the unmoving coils compels electrons along the lengths of wire, forcing them into a continuous flow out of the generator. Thus a second alchemical operation is complete: mechanical energy is converted into electrical energy. The multidisciplinary labor of various scientists, engineers, and technicians brings to life this machine who hungers for fuel and rips the seething energy from its molecules, converting it into domesticated electrical flow. Much like the capital accumulation process that brought this machine into being, the turbine’s appetite is never fully satisfied.

Such a turbine only exists because it was designed, developed, and manufactured. Such a complicated piece of technology cannot be fully assembled in an engineer’s mind before being brought into physical being. The process of engineering, of manipulating complicated physical systems towards a preconceived outcome, requires the usage of representative models. Perfect modeling or full control of phenomena is never required. Formulas, a form of abstract model, exist for calculating how various aspects of a turbine, such as its compressor or air intake, must operate in order for the system as a whole to have a certain energy efficiency or compression ratio. But these calculations do not automatically produce the physical turbine as such. As the physical components are designed, simulation software helps to model the behavior more closely to how the real machine might operate. This model is, however, still a distant abstraction.

The mechanical and thermal characteristics of the turbine are still idealized and simplified. The contingent behavior of the particular batch of steel used to make the blades or the exact character of the air turbulence2 at different stages of the combustion cycle simply cannot be captured in this simulation. As the machine is built, tests can be performed on individual components, subsystems, and eventually the whole assembled machine to understand its behavior. This process enables feedback wherein new mathematical constants are experimentally derived, adjustments made to 3D CAD3 models, and airflow models refined in order to bring the turbine’s real performance closer to the desired specifications. Once prototypes are reliably performing as desired at a certain level of statistical confidence (for pure certainty is impossible), the turbine components must be manufactured and assembled at higher volumes. These manufacturing processes themselves have their own models and situational contingencies that need mediation via the engineering process. The engineers involved with the creation of this turbine understand that models are not perfect, and factor this iterative back and forth between model and phenomena into their plans for the development process.

The turbine’s metabolism of fuel in and energy out perfectly mirrors a similar sort of inhuman hunger expressed by the capital that structures the very design and manufacture of this turbine. Industrial capital is a machine that swallows labor power, violently digests it, and excretes commodities to be sold for profit. The substance of human exertion is transmuted into money, an alchemical process by which something particularly qualitative and inherently human is transformed into something universally quantitative and necessarily inhuman. Capital is an insatiable machine of its own; one composed of social arrangements and variegate forms of domination rather than strictly physical machinery. Engineers are a catalyst in this social machine, one that gives systematic methodology and technical structure to this digestion process. As a profession, engineering is the concrete manifestation of the bourgeois impulse to utilize science in service of maximizing profit. But how does this actually work? What is the procedure by which technical theory and practice materialize?

To be an engineer is to develop abstract models of physical phenomena with the goal of changing said physical phenomena. To do engineering is to carry out the mutual modification that models and phenomena perform on each other. To be good at engineering is to actively account for the imperfection of abstract models at all times. Here, model means any conceptual or analytical abstraction that purports to describe some aspect of a physical object or process. Phenomena is anything in the physical world we have the technical means to perceive and want to manipulate. Examples of model and phenomena pairs include: a system of equations describing the motion of a robotic arm, a spreadsheet describing inputs and outputs of a manufacturing line, or a study on the variability of glue volume dispensed by a nozzle. No model can perfectly capture all the nuances, contingencies, and unpredictabilities of physical phenomena. Such is the nature of abstraction. Every model is a balancing act between accuracy to the phenomena it describes and utility to the engineer. The whole point of modeling is to flatten complicated phenomena into concepts that can be easily manipulated without having to think of every detail at the same time. If the models are too simple, they are not precise enough to be useful. If they are too complex, they are not practical for conceptual use.

These models are, by their very nature, imperfect. But yet, somehow, these models developed by engineers lead to the successful manufacture of gas turbines, cargo ships, computer motherboards, undersea fiber optic cables, plastic sporks, artificial fertilizer, milk cartons, ballpoint pens, data centers, social media sites, spacecraft, and much more without any model fully describing every aspect of such creations. This is because engineering is more than simply building things, or simply modeling things. Engineering is scientific, but engineers are a negative image of scientists. Our goal is the control of phenomena, to which modeling is a means. For scientists, manipulation of phenomena is the means to the refinement of models.

Engineering is fundamentally a process of mediating interplay between models and phenomena. This interplay is continually being repeated, and must constantly be steered by the engineer towards a specific goal. Skilled4 workers in other vocations may find this systematic thought process familiar. After all, do professional chefs, sports coaches, and nurses not apply a similar process to recipes, strategies, and patient care? They certainly do, and have more commonality with engineers than is at first apparent. However, for engineers this iterative mediation between model and phenomena is formalized, routinized, and theorized to a greater degree than it is for other professions generally.5 This essay will do two things. The first is to elucidate the fundamentally materialist kernel of the engineering process and its compatibility with a communist outlook. The second is to describe the relationship between engineering, both as an abstract process and as a profession made up of real people, to the communist project.

Social Animals, Social Context

As in any other mode of systematic thought, context is paramount in engineering. The very act of modeling is an attempt to mediate certain particularities of space and time with the practical necessity of simplifying phenomena into manipulable concepts. No matter how that mediation shapes out, the specificity of the real world remains indifferent to the war waged between fidelity and utility on the battleground of the model. This specificity, this spatiotemporal context, extends beyond the purely technical. There is never such a thing as purely technical phenomena, except in our models. All technical matters are actually socially contingent, and social contingency is by nature political. The social context in which technologies are developed and deployed is inseparable from not only the qualitative character of that technology, but from the effects that technology has on societal matters. If to engineer is to mediate the interplay between model and phenomena, then engineering is to mediate the interplay between model and the combined socio-technical contextual specificity of this phenomena. Engineers, in our attempt to control the real world, are forced to constantly contend with a world that our models can never perfectly describe, and thus we can never perfectly control. In other words, to change the world as an engineer would is to accept that phenomena operate on a level of causality beyond our ability to not only control totally, but to even be able to fully develop a fully immanent understanding of. It is to accept that our concepts of worldly phenomena are conditioned by the context in which we develop these models, and these models are inextricable from the obligate act of interfacing them with context.

Engineering as a methodology thus contains a fundamentally materialist kernel, even if its present incarnation as a bourgeois science drives engineers to think and behave otherwise. The Marxist materialist understanding of an individual’s thoughts and behaviors being inextricable from the - inherently social - context in which they exist mirrors engineering’s understanding of technical models being inextricable from the never-fully-accessible context of the phenomena being described. Both communism and engineering, as schools of simultaneous thought and practice, are forced to operate in the intermediacy between an obfuscated context and an understanding of such context, specifically in service of changing that context. Engineering as a school of thought can supersede its fundamentally capitalist character by wielding the scalpel of immanent critique against itself. The logic of mediating models and phenomena can be extended such that it is perfectly compatible with a communist materialism. Engineering’s bourgeois character cannot be eradicated by sheer brute force, but as a part of the immanent unfolding of engineering’s methodological logic, a logic that is only fully developed once it has adopted a communist character.

The communist project seeks to, at a fundamental level, reorganize the social context in which people live their lives. Humans live contextual lives. We think and act in contexts determined by human and non-human factors external to our physical bodies because our means of subsistence are external to ourselves. This relationship to the external world, a metabolism, is mediated not only by physical implements such as tools and machines, but the social arrangements that structure how we use these implements. The structuring logic of the contemporary human metabolism with the non-human world, of contemporary human productive activity, is capitalism. To free humanity from servitude to capital accumulation, communists must restructure this productive activity along new lines of human wellbeing and cooperation rather than profit. This metabolic system contains and is conditioned by the planetary-scale industrial apparatus through which most goods are now produced. To restructure this global machine for human - rather than capitalist - ends, requires communist engineers. Engineers not only embody a significant concentration of the technical expertise required for this task, but also come prepackaged with a methodology that, once reformulated along the lines of its latent materialism, is amenable to this restructuring.

While the epistemic character of engineering is deeply compatible with a communist conception of the world, engineers as individuals are obviously not communists by default. The notion that all technical matters are actually social matters and therefore political matters appears far-fetched to those accustomed to a conceptual division between the technical and social spheres of society. In capitalism, the sociopolitical context in which an engineer mediates models and phenomena is generally opaque to the engineer. The social relations tying global industry together are obscured underneath an engineering methodology presently equipped to deal primarily with non-human machines and processes. Fixed and circulating capital alike simply appear on the loading dock, their arrival indicating nothing more than the purchasing department shelled out for it; the world-spanning division of labor that brings industrial commodities into being is masked behind a simple shipping receipt on a clipboard. This happens even when an engineer must apply the method to a labor process. Flesh and blood workers, social animals in a social context, are most usefully modeled simply as variable capital. What is labor power but a commodity? Contra the suppositions of capitalists and their barely-useful-idiot economists, labor power is the central commodity on which all of capitalism depends. The social arrangements that structure labor, indeed comprise society as a whole, are simply taken for granted.

Human labor processes become machine processes: an industrial process can be modeled as a series of functions with scientifically characterized inputs and outputs for the literal machines on the factory floor. Labor power is simply one machine input among many, one rendered as controllable and predictable as any other. Even skilled labor is treated this way. The labor of a skilled technician is not only constantly under threat of rationalization,6 but is also imagined to be a machine-like process with controllable inputs and outputs, albeit a more complicated one. The acknowledgement by management and engineers that this labor is highly skilled is not a reluctant relinquishing of control over inputs and outputs of this skilled labor process. Instead it indicates that skilled technicians are capable of consistently generating the expected outputs from a highly variable or complicated set of inputs. The increased pay and autonomy of the skilled technician compared to the basic line operator is a means to securing the same machine-like reliability. Complexity is expensive to manage, and when it cannot be managed solely with a machine it is managed with a worker paid to act like a machine. All labor power, no matter how skilled, is rendered interfaceable with industrial processes only when it is modeled as a commodity as manipulable, controllable, and interchangeable as any other. It is here that engineering is most deeply afflicted by what Marx called commodity fetishism: the obfuscation of social relations behind the appearance of a society comprised of relations between inhuman things, such as money and commodities. The commodity fetish is deeply embedded in the engineer, for commodity production is the bourgeois crucible in which modern engineering was gestated. Engineering’s capitalist birthright is to turn the commodity fetish into reality: by ruthlessly operating as if it were truth, it is to become truth. The impossibility of this delusion is its own undoing: the inescapable trajectory of engineering, like capitalism more broadly, is an undermining of itself through the immanent unfolding of its own operations. Communists must shatter this birthright that keeps engineering, and human society generally, in its pathetically larval form.

The real world outcomes of the engineering process, much like the social relations masked in the modeling process, contain an inextricably political dimension. For engineering to take on a specifically communist character its practitioners must do two things. First, the scope of phenomena to be modeled must extend beyond that which appears solely technical into the realm of social relations. Secondly the engineers must adopt as their goal the dissolution of capitalism in favor of a social system where production is a deliberate, collectively-driven process capable of modeling and accounting for phenomena at scales ranging from personal to global. To do the first without the second is to perform the counterrevolutionary art of capitalist technocratic statecraft. To do the second without the first is to simply be ineffective.

Software Engineering

Engineers trained in the more classical7 disciplines of mechanical, electrical, chemical, and civil engineering tend to differ about whether or not software engineering is considered “true” engineering. It is a somewhat meaningless question that nonetheless taps into the fact that something is in fact different about software engineering. Vulgar critiques might allege that software engineers do not “get their hands dirty.” A less unsophisticated (but yet often just as emotionally charged) version of this critique might posit that software engineers do not work with “physical” systems, that the realm of software is categorically different than a circuit board or a gearbox. If this is the criteria of what makes someone a “true” engineer or not, then many individuals with classical engineering backgrounds and job titles would be excluded by virtue of their work not directly addressing physical systems. This could either be due to a rationalizing division of labor, or because the administration of complex, technical systems often requires an engineering background but not necessarily direct engagement with said technical systems. It would also fail to exclude software engineers who develop code designed to manipulate phenomena at an undeniably “physical” level, such as the movements of a robot. While some of the gatekeeping over what constitutes “true” engineering or not against software engineers can be explained through simple resentment over salary discrepancies,8 there is a rational kernel of truth to the charge that there is something different about software.

The difference largely has to do with the role of abstraction and what must be mediated against such abstractions in the software realm. Software itself is an abstraction of a very high degree. The physical phenomenon of electrons9 racing around transistors is abstracted into binary, which is abstracted into machine code, which is then abstracted into a myriad of languages depending on the application and needs of the programmer. Programming languages themselves can have custom functions and libraries created and deployed by the programmer to abstract to even higher levels of manipulation. The utility of software is that it is extremely amenable to abstraction and reconfiguration. It is comparatively easy to generate arbitrarily high numbers of cascading layers of abstraction with increasing separation from that which they describe or control. When faced with uncooperative phenomena (downstream software, user behavior, hardware latency, etc.) the software engineer can conjure more software to handle these contingencies at a high level of abstraction rather than implementing solutions more proximate to the phenomena itself. Instead of being forced from the model back down to Earth by the phenomena, the software engineer has the option to simply ascend higher and further. An orbital velocity can be reached where all work performed is in various stratospheric layers of high abstraction all within manipulable grasp of the software engineer’s IDE.10 It is god-like. It is intoxicating. It is easy to develop a delusion of full control, of unrestrained mastery over the work medium, so long as one never looks down. Like literal intoxication, the euphoria is attained at the expense of something else. One can always orbit even further out, but escape velocity is never attainable. In this case the ecstasy of totalized control comes at the cost of fidelity to the real world. Abstractions become decreasingly useful for effecting actual change. This is in contrast to classical engineers, for whom the creation and manipulation of abstractions is much more difficult to separate from the phenomena itself. The gravitational force exerted by physical phenomena is too strong for the classical engineer. Such engineers are forced to constantly look down.

This is a matter of degree, of course. Mediating different layers of abstraction in the form of cascading pieces of software is obviously still difficult, prone to surprises, and subject to situational contingency much like the abstraction process for classical engineers. It is common to conflate all code writing with software engineering, but this is incorrect. In software work it is the engineers who are best trained to resist the allure of intoxicating escape into deep abstraction. This is in contrast to code developers with less training, experience, or discipline who easily fall for this trap. Good software engineers are adept at resisting this urge. However, it is undeniable that software engineers have far more flexibility in how to manipulate their work medium than a classical engineer might and that the temptation is always present. This flexibility diminishes as the software engineer’s abstractions are located closer to the phenomena of electron movements through transistors and wires, electromagnetic waves through space, or physical machinery being actuated. The closer to these realms of physical phenomena the act of abstraction becomes, the more it becomes the domain of a more classically trained engineer.11

To Think Like a Communist Engineer

All the arguments developed here thus far are little more than useless navel gazing if they are not utilized to further the communist project. My proposal is that communists should think more like engineers. The beauty of the engineering method, of mediating abstraction and phenomena towards a desired goal, is the way that the engineer is forced to retain fidelity to the world as it exists, not simply the way we want it to exist. Although well-suited for technical matters, the engineering method is useful for all sorts of communist activity.

To be both relevant and effective is to understand the world you seek to change, and to understand the way it responds to your actions. Understanding the collective grievances of your coworkers,12 for instance, is not very different to characterizing a subsystem in a gas turbine. You start with a rough model, and then thrust it up against reality to improve it. Begin with talking to the coworkers your gut tells you are most amenable to the idea of worker power. With humility, flesh out your understanding of who holds what opinion and why. Feed this back into your model of general worker disgruntlement. Use what you learned to qualify what you already know. Deploy it to talk more effectively to other coworkers to help them visualize a link between their discontent and their potential collective power. Find out who responds to what and why. Listen closely, learn something, and do not be scared when your coworkers do not behave like the flat-capped overall-sporting sitting-on-girder factory man in your head. Update your model. Together organize small actions. Celebrate your wins, but tear apart your losses for the lessons within. Keep updating your model. Watch your model turn into refined tactics and strategy. Organize bigger actions. Build a culture of organization independent of management. Share this model with other communists so that they may adapt it to their specific efforts. Be it a workplace, a blockade, a demonstration, a study group, or even just the daily struggle of existing in this capitalist hellscape, it is only through this mediation of models and phenomena that serious collective power capable of posing a communist alternative has any hope of victory. People, social dynamics, actions, and events can all be treated like the thermal properties of a heat exchanger, or the vibration behavior of rotating turbine blades. It is all just contingent phenomena that can be (never perfectly, but sufficiently) modeled in service of influencing it towards your goals.

Such a method is not novel. Smart communists of all varieties have been operating this way since the times of Marx himself. The science of value found in Marx’s critique of political economy remains one of the most sophisticated and relevant exercises of communist modeling of capitalism used in order to better inform its dissolution. Like engineering itself, communism as a movement is a collaborative and fundamentally social affair. Models in the form of theory are developed and tested empirically, analytically, or through direct struggle. Theory is refined, qualified, debated, or rejected. Our theories of the world and our actions to change said world should never be too far apart from each other, and should be in constant dialogue. It then behooves communists to think like engineers and be aware of this interdependency between models and phenomena.

Engineering is a Process, Engineers are Just People

Communists seek to fundamentally re-engineer the productive apparatus of the human metabolism. This reconfiguration13 would necessarily be both social and technical, for the distinction between social and technical is a mystification maintained by the commodity fetishism of capitalist society. Nevertheless, capitalism tends to concentrate technical expertise among the productive workforce specifically, a body that is proportionally shrinking with respect to the entire proletarian populace.14 Further, among the productive workforce expertise itself is stratified in a myriad of ways that have deep implications for this reconfiguration process.15 Engineers, who sit at the apex of this technical expertise stratification, hold a very key position for any political project aiming to reconfigure society on the social-technical axis. To reconfigure these processes requires models to be made of people’s needs and how those needs can be met. Further modeling is needed of existing productive and distributive capacity, and how it might be rearranged. Any revolutionary transformation is sure to be tumultuous and is likely to upend preliminary models almost as fast as they can be made. Such a reconfiguration is not a matter of military-style dictates between supreme strategists and unconditionally-obedient pawns. It is a dialogue, but not one between supervisor and subordinate like many engineers may be accustomed to. The very phenomena being modeled, being ultimately social, have human voices attached to them. The point is not to subordinate society to control by engineers, but rather to embrace the mediation loop between phenomena and models such that the distinction between planner and producer is made superfluous.16 In other words, the point is to build flexible and resilient systems that accommodate a wide range of behavior contingent on factors that communists cannot always control. This cannot be a blind and unconditional dissolution: the role of communists is to ensure that the outcome is communist in character. In carrying out this dismantling of capitalism and building of a truly human society governed by human wellbeing above all forms of social mediation, communists must carry out the generalization of a specifically communist version of engineering methodology to the administration of society as a whole.

Engineers and engineering are thus indispensable to this reconfiguration process, but this poses potential challenges. The first is that engineers, in becoming communists, may struggle to overcome the mental separation of the social and technical elements of society. Being accustomed to a technical division of labor wherein they inhabit the loftiest part of the pyramid, it may be a struggle to conceive of reconfiguration measures on both a social and technical terrain, rather than just the latter. Ending the stratification of technical expertise would be a critical element of a communist productive program - one that would be hampered by engineers making decisions that depend on and thus reinforce this stratification.

The second challenge is, in abstract terms, insufficient mediation between models and the phenomena they purport to describe. Concretely this would manifest as production and reconfiguration plans (models) being infeasible or unpalatable for those who will perform the relevant labor (phenomena). Rather than factor the inadequacy of this model back onto itself in order to develop a new model better suited to communist ends, these engineers would instead seek to force the phenomena to adhere to the model. One source of such an impulse is the aforementioned mental conditioning by the capitalist division of labor where labor discipline of lower status laborers is a tool for generating outcomes predicted by engineering models. Another source is the fact that some engineering models tend not to need as much mediation with phenomena governed by causal factors outside the engineer’s control. This is much more common with some forms of software engineering17 than classical engineering. As discussed earlier, the epistemic distance between software models and physical phenomena can easily intoxicate the engineer into thinking that socio-technical affairs can be manipulated at very high levels of abstraction without sufficient mediation between model and phenomena. Such engineers may be prone to thinking about the communist reconfiguration process as a run program uploaded to a deterministic machine that unilaterally executes the program. This may take the form of rigid production quotas or detailed prefabricated schemas generated in isolation with no consideration for situational contingency.

The level of integrated control that many software engineers currently have over their work medium would not be reflected in the way that communists must seek to reconfigure surviving socio-technical infrastructure in a communist context. Such reconfiguration would much more closely resemble the type of control that classical engineers currently have over their work media, which is much more subject to contingent influence. Society, even outside of periods of revolutionary upheaval, is nowhere close to a deterministic machine on which premade administrative programs can simply be executed. Our models as such must only be as preordained as the phenomena, the real movement, allows us to reasonably make them - for we do not act, let alone think, outside the context of our social reality. Per Marx:

Communism is for us not a state of affairs which is to be established, an ideal to which reality [will] have to adjust itself. We call communism the real movement which abolishes the present state of things. The conditions of this movement result from the premises now in existence.”18

Subscribe to Notes from Below

Subscribe now to Notes from Below, and get our print issues sent to your front door three times a year. For every subscriber, we’re also able to print a load of free copies to hand out in workplaces, neighbourhoods, prisons and picket lines. Can you subscribe now and support us in spreading Marxist ideas in the workplace?

  1. In electromagnetic rotary systems the stator is the stationary component. This is in contrast to the rotor, which rotates on the stator’s central axis. This allows rotational motion to be converted to electrical current in the case of a generator, or vice versa in the case of a motor. 

  2. The modeling of turbulent fluids in a complex geometrical environment, the field of computational fluid dynamics (CFD), remains far from perfected and is the subject of ongoing scientific research. 

  3. Three dimensional CAD (computer aided design) programs are the dominant tool for designing physical components and assemblies that will be manufactured. Examples of professional 3D CAD programs include Dassault Systèmes Solidworks, PTC Creo, and Siemens NX. 

  4. Much can be said about how much nuance is elided by the superficial labels of “skilled” and “unskilled” labor. In short, even “unskilled” labor requires skill and expertise. These two labels are not so much absolutes but rather stand-ins for a spectrum of labor autonomy held by the worker and simplification enacted on their labor by capitalists wishing to pay them less. How “skilled” certain labor is can also be conceived of as a metric of the cost to reproduce such skills. As such the level of skill in a job has less to do with the qualitative character of the job and more to do with the social character of such a job in capitalist society. 

  5. This is a generalization of course. The rationalization of engineering labor is perfectly capable of creating individual engineers far more incompetent and unaware of this process than a given baker, ship navigator, machinist, or other skilled professional that relies on a similar process and has sufficient work autonomy. 

  6. For short form elaboration see my essay Present and Future of Engineers. For long form elaboration see Labor and Monopoly Capital: The Degradation of Work in the 20th Century by Harry Braverman. 

  7. All other engineering disciplines that can be meaningfully counterposed to software engineering can be more or less subordinated to the engineering disciplines I describe as “classical engineering.” 

  8. These discrepancies will vary by industry and locale. Exploring the details of this is outside the scope of this essay as there are a huge number of factors involved. 

  9. In the case of photonic computing it would be a photon, not an electron. 

  10. Acronym for “Integrated Development Environment,” a software application used to facilitate the writing and testing of software code. 

  11. There are engineering disciplines that specialize in the interface of software with more physical phenomena. Computer engineering is a hybrid of software and electrical engineering. Mechatronics engineering sits at the intersection of software, electrical, and mechanical engineering. 

  12. Workplace organizing is only one form of potentially communist activity. This is meant simply as an example rather than a universal prescription. 

  13. Some theorists refer to this as the “communization process.” 

  14. While Marx elucidated this dynamic clearly in his own time, Jason Smith’s Smart Machines and Service Work, Phil Neel’s Broken Circle: Premature Deindustrialization, Chinese Capital Exports, and the Stumbling Development of New Territorial Industrial Complexes, and Endnotes issues 3 and 4 serve as excellent contemporary resources for understanding this dynamic in a modern context. 

  15. See my essay Technical Expertise and Communist Production

  16. These themes are partially explored in my short essay A Tale of Two Engineer-Artisans

  17. This obviously does not describe all software engineers. 

  18. Karl Marx, The German Ideology


Nick Chavez (@DFManufracture)

Nick Chavez is a mechanical engineer and communist based in the United States. He runs the blog Design for Manufracture.