タグ

ブックマーク / blog.leko.jp (17)

  • Googleカレンダーのイベントの開始数分前にリモートミーティングのURLを自動で開くChrome拡張を作った

    れこです。当記事では Google カレンダーのイベントの開始数分前に、イベントに紐づいたリモートミーティングの URL を自動で開く Chrome 拡張を作ったのでその紹介をしたいと思います。 TL;DR インストールはこちら(Chrome ウェブストア) OSS です。GitHub のリポジトリこちら 何かあればリポジトリの Issue にお願いします 当記事の背景と反省 当記事を書くに至ったきっかけのは 2022/06/28 にツイートしたこの投稿です。 Chrome拡張機能作った。ストアに公開済み。Googleカレンダーのイベント開始数分前にイベントに設定されたURL(Google Meet, Zoom)を自動で開くもの。もうこれ無しでは仕事ができない。https://t.co/pYY074hdZD pic.twitter.com/DvXZdAZnGu — Leko / れこ (@

    Googleカレンダーのイベントの開始数分前にリモートミーティングのURLを自動で開くChrome拡張を作った
  • GitHubのトレンドで振り返る2021年のJavaScript/TypeScript

    今年も GitHub のトレンドで 2021 年の JavaScript/TypeScript を振り返ります。去年の記事はこちらです。 — GitHub のトレンドで振り返る 2020 年の JavaScript | WEB EGG 集計方法 GitHub トレンドは過去の履歴を公式に提供していないため、非公式に集計されたデータを利用しています。 データソースはlarsbijl/trending_archiveを使用 去年はxiaobaiha/github-trending-historyを利用したが今年のデータは無かったので変更 日ごとにまとめた markdown になっており、remark で AST→ データ化しました 集計期間は 2021/01/01 から 2021/12/15 まで 対象言語はJavaScriptTypeScriptのみ 集計後のデータはこちらのスプレッドシー

    GitHubのトレンドで振り返る2021年のJavaScript/TypeScript
  • WebAssemblyの形態素解析器GoyaをRustで作った

    Goyaという形態素解析器を Rust で作りました。記事は利用者目線で Goya の紹介をします。技術的な詳細については別途記事を書きます。 形態素解析とは? (このセクションは形態素解析の基礎の話なので知ってる方は読み飛ばしてください) 形態素解析(けいたいそかいせき、Morphological Analysis)とは、文法的な情報の注記の無い自然言語のテキストデータ(文)から、対象言語の文法や、辞書と呼ばれる単語の品詞等の情報にもとづき、形態素(Morpheme, おおまかにいえば、言語で意味を持つ最小単位)の列に分割し、それぞれの形態素の品詞等を判別する作業である。 — 形態素解析 - Wikipedia 例えば早口言葉の”すもももももももものうち”(スモモも桃も桃のうち)という言葉を形態素解析すると以下のような結果が得られます。スモモや桃が名詞、間にある”も・の”は助詞と解析さ

    WebAssemblyの形態素解析器GoyaをRustで作った
  • GitHubのトレンドで振り返る2020年のJavaScript

    れこです。この記事はNode.js Advent Calendar 2020の 12 日目の記事です。今回は年の瀬ということで酒の肴になりそうな記事を書きたいと思います。 記事では 2020 年に GitHub のトレンドに上がったリポジトリをいくつかの切り口で集計して、独断と偏見で感想を付け加えます。 この記事を酒の肴に 2020 年の JS/TS について懐かしんでもらえたら幸いです。 集計方法 GitHub のトレンドは過去の履歴が残っていないので非公式に集計されたデータを利用しています。 集計期間は 2020/01/01 から 2020/12/05 までの 341 日間 対象言語はJavaScriptTypeScriptのみ トレンドの過去データのソースはxiaobaiha/github-trending-historyを参照 日ごとにまとめた markdown になっており、

    GitHubのトレンドで振り返る2020年のJavaScript
  • Node.jsのHTTP over QUIC(HTTP/3)を試す

    2020/10/20にNode.js v15がリリースされました 🎉 色々新機能や破壊的変更が加わっているので、詳しくは公式のリリースノート等をご参照ください。 — Node.js v15.0.0 is here!. This blog was written by Bethany… | by Node.js | Oct, 2020 | Medium また、Node.jsのコラボレータによる日語のわかりやすい記事もあるのであわせてご覧ください。 Node.js v15 の主な変更点 - 別にしんどくないブログ 10月20日にメジャーアップデートとしてリリースされたNode.js v15の紹介 | watilde’s blog npm v7の主な変更点まとめ | watilde’s blog まとめは以上にして題です。記事はv15の変更点まとめを目的とした記事ではなく、v15にて新し

    Node.jsのHTTP over QUIC(HTTP/3)を試す
  • 株式会社CureAppを退職します

    日で最終出社が終わったので、記録を残しておきます。 表題の通り、2017 年 7 月から2年半ほど勤めた株式会社 CureAppを退職します。報告と自分語りです。 CureAppでやってたこと 治療アプリ©という疾患を治療するアプリを作るソフトウェアエンジニアとして入社しました。スマフォアプリが治療効果を持つ医療機器として承認されるため、薬事や臨床開発などの今まで全く知らなかった医療の世界に貢献できることはなにか、自分がなすべき領分は何かを考えながら仕事してました。 初仕事は臨床試験が迫っているアプリを仕上げることと、技術スタックをキャッチアップしてReal World React Native in Agri/Med/Fin Techというイベントで事例紹介することでした。登壇資料はこちら。 — React Nativeで医療機器作ってます - Speaker Deck 主な使用技術

  • Dive into Deno:プロセス起動からTypeScriptが実行されるまで

    Denoのコードを読んでみました。 Rust に入門したばかりで基礎知識が足らず四苦八苦していますが、Deno のプロセスが起動してから TypeScript のコードが実行されるまでの仕組みについて愚直に読んでみたメモです。 想定読者 Deno の内部挙動に興味がある Node.js、TypeScriptC++(と V8)のコードがドキュメントを参照しつつ読める Rust で Hello world したことある程度の経験がある 参考情報 コア内部を理解するには非公式ガイド(以下ガイド)がとても参考になります。 — A Guide to Deno Core - A Guide to Deno Core Deno のディレクトリ構成やレイヤー分けについてはRepo StructureとInfrastructureを一読し、リポジトリの構造をざっくり把握してからコードを読み始めるとより捗る

  • 開発者ツールで使える便利なcopy関数

    こんにちは。開発者ツールネタです。 ChromeでもFirefoxでもSafariでも使える便利な関数が色々あります。 その中の1つcopy関数について紹介したいと思います。 copy関数とは? クリップボードに渡した文字列をコピーする関数です。 開発者ツールを起動し、コンソールタブを開く。 と実行した後にペーストしてみてください。xxxがコピーされてると思います。 一点注意なのが、 このcopy関数は開発者ツール以外では使用できない特殊な関数 です。 なので.jsファイルとかにcopyと記述しても「そんな関数無いよ」と言われてしまいます。 便利な使い方 jsでごにょった値をコピーして使う、と言ってしまえばそれまでなんですが、 具体的にどんなケースに使えるんだろうという具体例を考えてみます。 他のブラウザではわかりませんが、少なくともChromeではES6のメソッド群が色々使えるので、それ

  • 「外部パッケージの型定義もインストールし推論できるTypeScript playgroundを作った」という題で登壇してきました+スライドの補足

    「外部パッケージの型定義もインストールし推論できるTypeScript playgroundを作った」という題で登壇してきました+スライドの補足 “外部ライブラリもインストール・型解釈できる TypeScript playground を作った”という題で俺得フロントエンド (1) LT 会という勉強会で登壇してきました。スライドはこちらです。 — 外部ライブラリもインストール・型解釈できる TypeScript playground を作った スライドの内容をそのまま書いても意味がないので詳しくはスライドを読んでいただきたいのですが、発表時間の都合・構成力不足で伝えきれなかった部分の補足・補完的なものを書きます。 この playground のより詳細な説明、内部で使ってる技術の説明、この playground に限らず汎用的に活用できそうな技術の話をします。 何を作ったの — Type

    「外部パッケージの型定義もインストールし推論できるTypeScript playgroundを作った」という題で登壇してきました+スライドの補足
  • タブ補完でpecoでnpm-scriptsをもっと超簡単に実行したい | WEB EGG

    便乗ネタです。 — peco で npm-scripts を超簡単に実行したい - Qiita という素晴らしい記事が公開されたので実際に使ってみたのですが、 npm runまで打ってから「あれ、コマンドなんだっけ」と思い、入力内容を消しnrunを実行するという一手間を省略したいと思いました。 もっと超簡単に実行できるようにnpm run <TAB>で peco が起動するようにしてみました。 CHANGELOG 2018/06/01: yarn にも対応しました まえおき Bash でのみ動作確認してます。 Z や F の方は別途記事書いていただけるとありがたいです。 また、元記事の通りにセットアップができていることを前提とします。 — peco で npm-scripts を超簡単に実行したい - Qiita npm run <TAB>で peco を作動させる タブ補完に関しては、こ

  • Intl.NumberFormatでゼロ埋めや%表記などの数値表現を楽に実装する

    Number#toFixed や Math.round/floor/ceil を駆使して表示用の値を整形することってないでしょうか。カンマ区切りをオレオレユーティリティ関数で実装したりそういったことを実現するライブラリを探したことはないでしょうか。 ほとんどの JavaScript の実行環境にはIntlという i18n のためのオブジェクトが組み込まれており、その中の1つにIntl.NumberFormatというクラスがあります。 オプションが色々あり、かなり便利で多機能なんですが整理された情報が少なく、身の回りで使用してる人も少ないと感じました。 Do you use Intl.NumberFormat? — れこ (@L_e_k_o) February 25, 2019 (2019/03/04あたりに結果表示されると思います。途中経過を見る場合元ツイートに飛んでください。) 「それ自

  • ブログをMiddlemanからGatsbyに乗り換えた雑感

    2017年にこのブログはWordpressからMiddleman製に作り変えたのですが、この度MiddlemanからGatsbyへ移行しました。前回の移行の記事はこちらです。 — Wordpressで運用していたブログをMiddleman+Netlifyに変更した | WEB EGG Middleman時代からmarkdownや画像系を全てソース管理していたので、移行は二日くらいで特に問題なく終わりました。 今回はマイグレーションガイドではなく、使用感としてMiddlemanとGatsbyを比較してみたいと思います。 移行にあたり求めてたこと 描画のパフォーマンスを上げたい ビルド速度の大幅改善(もともと3-40分かかってた) 初期描画の後に動的に動くjs(サイト内検索とか)の開発体験を”普通”にしたい Gatsby使えばオフライン対応が入ってPWAにしやすいって話もあるんですが、このブロ

  • Goに入門してRedis+PostgresなアプリをHerokuにデプロイするまで

    お久しぶりです。Go の門を叩いてみました Go はマスコットの謎生物が可愛いですね。Gopher というらしいです。 どこかで見たことあると思ったら、くまのプ ● さんにゴーファーというそのままなキャラクターがいましたね。 他の言語とはソースコードの構成やら書き方やら結構違っていて馴染めなかったのですが、なんとかことはじめの記事くらいは書ける程度にはなれたので、備忘録として残します。 Go の環境構築から、Gin という軽量フレームワークで Redis と PostgreSQL を使ったデモアプリを作って、Heroku にデプロイするところまでの備忘録です。 少しでも Go に入門する人の助けになれば幸いです。 なぜ Go なのか なんとなくと言ってしまえばそれまでなのですが、 最近あまり新しいことに挑戦してないなー と思ったのがきっかけです。 というのと、今まで触れたことない言語に触れ

    Goに入門してRedis+PostgresなアプリをHerokuにデプロイするまで
  • phpでrequire_onceするときに相対パスでハマった

    と書くとB.phpのrequire_onceは失敗します。 B.phpとC.phpは同じ階層にあるから読み込まれるはずなのに。 id=“practive”> phpの規則 調べてみるとすぐに見つかりました。 PHPでは、「実行したファイルのあるディレクトリが常に実行時のカレントディレクトリになる」っていう規則があるためエラーとなってしまうのです。 この問題は、実行ファイルのディレクトリではなく、参照しているファイルのディレクトリを基にパスを取得することで回避できます。 PHP の include, require で相対パスを指定して読み込む場合のメモ – hoge256ブログ とあるように、A.phpを実行しているので、 B.phpのrequire_once(“C.php”)はA.phpと同階層のC.phpを探してエラーになるようです。 これを回避するには、**dirname(FILE)

    phpでrequire_onceするときに相対パスでハマった
  • 昨今のPHPのテンプレートエンジンについて調べて共通インタフェースを作った

    こんにちは。 突然ですが、FuelPHPのビューを書く場合、デフォルトでは生PHP + Viewクラスの構成だと思います。 Viewクラス自体がエスケープ機構を備えているのでXSSは塞げるんですが、生のPHPで書くとisset地獄だったりifが増えたりと不便なところが多く、テンプレートエンジン使いたいと思うことが多々あります。 そんなFuelPHPにはparserというパッケージがあるので、設定を変更すればテンプレートエンジンが簡単に利用できます。 fuelphpでhaml導入したった – ド忘れ防止雑記帳 が、しかし 対応しているテンプレートエンジンの一覧を見てみると、どれも古い。とにかく古い。 良く言えば枯れてるんですが、調べてみると メンテナンスされてないだろこれ… という感じのものが結構ありました。 ということで自分の知見をアップデートするため昨今のテンプレートエンジンについて調べ

  • docker composeでMySQLのデータ領域をローカルにマウントする

    この記事は12/1のDocker2 Advent Calendar, 12/3のHamee Advent Calendarの記事です。 こんにちは。 docker composeめちゃくちゃ便利ですよね。 Chef, Vagrant, Puppet, Ansible, Fabric…とプロビジョニングツールとか仮想化ツールを色々触ってきましたが、 それらよりずば抜けて扱いやすいと思っているツールです。 で、ローカルで開発している時に困るのが、 MySQLをはじめDBにデータを持ってもコンテナを破棄するとデータがすっ飛ぶ 問題です。 軽量なアプリの場合ならDB破棄してシード流して、、、という構成でもイケるかも知れませんが、多くの場合オーバーヘッドが大きすぎてまともに開発できなくなると思います。 Docker for Macを使用している場合はこの問題は難なく解消できるのですが、 docker

  • ChatWorkだってSlackしたい!!

    なんとも日語が不自由な感じのタイトルですが、始めます。 普段仕事でChatWorkを使っているのですが、どうにもUIが好きになれない。 別に使いにくくはないんですが、趣味Slack使ってるせいでどうにも馴染めません。 でも仕事で使うのでどうにかして向き合わなければならない。 ならSlack使ってる感覚に陥るChatWorkであれば違和感なく使えるのでは…? ということで試してみました。 完成物 こちらです。スクショとかアイコン適当ですみません。 https://chrome.google.com/webstore/detail/chack/fdjillhmoogcihmmokkpiipbcgbfejek?hl=ja&gl=JP ソースはGithubに公開してあります。 GitHub – Leko/chatwork-skin-slack: Chrome extension to appl

    ChatWorkだってSlackしたい!!
  • 1