• GitHub · Felix Geisendörfer पर वर्तमान लाइन खोलें

    प्रकाशित: 8 अगस्त 2013 अद्यतन: फ़्यूजिटिव विम प्लगइन उसी सुविधा का समर्थन करता है :Gbrowse – करने के लिए धन्यवाद @CrypticSwarm टिप के लिए! अपने काम के प्रवाह को स्वचालित करने की मेरी कभी न खत्म होने वाली खोज में, मैं हाल ही में एक छोटी सी विम ट्रिक लेकर आया हूं जिसे मैं साझा…

  • 用 Go 編寫的 Parrot AR 無人機 2.0​​ 固件 Felix Geisendörfer

    GoDrone – 用 Go 編寫的 Parrot AR 無人機 2.0​​ 固件 · Felix Geisendörfer 發表: 2013 年 12 月 25 日 大家聖誕快樂(或者牛頓聖誕,如果你願意的話)。 今天,我很高興發布我最喜歡的副項目 GoDrone 的第一個版本。 GoDrone 是 Parrot AR Drone 2.0 的免費軟件替代固件。是的,這有望使其成為 Go 垃圾收集器的第一個機器人可視化工具:)。 此時,固件已經足夠好,可以飛行並提供基本的姿態穩定(使用簡單的互補濾波器+PID控制器),所以我真的很想從任何喜歡冒險的AR無人機所有者那裡得到反饋。我為 OSX/Linux/Windows 提供二進制安裝程序: http://www.godrone.io/en/latest/index.html 但您也可以選擇從源安裝。 根據最初的反饋,我很樂意將 GoDrone 變成官方固件的可行替代品,並為機器人軟件的開髮帶來一些新鮮空氣。我特別想展示的是,網絡技術在為機器人提供用戶界面的成本和用戶體驗方面可以與本地移動/桌面應用程序相媲美,而且我還想推廣使用高級語言在 Linux 驅動的機器人中進行固件開發的想法。 如果您有興趣,請確保加入郵件列表/在 IRC 中打個招呼: http://www.godrone.io/en/latest/user/community_support.html ——菲利克斯·蓋森多夫 通過 RSS 或電子郵件訂閱此博客,或者通過以下方式獲取我的小更新 嘰嘰喳喳。 請啟用 JavaScript 以查看…

  • 在 Go 中使用 TCP keepalive · Felix Geisendörfer

    发表: 2014 年 8 月 26 日 如果您曾经编写过一些 TCP 套接字代码,您可能会想:“如果拔掉网线或远程计算机崩溃,我的连接会发生什么情况?”。 简短的回答是:什么也没有。连接的远端将无法发送 FIN 数据包,本地操作系统也不会检测到连接丢失。因此,由您作为开发人员来解决这种情况。 在 Go 中,您可以使用多种方法来帮助解决此问题。也许第一个要考虑的是 SetReadDeadline net.Conn 接口的方法。假设您的连接预计会定期接收数据,您可以简单地将超时读取视为相当于 io.EOF 错误和 Close 连接。许多现有的 TCP 协议通过定义某种心跳机制来支持这种错误处理方式,该机制要求每个端点定期发送 PING/PONG 探测,以便检测网络问题以及服务运行状况1。此外,此类心跳还可以帮助处理寻找网络活动以确定连接健康状况的代理服务器。 因此,如果您的协议支持心跳,或者您有能力将心跳添加到自己的协议中,那么这应该是解决未插入网线场景的首选。 但是,如果您无法控制协议并且不支持心跳,会发生什么情况? 现在是时候了解 TCP keepalive 以及如何在 Go 中使用它了。 TCP keepalive 在 RFC 1122 中定义,并不是 TCP 规范本身的一部分。可以为单个连接启用它,但默认情况下必须关闭。启用它将导致网络堆栈在默认持续时间(必须不少于两个小时)后探测空闲连接的运行状况。探测数据包将不包含任何数据2,并且未能回复单个探测不能被解释为死连接,因为单个探测数据包没有可靠地传输。 Go 允许您使用以下命令启用 TCP keepalive net.TCPConn的 SetKeepAlive。在 OSX 和 Linux 上,这将导致在连接空闲 2 小时后以…

  • Opérations PostgreSQL que vous ne pouvez pas EXPLIQUER · Felix Geisendörfer

    Publié : 23 mai 2017 Je m’intéresse actuellement aux composants internes de PostgreSQL pendant mon temps libre, notamment en essayant de comprendre le planificateur et l’exécuteur de requêtes. C’est une expérience profondément humiliante, mais je suis parfois ravi de pouvoir répondre à des questions simples sur lesquelles je fais des recherches. L’une de ces questions est…

  • تنفيذ أجهزة الحالة في PostgreSQL · Felix Geisendörfer

    تم النشر: 27 يوليو 2017 تعد آلة الحالة المحدودة (FSM) نموذجًا رائعًا للحساب وله العديد من التطبيقات العملية. أحد الأشياء المفضلة لدي هو تحويل منطق الأعمال إلى ولايات ميكرونيزيا الموحدة البسيطة. على سبيل المثال، ضع في اعتبارك المتطلبات التالية لنظام إدارة الطلبات: يجب ألا يتم شحن الطلبات قبل أن يتم دفعها. يمكن إلغاء الطلبات، ولكن…

  • Go এর জন্য CSV বয়লারপ্লেট · Felix Geisendörfer

    প্রকাশিত: সেপ্টেম্বর 27, 2020 tl; dr: Go-তে CSV ফাইল পড়ার এবং লেখার জন্য এখানে আমার বয়লারপ্লেট। আমি আশা করি আপনি এটি দরকারী পাবেন. প্রতি একবারে, আমাকে Go-তে CSV ফাইলগুলি পড়তে এবং/বা লিখতে হবে। তত্ত্বে এটা সহজ। একজনকে শুধুমাত্র স্ট্যান্ডার্ড লাইব্রেরি থেকে এনকোডিং/সিএসভি অন্তর্ভুক্ত করতে হবে এবং একটি গো স্ট্রাকট এবং CSV রেকর্ডগুলির মধ্যে ম্যাপ করতে…

  • День 1-1 · Феликс Гайзендорфер

    Опубликовано: 1 декабря 2021 г. Настало время гиков, так что пришло время Адвента Кода 2021. Моей темой в прошлом году было изучение ржавчины, но в этом году я решил сосредоточиться на профилировании Go. Идея состоит в том, чтобы закодировать простые решения и использовать инструменты профилирования Go для их оптимизации. Несколько человек в твиттере были заинтересованы…

  • Pergi Tanpa Cabang · Felix Geisendörfer

    Diterbitkan: 3 Desember 2021 Sepertinya postingan saya sebelumnya berhasil dan banyak dari Anda telah mengirimkan solusi Anda sendiri melalui twitter. Sebelum saya melanjutkan untuk memilih hari lain sebagai tantangan, saya ingin melakukan sedikit tindak lanjut untuk hari 1-1. Solusi Valentin Deleplace Mari kita mulai dengan melihat kemenangannya larutan dari Valentin Deleplace yang mencapai hasil spektakuler…

  • بین مشین ریٹرو اسپیکٹیو ، حصہ 5

    آئیے “ہیلو ورلڈ” مثال پر ایک اور نظر ڈالیں اور اس کے بارے میں زیادہ احتیاط سے سوچیں کہ اصل میں کیا ہو رہا ہے: @random_variable def fairness():   return Beta(2,2) @random_variable def flip(n): return Bernoulli(fairness()) heads = tensor(1) tails = tensor(0) observations = { flip(0) : heads, … flip(9): tails } queries = (…

  • Bohnenmaschinen-Retrospektive, Teil 6

    Frohes neues Jahr euch allen! Das letzte Mal habe ich kurz die Grundstrategie des Beanstalk-Compilers beschrieben: Transformieren Sie den Quellcodejeder abgefragten oder beobachteten Funktion (und transitiv ihrer aufgerufenen Funktionen) in ein äquivalentes Programm, dasteilweise wertet ausdas Modell,Akkumulieren eines Diagrammswie es geht. In diesem Beitrag werde ich den ersten Schritt der Transformation durchgehen. Die Idee der…

  • 鳥の名前 その1

    Bean Machine の回顧展の次の部分を理解するには、少し余談をする必要があります。私がブログを書き続けてきた約 20 年間を振り返ってみると、組み合わせ論理に対する自分の評価についてほんの少ししか言及していないことに驚きました。次の数回のエピソードでは、それを私に紹介した素晴らしい本に基づいて簡単に紹介します。 アラバマ物語をあざけるには、故レイモンド・スマリヤン著。 数羽の鳥、おそらく有限または無限の数の鳥がいる森を想像してください。これらは珍しい鳥です。森の鳥の種名を森の鳥に呼ぶと、森の鳥が呼び返します。同じかもしれないし、違うかもしれないが、あなたが鳥の名前を言うと、鳥はあなたにその鳥の名前を返します。森の中にアカショウビンの枢機卿がいるかもしれません。オオアオサギを呼ぶと、カワセミが呼び戻します。 (写真は私によるものです。クリックすると高解像度が表示されます。) 「電話しました」と記します。 Q に P そして返事が来た R” として PQ = R。それで声をかけたら S に R そして R と答えた T、それを次のように表記します PQS = RS = T。わかりやすい方法で括弧を使用します。 PQS = (PQ)S そしてこれは違うかもしれません P(QS)。後者は「電話しました」 S に Q、そして電話しました Qさんの返答 P「。特定の鳥の名前を表すには大文字を使用し、変数を表すには小文字を使用します。 ここで検討している質問は次のとおりです。 どのような状況下で、鳥はあなたが呼んだのと同じ名前を呼び返すでしょうか? つまり、特定の鳥に対して、 y、どのような状況で行われるか yx = x? スマリヤンは、この関係を持つ鳥を「愛情」と呼んでいます。y が好きです ×」ということは、 yx = x。もし y が好きです…