John Kruesi

John Kruesi (May 15, 1843 – February 22, 1899) was a Swiss-born machinist, and close associate of Thomas Edison.

John Kruesi
Replica of a Kruesi/Edison tinfoil phonograph.

Career

John Kruesi had been apprenticed as a locksmith[1] in Switzerland, and migrated to the United States where he settled in Newark, New Jersey. There, he met Thomas Edison. Edison employed him for his workshop in 1872.

Kruesi became Edison's head machinist through his Newark and Menlo Park periods, responsible for translating Edison's numerous rough sketches into working devices. Since constructing and testing models was central to Edison's method of inventing, Kruesi's skill in doing this was critical to Edison's success as an inventor. Historians Robert Friedel and Paul Israel summed up Kruesi's remarkable ability of this:

If the devices that emerged [from Kruesi's workshop] didn't work, it was because they were bad ideas, not because they were badly made. And when the ideas were good, as in the case of the phonograph, the product of Kruesi's shop would prove it. (Friedel and Israel 1987, 35)

Kruesi was also involved in many of Edison's key inventions. Including the quadruplex telegraph, the carbon microphone, phonograph, incandescent light bulb and system of electric lighting.

With the development of Edison's system of electric lighting, Kruesi moved to more management positions. In 1881, Edison put Kruesi in charge of the Edison Electric Tube Company, making him responsible for the installation of underground power distribution cables from the central generating station. Kruesi was also an inventor, while at the Electric Tube Company, he devised a two wire conduit in which two semicircular conductors were separated by an insulator and covered in insulating material. Kruesi became assistant general manager of the lower Manhattan Edison Machine Works in 1894.[2] The Edison Machine Works moved to Schenectady, NY in 1886 and was merged into Edison General Electric in 1889. When that company merged with several others to form General Electric Company in 1892, Kruesi was promoted to General Manager, and then to Chief Mechanical Engineer at the Schenectady site in 1896.

Notes

  1. Biography and audio-biography (in German)
  2. John F. Wasik, The Merchant of Power: Sam Insull, Thomas Edison, and the Creation of the Modern Metropolis, Macmillan - 2008, page 28
gollark: > `globals()[Row + Row] = random.randint(*sys.version_info[:2])`Never actually got used anywhere.> `ε = sys.float_info.epsilon`Also not used. I just like epsilons.> `def __exit__(self, _, _________, _______):`This is also empty, because cleaning up the `_` global would be silly. It'll be overwritten anyway. This does serve a purpose, however, and not just in making it usable as a context manager. This actually swallows all errors, which is used in some places.> `def __pow__(self, m2):`As ever, this is not actual exponentiation. `for i, (ι, 𐌉) in enumerate(zip(self.bigData, m2.bigData)): e.bigData[i] = ι + 𐌉` is in fact just plain and simple addition of two matrices.> `def subtract(forth, 𝕒, polynomial, c, vector_space):`This just merges 4 submatrices back into one matrix.> `with out as out, out, forth:`Apart from capturing the exceptions, this doesn't really do much either. The `_` provided by the context manager is not used.> `_(0j, int(0, 𝕒.n))`Yes, it's used in this line. However, this doesn't actually have any effect whatsoever on the execution of this. So I ignore it. It was merely a distraction.> `with Mаtrix(ℤ(ℤ(4))):`It is used again to swallow exceptions. After this is just some fluff again.> `def strassen(m, x= 3.1415935258989):`This is an interesting part. Despite being called `strassen`, it does not actually implement the Strassen algorithm, which is a somewhat more efficient way to multiply matrices than the naive way used in - as far as I can tell - every entry.> `e = 2 ** (math.ceil(math.log2(m.n)) - 1)`This gets the next power of two in a fairly obvious way. It is used to pad out the matrix to the next power of 2 size.> `with m:`The context manager is used again for nicer lookups.> `Result[0] += [_(0j, int(e, e))]`Weird pythonoquirkiness again. You can append to lists in tuples with `+=`, but it throws an exception as they're sort of immutable.> `typing(lookup[4])(input())`It's entirely possible that this does things.
gollark: > `def __eq__(self, xy): return self.bigData[math.floor(xy.real * self.n + xy.imag)]`This actually gets indices into the matrix. I named it badly for accursedness. It uses complex number coordinates.> `def __matmul__(self, ǫ):`*This* function gets a 2D "slice" of the matrix between the specified coordinates. > `for (fοr, k), (b, р), (whіle, namedtuple) in itertools.product(I(*int.ℝ(start, end)), enumerate(range(ℤ(start.imag), math.floor(end.imag))), (ǫ, ǫ)):`This is really just bizarre obfuscation for the basic "go through every X/Y in the slice" thing.> `out[b * 1j + fοr] = 0`In case the matrix is too big, just pad it with zeros.> `except ZeroDivisionError:`In case of zero divisions, which cannot actually *happen*, we replace 0 with 1 except this doesn't actually work.> `import hashlib`As ever, we need hashlib.> `memmove(id(0), id(1), 27)`It *particularly* doesn't work because we never imported this name.> `def __setitem__(octonion, self, v):`This sets either slices or single items of the matrix. I would have made it use a cool™️ operator, but this has three parameters, unlike the other ones. It's possible that I could have created a temporary "thing setting handle" or something like that and used two operators, but I didn't.> `octonion[sedenion(malloc, entry, 20290, 15356, 44155, 30815, 37242, 61770, 64291, 20834, 47111, 326, 11094, 37556, 28513, 11322)] = v == int(bool, b)`Set each element in the slice. The sharp-eyed may wonder where `sedenion` comes from.> `"""`> `for testing`> `def __repr__(m):`This was genuinely for testing, although the implementation here was more advanced.> `def __enter__(The_Matrix: 2):`This allows use of `Matrix` objects as context managers.> `globals()[f"""_"""] = lambda h, Ĥ: The_Matrix@(h,Ĥ)`This puts the matrix slicing thing into a convenient function accessible globally (as long as the context manager is running). This is used a bit below.
gollark: * desired
gollark: I can write some code for this if desisred.
gollark: Surely you can just pull a particular tag of the container.

References

  • IEEE Global History Network, John Kruesi
  • Hammond, John Winthrop. Men and Volts, the Story of General Electric, published 1934 by J.B.Lippincott Company. Citations: Assistant General Manager Edison Machine Works – 149; came to Schenectady – 149; Consulting engineer – 245, 276; Edison's machine-shop expert – 22; Manager Schenectady Works – 197, 242.
  • Friedel, Robert, and Paul Israel. 1987. Edison's electric light: biography of an invention. New Brunswick, New Jersey: Rutgers University Press.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.