On the big spying

Posted in Commentary on January 6th, 2020 by juan

As happens a lot in my household, the Mrs. and I were watching a cooking show last night. We are currently subscribed to YouTube TV. This particular show was about sous vide cooking. It wasn’t particularly good except for the portion on the poached eggs. We are definitely going to do that, and I’ll post about our experience here. However, we hadn’t talked about sous vide in forever. I haven’t looked up any recipes in forever. We don’t cook sous vide very often so there’s very little chance that we are going to be looking at web sites. But, after this show, we did get excited about those eggs. We also discussed which one of the machines the show was going to pick as the winner.

Then, this morning, I go to check on an Amazon order. And guess what is under my "suggestions"? Yup sous vide machines. The order of those suggestions? THE SAME ORDER WE GUESSED. Not the order the show talked about. The VERY SAME ORDER we guessed.

Screw you Amazon and your f’ing Alexa.

I’m going to find a way to get the things we use Alexa for without the spying.

Tags: ,

Abstraction levels

Posted in Commentary on January 4th, 2020 by juan

I’ve grown up as a programmer. When I started, we coded pretty close to the metal. My first language was BASIC. Then it was assembly. Z80 to be specific. It taught me a lot about the low levels of computers. Stuff that has been incredibly useful throughout my career. But another aspect of my career has become increasingly important.

In programming we deal with levels of abstraction. It’s complicated but think of going from binary to assembler to low level languages to high level languages and beyond. That kind of ladder of abstraction has always been easy for me to follow. Don’t get me wrong, there’s effort in really understanding what each level represents, but in general they are logical and connected.

My struggle is that I also have to do a similar level of abstraction, but for a different reason. This is the other part of my career. How do I go from the individual contributor (binary or even assembler) to higher level contributor (beyond C, beyond Python, beyond Lisp, etc.) as a contributor to the organization. My abstraction level has to be more of a team and then a team of teams and then a team of loosely organized teams. It feels like I have to invent the higher level languages. But, I do see glimmers of it in the teachings and books that I read. I recognize moments of clarity and moments of utter failure. Is this something to be expected?  I’m finding out as I go.

On Fry’s

Posted in Commentary on January 3rd, 2020 by juan

After leaving Georgia Tech, my first "real world" job was working for a now defunct company called Pacific Access Computers. They specialized in a couple of things: reselling Sun gear and selling their own SBUS card for Datakit. I was hired as an SE for the South East. My work at GaTech had already given my great amounts of skill in managing and configuring Sun servers and workstations. However, as is the wont of most tech companies, I had to get certified to be able to "officially work" on these systems. Back in those days, pre-commercial internet, this meant traveling to the Bay Area so I could attend the Milpitas based training. Back then, getting tech books and tech gear was not as simple as today. Naturally there was no Amazon or New Egg yet. But there was Kepler’s Book Store and Fry’s.

My "training" involved going to Milpitas many times over the first few months of my new SEhood. Every time I flew there, I ritualistically did a pilgrimage to Fry’s. I’d spend many happy hours each time just perusing through the shelves of stuff. Don’t recall buying all that much – mostly because I didn’t have the disposable income back then – but I do recall really enjoying it very much. Many years later, the opened up a retail store here in Atlanta. Then they opened up another one. I was sooo happy and went there many times, but something was gone. It had all the stuff, but the prices where meh. The staff was most definitely meh. I clearly remember several instances of staff either being ignorant about their area of "expertise" or being overtly malicious in pushing unnecessary stuff. They did this to me, despite me clearly letting them know that I was not your average joe when it comes to tech stuff. They did this to several other patrons who clearly were just looking for a little bit of good advise (which I surreptitiously offered after they disengaged from the sales puke that had almost convinced them to buy 2x or 3x what they needed).

Over time, I also noticed that the traffic in the store was much much lighter. Their return policies became onerous. Their supply of stuff very dated. And just a general sense of malaise about the whole place. The closest MicroCenter is further than the closest Fry’s. I got to MicroCenter now. While the stuff is not as abundant – their policies and offerings are more than fair and good enough.

It’s sad. I miss the old Fry’s. And it came as no surprise today that I read this article.

Thanks for the memories. Hope you fix yourself.

Playing pool

Posted in Commentary on January 2nd, 2020 by juan

If you know me, you know that I play pool. As in billiards. Specifically, I play 8 ball. Much to my amazement, I’ve been on the same pool team for 28 years. Yeah. The same team. Well, the same treat because it’s got the same name and two of us have been on it continuously for the duration. There was a point in my life where 10 years was a long time. Then there was a time where 20 years seemed like a long time. Now that I’m approaching the third decade of doing this, I’m thinking 50 years is not a long time. In fact, I hope I keep playing and getting better. I don’t want to be that old guy that’s been playing forever that kids in their 20s can beat. So far, I’m not. But at some point, I might be. Here’s to making that far far into the future. And kids – remember, I’d much rather take age and wisdom over youth and enthusiasm. Said like a true curmudgeon.

The night before

Posted in Commentary, Musings on December 31st, 2019 by juan

