Young Hands Club

April 20, 2020

JFW plan, week of 20 Apr 2020

Filed under: Jacob Welsh — Jacob Welsh @ 6:28 am

Commitments:

1. Continue health insurance search: 3h.

2. Continue conversation with prospective JWRD client in Vermont: 3h.

3. Follow up with Robinson to work out his priorities and what more is needed from me, and do that (eg. sales article review, proposal for client): 4h.

4. Investigate TRB sync logic, towards the goal of figuring out why it frequently stops getting connectable blocks. (Leaving aside for now how/when it connects to peers, which I was also curious about upon observing very slow recovery after network outage, but that looks like a separate matter.) 4h.

5. Refine new time tracking tool as needed. 2h.

6. Blog: main priorities are my existing unsung stuff namely trb patches, gbw, gscm. Also there’s the router setup and where I’m heading with the differential backups work. I’ll go for three articles, since that’s the pace that seems manageable lately. 10h.

7. Unexpected tasks: 4h.

8. Chat in #ossasepia, or otherwise engage blogs: 5h.

9. Weekly review: 2h at 17:00 UTC Friday (13:00 local).

10. Next week’s plan: 1h.

11. Keep in touch with past students + remote friends and family: 1h. (Didn’t end up doing this Sunday so perhaps I’d better make it a part of the work week.)

Time permitting:

12. Continue work toward a human-sized differential backup tool.

April 17, 2020

JFW review, 14-17 Apr 2020

Filed under: Jacob Welsh — Jacob Welsh @ 8:46 pm

This week got off to a slow start; causes coming to mind are my struggle towards a Laufrichtungsanderung on reviews and plans, as well as pondering what was happening with Robinson and what I might do about it.

After publishing the plan there was some feeling of “why did I go writing all that stuff, sure I wanted to do it but now I have to!” By that evening though I was getting back to productivity, starting by continuing on my TRB direction, then mixing the momentarily unsexier items back in.

1. Research health insurance: 4h.

Not started; I’ll make this the focus for Saturday.

2. Basic backup scripting for newly upgraded Thinkpad. This is just to adapt my existing tar+gpg based full backup script, with excludes for large datasets that don’t fit this treatment (bitcoin database, local software & web archives). 2h.

Done in 1.2h, which involved tweaking my script for Busybox tar, running, verifying, and some data pruning. Explicitly breaking the backups problem into this and the following part was helpful in getting started.

3. Investigate options for efficient differential backups on Gales. In the past I’ve used rsync and unison but the prospect of committing these to my own V-tree gives me pause. The Gales mirror sync scripts I wrote prove it can be done quite simply; one option would be to expand these to handle metadata and soft/hard links. Minimum 3h.

Not started; this could be a good one for the rest of today.

4. Streamline time tracking tools or usage – no more manual aggregation: 3h.

I also wanted to lose the clunky Ledger format, so ended up taking 4.3h for a pure sh/awk rewrite, in which I learned a bit about calendar date processing where in my Python days I’d just “import time”. It doesn’t do multi-level aggregation yet but should at least beat what I was doing before; I’ll cut over for the upcoming week, see how it goes and budget some time for tweaks.

5. Blog: definitely don’t write anything about TRB patches, Gales Scheme, Gales Bitcoin Wallet, or router setup! 10h.

So far the anti-plan prevails. I spent 4.8h refining and further testing my TRB build system simplification patch, further cutting down on the proliferation of makefiles and build directories, discovering parallel build was broken (and was before the change, no thanks to openssl) and fixing that. Then 2.7h reviewing and signing the whole vpatch set, with my main key where I was confident in my grasp of the patch and my “unchecked” key otherwise.

10h actual writing probably isn’t happening by Sunday but I’ll go for at least one article on those patches.

6. Assist Robinson as requested, or otherwise unexpected tasks: 5h.

This being eaten by the above patch refinement, I’ll need to allow for some more as it looks like there’s at least a phone meeting with a prospect coming up.

7. Chat in #ossasepia, or otherwise engage blogs: 5h.

Around 4h, but I haven’t kept up with blogs too well, such as billymg’s survey.

