Skip to content

Commit

Permalink
[create-pull-request] automated change (ocaml#1206)
Browse files Browse the repository at this point in the history
Co-authored-by: cuihtlauac <cuihtlauac@users.noreply.github.com>
  • Loading branch information
github-actions[bot] and cuihtlauac committed May 23, 2023
1 parent d19f782 commit 4ecaee7
Show file tree
Hide file tree
Showing 24 changed files with 291 additions and 18 deletions.
46 changes: 32 additions & 14 deletions asset/feed.xml

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion data/planet/ahrefs.xml

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion data/planet/hannes.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom"><id>https://hannes.robur.coop/atom</id><title type="text">hannes</title><updated>2023-05-22T05:45:10-00:00</updated><entry><link href="https://hannes.robur.coop/Posts/Albatross" rel="alternate"/><contributor><uri>https://hannes.robur.coop/atom</uri><name>hannes</name></contributor><content type="html">&lt;p&gt;EDIT (2023-05-16): Updated with albatross release version 2.0.0.&lt;/p&gt;
<feed xmlns="http://www.w3.org/2005/Atom"><id>https://hannes.robur.coop/atom</id><title type="text">hannes</title><updated>2023-05-23T05:45:28-00:00</updated><entry><link href="https://hannes.robur.coop/Posts/Albatross" rel="alternate"/><contributor><uri>https://hannes.robur.coop/atom</uri><name>hannes</name></contributor><content type="html">&lt;p&gt;EDIT (2023-05-16): Updated with albatross release version 2.0.0.&lt;/p&gt;
&lt;h2&gt;Deploying MirageOS unikernels&lt;/h2&gt;
&lt;p&gt;More than five years ago, I posted &lt;a href=&quot;https://hannes.robur.coop/Posts/VMM&quot;&gt;how to deploy MirageOS unikernels&lt;/a&gt;. My motivation to work on this topic is that I'm convinced of reduced complexity, improved security, and more sustainable resource footprint of MirageOS unikernels, and want to ease deployment thereof. More than one year ago, I described &lt;a href=&quot;https://hannes.robur.coop/Posts/Deploy&quot;&gt;how to deploy reproducible unikernels&lt;/a&gt;.&lt;/p&gt;
&lt;h2&gt;Albatross&lt;/h2&gt;
Expand Down
2 changes: 1 addition & 1 deletion data/planet/janestreet.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom"><id>https://blog.janestreet.com/feed.xml</id><title type="text">janestreet</title><updated>2023-05-22T05:45:10-00:00</updated><entry><link href="https://blog.janestreet.com/building-reproducible-python-environments-with-xars/" rel="alternate"/><contributor><uri>https://blog.janestreet.com/feed.xml</uri><name>janestreet</name></contributor><content type="html">&lt;p&gt;Our traders and researchers love Python for its agility and for its huge
<feed xmlns="http://www.w3.org/2005/Atom"><id>https://blog.janestreet.com/feed.xml</id><title type="text">janestreet</title><updated>2023-05-23T05:45:28-00:00</updated><entry><link href="https://blog.janestreet.com/building-reproducible-python-environments-with-xars/" rel="alternate"/><contributor><uri>https://blog.janestreet.com/feed.xml</uri><name>janestreet</name></contributor><content type="html">&lt;p&gt;Our traders and researchers love Python for its agility and for its huge
open-source ecosystem, especially when it comes to machine learning. But
the heavy use of notebooks can make it difficult to support. Notebooks
have a very different lifecycle than regular code, and aren&amp;rsquo;t always
Expand Down
20 changes: 20 additions & 0 deletions data/planet/signalsandthreads.xml

Large diffs are not rendered by default.

@@ -0,0 +1,14 @@
---
title: An inside look at Jane Street's tech internship with Jeanne Van Briesen, Matt
Else, and Grace Zhang
description:
url: https://signalsandthreads.com
date: 2020-11-06T17:00:00-00:00
preview_image: https://signalsandthreads.com/static/images/twitter/signals_threads.png
featured:
authors:
- signalsandthreads
---

<p>In this week's episode, the season 1 finale, Ron speaks with Jeanne, Matt, and Grace, three former tech interns at Jane Street who have returned as full-timers. They talk about the experience of being an intern at Jane Street, the types of projects that interns work on, and how they've found the transition to full-time work.</p><p>You can find the transcript for this episode along with links to things we discussed on our <a href="https://signalsandthreads.com/multicast-and-the-markets">website</a>.</p>

13 changes: 13 additions & 0 deletions data/planet/signalsandthreads/build-systems-with-andrey-mokhov.md
@@ -0,0 +1,13 @@
---
title: Build systems with Andrey Mokhov
description:
url: https://signalsandthreads.com/build-systems/
date: 2020-09-16T15:55:47-00:00
preview_image: https://signalsandthreads.com/static/images/twitter/build_systems.png
featured:
authors:
- signalsandthreads
---

<p>Most software engineers only think about their build system when it breaks; and yet, this often unloved piece of software forms the backbone of every serious project. This week, Ron has a conversation with Andrey Mokhov about build systems, from the venerable Make to Bazel and beyond. Andrey has a lot of experience in this field, including significant contributions to <a href="https://gitlab.haskell.org/ghc/ghc/-/wikis/building/hadrian">the replacement</a> for the Glasgow Haskell Compiler&rsquo;s Make-based system and <a href="https://www.cambridge.org/core/journals/journal-of-functional-programming/article/build-systems-a-la-carte-theory-and-practice/097CE52C750E69BD16B78C318754C7A4">Build Systems &agrave; la carte</a>, a paper that untangles the complex ecosystem of existing build systems. Ron and Andrey muse on questions like why every language community seems to have its own purpose-built system and, closer to home, where Andrey and the rest of the build systems team at Jane Street are focusing their efforts.</p><p>You can find the transcript for this episode along with links to related work on our <a href="https://signalsandthreads.com/build-systems">website</a>.</p>

@@ -0,0 +1,13 @@
---
title: Building a functional email server with Dominick LoBraico
description:
url: https://signalsandthreads.com
date: 2020-10-28T16:00:00-00:00
preview_image: https://signalsandthreads.com/static/images/twitter/signals_threads.png
featured:
authors:
- signalsandthreads
---

<p>Despite a steady trickle of newcomers, email still reigns supreme as the chief communication mechanism for the Information Age. At Jane Street, it&rsquo;s just as critical as anywhere, but there&rsquo;s one difference: the system at the heart of our email infrastructure is homegrown. This week, Ron talks to Dominick LoBraico, an engineer working on Jane Street&rsquo;s technology infrastructure, about how and why we built Mailcore, an email server written and configured in OCaml. They delve into questions around how best to represent the configuration of a complex system, when you should build your own and when you shouldn&rsquo;t, and the benefits of bringing a code-focused approach to solving systems problems.</p><p>You can find the transcript for this episode along with links to things we discussed on our <a href="https://signalsandthreads.com/multicast-and-the-markets">website</a>.</p>

@@ -0,0 +1,13 @@
---
title: Building a UI Framework with Ty Overby
description:
url: https://feeds.simplecast.com/signalsandthreads.com
date: 2021-10-06T16:00:00-00:00
preview_image:
featured:
authors:
- signalsandthreads
---

<p>Ty Overby is a programmer in Jane Street&rsquo;s web platform group where he works on Bonsai, our OCaml library for building interactive browser-based UI. In this episode, Ty and Ron consider the functional approach to building user interfaces. They also discuss Ty&rsquo;s programming roots in Neopets, what development features they crave on the web, the unfairly maligned CSS, and why Excel is &ldquo;arguably the greatest programming language ever developed.&rdquo;</p><p>You can find the transcript for this episode &nbsp;on our <a href="https://signalsandthreads.com/building-a-ui-framework" target="_blank">website</a>.</p><p>Some links to topics that came up in the discussion:</p><ul><li>Jane Street&rsquo;s <a href="https://opensource.janestreet.com/bonsai/">Bonsai</a> library</li><li>The 3D design system <a href="https://openscad.org/">OpenSCAD</a></li><li>Matt Keeter&rsquo;s <a href="https://libfive.com/">libfive</a> design tools</li><li><a href="http://try.dot.net/">Try .NET</a> in-browser repl</li><li>Jane Street&rsquo;s <a href="https://opensource.janestreet.com/incr_dom/">Incr_dom</a> library</li><li>The <a href="https://guide.elm-lang.org/architecture/">Elm Architecture</a> &ldquo;pattern for architecting interactive programs&rdquo;</li><li><a href="https://reactjs.org/">React</a> JavaScript library</li><li>The <a href="https://houdini.glitch.me/">Houdini</a> proposal</li><li><a href="https://svelte.dev/">Svelte</a> UI toolkit</li></ul>

@@ -0,0 +1,13 @@
---
title: Clock synchronization with Chris Perl
description:
url: https://signalsandthreads.com/clock-synchronization/
date: 2020-10-14T16:00:00-00:00
preview_image: https://signalsandthreads.com/static/images/twitter/clock_synchronization.png
featured:
authors:
- signalsandthreads
---

<p>Clock synchronization, keeping all of the clocks on your network set to the &ldquo;correct&rdquo; time, sounds straightforward: our smartphones sure don&rsquo;t seem to have trouble with it. Next, keep them all accurate to within 100 microseconds, and prove that you did -- now things start to get tricky. In this episode, Ron talks with Chris Perl, a systems engineer at Jane Street about the fundamental difficulty of solving this problem at scale and how we solved it.</p><p>You can find the transcript for this episode along with links to things we discussed on our <a href="https://signalsandthreads.com/multicast-and-the-markets">website</a>.</p>

@@ -0,0 +1,13 @@
---
title: Compiler optimization with Greta Yorsh
description:
url: https://signalsandthreads.com/compiler-optimization/
date: 2020-09-30T16:00:00-00:00
preview_image: https://signalsandthreads.com/static/images/twitter/compiler_optimization.png
featured:
authors:
- signalsandthreads
---

<p>It&rsquo;s a software engineer&rsquo;s dream: A compiler that can take idiomatic high-level code and output maximally efficient instructions. Ron&rsquo;s guest this week is Greta Yorsh, who has worked on just that problem in a career spanning both industry and academia. Ron and Greta talk about some&nbsp; of the tricks that compilers use to make our software faster, ranging from feedback-directed optimization and super-optimization to formal analysis.</p><p>You can find the transcript for this episode along with links to things we discussed on our <a href="https://signalsandthreads.com/multicast-and-the-markets">website</a>.</p>

13 changes: 13 additions & 0 deletions data/planet/signalsandthreads/introducing-signals--threads.md
@@ -0,0 +1,13 @@
---
title: Introducing Signals & Threads
description:
url: https://feeds.simplecast.com/signalsandthreads.com
date: 2020-08-24T01:25:54-00:00
preview_image:
featured:
authors:
- signalsandthreads
---

<p>Listen in on Jane Street&rsquo;s Ron Minsky as he has conversations with engineers working on everything from clock synchronization to reliable multicast, build systems to reconfigurable hardware. Get a peek at how Jane Street approaches problems, and how those ideas relate to tech more broadly.</p>

13 changes: 13 additions & 0 deletions data/planet/signalsandthreads/language-design-with-leo-white.md
@@ -0,0 +1,13 @@
---
title: Language design with Leo White
description:
url: https://signalsandthreads.com/language-design/
date: 2020-10-21T16:00:00-00:00
preview_image: https://signalsandthreads.com/static/images/twitter/language_design.png
featured:
authors:
- signalsandthreads
---

<p>Equal parts science and art, programming language design is very much an unsolved problem. This week, Ron speaks with Leo White, from Jane Street's Tools &amp; Compilers team, about cutting-edge language features, future work happening on OCaml, and Jane Street's relationship with the broader open-source community. The conversation covers everything from the paradox of language popularity, to advanced type system features like modular implicits and dependent types. Listen in, no programming languages PhD required!</p><p>You can find the transcript for this episode along with links to things we discussed on our <a href="https://signalsandthreads.com/multicast-and-the-markets">website</a>.</p>

@@ -0,0 +1,13 @@
---
title: Memory Management with Stephen Dolan
description:
url: https://feeds.simplecast.com/signalsandthreads.com
date: 2022-01-05T17:30:00-00:00
preview_image:
featured:
authors:
- signalsandthreads
---

<p>Stephen Dolan works on Jane Street&rsquo;s Tools and Compilers team where he focuses on the OCaml compiler. In this episode, Stephen and Ron take a trip down memory lane, discussing how to manage computer memory efficiently and safely. They consider trade-offs between reference counting and garbage collection, the surprising gains achieved by prefetching, and how new language features like local allocation and unboxed types could give OCaml users more control over their memory.</p><p>You can find the transcript for this episode &nbsp;on our <a href="https://signalsandthreads.com/memory-management" target="_blank">website</a>.</p><p>Some links to topics that came up in the discussion:</p><ul><li>Stephen&rsquo;s command-line JSON processor, <a href="https://github.com/stedolan/jq">jq</a></li><li>Stephen&rsquo;s Cambridge dissertation, <a href="https://www.cs.tufts.edu/~nr/cs257/archive/stephen-dolan/thesis.pdf">&ldquo;Algebraic Subtyping&rdquo;</a>, and a <a href="https://github.com/stedolan/mlsub">protoype implementation of mlsub</a>, a language based on those ideas.</li><li>A <a href="https://blog.janestreet.com/memory-allocator-showdown/">post from Stephen</a> on how to benchmark different memory allocators.</li><li>A Jane Street tech talk on <a href="https://www.janestreet.com/tech-talks/unboxed-types-for-ocaml/">&ldquo;Unboxed Types for OCaml&rdquo;</a>, and an <a href="https://github.com/ocaml/RFCs/blob/881b220adc1f358ab15f7743d5cd764222ab7d30/rfcs/unboxed-types.md">RFC</a> in the OCaml RFC repo.</li><li>A paper from Stephen and <a href="https://kcsrk.info/">KC Sivaramakrishnan</a> called <a href="https://kcsrk.info/papers/pldi18-memory.pdf">&ldquo;Bounding Data Races in Space and Time&rdquo;</a>, which is all about a new and better memory model for Multicore OCaml.</li><li>Another <a href="https://arxiv.org/pdf/2004.11663.pdf">paper</a> describing the design of OCaml&rsquo;s multicore GC.</li><li>The Rust RFC for <a href="https://rust-lang.github.io/rfcs/0387-higher-ranked-trait-bounds.html">Higher-ranked trait bounds</a>.</li></ul>

13 changes: 13 additions & 0 deletions data/planet/signalsandthreads/more-signals--threads-coming-soon.md
@@ -0,0 +1,13 @@
---
title: More Signals & Threads coming soon!
description:
url: https://feeds.simplecast.com/signalsandthreads.com
date: 2021-08-24T13:36:17-00:00
preview_image:
featured:
authors:
- signalsandthreads
---

<p>Signals &amp; Threads is back, and we have a fun season of topics lined up, including: Building better abstractions for design and user interfaces, the role of writing in a technical organization, the approach that different languages take to memory management...and more. We hope you&rsquo;ll join us. The first episode drops September 1st.</p>

@@ -0,0 +1,13 @@
---
title: Multicast and the markets with Brian Nigito
description:
url: https://signalsandthreads.com/multicast-and-the-markets/
date: 2020-09-23T16:00:09-00:00
preview_image: https://signalsandthreads.com/static/images/twitter/multicast_markets.png
featured:
authors:
- signalsandthreads
---

<p>Electronic exchanges like Nasdaq need to handle a staggering number of transactions every second. To keep up, they rely on two deceptively simple-sounding concepts: single-threaded programs and multicast networking. In this episode, Ron speaks with Brian Nigito, a 20-year industry veteran who helped build some of the earliest electronic exchanges, about the tradeoffs that led to the architecture we have today, and how modern exchanges use these straightforward building blocks to achieve blindingly fast performance at scale.</p><p>You can find the transcript for this episode along with links to things we discussed on our <a href="https://signalsandthreads.com/multicast-and-the-markets">website</a>.</p>

@@ -0,0 +1,13 @@
---
title: Programmable hardware with Andy Ray
description:
url: https://signalsandthreads.com/programmable-hardware/
date: 2020-09-09T15:17:14-00:00
preview_image: https://signalsandthreads.com/static/images/twitter/programmable_hardware.png
featured:
authors:
- signalsandthreads
---

<p>The ever-widening availability of FPGAs has opened the door to solving a broad set of performance-critical problems in hardware.&nbsp; In this episode, Ron speaks with Andy Ray, who leads Jane Street&rsquo;s hardware design team. Andy has a long career prior to Jane Street shipping hardware designs for things like modems and video codecs. That work led him to create <a href="https://github.com/janestreet/hardcaml">Hardcaml</a>, a domain-specific language for expressing hardware designs. Ron and Andy talk about the current state-of-the-art in hardware tooling, the economics of FPGAs, and how the process of designing hardware can be improved by applying lessons from software engineering.</p><p>You can find the transcript for this episode along with links to related work on our <a href="https://signalsandthreads.com/programmable-hardware/">website</a>.</p>

@@ -0,0 +1,13 @@
---
title: Python, OCaml, and Machine Learning with Laurent Mazare
description:
url: https://signalsandthreads.com/python-ocaml-and-machine-learning/
date: 2020-10-07T16:00:00-00:00
preview_image: https://signalsandthreads.com/static/images/twitter/python_ocaml.png
featured:
authors:
- signalsandthreads
---

<p>A conversation with Laurent Mazare about how your choice of programming language interacts with the kind of work you do, and in particular about the tradeoffs between Python and OCaml when doing machine learning and data analysis. Ron and Laurent discuss the tradeoffs between working in a text editor and a Jupyter Notebook, the importance of visualization and interactivity, how tools and practices vary between language ecosystems, and how language features like borrow-checking in Rust and ref-counting in Swift and Python can make machine learning easier.</p><p>You can find the transcript for this episode along with links to things we discussed on our <a href="https://signalsandthreads.com/multicast-and-the-markets">website</a>.</p>

@@ -0,0 +1,13 @@
---
title: State Machine Replication, and Why You Should Care with Doug Patti
description:
url: https://feeds.simplecast.com/signalsandthreads.com
date: 2022-04-20T16:00:00-00:00
preview_image:
featured:
authors:
- signalsandthreads
---

<p>Doug Patti is a developer in Jane Street&rsquo;s Client-Facing Tech team, where he works on a system called Concord that undergirds Jane Street&rsquo;s client offerings. In this episode, Doug and Ron discuss how Concord, which has state-machine replication as its core abstraction, helps Jane Street achieve the reliability, scalability, and speed that the client business demands. They&rsquo;ll also discuss Doug&rsquo;s involvement in building a successor system called Aria, which is designed to deliver those same benefits to a much wider audience.</p><p>You can find the transcript for this episode &nbsp;on our <a href="https://signalsandthreads.com/state-machine-replication-and-why-you-should-care" target="_blank">website</a>.</p><p>Some links to topics that came up in the discussion:</p><ul><li>Jane Street&rsquo;s <a href="https://www.janestreet.com/institutional-services/electronic-trading-platforms/">client-facing trading platforms</a></li><li>A Signals and Threads episode on <a href="https://signalsandthreads.com/multicast-and-the-markets/">market data and multicast</a> which discusses some of the history of state-machine replication in the markets.</li><li>The <a href="https://www.investopedia.com/terms/f/financial-information-exchange.asp">FIX protocol</a></li><li><a href="https://en.wikipedia.org/wiki/Multicast">UDP multicast</a></li><li><a href="https://en.wikipedia.org/wiki/Reliable_multicast#:~:text=A%20reliable%20multicast%20is%20any,as%20multi-receiver%20file%20transfer.">Reliable multicast</a></li><li><a href="https://kafka.apache.org/intro">Kafka</a></li></ul>

0 comments on commit 4ecaee7

Please sign in to comment.