Friday, April 16, 2021

How to Take a Compliment

 I've seen people get embarrassed when not knowing how to take a compliment. When that happens an elegant solution is to simply say, "Thank you." 

What is the Price of a Human Life

Q: What is the price of a human life?

A: $10,000,000.

Source: U.S. government federal agencies:

Thursday, March 4, 2021

Customer Service: DoorDash and Darby’s

 I do love great customer service.


Last night, I ordered food from DoorDash and I suspected a problem as my delivery time kept slipping from around 6:30, to after 7 PM, until it was finally cancelled by the driver. That was a bit annoying, which I shared on social media. This morning, I awoke to an e-mail from DoorDash’s VP of Customer Experience with a $50 credit. More than I could have hopped for. Companies, like people, don't always meet expectations – but it's what's done, after the fact, that can really make one shine.

Update: As if the $50 credit wasn't enough, DoorDash also FedEx'd a Milk Bar Sampler pack to me on March 5, full of yummy desserts. 🙏🏼 


Also, this morning, as I was putting my trash outside, I noticed that someone hit my car, most likely while I was the dentist’s office, yesterday. Obviously, that was highly annoying as I recalled spending several hundred dollars, in 2013, to have my bumper removed, repaired, and repainted.

I immediately took my car to Darby’s body shop, on the same block I live on. I’d never been to Darby’s, but Albert immediately tended to my car by polishing out the scrape. As if that wasn’t enough, he moved on to polishing my headlights. I was in and out in less than 15 minutes all for the cost of leaving a well deserved Yelp review.

It’s the little things in life that make a big difference.

Thursday, January 28, 2021

GameStop Thoughts to a Friend

It’s very common for either the SEC, the exchanges, or brokerages to do something “unallowed” in an extreme situation and then see their actions turn into a new trading rule.

That happened during the flash crash in May of 2010, when the market dropped 1,000 points in minutes. I have a local buddy who owned many puts and made millions, literally, only to have the SEC unwind a number of trades and his bona fide profits were wiped away.

I really had no idea how crazy this week was until my 18 year old godson messaged me, for the first time ever, to ask for trading advice. The biggest issue with this week's big moves was there were no fundamentals to support the meteoric rises we saw in GameStop, AMC, BB, etc. It’s not the buying that makes money, it’s the selling – when were these casual day traders going to sell their stock? They had no exit plan and got caught up in the moment.

The problem with this week’s activities was the motivation of the Redditors was nefarious – they intended to hurt the hedge funds that were short, so that might not bode well for them. But I’m still evaluating what happened and my opinion is in flux. 

Monday, January 11, 2021

Solving the Social Media Dilemma

The following are additional thoughts to my earlier piece.

E-mail was the Wild West in the 1990s, without any non-repudiation regarding the authenticity of the sender of an e-mail. There was no simple way to confirm that an e-mail was sent from the e-mail address in the from field

High-tech fixed that problem, for the most part, with spam filters and refusal/authorization lists (formerly known as blacklists/whitelists). 

Now, social media faces a similar problem when people pass fiction as fact with harmful intent that violates laws, terms of service, security, etc. This is exceptionally easy and dangerous since these platforms amplify the content, especially using curated means (humans or algorithms).

What's the solution?

Social media needs to take on more publishing responsibilities like the classified ads in a newspaper. One way is by creating a third category in Section 230 other than publisher or service provider for amplifying platforms.

It doesn't matter if it's hard to scale. High-tech needs to figure it out.

Tuesday, January 5, 2021

How to Give a Great Online Presentation


How do you give a great online presentation?
Rehearse. Online. A lot.
Rehearsals are where you make your money.

Step #3, below, is the most important one.


Both in-person and online presentations require the same amount of rehearsing. When presenting in person, you'll want to rehearse in the actual venue. The same applies online... Rehearse in the medium you'll use for your live presentation.

I recently gave a presentation that lasted less than 20 minutes but I spent several hours practicing it, over and over, so it would flow smoothly. Rehearsing/practicing/simulating is how we make hard things look easy.