8. Weekly review: 1h at 18:00 UTC Friday. Not expecting to be done with all the above by then but I can look at how it’s gone so far.

Started late (I got recruited for a morning shopping run and didn’t get moving soon enough on that), and wound up at 2.5h with some distractions.

9. Next week’s plan: 1h. Efficiency can be improved later but priority is to get the plans more meaningful/useful.

I’ll go for this on Saturday.

10. Keep in touch with past students + remote friends and family: 1h.

Not seeing this as “work” really so leaving it for Sunday.

Time permitting:

11. Investigate TRB sync and peering logic. My new node has made very little progress, with intervals of nothing but “bastard blocks” alternating with silence, a behavior I’ve observed many times before but is really starting to bug me.

I spent 3h thinking on this and writing some node monitoring scripts. One of these confirms that it spends most of its sync time doing nothing useful whatsoever (presently 13 hours since last accepted block) but works briefly on restart.

Total here is 23.5h for the 3.5 days. It’s looking feasible to hit the remaining targets, except the 10h writing, in the remaining 1.5 days, as long as I stay on track. One change for next week will be bringing JWRD discussions and sales assistance back to the front and center.

April 14, 2020

JFW plan, 14-19 Apr 2020

Filed under: Jacob Welsh — Jacob Welsh @ 9:43 pm

Commitments:

1. Research health insurance: 4h.

2. Basic backup scripting for newly upgraded Thinkpad. This is just to adapt my existing tar+gpg based full backup script, with excludes for large datasets that don’t fit this treatment (bitcoin database, local software & web archives). 2h.

3. Investigate options for efficient differential backups on Gales. In the past I’ve used rsync and unison but the prospect of committing these to my own V-tree gives me pause. The Gales mirror sync scripts I wrote prove it can be done quite simply; one option would be to expand these to handle metadata and soft/hard links. Minimum 3h.

4. Streamline time tracking tools or usage – no more manual aggregation: 3h.

5. Blog: definitely don’t write anything about TRB patches, Gales Scheme, Gales Bitcoin Wallet, or router setup! 10h.

6. Assist Robinson as requested, or otherwise unexpected tasks: 5h.

7. Chat in #ossasepia, or otherwise engage blogs: 5h.

8. Weekly review: 1h at 18:00 UTC Friday. Not expecting to be done with all the above by then but I can look at how it’s gone so far.

9. Next week’s plan: 1h. Efficiency can be improved later but priority is to get the plans more meaningful/useful.

10. Keep in touch with past students + remote friends and family: 1h.

Time permitting:

11. Investigate TRB sync and peering logic. My new node has made very little progress, with intervals of nothing but “bastard blocks” alternating with silence, a behavior I’ve observed many times before but is really starting to bug me.

Past items being sidelined for now are v.sh/vtools study, and genesis of programs I use e.g. Ledger.

JFW review, week of 6 Apr 2020

Filed under: Jacob Welsh — Jacob Welsh @ 6:42 am

Based on the live discussion.

I skipped some items from my plan and added some others. The status in detail:

1. SSD upgrade + backup scripting for TRB machine: 3h.

I took 3.8h to do the upgrade including a manual backup, physical swap, partitioning and restoring, and wiping the old drive. (One inconvenience was not having a pluggable USB/SATA enclosure here so some of this was done in-system from temporary boot media.) I didn’t do the backup scripting and haven’t really figured out why I preferred not to.

2. Verify mod6’s TRB Keccak tree: 1h.

Done in 2.4h including leaving some comments on his blog, or rather the spam queue thereof.

I could watch out for things like this that sound simple but where I don’t yet have the ingredients lined up or work clearly envisioned for applying a doubling factor.

3. Update and test TRB patches (rawtx, Gales build): 6h.

Done in 6.7h.

4. Continue researching and apply for temporary local health insurance: 4h.

No progress (well, on my part; family sent along some links). It’s something I’ve been pushed toward doing and “makes sense” but I haven’t got my own decision to embrace it fully.

5. Continue v.sh and/or vtools study: 2h.

