Photo by Isi Parente on Unsplash

Non-Fungible Token

Here is the wikipedia page

But what does it mean?.

And meaning is the key here.

What does it mean to own something?

According to wikipedia

Ownership is the state or fact of exclusive rights and control over property...

What is property?

Property (latin: Res Privata) in the abstract is what belongs to or with something...

Did you question my use of wikipedia to provide meaning to those words?

I doubt it.

This is because wikipedia has become legitimate.

In political science, legitimacy is the right and acceptance of an authority...

Once upon a time that was not…


Photo by Jamie Street on Unsplash

I spent the last 2 days of my life battling Node and Webpack.

There is some weird import/require module thing that is causing the code I’m writing that depends upon the js-ipfs / ipfs-http-client module to break with an error like:

TypeError: globals.fetch is not a function

As I tracked it down it appears this is due to webpack in ‘node’ mode.

When I run the same code, excluding webpack, it runs fine. This code also previously ran fine in the browser.

After two days of frustration and research I’ve come to the unhappy conclusion that here is a sort…


Photo by Kelly Sikkema on Unsplash

As a developer I find thinking of the best name for something is an activity I give particular importance to.

As I mentioned in a previous article I view programming more as world building. Similar to a fiction-writer creating a ‘fictional world’ for their readers.

Just as a fiction-writer spends time naming people, places, and things in their world I spend time naming variables, and functions, and modules.

As a person who has been ‘naming things’ for decades I can say with confidence that this critical task never appears to get easier.

In fact, it gets more difficult with time…


Photo by fran hogan on Unsplash

Early in life I used to think there was a ‘right’ way of programming, or a ‘right’ way of solving a programming problem.

I think this is a common disease and so want to write a few words to help those who might likewise be afflicted with this idea of ‘rightness’ in programming.

Warning

The words below are my own personal understanding and opinions on this subject. They are carefully chosen, but like all opinions they are fleeting and are an expression of my thoughts at the place and time that I’m writing them from.

My context

I’m an old software developer who…


Photo by Sebastian Pociecha on Unsplash

Snaps seem like a good idea. I like the idea of application-segregation.

But the snapd daemon started mysteriously writing at 300kb/s to my memory cards on 3 of my 4 Raspberry Pi devices today after a month or so of uptime.

I’m not currently using any snaps and memory cards don’t like being written to constantly.

Example of what was being written:

[pid 53577] openat(AT_FDCWD, "/var/lib/snapd/state.json.sfM0kXVR1VHx~", O_WRONLY|O_CREAT|O_EXCL|O_TRUNC|O_CLOEXEC, 0600) = 3 [pid 53577] write(3, "{\"data\":{\"auth\":{\"last-id\":0,\"us"..., 49776) = 49776 [pid 53577] openat(AT_FDCWD, "/var/lib/snapd", O_RDONLY|O_CLOEXEC) = 9 [pid 53577] newfstatat(AT_FDCWD, "/var/lib/snapd/state.json", {st_mode=S_IFREG|0600, st_size=49819, ...}, AT_SYMLINK_NOFOLLOW) = 0 [pid 53577] renameat(AT_FDCWD, "/var/lib/snapd/state.json.sfM0kXVR1VHx~", AT_FDCWD, "/var/lib/snapd/state.json")…

Photo by Skitterphoto from Pexels

After a few months of programming using the async/await style of dealing with Promises I’ve come to a tentative conclusion that I don’t like async/await.

One problem is when problems (Exceptions) arise. One is tempted to simply ignore exceptions with async/await. Forget that errors are even a possibility.

async function foo(): Promise<string> {
const bar = await someProcess();
const baz = bar + “ something insightful”;
return baz;
}

What happens when someProcess() fails? Who knows/cares. We are safe within our Promise and can rest assured that the failure will magically result as a ‘reject’.

The syntax/style leads one to…


Photo by Pixabay from Pexels

They are too complex difficult and fragile to consider using for something as precious as source code.

I recommend avoiding them at all costs. I can’t even imagine this insanity being used anywhere.

I note that even the linux kernel doesn’t use submodules as far as I can tell: https://github.com/torvalds/linux

I discovered a nice pattern that works in their place:

  • create/init a repo named ‘lib’ (name it whatever you want, I’m using this name as the example name)
  • create directories and add code (modules) under the ‘lib’ directory
  • add/commit from the root of the ‘lib’ repo via normal git add…

Photo by Markus Spiske from Pexels

I’m a senior (aka old, been in the game for > 30 years) software developer moving from the Java ecosystem to the Javascript / Typescript ecosystem.

There have been frustrations and bumps along the road, but in general coding in Typescript has been pure joy, and I highly recommend it to anyone thinking of working with it.

Recently, when I’ve reached for something in the Javascript / Typescript ecosystem it’s there (that wasn’t always the case years ago…I remember the dark times…). …


Break new ground, plant seeds.

Tend the soil….and wait.

The physical actions take blood, sweat, and tears.

The truly difficult part is not knowing if the seeds one plants today will grow into something worth the effort tomorrow.

A good trick is to take joy in the efforts. Let the fruit be its own reward, but also let the tending and the breaking be enjoyable.

It’s also OK to abandon what was started if it isn’t working. That is also a reward. The fruit of knowledge earned with sweat and tears is all the sweeter.

So start something new today…

Matthew Joseph Taylor

I play with the bits and the bits play with me. See mjt.dev for more.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store