<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Gyubong</title>
    <description>The latest articles on DEV Community by Gyubong (@jopemachine).</description>
    <link>https://dev.to/jopemachine</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F670770%2Fb7d48f1a-d87d-41b3-b222-d38b4dc0cf9d.jpeg</url>
      <title>DEV Community: Gyubong</title>
      <link>https://dev.to/jopemachine</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/jopemachine"/>
    <language>en</language>
    <item>
      <title>rraft-py: Unofficial Python Binding of the tikv/raft-rs</title>
      <dc:creator>Gyubong</dc:creator>
      <pubDate>Sun, 21 May 2023 15:56:51 +0000</pubDate>
      <link>https://dev.to/jopemachine/rraft-py-unofficial-python-binding-of-the-tikvraft-rs-4f04</link>
      <guid>https://dev.to/jopemachine/rraft-py-unofficial-python-binding-of-the-tikvraft-rs-4f04</guid>
      <description>&lt;p&gt;Hello, I am a developer working as a DevOps engineer at a small IT startup in Korea.&lt;br&gt;
I should've use raft implementation for my company's proprietary orchestrator.&lt;/p&gt;

&lt;p&gt;Our company product is developed in Python, but there doesn't seem to be "de facto" standard when it comes to raft, at least to my knowledge.&lt;/p&gt;

&lt;p&gt;So, I decided to search for papers on raft implementation. But these papers exceeded 250 pages, and I found it overwhelming to comprehend and implement all the knowledge therein. (From previous experience, I know that once the complexity of the source code reaches a certain threshold, maintaining it becomes quite a challenge, especially while managing full-time work.)&lt;/p&gt;

&lt;p&gt;Hence, I resolved to write Python bindings for a well-established, battle-tested raft library. I initially considered writing bindings for Hashicorp's Raft implementation, but handling asynchronous things seems was tricky. Upon the advice of a senior developer, I turned to pyo3 to create bindings for 'tikv/raft-rs'.&lt;/p&gt;

&lt;p&gt;The process of writing bindings was more challenging than I had anticipated.&lt;/p&gt;

&lt;p&gt;Anyway after much struggle, I succeeded in implementing bindings that pass all the harness test codes.&lt;/p&gt;

&lt;p&gt;However, having written all the source codes, I can't help but question whether I should have opted for a different implementation such as async-raft or Hashicorp's raft implementation. I also wonder if it would have been more prudent to port the source codes itself, rather than writing bindings. Numerous thoughts have been running through my mind.&lt;/p&gt;

&lt;p&gt;What are your thoughts on this Python binding implementation?&lt;/p&gt;

</description>
      <category>distributedsystems</category>
      <category>raft</category>
      <category>python</category>
      <category>rust</category>
    </item>
    <item>
      <title>Arvis: cross-platform launcher compatible with alfred-workflow</title>
      <dc:creator>Gyubong</dc:creator>
      <pubDate>Tue, 03 Aug 2021 05:21:48 +0000</pubDate>
      <link>https://dev.to/jopemachine/arvis-cross-platform-launcher-compatible-with-alfred-workflow-14lb</link>
      <guid>https://dev.to/jopemachine/arvis-cross-platform-launcher-compatible-with-alfred-workflow-14lb</guid>
      <description>&lt;p&gt;Have you ever felt like trying to use some useful Alfred's workflows in Windows or Ubuntu?&lt;/p&gt;

&lt;p&gt;At least, I often had felt like that I wanna use make and use workflows in other OS.&lt;/p&gt;

&lt;p&gt;When I made some Alfred workflows, I felt that some workflows might be used enough in other OS with a little code change.&lt;/p&gt;

&lt;p&gt;So I started to making Arvis.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/jopemachine/arvis"&gt;https://github.com/jopemachine/arvis&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Arvis works in cross-platform.&lt;/p&gt;

&lt;p&gt;It is built with Electron, react, iohook, robotjs.. and other awesome libs.&lt;/p&gt;

&lt;p&gt;Arvis is a project I'm working on by myself and the quality is not that high compared to Alfred.&lt;/p&gt;

&lt;p&gt;(still, lots of unexpected bugs should be fixed)&lt;/p&gt;

&lt;p&gt;You must be disappointed if you expect Alfred's awesome features to current Arvis&lt;/p&gt;

&lt;p&gt;But I'm keeping on fixing bugs, thinking of interesting ideas.&lt;/p&gt;

&lt;p&gt;If you're interested, I'd appreciate leaving me any kind of feedback.&lt;/p&gt;

&lt;p&gt;Overview homepage:&lt;br&gt;
&lt;a href="https://jopemachine.github.io/arvis.com/"&gt;https://jopemachine.github.io/arvis.com/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Related links:&lt;br&gt;
&lt;a href="https://github.com/jopemachine/arvis/blob/master/documents/basic-usage.md"&gt;https://github.com/jopemachine/arvis/blob/master/documents/basic-usage.md&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/jopemachine/arvis/blob/master/documents/workflow-links.md"&gt;https://github.com/jopemachine/arvis/blob/master/documents/workflow-links.md&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/jopemachine/arvish"&gt;https://github.com/jopemachine/arvish&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/jopemachine/arvis/blob/master/documents/plugin-links.md"&gt;https://github.com/jopemachine/arvis/blob/master/documents/plugin-links.md&lt;/a&gt;&lt;/p&gt;

</description>
      <category>react</category>
      <category>electronapp</category>
      <category>productivity</category>
      <category>typescript</category>
    </item>
  </channel>
</rss>