No progress. Still a longer-term goal but didn’t seem that important right now.

6. Make a list of applications for genesis.

Likewise.

7. Keep in touch with remote friends and family.

Did some email reading & writing.

8. Assist Robinson as necessary.

Not much was requested, in particular there was no new sales article draft; I gave some suggestions on lesson ordering and module breakdown.

9. Next week’s review by Friday.

Not even by Sunday this time.

Unplanned work included:

  • MP-WP patch cleanup and writeup (initially for billymg as he was looking into server-side selection), 5h
  • Ada recipe roundup and archiving (spurred by seeing trinque looking into it and ave1 briefly showing up): 5h
  • Ada work writeup: 8.7h
  • Testing/maintaining backup internet and IRC (+ some email and chat that got lumped in ((This is an example of detail I get from not keeping to strict labels in my time logs, since I don’t remember to log task switches 100% of the time; I suppose a notes field could be kept separately from a standardized task label.))): 2.2h
  • TRB SetHex investigation and writeup (made sense to do while the patches were fresh in mind): 3.1h

There was #o chat time which, along with writing, I thought was clear enough as an implicit daily thing, but I’m not presently finding where I said that, and seemingly not clear.

As there’s an ongoing gap between plans and reality, the question is why, whether it’s helping or hurting, and what I want to improve on. It seems to me it’s helpful that the plan allows some slack for new things that come up, but less helpful veering toward pretentious that it includes so many things that get no attention. I’m having trouble accepting that I need to drop some of them though; there’s still an upswell of “maybe this week!” hopes.

Also I’m still not quite seeing MP-WP or Ada as informative of the direction I’m likely to go this week, as I completed what I wanted on them for now, plus Trinque spoke of working on a simplified GNAT recipe so I’d just as soon wait to see what he comes up with.

April 6, 2020

JFW plan, week of 6 Apr 2020

Filed under: Jacob Welsh — Jacob Welsh @ 6:11 am

1. SSD upgrade + backup scripting for TRB machine: 3h.

2. Verify mod6’s TRB Keccak tree: 1h.

3. Update and test TRB patches (rawtx, Gales build): 6h.

4. Continue researching and apply for temporary local health insurance: 4h.

5. Continue v.sh and/or vtools study: 2h.

6. Make a list of applications for genesis.

7. Keep in touch with remote friends and family.

8. Assist Robinson as necessary.

9. Next week’s review by Friday.

Time permitting

10. Revisit the Gales Linux build in light of questions that arose.

JFW review, week of 30 Mar 2020

Filed under: Jacob Welsh — Jacob Welsh @ 5:46 am

This week saw progress in raising knowledge from implicit to explicit, in understanding of theoretical and practical aspects of V, and of the broader methodology of working things out gradually through practice and discussion.

In my seemingly ever-optimistic planning, I had given five hours for a router setup and a drive upgrade. What slipped my mind was the state of our router setup documentation, which was really more a set of exploratory notes from when I first worked it out in 2016, and hadn’t been updated for subsequent improvements. Indeed I had to give substantial further guidance “on the wing” for the process with our pilot clients. Since I now had to revisit the details again, I took the chance to substantially update the document and fill in gaps. All told this took 20 hours, which still strikes me as excessive. There were perhaps times when I wasn’t well focused and might have switched to something else, except that I really wanted to see the job to a conclusion this week.

In blogging, I got two technical articles out. There was more queued up, but, well, I guess I just wasn’t feeling the relative motivation.

One item on which I was profoundly unmotivated to move, despite augmented family prodding, was the health insurance research. Perhaps it’s that I’ve quite enjoyed the freedom from website logins and credit card payments and important policy update notifications and emailing around document scans since I dropped coverage some years ago. Still, with the notoriously costly and byzantine US healthcare system, going it alone seems a risky proposition and I should at least get some more clarity on the options.

Bedtime improved somewhat, but fitfully. There was one night I had a bit much excitement on my mind and didn’t get to sleep for a while, which then led to needing to sleep in further the following day.

