The greatest resume I've ever seen
newsletter.goodtechthings.com
newsletter.goodtechthings.com
Snapshot (Sept 30, 2021): https://web.archive.org/web/20210930190513/https://dsresume....
[1] https://townsquare.media/site/393/files/2013/09/Redmon-Resum...
Resume as a man page: https://majorhayden.com/
Is that wrong? I am of course aware you can use smoke to track an air current, but is that the meaning of the phrase?
If you have no idea behind which wall a pipe terminates or don't know which of 30 pipes runs to [say] the back room you blow some smoke into it (or a lot) One would mostly use it because it is really fast. Non smoking solutions take considerably longer. One might put a pull string in the tube, if you need to wire it anyway that wouldn't take much extra time but ideally you start pushing the spring into the tube on the side closest to the sharp corners. If there are many pipes on that side you would start pushing on the other and might get stuck. If the curves are really smooth the spring could drop out of the tube. You could need an extra set of hands (more expensive). With the smoke test you could push the spring in from the other end.
If there are wires in the tubes you can tie them together and use an ohm meter to find the right tube. You might have to walk up the stairs 10 times.
Non of it is much like software development.
In Lessons Learned in Software Testing, Cem Kaner, James Bach, and Brett Pettichord provided the origin of the term: "The phrase smoke test comes from electronic hardware testing. You plug in a new board and turn on the power. If you see smoke coming from the board, turn off the power. You don't have to do any more testing."
( I used to moderate a s/w testing forum and one of the most common questions was "what is the difference between smoke and sanity testing" as this seemed to be used as an interview question...)
Source: https://en.m.wikipedia.org/wiki/Smoke_testing_(software)
In a complex system you are attempting to simplify (or deprecate components of), and where you cannot find an owner or stakeholder over some component system -- unplug the component and wait for errors or user complaints. Thus you will find out who is affected by the component and who likely stakeholders should be.
For example, old graybeards like myself will almost all have a story of finding some lost Sun or Irix server sitting under a pile of gear in an old closet, happily turned on with nobody current employed who knows anything about it.
What does it do? What's the user/password? How did it get there? all lost to the sands of time.
Turning it off will let you know if you can retire it or if somebody emerges with a problem then they can own it.
Which is why only independent contractors can safely pull it off, and even then not always.
The correct test is targeted error injection. Make the thing a bit flaky see who complains or notices. Fan favorite is explicitly laggy or busted routers in the path for networked hardware. It's still not without risks, crappy old glue or scripts tend to fail catastrophically. So as usual, backups and spares. Documentation before messing with the thing...
Generally also found that it is safer to send excess garbage downstream from the putative server than induce outages. Spam gets quick results. Assumes of course you know what it is supposed to send... Or that garbage sent from there will get noticed.
The last thing is an actual smoke test.
In software, they tend to happen at deploy time, whether to an internal environment or production. I just call them "deploy tests" now.
If it starts smoking, something is wrong.
It's been in the Jargon File since the late 80s and was popular in military/defense contracting prior to that.
You actually got me curious about this because it's a term I've been using for 40 years, and the earliest reference I've been able to find is in an internal memo about the development of a computer system, circa 1952:
> What all this adds up to is, that if Mike Stobin and Willis Ware who have been dealing with the ventilation engineers can come through with the ventilating equipment in time, it is very likely that we can have a smoke test of the arithmetic unit on the JOHNNIAC main frame in October [of 1952].
>The goal of the test will be to connect the A [accumulator register] and MQ for end-around shifting (7.5 order)15 and let the machine shift a set of digits all day while we hammer on the frame and wiggle wires. Applications for wire wigglers are now open.
https://www.rand.org/content/dam/rand/pubs/corporate_pubs/20...
Well shit I haven't used/heard the term "wire wiggler" in decades time to up my rizz with some outdated slang.
It is almost certainly a WWII slang term that spread to universities post-war.
Plus the fact that these AI coding assistants can almost do a passable job of a junior, to the point where most of their job is probably going to be just dumping crap into copilot or some gpt. I feel very very bad for anyone entering the market right now.
Service desk job > L2 > L3 > company pays for a bunch of cloud training so they don't have to pay for another consultant > DevOps
or
CE/CS intern > tasked with implementing stuff in clouds > hired as Jr SWE, but still tasked with doing those devopsy things that the real devops team doesn't wanna do > jump a few times, each time still taking on devopsy stuff > Sr DevOps Admin
Yea this is mostly the path I took. I had a hybrid lead/swe role that ended up me picking up sysadm stuff due to a weak DevOps team, then my next role was DevOps. Anecdotally, I find there's a large difference in quality of the engineer depending on which of those particular paths they took that's not usually well represented by salary ranges (although if you possess a CS degree jobs are MUCH easier to get IME).
https://www.cnbc.com/id/100482311
Direct link to image:
https://fm.cnbc.com/applications/cnbc.com/resources/files/20...
We're natural general intelligence, remember that part?
Plumbing will likely eventually mostly get replaced by robots, but almost certainly they will hold on longer than most IT professionals.