A top software development position in a startup wants ...

Having just taken a job with Raytheon and lamenting my lack of success getting a top software development position in a startup a friend ask "What is needed for new startups?"

A top software development position in a startup wants several years of experience with AWS infrastructure and a comprehensive knowledge of JavaScript use (and packaging) in the backend (node.js) and the frontend (Angular, React, and sometimes Vue). The startup still want the other skills of scalable architecture design (processing and data), excellent written and spoken communication, and mentoring, but having these is not enough. I was also surprised that even startups that will hire remote staff still want that staff close to home base.

As to the Java language and its ecology, this has little interest for them. In fact, many of the infrastructure foundations that are today implemented in Java -- ActiveMQ, Kafka, Zookeeper, Tomcat, etc -- are being replaced with "lighter" Go and Rust implementations. And with the accelerating move to managed infrastructure startups care little about how these foundations are implemented. They would rather rent, eg, a queuing service from AWS or GCP, and let the provider worry about implementing turnkey, scalable performance.

Even Citizens Bank, after having recently become independent of the Royal Bank of Scotland, is replacing their Java J2EE implementation with an AWS hosted, node.js microserviced, and React front ends. I have even heard that some of their services are from a "bank in a box" supplier.

I don't disagree with these changes except for the unfounded confidence in JavaScript -- the one language to rule them all. I would not want to run my own data center and infrastructure anymore, either. Assuming, that is, I had the very sizable budget for it.

Unwelcome advertisement for throat lozenges

The content on YouTube is really tremendous. I have used it to watch tutorials for fixing a food mixer, replacing my minivan's factory radio, painting miniatures vikings and ultramarines, learning boardgames, and refreshing some math theory. I have used it to watch documentaries and fan-made movies. I have listened to audio books. Sometimes, I even listen to music and other forms of audio & video performances. Unfortunately, the interstitial advertisements are beginning to kill YouTube.

I accept the need for YouTube to generate revenue with advertising, and, as crazy as it sounds, if the ad is short, I let it play through rather than take action to skip it. What I can't accept is the jarring interruption of the interstitial ads. You are listening to a 7 minute recording of a live performance. The performance beautifully builds for the first 3 or 4 minutes and then, just when it reaches a crescendo, an ad for throat lozenges breaks into the middle and ruins the whole thing.

I will continue to use YouTube as it has so much content useful in my daily life. I am going to skip most everything else until they replace the interstitial ads.

Working at Raytheon

I am no longer looking for work. I took a job at Raytheon, a (mostly) military contractor with offices here in RI.

Phoenix Checklist

[Copied from Boing Boing.]

The "Phoenix Checklist" is a set of questions developed by the CIA to define and think about a problem, and how to develop a solution.

The Problem
  • Why is it necessary to solve the problem?
  • What benefits will you receive by solving the problem?
  • What is the unknown?
  • What is it you don’t yet understand?
  • What is the information you have?
  • What isn’t the problem?
  • Is the information sufficient? Or is it insufficient? Or redundant? Or contradictory?
  • Should you draw a diagram of the problem? A figure?
  • Where are the boundaries of the problem?
  • Can you separate the various parts of the problem? Can you write them down? What are the relationships of the parts of the problem? What are the constants of the problem?
  • Have you seen this problem before?
  • Have you seen this problem in a slightly different form? Do you know a related problem?
  • Try to think of a familiar problem having the same or a similar unknown
  • Suppose you find a problem related to yours that has already been solved. Can you use it? Can you use its method?
  • Can you restate your problem? How many different ways can you restate it? More general? More specific? Can the rules be changed?
  • What are the best, worst and most probable cases you can imagine?
The Plan
  • Can you solve the whole problem? Part of the problem?
  • What would you like the resolution to be? Can you picture it?
  • How much of the unknown can you determine?
  • Can you derive something useful from the information you have?
  • Have you used all the information?
  • Have you taken into account all essential notions in the problem?
  • Can you separate the steps in the problem-solving process? Can you determine the correctness of each step?
  • What creative thinking techniques can you use to generate ideas? How many different techniques?
  • Can you see the result? How many different kinds of results can you see?
  • How many different ways have you tried to solve the problem?
  • What have others done?
  • Can you intuit the solution? Can you check the result?
  • What should be done? How should it be done?
  • Where should it be done?
  • When should it be done?
  • Who should do it?
  • What do you need to do at this time?
  • Who will be responsible for what?
  • Can you use this problem to solve some other problem?
  • What is the unique set of qualities that makes this problem what it is and none other?
  • What milestones can best mark your progress?
  • How will you know when you are successful?
