タグ

sugyanのブックマーク (7,970)

  • 最近またLinux用の日本語IMEを作っている - tokuhirom's blog

    最近またLinux用の日語IMEを作っている 件は mozc の ut がどうこうとかは関係なくて、ふと linux desktop を使おうと昨年末に思いまして、昨年末からちまちまやってます https://github.com/tokuhirom/akaza かな漢字変換って作るの難しいのかなぁ、と思ったので作ってみている。これはまさに Just for Fun でやっている。 わりと普通に自分で常用してる分には困らないかな、というところまできている。 以下は、思ってることの垂れ流しという感じで、まとまってないですが。 「日本語入力を支える技術」というが 2018年に出ていて、このの内容を読めば、だいたいエンジン部分は実装できる。Amazon のレビューではこのよんでも実装できないって書いてあるけど、変換エンジン自体は実装できます。 UI が辛い。けど。 エンジンは、ビタビア

    sugyan
    sugyan 2023/01/16
    知見なくて全然わからないけど、何だか楽しそう
  • Rustで標準ライブラリのHashMapの代わりにhashbrownを使う - LegalOn Technologies Engineering Blog

    こんにちは。株式会社LegalOn Technologies でエンジニアをしている赤部です。 自然言語処理をしていると、単語の出現回数を数えたり、単語と何らかのデータを紐付けたりすることが頻繁に必要になります。これらのことを簡単に行える、最も一般的でよく知られたデータ構造はハッシュマップではないでしょうか? プログラミング言語 Rust では、標準ライブラリの std::collections::HashMap を用いればハッシュマップを簡単に導入できます。しかし、場合によっては標準ライブラリの HashMap ではなく hashbrown クレートを利用したほうが、シンプルに効率的なコードを実装できるかもしれません。 この記事では、まず hashbrown クレートを紹介し、コード例とともに hashbrown クレートの使いどころを紹介します。 hashbrown クレート Rust

    Rustで標準ライブラリのHashMapの代わりにhashbrownを使う - LegalOn Technologies Engineering Blog
  • JavaScript で CPU が Intel かどうかを判定する(ついでに JIT を検知する)

    先日、次のような Tweet を見かけました TIL I discovered that TensorFlow.js uses an interesting trick to sniff your CPU architecture in WebAssembly. pic.twitter.com/LVyywIM48I — Robert Knight (@robknight_) January 4, 2023 面白かったので、なぜこうなるのかの解説と、ついでにこのテクニックを使った JIT 検知方法などについて紹介します。 JavaScript における低レイヤーの扱い JavaScript においては、挙動が比較的しっかりと仕様に定められているために、環境による振る舞いの違いはあまり発生しません。しかし、低レイヤーに降りるほど振る舞いは実装依存になり、環境差が発生する余地が出てきます。 一番

    sugyan
    sugyan 2023/01/11
    NaNというニッチな…
  • 技術的なアウトプットに疲弊したので振り返る - Diary of a Perpetual Student

    2022年は技術的なエントリをそれなりの数書いてきた。特に12月は計10のエントリを出し、まだ世に出せていないネタもたくさんあるという状況である。 ところが、当人の感覚としては暖簾に腕押しだなあと思っている。ということでちゃんと振り返ってみることにする。 stats 2022年で一番ブクマが多かった記事はblog.arthur1.devである。 他の記事はこの半数にも満たない、というか、片手で数えられるブクマ数でさえありがたい、という状況である。 書くという行為によって自分自身の理解が確かなものになることに意義は感じているものの、せっかく書いているのだから多くの人に読んでほしいし、それが読者のためになればなお良いと思っている。 もっとシビアに言ってしまうと、書いても読んでもらえない状況がずっと続くならいつか自分は筆を取るのをやめてしまうだろうという懸念がある。モチベーション維持のために今

    技術的なアウトプットに疲弊したので振り返る - Diary of a Perpetual Student
    sugyan
    sugyan 2023/01/09
    頑張って書いた渾身の記事が誰にも注目されないときの哀しさは分かる、けど 疲弊してしまうのはなんか違う気がする
  • 「競プロ典型 90問」Smallest Subsequence (最小部分列問題)

    最小部分列問題 「 競プロ典型 90 問」の 006 - Smallest Subsequence(★5) (最少部分列問題) という問題を解いてみたのですが、最初は解説をみてもさっぱり分からず打ちひしがれていました・・・。 が、けんちょんの競プロ精進記録 を見るに、どうもこの問題を解く途中で出てくる nex という配列が「極めて汎用性が高いので、実にさまざまな問題で活用できます!!!」ということらしく、ちゃんと理解しといた方が良さそうだ・・・ということで気を取り直して取り組んでみたところなんとか理解できました。 せっかくなので忘れないうちに解説記事を作って記憶を定着させたいと思います。なお後半の実装パートは、Haskell で実装します。 けんちょんさんの解説記事にあるとおり、この問題 (を全探索で解く場合) の解法のキーになるのは事前に「任意の文字が i 番目以降に出現する位置」を二次

    「競プロ典型 90問」Smallest Subsequence (最小部分列問題)
  • 2023パズル をRustで解いてみる - すぎゃーんメモ

    tkihiraさんの問題が面白そうだったので挑戦してみた。 2023年クイズ! 上の例のように、数字の合間に四則演算(+−×÷)や括弧を入れることで、2023 を作ってください。 - 数字の間に必ず演算子を 1 つ入れてください - ただし 9 と 8 の間には既に ÷ が入っています - 括弧は複数重ねて使用できます - 10×(-9 ÷ 8) のようなマイナス記号の使用は禁止です pic.twitter.com/K0w2miMXJA— Takuo Kihira (@tkihira) December 31, 2022 既に解説記事が出ているので解答はこちらをどうぞ。 nmi.jp 結局自分は自力では解けなくて 他の人の解法や上記の解説記事を読んでようやくできた、のだけど… 自分なりに理解して改めてRustで実装してみた。 RPN(逆ポーランド記法)の backtracking 探索の高

    2023パズル をRustで解いてみる - すぎゃーんメモ
  • 2023 パズルの逆ポーランド記法(RPN)による解法の解説

    2023 年、あけましておめでとうございます!私は元旦に次のようなオリジナル・パズルを出しました。 上の例のように、数字の合間に四則演算(+−×÷)や括弧を入れることで、2023 を作ってください。 数字の間に必ず演算子を 1 つ入れてください ただし 9 と 8 の間には既に ÷ が入っています 括弧は複数重ねて使用できます 10×(-9 ÷ 8) のようなマイナス記号の使用は禁止です オリジナルツイートはこちらです。この記事では、JavaScript によるこのクイズの解き方をご紹介します。 括弧の数式をプログラムで扱うには さて、この問題の一番厄介な点は、括弧の絡む数式をプログラムで処理するという点ではないかと思います。この記事でもそこを重点的に解説したいと思います。 中置記法 まず、我々が日常的に使っている数式は、いわゆる「中置記法」と呼ばれる記法です。例えば (1 + 1 / 9

  • Obsidianを使い始めた - パルカワ2

    課題感 ノートアプリは、Craftを使うようになっていたが、微妙に使いにくくて結局Notionで書いたりしていた。あまり自分の知見として貯まっている感じがせず、必要なときに必要な情報を取るみたいなのが出来ず、メモを書いたような気がするがどこへ………となったり、自分で記憶しておく必要があるということが時々あった。というか記憶していないものは大体なかったことになっている。 Obsidian https://obsidian.md/ 今年の10月に1.0.0がリリースされ「なんかよくなった」という雑な噂を聞いたので触ってみたところ、自分が触った時よりも自分が求めている動きをしていたのでいいじゃんと思って移行を検討し始めた。 Obsidianが僕の第二の脳になるらしい。脳は、情報の記録や取得はもちろん一つの情報から関連した情報を高速に取り出せるので、そういうことができるという話だろうと理解した。求

    Obsidianを使い始めた - パルカワ2
  • rb_enc_prev_char の動き - bamchoh’s diary

    memo.sugyan.com このブログを見て、rb_enc_prev_char の動きが気になった。 まず、 String#rindex がほんとに HAVE_MEMRCHR がないからかどうかを検証。 linuxruby をコードからビルド。 $ git clone https://github.com/ruby/ruby $ cd ruby $ autoconf $ ./configure $ make $ ruby -e 'p "\x00\x01\x80\x00".rindex("\x01")' linux では 1 になる。しかし、string.c の str_rindex() の内容を無理やり HAVE_MEMRCHR の false 側にして再実行すると 2 になる。ということは、false側の str_rindex() に問題があることがわかる。 rb_enc_pr

    rb_enc_prev_char の動き - bamchoh’s diary
    sugyan
    sugyan 2022/12/26
    本当だ、3.2ではrindexがズレなくなっている…!
  • Rubyでバイナリデータに対するrindex検索の挙動でハマったので調べたことメモ - すぎゃーんメモ

    自分の手元の環境でこんなことが起きた。 $ ruby -v ruby 3.1.2p20 (2022-04-12 revision 4491bb740a) [arm64-darwin21] $ irb irb(main):001:0> "\x01\x80\x00\x00".index("\x01") => 0 irb(main):002:0> "\x01\x80\x00\x00".rindex("\x01") => 1 \x01 は 0 番目にしかないのだから、 .index でも .rindex でも 0 が返ってくるはずではないの?? 先に結論 きっかけ String#rindex の謎挙動 もう少し深く追う Encodingと実行環境 つまり再現条件は Rooの問題 Rubyのバグではないの? 3.2 先に結論 バイナリデータを扱うときには必ずEncodingを ASCII-8BIT

    Rubyでバイナリデータに対するrindex検索の挙動でハマったので調べたことメモ - すぎゃーんメモ
    sugyan
    sugyan 2022/12/22
    Rubyむずい…
  • 2022年に作ったもの16(セルフレビューあり) - 詩と創作・思索のひろば

    2015年にも同じ趣旨の記事を書いていた。このときはこんな感じで毎年20個くらいはなんか作るんだろうなとかイノセントに考えていたけど、そうは問屋が卸さず、大して生み出せてない年が続いてきたが、今年はそれなりに作ったんじゃない? と思えたので、振り返ってみる。オシャレにハッシュタグっぽく使った技術を書いてるぜ! 漢字ル #React ウェブ薄氷 #CloudflareWorkers DevTools で esbuild する Chrome 拡張 #Chrome sbx: Scrapbox のコマンドラインクライアント #Go ターミナルから TickTick のタスクを確認するツール #AppleScript letterknife: コマンドラインで使えるメール向けの jq のようなもの #Go oauth2util: OAuth2 の認可フローを簡略化 #Go Vnodroid: 話を聞

    2022年に作ったもの16(セルフレビューあり) - 詩と創作・思索のひろば
    sugyan
    sugyan 2022/12/19
    いっぱい作っていてすごい…
  • 育児とキャリア両立の呪いを解く魔法、それは個人開発|川上 奈津美(natsumican)

    このまま、私は、私という自我を手放して、この子の一部となってしまうのだろうか 深夜2時、泣き喚く赤子を呆然と抱えながら、幾度となくそう思った。 赤子と自分の境界線が、溶けてなくなって、ひとつになってしまうような、強烈な感覚だ。 睡眠不足で回らない頭、マミーブレインで物忘れが激しくなった気がする。 やっと寝かしつけ、布団に入った頃にはもう次の授乳時間が迫っている。 なかなか寝付けずSNSを開くと、周りの友人は順調にキャリアを積んでいるようで、流れてくる転職エントリが目に沁みるほど眩しい。 プログラマーは常に最新の技術をキャッチアップし、死ぬまで勉強しなければ続けられない この業界にいると、よく目にする言葉である。 私も、産前は勉強会に出たり、技術書を読み漁ったり、それなりに楽しく勉強していた方だったはずなのに・・・ このままではまずい、何かをはじめなければと焦燥感にかられる。 それはまるで綱

    育児とキャリア両立の呪いを解く魔法、それは個人開発|川上 奈津美(natsumican)
    sugyan
    sugyan 2022/12/16
    決意と行動、とても素晴らしい…!
  • 【ChatGPTと作る】あしのさきの動物パンプリン占い【クソアプリ】 - Qiita

    クソアプリ歴3年目のゆきです。一昨年はデスクトップでお寿司を回し、去年は世の動くサイトを粉砕しました。 今年も…って思ったけど、毎回自分でハードル上げ過ぎてしんどくなるので、今年は全部AIに任せてみようと思います こちらが完成した「あしのさきの動物パンプリン占い」です アプリ: https://yuneco.github.io/animal-panpudding/ ※ スマホでも動きます リポジトリ: https://github.com/yuneco/animal-panpudding これは一体何?? 🤖 「あしのさきの動物パンプリン占い」はクソアプリの究極の仕上がり! 脚の先の写真から天気を推定し、おすすめの動物パンプリンと占いをお届けします。 無駄に面白くて、もっともっと意味不明な占いが楽しめるかも? お試しあれ! アンダスタン? では始めましょう ChatGPTとアイデアを練る

    【ChatGPTと作る】あしのさきの動物パンプリン占い【クソアプリ】 - Qiita
    sugyan
    sugyan 2022/12/15
    アイデアだけで終わらずに本当に動くものまでちゃんと作っていてすごい
  • Life Universe

    Loading...

    Life Universe
    sugyan
    sugyan 2022/12/15
    すごすぎてわけがわからない…
  • Ubie は Go と Node.js の会社になります

    Ubie では、創業当初から Server-Side Kotlin を推進してきましたが、全社的な技術選定を再度行い、これからは Go と Node.js を中心とすることにしました。 記事では、Go と Node.js を選定した理由や、それを普及させる取り組み、そして選定の流れを紹介します。 経緯 これまで Ubie では技術スタックを発散させてきていて、現在は KotlinGo、Node.js、RubyPython のバックエンドサービスが動いています。以前は新規開発が多く、それぞれに携わるメンバーが技術選定をすることにより、最大瞬間風速を出せるなどのメリットがありました。しかし、現在では弊害が目立ってきています。 まず、事業成長に伴って運用の重要性が増しています。人材が潤沢とは言えないスタートアップにおいて、様々な技術スタックを安定運用することはコストが高すぎると感じています

    Ubie は Go と Node.js の会社になります
  • キャリアの悩みについて

    2022/12/09 Developers CAREER Boost で発表したキャリアについての話です。

    キャリアの悩みについて
    sugyan
    sugyan 2022/12/09
    会長はワシが育てた
  • 1KBのWebフレームワークをつくる - ゆーすけべー日記

    1KBのWebフレームワークをつくりました。 名前は「Pico」。 minifyしてビルドした模様。 コードはこれだけ。依存なし。ほんとにこれだけです。 Cloudflare WorkersとDenoで動きます。 今回はこのPicoというフレームワーク、 それに必要不可欠なURLPattern、実装について、 そして僕がつくっているもう一つのフレームワークHonoとの関係などを紹介します。 Hello World text/plainでレスポンスを返す、“Hello World"相当のコードは4行で書けます。 import { Pico } from "@picojs/pico"; const app = new Pico(); app.get("/", (c) => c.text("Hello Pico!")); export default app;

    1KBのWebフレームワークをつくる - ゆーすけべー日記
  • 世界に衝撃を与えた画像生成AI「Stable Diffusion」を徹底解説! - Qiita

    追記: U-Netの中間層は常にSelf-Attentionとなります。ご指摘いただきました。ありがとうございます。(コード) オミータです。ツイッターで人工知能のことや他媒体の記事など を紹介しています。 @omiita_atiimoもご覧ください! 世界に衝撃を与えた画像生成AI「Stable Diffusion」を徹底解説! 未来都市にたたずむサンタクロース(Stable Diffusionで生成) 2022年8月、世界に大きな衝撃が走りました。それは、Stable Diffusionの公開です。Stable Diffusionは、テキストを受け取るとそれに沿った画像を出力してくれるモデルです1。Stable Diffsuionは10億個近いパラメータ数をもち、およそ20億個の画像とテキストのペア(LAION-2B)で学習されています。これにより、Stable Diffusionは入

    世界に衝撃を与えた画像生成AI「Stable Diffusion」を徹底解説! - Qiita
  • Node.js fetch の内部の話 - from scratch

    前置き この記事は リクルートエンジニアアドベントカレンダーの3日目の記事です。 Recruit Engineers Advent Calendar 2022 - Adventar ちなみにココで書いたやつを一部抜粋させていただいております(ネタ切れにより過去投稿を利用してしまっております。。。すいません。。。) www.codegrid.net fetch が Node v18 から試験的にサポートされた ブラウザでは数年前から採用されていた HTTP リクエストを行う関数の fetch が global 空間に関数として作成されました。使うだけなら特に何のフラグもいりません、その代わり使うと Experimental であることを知らせる Warnings が出ます。 // fetch.mjs const response = await fetch('https://api.gith

    Node.js fetch の内部の話 - from scratch
  • JSConf JP 2022 公開資料・Twitterリンクまとめ

    2022/11/26(土)で開催された JSConf JP 2022に関する、現時点での公開資料と Twitter アカウントリンクをまとめました。 よろしければご活用ください。 ※2022/11/28追記 ねぎしさんからいただいたコメントを元に、各講演に時間指定をした YouTube リンクを追記しました。 (時間指定をすると流石に動画埋め込みはできないようだったので、リンクでご容赦ください🙏) はじめに 登壇者名は敬称略させていただいています。 Twitter アカウントについては、ご人が当イベントで登壇されることに言及されている、スライドに記載など、確認できたものを記載しております。 リンクの間違い等ありましたらコメントいただけると助かります🙏 アーカイブ動画 当イベントは、3つのトラックに分かれて講演が行われました。 その3つともアーカイブ動画が残っているので、後から見直すこ

    JSConf JP 2022 公開資料・Twitterリンクまとめ