diff --git a/cache/like/2023/02/14-60593/webmentions.json b/cache/like/2023/02/14-60593/webmentions.json
new file mode 100644
index 00000000..f2ec1d3a
--- /dev/null
+++ b/cache/like/2023/02/14-60593/webmentions.json
@@ -0,0 +1,7 @@
+{
+ "lastWmId": null,
+ "children": [],
+ "reply-count": 0,
+ "like-count": 0,
+ "repost-count": 0
+}
\ No newline at end of file
diff --git a/cache/reply/2023/02/14-50133/webmentions.json b/cache/reply/2023/02/14-50133/webmentions.json
index f2ec1d3a..f73f39ab 100644
--- a/cache/reply/2023/02/14-50133/webmentions.json
+++ b/cache/reply/2023/02/14-50133/webmentions.json
@@ -1,7 +1,30 @@
{
- "lastWmId": null,
- "children": [],
- "reply-count": 0,
+ "lastWmId": 1622783,
+ "children": [
+ {
+ "type": "entry",
+ "author": {
+ "type": "card",
+ "name": "Caroline Reeders",
+ "photo": "https://webmention.io/avatar/pbs.twimg.com/cfd10ced060f7d3b9e756c1c56be18b040f72b017b6b1e986d91e000a037d1d3.jpg",
+ "url": "https://twitter.com/CarolineReeders"
+ },
+ "url": "https://twitter.com/CarolineReeders/status/1625509439779340289",
+ "published": "2023-02-14T14:57:05+00:00",
+ "wm-received": "2023-02-14T15:01:51Z",
+ "wm-id": 1622783,
+ "wm-source": "https://brid.gy/comment/twitter/gijswijs/1625494305359159298/1625509439779340289",
+ "wm-target": "https://www.gijsvandam.nl/reply/2023/02/14-50133/",
+ "content": {
+ "html": "Daarvoor moet je bij De Arbeiderspers zijn.\n\n",
+ "text": "Daarvoor moet je bij De Arbeiderspers zijn."
+ },
+ "in-reply-to": "https://www.gijsvandam.nl/reply/2023/02/14-50133/",
+ "wm-property": "in-reply-to",
+ "wm-private": false
+ }
+ ],
+ "reply-count": 1,
"like-count": 0,
"repost-count": 0
}
\ No newline at end of file
diff --git a/feed/2/index.html b/feed/2/index.html
index a6e83d20..f10028f0 100644
--- a/feed/2/index.html
+++ b/feed/2/index.html
@@ -1 +1 @@
-
Gijs van DamGijs van Dam
@ercwl You have written about Hedera and DAGs in general. I'm trying to find good info (papers) DAG scaling, but no luck. The way I see it DAGs can't scale, because with say 10k permissioned nodes, the gossip on events would grow exp. You would need an ASIC for all those hashes.
@AshleyRindsberg Yes, so this AI is could go after jobs that don't actually solve problems or reflect on issues: marketing, (1st line) helpdesk, a large part of modern journalism, copy-writing... any task that involves deflecting and wasting someone else's time.
> one study showed that older individuals who worked beyond the age of 62 were less likely to be depressed or experience sleep disturbances, but these results were not significant.
The other night I explained elliptic curve encryption to my wife and in-laws. It's amazing to see how much you learn by trying to explain something you think you understand. #teaching == #learning
@doctorow Voting with your wallet: Now I am somehow responsible for working conditions and the env footprint of the companies I buy from. Don't like it? You should have enforced it better with your wallet!
I prefer to put people in office to do that for me.
I am now working on rerouting payments by nodes in the middle of the route. I think that might potentially be a better (cheaper!) way to disincentivize routing. #lightningnetwork
@gladstein The 2008 financial crisis was the reason for me to get involved in Bitcoin and crypto. But didn't we set the stage for the same quants of 2008 to package crypto like they packaged subprime mortgages? The ICO boom, the NFTs, Terra/Luna. Haven't we all been duped?
@ercwl You have written about Hedera and DAGs in general. I'm trying to find good info (papers) DAG scaling, but no luck. The way I see it DAGs can't scale, because with say 10k permissioned nodes, the gossip on events would grow exp. You would need an ASIC for all those hashes.
@AshleyRindsberg Yes, so this AI is could go after jobs that don't actually solve problems or reflect on issues: marketing, (1st line) helpdesk, a large part of modern journalism, copy-writing... any task that involves deflecting and wasting someone else's time.
> one study showed that older individuals who worked beyond the age of 62 were less likely to be depressed or experience sleep disturbances, but these results were not significant.
The other night I explained elliptic curve encryption to my wife and in-laws. It's amazing to see how much you learn by trying to explain something you think you understand. #teaching == #learning
@doctorow Voting with your wallet: Now I am somehow responsible for working conditions and the env footprint of the companies I buy from. Don't like it? You should have enforced it better with your wallet!
I prefer to put people in office to do that for me.
I am now working on rerouting payments by nodes in the middle of the route. I think that might potentially be a better (cheaper!) way to disincentivize routing. #lightningnetwork
\ No newline at end of file
diff --git a/feed/3/index.html b/feed/3/index.html
index bc25d58a..0e7986ae 100644
--- a/feed/3/index.html
+++ b/feed/3/index.html
@@ -1 +1 @@
-Gijs van DamGijs van Dam
...met een diverse groep van medewerkers waarvan het zelfs voor die groepen zelf onduidelijk is in hoeverre die Rusland steunen in hun oorlog. Het grote collectief dat zich expliciet voor de oorlog heeft uitgesproken (Conti) werd twee dagen later zelf gehackt.
Rusland is voor de Cyber oorlogsvoering deels afhankelijk van hackers collectieven (https://www.mandiant.com/resources/russia-invasion-ukraine-retaliation) Deze collectieven kunnen met relatieve immuniteit in en vanuit Rusland opereren, maar zijn in werkelijkheid transnationale entiteiten...
@jellebc Een kleine aanvulling op de podcast van dag 58 over waarom we (nog) geen cyber war zien in de Oekraïne. Stellen dat het Westen er goed genoeg op voorbereid was, is een te simplistische weergave van de werkelijkheid. Zoals altijd is het iets genuanceerder...
I'm really digging Micropublish.net built by @barryf. It's stuff like waiting for your note to come online which makes it outperform the "competition".
Why does signature half aggregation break adaptor signatures?
There is this cool trick you can do with Schnorr signatures. It is called Adaptor Signature (AS). An adaptor signature is an extra signature that, combined with the original signature, allow for revealing a value that was previously hidden. You can use this trick to solve trust problems as they appear in atomic swaps, coin swaps and Discreet Log Contracts (DLCs).
Signature Aggregation (SA) is a way to aggregate multiple signatures into a single signature. The single aggregate signature is smaller (in bytes) than the original signatures combined. It reduces transaction weight, meaning we can have more transactions per block, which is always a good thing. It's like 7zip for transactions. Signature Half Aggregation is a variant of SA that only aggregates half of each signature. It offers less compression, but it has the benefit of not requiring any interaction with the signers, whereas full aggregation does require cooperation of all the signers.
So two cool tricks, but the latter breaks the former when it is used for blockwide signature aggregation. This article explains the math behind it and why SA breaks AS
...met een diverse groep van medewerkers waarvan het zelfs voor die groepen zelf onduidelijk is in hoeverre die Rusland steunen in hun oorlog. Het grote collectief dat zich expliciet voor de oorlog heeft uitgesproken (Conti) werd twee dagen later zelf gehackt.
Rusland is voor de Cyber oorlogsvoering deels afhankelijk van hackers collectieven (https://www.mandiant.com/resources/russia-invasion-ukraine-retaliation) Deze collectieven kunnen met relatieve immuniteit in en vanuit Rusland opereren, maar zijn in werkelijkheid transnationale entiteiten...
@jellebc Een kleine aanvulling op de podcast van dag 58 over waarom we (nog) geen cyber war zien in de Oekraïne. Stellen dat het Westen er goed genoeg op voorbereid was, is een te simplistische weergave van de werkelijkheid. Zoals altijd is het iets genuanceerder...
I'm really digging Micropublish.net built by @barryf. It's stuff like waiting for your note to come online which makes it outperform the "competition".
Why does signature half aggregation break adaptor signatures?
There is this cool trick you can do with Schnorr signatures. It is called Adaptor Signature (AS). An adaptor signature is an extra signature that, combined with the original signature, allow for revealing a value that was previously hidden. You can use this trick to solve trust problems as they appear in atomic swaps, coin swaps and Discreet Log Contracts (DLCs).
Signature Aggregation (SA) is a way to aggregate multiple signatures into a single signature. The single aggregate signature is smaller (in bytes) than the original signatures combined. It reduces transaction weight, meaning we can have more transactions per block, which is always a good thing. It's like 7zip for transactions. Signature Half Aggregation is a variant of SA that only aggregates half of each signature. It offers less compression, but it has the benefit of not requiring any interaction with the signers, whereas full aggregation does require cooperation of all the signers.
So two cool tricks, but the latter breaks the former when it is used for blockwide signature aggregation. This article explains the math behind it and why SA breaks AS
\ No newline at end of file
diff --git a/feed/4/index.html b/feed/4/index.html
index 0b6e84ab..a37dbc5d 100644
--- a/feed/4/index.html
+++ b/feed/4/index.html
@@ -1 +1 @@
-Gijs van DamGijs van Dam
@aaronpk I'm integrating webmentions in my website, using webmentions.io and I might have crashed your server. Although I don't think I ddos-ed it with more than a 1000 requests. Anyway, if it was me, I am so sorry.
But you can drag & drop PDFs into your collection which achieves almost the same thing. Some quirks still require getting used to, but I'm happy so far. @zotero couldn't have timed this release any better. Also importing from Mendeley was a breeze. Bye bye @mendeley_com.
6.0 just came out of beta! https://www.zotero.org/blog/zotero-6/ I jumped into the deep end, and switched. @zotero 6.0 has a PDF reader, which was the main thing holding me back. Renaming, bibtex sync, deduplication all works out of the gate or with plugins. Only thing missing: watch folder
The @mendeley_com Reference Manager is a step backwards from Mendeley Desktop. Wrapping your web app in @electronjs and market it as "efficient, flexible and responsive" just isn't cutting it. Stuff missing at first glance:
Lightning Network is a peer-to-peer payment network that runs on top of the Bitcoin Blockchain. Because it runs on top of the Blockchain it is called a layer-two solution, which groups it together with other solutions that have this property of being built on top of a Blockchain. Layer One is the base layer, where the Blockchain lives. Because of the inherent properties of Layer One, it is impossible to process large amounts of transactions in that layer. The Bitcoin Blockchain can famously process a mere seven transactions per second on average. This constraint was the main impetus for the creation of Layer Two solutions. Lightning Network, being a Layer Two solution, allows for near instant transactions, that can easily scale to millions of transactions per second.
The latest vid from @bitluni's channel is a piece of art. You don't know it yet, but you want to know more about phased arrays. Go watch the vid. https://www.youtube.com/watch?v=z4uxC7ISd-c
<cite class="h-cite u-quotation-of"> <a class="u-url" href="https://twitter.com/edazcona/status/1498721507761172485"> Discover more about the security of the Lightning Network! @gijswijs research is extremely valuable for continuously improving the Lightning Network
Checking out the coding style requirements for contributing to the (amazing) SVG.js from @wout. This made me giggle: > avoid semicolons, we're not writing PHP here.
@aaronpk I'm integrating webmentions in my website, using webmentions.io and I might have crashed your server. Although I don't think I ddos-ed it with more than a 1000 requests. Anyway, if it was me, I am so sorry.
But you can drag & drop PDFs into your collection which achieves almost the same thing. Some quirks still require getting used to, but I'm happy so far. @zotero couldn't have timed this release any better. Also importing from Mendeley was a breeze. Bye bye @mendeley_com.
6.0 just came out of beta! https://www.zotero.org/blog/zotero-6/ I jumped into the deep end, and switched. @zotero 6.0 has a PDF reader, which was the main thing holding me back. Renaming, bibtex sync, deduplication all works out of the gate or with plugins. Only thing missing: watch folder
The @mendeley_com Reference Manager is a step backwards from Mendeley Desktop. Wrapping your web app in @electronjs and market it as "efficient, flexible and responsive" just isn't cutting it. Stuff missing at first glance:
Lightning Network is a peer-to-peer payment network that runs on top of the Bitcoin Blockchain. Because it runs on top of the Blockchain it is called a layer-two solution, which groups it together with other solutions that have this property of being built on top of a Blockchain. Layer One is the base layer, where the Blockchain lives. Because of the inherent properties of Layer One, it is impossible to process large amounts of transactions in that layer. The Bitcoin Blockchain can famously process a mere seven transactions per second on average. This constraint was the main impetus for the creation of Layer Two solutions. Lightning Network, being a Layer Two solution, allows for near instant transactions, that can easily scale to millions of transactions per second.
The latest vid from @bitluni's channel is a piece of art. You don't know it yet, but you want to know more about phased arrays. Go watch the vid. https://www.youtube.com/watch?v=z4uxC7ISd-c
<cite class="h-cite u-quotation-of"> <a class="u-url" href="https://twitter.com/edazcona/status/1498721507761172485"> Discover more about the security of the Lightning Network! @gijswijs research is extremely valuable for continuously improving the Lightning Network
Checking out the coding style requirements for contributing to the (amazing) SVG.js from @wout. This made me giggle: > avoid semicolons, we're not writing PHP here.
\ No newline at end of file
diff --git a/feed/5/index.html b/feed/5/index.html
index 86c71ae0..3d12167b 100644
--- a/feed/5/index.html
+++ b/feed/5/index.html
@@ -1 +1 @@
-Gijs van DamGijs van Dam
Working through the docs of @statelyai, my eye fell on this pattern. Anybody know the official name? It's a JS callback pattern but you get a callback and you get an onReceive that allows for registering a listener to an event at the parent. Voila: 2-way parent-child comms
Working through the docs of @statelyai, my eye fell on this pattern. Anybody know the official name? It's a JS callback pattern but you get a callback and you get an onReceive that allows for registering a listener to an event at the parent. Voila: 2-way parent-child comms
\ No newline at end of file
diff --git a/feed/6/index.html b/feed/6/index.html
index 95355255..347c6f3d 100644
--- a/feed/6/index.html
+++ b/feed/6/index.html
@@ -1,2 +1,2 @@
-Gijs van DamGijs van Dam
TEST: Let's see if we can wait for this tweet to come online.
TEST: Let's see if we can wait for this tweet to come online.
TEST: Let's see if we can wait for this tweet to come online.
TEST: Let's see if we can wait for this tweet to come online.
Let's see if syndication no works.
Image conversion, resizing and compression with WebAssembly
Image conversion and resizing for the web can be quite fiddly. Take responsive websites for instance. You want to show a smaller version of your image on smaller devices: You don't need to download a 1080px wide image to show on a 360px wide device, especially since that device is likely constrained in the amount of bandwidth it has. Then again when your website is shown on an ultra HD screen with 3840x2160 resolution 1080 is maybe even too small.
Apart from multiple sizes, you also want to offer multiple formats. Modern browsers support new(er) image formats like webp and avif offer better compression for comparable image quality. Using these formats you can decrease the total download size of your page, while improving the overall experience for the user. But you just can't assume (yet) that all browsers support those newer formats, so you have to provide older formats as a fallback option. All in all the amount of different files you have to offer for just a single image on a web page starts to become quite large and the whole thing becomes, like I said, fiddly.
3 likes 2 replies
Measuring your writing progress with a git word count
Writing a scientific paper is hard. Doing your PhD is hard. Writing your thesis is hard. And to make me feel even more miserable I decided to measure my progress by counting the net change in words I achieve throughout each day. I am by no means a productivity guru and I don't know whether word count is a useful indicator for measuring the progress of a paper. That being said, it is a reality check to see how fast my work is progressing. So without further ado here's the Powershell command that outputs the wordcount for the last 25 days based on git commits.
Pandoc-filter for highlighting to-dos in LaTeX output
While writing my papers I try not to get bogged down too much. So if a paragraph doens't flow right I just type TODO: rewrite on the line below it, and continue writing. When I think of something that I shouldn't forget, like an extra analysis to run I just write it down as a todo in the running text of my paper. I also write thoughts on my paper as a todo. Ideas on structure, whether I should maybe rearrange paragraphs or approach a subject differently, it all ends up as a todo in the running text.
When running the VSCode task for converting my paper to PDF (using Pandoc) it puts all the todos into the running text. That's fine by me, it helps as an extra reminder that stuff still needs to happen. But I wanted the todos to be visually different from the running text, so that it stands apart and doesn't confuse people who are reading my draft. That is where my Pandoc filter comes into play.
Super easy tip for slide animation with Pandoc and reveal.js
I found this super easy alternative way to animate your slides with reveal.js that works out of the box with Markdown and Pandoc. Here is how to do it.
Last week I had to give a progress presentation about the current state of my PhD, and I can whip those up in no time. I use Boilerplate Paper not only for writing my papers, but also for presentations like this.
I write the presentation in Markdown and then convert it to reveal.js. But sometimes you want something else than the default sliding transition that reveal.js provides.
Running c-lightning in Simverse with plugins
The goal is to run c-lightning with plugins in a local testing cluster. For my cluster I use Simverse. Simverse allows for additional command line arguments to be passed to lightningd, so it should be possible to run lightningd with the plugin argument.
Let's first clone our plugin. We will be using one of the plugins that are available through Lightningd on Github.
cd ~\simverse\_repos
+Gijs van DamGijs van Dam
Test: Note wit a picture
TEST: Let's see if we can wait for this tweet to come online.
TEST: Let's see if we can wait for this tweet to come online.
TEST: Let's see if we can wait for this tweet to come online.
TEST: Let's see if we can wait for this tweet to come online.
Let's see if syndication no works.
Image conversion, resizing and compression with WebAssembly
Image conversion and resizing for the web can be quite fiddly. Take responsive websites for instance. You want to show a smaller version of your image on smaller devices: You don't need to download a 1080px wide image to show on a 360px wide device, especially since that device is likely constrained in the amount of bandwidth it has. Then again when your website is shown on an ultra HD screen with 3840x2160 resolution 1080 is maybe even too small.
Apart from multiple sizes, you also want to offer multiple formats. Modern browsers support new(er) image formats like webp and avif offer better compression for comparable image quality. Using these formats you can decrease the total download size of your page, while improving the overall experience for the user. But you just can't assume (yet) that all browsers support those newer formats, so you have to provide older formats as a fallback option. All in all the amount of different files you have to offer for just a single image on a web page starts to become quite large and the whole thing becomes, like I said, fiddly.
3 likes 2 replies
Measuring your writing progress with a git word count
Writing a scientific paper is hard. Doing your PhD is hard. Writing your thesis is hard. And to make me feel even more miserable I decided to measure my progress by counting the net change in words I achieve throughout each day. I am by no means a productivity guru and I don't know whether word count is a useful indicator for measuring the progress of a paper. That being said, it is a reality check to see how fast my work is progressing. So without further ado here's the Powershell command that outputs the wordcount for the last 25 days based on git commits. (For the bash command, see the bottom of this post)
Pandoc-filter for highlighting to-dos in LaTeX output
While writing my papers I try not to get bogged down too much. So if a paragraph doens't flow right I just type TODO: rewrite on the line below it, and continue writing. When I think of something that I shouldn't forget, like an extra analysis to run I just write it down as a todo in the running text of my paper. I also write thoughts on my paper as a todo. Ideas on structure, whether I should maybe rearrange paragraphs or approach a subject differently, it all ends up as a todo in the running text.
When running the VSCode task for converting my paper to PDF (using Pandoc) it puts all the todos into the running text. That's fine by me, it helps as an extra reminder that stuff still needs to happen. But I wanted the todos to be visually different from the running text, so that it stands apart and doesn't confuse people who are reading my draft. That is where my Pandoc filter comes into play.
Super easy tip for slide animation with Pandoc and reveal.js
I found this super easy alternative way to animate your slides with reveal.js that works out of the box with Markdown and Pandoc. Here is how to do it.
Last week I had to give a progress presentation about the current state of my PhD, and I can whip those up in no time. I use Boilerplate Paper not only for writing my papers, but also for presentations like this.
I write the presentation in Markdown and then convert it to reveal.js. But sometimes you want something else than the default sliding transition that reveal.js provides.
Running c-lightning in Simverse with plugins
The goal is to run c-lightning with plugins in a local testing cluster. For my cluster I use Simverse. Simverse allows for additional command line arguments to be passed to lightningd, so it should be possible to run lightningd with the plugin argument.
Let's first clone our plugin. We will be using one of the plugins that are available through Lightningd on Github.
cd ~\simverse\_repos
git clone https://github.com/lightningd/plugins.git --depth 1
We put the plugin in the _repos folder, because it is assumed that the plugin is there when the cluster is being build. (Also: throughout this article we assume your simverse folder is inside your home folder. If that is not the case, adjust it accordingly)
Since all nodes in Simverse run inside Docker containers, that plugin-file should be made available inside the Docker context folder. The _repos folder is not part of that context (each container gets its own context) so we have to copy the file from the _repos folder to the Docker context folder. Luckily Simverse works with the concept of recipes. A recipe describes how your cluster should look like. A recipe is a bash script that uses a library called cookbook that can be used to build your cluster step-by-step. Since it is "just" a bash script, you can do anything bash can do to tweak your cluster.
We will create a recipe that creates a cluster with three c-lightning nodes, running on a bitcoind back-end.
SSH keybased authentication Windows to Linux
I do most of my development on a remote machine. The machine isn't that remote, it's a mini-pc running Ubuntu that is standing right here on my desk. It has no peripherals, so I have to do all my development remotely through my Windows 10 laptop.
Remote development with Vscode is amazing. It just works. Once you are set up, there's no difference with working locally. To have that seamless experience you do have to set up keybased authentication for SSH. If you don't you will be constantly reminded of working remotely, because you have to type in the password of the remote machine.
Debugging LND while running a local cluster
If you want to debug LND, or if you want to take a real deep dive into LND, you probably want to be able to set breakpoints in the source code to see what is actually happening. Not only that, you also want to have the node run in a local cluster of other nodes, so that you can perform some real Lightning actions like opening a channel and make payments. This post takes you through the setup I use based on Delve and Simverse.
Building Bitcoin Core On Windows 10
I've been following Bitcoin and more importantly the Blockchain from the sidelines for a few years now, but I wanted to get my hands dirty. Obviously I could just download the Bitcoin Core executables from bitcoin.org, but I always feel it gives me more insight if I build something myself. Also it's was a nice test case for Bash on Windows.
\ No newline at end of file
diff --git a/feed/index.html b/feed/index.html
index 64122eca..0bde1d4b 100644
--- a/feed/index.html
+++ b/feed/index.html
@@ -1 +1 @@
-Gijs van DamGijs van Dam
People underestimate the amount by which software systems act as living organisms that require constant care and maintenance. Or as cars that suffer from wear and tear, if you don't like the former metaphor.
Yes, desert climate in the north, (sub)tropical climate in sub-saharan Africa. But I am not suggesting it is a good case to make. Look at the deserts of Namibia for instance.
Complaining about stock buybacks just isn't part of public discourse in the NL. Is that because European companies don't do buybacks, or because the public just doesn't care about them?
> Macroeconomists want their math hard enough to make them look smarter than sociologists, but not too hard that they can’t get clean-looking solutions.
But isn't that what Eric and Udi are saying as well? You seem to be disagreeing with them, but I'm not sure.
Anyway, there's a lot of noise. I found my corner in academia which I am enjoying, and it's all about the technical core, blissfully unaware of crypto influencers.
I took up cubing at the tender age of 45. Two days later and I have a sub 2-minute PR and an ao5 of 2:13. @jpermofficial 's tutorials are a huge help. Interesting to see if I can get a sub 1-minute PR and how long that will take me.
The confusion comes from Hello Kitty, which is Japanese. The similarities in style are striking. So much so, that the creator of Miffy brought Hello Kitty to court over a less known character called Cathy (and won).
Thanks for mentioning my research @bitgould! The above paper is wrong about LN being shortest path only, tho. All major clients support route randomization. Route randomization means the payment algorithm does not always use the lowest-fee or shortest route.
@MustardVideos I really enjoyed your vid on flying wings. Did you know that the idea is still pursued by @tudelft? check: https://www.tudelft.nl/lr/flying-v
@gijswijs That's a question I struggle with these days. But I think that the reasons for Bitcoin in 2008 are still valid. I am hopeful that something that is a net benefit to society will remain once the dust has settled.
@gladstein The 2008 financial crisis was the reason for me to get involved in Bitcoin and crypto. But didn't we set the stage for the same quants of 2008 to package crypto like they packaged subprime mortgages? The ICO boom, the NFTs, Terra/Luna. Haven't we all been duped?
People underestimate the amount by which software systems act as living organisms that require constant care and maintenance. Or as cars that suffer from wear and tear, if you don't like the former metaphor.
Yes, desert climate in the north, (sub)tropical climate in sub-saharan Africa. But I am not suggesting it is a good case to make. Look at the deserts of Namibia for instance.
Complaining about stock buybacks just isn't part of public discourse in the NL. Is that because European companies don't do buybacks, or because the public just doesn't care about them?
> Macroeconomists want their math hard enough to make them look smarter than sociologists, but not too hard that they can’t get clean-looking solutions.
But isn't that what Eric and Udi are saying as well? You seem to be disagreeing with them, but I'm not sure.
Anyway, there's a lot of noise. I found my corner in academia which I am enjoying, and it's all about the technical core, blissfully unaware of crypto influencers.
I took up cubing at the tender age of 45. Two days later and I have a sub 2-minute PR and an ao5 of 2:13. @jpermofficial 's tutorials are a huge help. Interesting to see if I can get a sub 1-minute PR and how long that will take me.
The confusion comes from Hello Kitty, which is Japanese. The similarities in style are striking. So much so, that the creator of Miffy brought Hello Kitty to court over a less known character called Cathy (and won).
Thanks for mentioning my research @bitgould! The above paper is wrong about LN being shortest path only, tho. All major clients support route randomization. Route randomization means the payment algorithm does not always use the lowest-fee or shortest route.
@MustardVideos I really enjoyed your vid on flying wings. Did you know that the idea is still pursued by @tudelft? check: https://www.tudelft.nl/lr/flying-v
@gijswijs That's a question I struggle with these days. But I think that the reasons for Bitcoin in 2008 are still valid. I am hopeful that something that is a net benefit to society will remain once the dust has settled.
\ No newline at end of file
diff --git a/index.html b/index.html
index 10f5218f..1b7e4b58 100644
--- a/index.html
+++ b/index.html
@@ -1 +1 @@
-Gijs van DamGijs van Dam
There is this cool trick you can do with Schnorr signatures. It is called Adaptor Signature (AS). An adaptor signature is an extra signature that, combined with the original signature, allow for revealing a value that was previously hidden. You can use this trick to solve trust problems as they appear in atomic swaps, coin swaps and Discreet Log Contracts (DLCs).
Signature Aggregation (SA) is a way to aggregate multiple signatures into a single signature. The single aggregate signature is smaller (in bytes) than the original signatures combined. It reduces transaction weight, meaning we can have more transactions per block, which is always a good thing. It's like 7zip for transactions. Signature Half Aggregation is a variant of SA that only aggregates half of each signature. It offers less compression, but it has the benefit of not requiring any interaction with the signers, whereas full aggregation does require cooperation of all the signers.
So two cool tricks, but the latter breaks the former when it is used for blockwide signature aggregation. This article explains the math behind it and why SA breaks AS
Lightning Network is a peer-to-peer payment network that runs on top of the Bitcoin Blockchain. Because it runs on top of the Blockchain it is called a layer-two solution, which groups it together with other solutions that have this property of being built on top of a Blockchain. Layer One is the base layer, where the Blockchain lives. Because of the inherent properties of Layer One, it is impossible to process large amounts of transactions in that layer. The Bitcoin Blockchain can famously process a mere seven transactions per second on average. This constraint was the main impetus for the creation of Layer Two solutions. Lightning Network, being a Layer Two solution, allows for near instant transactions, that can easily scale to millions of transactions per second.
Image conversion and resizing for the web can be quite fiddly. Take responsive websites for instance. You want to show a smaller version of your image on smaller devices: You don't need to download a 1080px wide image to show on a 360px wide device, especially since that device is likely constrained in the amount of bandwidth it has. Then again when your website is shown on an ultra HD screen with 3840x2160 resolution 1080 is maybe even too small.
Apart from multiple sizes, you also want to offer multiple formats. Modern browsers support new(er) image formats like webp and avif offer better compression for comparable image quality. Using these formats you can decrease the total download size of your page, while improving the overall experience for the user. But you just can't assume (yet) that all browsers support those newer formats, so you have to provide older formats as a fallback option. All in all the amount of different files you have to offer for just a single image on a web page starts to become quite large and the whole thing becomes, like I said, fiddly.
Writing a scientific paper is hard. Doing your PhD is hard. Writing your thesis is hard. And to make me feel even more miserable I decided to measure my progress by counting the net change in words I achieve throughout each day. I am by no means a productivity guru and I don't know whether word count is a useful indicator for measuring the progress of a paper. That being said, it is a reality check to see how fast my work is progressing. So without further ado here's the Powershell command that outputs the wordcount for the last 25 days based on git commits.
While writing my papers I try not to get bogged down too much. So if a paragraph doens't flow right I just type TODO: rewrite on the line below it, and continue writing. When I think of something that I shouldn't forget, like an extra analysis to run I just write it down as a todo in the running text of my paper. I also write thoughts on my paper as a todo. Ideas on structure, whether I should maybe rearrange paragraphs or approach a subject differently, it all ends up as a todo in the running text.
When running the VSCode task for converting my paper to PDF (using Pandoc) it puts all the todos into the running text. That's fine by me, it helps as an extra reminder that stuff still needs to happen. But I wanted the todos to be visually different from the running text, so that it stands apart and doesn't confuse people who are reading my draft. That is where my Pandoc filter comes into play.
I found this super easy alternative way to animate your slides with reveal.js that works out of the box with Markdown and Pandoc. Here is how to do it.
Last week I had to give a progress presentation about the current state of my PhD, and I can whip those up in no time. I use Boilerplate Paper not only for writing my papers, but also for presentations like this.
I write the presentation in Markdown and then convert it to reveal.js. But sometimes you want something else than the default sliding transition that reveal.js provides.
There is this cool trick you can do with Schnorr signatures. It is called Adaptor Signature (AS). An adaptor signature is an extra signature that, combined with the original signature, allow for revealing a value that was previously hidden. You can use this trick to solve trust problems as they appear in atomic swaps, coin swaps and Discreet Log Contracts (DLCs).
Signature Aggregation (SA) is a way to aggregate multiple signatures into a single signature. The single aggregate signature is smaller (in bytes) than the original signatures combined. It reduces transaction weight, meaning we can have more transactions per block, which is always a good thing. It's like 7zip for transactions. Signature Half Aggregation is a variant of SA that only aggregates half of each signature. It offers less compression, but it has the benefit of not requiring any interaction with the signers, whereas full aggregation does require cooperation of all the signers.
So two cool tricks, but the latter breaks the former when it is used for blockwide signature aggregation. This article explains the math behind it and why SA breaks AS
Lightning Network is a peer-to-peer payment network that runs on top of the Bitcoin Blockchain. Because it runs on top of the Blockchain it is called a layer-two solution, which groups it together with other solutions that have this property of being built on top of a Blockchain. Layer One is the base layer, where the Blockchain lives. Because of the inherent properties of Layer One, it is impossible to process large amounts of transactions in that layer. The Bitcoin Blockchain can famously process a mere seven transactions per second on average. This constraint was the main impetus for the creation of Layer Two solutions. Lightning Network, being a Layer Two solution, allows for near instant transactions, that can easily scale to millions of transactions per second.
Image conversion and resizing for the web can be quite fiddly. Take responsive websites for instance. You want to show a smaller version of your image on smaller devices: You don't need to download a 1080px wide image to show on a 360px wide device, especially since that device is likely constrained in the amount of bandwidth it has. Then again when your website is shown on an ultra HD screen with 3840x2160 resolution 1080 is maybe even too small.
Apart from multiple sizes, you also want to offer multiple formats. Modern browsers support new(er) image formats like webp and avif offer better compression for comparable image quality. Using these formats you can decrease the total download size of your page, while improving the overall experience for the user. But you just can't assume (yet) that all browsers support those newer formats, so you have to provide older formats as a fallback option. All in all the amount of different files you have to offer for just a single image on a web page starts to become quite large and the whole thing becomes, like I said, fiddly.
Writing a scientific paper is hard. Doing your PhD is hard. Writing your thesis is hard. And to make me feel even more miserable I decided to measure my progress by counting the net change in words I achieve throughout each day. I am by no means a productivity guru and I don't know whether word count is a useful indicator for measuring the progress of a paper. That being said, it is a reality check to see how fast my work is progressing. So without further ado here's the Powershell command that outputs the wordcount for the last 25 days based on git commits. (For the bash command, see the bottom of this post)
While writing my papers I try not to get bogged down too much. So if a paragraph doens't flow right I just type TODO: rewrite on the line below it, and continue writing. When I think of something that I shouldn't forget, like an extra analysis to run I just write it down as a todo in the running text of my paper. I also write thoughts on my paper as a todo. Ideas on structure, whether I should maybe rearrange paragraphs or approach a subject differently, it all ends up as a todo in the running text.
When running the VSCode task for converting my paper to PDF (using Pandoc) it puts all the todos into the running text. That's fine by me, it helps as an extra reminder that stuff still needs to happen. But I wanted the todos to be visually different from the running text, so that it stands apart and doesn't confuse people who are reading my draft. That is where my Pandoc filter comes into play.
I found this super easy alternative way to animate your slides with reveal.js that works out of the box with Markdown and Pandoc. Here is how to do it.
Last week I had to give a progress presentation about the current state of my PhD, and I can whip those up in no time. I use Boilerplate Paper not only for writing my papers, but also for presentations like this.
I write the presentation in Markdown and then convert it to reveal.js. But sometimes you want something else than the default sliding transition that reveal.js provides.
\ No newline at end of file
diff --git a/likes/2/index.html b/likes/2/index.html
index aa9353cd..248ee6aa 100644
--- a/likes/2/index.html
+++ b/likes/2/index.html
@@ -1 +1 @@
-Gijs van DamGijs van Dam
\ No newline at end of file
diff --git a/likes/index.html b/likes/index.html
index 98a502b5..df72c5ab 100644
--- a/likes/index.html
+++ b/likes/index.html
@@ -1 +1 @@
-Gijs van DamGijs van Dam
\ No newline at end of file
diff --git a/post/measuring-your-writing-progress-with-a-git-word-count/index.html b/post/measuring-your-writing-progress-with-a-git-word-count/index.html
index 122e2682..e0a0415d 100644
--- a/post/measuring-your-writing-progress-with-a-git-word-count/index.html
+++ b/post/measuring-your-writing-progress-with-a-git-word-count/index.html
@@ -1,4 +1,4 @@
-Measuring your writing progress with a git word countGijs van Dam
Measuring your writing progress with a git word count
Writing a scientific paper is hard. Doing your PhD is hard. Writing your thesis is hard. And to make me feel even more miserable I decided to measure my progress by counting the net change in words I achieve throughout each day. I am by no means a productivity guru and I don't know whether word count is a useful indicator for measuring the progress of a paper. That being said, it is a reality check to see how fast my work is progressing. So without further ado here's the Powershell command that outputs the wordcount for the last 25 days based on git commits.
At the core of this script is the following git command:
git diff --word-diff=porcelain "@{$j days ago}" "@{$i days ago}" -- "***.md"
This command uses git diff (duh!) with the --word-diff option which marks the actual word being changed instead of the entire line that contains it. The latter is the default behavior of git diff and is not what we want when performing a word count. porcelain denotes the special line-based format for word-diff meant for script consumption, which is what we will do next. -- "***.md" only considers markdown files which are the files that contain all the content of my paper in Boilerplate Paper. It is important to note that if you don't commit regularly (at least daily) this word count doesn't come up with accurate data.
If you run only this command, you would get something like this.
~
+Measuring your writing progress with a git word countGijs van Dam
Measuring your writing progress with a git word count
Writing a scientific paper is hard. Doing your PhD is hard. Writing your thesis is hard. And to make me feel even more miserable I decided to measure my progress by counting the net change in words I achieve throughout each day. I am by no means a productivity guru and I don't know whether word count is a useful indicator for measuring the progress of a paper. That being said, it is a reality check to see how fast my work is progressing. So without further ado here's the Powershell command that outputs the wordcount for the last 25 days based on git commits. (For the bash command, see the bottom of this post)
At the core of this script is the following git command:
git diff --word-diff=porcelain "@{$j days ago}" "@{$i days ago}" -- "***.md"
This command uses git diff (duh!) with the --word-diff option which marks the actual word being changed instead of the entire line that contains it. The latter is the default behavior of git diff and is not what we want when performing a word count. porcelain denotes the special line-based format for word-diff meant for script consumption, which is what we will do next. -- "***.md" only considers markdown files which are the files that contain all the content of my paper in Boilerplate Paper. It is important to note that if you don't commit regularly (at least daily) this word count doesn't come up with accurate data.
If you run only this command, you would get something like this.
Update 2023-03-10: Since writing this article I switched to Linux almost exclusively, so I have transpiled this command to bash:
for i in {0..24}; do j=$(($i+1)); a=$(git diff --word-diff=porcelain "@{$j days ago}" "@{$i days ago}" -- '***.md' | grep '^+' | grep -v '^+++'| wc -w) ; b=$(git diff --word-diff=porcelain "@{$j days ago}" "@{$i days ago}" -- '***.md' | grep '^-' | grep -v '^---'| wc -w) ; echo $(($a - $b)); done
\ No newline at end of file
diff --git a/posts/2/index.html b/posts/2/index.html
index 6a03b570..d5aaaf33 100644
--- a/posts/2/index.html
+++ b/posts/2/index.html
@@ -1,2 +1,2 @@
Gijs van DamGijs van Dam
The goal is to run c-lightning with plugins in a local testing cluster. For my cluster I use Simverse. Simverse allows for additional command line arguments to be passed to lightningd, so it should be possible to run lightningd with the plugin argument.
Let's first clone our plugin. We will be using one of the plugins that are available through Lightningd on Github.
cd ~\simverse\_repos
-git clone https://github.com/lightningd/plugins.git --depth 1
We put the plugin in the _repos folder, because it is assumed that the plugin is there when the cluster is being build. (Also: throughout this article we assume your simverse folder is inside your home folder. If that is not the case, adjust it accordingly)
Since all nodes in Simverse run inside Docker containers, that plugin-file should be made available inside the Docker context folder. The _repos folder is not part of that context (each container gets its own context) so we have to copy the file from the _repos folder to the Docker context folder. Luckily Simverse works with the concept of recipes. A recipe describes how your cluster should look like. A recipe is a bash script that uses a library called cookbook that can be used to build your cluster step-by-step. Since it is "just" a bash script, you can do anything bash can do to tweak your cluster.
We will create a recipe that creates a cluster with three c-lightning nodes, running on a bitcoind back-end.
I do most of my development on a remote machine. The machine isn't that remote, it's a mini-pc running Ubuntu that is standing right here on my desk. It has no peripherals, so I have to do all my development remotely through my Windows 10 laptop.
Remote development with Vscode is amazing. It just works. Once you are set up, there's no difference with working locally. To have that seamless experience you do have to set up keybased authentication for SSH. If you don't you will be constantly reminded of working remotely, because you have to type in the password of the remote machine.
If you want to debug LND, or if you want to take a real deep dive into LND, you probably want to be able to set breakpoints in the source code to see what is actually happening. Not only that, you also want to have the node run in a local cluster of other nodes, so that you can perform some real Lightning actions like opening a channel and make payments. This post takes you through the setup I use based on Delve and Simverse.
I've been following Bitcoin and more importantly the Blockchain from the sidelines for a few years now, but I wanted to get my hands dirty. Obviously I could just download the Bitcoin Core executables from bitcoin.org, but I always feel it gives me more insight if I build something myself. Also it's was a nice test case for Bash on Windows.
\ No newline at end of file
+git clone https://github.com/lightningd/plugins.git --depth 1
We put the plugin in the _repos folder, because it is assumed that the plugin is there when the cluster is being build. (Also: throughout this article we assume your simverse folder is inside your home folder. If that is not the case, adjust it accordingly)
Since all nodes in Simverse run inside Docker containers, that plugin-file should be made available inside the Docker context folder. The _repos folder is not part of that context (each container gets its own context) so we have to copy the file from the _repos folder to the Docker context folder. Luckily Simverse works with the concept of recipes. A recipe describes how your cluster should look like. A recipe is a bash script that uses a library called cookbook that can be used to build your cluster step-by-step. Since it is "just" a bash script, you can do anything bash can do to tweak your cluster.
We will create a recipe that creates a cluster with three c-lightning nodes, running on a bitcoind back-end.
I do most of my development on a remote machine. The machine isn't that remote, it's a mini-pc running Ubuntu that is standing right here on my desk. It has no peripherals, so I have to do all my development remotely through my Windows 10 laptop.
Remote development with Vscode is amazing. It just works. Once you are set up, there's no difference with working locally. To have that seamless experience you do have to set up keybased authentication for SSH. If you don't you will be constantly reminded of working remotely, because you have to type in the password of the remote machine.
If you want to debug LND, or if you want to take a real deep dive into LND, you probably want to be able to set breakpoints in the source code to see what is actually happening. Not only that, you also want to have the node run in a local cluster of other nodes, so that you can perform some real Lightning actions like opening a channel and make payments. This post takes you through the setup I use based on Delve and Simverse.
I've been following Bitcoin and more importantly the Blockchain from the sidelines for a few years now, but I wanted to get my hands dirty. Obviously I could just download the Bitcoin Core executables from bitcoin.org, but I always feel it gives me more insight if I build something myself. Also it's was a nice test case for Bash on Windows.
\ No newline at end of file
diff --git a/replies/index.html b/replies/index.html
index c6d65e65..aa61fb39 100644
--- a/replies/index.html
+++ b/replies/index.html
@@ -1 +1 @@
-Gijs van DamGijs van Dam
People underestimate the amount by which software systems act as living organisms that require constant care and maintenance. Or as cars that suffer from wear and tear, if you don't like the former metaphor.
Yes, desert climate in the north, (sub)tropical climate in sub-saharan Africa. But I am not suggesting it is a good case to make. Look at the deserts of Namibia for instance.
Complaining about stock buybacks just isn't part of public discourse in the NL. Is that because European companies don't do buybacks, or because the public just doesn't care about them?
But isn't that what Eric and Udi are saying as well? You seem to be disagreeing with them, but I'm not sure.
Anyway, there's a lot of noise. I found my corner in academia which I am enjoying, and it's all about the technical core, blissfully unaware of crypto influencers.
The confusion comes from Hello Kitty, which is Japanese. The similarities in style are striking. So much so, that the creator of Miffy brought Hello Kitty to court over a less known character called Cathy (and won).
Thanks for mentioning my research @bitgould! The above paper is wrong about LN being shortest path only, tho. All major clients support route randomization. Route randomization means the payment algorithm does not always use the lowest-fee or shortest route.
@gijswijs That's a question I struggle with these days. But I think that the reasons for Bitcoin in 2008 are still valid. I am hopeful that something that is a net benefit to society will remain once the dust has settled.
@gladstein The 2008 financial crisis was the reason for me to get involved in Bitcoin and crypto. But didn't we set the stage for the same quants of 2008 to package crypto like they packaged subprime mortgages? The ICO boom, the NFTs, Terra/Luna. Haven't we all been duped?
@AshleyRindsberg Yes, so this AI is could go after jobs that don't actually solve problems or reflect on issues: marketing, (1st line) helpdesk, a large part of modern journalism, copy-writing... any task that involves deflecting and wasting someone else's time.
@doctorow Voting with your wallet: Now I am somehow responsible for working conditions and the env footprint of the companies I buy from. Don't like it? You should have enforced it better with your wallet!
I prefer to put people in office to do that for me.
People underestimate the amount by which software systems act as living organisms that require constant care and maintenance. Or as cars that suffer from wear and tear, if you don't like the former metaphor.
Yes, desert climate in the north, (sub)tropical climate in sub-saharan Africa. But I am not suggesting it is a good case to make. Look at the deserts of Namibia for instance.
Complaining about stock buybacks just isn't part of public discourse in the NL. Is that because European companies don't do buybacks, or because the public just doesn't care about them?
But isn't that what Eric and Udi are saying as well? You seem to be disagreeing with them, but I'm not sure.
Anyway, there's a lot of noise. I found my corner in academia which I am enjoying, and it's all about the technical core, blissfully unaware of crypto influencers.
The confusion comes from Hello Kitty, which is Japanese. The similarities in style are striking. So much so, that the creator of Miffy brought Hello Kitty to court over a less known character called Cathy (and won).
Thanks for mentioning my research @bitgould! The above paper is wrong about LN being shortest path only, tho. All major clients support route randomization. Route randomization means the payment algorithm does not always use the lowest-fee or shortest route.
@gijswijs That's a question I struggle with these days. But I think that the reasons for Bitcoin in 2008 are still valid. I am hopeful that something that is a net benefit to society will remain once the dust has settled.
@gladstein The 2008 financial crisis was the reason for me to get involved in Bitcoin and crypto. But didn't we set the stage for the same quants of 2008 to package crypto like they packaged subprime mortgages? The ICO boom, the NFTs, Terra/Luna. Haven't we all been duped?
@AshleyRindsberg Yes, so this AI is could go after jobs that don't actually solve problems or reflect on issues: marketing, (1st line) helpdesk, a large part of modern journalism, copy-writing... any task that involves deflecting and wasting someone else's time.
@doctorow Voting with your wallet: Now I am somehow responsible for working conditions and the env footprint of the companies I buy from. Don't like it? You should have enforced it better with your wallet!
I prefer to put people in office to do that for me.
\ No newline at end of file
diff --git a/reply/2023/02/14-50133/index.html b/reply/2023/02/14-50133/index.html
index 541bb66f..bb5be392 100644
--- a/reply/2023/02/14-50133/index.html
+++ b/reply/2023/02/14-50133/index.html
@@ -1 +1 @@
-Gijs van Dam
\ No newline at end of file
diff --git a/rss.xml b/rss.xml
index 52e1f01a..e55bb98c 100644
--- a/rss.xml
+++ b/rss.xml
@@ -1,10 +1,10 @@
-https://www.gijsvandam.nlmetalsmith-feedTue, 14 Feb 2023 14:01:54 GMTThere is this cool trick you can do with Schnorr signatures. It is called Adaptor Signature (AS). An adaptor signature is an extra signature that, combined with the original signature, allow for revealing a value that was previously hidden. You can use this trick to solve trust problems as they appear in atomic swaps, coin swaps and Discreet Log Contracts (DLCs).
+https://www.gijsvandam.nlmetalsmith-feedFri, 10 Mar 2023 17:21:57 GMTThere is this cool trick you can do with Schnorr signatures. It is called Adaptor Signature (AS). An adaptor signature is an extra signature that, combined with the original signature, allow for revealing a value that was previously hidden. You can use this trick to solve trust problems as they appear in atomic swaps, coin swaps and Discreet Log Contracts (DLCs).
Signature Aggregation (SA) is a way to aggregate multiple signatures into a single signature. The single aggregate signature is smaller (in bytes) than the original signatures combined. It reduces transaction weight, meaning we can have more transactions per block, which is always a good thing. It's like 7zip for transactions. Signature Half Aggregation is a variant of SA that only aggregates half of each signature. It offers less compression, but it has the benefit of not requiring any interaction with the signers, whereas full aggregation does require cooperation of all the signers.
So two cool tricks, but the latter breaks the former when it is used for blockwide signature aggregation. This article explains the math behind it and why SA breaks AS
]]>https://www.gijsvandam.nl/post/why-does-signature-half-aggregation-break-adaptor-signatureshttps://www.gijsvandam.nl/post/why-does-signature-half-aggregation-break-adaptor-signaturesMon, 04 Apr 2022 00:00:00 GMTLightning Network is a peer-to-peer payment network that runs on top of the Bitcoin Blockchain. Because it runs on top of the Blockchain it is called a layer-two solution, which groups it together with other solutions that have this property of being built on top of a Blockchain. Layer One is the base layer, where the Blockchain lives. Because of the inherent properties of Layer One, it is impossible to process large amounts of transactions in that layer. The Bitcoin Blockchain can famously process a mere seven transactions per second on average. This constraint was the main impetus for the creation of Layer Two solutions. Lightning Network, being a Layer Two solution, allows for near instant transactions, that can easily scale to millions of transactions per second.]]>https://www.gijsvandam.nl/post/how-do-payments-in-lightning-network-workhttps://www.gijsvandam.nl/post/how-do-payments-in-lightning-network-workFri, 11 Mar 2022 00:00:00 GMTImage conversion and resizing for the web can be quite fiddly. Take responsive websites for instance. You want to show a smaller version of your image on smaller devices: You don't need to download a 1080px wide image to show on a 360px wide device, especially since that device is likely constrained in the amount of bandwidth it has. Then again when your website is shown on an ultra HD screen with 3840x2160 resolution 1080 is maybe even too small.
Apart from multiple sizes, you also want to offer multiple formats. Modern browsers support new(er) image formats like webp and avif offer better compression for comparable image quality. Using these formats you can decrease the total download size of your page, while improving the overall experience for the user.
But you just can't assume (yet) that all browsers support those newer formats, so you have to provide older formats as a fallback option. All in all the amount of different files you have to offer for just a single image on a web page starts to become quite large and the whole thing becomes, like I said, fiddly.
]]>https://www.gijsvandam.nl/post/image-conversion-resizing-and-compression-with-webassemblyhttps://www.gijsvandam.nl/post/image-conversion-resizing-and-compression-with-webassemblyWed, 31 Mar 2021 00:00:00 GMTWriting a scientific paper is hard. Doing your PhD is hard. Writing your thesis is hard. And to make me feel even more miserable I decided to measure my progress by counting the net change in words I achieve throughout each day.
I am by no means a productivity guru and I don't know whether word count is a useful indicator for measuring the progress of a paper. That being said, it is a reality check to see how fast my work is progressing.
-So without further ado here's the Powershell command that outputs the wordcount for the last 25 days based on git commits.
+So without further ado here's the Powershell command that outputs the wordcount for the last 25 days based on git commits. (For the bash command, see the bottom of this post)
]]>https://www.gijsvandam.nl/post/measuring-your-writing-progress-with-a-git-word-counthttps://www.gijsvandam.nl/post/measuring-your-writing-progress-with-a-git-word-countFri, 26 Feb 2021 00:00:00 GMTWhile writing my papers I try not to get bogged down too much. So if a paragraph doens't flow right I just type TODO: rewrite on the line below it, and continue writing. When I think of something that I shouldn't forget, like an extra analysis to run I just write it down as a todo in the running text of my paper. I also write thoughts on my paper as a todo. Ideas on structure, whether I should maybe rearrange paragraphs or approach a subject differently, it all ends up as a todo in the running text.
When running the VSCode task for converting my paper to PDF (using Pandoc) it puts all the todos into the running text. That's fine by me, it helps as an extra reminder that stuff still needs to happen. But I wanted the todos to be visually different from the running text, so that it stands apart and doesn't confuse people who are reading my draft. That is where my Pandoc filter comes into play.
]]>https://www.gijsvandam.nl/post/pandoc-filter-for-highlighting-to-dos-in-latex-outputhttps://www.gijsvandam.nl/post/pandoc-filter-for-highlighting-to-dos-in-latex-outputTue, 23 Feb 2021 00:00:00 GMTI found this super easy alternative way to animate your slides with reveal.js that works out of the box with Markdown and Pandoc. Here is how to do it.
Last week I had to give a progress presentation about the current state of my PhD, and I can whip those up in no time. I use Boilerplate Paper not only for writing my papers, but also for presentations like this.
diff --git a/sitemap.xml b/sitemap.xml
index 79490179..55563599 100644
--- a/sitemap.xml
+++ b/sitemap.xml
@@ -1 +1 @@
-https://www.gijsvandam.nlweekly0.5https://www.gijsvandam.nl/posts/2/weekly0.5https://www.gijsvandam.nl/reposts/weekly0.5https://www.gijsvandam.nl/likes/weekly0.5https://www.gijsvandam.nl/likes/2/weekly0.5https://www.gijsvandam.nl/replies/weekly0.5https://www.gijsvandam.nl/replies/2/weekly0.5https://www.gijsvandam.nl/photos/weekly0.5https://www.gijsvandam.nl/notes/weekly0.5https://www.gijsvandam.nl/notes/2/weekly0.5https://www.gijsvandam.nl/feed/weekly0.5https://www.gijsvandam.nl/feed/2/weekly0.5https://www.gijsvandam.nl/feed/3/weekly0.5https://www.gijsvandam.nl/feed/4/weekly0.5https://www.gijsvandam.nl/feed/5/weekly0.5https://www.gijsvandam.nl/feed/6/weekly0.5https://www.gijsvandam.nl/home/weekly0.5https://www.gijsvandam.nl/about/weekly0.5https://www.gijsvandam.nl/contact/weekly0.5https://www.gijsvandam.nl/now/weekly0.5https://www.gijsvandam.nl/open-source/weekly0.5https://www.gijsvandam.nl/research/weekly0.5https://www.gijsvandam.nl/resume/weekly0.5https://www.gijsvandam.nl/pages/tags/weekly0.5https://www.gijsvandam.nl/ventures/weekly0.5https://www.gijsvandam.nl/post/building-bitcoin-core-on-windows-10/weekly0.5https://www.gijsvandam.nl/post/debugging-lnd-while-running-a-local-cluster/weekly0.5https://www.gijsvandam.nl/post/how-do-payments-in-lightning-network-work/weekly0.5https://www.gijsvandam.nl/post/image-conversion-resizing-and-compression-with-webassembly/weekly0.5https://www.gijsvandam.nl/post/measuring-your-writing-progress-with-a-git-word-count/weekly0.5https://www.gijsvandam.nl/post/pandoc-filter-for-highlighting-to-dos-in-latex-output/weekly0.5https://www.gijsvandam.nl/post/super-easy-tip-for-slide-animation-with-pandoc-and-reveal.js/weekly0.5https://www.gijsvandam.nl/post/running-c-lightning-in-simverse-with-plugins/weekly0.5https://www.gijsvandam.nl/post/ssh-keybased-authentication-windows-to-linux/weekly0.5https://www.gijsvandam.nl/post/why-does-signature-half-aggregation-break-adaptor-signatures/weekly0.5https://www.gijsvandam.nl/like/2022/02/17-33492/weekly0.5https://www.gijsvandam.nl/like/2022/03/29-44443/weekly0.5https://www.gijsvandam.nl/like/2022/03/29-45901/weekly0.5https://www.gijsvandam.nl/like/2022/03/30-14429/weekly0.5https://www.gijsvandam.nl/like/2022/03/30-18850/weekly0.5https://www.gijsvandam.nl/like/2022/03/30-22753/weekly0.5https://www.gijsvandam.nl/like/2022/03/30-48948/weekly0.5https://www.gijsvandam.nl/like/2022/03/30-6154/weekly0.5https://www.gijsvandam.nl/like/2022/04/08-9133/weekly0.5https://www.gijsvandam.nl/like/2022/04/12-15596/weekly0.5https://www.gijsvandam.nl/like/2022/04/15-31324/weekly0.5https://www.gijsvandam.nl/like/2022/05/13-21401/weekly0.5https://www.gijsvandam.nl/like/2022/05/13-24063/weekly0.5https://www.gijsvandam.nl/like/2022/05/13-6738/weekly0.5https://www.gijsvandam.nl/like/2022/05/13-6753/weekly0.5https://www.gijsvandam.nl/like/2022/05/13-6825/weekly0.5https://www.gijsvandam.nl/like/2022/05/13-6831/weekly0.5https://www.gijsvandam.nl/like/2022/05/13-6887/weekly0.5https://www.gijsvandam.nl/like/2022/05/14-14339/weekly0.5https://www.gijsvandam.nl/like/2022/05/17-10058/weekly0.5https://www.gijsvandam.nl/like/2022/05/18-30142/weekly0.5https://www.gijsvandam.nl/like/2022/06/09-34557/weekly0.5https://www.gijsvandam.nl/like/2022/06/16-13146/weekly0.5https://www.gijsvandam.nl/like/2022/06/17-10319/weekly0.5https://www.gijsvandam.nl/like/2022/06/22-5473/weekly0.5https://www.gijsvandam.nl/like/2022/06/22-6467/weekly0.5https://www.gijsvandam.nl/like/2022/06/27-24909/weekly0.5https://www.gijsvandam.nl/like/2022/10/19-4968/weekly0.5https://www.gijsvandam.nl/like/2022/11/09-31008/weekly0.5https://www.gijsvandam.nl/like/2022/12/09-5106/weekly0.5https://www.gijsvandam.nl/note/2022/02/15-27171/weekly0.5https://www.gijsvandam.nl/note/2022/02/15-29847/weekly0.5https://www.gijsvandam.nl/note/2022/02/15-30403/weekly0.5https://www.gijsvandam.nl/note/2022/02/15-32251/weekly0.5https://www.gijsvandam.nl/note/2022/02/15-32499/weekly0.5https://www.gijsvandam.nl/note/2022/02/15-33268/weekly0.5https://www.gijsvandam.nl/note/2022/02/15-34237/weekly0.5https://www.gijsvandam.nl/note/2022/02/15-35473/weekly0.5https://www.gijsvandam.nl/note/2022/02/15-44835/weekly0.5https://www.gijsvandam.nl/note/2022/02/15-47823/weekly0.5https://www.gijsvandam.nl/note/2022/02/16-3748/weekly0.5https://www.gijsvandam.nl/note/2022/02/16-3809/weekly0.5https://www.gijsvandam.nl/note/2022/02/16-3840/weekly0.5https://www.gijsvandam.nl/note/2022/02/16-4984/weekly0.5https://www.gijsvandam.nl/note/2022/02/16-5040/weekly0.5https://www.gijsvandam.nl/note/2022/02/16-5062/weekly0.5https://www.gijsvandam.nl/note/2022/02/16-6459/weekly0.5https://www.gijsvandam.nl/note/2022/02/16-7572/weekly0.5https://www.gijsvandam.nl/note/2022/02/17-17647/weekly0.5https://www.gijsvandam.nl/note/2022/02/25-5777/weekly0.5https://www.gijsvandam.nl/note/2022/03/02-30920/weekly0.5https://www.gijsvandam.nl/note/2022/03/02-5366/weekly0.5https://www.gijsvandam.nl/note/2022/03/15-8786/weekly0.5https://www.gijsvandam.nl/note/2022/03/24-25322/weekly0.5https://www.gijsvandam.nl/note/2022/04/27-9088/weekly0.5https://www.gijsvandam.nl/note/2022/06/21-7056/weekly0.5https://www.gijsvandam.nl/note/2022/08/30-11361/weekly0.5https://www.gijsvandam.nl/note/2022/10/21-26894/weekly0.5https://www.gijsvandam.nl/note/2022/11/09-1939/weekly0.5https://www.gijsvandam.nl/photo/2022/02/16-3950/weekly0.5https://www.gijsvandam.nl/photo/2022/02/16-4222/weekly0.5https://www.gijsvandam.nl/photo/2022/02/17-18628/weekly0.5https://www.gijsvandam.nl/photo/2022/02/17-29992/weekly0.5https://www.gijsvandam.nl/photo/2022/02/17-30933/weekly0.5https://www.gijsvandam.nl/photo/2022/02/17-33011/weekly0.5https://www.gijsvandam.nl/photo/2022/02/18-57744/weekly0.5https://www.gijsvandam.nl/photo/2022/02/22-49012/weekly0.5https://www.gijsvandam.nl/photo/2022/02/28-27104/weekly0.5https://www.gijsvandam.nl/photo/2022/03/29-24484/weekly0.5https://www.gijsvandam.nl/photo/2022/03/31-13008/weekly0.5https://www.gijsvandam.nl/photo/2022/04/01-6960/weekly0.5https://www.gijsvandam.nl/photo/2022/04/08-11189/weekly0.5https://www.gijsvandam.nl/photo/2022/05/17-51349/weekly0.5https://www.gijsvandam.nl/photo/2022/06/15-10659/weekly0.5https://www.gijsvandam.nl/photo/2022/09/19-11320/weekly0.5https://www.gijsvandam.nl/reply/2022/02/22-51488/weekly0.5https://www.gijsvandam.nl/reply/2022/02/23-25550/weekly0.5https://www.gijsvandam.nl/reply/2022/02/23-6487/weekly0.5https://www.gijsvandam.nl/reply/2022/03/14-3524/weekly0.5https://www.gijsvandam.nl/reply/2022/03/15-27609/weekly0.5https://www.gijsvandam.nl/reply/2022/03/18-6287/weekly0.5https://www.gijsvandam.nl/reply/2022/03/19-19572/weekly0.5https://www.gijsvandam.nl/reply/2022/03/19-20011/weekly0.5https://www.gijsvandam.nl/reply/2022/03/24-25808/weekly0.5https://www.gijsvandam.nl/reply/2022/03/29-47144/weekly0.5https://www.gijsvandam.nl/reply/2022/03/31-9522/weekly0.5https://www.gijsvandam.nl/reply/2022/04/04-4837/weekly0.5https://www.gijsvandam.nl/reply/2022/04/08-10065/weekly0.5https://www.gijsvandam.nl/reply/2022/04/08-9393/weekly0.5https://www.gijsvandam.nl/reply/2022/04/15-30405/weekly0.5https://www.gijsvandam.nl/reply/2022/04/27-10399/weekly0.5https://www.gijsvandam.nl/reply/2022/04/27-11023/weekly0.5https://www.gijsvandam.nl/reply/2022/04/27-11235/weekly0.5https://www.gijsvandam.nl/reply/2022/04/27-9426/weekly0.5https://www.gijsvandam.nl/reply/2022/04/27-9703/weekly0.5https://www.gijsvandam.nl/reply/2022/05/17-7736/weekly0.5https://www.gijsvandam.nl/reply/2022/05/17-9592/weekly0.5https://www.gijsvandam.nl/reply/2022/05/18-31162/weekly0.5https://www.gijsvandam.nl/reply/2022/05/18-6225/weekly0.5https://www.gijsvandam.nl/reply/2022/05/18-6490/weekly0.5https://www.gijsvandam.nl/reply/2022/06/16-36570/weekly0.5https://www.gijsvandam.nl/reply/2022/06/16-36787/weekly0.5https://www.gijsvandam.nl/reply/2022/06/17-32419/weekly0.5https://www.gijsvandam.nl/reply/2022/06/20-41110/weekly0.5https://www.gijsvandam.nl/reply/2022/06/22-4825/weekly0.5https://www.gijsvandam.nl/reply/2022/06/22-5125/weekly0.5https://www.gijsvandam.nl/reply/2022/06/22-5638/weekly0.5https://www.gijsvandam.nl/reply/2022/09/08-32881/weekly0.5https://www.gijsvandam.nl/reply/2022/10/19-4868/weekly0.5https://www.gijsvandam.nl/reply/2022/10/19-5621/weekly0.5https://www.gijsvandam.nl/reply/2022/10/25-35503/weekly0.5https://www.gijsvandam.nl/reply/2022/10/25-35544/weekly0.5https://www.gijsvandam.nl/reply/2022/10/28-1945/weekly0.5https://www.gijsvandam.nl/reply/2022/11/09-2109/weekly0.5https://www.gijsvandam.nl/reply/2023/02/08-31285/weekly0.5https://www.gijsvandam.nl/reply/2023/02/09-38481/weekly0.5https://www.gijsvandam.nl/reply/2023/02/09-39298/weekly0.5https://www.gijsvandam.nl/reply/2023/02/09-39685/weekly0.5https://www.gijsvandam.nl/reply/2023/02/14-50133/weekly0.5https://www.gijsvandam.nl/repost/2022/02/18-30270/weekly0.5https://www.gijsvandam.nl/repost/2022/02/18-30288/weekly0.5https://www.gijsvandam.nl/repost/2022/03/03-amazing/weekly0.5https://www.gijsvandam.nl/repost/2022/03/07-49678/weekly0.5https://www.gijsvandam.nl/repost/2022/04/01-2436/weekly0.5https://www.gijsvandam.nl/repost/2022/05/13-24864/weekly0.5https://www.gijsvandam.nl/repost/2022/05/13-45624/weekly0.5https://www.gijsvandam.nl/repost/2022/05/27-19753/weekly0.5https://www.gijsvandam.nl/repost/2022/06/09-24377/weekly0.5https://www.gijsvandam.nl/repost/2022/06/13-46841/weekly0.5https://www.gijsvandam.nl/repost/2022/06/16-3920/weekly0.5https://www.gijsvandam.nl/topics/bitcoin/weekly0.5https://www.gijsvandam.nl/topics/windows-10/weekly0.5https://www.gijsvandam.nl/topics/lnd/weekly0.5https://www.gijsvandam.nl/topics/simverse/weekly0.5https://www.gijsvandam.nl/topics/vscode/weekly0.5https://www.gijsvandam.nl/topics/cryptography/weekly0.5https://www.gijsvandam.nl/topics/lightning-network/weekly0.5https://www.gijsvandam.nl/topics/webassembly/weekly0.5https://www.gijsvandam.nl/topics/janos/weekly0.5https://www.gijsvandam.nl/topics/boilerplate-paper/weekly0.5https://www.gijsvandam.nl/topics/powershell/weekly0.5https://www.gijsvandam.nl/topics/git/weekly0.5https://www.gijsvandam.nl/topics/pandoc/weekly0.5https://www.gijsvandam.nl/topics/lua/weekly0.5https://www.gijsvandam.nl/topics/latex/weekly0.5https://www.gijsvandam.nl/topics/revealjs/weekly0.5https://www.gijsvandam.nl/topics/c-lightning/weekly0.5https://www.gijsvandam.nl/topics/ssh/weekly0.5https://www.gijsvandam.nl/topics/indieweb/weekly0.5https://www.gijsvandam.nl/topics/test1/weekly0.5https://www.gijsvandam.nl/topics/test2/weekly0.5https://www.gijsvandam.nl/topics/science/weekly0.5https://www.gijsvandam.nl/topics/crypto/weekly0.5
\ No newline at end of file
+https://www.gijsvandam.nlweekly0.5https://www.gijsvandam.nl/posts/2/weekly0.5https://www.gijsvandam.nl/reposts/weekly0.5https://www.gijsvandam.nl/likes/weekly0.5https://www.gijsvandam.nl/likes/2/weekly0.5https://www.gijsvandam.nl/replies/weekly0.5https://www.gijsvandam.nl/replies/2/weekly0.5https://www.gijsvandam.nl/photos/weekly0.5https://www.gijsvandam.nl/notes/weekly0.5https://www.gijsvandam.nl/notes/2/weekly0.5https://www.gijsvandam.nl/feed/weekly0.5https://www.gijsvandam.nl/feed/2/weekly0.5https://www.gijsvandam.nl/feed/3/weekly0.5https://www.gijsvandam.nl/feed/4/weekly0.5https://www.gijsvandam.nl/feed/5/weekly0.5https://www.gijsvandam.nl/feed/6/weekly0.5https://www.gijsvandam.nl/home/weekly0.5https://www.gijsvandam.nl/about/weekly0.5https://www.gijsvandam.nl/contact/weekly0.5https://www.gijsvandam.nl/now/weekly0.5https://www.gijsvandam.nl/open-source/weekly0.5https://www.gijsvandam.nl/research/weekly0.5https://www.gijsvandam.nl/resume/weekly0.5https://www.gijsvandam.nl/pages/tags/weekly0.5https://www.gijsvandam.nl/ventures/weekly0.5https://www.gijsvandam.nl/post/building-bitcoin-core-on-windows-10/weekly0.5https://www.gijsvandam.nl/post/debugging-lnd-while-running-a-local-cluster/weekly0.5https://www.gijsvandam.nl/post/how-do-payments-in-lightning-network-work/weekly0.5https://www.gijsvandam.nl/post/image-conversion-resizing-and-compression-with-webassembly/weekly0.5https://www.gijsvandam.nl/post/measuring-your-writing-progress-with-a-git-word-count/weekly0.5https://www.gijsvandam.nl/post/pandoc-filter-for-highlighting-to-dos-in-latex-output/weekly0.5https://www.gijsvandam.nl/post/super-easy-tip-for-slide-animation-with-pandoc-and-reveal.js/weekly0.5https://www.gijsvandam.nl/post/running-c-lightning-in-simverse-with-plugins/weekly0.5https://www.gijsvandam.nl/post/ssh-keybased-authentication-windows-to-linux/weekly0.5https://www.gijsvandam.nl/post/why-does-signature-half-aggregation-break-adaptor-signatures/weekly0.5https://www.gijsvandam.nl/like/2022/02/17-33492/weekly0.5https://www.gijsvandam.nl/like/2022/03/29-44443/weekly0.5https://www.gijsvandam.nl/like/2022/03/29-45901/weekly0.5https://www.gijsvandam.nl/like/2022/03/30-14429/weekly0.5https://www.gijsvandam.nl/like/2022/03/30-18850/weekly0.5https://www.gijsvandam.nl/like/2022/03/30-22753/weekly0.5https://www.gijsvandam.nl/like/2022/03/30-48948/weekly0.5https://www.gijsvandam.nl/like/2022/03/30-6154/weekly0.5https://www.gijsvandam.nl/like/2022/04/08-9133/weekly0.5https://www.gijsvandam.nl/like/2022/04/12-15596/weekly0.5https://www.gijsvandam.nl/like/2022/04/15-31324/weekly0.5https://www.gijsvandam.nl/like/2022/05/13-21401/weekly0.5https://www.gijsvandam.nl/like/2022/05/13-24063/weekly0.5https://www.gijsvandam.nl/like/2022/05/13-6738/weekly0.5https://www.gijsvandam.nl/like/2022/05/13-6753/weekly0.5https://www.gijsvandam.nl/like/2022/05/13-6825/weekly0.5https://www.gijsvandam.nl/like/2022/05/13-6831/weekly0.5https://www.gijsvandam.nl/like/2022/05/13-6887/weekly0.5https://www.gijsvandam.nl/like/2022/05/14-14339/weekly0.5https://www.gijsvandam.nl/like/2022/05/17-10058/weekly0.5https://www.gijsvandam.nl/like/2022/05/18-30142/weekly0.5https://www.gijsvandam.nl/like/2022/06/09-34557/weekly0.5https://www.gijsvandam.nl/like/2022/06/16-13146/weekly0.5https://www.gijsvandam.nl/like/2022/06/17-10319/weekly0.5https://www.gijsvandam.nl/like/2022/06/22-5473/weekly0.5https://www.gijsvandam.nl/like/2022/06/22-6467/weekly0.5https://www.gijsvandam.nl/like/2022/06/27-24909/weekly0.5https://www.gijsvandam.nl/like/2022/10/19-4968/weekly0.5https://www.gijsvandam.nl/like/2022/11/09-31008/weekly0.5https://www.gijsvandam.nl/like/2022/12/09-5106/weekly0.5https://www.gijsvandam.nl/like/2023/02/14-60593/weekly0.5https://www.gijsvandam.nl/note/2022/02/15-27171/weekly0.5https://www.gijsvandam.nl/note/2022/02/15-29847/weekly0.5https://www.gijsvandam.nl/note/2022/02/15-30403/weekly0.5https://www.gijsvandam.nl/note/2022/02/15-32251/weekly0.5https://www.gijsvandam.nl/note/2022/02/15-32499/weekly0.5https://www.gijsvandam.nl/note/2022/02/15-33268/weekly0.5https://www.gijsvandam.nl/note/2022/02/15-34237/weekly0.5https://www.gijsvandam.nl/note/2022/02/15-35473/weekly0.5https://www.gijsvandam.nl/note/2022/02/15-44835/weekly0.5https://www.gijsvandam.nl/note/2022/02/15-47823/weekly0.5https://www.gijsvandam.nl/note/2022/02/16-3748/weekly0.5https://www.gijsvandam.nl/note/2022/02/16-3809/weekly0.5https://www.gijsvandam.nl/note/2022/02/16-3840/weekly0.5https://www.gijsvandam.nl/note/2022/02/16-4984/weekly0.5https://www.gijsvandam.nl/note/2022/02/16-5040/weekly0.5https://www.gijsvandam.nl/note/2022/02/16-5062/weekly0.5https://www.gijsvandam.nl/note/2022/02/16-6459/weekly0.5https://www.gijsvandam.nl/note/2022/02/16-7572/weekly0.5https://www.gijsvandam.nl/note/2022/02/17-17647/weekly0.5https://www.gijsvandam.nl/note/2022/02/25-5777/weekly0.5https://www.gijsvandam.nl/note/2022/03/02-30920/weekly0.5https://www.gijsvandam.nl/note/2022/03/02-5366/weekly0.5https://www.gijsvandam.nl/note/2022/03/15-8786/weekly0.5https://www.gijsvandam.nl/note/2022/03/24-25322/weekly0.5https://www.gijsvandam.nl/note/2022/04/27-9088/weekly0.5https://www.gijsvandam.nl/note/2022/06/21-7056/weekly0.5https://www.gijsvandam.nl/note/2022/08/30-11361/weekly0.5https://www.gijsvandam.nl/note/2022/10/21-26894/weekly0.5https://www.gijsvandam.nl/note/2022/11/09-1939/weekly0.5https://www.gijsvandam.nl/photo/2022/02/16-3950/weekly0.5https://www.gijsvandam.nl/photo/2022/02/16-4222/weekly0.5https://www.gijsvandam.nl/photo/2022/02/17-18628/weekly0.5https://www.gijsvandam.nl/photo/2022/02/17-29992/weekly0.5https://www.gijsvandam.nl/photo/2022/02/17-30933/weekly0.5https://www.gijsvandam.nl/photo/2022/02/17-33011/weekly0.5https://www.gijsvandam.nl/photo/2022/02/18-57744/weekly0.5https://www.gijsvandam.nl/photo/2022/02/22-49012/weekly0.5https://www.gijsvandam.nl/photo/2022/02/28-27104/weekly0.5https://www.gijsvandam.nl/photo/2022/03/29-24484/weekly0.5https://www.gijsvandam.nl/photo/2022/03/31-13008/weekly0.5https://www.gijsvandam.nl/photo/2022/04/01-6960/weekly0.5https://www.gijsvandam.nl/photo/2022/04/08-11189/weekly0.5https://www.gijsvandam.nl/photo/2022/05/17-51349/weekly0.5https://www.gijsvandam.nl/photo/2022/06/15-10659/weekly0.5https://www.gijsvandam.nl/photo/2022/09/19-11320/weekly0.5https://www.gijsvandam.nl/reply/2022/02/22-51488/weekly0.5https://www.gijsvandam.nl/reply/2022/02/23-25550/weekly0.5https://www.gijsvandam.nl/reply/2022/02/23-6487/weekly0.5https://www.gijsvandam.nl/reply/2022/03/14-3524/weekly0.5https://www.gijsvandam.nl/reply/2022/03/15-27609/weekly0.5https://www.gijsvandam.nl/reply/2022/03/18-6287/weekly0.5https://www.gijsvandam.nl/reply/2022/03/19-19572/weekly0.5https://www.gijsvandam.nl/reply/2022/03/19-20011/weekly0.5https://www.gijsvandam.nl/reply/2022/03/24-25808/weekly0.5https://www.gijsvandam.nl/reply/2022/03/29-47144/weekly0.5https://www.gijsvandam.nl/reply/2022/03/31-9522/weekly0.5https://www.gijsvandam.nl/reply/2022/04/04-4837/weekly0.5https://www.gijsvandam.nl/reply/2022/04/08-10065/weekly0.5https://www.gijsvandam.nl/reply/2022/04/08-9393/weekly0.5https://www.gijsvandam.nl/reply/2022/04/15-30405/weekly0.5https://www.gijsvandam.nl/reply/2022/04/27-10399/weekly0.5https://www.gijsvandam.nl/reply/2022/04/27-11023/weekly0.5https://www.gijsvandam.nl/reply/2022/04/27-11235/weekly0.5https://www.gijsvandam.nl/reply/2022/04/27-9426/weekly0.5https://www.gijsvandam.nl/reply/2022/04/27-9703/weekly0.5https://www.gijsvandam.nl/reply/2022/05/17-7736/weekly0.5https://www.gijsvandam.nl/reply/2022/05/17-9592/weekly0.5https://www.gijsvandam.nl/reply/2022/05/18-31162/weekly0.5https://www.gijsvandam.nl/reply/2022/05/18-6225/weekly0.5https://www.gijsvandam.nl/reply/2022/05/18-6490/weekly0.5https://www.gijsvandam.nl/reply/2022/06/16-36570/weekly0.5https://www.gijsvandam.nl/reply/2022/06/16-36787/weekly0.5https://www.gijsvandam.nl/reply/2022/06/17-32419/weekly0.5https://www.gijsvandam.nl/reply/2022/06/20-41110/weekly0.5https://www.gijsvandam.nl/reply/2022/06/22-4825/weekly0.5https://www.gijsvandam.nl/reply/2022/06/22-5125/weekly0.5https://www.gijsvandam.nl/reply/2022/06/22-5638/weekly0.5https://www.gijsvandam.nl/reply/2022/09/08-32881/weekly0.5https://www.gijsvandam.nl/reply/2022/10/19-4868/weekly0.5https://www.gijsvandam.nl/reply/2022/10/19-5621/weekly0.5https://www.gijsvandam.nl/reply/2022/10/25-35503/weekly0.5https://www.gijsvandam.nl/reply/2022/10/25-35544/weekly0.5https://www.gijsvandam.nl/reply/2022/10/28-1945/weekly0.5https://www.gijsvandam.nl/reply/2022/11/09-2109/weekly0.5https://www.gijsvandam.nl/reply/2023/02/08-31285/weekly0.5https://www.gijsvandam.nl/reply/2023/02/09-38481/weekly0.5https://www.gijsvandam.nl/reply/2023/02/09-39298/weekly0.5https://www.gijsvandam.nl/reply/2023/02/09-39685/weekly0.5https://www.gijsvandam.nl/reply/2023/02/14-50133/weekly0.5https://www.gijsvandam.nl/repost/2022/02/18-30270/weekly0.5https://www.gijsvandam.nl/repost/2022/02/18-30288/weekly0.5https://www.gijsvandam.nl/repost/2022/03/03-amazing/weekly0.5https://www.gijsvandam.nl/repost/2022/03/07-49678/weekly0.5https://www.gijsvandam.nl/repost/2022/04/01-2436/weekly0.5https://www.gijsvandam.nl/repost/2022/05/13-24864/weekly0.5https://www.gijsvandam.nl/repost/2022/05/13-45624/weekly0.5https://www.gijsvandam.nl/repost/2022/05/27-19753/weekly0.5https://www.gijsvandam.nl/repost/2022/06/09-24377/weekly0.5https://www.gijsvandam.nl/repost/2022/06/13-46841/weekly0.5https://www.gijsvandam.nl/repost/2022/06/16-3920/weekly0.5https://www.gijsvandam.nl/topics/bitcoin/weekly0.5https://www.gijsvandam.nl/topics/windows-10/weekly0.5https://www.gijsvandam.nl/topics/lnd/weekly0.5https://www.gijsvandam.nl/topics/simverse/weekly0.5https://www.gijsvandam.nl/topics/vscode/weekly0.5https://www.gijsvandam.nl/topics/cryptography/weekly0.5https://www.gijsvandam.nl/topics/lightning-network/weekly0.5https://www.gijsvandam.nl/topics/webassembly/weekly0.5https://www.gijsvandam.nl/topics/janos/weekly0.5https://www.gijsvandam.nl/topics/boilerplate-paper/weekly0.5https://www.gijsvandam.nl/topics/powershell/weekly0.5https://www.gijsvandam.nl/topics/git/weekly0.5https://www.gijsvandam.nl/topics/bash/weekly0.5https://www.gijsvandam.nl/topics/pandoc/weekly0.5https://www.gijsvandam.nl/topics/lua/weekly0.5https://www.gijsvandam.nl/topics/latex/weekly0.5https://www.gijsvandam.nl/topics/revealjs/weekly0.5https://www.gijsvandam.nl/topics/c-lightning/weekly0.5https://www.gijsvandam.nl/topics/ssh/weekly0.5https://www.gijsvandam.nl/topics/indieweb/weekly0.5https://www.gijsvandam.nl/topics/test1/weekly0.5https://www.gijsvandam.nl/topics/test2/weekly0.5https://www.gijsvandam.nl/topics/science/weekly0.5https://www.gijsvandam.nl/topics/crypto/weekly0.5
\ No newline at end of file
diff --git a/topics/bash/index.html b/topics/bash/index.html
new file mode 100644
index 00000000..d79469e3
--- /dev/null
+++ b/topics/bash/index.html
@@ -0,0 +1 @@
+Posts for bashGijs van Dam
Writing a scientific paper is hard. Doing your PhD is hard. Writing your thesis is hard. And to make me feel even more miserable I decided to measure my progress by counting the net change in words I achieve throughout each day. I am by no means a productivity guru and I don't know whether word count is a useful indicator for measuring the progress of a paper. That being said, it is a reality check to see how fast my work is progressing. So without further ado here's the Powershell command that outputs the wordcount for the last 25 days based on git commits. (For the bash command, see the bottom of this post)
\ No newline at end of file
diff --git a/topics/boilerplate-paper/index.html b/topics/boilerplate-paper/index.html
index 7b537acc..6915a9fc 100644
--- a/topics/boilerplate-paper/index.html
+++ b/topics/boilerplate-paper/index.html
@@ -1 +1 @@
-Posts for boilerplate paperGijs van Dam
Writing a scientific paper is hard. Doing your PhD is hard. Writing your thesis is hard. And to make me feel even more miserable I decided to measure my progress by counting the net change in words I achieve throughout each day. I am by no means a productivity guru and I don't know whether word count is a useful indicator for measuring the progress of a paper. That being said, it is a reality check to see how fast my work is progressing. So without further ado here's the Powershell command that outputs the wordcount for the last 25 days based on git commits.
While writing my papers I try not to get bogged down too much. So if a paragraph doens't flow right I just type TODO: rewrite on the line below it, and continue writing. When I think of something that I shouldn't forget, like an extra analysis to run I just write it down as a todo in the running text of my paper. I also write thoughts on my paper as a todo. Ideas on structure, whether I should maybe rearrange paragraphs or approach a subject differently, it all ends up as a todo in the running text.
When running the VSCode task for converting my paper to PDF (using Pandoc) it puts all the todos into the running text. That's fine by me, it helps as an extra reminder that stuff still needs to happen. But I wanted the todos to be visually different from the running text, so that it stands apart and doesn't confuse people who are reading my draft. That is where my Pandoc filter comes into play.
I found this super easy alternative way to animate your slides with reveal.js that works out of the box with Markdown and Pandoc. Here is how to do it.
Last week I had to give a progress presentation about the current state of my PhD, and I can whip those up in no time. I use Boilerplate Paper not only for writing my papers, but also for presentations like this.
I write the presentation in Markdown and then convert it to reveal.js. But sometimes you want something else than the default sliding transition that reveal.js provides.
\ No newline at end of file
+Posts for boilerplate paperGijs van Dam
Writing a scientific paper is hard. Doing your PhD is hard. Writing your thesis is hard. And to make me feel even more miserable I decided to measure my progress by counting the net change in words I achieve throughout each day. I am by no means a productivity guru and I don't know whether word count is a useful indicator for measuring the progress of a paper. That being said, it is a reality check to see how fast my work is progressing. So without further ado here's the Powershell command that outputs the wordcount for the last 25 days based on git commits. (For the bash command, see the bottom of this post)
While writing my papers I try not to get bogged down too much. So if a paragraph doens't flow right I just type TODO: rewrite on the line below it, and continue writing. When I think of something that I shouldn't forget, like an extra analysis to run I just write it down as a todo in the running text of my paper. I also write thoughts on my paper as a todo. Ideas on structure, whether I should maybe rearrange paragraphs or approach a subject differently, it all ends up as a todo in the running text.
When running the VSCode task for converting my paper to PDF (using Pandoc) it puts all the todos into the running text. That's fine by me, it helps as an extra reminder that stuff still needs to happen. But I wanted the todos to be visually different from the running text, so that it stands apart and doesn't confuse people who are reading my draft. That is where my Pandoc filter comes into play.
I found this super easy alternative way to animate your slides with reveal.js that works out of the box with Markdown and Pandoc. Here is how to do it.
Last week I had to give a progress presentation about the current state of my PhD, and I can whip those up in no time. I use Boilerplate Paper not only for writing my papers, but also for presentations like this.
I write the presentation in Markdown and then convert it to reveal.js. But sometimes you want something else than the default sliding transition that reveal.js provides.
\ No newline at end of file
diff --git a/topics/git/index.html b/topics/git/index.html
index 78ce535d..dec1af0d 100644
--- a/topics/git/index.html
+++ b/topics/git/index.html
@@ -1 +1 @@
-Posts for gitGijs van Dam
Writing a scientific paper is hard. Doing your PhD is hard. Writing your thesis is hard. And to make me feel even more miserable I decided to measure my progress by counting the net change in words I achieve throughout each day. I am by no means a productivity guru and I don't know whether word count is a useful indicator for measuring the progress of a paper. That being said, it is a reality check to see how fast my work is progressing. So without further ado here's the Powershell command that outputs the wordcount for the last 25 days based on git commits.
Writing a scientific paper is hard. Doing your PhD is hard. Writing your thesis is hard. And to make me feel even more miserable I decided to measure my progress by counting the net change in words I achieve throughout each day. I am by no means a productivity guru and I don't know whether word count is a useful indicator for measuring the progress of a paper. That being said, it is a reality check to see how fast my work is progressing. So without further ado here's the Powershell command that outputs the wordcount for the last 25 days based on git commits. (For the bash command, see the bottom of this post)
\ No newline at end of file
diff --git a/topics/powershell/index.html b/topics/powershell/index.html
index 4729359d..612c21c7 100644
--- a/topics/powershell/index.html
+++ b/topics/powershell/index.html
@@ -1 +1 @@
-Posts for powershellGijs van Dam
Writing a scientific paper is hard. Doing your PhD is hard. Writing your thesis is hard. And to make me feel even more miserable I decided to measure my progress by counting the net change in words I achieve throughout each day. I am by no means a productivity guru and I don't know whether word count is a useful indicator for measuring the progress of a paper. That being said, it is a reality check to see how fast my work is progressing. So without further ado here's the Powershell command that outputs the wordcount for the last 25 days based on git commits.
Writing a scientific paper is hard. Doing your PhD is hard. Writing your thesis is hard. And to make me feel even more miserable I decided to measure my progress by counting the net change in words I achieve throughout each day. I am by no means a productivity guru and I don't know whether word count is a useful indicator for measuring the progress of a paper. That being said, it is a reality check to see how fast my work is progressing. So without further ado here's the Powershell command that outputs the wordcount for the last 25 days based on git commits. (For the bash command, see the bottom of this post)
I like it! I can think of a few use cases. There will be a day in the near future where I am going to use it, for sure.