1. Use big fonts.
When online, use no font smaller than 50 point since some people may be watching your presentation on a mobile device. Ideally, use a much larger font than 50 point.

In my presentation, the smallest font I used was 56 point on one slide with nearly all of my other slides using a 72 point font.
The only exceptions should be references at the bottom of a slide such as, "Source: United Nations Charter" or text used for effect, not to convey specific information.

2. Prepare software to be demoed ahead of time by scaling up fonts.
This applies to Web browsers, apps, command line, etc. Keep in mind that your full-screen presentation will be scaled down on other devices, i.e. most people do not view YouTube videos at full screen.

3. Practice your slide deck many times, online, while recording it.
I use Google Meet for my presentations. To practice online I set up a Google Meet for myself and I attend the Meet on another device, simultaneously (one device for presenting and the other device for viewing to simulate an attendee). This gives me an idea of how my presentation will look to others; plus it'll gives me an idea if my ISP bandwidth is adequate since I have two simultaneous video streams.  Ideally, when presenting, make sure no one else on your network is "stealing" your bandwidth by steaming videos (YouTube, Netflix, TikToc, etc).

4. Don't cut it close, time-wise. 
Plan for delays during your presentation that didn't occur during your rehearsals. Technical issues with your computer or bandwidth, people asking questions or making comments, etc. 

5. Postmortem: Record and review your actual presentation.
Learn from your mistakes and don't repeat them. In my recent presentation I wished I had minimized the "Stop sharing" strip at the bottom of the screen. Additionally, next time, I would consider raising my video camera so I'm looking straight into the camera rather than down at it.

Wednesday, December 16, 2020

Intro to Quantum Computing (Everything I know)

Quantum computers are vastly different than digital (classical) computers. Let's start with the basics in this blog post.


Digital computers store information in classical bits. A bit can only be a zero or one.

Quantum computers store information in quantum bits (qubits). A qubit can be a zero or one or negative or both zero and one at the same time due to the wave nature of superposition (Yes, this is a real thing... more on this in another blog post).


Digital computers store bits using voltage / charge.

Quantum computers store qubits using electron spin.


Digital computers perform operations using logic gates governed by Boolean algebra (AND, OR, NOT, XOR, etc.).

Quantum computers perform operations using quantum logic gates (X, Y, Z, CNOT, etc) governed by linear algebra (matrix algebra).


Digital computers use simulation to solve problems.

Quantum computers use imitation to solve problems.


Digital computers are deterministic. The same input always yields the same output.

Quantum computers are probabilistic. Repetition of the same inputs gives probabilistic output.


Digital computers use a von Neumann model with a CPU, ALU, and memory to store instructions and data, all made up of transistors. Physically, bits are stored in integrated circuits (chips) at room temperature.

Quantum computers store and process data using quantum error correction to manipulate quantum objects (electrons, photons, nuclei, etc). Physically, qubits are stored in quantum objects at less than 1 Kelvin (about 0.015 Kelvin) to remove any thermal noise that could disturb them.


Digital computers increase performance by a factor of two for each bit added (2n).

Quantum computers increase performance exponentially for each qubit added (2ⁿ).


Digital computers process data in series.

Quantum computers process data in parallel.


Digital computers’ logic gates are not all reversible.

Quantum computers’ logic gates are all reversible.

There are four operations that can be performed on a single bit: NOT, Identity, Set 0, Set 1.

1. NOT: Flip zero to one or one to zero. Think: clicking on a checkbox on a web page.

2. Identity: Multiply by 1 to keep the same value (identity). Think: core memory readout, which is destructive so the bit must be saved back into memory when reading.

3. Set 0: Force a zero into memory. 

4. Set 1: Force a one into memory.

With digital computers, only the NOT and Identity are reversible gates. Quantum computers have other gates to make non-reversible operations reversible.  

Since all quantum computer operations are reversible, output from one operation can be fed back into the same circuit to recover the original input.

It seems, before 2020, researchers viewed quantum computing as primarily a scientific goal, with relatively little immediate bearing on the future commercial viability of quantum computing. However, that has quickly changed with Honeywell, Amazon, and Microsoft entering the market.

