@@ -29,9 +29,97 @@ This edition covers what happened during the month of November 2021.
2929### Support
3030-->
3131
32- <!-- -
33- ## Developer Spotlight:
34- -->
32+ ## Developer Spotlight: Randall S. Becker
33+
34+ * Who are you and what do you do?
35+
36+ I am Randall S. Becker, president of Nexbridge Inc. I have been a
37+ software developer and architect for many decades. Aside from the
38+ obvious SCM domain knowledge, my interests are around data structures,
39+ performance, computability, and languages. About 10 years ago, I joined
40+ the ITUGLIB Technical Committee, which is an Open Source group that
41+ maintains code for the HPE Nonstop community - the platform was
42+ originally called Tandem Computers Inc.
43+
44+ * What would you name your most important contribution to Git?
45+
46+ I have been maintaining the code associated with the HPE NonStop
47+ platform for the past six years and was key to its successful port to
48+ both the x86 and ia64 variants of the platform. In addition, I keep an
49+ eye out for changes that may put the port at risk and run the CI/CD
50+ environment that builds and tests Git on the platform.
51+
52+ * What are you doing on the Git project these days, and why?
53+
54+ I am currently working on the ` .git/config ` ` includeIf ` function for
55+ worktrees, planning a threaded version of the port, which is challenging
56+ considering the nature of the platform and community. We have to
57+ maintain compatibility with some old versions of the operating systems
58+ that lack some more modern capabilities. The platform is an MPP
59+ architecture without kernel level threads (yet) and the port to POSIX
60+ threads is very messy with the operating system wrappers we have to use.
61+
62+ * If you could get a team of expert developers to work full time on
63+ something in Git for a full year, what would it be?
64+
65+ There are really three areas where I would want to work. The first, most
66+ important, is improving multi-level signing capabilities in Git to
67+ support the software supply chain. I could leave it at that, but the
68+ full set of requirements in various countries are not yet fully fleshed
69+ out. Another two, purely to support the NonStop community is converting
70+ the code written in Go (Git LFS) into C and making it part of the standard
71+ product. The other is migrating the interpretive code to a c99-standard
72+ code base.
73+
74+ * If you could remove something from Git without worrying about
75+ backwards compatibility, what would it be?
76+
77+ I would move directly to SHA-384 or SHA-512 and toss both SHA-1 and
78+ SHA-256 as soon as possible. The same applies to any signing
79+ capabilities to support 8K or higher key sizes in defense against future
80+ hacking using the capabilities quantum computers.
81+
82+ * What is your favorite Git-related tool/library, outside of Git
83+ itself?
84+
85+ This is a bit of self-promotion for my company and I apologise for that.
86+ We build façade-style interface facilities that allow legacy platforms,
87+ including HPE NonStop and IBM's TSO/ISPF environments to have full Git
88+ experiences despite the native file systems not supporting POSIX-like
89+ hierarchies. These are Git clients that map file system attributes and
90+ structures to and from what Git can understand. Our NonStop product was
91+ recently added to the HPE price book. These products allow older
92+ codebases to share in the benefits of real DevOps capabilities without
93+ having to rely on proprietary knowledge and processes. I am the chief
94+ architect of those.
95+
96+ * Do you happen to haveany memorable experience with respect to contributing
97+ to the Git project? If yes, could you share it with us?
98+
99+ I think the most satisfying experience was the few months it took to
100+ contribute all the code associated with the NonStop port. It was a huge
101+ pain to maintain the separate fork even with Git's awesome merge
102+ capabilities. Being allowed to be lazy is a dream of many developers and
103+ cutting down the time and effort spent on each release to a simple push
104+ of the Jenkins "Build Now" button freed up a lot of time.
105+
106+ * What is your advice for people who want to start Git development?
107+ Where and how should they start?
108+
109+ Learn about Merkel Trees and general data structures.
110+
111+ I am still learning when it comes to general functional contributions.
112+ Watching how others contribute is really crucial if you have any hope of
113+ your contribution being accepted.
114+
115+ * If there's one tip you would like to share with other Git developers,
116+ what would it be?
117+
118+ For every change you make, think about the security implications.
119+ Think about what a hacker might do to compromise Git or an organisation
120+ using Git before you move forward, no matter how good an idea it might
121+ seem. The last thing you want is to have your contribution show up as a
122+ Critical Vulnerability Exposure on the NIST database.
35123
36124## Releases
37125
0 commit comments