Well, the decade is almost over. I know, not technically, but the 10’s are done for and the 20’s start tomorrow. It’s really hard to believe that not so long ago, we were going to start the new millennium. In many ways, it feels like Y2K was just yesterday. In many other ways, so much has happened. The world is different. We have the most politically divisive administration happening right now. Our borders are tightening and disappearing at the same time (i.e. the wall and the multinational). The Internet is not new, and is in fact a core service – not too different from power.

I’m not going to go political and will likely ruminate on the other changes later. For this one, I’m going to focus on the internet and maybe some predictions:

A dozen years or so ago, when I first started this blog, self hosting was not unheard of, but also not very common. Today, it’s in a similar place, but for different reasons. There’s a ton of services that offer blogging platforms for next to nothing. However, they seem to be ephemeral. Many people are also choosing to use one of the various social networks as their blogging platform. I’m not a fan of those for a number of reasons, but the biggest is the pernicious nature of their monetization. Others have written extensively on that, so I’ll skip the diatribe about being the product. For me, at least, self hosting is eminently more doable and practical now. The cost of storage is essentially zero. Back when this got started, gigs cost real money. Now, TBs are around $15/TB. That means a gig is 1.5 CENTS. A gig of writing will take a lifetime. What’s more amazing is the transfer cost has reached essentially zero as well. I have full symmetric gigabit internet coming into my home via a fiber link. The speed of my blog is nearly instantaneous. Even if I post images, they are automatically optimized by WordPress. If you click on one of them, it’s expanded and even at full resolution sending a 3-4MB image is fractions of a second. That’s nuts.

This same "freeness" of storage and bandwidth has led to an expansion of gizmos and services that are internet connected. I run a moderately complex home network. It includes several automations (lights, garage, doors, alarms, etc.) as well as several voice assistants (Alexa, Siri, etc.). Add up all the gizmos and gadgets and my home now, on average, has about 120+ things with IP addresses on them. That’s nuts. And it’s only going to get crazier. I have a few upgrades planned over the next few weeks that will help me manage that better (switches with better VLAN support, faster storage, etc.). I’ll write about those as I go through them, but in the end, I suspect I’ll be ready for a cambrian explosion of internet things. And I’ll have to worry about security – even more. The fact that I have this bandwidth and all these gizmos means that my attack surface has exploded. The fact that I have to create an enterprise level network to manage it is crazy. The fact that I have to do it with some serious skills and that it’s not been figured out as a simple appliance is crazy. Maybe there’s a business idea in there somewhere.

Anyways. It’s nuts. The last decade has changed many things and the home network is one of them. It’s not what I started to write about, but I’m glad I put it down. Let’s see how I/we adapt to this over the next decade.

Another rabbit hole

Posted in Commentary, Time Sink on December 30th, 2019 by juan

One day at my daughters karate class I noticed one of the other dads writing on his notepad. He had small handwriting like I do and his pen was … different. It was a fountain pen but a cheap one. So I got to talking to him. He pointed me to the brand. Platinum Preppy. They are about $9 each. Dirt cheap. You can also get refill cartridges that make this an extra super good value…

But it’s the start of a rabbit hole.

The first test for these was flying. Fountain pens have a reputation for not flying very well. This is largely deserved unless you take some precautions. Not knowing much about this, I did a quick look on the YouTubes and found this video. That was super helpful, but several hours of GouletPens videos, I was hooked. It took a while for me to internalize the content and then decided to step it up a little bit by upgrading with one of these Plaisir. For $13 or so you get a nicer looking pen. I couldn’t find them with the Extra Fine nib, but the nib from the Preppy and the Plaisir are interchangeable.

But … it still looks cheap.

So further down the rabbit hole I went. Spending more time with the Goulet video channel, I ran into one that talked about good traveling fountain pens. They ranged in price from about $50 to crazy money pens. Two of them stuck out. This upgraded Platinum and this TWSBI. The Platinum is about $100 and the TWSBI is about $65 before shipment and all that. I opted for the TWSBI because it looked cooler and it was refillable rather than a cartridge one. I liked the extra capacity of the refillable and the fact that it would let me try out different inks. And, I liked the idea of giving Goulet some money for all those videos

Turns out that that was another rabbit hole. Inks come in "wetter" and "less wet" varieties. Who would have known? The wetter ones flow faster – which is probably a good thing if you like to write with nibs larger than EF. The dryer ones are thicker and will produce thinner lines – which also don’t bleed through the paper as much. Speaking of paper, that’ll be another post where I get into the notebook rabbit hole. The first ink that I tried was a Waterman Black ink. Not knowing better, and having heard that brand before, it seemed like a good idea. It was only after I did that, that I discovered that it’s well known for being a particularly wet ink. Some more googling, and I found that the Pelikan 4001 varietal should work better. And it did.

But I wasn’t done.

Filling a piston filler, like my TWSBI, apparently has some magic involved. I couldn’t get a full reservoir. I tried several methods. I took the pen apart and cleaned it. Took it apart again and lubricated and cleaned it (turns out that’s important). Tried several variations of the refill and I could only get 1/3 of the reservoir filled. But … TWSBI makes a special gizmo that makes it stupid easy. Another $20 or so later and I finally got a full fill of the reservoir.

