-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy path2020-07-dateindex.html
151 lines (102 loc) · 17.7 KB
/
2020-07-dateindex.html
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
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Kevin Boone: July 2020</title>
<link rel="shortcut icon" href="https://kevinboone.me/img/favicon.ico">
<meta name="msvalidate.01" content="894212EEB3A89CC8B4E92780079B68E9"/>
<meta name="google-site-verification" content="DXS4cMAJ8VKUgK84_-dl0J1hJK9HQdYU4HtimSr_zLE" />
<meta name="description" content="%%DESC%%">
<meta name="author" content="Kevin Boone">
<meta name="viewport" content="width=device-width; initial-scale=1; maximum-scale=1">
<link rel="stylesheet" href="css/main.css">
</head>
<body>
<div id="myname">
Kevin Boone
</div>
<div id="menu">
<a class="menu_entry" href="index.html">Home</a>
<a class="menu_entry" href="contact.html">Contact</a>
<a class="menu_entry" href="cv.html">CV</a>
<a class="menu_entry" href="software.html">Software</a>
<a class="menu_entry" href="articles.html">Articles</a>
<form id="search_form" method="get" action="https://duckduckgo.com/" target="_blank"><input type="text" name="q" placeholder="Search" size="5" id="search_input" /><button type="submit" id="search_submit">🔍</button><input type="hidden" name="sites" value="kevinboone.me" /><input type="hidden" name="kn" value="1" /></form>
</div>
<div id="content">
<h1>July 2020</h1>
<div class="article-desc"><img class="article-list-image" src="img/web.png"/><a href="argleton.html">The Argleton affair, and the Wikification of the World-Wide Web</a><p>How a non-existent English village ended up on maps, and the implications this has for how we handle information.</p><p style="font-size: smaller">Categories: <a href="general_computing-groupindex.html">general computing</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/tux.png"/><a href="bashcd.html">Extending the bash 'cd' command in Linux</a><p>The built-in cd command in the bash shell is not as smart as it could be; but it's a little fiddly to extend its functionality.</p><p style="font-size: smaller">Categories: <a href="Linux-groupindex.html">Linux</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/ammo-battery-outside.jpg"/><a href="battery-box.html">Using an ammo box as portable 12V power supply</a><p>A military-surplus steel ammunition box makes a great housing for a high-current, outdoor 12V power supply. This article gives some ideas about how to build one.</p><p style="font-size: smaller">Categories: <a href="science_and_technology-groupindex.html">science and technology</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/horse.png"/><a href="bayes.html">Bayesian statistics for dummies</a><p>An explanation from first principles of this much-misunderstood principle of statical inference.</p><p style="font-size: smaller">Categories: <a href="mathematics-groupindex.html">mathematics</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/unicode_logo.png"/><a href="combining_unicode.html">Unicode combining and graphemes -- how two identical Java Strings can be different</a><p>Java's strict adherence to Unicode standards for text representation ought to make life easier for developers, and usually it does. But not always.</p><p style="font-size: smaller">Categories: <a href="software_development-groupindex.html">software development</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/plug.png"/><a href="electricity.html">A ten-minute guide to electrical theory</a><p>Volts, amps, ohms, and watts, for complete beginners. This article explains electrical circuit theory in the context of domestic wiring installation.</p><p style="font-size: smaller">Categories: <a href="science_and_technology-groupindex.html">science and technology</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/unicode_logo.png"/><a href="encoding.html">An overview of character encoding for developers</a><p>How character encoding actually works, and the implications for developers of choosing one character set over another.</p><p style="font-size: smaller">Categories: <a href="software_development-groupindex.html">software development</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/notes.gif"/><a href="equal_tempered_scale.html">Why you can't play Bach on a piano</a><p>Well, perhaps you can play Bach on a piano, if you have the skill and the patience; but you can't hear Bach's music the way he and his contemporaries would have heard it because, in general, we don't using the same tuning schemes. This is an article about the mathematics of music tuning, from Pythagoras to the modern equally-tempered scale.</p><p style="font-size: smaller">Categories: <a href="mathematics-groupindex.html">mathematics</a>, <a href="music-groupindex.html">music</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/report.png"/><a href="exams.html">Ten simple rules for passing an examination</a><p>Advice for students on how to do well in university level examinations, fairly and honestly. There are no secrets here, but it's amazing how many students do less well than they should because they haven't understood how university teaching works.</p><p style="font-size: smaller">Categories: <a href="education-groupindex.html">education</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/java_logo.png"/><a href="execjava.html">Making a Java JAR file self-executing (on Linux)</a><p>A quick-and-dirty way to make it possible to execute Java JAR files at the prompt, without needing to invoke the JVM.</p><p style="font-size: smaller">Categories: <a href="software_development-groupindex.html">software development</a>, <a href="Java-groupindex.html">Java</a>, <a href="Linux-groupindex.html">Linux</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/openshift_logo.png"/><a href="fmp.html">How the Fabric8 Maven plug-in deploys Java applications to OpenShift</a><p>This article describes in detail the steps the Fabric8 Maven plug-in carries out when deploying an application to OpenShift.</p><p style="font-size: smaller">Categories: <a href="software_development-groupindex.html">software development</a>, <a href="Java-groupindex.html">Java</a>, <a href="OpenShift-groupindex.html">OpenShift</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/pi.png"/><a href="get_deb.html">Extracting software from the Raspbian repository, for assembling a custom Linux image for the Raspberry Pi</a><p>Using the official Raspian repository to assist the construction of a custom Linux for embedded applications is quick and convenient, compared to building everything from source. However, this approach has certain hazards.</p><p style="font-size: smaller">Categories: <a href="Linux-groupindex.html">Linux</a>, <a href="Raspberry_Pi-groupindex.html">Raspberry Pi</a>, <a href="embedded_computing-groupindex.html">embedded computing</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/gears.png"/><a href="graalvm_native.html">Compiling a Java program to native code using GraalVM, from the ground up</a><p>The GraalVM 'Native Image' plugin has the capability to compile to stand-alone binaries languages like Java that are normally compiled on the fly. This article describes step-by-step how to install GraalVM and the plug-in, and use it on some simple Java examples.</p><p style="font-size: smaller">Categories: <a href="software_development-groupindex.html">software development</a>, <a href="Java-groupindex.html">Java</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/land.png"/><a href="history_of_land_law.html">A brief history of English land law</a><p>What the Normans did for us.</p><p style="font-size: smaller">Categories: <a href="law-groupindex.html">law</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/report.png"/><a href="howto_presentation.html">How to give a presentation</a><p>Some guidance, mostly for students, on how to make a scientific or technical presentation.</p><p style="font-size: smaller">Categories: <a href="education-groupindex.html">education</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/java_logo.png"/><a href="java_oddities.html">A collection of Java curiosities and oddities</a><p>Why does Java have a NullPointerException when it doesn't support pointers? Why does the equality operator compare object references, but the collections framework comparison methods compare object contents? These questions and many more like them will comprehensively fail to be answered in this article.</p><p style="font-size: smaller">Categories: <a href="software_development-groupindex.html">software development</a>, <a href="Java-groupindex.html">Java</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/java_logo.png"/><a href="java_override.html">Why use of the @Override annotation is essential in Java</a><p>Developers don't use @Override enough. Java's method visibility rules, when classes are in different packages, make polymorphic inheritance behave in odd ways. Careful use of @Override can prevent these problems, and make applications much easier to maintain.</p><p style="font-size: smaller">Categories: <a href="software_development-groupindex.html">software development</a>, <a href="Java-groupindex.html">Java</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/notes.png"/><a href="javamidi.html">Generating simple MIDI files using Java, without using the Java Sound API</a><p>Although the Java Media Framework can do some very sophisticated things, it remains relatively difficult to generate simple musical tones using Java. The de-facto method for specifying musical notes remains the MIDI file, although there are now more sophisticated approaches. It's surprisingly difficult to generate even a simple MIDI file in Java, not least because of the lack of unsigned data types. I wrote this article years (perhaps decades) ago, but it's recently become popular again, because of the use of Java in Android, and the lack of any Java API in Android for playing musical tones, other than by reading a MIDI file.</p><p style="font-size: smaller">Categories: <a href="software_development-groupindex.html">software development</a>, <a href="music-groupindex.html">music</a>, <a href="Java-groupindex.html">Java</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/perl-logo.png"/><a href="javaperl.html">An introduction to Perl for Java programmers</a><p>A quick-start guide that highlights the similarities and differences between the Java and Perl programming languages.</p><p style="font-size: smaller">Categories: <a href="software_development-groupindex.html">software development</a>, <a href="Java-groupindex.html">Java</a>, <a href="Perl-groupindex.html">Perl</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/horse.png"/><a href="joint_prob.html">An introduction to joint, marginal, and conditional probabilities</a><p>An explanation from first principles of the concepts of probability applied to two random discrete variables.</p><p style="font-size: smaller">Categories: <a href="mathematics-groupindex.html">mathematics</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/tux_disk.png"/><a href="linux_storage_cheatsheet.html">A Linux storage management cheat-sheet</a><p>This article outlines, with step-by-step examples, how to carry out the most fundamental Linux storage management tasks: partitioning a disk, creating a filesystem, setting up swap space, managing a logical volume management (LVM) storage pool, and configuring a RAID mirror.</p><p style="font-size: smaller">Categories: <a href="Linux-groupindex.html">Linux</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/lua-logo.png"/><a href="luajava.html">Lua quick-start for Java programmers</a><p>The essentials of Lua programming in one page, for experienced Java programmers.</p><p style="font-size: smaller">Categories: <a href="software_development-groupindex.html">software development</a>, <a href="Java-groupindex.html">Java</a>, <a href="Lua-groupindex.html">Lua</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/lua-logo.png"/><a href="lualib.html">Building a Lua extension library for Linux in C/C++</a><p>Lua is an embeddable scripting language, which can be extended in a number of useful ways. This article describes in detail how to create a Lua extension in C (or, with a bit of fiddling, C++) as a loadable (.so) library.</p><p style="font-size: smaller">Categories: <a href="software_development-groupindex.html">software development</a>, <a href="Lua-groupindex.html">Lua</a>, <a href="C-groupindex.html">C</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/mosfet.png"/><a href="mosfet.html">Why switching high currents using a MOSFET and a Raspberry Pi is not as straightforward as it looks</a><p>Using a single MOSFET transistor for power switching in microcontroller applications is simple and low-cost, but it often doesn't work as well as expected. Either the switched device doesn't run at full capacity, or the MOSFET gets hot. This article explains why.</p><p style="font-size: smaller">Categories: <a href="Raspberry_Pi-groupindex.html">Raspberry Pi</a>, <a href="electronics-groupindex.html">electronics</a>, <a href="embedded_computing-groupindex.html">embedded computing</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/button.png"/><a href="pi-button-pipe.html">Handling GPIO-connected switches robustly in C on the Raspberry Pi</a><p>It's surprisingly difficult to detect switch actuations in a robust way, dealing with contact bounce and other quirks. This article describes one approach to the problem in C.</p><p style="font-size: smaller">Categories: <a href="Raspberry_Pi-groupindex.html">Raspberry Pi</a>, <a href="electronics-groupindex.html">electronics</a>, <a href="embedded_computing-groupindex.html">embedded computing</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/pi.png"/><a href="pi4why.html">Raspberry Pi 4 -- is it good news for experimenters and enthusiasts?</a><p>Faster, more of everything, same price -- what's not to like?</p><p style="font-size: smaller">Categories: <a href="Raspberry_Pi-groupindex.html">Raspberry Pi</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/pi.png"/><a href="pi_case.html">Prototyping a large Raspberry Pi case</a><p>Using high-density vinyl board to construct a practical prototype case without specialist tools or materials</p><p style="font-size: smaller">Categories: <a href="Raspberry_Pi-groupindex.html">Raspberry Pi</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/pi.png"/><a href="rpi_touchscreen.html">Using the Raspberry Pi official 7-inch touch-screen in embedded applications</a><p>The official Raspberry Pi 7-inch touchscreen is a useful and well-designed piece of equipment but, if you're using it in a custom (hardware and/or software) build, you'll notice a lack of any relevant technical information. This article tries to supply some of that information.</p><p style="font-size: smaller">Categories: <a href="Raspberry_Pi-groupindex.html">Raspberry Pi</a>, <a href="electronics-groupindex.html">electronics</a>, <a href="embedded_computing-groupindex.html">embedded computing</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/steam101_tank.jpg"/><a href="steam101.html">An introduction to steam locomotive technology</a><p>Oh yes it's great to be an engine... But how did the driving force of the industrial revolution actually work?</p><p style="font-size: smaller">Categories: <a href="science_and_technology-groupindex.html">science and technology</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/crown.png"/><a href="thetitlesgame.html">The titles game: can you buy nobility?</a><p>This article is about whether you can legally and openly buy a British noble title. Spoiler alert: no, you can't. People still keep asking, though.</p><p style="font-size: smaller">Categories: <a href="law-groupindex.html">law</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/tree.png"/><a href="woodland-law.html">Law and small woodlands</a><p>An exploration of various aspects of English law, as they apply to the owners and managers of small, private woodlands.</p><p style="font-size: smaller">Categories: <a href="law-groupindex.html">law</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/zom.png"/><a href="zom.html">Night of the living differential equations -- modeling the zombie apocalyse</a><p>Using a simple application of Euler's method to estimate the solutions of non-linear differential equations, and work out your chances of surviving the zombie apocalypse. No, really.</p><p style="font-size: smaller">Categories: <a href="mathematics-groupindex.html">mathematics</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/zom.png"/><a href="zom2.html">Night of the living drag coefficients -- ballistics applied to zombie control</a><p>An introduction to the science of exterior ballistics -- tracking the flight of a projectile under the influence of gravity and drag.</p><p style="font-size: smaller">Categories: <a href="mathematics-groupindex.html">mathematics</a></p>
</div>
<p><span class="footer-clearance-para"/></p>
</div>
<div id="footer">
<a href="rss.html"><img src="img/rss.png" width="24px" height="24px"/></a>
<span class="last-updated">Last update Jan 08 2025
</span>
</div>
</body>
</html>