From the book, Simply Brilliant: Powerful Techniques to Unlock Your Creativity and Spark New Ideas, by Bernhard Schroeder

The splendor and complexity of networked service at scale

The splendor and complexity of networked service at scale. Josh Evans' talk Mastering Chaos - A Netflix Guide to Microservices at InfoQ.

"Contempt isn't cool"

I really like Benno Rice's talk "The Tragedy of systemd" about accepting change. I had resisted systemd only because I didn't need anything different than inet.d for what I was doing. This was a mistake and one I wish I had rectified sooner. I was missing out on taking advantage of all the other great services systemd offered. Had I switched earlier I would have enjoyed the slow, methodical accrual of a deeper knowledge and practical experience.

The link above is to a point near the end of the talk to the "Contempt isn't cool" slide. Accepting change requires to accept ones own limitations, biases, and blindspots. Do this respectfully as others have done it with you. Contempt is a destructiveness that you never want to bring into your team.

Waste Wars

I was reading the New York Times last year and came across an article about the hazardous working conditions of private waste management companies. The work is hard, the pay too little, and the time pressures too great. I don't mean to make little of this horrible situation, but, later, my mind wandered, as it often does, to Terry Gilliam’s movie Brazil and the gorilla plumber. I have always been intrigued by the plumber’s statement that plumbing was the last radical trade in the near distant future. What if garbage collection was too? Could its work be made into a game?
"The year 2017 saw the rise of the litteral cut-throat waste management companies. Their goal was to grow their business by any means possible. By 2027 waste management had become paramilitarised." Waste Wars
I never completed the game development. What I have developed is more, I think, a source of ideas for an actual game developer or for repurposing an existing game.

Gluing Warhammer 40k Space Marines

Started to glue together my Warhammer 40,000 Space Marine models. I am not fond of the aesthetic of their uniforms, but the modelmakers have made good use of it whereby each successive layer can be used used to hide the mistakes made underneath.

I don't know if other hobbyists do this, but after assembly I give all the surfaces where I scraped off the mold lines a light wash of plastic glue, aka acetone. For these models this seems to further help hide the mold lines. Will know more once they are primed.

Update: Is it just mine or are all 40k space marines right handed and turning towards the right?

Update: I should not have put them on bases and attached the guns before painting them!

Update: Awaiting the enemy ...

Fiskars Easy Change Fabric Knife

The Cool Tools blog posted a review of several alternatives to the ubiquitous, badly design, barrel handle X-Acto knives. The Fiskars Easy Change Knife is the favorite and so I bought two via the posting's associates link. They both have NO grip on the blade and are dangerous. Do not buy that version. There seem to be 2 versions of the knife in the world.

I contacted Fiskars and they sent me two replacements that are awesome! The replacements are Fiskars Easy Change Fabric Knife (3 blades) 164010-1001. The only visible difference between the two is that the Fabric Knife's has a gray tinted, translucent cap (rather than untinted). I hesitate to provide a product link as none that I found show the packaging. If you do find a package image it should look like the image in this posting.

Thank you Fiskars for great customer service.

Installing the stupid filter

I enjoy Seth Godin's blog. The entry today is Installing the stupid filter which is about how humans don't always accept questions or directions as stated. That is, humans ask "Are you sure?" Machines don't.

The problem is that machines are given bad data all the time and most accept it verbatim. Crossref, my employer until Jan 11, handles lots of XML encoded data. So we need to manage both complicated structures and many types of data -- publication dates, personal names, country names, company names, page numbers, volume numbers, ORCID iDs, ISBNs, ISSNs, Pub Med ids, etc. Some types have a strict syntax and so we can know if the value is valid. What we can't know is whether the value is appropriate. We have to guess.