As for the review, there was much less outright spinning before getting started, but some anxiety Friday evening when I had planned to do it, then Saturday following, and I chose to defer it rather than push through in that state of mind. ((As I publish, I’ve been on it for 1.7 hours; there were no changes to be made on the final read-through, which perhaps indicates I still obsess over wording on the first go rather than letting a draft be a draft.)) The daily template from my plan has continued to have little bearing on reality, so I’m thinking to retire it. At least I’ve been more regular about walk/exercise and reading so perhaps it’s served out its purpose.

March 30, 2020

JFW plan, week of 30 Mar 2020

Filed under: Jacob Welsh — Jacob Welsh @ 6:22 am

Daily template

Morning (5h):

  • 1h warmup & breakfast
  • 2h write for blog + break
  • 2h recent log + article reading + responses, or errands.

Afternoon (6h):

  • 0.5h lunch
  • 1h reading: leisure on Mon/Wed/Fri, work related on Tue/Thu/Sat.
  • 1.5h focused project work time
  • 3pm – 5pm (UTC-4) project work + #o chat window
  • 0.5h walk or exercise
  • 0.5h flex

Evening (5h):

  • 2h dinner
  • 0.5h blog prep
  • 1.5h flex
  • 0.5h journal
  • 0.5h winding down

This indicates 4-5.5 hours for project work on typical days. Subtracting 4 for weekly review and planning and 4-6 for social time gives 18-30 in the week.

Specific tasks

1. Continue office setup (router OS install + config; SSD upgrade for TRB machine): 5h.

2. Continue researching and apply for temporary local health insurance: 4h.

3. Sign and release v.pl patch and starter.

4. Press and test mod6’s TRB Keccak tree: 1h.

5. Update and test TRB patches (rawtx, Gales build): 6h.

6. Continue v.sh study: 2h.

7. Keep in touch with remote friends and family.

8. Assist Robinson as necessary with chasing deals, editing sales content or choosing boundaries to break the lesson plans into modules.

9. Next week’s review: due Friday (at least as it stands now).

Time permitting

10. Make a list of applications I use, for later genesis.

Other

Advance bedtime by 3 hours through the week. (I have no clue why I’m doing this plan at this hour… it just wouldn’t feel like a Sunday if I weren’t up doing some late thing apparently?)

March 29, 2020

JFW review, week of 23 Mar 2020

Filed under: Jacob Welsh — Jacob Welsh @ 4:57 am

Having arrived at my parents’ place on Sunday after a scramble to evacuate the Isthmus, I found myself with an office to provision and an ample pile of sleep debt to pay. I shopped online and in town in a climate of increasing unavailabilities on both fronts, securing items including ethernet switch, ownable router, headset for VOIP calls, prepaid cell plan refill, surge protector, and SSD. ((My home TRB node was on a desktop that stayed behind.)) The family supplied space, a table, and a temporary exemption from the ban on draping network cables over the mantelpiece. ((“Are you sure you can’t just use the WiFi?” – “Yes.”

What, is it my fault the place wasn’t properly cabled – or at least conduited – at construction? Though to their credit they had sufficient length of cable on hand.))

I did some approximation of the deferred reviews, though with considerable cost in spinning-time. This added a fresh contribution to what seems to be a growing pile of grumpiness and resistance underlying a layer of lip service to the practice. I talked about the matter with my parents, in the context of a larger question of why I keep myself under such constant pressure. We concluded that at least the way I go about it now the reviewing isn’t worthwhile, but there’s no reason it couldn’t be done much quicker; maybe less perfectionism, or less self-flagellation, or giving recorded conversations a try. While the TMSR shutdown may have added to the brain-mess, it can’t be the primary cause since this has been ongoing.

The work involved in getting a reliable and dependency-light V on Gales turned out to be much more than I’d anticipated, but I’ve now advanced it to a useful milestone — and gained all the more material to write about, though I didn’t at first see this as an upside.

In more front-line JWRD activities, I read and gave some feedback on Robinson’s sales article drafts, and got our first training session outline dusted off as a sample for prospective client Daniel Godwin the cross-shaped.

