<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="/feed.rss.xml" type="text/xsl" media="screen"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:media="http://search.yahoo.com/mrss/" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Caio Salgado</title>
    <description></description>
    <link>https://speakerdeck.com/caiocs</link>
    <atom:link rel="self" type="application/rss+xml" href="https://speakerdeck.com/caiocs.rss"/>
    <lastBuildDate>2019-12-02 21:32:47 -0500</lastBuildDate>
    <item>
      <title>Olá Ractors</title>
      <description>Apresentarei os modelos de programação concorrente que o Ruby possui, tanto o MRI, quanto JRuby e TruffleRuby. Vantagens, desvantagens e diferenças; tudo com exemplos de código, para depois mostrar os Ractors. Ractor é uma nova abstração para concorrência que o Ruby 3 vai trazer. Pretendo, a partir de exemplos, mostrar como funcionam e como possibilitam rodar código Ruby em paralelo de maneira simples, e trocando dados entre cada thread.</description>
      <media:content url="https://files.speakerdeck.com/presentations/0a32f92bd98d47c3a2cebf9551425596/preview_slide_0.jpg?16852801" type="image/jpeg" medium="image"/>
      <content:encoded>Apresentarei os modelos de programação concorrente que o Ruby possui, tanto o MRI, quanto JRuby e TruffleRuby. Vantagens, desvantagens e diferenças; tudo com exemplos de código, para depois mostrar os Ractors. Ractor é uma nova abstração para concorrência que o Ruby 3 vai trazer. Pretendo, a partir de exemplos, mostrar como funcionam e como possibilitam rodar código Ruby em paralelo de maneira simples, e trocando dados entre cada thread.</content:encoded>
      <pubDate>Sat, 05 Dec 2020 00:00:00 -0500</pubDate>
      <link>https://speakerdeck.com/caiocs/ola-ractors</link>
      <guid>https://speakerdeck.com/caiocs/ola-ractors</guid>
    </item>
    <item>
      <title>Além do Limite! Usando toda a potência da sua CPU</title>
      <description>Multithread, concorrência, paralelismo... Podemos ir muito além na performance da nossa aplicação, aproveitando o máximo da infra que temos disponível. No ruby, todas as implementações tem a capacidade de produzir códigos concorrentes, mas cada uma possue suas limitações e vantagens. Desde o Global Interpreter Lock (GIL) até estruturas de dados naturalmente thread safe. Nessa talk, vamos descobrir como usar essas ferramentas e que a própria linguagem nos disponibiliza, no mri, jruby e truffleruby.</description>
      <media:content url="https://files.speakerdeck.com/presentations/a21a32087a79440d9b694085af8c2142/preview_slide_0.jpg?14352838" type="image/jpeg" medium="image"/>
      <content:encoded>Multithread, concorrência, paralelismo... Podemos ir muito além na performance da nossa aplicação, aproveitando o máximo da infra que temos disponível. No ruby, todas as implementações tem a capacidade de produzir códigos concorrentes, mas cada uma possue suas limitações e vantagens. Desde o Global Interpreter Lock (GIL) até estruturas de dados naturalmente thread safe. Nessa talk, vamos descobrir como usar essas ferramentas e que a própria linguagem nos disponibiliza, no mri, jruby e truffleruby.</content:encoded>
      <pubDate>Thu, 28 Nov 2019 00:00:00 -0500</pubDate>
      <link>https://speakerdeck.com/caiocs/alem-do-limite-usando-toda-a-potencia-da-sua-cpu</link>
      <guid>https://speakerdeck.com/caiocs/alem-do-limite-usando-toda-a-potencia-da-sua-cpu</guid>
    </item>
  </channel>
</rss>
