summaryrefslogtreecommitdiffstats
path: root/srv/www/cv.html
blob: 685843147e4f0efca570127a6e2c98a533862928 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
<!DOCTYPE html>
<html lang="en">
<!--=================================================================-->
<!--    Copyright (C)             Alejandro Colomar Andres           -->
<!--    SPDX-License-Identifier:  BSD-3-Clause                       -->
<!--=================================================================-->

<!-- All URIs in this file should be absolute. -->
<!-- CSS is embedded to avoid dependencies. -->

<head>
	<meta charset="utf-8"/>
	<meta http-equiv="expires" content="0"/>
	<title>CV - Alejandro Colomar</title>
	<style>
		html, body {background-color: black; font-family: serif; color: white;}
		h1, h2, h3, h4, h5, h6 {font-family: sans-serif;}
		h1 {margin-left: 0.5em;}
		h4 {margin-top: 0.2em; margin-bottom: 0.2em;}
		h5 {margin-top: 0.1em; margin-bottom: 0.1em;}
		h6 {margin-top: 0.05em; margin-bottom: 0.05em;}
		li.bullet {font-size: smaller;}
		p.TP {margin-top: 0.5em; margin-left: 1.5em;}
		a:link {color: orange; text-decoration: none;}
		a:visited {color: green; text-decoration: none;}
		a:hover {color: yellow; text-decoration: underline;}
		a:active {color: blue; text-decoration: underline;}
		time {font-family: sans-serif; font-size: smaller;}
		.bullet {font-family: sans-serif;}
		.br {margin-bottom: 1em;}
		.code {font-family: monospace;}
		.footer {font-size: small;}
		.inl {display: inline;}
		.name {font-family: sans-serif; font-style: italic;}
		.nomargin {margin-top: 0; margin-bottom: 0;}
		.sh {font-family: monospace;}
		.src {font-family: monospace;}
		.uri {font-family: monospace;}
	</style>
	<link rel="icon" href="https://www.alejandro-colomar.es/share/misc/pictures/alx.ico"/>
</head>


<body>


<div id="name">
	<h1><span class="name">Alejandro Colomar</span></h1>
</div>
<hr/>


<div id="contact">
	<h4><span class="uri">
	<a href="mailto:Alejandro Colomar <alx@kernel.org>">
	&lt;alx@kernel.org&gt;</a>
	</span></h4>
	<h4><span class="uri">
	<a href="https://www.alejandro-colomar.es/">
	&lt;https://www.alejandro-colomar.es/&gt;</a>
	</span></h4>
</div>
<hr/>


<div id="contents">
	<h3 class="nomargin">
	<a href="#synopsis">Synopsis</a> |
	<a href="#description">Description</a> |
	<a href="#notes">Notes</a> |
	<a href="#education">Education</a> |
	<a href="#footer">Footer</a> |
	</h3>
</div>
<hr/>


<div id="synopsis">
	<h2><a href="#top">^</a> SYNOPSIS</h2>

	<p>
	Principal software engineer.
	</p>

	<p class="bullet">
	<span class="name">C</span>,
	<span class="name">Git</span>,
	<span class="name">Shell</span>,
	<span class="name">Linux</span>,
	<span class="name">POSIX</span>,
	Open source.
	</p>

	<p>
	I'm available for work at the moment.
	Please send me an email if you're interested.
	</p>
</div>
<hr/>