The line I produce with this TWSBI is not as EF as the Platinum. I suspect part of it is the pen and part of it is the ink. However, it’s pretty good and … it does write very very nicely.

But I haven’t flown with it yet. That test comes in a couple of weeks. I’ll make sure to bring some extra tissues in case I get a blow out, but theoretically the vacuum fills should not have that problem.

More on that later.

Tags: ,

Speeding up low priority stuff on a Mac

Posted in Commentary, Geekfest on December 29th, 2019 by juan

I’m in the middle of taking a MacBook Pro I have that’s been sitting idle and setting it up as my kid’s computer. First thing I had to do was to wipe it clean. Then a reload (High Sierra was loaded on it). As part of the setup, I stupidly turned on FileVault.

I then went to upgrade to Catalina and I have to wait HOURS while the drive is encrypted. That’s ridiculous. It’s a brand new install with nothing on the encrypted drive but the basic OS install.

However, I did find a neat little trick and figured I would share:

sudo sysctl debug.lowpri_throttle_enabled=0

That disables the low priority mode for a bunch of services like Time Machine and FileVault. The progress bar is still showing hours, but it’s significantly faster. In the few minutes I’ve had it on, the progress bar has moved from ~20% to ~50%!

Great tip for future reference.

Oh, and this does not persist across boots. Not sure I want it on all the time, but in case I do, there is a mechanism to do that via Launch Daemons. I’ll experiment with that on this MBP when I’m running Catalina. I fear that it will not work there because of the new sandboxing of the OS. More on that later.

And things change

Posted in Commentary on December 28th, 2019 by juan

The lovely Mrs. and I did something for the first time. We left the kids at home alone without a babysitter. This feels like a major life milestone, specially for since I’ve had little ones in my life for 26 years.

We went for sushi at our favorite place, Sushi Nami. As usual, it did not disappoint. William, the head chef, did us a solid by bringing out some rather unique things, including the pictured lobster. He was very happy to see that nothing went to waste and we (I) ate the legs and the inside of the lobster. If you haven’t done that, you are missing out. Eat it like you would a crab. The meat is rather sparse, but what you do get is absolutely delicious.

And sorry for the neon. That’s the Mrs’ idea of cool now days.

One more basic diversion

Posted in Commentary, Geekfest on December 26th, 2019 by juan

I found and loaded a copy of BBCBasic on the AltairDuino. This is a basic I never used when I was really running CP/M but it looked interesting. In the veins of the previous MBASIC post, I ran the sieve on it to see how well it ran:

[2019-12-25 10:45:15] >LIST
[2019-12-25 10:45:17]     5 PRINT "Start"
[2019-12-25 10:45:17]    10 DIM flag%(8191)
[2019-12-25 10:45:17]    20 count = 0
[2019-12-25 10:45:17]    30 FOR i = 1 TO 8191
[2019-12-25 10:45:17]    40   flag%(i)=1
[2019-12-25 10:45:17]    50 NEXT i
[2019-12-25 10:45:17]    60 FOR i = 0 TO 8190
[2019-12-25 10:45:17]    70   IF flag%(i+1)=0 THEN GOTO 150
[2019-12-25 10:45:17]    80   prime = i+i+3
[2019-12-25 10:45:17]    90   k=i+prime
[2019-12-25 10:45:17]   100   IF k > 8190 THEN GOTO 140
[2019-12-25 10:45:17]   110   flag%(k+1)=0
[2019-12-25 10:45:17]   120   k=k+prime
[2019-12-25 10:45:17]   130   GOTO 100
[2019-12-25 10:45:17]   140   count = count + 1
[2019-12-25 10:45:17]   150 NEXT i
[2019-12-25 10:45:17]   160 PRINT "End, Primes =", count
[2019-12-25 10:45:17] >RUN
[2019-12-25 10:45:19] Start
[2019-12-25 10:50:49] End, Primes =             1899
[2019-12-25 10:50:49] >

As you can see, the code is slightly different. The indentations are provided natively by BBCBasic. Interesting note is that I couldn’t LOAD(yes, it all has to be caps) the code. This Basic is expecting a tokenized form. However, I did some sleuthing and found out you can *EXEC "FILENAME.TXT" and it will import an ASCII file in.

Anyways, the result above is pretty clear. This basic runs the sieve in 5 minutes 30 seconds or roughly 21% faster. Cool. Wish I’d know about this back in the day.

And it’s Christmas

Posted in Commentary, Musings on December 25th, 2019 by juan

Santa has been extremely generous this year. The kids are super happy and the lovely Mrs was very surprised by her presents. That’s always a good thing.

For me, the presents were also very nice. However I’m excited about the revival of this blog. The tools available to post are just amazing compared to what I had back when I first did this. WordPress itself has evolved amazingly. Looking forward to playing with that. But the fact that I’m writing this on my phone and will soon be posted to the site is just … well cool. So cool.