タグ

ブックマーク / www.mizdra.net (10)

  • アセットの import を簡単にする TypeScript Language Service Plugin を作った - mizdra's blog

    Web ページを作るときに、あらかじめファイルに書き出しておいた画像 (アセット) をページに埋め込みたいことがよくあると思います。例えばヘッダーにサービスのロゴ画像を埋め込む場合、以下のようなコードを書くと思います。 // src/components/Header.tsx export function Header() { return ( <header> <img src="/assets/logo.png" alt="Logo image" /> {/* ... */} </header> ); } 一方で、最近のWeb フロントエンドフレームワーク (例: Next.js, Remix) を使う場合は、import 文を用いて以下のように書くことが多いと思います。 // src/components/Header.tsx import I_LOGO from '../asse

    アセットの import を簡単にする TypeScript Language Service Plugin を作った - mizdra's blog
  • Twitter に投稿したツイートを Mastodon に転送するようにした - mizdra's blog

    去年の 11 月から続く一連の騒動を受けて、id:mizdra のフォロワーの中でも Twitter から Fediverse に移行してきている人が増えてきた。僕自身は移行するつもりはないけれど、移行したフォロワーが僕のツイートを Fediverse から見れるように、ツイートを Mastodon へと転送するようにしてみた。せっかくなので、そのやり方について書き残しておく。 作戦 IFTTT という「〇〇したらXXする」みたいなピタゴラスイッチをボタンポチポチで作れるサービスがある。これを使い、当該 Twitter アカウントでツイートがされたら、それを契機に Mastodon にトゥートを投稿する、というピタゴラスイッチを組むことにする *1。 転送する上での注意点 (2023/4/10 追記) (トラバで情報を頂いたので追記) 今回紹介する方法では、普段は自動投稿のみをする BOT

    Twitter に投稿したツイートを Mastodon に転送するようにした - mizdra's blog
    Windymelt
    Windymelt 2023/04/09
    嫌がられてるの?普通に便利だと思ってた。他の意見も聞きたい/リソースの無駄という意見には賛同できなくて、そもそもマストドンといった分散型SNSはデータをコピーしまくってるわけなので最初から無駄ですよ
  • YAPC::Kyoto 2023 に参加してきた - mizdra's blog

    登壇とかではなく、いち聴者として参加してきました。 yapcjapan.org 前日祭も参加していて、土日での京都滞在でした。 yapcjapan.connpass.com 僕と YAPC YAPC への参加は去年の YAPC::Japan::Online 2022 に続いてとなり、YAPC::Kyoto 2023 で2回目です。オフラインの YAPC は初めてでした。 また、別の話として新卒入社のタイミングがコロナと重なっており、参加人数が数百人超える大きなカンファレンスに出たことがほとんどありませんでした (入社前のものを含めると HTML5 Conference 2018 と builderscon tokyo 2019 くらい?)。大きなカンファレンスへの参加が4年ぶりということで楽しみにしてました。 印象深かったセッション moznion さんの廃墟の話が印象深かったです。出てく

    YAPC::Kyoto 2023 に参加してきた - mizdra's blog
    Windymelt
    Windymelt 2023/03/21
    めでたい
  • 試行錯誤を邪魔しない開発環境 - mizdra's blog

    ある機能を実装する際、完成形のコードになるまでには、プログラムとして不正確な状態や、プロダクト品質ではない状態を経る 静的型検査や lint rule に違反したコードが途中に挟まる 型エラーや lint エラーは望ましくないので、できるだけ早くこうした情報を開発者に伝え、気付けるようにすると良い CI でこうしたエラーを検知して、Pull Request をマージする前に気づけるようにするとか エディタ上にエラーの情報を表示して、コーディング中に気づけるようにするとか エラーを積極的に通知してくれるのはありがたいけど、やりすぎには注意するべき なんとなくでも動いてくれたほうが嬉しい 例えば lint エラーがあった際に、watch モードで起動しているビルドやテストの実行を止めて、lint エラー見つけたよーと教えてくれる開発環境がたまにあるけど... 別にビルドやテストの実行は止める必

    試行錯誤を邪魔しない開発環境 - mizdra's blog
    Windymelt
    Windymelt 2023/01/31
    チュートリアル見ながらimport文を書いたのに手癖で保存したらunused importで全部消されてプエ〜〜ってなったことある
  • 遠い未来の話をする理由、それは自信を持って前に進むため - mizdra's blog

    id:mizdra は時々仕事で「今の時点で結論を出す必要はない、遠い未来の話」をすることがあります。1年後に考えれば良いことを、今考える、とかです。それをするのは何故か、という話を今日はします。 長期プロジェクトを段階的に進めていくには、不安が付き物 現在 id:mizdra はレガシーな Web アプリケーションへの Next.js の導入を仕事でやっています。新規実装部分から少しずつ Next.js を導入していて、段階的に Next.js 化を進めています。全部一気に Next.js 化するとなると、「レガシーな技術スタックでやってたアレは Next.js/React でどうやるの?」という問いが絶え間なく発生して全く前に進めなくなります。しかしスコープを小さくすれば、少しずつ問いに答えていって、進行できます。途中で方針転換もしやすいし、最初の機能をリリースするまでの時間も短くなり

    遠い未来の話をする理由、それは自信を持って前に進むため - mizdra's blog
    Windymelt
    Windymelt 2022/07/12
    “「try to imagine a “shiny future” (輝かしい未来を想像してみる)」「We want this so that we have a future to strive (目指すべき未来があるようにしたい)」 ”
  • npm-scripts を書く時の手癖 - mizdra's blog

    かれこれ 5 年くらい趣味開発で npm-scripts を書き続けている。長年書き続けているとノウハウが蓄積されてきて、「こう書くとスッキリする」「迷いがなくなる」「後から拡張したくなった時に、簡単に拡張できる」みたいな書き方が身についてきた。自分の型、あるいは手癖のようなものだと思う。 せっかくなので、id:mizdra の今の npm-scripts を書く時の手癖を書き連ねてみる。 基形 { "scripts": { "build": "webpack --mode production", "dev": "webpack-dev-server --mode development", "lint": "eslint .", "test": "jest" } } 一番シンプルな npm-scripts を書く時のパターン。以下の 4 つの script を登録している。 buil

    npm-scripts を書く時の手癖 - mizdra's blog
    Windymelt
    Windymelt 2022/03/24
    良い、ところで画像の注釈とかはgyazoとかでやってる感じですか
  • 1Password のカスタムフィールドを autofill に利用する - mizdra's blog

    1Password にはカスタムフィールドという機能があります。これを使うと、ログインのためのちょっとしたメモや、秘密の質問の答えなど、好きな情報を id/pass とともに記録できます。 秘密の質問の答えを記録している様子 ところでこのカスタムフィールドは、実はログインフォームなどの autofill に活用することもできます。 具体例 例えば以下のような HTML Form があると仮定します *1。 See the Pen by mizdra (@mizdra) on CodePen. こうしたフォームがある時に以下のように 1Password を設定しておくと、所々の入力欄を autofill してくれます。 id:mizdra が調べた限りでは、以下の規則で「ラベル」や「新規フィールド」を設定しておくと、autofill してくれるようです。undocumented な機能だった

    1Password のカスタムフィールドを autofill に利用する - mizdra's blog
    Windymelt
    Windymelt 2021/10/05
    知らなかったmありがたい
  • 趣味で創作する時は常に何かしら新しいことに挑戦する - mizdra's blog

    普段趣味プログラミングで何か作る時、何かしら新しいことに挑戦するということを意識している 例えば何か触ったことのない技術を導入してみるとか、採用したことのない開発手法を取り入れてみるとか より具体的に言うとHeroku導入してみるとか、TDDで開発してみるとか 折角何か創作活動をするので、ついでに新たなことに挑戦し、新たな学びやスキルの向上へと繋げようという狙い ここまではよくある話だと思うけど、mizdraの場合は更に踏み込んで、「新しいことは数を絞って注力できるようにする」ということも意識している 新しいことに挑戦するのは多くの場合、非常に負荷が掛かる 例えばHeroku導入するにしても、HerokuのCLIやダッシュボードの使い方を学ぶ必要があるし、PaaSを触ったことが無ければそもそもPaaSとは、一体何が出来てどこまで面倒を見てくれるのか、ということから学ぶ必要がある 挑戦する数

    趣味で創作する時は常に何かしら新しいことに挑戦する - mizdra's blog
    Windymelt
    Windymelt 2020/08/04
    良いエントリ,一度にたくさんチャレンジしてもうまくいかないので力の入れどころを選ぶという話
  • Scrapboxのページ内に埋め込まれているアイコンをsuggestして挿入できるUserScript作った - mizdra's blog

    Scrapboxで会議の議事録を取っていると、誰の発言かを記録するために他人のアイコンを挿入したい、という場面が出てくる。Scrapboxでは ctrl+i と入力すれば簡単に自分のアイコンは挿入できるけど、他人のアイコンを簡単に挿入する方法は意外にない。一応以下のような手順で任意のページのアイコンを挿入できるというテクニックもあるけど、キーボード上を結構ダイナミックに指を動かす必要があってお手軽ではない & そもそもアイコンが無いページもポップアップに出てくるのでノイズが多い。 [ キーを押す scrap と入力 scrap にマッチするページ一覧がポップアップで出てくるので、Tabキーを数回押して scrapbox にカーソルを合わせる ctrl+i で [scrapbox.icon] を挿入 そこでもっとお手軽に他人のアイコンを挿入できるUserScriptを作った。 gyazo.c

    Scrapboxのページ内に埋め込まれているアイコンをsuggestして挿入できるUserScript作った - mizdra's blog
    Windymelt
    Windymelt 2020/06/15
    いかにも便利そう!!
  • 画像による Layout Shift が無くなる Web がやって来る - mizdra's blog

    はじめに Web では古来より <img> タグを用いて画像を読み込んでいました. しかし <img> タグにはアスペクト比に関する情報を埋め込むための属性が用意されていません. そのため, ブラウザが画像をネットワークから fetch して読み込みが完了するまで, レスポンシブな img 要素の寸法を決定できず, ページにガタツキ (Layout Shift) が生じる問題がありました. この問題を解決するため以前より, アスペクト比を埋め込むための新たな属性の導入が提案されていました. しかし最近議論に動きがあり, 既存の属性を利用する方法が提案され, ブラウザに実装され始めています. ここでは問題の背景, 提案と議論の変遷, そして開発者が取るべき対応について紹介します. はじめに img タグと Layout Shift intrinsicsize 属性 intrinsicsize

    画像による Layout Shift が無くなる Web がやって来る - mizdra's blog
    Windymelt
    Windymelt 2020/06/01
    だから画像の読み込みが重いっていう話をしてるんです。 > んなもんブラウザが先読みしとけよ。
  • 1