{"@attributes":{"version":"2.0"},"channel":{"title":"Sophie Bosio","link":"https:\/\/sophiebos.io\/","description":"Recent content on Sophie Bosio","generator":"Hugo -- 0.150.0","language":"en","lastBuildDate":"Tue, 23 Sep 2025 23:57:00 +0200","item":[{"title":"Interactive Development: Pair Programming and the REPL","link":"https:\/\/sophiebos.io\/posts\/pair-programming-and-the-repl\/","pubDate":"Tue, 23 Sep 2025 23:57:00 +0200","guid":"https:\/\/sophiebos.io\/posts\/pair-programming-and-the-repl\/","description":"<p>There is no best way to learn programming, but if I were going to pick a favourite, I&rsquo;d probably choose pair programming.<\/p>\n<p>In my team at work, we do a fair bit of it. Pairing is different with every partner, so it&rsquo;s difficult to define it or really talk about specifics, and I&rsquo;ve had a hard time formulating what I like about it so much.<\/p>\n<p>After thinking about it for a while, I realised that it might be the interactivity of it.<\/p>"},{"title":"Setting Up Emacs LSP-Mode For Clojure","link":"https:\/\/sophiebos.io\/posts\/lsp-mode-for-clojure\/","pubDate":"Tue, 17 Sep 2024 22:42:00 +0200","guid":"https:\/\/sophiebos.io\/posts\/lsp-mode-for-clojure\/","description":"<p>I use <a href=\"https:\/\/clojure.org\/\">Clojure<\/a> on the backend <a href=\"https:\/\/www.ardoq.com\/\">where I work<\/a>. I think it&rsquo;s really fun, especially in combination with Emacs, since Emacs is built with Emacs Lisp and Clojure is a Lisp dialect. So many of Emacs&rsquo; default keybindings started clicking for me once I started working with a language in the same tradition, editing structurally and by semantic units rather than line-by-line or character-by-character. I&rsquo;m not alone in loving both and there&rsquo;s clearly a lot of overlap between the two communities, which is evident from the number of Clojure packages for Emacs.<\/p>"},{"title":"Building Your First Emacs Config","link":"https:\/\/sophiebos.io\/posts\/first-emacs-config\/","pubDate":"Thu, 21 Dec 2023 23:29:00 +0100","guid":"https:\/\/sophiebos.io\/posts\/first-emacs-config\/","description":"<p><a href=\"https:\/\/www.gnu.org\/software\/emacs\/\">Emacs<\/a> is a wonderful piece of software. It&rsquo;s easily my favourite program of all\ntime. It can also be a little overwhelming to configure for the first time.<\/p>\n<p>One of the many things that make Emacs great, though, is its dedicated and\nhelpful user base. I hope to add a small contribution to that community with\nthis post, going over what I would have told my past self as I was just starting\nout using Emacs and trying to write my first Emacs configuration file.<\/p>"},{"title":"Prettifying Emacs Org Mode","link":"https:\/\/sophiebos.io\/posts\/prettifying-emacs-org-mode\/","pubDate":"Thu, 10 Aug 2023 22:19:00 +0200","guid":"https:\/\/sophiebos.io\/posts\/prettifying-emacs-org-mode\/","description":"<p>In my opinion, the power of Emacs is that you&rsquo;re able to program your own\nworking environment. Other editors may be just as, or possibly more, efficient\nto use, but I haven&rsquo;t come across any that give you control over as many aspects\nof your editor as Emacs does. Customising and tweaking your configuration may be an\nendless endeavour, but it&rsquo;s also a highly rewarding one.<\/p>\n<p>All that being said, I was inspired to tweak the look of my Org Mode setup,\nespecially after reading the blog post\n<a href=\"https:\/\/zzamboni.org\/post\/beautifying-org-mode-in-emacs\/\">Beautifying\nOrg Mode in Emacs<\/a>. Below you can find screenshots and code. I\nhope there&rsquo;s something in here that you might want to steal for your own config!\nIn case I change these settings later, my most recently updated config is always\navailable on my <a href=\"https:\/\/github.com\/SophieBosio\/.emacs.d\">GitHub<\/a>.<\/p>"},{"title":"About","link":"https:\/\/sophiebos.io\/about\/","pubDate":"Thu, 08 Jun 2023 17:43:00 +0200","guid":"https:\/\/sophiebos.io\/about\/","description":"<p>I&rsquo;m Sophie! I was born in Oslo in 1999, and after some moving back and forth\nfor my studies, I&rsquo;m back in my home city.<\/p>\n<p>I&rsquo;m very interested in programming, coffee, natural languages, and music.<\/p>\n<p>Currently, I&rsquo;m working as a software engineer at <a href=\"https:\/\/www.ardoq.com\/\">Ardoq<\/a>.<\/p>\n<p>I recently graduated with an MSc from the University of Oslo, where I wrote my thesis on <a href=\"https:\/\/medium.com\/criteo-engineering\/introduction-to-property-based-testing-f5236229d237\">property-based\ntesting<\/a>. I designed and implemented a small functional language called <a href=\"https:\/\/github.com\/SophieBosio\/contra\">Contra<\/a>, which has native support for defining properties and a built-in property-checker. It&rsquo;s capable of automatically generating counterexamples, even for user-defined algebraic data types, using SMT solving.<\/p>"},{"title":"Education","link":"https:\/\/sophiebos.io\/education\/","pubDate":"Thu, 08 Jun 2023 14:48:00 +0200","guid":"https:\/\/sophiebos.io\/education\/","description":"<h2 id=\"msc\">MSc<\/h2>\n<p>I have a master&rsquo;s degree in <a href=\"https:\/\/www.uio.no\/studier\/program\/informatikk-programmering-master\/\">Programming and System Architecture<\/a> from the <a href=\"https:\/\/www.uio.no\/\">University of Oslo<\/a>, Norway, with a specialisation in software. \ud83c\udf31<\/p>\n<p>My thesis project and thesis text are available on <a href=\"https:\/\/github.com\/SophieBosio\/contra\">GitHub<\/a>.<\/p>\n<p>The courses I have taken at UiO are briefly summarised below.<\/p>\n<details>\n<summary>Courses in Programming and System Architecture at UiO (in order of attendance)<\/summary>\n<div class=\"details\">\n<ul>\n<li><a href=\"https:\/\/www.uio.no\/studier\/emner\/matnat\/ifi\/IN5130\/index-eng.html\">IN5130<\/a> - Modelling Unassailable IT-Systems<\/li>\n<li><a href=\"https:\/\/www.uio.no\/studier\/emner\/matnat\/ifi\/IN5170\/index-eng.html\">IN5170<\/a> - Models of Concurrency<\/li>\n<li><a href=\"https:\/\/www.uio.no\/studier\/emner\/matnat\/its\/TEK5510\/index-eng.html\">TEK5510<\/a> - Security in Operating Systems and Software<\/li>\n<li><a href=\"https:\/\/www.uio.no\/studier\/emner\/matnat\/ifi\/IN5570\/index-eng.html\">IN5570<\/a> - Distributed Objects<\/li>\n<li><a href=\"https:\/\/www.uio.no\/studier\/emner\/matnat\/ifi\/IN5580\/\">IN5580<\/a> - Computability Theory<\/li>\n<li><a href=\"https:\/\/www.uio.no\/studier\/emner\/matnat\/ifi\/INF5110\/\">INF5110<\/a> - Compiler Construction<\/li>\n<li>Special Curriculum - Advanced Functional Programming, Semantics, and Types<\/li>\n<\/ul>\n<\/div>\n<\/details>\n<h2 id=\"bsc\">BSc<\/h2>\n<p>I have a bachelor&rsquo;s degree in <a href=\"https:\/\/www.uib.no\/en\/studies\/BASV-KOGNI\">Cognitive Science<\/a> from the <a href=\"https:\/\/www.uib.no\/\">University of Bergen<\/a>, Norway.<\/p>"},{"title":"Static Site Generation with Hugo","link":"https:\/\/sophiebos.io\/posts\/hugo\/","pubDate":"Thu, 08 Jun 2023 12:18:00 +0200","guid":"https:\/\/sophiebos.io\/posts\/hugo\/","description":"<p>This website is built with <a href=\"https:\/\/gohugo.io\/\">Hugo<\/a> and <a href=\"https:\/\/ox-hugo.scripter.co\/\"><code>ox-hugo<\/code><\/a>, an exporting engine that lets me\nwrite my posts in <a href=\"https:\/\/orgmode.org\/\">Org mode<\/a> and then put it online easily.<\/p>\n<p>Org mode is a really clever and powerful plain text format that works great for note\ntaking, text editing, and TODO lists\/agendas. Moreover, there are a lot of\nconvenient features for us Emacs users when using <code>ox-hugo<\/code> to write our blogs\n(besides staying in the comfort of a well-known format and editing flow).<\/p>"}]}}