Is a publication date 2 months from now appropriate? In most cases, the answer is "yes" as the publisher is depositing the metadata for a forthcoming publication. But what about 3 years from now? If the publication is part of a book set that is expected to take 10 years to complete publication, then "yes," too. If it is a journal article then almost certainly the answer is "no." At what point is an article title too long? Is it, as we have experienced, a misplaced abstract? It seems the more data we have the more the questions we have about it.

I don't have any answers for these questions. I just want to make the comment that even in machine to machine data exchanges there needs to made sanity checks on the data and those checks have to be within the larger context of each datum.

Red Chair Studio Clay

If you still looking for a unique gift see what Red Chair Studio Clay has on Instagram and at redchairstudio.com.

BitBar shout out

I use the MacOS menu bar tool BitBar for a few uses. I have the time in UTC and the status of a few servers. Behind these presentations are very simple bash or perl scripts. I was reading today of a small utility to show how many days remained until a set of events. The BitBar equivalent is I will leave removing past events from the output to the reader.

Craig Forbes' Tuckbox Generator

I wanted a simple and inexpensive way to store my X Wing miniatures. In the process of looking at how others had solved this problem I found Craig Forbes' Tuckbox Generator. Use this to create custom boxes for each miniature. See microhangers. Having many little boxes is too fiddly for my general use, but I am very glad someone wrote a bit of software to create box templates.

Tevo Tarantula 3D printer is coming together

The Tevo Tarantula 3D printer is coming together. So far I have only mixed up two support beams and stripped the treads on one stepper motor. Luckily, switching the beams around did not involve replacing a belt. And I was able to use longer M3 bolts to reach the stepper motor's bottom threads that were still intact. (Thank you Jerry's Hardware!) Now I need ferrules and fork wire terminals and, as far as I know, there is no store in RI that sells these!

Update, 2018-11-27: Jerry's and West Marine both sell fork terminals.

Make visible residence hall problems and resolutions

Letter to the University of Massachusetts Boston Chancellor:

The Boston Globe article "Falling elevators, raw hamburger, lax security at UMass Boston dorms" is a serious check on the trust, confidence, and enthusiasm I have for my son's continuing attendance at UMB. I do not expect new facilities to be without flaws. Nevertheless, a step to regaining the community's trust in the joint venture between UMB, Capstone, and Sodexo is to make public all the service and repair work orders, actions toward, resolutions of, and all other timeline details. Collecting and presenting this information every 24 hours would allow us all to see the extent of the problems and the pace of resolution. Let us see that Capstone and Sodexo put the health and safety of the students over profits and that UMB is a good steward.

Your truly,
Andrew Gilmartin

The debugging details you leave behind

One of the worst information losses of leaving a place you have worked for nine years is all debugging details you leave behind in the bug tracking system.

3D printing comes to Saugatucket Rd

I succumbed. Exchanged cost (under $200) for some frustrating days ahead.

Red Chair Studio ceramics sale Saturday & Sunday

Red Chair Studio is having a studio sale today and tomorrow, Sat, Oct 13 and Sun, Oct 14, between the hours of 9 AM to 4 PM. The location is 574 Saugatucket Rd, South Kingstown, RI 02879 (map).

 

Who buys hundreds of dollars of used fencing sight unseen?

Experienced my first active phishing scam today. I posted to Craigslist the sale of some chainlink fence paneling I no longer need (and, frankly, want out of my yard). Within the hour I received a text message from Steven Anthony at 903-865-2390 saying he would buy it, pay with PayPal, and would arrange shipping. It seemed a little odd that someone in Texas would buy $600 of paneling sight-unseen. Nevertheless, I gave him my PayPal account name and my home address. Then the buyer wrote
"I will have to included the shipper funds with the payment so that you will pay them once you receive the payment." 
Now, I am not selling something that can be shipped USPS Priority mail for $8. The paneling is a few 100 pounds of metal and 100 or more square feet. The buyer is going to have to contract with a long distance hauler and, most likely prepay, some or all of the price. I passed on the sale. The buyer never texted back with a counter offer or a simple goodbye. Part of me wanted to see what would happen next. My expectation was that I would soon have received an email from "PayPal" having me login and collect the payment.

I have no way of knowing if Mr Anthony was or was not a legitimate buyer. But there were many signals of fraud in our interaction. If I do discover that Mr Anthony was, indeed, just trying to buy a bunch of cheap fencing quickly, then I will apologize to him and remove this posting.