エムスリーテックブログ

エムスリー(m3)のエンジニア・開発メンバーによる技術ブログです

quine の検索結果:

Goでgo fmtしたくないコードを書いた(Go版Quine)

…dev そう、これはQuine(クワイン)と呼ばれる「自分自身のソースコードを出力するプログラム」です。しかも、ソースコード自体がm3のロゴの形をしています。 Quineとは Go言語でQuineを作るときの罠 evalがない 区切りをうまく調整する必要がある Quineを作成する Base64エンコードして埋め込む戦略を実行するプログラムを作成する Base64エンコードするためのジェネレータを作る base64エンコードされた文字列に任意の文字列を追加する 終わりに We…

引数でアスキーアートが変化するSwift Quineの仕組みをフローチャートで解説

…藤原です。 皆さんはQuine(クワイン)をご存知でしょうか。 Quineとは、「自身のソースコードと完全に同じ文字列を出力するプログラム」のことです。 今回紹介するのは、引数でアスキーアートの形が変わるSwift製Quineです。一見難解なコードの裏にあるロジックを、フローチャートを使って紐解いていきます。 Swift Quine:M3のすがた 変身する実行結果:M3Tのすがたへ 隠されたメッセージ:「M3T」とは? データの解剖:「テンプレート」と「設計図」の秘密 1. …

OCamlでQuineを作った

…初挑戦した話、そしてQuineを作った話を書いていきます。 基盤チームとOCaml Quineを作った OCaml Quine解説 ディレクティブ OCaml eval アスキーアートへの整形 おわりに We are hiring !! エンジニア採用ページはこちら カジュアル面談もお気軽にどうぞ インターンも常時募集しています 基盤チームとOCaml 改めまして、基盤チームのチームリーダーの河合(@vaaaaanquish)です。 10月より、インフラ話とお酒が好きな@yo…

エムスリー、実はアプリの会社です

…す。 Kotlin Quine クリアファイル Swift Quineクリアファイル解説 Kotlin Quineクリアファイル解説 Dart Quineクリアファイル解説 iOSDCトークン iOSDC Japan 2025にはiOSDCトークンを探す「iOSDCチャレンジ」という企画があります。エムスリーから提供する3つのトークンのうち、1つはこちらの記事のQuineコードを実行すると得られます。 2つ目のトークンは #we're_app_developers です。 最…

DartでQuineをダーッと書きました

…最近、社内で各言語のQuineを作成するブームが起きています。この流れに乗って、私もDartでQuineを作成してみましたので、本記事でその仕組みを解説します。 エムスリーは2025年9月10日(水)から12日(金)に開催されるDroidKaigi 2025にゴールドスポンサー、また2025年11月13日(木)に開催のFlutter Kaigi 2025にはシルバースポンサーとして協賛します。 イベントでは、今回作成したQuineをデザインしたクリアファイルをノベルティとして…

エムスリーがKotlin Loverに贈るノベルティ、Kotlin Quineクリアファイルを作りました

…い。 Kotlin Quine クリアファイル 本記事はクリアファイルに記載されているコードの解説記事となります。 はじめに Kotlin コード Quineクリアファイル Kotlin Quine コードの動作原理 前提 前半部分のコード 後半部分のコード 最後に We are hiring!! Kotlin コード 早速ですがソースコード全体は次のようになります。お手元の実行環境やKotlin Playground等で実行してみてください。 typealias S=Str…

エムスリーは「iOSDC Japan 2025」にゴールドスポンサーとして協賛 & ブース出展します

