<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>Francesco&#39;s blog</title>
		<link>https://blog.francescorocca.me/</link>
		<description>Recent content on Francesco&#39;s blog</description>
		<generator>Hugo</generator>
		<language>en-us</language>
		
		
		
		
			<lastBuildDate>Tue, 09 Jun 2026 00:00:00 +0000</lastBuildDate>
		
			<atom:link href="https://blog.francescorocca.me/index.xml" rel="self" type="application/rss+xml" />
			<item>
				<title>Writing a Telegram echo bot in C</title>
				<link>https://blog.francescorocca.me/posts/telegram-bot-c/</link>
				<pubDate>Tue, 09 Jun 2026 00:00:00 +0000</pubDate>
				<guid>https://blog.francescorocca.me/posts/telegram-bot-c/</guid>
				<description>&lt;p&gt;&lt;img src=&#34;https://images.unsplash.com/photo-1678993437662-d6acc3bf4d5d?q=80&amp;amp;w=1332&amp;amp;auto=format&amp;amp;fit=crop&amp;amp;ixlib=rb-4.1.0&amp;amp;ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Photo by &lt;a href=&#34;https://unsplash.com/@ilgmyzin&#34;&gt;@ilgmyzin&lt;/a&gt; from Unsplash.com&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;My main programming language is C (even though I&amp;rsquo;d like to write more Go these days). I&amp;rsquo;ve been working with it for years, and since I use Telegram daily, I figured: why not write a bot in C? I know there&amp;rsquo;s already &lt;a href=&#34;https://github.com/smartnode/telebot&#34;&gt;telebot&lt;/a&gt;, but I wanted to learn something new.&lt;/p&gt;&#xA;&lt;p&gt;In this post, we&amp;rsquo;re going to build a simple echo bot, it replies with whatever you send it. We&amp;rsquo;ll use &lt;code&gt;libcurl&lt;/code&gt; for HTTP and &lt;code&gt;yyjson&lt;/code&gt; for parsing the responses.&lt;/p&gt;</description>
			</item>
			<item>
				<title>How to setup soju (the IRC bouncer)</title>
				<link>https://blog.francescorocca.me/posts/soju-bouncer/</link>
				<pubDate>Sun, 07 Jun 2026 00:00:00 +0000</pubDate>
				<guid>https://blog.francescorocca.me/posts/soju-bouncer/</guid>
				<description>&lt;p&gt;&lt;img src=&#34;https://images.pexels.com/photos/17269117/pexels-photo-17269117.jpeg&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Photo by &lt;a href=&#34;https://www.pexels.com/photo/vintage-computer-on-wooden-desk-17269117/&#34;&gt;Ansel Lee from Pexels&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Recently I got back to IRC (&lt;em&gt;Internet Relay Chat&lt;/em&gt;). Actually, I&amp;rsquo;ve never really been on that side of the internet, so I didn&amp;rsquo;t get back, I&amp;rsquo;m just exploring a new world.&lt;/p&gt;&#xA;&lt;p&gt;The first thing I noticed is that it&amp;rsquo;s full of experienced people with incredible knowledge. They know everything and, most importantly, they&amp;rsquo;re so friendly. Even if you don&amp;rsquo;t know something, they are there to help you (if you want to be helped). However, since there&amp;rsquo;s no centralized server, when I close my laptop or quit the application I don&amp;rsquo;t receive any messages from others.&lt;/p&gt;</description>
			</item>
			<item>
				<title>How to integrate Vcpkg with Meson Build system (Modern way)</title>
				<link>https://blog.francescorocca.me/posts/vcpkg-meson/</link>
				<pubDate>Wed, 29 Apr 2026 00:00:00 +0000</pubDate>
				<guid>https://blog.francescorocca.me/posts/vcpkg-meson/</guid>
				<description>&lt;p&gt;&lt;img src=&#34;https://images.pexels.com/photos/10194141/pexels-photo-10194141.jpeg&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Photo by &lt;a href=&#34;https://www.pexels.com/photo/cubes-3d-render-digital-art-10194141/&#34;&gt;Steve A Johnson from Pexels&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Well, I already published a way to make Meson work with vcpkg and today I have a newer way to do the same.&lt;/p&gt;&#xA;&lt;p&gt;I was writing a simple SFTP client and I needed the libssh library. Here is the modern way to set it up:&lt;/p&gt;&#xA;&lt;h2 id=&#34;prerequisites&#34;&gt;Prerequisites&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Install &lt;a href=&#34;https://vcpkg.io/en/&#34;&gt;vcpkg&lt;/a&gt; as usual&lt;/li&gt;&#xA;&lt;li&gt;Install Visual Studio, Desktop C++ to make it works&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;step-by-step-guide&#34;&gt;Step-by-Step Guide&lt;/h2&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;&lt;strong&gt;Install dependencies:&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;&#xA;&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;$ vcpkg install libssh pkgconf&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;p&gt;&lt;em&gt;Note: Remember to install &lt;code&gt;pkgconf&lt;/code&gt;; Meson needs it to find where the libraries are.&lt;/em&gt;&lt;/p&gt;</description>
			</item>
			<item>
				<title>About Me</title>
				<link>https://blog.francescorocca.me/about/</link>
				<pubDate>Mon, 02 Feb 2026 00:00:00 +0000</pubDate>
				<guid>https://blog.francescorocca.me/about/</guid>
				<description>&lt;p&gt;Welcome to my personal blog. This is where I dump my random thoughts, code snippets that (actually) compile, and logs of my ongoing project journeys.&lt;/p&gt;&#xA;&lt;h2 id=&#34;who-am-i&#34;&gt;Who am I?&lt;/h2&gt;&#xA;&lt;p&gt;I am a &lt;strong&gt;Computer Engineering&lt;/strong&gt; student at &lt;strong&gt;Politecnico di Torino&lt;/strong&gt; and a Linux user, even if I happen to be writing this from a Windows machine right now. I primarily develop in C, Go and I’m passionate about information security.&lt;/p&gt;&#xA;&lt;p&gt;I’ve always liked low-level systems, which is why I joined the software task force at &lt;a href=&#34;https://semitov.com&#34;&gt;semitov&lt;/a&gt;. There, we design open-source RISC-V cores, PCBs, and custom software toolchains.&lt;/p&gt;</description>
			</item>
			<item>
				<title>How to integrate Vcpkg with Meson Build system</title>
				<link>https://blog.francescorocca.me/posts/vcpkg-meson-native-file/</link>
				<pubDate>Wed, 14 May 2025 00:00:00 +0000</pubDate>
				<guid>https://blog.francescorocca.me/posts/vcpkg-meson-native-file/</guid>
				<description>&lt;p&gt;&lt;img src=&#34;https://images.unsplash.com/photo-1639762681485-074b7f938ba0?q=80&amp;amp;w=1332&amp;amp;auto=format&amp;amp;fit=crop&amp;amp;ixlib=rb-4.1.0&amp;amp;ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Photo by &lt;a href=&#34;https://unsplash.com/@theshubhamdhage&#34;&gt;@theshubhamdhage&lt;/a&gt; from Unsplash.com&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;The worst part about developing on Windows is developing on Windows. Okay, jokes aside, life is generally easier on Linux.&lt;/p&gt;&#xA;&lt;p&gt;On Linux, package management is typically handled by the OS. You just download the library with the &lt;code&gt;-devel&lt;/code&gt; suffix, and in &lt;code&gt;meson.build&lt;/code&gt;, you add the &lt;code&gt;dependency()&lt;/code&gt; function to link it to your program.&lt;/p&gt;&#xA;&lt;p&gt;On Windows, however, you often find yourself hunting for sketchy installers, manually wiring up &lt;code&gt;INCLUDE&lt;/code&gt; and &lt;code&gt;LIB&lt;/code&gt; paths, or dealing with the dreaded &amp;ldquo;DLL hell&amp;rdquo;.&lt;/p&gt;</description>
			</item>
	</channel>
</rss>