Items in the incomplete bin are testing the Keccakized TRB V-tree and local health insurance (though relatedly, we found that my parents’ doctor is not seeing new patients even for emergency). I’m thinking to leave them there and take an actual Sunday off.

March 26, 2020

JFW review, March 9 – 22 2020, part 2

Filed under: Jacob Welsh — Jacob Welsh @ 6:51 am

Looking closer at the TMSR situation might be what got me hung up on the review before, and perhaps I’ll set it aside again in the interests of keeping the rest moving, though this leaves a debt that will surely come due soon enough.

Another point from the wallet episode was that I could have asked more assertively or widely for help on testing.

In between wallet work days I prepared and delivered my relational databases presentation for the Junto. Having done a lengthy search for introductory texts online and come up short of anything satisfactory, I decided to go to the source with Codd’s 1970 “A Relational Model of Data for Large Shared Data Banks”. This certainly deepened my own grasp of the concepts and their historical context. I used selections to guide the lecture, with some questions to maintain engagement, then covered some SQL basics, and finished with a guided exercise in designing a schema with a few relations, inserting rows and running queries from the shell. There isn’t a strong programming background in the group and I don’t expect anyone went home able to put it all in practice, but I’d say it gave a glimpse of a world beyond the spreadsheet and whet the appetite for more, which is the main idea of these presentations.

Not so great was doing the prep in last-minute emergency mode, not having substantiated prior plans of getting ahead on it.

In day-to-day Bitcoin adventures, the price crashed against fiat, in a time marked both by MP’s closure and escalating coronavirus mayhem. I used GBW to recover the last of my wayward coin from PRB change addresses and an ancient phone wallet backup. On Tuesday the 17th I decided to sell a good chunk of what I had left; unfortunate to be doing so under the conditions, but I figured it safer than risking being forced to liquidate even lower. In a first OTC sale attempt, the counterparty “was buying” and “had cash” but turned out to be brokering and didn’t. As lockdowns in the city were getting ever more pronounced, I pushed to get it done the next day with a more reliable local broker.

This proved good timing indeed, as Panama’s virus response reached a breaking point for Robinson and me with the announcement of upcoming halt of passenger flights. I guess it can’t really be called a Berlin Wall since they don’t give advance notice when those go up; still, the prospect of being locked into a small and import-dependent country for an indefinite time, having a bunch of contacts but just a handful of friends and no family, did not appeal in the least.

I moved quickly, booking a flight, getting packed, renting a vehicle, and hauling stuff out to assorted storage locations, both for security and the possibility of discontinuing the apartment contract. Local friends proved solid in this process, and we got in a farewell celebration – just marred by a takeout pizza run that barely finished in time to get home by curfew.

March 25, 2020

JFW review, March 9 – 22 2020, part 1

Filed under: Jacob Welsh — Jacob Welsh @ 6:18 am

It’s been a momentous two weeks since my last review.

I started Monday the 9th behind schedule, having overrun on review and planning the night before. Over the next three days I poured considerable time and effort into polishing off the various parts of my wallet. One aspect of this was simplifying some of the code and configuration process by eliminating unnecessary optionality, and documenting the choices that remained – or so I thought. Another was getting my Scheme interpreter into shape for a genesis, such as getting the tabs and newlines a good deal closer to TMSR style, and backporting some simple improvements from an experimental branch. I let slide the sendrawtransaction TRB patch regrind, in part because I had little idea what sort of bitcoind MP was running or if he even wanted to use the online part (gbw-node) at all. I didn’t note this explicitly though, possibly until now.

Upon entering the field with MP on Thursday though, the attempt sunk before any of these points even came up, because of assumptions I hadn’t even realized I’d been making. I walked straight into a trap, by answering that I was indeed trying to state dependencies explicitly, yet left the download and V press steps to the imagination because “obviously he’ll know how to do that”. The upside of the preparation was that I was at least well set up to be surprised; that is, rather than missing things I knew I should have done, I learned a new standard of what preparedness means.

This intersected the larger story of the closure of TMSR announced the day before, and I remain grateful for being given my moment to struggle there, right at the end of it.

To be continued.

« Newer PostsOlder Posts »

Work on what matters, so you matter too.