…す。 「Swift Quineクリアファイル」を配布します! 今年のiOSDCでは、エムスリー特製のSwift Quineクリアファイルを配布します。 このクリアファイルはノベルティボックスにも入っているほか、エムスリーのブースでも直接お配りします。ノベルティボックスでゲットできなかった方も、ぜひブースにお越しください。 クリアファイルに書かれているのは、以下のコードです。 import Foundation;typealias S=String;var w={($1+d($…

MIRU2025にシルバースポンサーとして参加してきました!

…U2024で作成したQuineクリアファイルをノベルティとしてお配りしました。 作成秘話も公開されていますので興味がある方はそちらもぜひご覧ください! Quineクリアファイル www.m3tech.blog また、3日目の夜には毎年恒例のバンケットも開かれ、さまざまなバックグラウンドをもつ参加者同士が交流する場として大変な盛り上がりを見せていました。 豪華なバンケット会場。学会会場近くのホテルで行われた まとめ 今回はスポンサーとして参加させていただいたMIRU2025の様…

エムスリーが技術書典18で新刊を出します!

…1章 Scala でQuine を作ろうと思ったら異世界で勇者になっていた件について 第2章 「結婚式スマイル集める君」で自分の結婚式をエンジニアリングする 第3章 はじめてのdocker build(の内部構造とGo による再実装) 第4章 Bluetooth Low Energy デバイスと機械学習で猫を追いかける 第5章 ビンゴ超えゲームを作る 第6章 Generics 導入後のGo 第7章 SQL でグラフ問題を解く 第8章 ギザギザが中心でピッタリ噛み合うふしぎなタ…

SQLでQuine書いたから見て見て

このテックブログを「quine」で検索していただくとわかるんですが、エムスリーのエンジニアはわりとQuine好きです。Quine(クワイン)とは、文字列を打ち出すだけのプログラムであってその打ち出した文字列というのが自身のコードそのものになっているようなもののことです。 Perl, Python, Rubyなど、手続き型言語で書かれることの多いQuineなのですが、日頃業務でSQLを扱うことの多い私は思うわけです。SQLだって文字列を出力できる言語だぞ、Quine書けるんじゃ…

エムスリー初代CPOに山崎が就任、4代目CTOに大垣が就任しました

はじめに 皆様こんにちは。4月といえば『四月は君の嘘』。心のままにエンジニアリングを楽しんで行きたいエムスリーVPoEの河合(@vaaaaanquish)です。 この度2025年4月1日より、エムスリーエンジニアリンググループで長らくCTOを努めた山崎(@yamamuteking)が、大垣(@Hi_king)にCTOを引き継ぎ新CTOとなります。 そしてCTOを退任した山崎は、CPOに就任する運びとなりました。 CPO&CTO&VPoEでやっていき! 本記事は、少しばかりの裏…

機械学習エンジニアやデータサイエンティストにもウケるノベルティが作りたい

…の推しコンテンツが『Quineクリアファイル』です。 Quineと呼ばれる、実行すると実際に動作するコードが返ってくるコードをベースに、M3ロゴを表現したノベルティです。 かなり人気のノベルティで、多くの方から「ギークな心意気が伝わる!」「◯◯言語も作って!」と絶賛の声を頂いています。 www.m3tech.blog なんと、謎の力で動くgifバージョンも以下記事内にあったりします。 www.m3tech.blog もらった書類やチラシ等も挟んで使えますし、コードが書いてある…

関西と九州でエンジニアが働けるサテライトオフィスができました

…りのあるエンジニア Quine(クワイン)と呼ばれる、出力が元のソースコードと同じになるようにソースコードを書く、ギークカルチャーを体現した記事です。 しかもこの記事で作られたQuineは、出力が変化して動きます。 一体その情熱はどこから来るんでしょう…。 www.m3tech.blog 成果にこだわりのあるエンジニア 比較的新しいメンバーによる、転職後に成果を出すナレッジに関する記事です。 エンジニアとしての考え方から、細かなTipsまで、実際に成果が出ている走り方が書かれ…

入社 4 ヶ月の私が初見コードでも開発のスタートダッシュを切る技術

…る「エムスリー福岡 Quine を作りました!」でした! www.m3tech.blog Quine という概念をこの会社に入社してから知ったのですが、なかなかギークな遊びだなと感じています。 ぜひ読んで見てください! さて、実は中途入社して 4 ヶ月、先日初めての評価フィードバックがありました。 内心ドキドキしていましたが、自分でも前々から得意だと思っていた「初見のコードベースでも素早く目的の変更を行える」という点を実感してもらえている旨のフィードバックを頂くことが出来まし…

エムスリー福岡Quineを作りました!

…エムスリールーレットQuine Quineとは 整形Quine クロスクワイン 実際にクロスクワインを作ってみよう まずは普通のQuineを作る(赤パート) セイウチ演算子を使う 圧縮したアスキーアートを展開 (青パート) アスキーアートの遷移状態を保持し、実行のたびに遷移させる(ピンクパート) 整形して出力する( 橙パート) 空白や改行を処理する(紫パート、緑パート) まとめ We are hiring !! エンジニア採用ページはこちら カジュアル面談もお気軽にどうぞ イ…

AI・機械学習チーム夏開発合宿@越後湯沢に行ってきました

…れた「Python Quine」です。 www.m3tech.blog 作業中に「Pythonでスペースを使わずにXXXXXしたいんですけど、どういう案がありえますかね?」みたいな、明らかに不穏な高度な議論がされていたので、何事かと思ったのですが、これは最近社内で勢力を伸ばしつつある難読プログラミング部の活動でした。 "M3"というアスキーアートを 生成するQuine 2つ目は、「AIチームプロダクト名かるた」です。 AIチームにはすでに100程度のプロダクトがあり、どれがど…

第27回 画像の認識・理解シンポジウム(MIRU2024)にシルバースポンサーとして参加します!

…、こちらでご紹介したQuineクリアファイルをノベルティとしてプレゼント予定です! 先着順ですので、お求めの方はお早めにブースにお越しください! Quineクリアファイル 今回展示予定のポスター この記事では、MIRU2024の企業展示に先立って、ひと足先にポスターで展示予定の弊社の研究内容をご紹介できればと思います。 MIRU2024とは エムスリーでの臨床画像分野の研究取り組み 臨床画像分野での応用ってどんなもの? エムスリーでの研究事例 研究1:胸部X線からの薬剤性間質…

ニューラルネットのレコメンドをメモ化して高速にする

こんにちは、AI・機械学習チーム(AIチーム)の農見(@rookzeno)です。最近作ったニューラルネットのレコメンドが遅くて困ってました。その時ふと推論してるデータを見ると、これ同じユーザーとアイテムが多発してるなと気づいたので、メモ化をして高速化しました。メモ化して高速化は基礎の基礎ですが、ニューラルネットでやってるのはあまり見ないかなと思ったので、今回はそのやり方について記載します。 DALL-Eでサムネを作成 この記事はエムスリーAI・機械学習チームで2週間連続で行わ…

エムスリーが難読プログラミングオタクに送るノベルティ、Python Quineクリアファイルの作り方

…す。 本稿では以下のQuineの作り方について解説していきます。ただし、難読プログラミングが好きな人はまずは解説を読まずに自力で読んでみてください! exec('''m=lambda_x:exec("".join(x.split()).replace("~",chr(32)),globals())'''.replace("_",chr(32))); m("""import~base64~as~b6;import~zlib;tr=lambda~x,y,z:~(y~if~x~el…

Rubyistも読めない? 超難読Rubyコードの読み方

…がら文字列を表示するQuine*1 (mame) 日本語でコードがどのように動作するのかを説明し、しかもその日本語がコメントではなく動作に必要なコードの一部であるQuine (yhara) 68文字で作られたテストフレームワーク(colin) 3Dのクリスマスツリーをアスキーアートで描写して回転させながら雪を降らせる(tompng) などなど 全ての投稿作はGithubで公開されているのでぜひ実行してみてください。 https://github.com/tric/trick2…