Initial commit: HPR Knowledge Base MCP Server

- MCP server with stdio transport for local use
- Search episodes, transcripts, hosts, and series
- 4,511 episodes with metadata and transcripts
- Data loader with in-memory JSON storage

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Lee Hanken
2025-10-26 10:54:13 +00:00
commit 7c8efd2228
4494 changed files with 1705541 additions and 0 deletions

103
hpr_transcripts/hpr1575.txt Normal file
View File

@@ -0,0 +1,103 @@
Episode: 1575
Title: HPR1575: 35 - LibreOffice Calc - Introduction to Functions
Source: https://hub.hackerpublicradio.org/ccdn.php?filename=/eps/hpr1575/hpr1575.mp3
Transcribed: 2025-10-18 05:12:31
---
This episode of HBR is brought to you by AnanasThost.com.
Get 15% discount on all shared hosting with the offer code HBR15.
That's HBR15.
Better web hosting that's honest and fair at AnanasThost.com.
Hello, this is Ahuka, welcoming you to Hack Republic Radio and another
exciting episode in our ongoing series on LibreOfficeCalk and over the last few of the episodes
we got into talking about charts and graphs but now I want to talk about functions and functions
are an interesting capability that spreadsheets have to allow you to do some analysis and other
sorts of things with the data. Now the first question you might say is what is a function?
There's various ways of answering this. My friend Charles in New Jersey who does the
Mathematics series here on Hack Republic Radio may explore this in more depth at some point.
Who knows, it is an interesting topic. So I'm going to offer up what the dictionary says
from the online Miriam Webster dictionary and link in the show notes if you really want to
know that sort of thing. And a function is a mathematical correspondence that assigns exactly one
element of one set to each element of the same or another set. And the second is a variable
as a quality trait or measurement that depends on and varies with another, also a result.
Now my way of thinking about it in reference to LibreOfficeCalk comes from the second of these.
A function is something that takes an input from data already on the spreadsheet and returns
an answer of some kind sometimes but not always a numerical answer.
There are a large number of functions available in Calc so I don't intend to discuss each one in
depth but I do want to give you an overview. So what I'm going to do now is discuss some of the more
common and useful functions. And right now though what I want to do is I want to run through
that what is available then in subsequent episodes will start unpacking some of these.
So Calc Functions. First there's database. Now Calc can be used for simple flat file database uses.
Generally speaking I prefer to use an actual database program for most of my database needs
and LibreOffice does come with one but if your needs are extremely simple Calc can get you by
and these functions can be used to do database queries such as getting account of the entries,
the average minimum maximum and so on of all the cells that match the search query.
Then there are the date and time functions. There are a lot of functions which do things like
return the number of days in the year in which a date occurs or the number of days, months,
or years between two dates, then financial. Calc has a lot of financial functions which you should
expect given that spreadsheets were primarily adopted by companies to do financial management.
If you ever wanted to figure out when your mortgage would be paid off,
here's one place you could go. There are also functions for finding the future value of an investment
appreciation over time, various ways of pricing stocks. Some of these would only be of interest to
a few people. Some of them might be of broader interest and I already got some things that I'm
going to do to illustrate what you can do with financial functions. Information.
These functions can be very useful for doing analysis a large spreadsheet model.
Many of these functions are logical functions which means they return a value of true
if certain criteria are met. As examples you can tell which cells contain formulas, which cells
have errors and so on. Then there's also the logical functions that allow you to do simple logical
tests using operators like AND, IF and XOR. When I see something about a function returning
a value of true, I'm reminded of the joke about the programmer who was talking with a friend of
hers and said, oh, I'm pregnant and the friend said, oh, is it a boy or a girl? And the programmer says
true, I'm going to hope you all get that one. Okay, mathematical functions. There are mathematical
functions in here. All of the usual trigonometric functions like your sine and your cosine.
There's factorials, radians. There's random number functions. I use those and so on.
Array. An array is a linked rectangle of cells in its simplest form. Array functions
let you work on the entire rectangle of cells with one function. How this would include basic
matrix operations such as inverting the matrix. Now, if you don't know what inverting a matrix is
about that may indicate it's not anything that's terribly important. But, you know, when I was working
on my doctorate in economics, that was one of those things you had to understand. Statistical.
There's a reasonably large set of statistical functions in calcs such as beta distributions,
chi-square, f-test, mean, geometric mean, harmonic mean, poisson, standard deviation and variance
and various regression functions. You could certainly teach a full semester in statistics using
these functions. In fact, I've done so. Spreadsheet. There are spreadsheet functions that
allow you to do things like insert a hyperlink, do a lookup, insert a style and so on.
Text functions, but you didn't expect to see that one. But, these functions operate on cells
like the contents are purely text strings. So, you can convert Roman numerals to Arabic,
concatenate several items into one, compare two cells to see if they are the same.
You can even do a rot-13. I hope everyone knows what a rot-13 is. You don't see it that much these
days, but in the earlier days, the internet, it was tons of fun. Add in. Now, there are specialized
functions in the add-in that let you operate on complex and imaginary numbers, use Bessel functions,
do conversions between binary, hex, octal, and decimal. For anyone who does programming,
these conversion functions will come in handy. Now, working with functions. And we're going to do
this a lot over the next few episodes. So, let's get the basics right. There are some general
principles that you use in working with functions in Calc. When you select a function that you want
to use in the function wizard window, you will see on the right a very brief description of the
function. And, usually, in parentheses, you will see the names of the variables that are needed
as inputs to the function. Now, these have a special name in mathematics they're referred to as
arguments. And this really has nothing to do with people yelling at each other. It's a technical
term in mathematics. There's a Wikipedia definition, link in the show notes. A mathematical
function has one or more arguments in the form of independent variables designated in the functions
definition, which can also contain parameters. The individual, the independent variables are
mentioned in the list of arguments that the function takes, whereas the parameters are not.
So, what does it mean to you? When you use the function, you need to enter something for each
of these arguments. And it should be in the form of a cell address that contains the required
information. When you select the function and know that you have all of the required information,
click next in the function wizard. Each of the arguments will get an input field.
You can type it in directly. You can click the roll-up button on the right and then click a cell.
Or, if you can see the cell you want, just click in the field to put your insertion mark there,
then click the cell and you should see the cell address entered into the field in the function wizard.
Now, do this for each argument in turn and you will see the formula being constructed in the box below.
When you're done, click OK and see the result. Now, if you want to apply the function repeatedly,
like in a column, just click and drag to fill it. All of the cell addresses will increment normally.
So, with that, I'm going to sign off for now. This is Ahuka for Hacker Public Radio, reminding you
as always to support FreeSoftware. Goodbye!
You've been listening to Hacker Public Radio at HackerPublicRadio.org.
We are a community podcast network that releases shows every weekday Monday through Friday.
Today's show, like all our shows, was contributed by an HBR listener like yourself.
If you ever thought of recording a podcast, then click on our contributing to find out how easy it really is.
HackerPublic Radio was founded by the digital dog pound and the infonomicant computer club,
and is part of the binary revolution at binrev.com. If you have comments on today's show,
please email the host directly, leave a comment on the website or record a follow-up episode yourself,
unless otherwise stated. Today's show is released on the create of comments,
attribution, share a life, free.or license.