WHAT STOPS ME

Well hello there readers. I've finished babbling on about 
Australian political parties, at least for a few months until the 
state election comes up. I got a free pencil when I voted this 
time, since the old teathered-graphite arrangement is presumably 
insufficiently sanitary these days. Nice to see from the result 
that a lot more people were with me in opposition to both major 
parties this time, though naturally not rallying behind any party 
that I particularly like as an alternative. I do always feel a bit 
like a mug after each election when I've looked into all these 
parties and picked out some that sound vaguely reasonable to me 
only to be reminded that they don't actually have a snowball's of 
ever being voted in. Democracy is as much about placating the 
masses so that they won't start a revolt as it is about finding an 
ideal leadership, but so be it.

My party summaries are also now Csplit up into individual files 
here, with The Greens added because I didn't get to them until the 
election day itself. After the result they acheived this election 
they're hardly a micro party now though:
gopher://aussies.space/1/%7efreet/elections/fed2022

Still recovering from all that and frustrated by other things I 
decided to have a bit of a 'light' week this week. Last weekend I 
tinkered with one of my side projects and went for a morning drive. 
Then I got a socialisation overdose at my grandmother's birthday 
party where I was bored stiff for hours quietly listening to family 
members talking nonsense, especially my grandmother who has gone 
downhill a lot mentally since moving into the nursing home at the 
start of the year. Then back to me, myself, and I again for another 
week, not without some degree of relief.

My 'light' week was symbolised by me wearing my mechanical 
self-winding wristwatch instead of the Casio digital 
calculator-watch that I normally wear (yes for most people the 
latter might be more of a novelty than the former, but for a 
mobile-phone-avoider like me a calculator watch is actually quite 
handy). The idea is usually that I wear the mechanical watch when 
I'm not doing real work so I don't need a calculator, alarm, 
stopwatch, or particularly accurate timekeeping. But I wasn't 
really having a break from work during the week, just trying to 
take it easy and get out of a rut.

Ideally I would have gone back to one of my pure electonics 
projects and avoid all the computer-based work  (election research 
included) that has been particularly responsible for sending me 
nuts. Unfortunately for those I've pretty much run out of either 
good ideas or confidence in them at this point, so far as selling 
them goes. Too many boxes full of unsold stuff - a bloke's got to 
learn eventually that it's all these smartphony, 
needlessly-internet-connected, vastly over-complicated, gizmos that 
people want now. Even if they're exactly the things I avoid using 
myself.

Instead I went back to a project that I got stuck on a couple of 
years ago and have been peeping back at from time to time since, 
working on everything but the one bit of code that I can't quite 
figure out. The idea is simple enough: there's a library that in 
part implements communication with a particular hardware interface. 
I want to use the library with a different hardware interface 
(implementing the same complicated data protocol). I've got a 
manufacturer-provided library for the latter interface, so it's 
just a matter of swapping over the relevent function calls.

Not quite so easy, because the libraries do things at different 
layers so I had to mix-and-match code from different places. Also 
the person who wrote the first library had never heard of comments, 
so lots of trouble figuring out how variables correspond to things 
in the new library. But the real problem comes down to this one 
function call in the new library that wants a pointer to a 
user-supplied function that doesn't seem to be demonstrated in the 
examples (though these examples work at a higher level than I'm 
working at). This seems like it shouldn't cause me all that much 
trouble to figure out, as I conclude before each time I go back to 
working at it, but somehow I just keep going in circles. Half my 
trouble is that at times like these I use Cscope quite heavily, 
especially for cases like this where the code is split over a long 
list of  files. It turns out Cscope gets stuffed up by spaces in 
directory names, exposing various bugs. I didn't want to rename the 
directories in the (Windows-y) source tree in case it broke 
includes, but it _finally_ dawned on me yesterday that I could keep 
a separate copy of the source tree for Cscope's sake and just 
recursively rename the directories in that. Of course I realised 
this late Friday afternoon.

It probably is more of an attitude problem of mine than anything 
else. I spent a lot of the week doing my usual 
making/selling/posting stuff routines so I didn't really do nothing 
all week, this was just the thing I needed to _achieve_. It makes 
me think of all my other stalled projects, most of which are hobby 
rather than business ones because with them I'm not so determined. 
I think that all people who create things accumulate some projects 
that never quite make it to the finish line. Heck GitHub seems to 
have become a testament to that more than anything else, with all 
the abandoned repos there promising great new concepts if only 
there'd been more than five minor commits eight years ago. I don't 
know about them but for me the stopping point for a project, 
usually not consciously recognised at the time, isn't often so much 
about running out of ideas but losing confidence in being able to 
pick the right direction to go. The point where uncertainty 
overwhelms the original vision of how a project can be realised.

It's not just that I don't know how to do something, but when I 
can't see how to learn how to do something, through my usual 
methods of reading or experimentation. There's one project, for 
example, where it stalled because I couldn't figure out how to bend 
a pipe. I still don't know really how to bend a pipe with the 
equipment that I've got, but I've worked with formed metals enough 
now that I would have more confidence in being able to mess around 
for a bit in the shed and work out a way to do it soon enough. I 
wouldn't do things much differently to how I might have back then, 
only I'd have that little bit more confidence that there's be a 
successful outcome.

It's not only unenjoyable to pursue working on a project when you 
don't really see how you'll be successful at overcoming a problem, 
but that same lack of confidence seems to cloud one's own thought 
process. In my case at least, the process for deciding what to do 
next seems to fall apart. To force myself on I usually stick to the 
idea of "banging my head against the brick wall until I break 
through", which means just randomly varying approaches to analysing 
problem until _eventually_ I either realise some clue that I've 
ignored or unexpectedly coax out a new one. Unfortunately that's 
not very specific advice. For some things like a part of a program 
or electronic circuit that's behaving wrongly you can hope to 
simplify it down until the issue is pinpointed, but that's not 
applicable to something like these libraries that I'm working on.

Overall I am short on any closing advice for this. Ideally one 
wouldn't take on a creative project that one ends up stopping. 
Skills may be learnt along the way, but they could most likely be 
learnt through another project that could succeed with those skills 
alone. It's impossible to know though, because it's only at the 
point which you stop working on a project that you really 
acknowledge, whether consciously or not, that your original vision 
for how it could be realised was wrong. Like most thing in life 
then, it's probably just down to dumb luck, and the thrill of 
beating the odds by coming through with a project past the edge of 
one's known abilities can indeed be very rewarding in itself.

 - The Free Thinker