<div id="description">
	<h2><a href="#top">^</a> DESCRIPTION</h2>

	<p>
	I'm an open-source programmer
	focused on the quality of the code.
	As with Debian,
	I release code "when it's ready".
	</p>

	<p>
	I've programmed many small projects for myself using C
	for more than a decade.
	You can find most of those projects in my
	<span class="name">cgit</span>
	<a href="https://www.alejandro-colomar.es/src/">server</a>,
	released with an open-source license.
	</p>

	<p>
	I also contribute to (and in some cases maintain) widely-known projects,
	including, but not limited to the following list:
	<ul>
		<li class="bullet"><h5><span class="name"><a href="https://codidact.org/">Codidact</a></span></h5></li>
		<li class="bullet"><h5><span class="name"><a href="https://conan.io/">Conan</a></span></h5></li>
		<li class="bullet"><h5><span class="name"><a href="https://www.debian.org/">Debian</a></span></h5></li>
		<li class="bullet"><h5><span class="name"><a href="https://gcc.gnu.org/">GCC</a></span></h5></li>
		<li class="bullet"><h5><span class="name"><a href="https://www.gentoo.org/">Gentoo</a></span></h5></li>
		<li class="bullet"><h5><span class="name"><a href="https://www.gnu.org/software/libc/">Glibc</a></span></h5></li>
		<li class="bullet"><h5><span class="name"><a href="https://www.gnu.org/software/groff/">Groff</a></span></h5></li>
		<li class="bullet"><h5><span class="name"><a href="https://include-what-you-use.org/">IWYU</a></span></h5></li>
		<li class="bullet"><h5><span class="name"><a href="https://libbsd.freedesktop.org/">libbsd</a></span></h5></li>
		<li class="bullet"><h5><span class="name"><a href="https://www.kernel.org/">Linux kernel</a></span></h5></li>
		<li class="bullet"><h5><span class="name"><a href="https://www.kernel.org/doc/man-pages/">Linux man-pages</a></span></h5></li>
		<li class="bullet"><h5><span class="name"><a href="https://llvm.org/">LLVM/Clang</a></span></h5></li>
		<li class="bullet"><h5><span class="name"><a href="https://netbsd.org/">NetBSD</a></span></h5></li>
		<li class="bullet"><h5><span class="name"><a href="https://neomutt.org/">NeoMutt</a></span></h5></li>
		<li class="bullet"><h5><span class="name"><a href="https://unit.nginx.org/">NGINX Unit</a></span></h5></li>
		<li class="bullet"><h5><span class="name"><a href="https://github.com/shadow-maint/shadow">shadow-utils</a></span></h5></li>
		<li class="bullet"><h5><span class="name"><a href="https://stackexchange.com/">Stack Exchange</a></span></h5></li>
		<li class="bullet"><h5><span class="name"><a href="https://stackoverflow.com/">Stack Overflow</a></span></h5></li>
		<li class="bullet"><h5><span class="name"><a href="https://voidlinux.org/">Void Linux</a></span></h5></li>
	</ul>
	</p>

	<p>
	I've contributed to those (and more) projects with
	patches, bug reports, testing, reviews, suggestions, Q&A, etc.
	When contributing to those projects,
	I enjoy participating in discussions that attempt to find the
	best possible solution to a given issue.
	</p>
</div>
<hr/>