Thursday, December 3, 2020

My Cousin's COVID Story

A guest blog post from my cousin, Joe Cuiccio, who's spent a life time devoted to health and fitness. 

Now that 2020 is soon coming to an end, I wanted to take the time and share some key events which I’ve experienced during this pretty awful year. I contracted COVID-19 in mid July. My symptoms were pretty mild and I was able to return to work after my 14 day quarantine. Other than feeling pretty tired, I was more or less able to function normally. About two weeks after that, though still tired, I decided to get my first workout in after 4 weeks of inactivity. I went easy not knowing what to expect but it felt pretty good and I was relieved. For the next two weeks, I progressed, got stronger and regained some endurance. I was feeling a lot better. That is until one evening in late August. 

Soon after a late night workout, I didn’t feel right. After a bite to eat and a shower, I'd gotten into bed and noticed my heart was racing and felt unwell. I figured I’d try to get to sleep and hopefully feel better in the morning. No such luck. My heart was still racing and I felt even worse - chest and back pain, tightness, palpitations, nausea and a bit light headed. Becoming concerned, I started to wonder could I be on the verge of a heart attack? It persisted through the morning and I decided to go to emergency care. My EKG was normal but my pulse was still rapid and my blood pressure was 160/89! I was told to see my doctor ASAP. 

I get in to see my regular doc a few days later and given my symptoms and that fact that I’ve had COVID-19, he recommends I wear a 48hr Holter monitor. It reveals a series of PAC’s and PVC’s (premature heartbeats) and some arrhythmia. These results get a me a referral to a cardiologist. Long story short, after 3 long months of tests, very anxious waiting, feeling like shit, abstaining from exertion, caffeine & alcohol, I finally get my diagnosis: a cardiac MRI revealed scar tissue on my heart which is a remnant of damage caused by the coronavirus. The good news is it’s minor enough to not require any treatment at this time and is not likely to effect me in any major way. I should feel better as time goes on. I will follow up in 6 months. 

I’m sharing this because every single day, I encounter people who either think the coronavirus is a hoax, blown out of proportion, a government plot, no worse than the flu, only affects the elderly, has a 99% recovery rate and similar kinds of ignorant nonsense. As you could imagine, I’ve done a lot of research regarding COVID-19 related heart damage and it’s really scary stuff. I am beyond grateful that I was lucky enough to have dodged a serious bullet. But there are people much younger and healthier than myself who have sustained a far worse degree of damage than I. What research has found so far is that the immune system goes into overdrive to fight the virus and continues fighting long after the virus is gone. This sustained immune response can cause damage not just to the heart but other organs including the brain and nervous system. It can cause erratic spikes in blood pressure greatly increasing the risk of blood clots, stroke and heart attack. And even though not life threatening, many are experiencing chronic fatigue months after recovery preventing them from working, performing simple daily activities and greatly affecting their quality of life. The gamut of ill effects is very wide.

So, when I hear someone quote survival rates without taking into account the huge gray area of complications that can arise in recovered people, it makes me sad, angry and frustrated beyond measure. I hope that in sharing this, it may shed some light and get some of the more close-minded individuals out there to try a little harder to think outside of the box and band together to defeat this. ❤️ 

Tuesday, December 1, 2020

macOS on AWS. Finally!

One of my "server farms" (more like a garden)
with 4 Macs and 1 GSM modem
Finally, after nearly 15 years, macOS comes to AWS. I used to maintain two server farms totally 11 Macs, mostly Mac minis, running OS X Server with 10 static IP addresses. Configuring and replacing Mac servers was my least favorite and most expensive task.

Amazon's AWS VP for EC2 shared a fun video about how macOS on AWS came to be.

Thursday, November 26, 2020

Why Do Apple APIs begin with NS?

Most developers mistakenly think NS stands for NeXTSTEP. (NSApplication, NSArray, NSMutableDictionary, etc).

NS actually stands for NeXT-Sun. It came about when NeXT partnered with Sun Microsystems to develop OpenStep, which was an API specification for developing applications on non-NeXTSTEP operating systems.

Before the partnership, NeXT's APIs began with NX.