k0kubunのブックマーク (3,481)

  • The Saturation Effect in Fuzzing – Embedded in Academia

    k0kubun
    k0kubun 2024/10/02
  • Linuxでアップデートしたら中華フォントになった件について(修正方法) - Qiita

    与太話 巷では中国土で使われる漢字(簡体字)の字形が表示される現象を「中華フォント現象」と呼ぶらしい.最も簡体字を利用する中国語利用者にとっては「なんのこっちゃ」というこの現象名なのだが,この表示現象をひと括りの単語として認識するまで時間がかかってしまった.そして,この現象を「問題」として認識するのはおそらく日語利用者しかいないだろう. 先日,久々にOSのアップデートをしようとsudo dnf update(筆者はFedoraを利用.Ubuntuでいうsudo apt-get updateと同義)をかけて再起動したところ,ログイン画面から中華フォント現象が起きていた.もちろんOSの設定言語は「日語」であるにもかかわらず! これはめんどくさいことに多くの時間を費やすなと思いながら,早速改善策を調べる. 解決策 /etc/fonts以下の設定(etcはOSの設定ファイルが格納されているデ

    Linuxでアップデートしたら中華フォントになった件について(修正方法) - Qiita
    k0kubun
    k0kubun 2024/09/28
  • エンジニアのための時間管理術

    はじめに 時間管理が上手くなりたいと日々思っているため、このテーマにしました。 自戒の念を込めて😅 タイムマネジメントの王に!!! おれはなるっ!!!(CV.田中真弓) ※掲載内容は個人の見解であり、所属する企業を代表するものではありません。 参考にした書籍 『エンジニアのための時間管理術』 Thomas A. Limoncelli 著 株式会社クイープ 訳 発行年月日:2006年10月 ページ数:272 ISBN:978-4-87311-307-4 タイムマネジメントについての考え方や手法を取り入れたいと思い読みました。 時間管理した先のゴールは? 自分のための時間・家族との時間を最大化する。 前提 エンジニアはタイムマネジメントが難しい。 プロジェクトワークと割り込みが入り混じる職業。 外部からの割り込みは生産性を低下させる。 中断した作業に戻るには時間がかかり、エラーが紛れ込む可能

    エンジニアのための時間管理術
    k0kubun
    k0kubun 2024/09/24
  • Starleyに転職しました - Islands in the byte stream

    FastlyからStarleyに転職しました。Starleyは音声会話型おしゃべりAIアプリ「Cotomo」(コトモ)を開発している会社です。 cotomo.ai StarleyはFastlyとは打って変わってB2Cのスタートアップです。今回の転職ではせっかくなので生成AIに多少なりとも関わりたいと思っていて、Starleyはその点でがっつり生成AIを使ったサービスを開発していて、LLMの自前運用もしています。そして「生成AIで雑談」というのはおそらく技術的にはかなり難しい挑戦で、そこに「ときめき」がありました。 ところで、Fastlyはちょうど5年ほど勤めましたが、このたび大規模レイオフがあってその対象になってしまいました。レイオフの対象になった原因はおそらくこのところパフォーマンスが下がっていたせいです。去年の夏に新型コロナに掛かって以来ずっと体調が悪く*1、ついには2024年の3月か

    Starleyに転職しました - Islands in the byte stream
    k0kubun
    k0kubun 2024/09/17
  • tetoru は Ruby 3.3 + YJIT で本番運用しています - Classi開発者ブログ

    プロダクト部 tetoru 開発部の中田です。普段は giraffate という ID を使っていることが多いです。 ここでは、弊社が提供している小中学校向け保護者連絡配信サービス tetoru の利用している Ruby のバージョンを 3.2 から 3.3 にバージョンアップしたときの話を共有します。 概要 tetoru では、文章の執筆時点で Ruby 3.3.4 + YJITRails アプリケーションを動かしています。YJIT とは、Ruby が備えている Just-In-Time (JIT) コンパイラの機能で、これを有効化することで実行時に機械語が生成されアプリケーションの高速化につながります。YJIT に関する詳細についてはこちらの記事をご覧ください。 Ruby 3.2.2 + YJIT から Ruby 3.3.0 + YJIT にバージョンアップした時には多少レイ

    tetoru は Ruby 3.3 + YJIT で本番運用しています - Classi開発者ブログ
    k0kubun
    k0kubun 2024/09/06
  • 自分のパフォーマンスを最大化し続ける方法 - igsr5 のブログ

    こんにちは。個人パフォーマンスを安定させることが得意な @igsr5_ です。 最近何人かに何か工夫してることあるの?と聞かれたのでブログとして書き出してみようと思います。 はじめに 業務に慣れてくると、求められるアウトプットのレベルや量は上がっていきます。 しかし業務知識をいくら習得しても、働き方が非効率だとパフォーマンスは安定せず、上昇する期待値についていけません。 仕事の成果を増やしたり、残業を減らしてプライベート時間を充実させるためには自分のパフォーマンスを最大化し続ける必要があります。 4つの意識を持つ 自分のパフォーマンスを最大化し続けるためには、4つの意識を持ちましょう。 決して「余裕」を失わない 「よし、やるぞ!」と脳が勝手に思える習慣を持つ 仕事に「モヤモヤ」を持ちこまない 健康でなければ全ての工夫は無意味 重要なのはプロジェクトが佳境の時など、普段より忙しい時こそ4つの

    自分のパフォーマンスを最大化し続ける方法 - igsr5 のブログ
    k0kubun
    k0kubun 2024/08/07
  • さくらインターネットに就職しました - たごもりすメモ

    TL;DR さくらインターネット株式会社で8/1から働いています さくらのクラウドの一人目のプロダクト担当ということで、エンジニアリングとビジネス両面を相手に仕事をしていきます ソフトウェアエンジニア大募集中です、いっしょに働こうぜ! 経緯 Treasure Dataを辞めたのが2021年7月末*1でしたが、それから丸3年経過しましたね。早いなあ。その間はを書いたり個人サービスを作ったりしつつ、個人事業主の技術顧問として数社をお手伝いしたりしていましたが、個人的な事情がいくつか落ち着いたりしたこともあって、今年初めくらいからそろそろフルタイムで働くことを考えはじめ、多くの会社さんとのやりとりを経て、さくらインターネット株式会社への入社を決め、今月から入社し働きはじめました。 どういうポジションで何がしたいのかについては当初だいぶふらふらしていたのですが、いくらかの会話を経て「ビジネスを作

    さくらインターネットに就職しました - たごもりすメモ
    k0kubun
    k0kubun 2024/08/07
  • Ruby 3.3(+YJIT)へのアップデートによるパフォーマンス変化の計測 - メドピア開発者ブログ

    こんにちは。サーバーサイドエンジニアの @atolix_です。 今回はメドピアで番運用をしているアプリケーションの1つであるやくばと for Clinicにて、Ruby 3.2からRuby 3.3にアップデートを行った際のパフォーマンスの変化を計測しました。 Ruby 3.3ではYJITの大幅な改善が含まれているので、これによるアプリケーションへの影響を確認していきます。 www.ruby-lang.org gihyo.jp 前提 記事に記載されたデータは以下の条件で計測をしています。 Rails: 7.1.3.4 YJIT有効化時のオプションは特に付与していない状態(Dockerfileから環境変数を与えて有効化) 3.2.4(+YJIT)から3.3.1(+YJIT)へのアップデート 有効化前後の1週間を比較 パフォーマンスの変化 やくばと for Clinicではモノレポのアプリケ

    Ruby 3.3(+YJIT)へのアップデートによるパフォーマンス変化の計測 - メドピア開発者ブログ
    k0kubun
    k0kubun 2024/07/11
  • 『Rustで作るプログラミング言語』を読んで、かねてから構想していた自作言語を形にした - Islands in the byte stream

    Rustで作るプログラミング言語という書籍が先日発売されました。簡単なプログラミング言語を作ってバイトコードに変換して実行したりネイティブコードに変換して実行してみよう、というで、大変面白く読みました。最終的にまあまあ格的な言語になるので、これを元にするとわりとちゃんとした言語を作れそうです。 この書籍で最終的に作られる言語はこちら: GitHub - msakuta/ruscal: Programming language implementation learning project ちょうど私も、以前から構想していた言語があったので、ちょっと作ってみました。というのも、TypeScriptを設定記述言語としてさまざまなプログラミング言語から使えると便利ではないかとずっと思っていたのです。 この設定言語で複雑なことができる必要はなく、最終的にはJSONに準ずるデータ構造になればよい

    『Rustで作るプログラミング言語』を読んで、かねてから構想していた自作言語を形にした - Islands in the byte stream
    k0kubun
    k0kubun 2024/07/10
  • JavaScript 実行エンジン V8 の JIT 出力コードを読んでみよう

    ChromeJavaScript はとても高速なことでも有名ですが、その実行エンジンは V8 と呼ばれます。V8 自体は独立したモジュールであり、Node.js 等にも使われております。 V8 が JavaScript を高速に実行する技術の一つが JIT (Just In Time) コンパイルです(一般的に JIT と呼ばれます)。これは、そのまま実行すると遅い JavaScript を実行中にリアルタイムに直接マシンコードに変換し(これが Just In Time と呼ばれる所以です)、途中からそのコードに入れ替えて実行することで高速化を達成しています。特に何度も実行される関数で効力を発揮します。 JIT という名前は聞いたことがあろうとも、実際に JIT がどのようなコードを実行しているのかを確認する機会は滅多にないでしょう。この記事では、実際に V8 の JIT の出力を確

    k0kubun
    k0kubun 2024/06/04
  • Hacker Newsで自作のOSSを紹介したらRanking 1位になり一晩で+100 stars付いた - valid,invalid

    自作のRuby gemをHacker Newsにて紹介したところ、一晩でGitHub repositoriesに100以上のstarsが付いて驚いた。また、リアルタイムでは見逃したのだがHacker News Rankingで数時間1位におり、20時間ほどトップページに載っていたらしい。2024-05-26現在は落ち着いて195pt。 投稿はこちら Show HN: PBT – A property-based testing library for Ruby | Hacker News。 2024-05-22のdaily rankingでは11位だった。 何について投稿したのか pbtという自作のテストツールで、property based testingを並列実行するというアイデアを実証したもの。このツールについてはRubyKaigi 2024で発表したので興味があればそちらの記事もご

    Hacker Newsで自作のOSSを紹介したらRanking 1位になり一晩で+100 stars付いた - valid,invalid
    k0kubun
    k0kubun 2024/05/29
    社内のSlackにこのHacker Newsエントリが流れてて、伸びててすごいなと思ってました
  • 「博士課程に行ってみたい」という社会人の方への長い手紙。|今井悠資

    そろそろ博士課程の振り返りをしようと思って、これを機にnoteを書いてみることにしました。最初の記事としては相応しいのではないかと思って。 ※記事は2023年6月に書いたものです。文中にAIを使うことについての記述がありますが、LLMの進歩は目覚ましいものがありますので、お読みになっている時点の状況に応じて読み替えていただければと思います。なお、私はAIは適切な用法を理解して使う上では非常に有用だと考えています。 おかげさまで2023年3月に博士号を頂くことができました。謝辞にも書いたのですが、当に多くの方にお世話になってここまで来ることができました。お名前を上げだすとそれだけで稿が埋まってしまうので畏れ多くも割愛させていただきますが、改めて感謝申し上げたいと思います。 さて、何年も社会人博士を名乗ってきたせいで「私も博士課程に興味があるのですが」と相談をいただくことがたびたびありま

    「博士課程に行ってみたい」という社会人の方への長い手紙。|今井悠資
    k0kubun
    k0kubun 2024/05/18
  • Ruby might be faster than you think - John Hawthorn

    I saw a project a couple weeks back which allows writing and running Crystal methods inline inside a Ruby file. It’s a neat project, and I don’t want to take away from it but something in the README example looked off to me. require 'crystalruby' require 'benchmark' module Fibonnaci crystalize [n: :int32] => :int32 def fib_cr(n) a = 0 b = 1 n.times { a, b = b, a + b } a end module_function def fib

    k0kubun
    k0kubun 2024/04/25
  • CorvusSKKのおすすめ設定と使い方

    この記事は何? CorvusSKKはWindowsで利用可能な日語IMEであり、SKKという入力方法を採用しています。 CorvusSKKはMS-IMEやGoogleIMEといった一般的なIMEと比較して、モード切り替えを多用する設計のため少々使いにくい場合があります。 この記事では、デフォルトの設定だと少しとっつきにくいCorvusSKKを使いやすくするため筆者が行っている設定と使い方について説明します。 この記事の対象読者 CorvusSKKで日本語入力をしてみたい人 SKKを使ったことがあるが、送り仮名付きの変換やモード移動の学習コストが高く諦めたことがある人 使用しているCorvusSKKのバージョン CorvusSKK 3.2.0 はじめに SKKとは? SKKを採用した日本語入力の特徴とメリットについては以下の記事をご覧ください。 設定内容の詳細について 設定値の説明が欲しい

    CorvusSKKのおすすめ設定と使い方
    k0kubun
    k0kubun 2024/04/16
  • Ruby 3.3.0+YJIT本番運用カンパニーになりました - Timee Product Team Blog

    こんにちは。バックエンドエンジニアの須貝(@sugaishun)です。 今回はタイミーが番運用しているRailsアプリケーションに対してRuby3.3.0へのアップデートを行った(YJITは引き続き有効なまま)のでその結果をご紹介したいと思います。 昨年弊社のid:euglena1215が書いたエントリーのRuby3.3.0版です。 tech.timee.co.jp 前提 タイミーのWebアプリケーションとしての特性は基的には昨年と変わりありません。ですので、昨年の内容をそのまま引用させてもらいます。 タイミーを支えるバックエンドの Web API は多くのケースで Ruby の実行よりも DB がボトルネックの一般的な Rails アプリケーションです。JSON への serialize は active_model_serializers を利用しています。 今回の集計では API

    Ruby 3.3.0+YJIT本番運用カンパニーになりました - Timee Product Team Blog
    k0kubun
    k0kubun 2024/04/13
  • Object Structure in JavaScript Engines

    Object Structure in JavaScript EnginesFrom a developer's perspective, objects in JavaScript are quite flexible and understandable. We can add, remove, and modify object properties on our own. However, few people think about how objects are stored in memory and processed by JS engines. Can a developer's actions, directly or indirectly, impact performance and memory consumption? Let's try to delve i

    Object Structure in JavaScript Engines
    k0kubun
    k0kubun 2024/04/10
  • スタディサプリ最大のRailsアプリケーションにYJIT+pitchforkを導入してメモリ使用量を劇的に削減するまで - スタディサプリ Product Team Blog

    こんにちは。SREのkyontanです。Rubyが大好きなのでRubyの話をします。ちなみにリクルートはRubyKaigi 2024へGold Sponsorとして協賛しています! *1。ぜひ沖縄でお会いしましょう。 これはあるアプリケーションのメモリ消費量を示すグラフなのですが、まさかgemを入れ替えるだけでこんなに嬉しい変化が見られるとは思っていませんでした。今日はそんなgemの話をします。 話は遡って2023年4月のある日、インターネットを眺めていたところ、ShopifyがpitchforkというOSSを公開したという情報が目に留まりました。 調べてみると、どうやら著名なRackサーバー実装の1つであるunicornの派生版であり、メモリ使用量の削減に特化しているらしいのです。 github.com これはスタディサプリ小中高のあのリソースドカいマイクロサービス第一位である api

    スタディサプリ最大のRailsアプリケーションにYJIT+pitchforkを導入してメモリ使用量を劇的に削減するまで - スタディサプリ Product Team Blog
    k0kubun
    k0kubun 2024/04/02
  • Rails 7.1 + Ruby 3.3 で YJIT を有効化してパフォーマンス改善を行った結果

    この記事の概要 こんにちは。PharmaX でエンジニアをしている諸岡(@hakoten)です。 この記事では、薬局DX事業部のバックエンドで採用しているRuby on Railsのアプリケーションについて、Rubyバージョンを3.3にアップグレードし、YJITを有効化した結果、どのようにパフォーマンスが向上したかをご紹介します。 現在のRuby on Railsのバージョンは、「7.1.3」になります。 YJITについての簡単な説明 YJITとは、CRuby内部に組み込まれた軽量のJIT機能で、遅延コード生成を行い、必要なメソッドを部分的にコンパイルすることで高速化を図る仕組みです。 (処理系は詳しくないため、ざっくりになってしまいすみません。。) Ruby 3系列の主要な機能の一つであり、3.1で導入され、3.2で正式にサポートされ、3.3においてさらに安定化が行われています。 詳しい

    Rails 7.1 + Ruby 3.3 で YJIT を有効化してパフォーマンス改善を行った結果
    k0kubun
    k0kubun 2024/03/23
  • MAC .DS_Storeファイルを作らない設定

    MACからWindows共有ファイル(ファイルサーバ)などにアクセスすると作成されてしまう .DS_Store ファイル サーバとかにあると邪魔になる可能性が高いので下記設定で作成されないようにする。 ※上記で適用されるのは新規アクセスから、既存の.DS_Store ファイルを削除するにはツールなどを使って削除しなければならない。 【作成手順】 Terminal起動 defaults write com.apple.desktopservices DSDontWriteNetworkStores true と入力して再起動

    MAC .DS_Storeファイルを作らない設定
    k0kubun
    k0kubun 2024/03/21
  • Ruby 3.3でのアップデートも要チェック!まちのコインでYJITを有効化したはなし - KAYAC Engineers' Blog

    SREチームの長田です。 今回はRubyのJITコンパイラであるYJITのはなしです。 カヤックが開発・運用している地域通貨サービス「まちのコイン」は、Ruby on Railsを使用しています。 このまちのコインにてYJITを有効化し、その結果どのような影響があったのかを紹介します。 coin.machino.co YJITとは YJITRubyのJITコンパイラです。 Ruby 3.1までは実験的な機能という位置づけでしたが、 Ruby 3.2から実用段階となりました。 Basic Block Versioning (BBV)を採用した遅延コンパイルにより、コード実行の高速化を図っているようです。 YJITそのものの話題については、今回は割愛させていただきます。 まちのコインの状況 まちのコインでは昨年6月末頃に Ruby 3.1.x から Ruby 3.2.x にアップデートを行

    Ruby 3.3でのアップデートも要チェック!まちのコインでYJITを有効化したはなし - KAYAC Engineers' Blog
    k0kubun
    k0kubun 2024/03/14