<div id="notes">
	<h2><a href="#top">^</a> NOTES</h2>

	<p>
	From the many free and open-source projects I've contributed to,
	some of them are especially relevant:
	</p>
	<ul>
		<li>
		<h4 class="inl"><a href="https://www.kernel.org/doc/man-pages/">
		<span class="name">Linux man-pages</span></a></h4>
		<p>
		I started contributing to the Linux man-pages project to
		document some kernel/libc features
		that I needed for some personal projects
		but found to be undocumented.
		A few months later,
		I joined the project as a comaintainer,
		after receiving a proposal due to
		the quality and quantity of my contributions.
		</p>
		<p>
		The
		<a href="https://linux-man-pages.blogspot.com/">project blog</a>
		covers the most relevant changes I introduced in the project.
		</li>
		</p>
		<p>
		While contributing to the project,
		I regularly test the
		<span class="name">Linux</span>
		kernel and
		<span class="name">C</span>
		library APIs,
		develop example programs using the APIs,
		review and write technical documentation,
		and also find and report bugs to related projects.
		</p>
		</li>

		<li>
		<h4 class="inl"><a href="https://github.com/shadow-maint/shadow">
		<span class="name">shadow-utils</span></a></h4>
		<p>
		I've updated the
		<span class="name">shadow-utils</span>
		source code from
		pre-<span class="name">ANSI C</span>
		to
		<span class="name">C11</span>
		and
		<span class="name">POSIX.1-2008</span>.
		I'm also overhauling the code for manipulating strings,
		and allocating memory,
		and in general making the source code more robust.
		</p>
		<p>
		These changes have allowed finding and fixing many bugs,
		and have also resulted in a smaller
		and much more readable code base.
		</p>
		<p>
		Since version 4.14,
		I maintain the stable branches of the project at
		<a href="https://www.alejandro-colomar.es/src/alx/shadow/stable/shadow.git/">&lt;https://www.alejandro-colomar.es/src/alx/shadow/stable/shadow.git/&gt;</a>.
		</p>

		<li>
		<h4 class="inl"><a href="https://unit.nginx.org/">
		<span class="name">NGINX Unit</span></a></h4>
		</p>
		I participated in the development of
		<span class="name">NGINX Unit</span>.
		</p>
		<p>
		I mostly did
		<span class="name">C</span>
		programming,
		adding new features and fixing bugs,
		but also regularly helped in all other aspects of the project.
		</p>
		<p>
		One of the most notable features,
		which for schedule reasons hasn't yet been released,
		has been to allow chaining actions in the server,
		which was inspired by shell pipes.
		It would allow chaining arbitrary applications
		to process a request,
		simplifying what each of the applications needs to do.
		</p>
		<p>
		Another notable feature was
		adding a compression filter
		(initially supporting only GZIP, but easily extensible).
		The performance is significantly better than that
		of NGINX's gzip filter,
		and the implementation is simpler.
		</p>
		</li>

		<li>
		<h4 class="inl">libc</h4>
		<ul>
			<li class="bullet"><h4>
			<a href="https://man.netbsd.org/strtoi.3">
			<span class="name">strtoi(3)</span></a>,
			<a href="https://man.netbsd.org/strtou.3">
			<span class="name">strtou(3)</span></a>:
			<a href="https://gnats.netbsd.org/cgi-bin/query-pr-single.pl?number=57828">
			(bug fix) Fix design issue about error handling</a>
			</h4></li>
		</ul>
		</li>

		<li>
		<h4 class="inl">neomutt(1)</h4>
		<ul>
			<li class="bullet"><h4>
			-C:
			<a href="https://neomutt.org/feature/cli-crypto">
			(new feature) Command-line crypto</a>
			</h4></li>
		</ul>
		</li>
	</ul>
</div>
<hr/>


<div id="education">
	<h2><a href="#top">^</a> EDUCATION</h2>

	<p>
	I've studied various degrees,
	receiving very high marks and special mentions,
	but I haven't finished any due to various reasons
	(including lack of interest in official certifications).
	</p>

	<p>
	I've also studied many dozens of online courses from
	<span class="name"><a href="https://www.edx.org/">EdX</a></span>
	and other sites,
	learning many completely different subjects,
	from Calculus, to Solid State Chemistry or Hypersonics.
	</p>

	<p>
	Apart from that, which I've done only for my own curiosity,
	a few courses are very relevant to my job:
	</p>

	<ul>
		<li class="br">
		<h5 class="inl"><span class="name"><a href="https://man7.org/training/">man7.org Training and Consulting</a></span>:</h5>
		<ul>
		<li class="bullet">[<span class="code"><a href="https://man7.org/training/lusp/index.html">M7D-LUSP01</a></span>]:&ensp;<a href="https://www.alejandro-colomar.es/share/doc/cert/man7.org_M7D-LUSP01.pdf">Linux/UNIX System Programming</a></li>
		<li class="bullet">[<span class="code"><a href="https://man7.org/training/secisol/index.html">M7D-SECISOL02</a></span>]:&ensp;Linux Security and Isolation APIs</li>
		<li class="bullet">[<span class="code"><a href="https://man7.org/training/shlib/index.html">M7D-SHLIB02</a></span>]:&ensp;Building and Using Shared Libraries on Linux</li>
		</ul>
		</li>
	</ul>
</div>
<hr/>


<div id="footer" class="footer">
	<h2><a href="#top">^</a></h2>

	<p>
	The latest version of this CV can be found at
	<span class="uri"><a href="https://www.alejandro-colomar.es/cv">&lt;https://www.alejandro-colomar.es/cv&gt;</a></span>
	<br/>
	Last modified: <time>2024-01</time>
	<br/>
	<span class="name">Alejandro Colomar</span>
	</p>
</div>
<hr/>


</body>
</html>