タグ

mizchiのブックマーク (39,248)

  • Let's make a Teeny Tiny compiler, part 1

    Let's make a Teeny Tiny compiler, part 1 5/5/2020 This is the first post in a three part series. Check out part 2 and part 3 when you are ready. It is a beautiful day outside, so let's make a compiler. You don't need any knowledge of how compilers work to follow along. We are going to use Python to implement our own programming language, Teeny Tiny, that will compile to C code. It will take about

    Let's make a Teeny Tiny compiler, part 1
    mizchi
    mizchi 2023/05/30
  • メタバース事業化、9割以上が失敗…人材不足などが要因に | 通販通信ECMO

    NTTデータグループのコンサルティングファーム、(株)クニエ(東京都千代田区)が23日発表した「メタバースビジネス調査レポート」から、メタバース事業化の成否が判明した取り組みの9割以上が、事業化に失敗していることがわかった。 ▽メタバース関連の資料はこちら https://www.tsuhannews.jp/documents/search?q=%E3%83%A1%E3%82%BF%E3%83%90%E3%83%BC%E3%82%B9

    mizchi
    mizchi 2023/05/29
  • 批評論:ゲームレビューを書くことが何故難しいか | 羊谷知嘉

    ゲームレビューの営みは人間の不思議なエネルギーで駆動する。 遊ぶのが好きなら読み書きの時間で実際にプレイした方が楽しめるし、感触を知りたいだけならゲーム配信や実況動画の方が役立つ。発売前後にメディアが一斉公開するものならまだしも、数ヶ月、数年、数十年経った作品でも読み書きされるのは人間がつねに共感を欲し、そこに深い意味をもとめざるをえないからだ。 この記事では、ゲームレビューの読み書きをとおして感じてきた固有の難しさをまとめる。ひとつひとつにもっと掘り下げるべき奥深さがあるが、僕が目指したのは見取り図の作成だ。 結論を先にいうと、ゲームレビューを書くのがなぜ難しいかには以下の3つの要因がある。 プレイングの困難:ゲームを遊ぶことは作品ごとやジャンルごとに一定量の学習を要求し、課題構造がそのプレイングを可視化するため巧拙の誤魔化しがきかない 文章表現の困難:動画媒体のコンテンツが人気を博して

    批評論:ゲームレビューを書くことが何故難しいか | 羊谷知嘉
    mizchi
    mizchi 2023/05/29
  • The HTTP QUERY Method

    mizchi
    mizchi 2023/05/29
  • 障害者差別解消法の方針改定にともなう影響

    はじめに 2024年4月1日から障害者差別解消法の方針が改定される。この法律は「障害を理由とする差別の解消を推進する」ために、以下の3つを行うこととしている。 不当な差別的取扱いの禁止 合理的配慮の提供 環境の整備 「合理的配慮の提供」とは、障害のある人から「社会の中にあるバリア(障壁) を取り除くために何らかの対応が必要」との意思が伝えられたときに、行政機関等や事業者が、負担が重すぎない範囲で必要かつ合理的な対応を行うこと。 「合理的配慮の提供」は、これまで行政機関等は義務、事業者は努力義務とされていたが、改正法により、2024年4月1日から事業者も義務化されることとなる。 これによって、事業者のWebページにも何らかの配慮が義務となる。「合理的配慮の提供」が義務化されることで、Webサイトやアプリケーションの分野では、どのような対処が必要となるのか、2024/4の方針改定までに取り組む

    障害者差別解消法の方針改定にともなう影響
    mizchi
    mizchi 2023/05/28
  • CSSを持たない Headless な UI ライブラリと ChatGPT によるマークアップ生成を試してみる

    いまさら気づいたけど Headless 系のUIライブラリが一番 AI と相性いいのではないか。 ロジックはプログラマで書けて自由度高いし、コンポーネントのネスト構造から意図を読み取れるだろうし、class 名は自由に書けるから意図を表明しやすい。 それをプロンプトとして ChatGPT or Codex にそのまま投げて書かせる、ができる。 というわけで vite + react + radix-ui + vanilla-extract で実験してみた。 プロンプト あなたは凄腕のマークアップエンジニアです。 radix-ui は Headless UI ライブラリで、UIとしてのセマンティクスのみを持っています。 次のコードは React + radix-ui + vanilla-extract で書かれた React コンポーネントです。 // Popover.tsx import

    CSSを持たない Headless な UI ライブラリと ChatGPT によるマークアップ生成を試してみる
    mizchi
    mizchi 2023/05/28
    試した。結構いいぞコレ
  • packelyze - お前の TypeScript はもっと小さくなる

    TypeScriptの型定義ファイルから積極的な圧縮を行うための @mizchi/optools をリリースした。まだ実験中だが、結構動くはず。使う場合は自己責任で。 追記: optools を packelyze に rename した。これは optools という CLI 名が ImageMagick の提供するコマンドとぶつかったため。 試行錯誤の過程は https://zenn.dev/mizchi/scraps/1bdf01f5efb147 にある。 このライブラリは、自分の所属する Plaid の業務時間中に作成した。 想定ユーザー ライブラリ作者 ビルドサイズ厳しいフロントエンド開発者(サードパーティスクリプト等。自分が業務で作った理由がここ) リスクとってでもビルドサイズを縮めたいフロントエンド作者 動機 世の中な TypeScript で書かれたコードは、その型情報を使

    packelyze - お前の TypeScript はもっと小さくなる
    mizchi
    mizchi 2023/05/25
    書いた。よろしくお願いします
  • 【第5回】「型」はウェブシステム開発に「エンドゲーム」をもたらすか | GeeklyMedia(ギークリーメディア) | Geekly(ギークリー) IT・Web・ゲーム業界専門の人材紹介会社

    伊藤直也さんが「今逢いたい」ソフトウェアエンジニアに声をかけて対談を重ねてきたシリーズの最終回は、これまでの対談の文章化を手がけたラムダノート株式会社の鹿野桂一郎さんとの異色対談です。コンピュータ技術書や記事の編集者であると同時に仕事趣味でHaskellのプログラムも書く鹿野さんの視点を通し、現代のウェブシステム開発に伊藤さんが何を見ているのか、特に「型」と「エンジニアの学び」というこれまでの対談に通底するテーマについて掘り下げます。 ・伊藤 直也さん / 株式会社 一休 執行役員 CTO 新卒入社したニフティ株式会社でブログサービス「ココログ」を立ち上げ、CTOを務めた株式会社はてなでは「はてなブックマーク」などの開発を主導。グリー株式会社では統括部長としてSNSを担当した。2016年4月、一休に入社し執行役員CTOに就任。 ・鹿野 桂一郎さん / ラムダノート株式会社 代表取締役社長

    mizchi
    mizchi 2023/05/25
  • GitHub - astral-sh/rye: a Hassle-Free Python Experience

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - astral-sh/rye: a Hassle-Free Python Experience
    mizchi
    mizchi 2023/05/24
  • 10万件のSelectBoxが作りたい

    10秒で概要 10万件のデータをサジェストするAutocompleteなSelectBoxを作りたい。 しかし、1万件を超えたあたりから通常のAutocompleteではレンダリングに時間がかかる。 以下の方針が有る。 react-windowによるレンダリング以外の範囲の仮想化 フロントエンドではデータを保持せず、入力値に応じてSearchのAPIコールを実施する Reactのレンダリングによる課題 Reactのレンダリングは、大まかに以下のフローで行われます。 Triggering a render 新規画面への描画時、またDOM要素の差分を検出したことをTriggerがとして、レンダリングが発生します。 Committing to the DOM 描画要素に違いがあるDOM要素のみ、DOMノードを変更します。 Autocompleteで表示するデータである<li>要素についても当然D

    10万件のSelectBoxが作りたい
    mizchi
    mizchi 2023/05/24
    一種の kenall 案件な気がする
  • lizod: 1kb 未満の zod の精神的後継

    作った。 lightweight-zod だから lizod。 npm install lizod -S で使える。 tl;dr 各種フロントエンドCloudflare Workers で zod のビルドサイズが邪魔になっている メソッドチェーンと便利なユーティリティを全部捨てた zod 風のバリデータを作った zod の 57kb に対して lizod は 1kb 以下 これが動く // Pick validators for treeshake import { $any, $array, $boolean, $const, $enum, $intersection, $null, $number, $object, $opt, $regexp, $string, $symbol, $undefined, $union, $void, type Infer, type Valid

    lizod: 1kb 未満の zod の精神的後継
    mizchi
    mizchi 2023/05/23
    書いた
  • GitHub - mizchi/lizod: lightweight zod-like validator

    // Pick validators for treeshake import { $any, $array, $boolean, $const, $enum, $intersection, $null, $number, $object, $opt, $regexp, $string, $symbol, $undefined, $union, $void, $record, type Infer, type Validator, } from "lizod"; const validate = $object({ name: $string, age: $number, familyName: $opt($string), abc: $enum(["a", "b", "c"]), nested: $object({ age: $number, }), static: $const("st

    GitHub - mizchi/lizod: lightweight zod-like validator
    mizchi
    mizchi 2023/05/23
    軽量 zod 作った。本家が43K に対して 500B ぐらい。
  • Workers Browser Rendering API enters open beta

    The Workers Browser Rendering API allows developers to programmatically control and interact with a headless browser instance and create automation flows for their applications and products. Since the private beta announcement, based on the feedback we've been receiving and our own roadmap, the team has been working on the developer experience and improving the platform architecture for the best p

    Workers Browser Rendering API enters open beta
    mizchi
    mizchi 2023/05/20
  • Rust の 所有権、借用、ライフタイムについて初心者目線で説明と整理を試みる

    自分のブログを辿ってみたところ Rust を 2020 年には書いているようだが、初心者を名乗らせていただく。なぜならブログのネタにする以外で Rust 書いたことないし、これも調べながら書いているからだ。もっと練習したい、どこかに Rust を書ける機会ないかな〜チラッチラッ 👀 なぜありふれていそうな題材で書くか 題材はありふれているし解説もたくさんあるが、それらを読んで理解できるのか?という疑問がある。というのも、所有権、借用、ライフタイム自体についての説明は至る所で見るが、これらが無いと何が大変なのか、導入することで何が解決されるかがよく分からないと思うからだ。勿論、そのような点まで解説してくれているものもたくさんあるが、正直なところ Not for Me だった。何が Not for Me だったかというと、C++ の知識やコンピュータサイエンスの知識があることが前提になってい

    Rust の 所有権、借用、ライフタイムについて初心者目線で説明と整理を試みる
    mizchi
    mizchi 2023/05/20
  • ゼロランタイムで fetch に型をつけたい

    まだライブラリ化してないのと、フルパス対応してないけど、いじれば使えると思う。 これは何 こういう感じに fetch に型がついて動く import { type TypedFetch, JSON$StringifyT, JSON$ParseT } from "./typed-fetch"; const stringifyT = JSON.stringify as JSON$stringifyT; // こんな感じの記法で型情報を与える const fetch = window.fetch as TypedFetch<{ "/api/:xxx": { method: "GET"; bodyType: { text: string; number: number; boolean: boolean }; headersType: { "Content-Type": "application/

    ゼロランタイムで fetch に型をつけたい
    mizchi
    mizchi 2023/05/18
    作った。ご協力よろしくお願いします
  • ローグライト工場デッキ構築リソース管理防衛ゲーム『ShapeHero Factory』発表。『ビビッドナイト』手がけたアソビズム新作 - AUTOMATON

    アソビズムは5月16日、『ShapeHero Factory』を発表した。Steamストアページも公開されている。発売時期は2023年秋を予定している。 『ShapeHero Factory』は、工場、ローグライト、タワーディフェンスを融合させたゲームだという。舞台となるのは、とある地下室。机の上に広げた真っ白なスクロール(巻物)の上を舞台に戦いが繰り広げられるようだ。 ゲームプレイとしては、工場を整備し、ヒーローを量産し、ゲートの破壊阻止を目指すという。図形をコンベアで運び出し、キャンバス上で組み立てることでヒーローを生産。バトルはウェーブ制にて展開される。ヒーローは中央にあるゲートの破壊を阻止するという。プレイヤーはヒーローに指示することはできず、できることは工場をビルドするのみ。ヒーローたちの戦いを見守るのだ。 またウェーブをクリアするとさまざまな報酬を獲得。報酬で獲得したアーティフ

    ローグライト工場デッキ構築リソース管理防衛ゲーム『ShapeHero Factory』発表。『ビビッドナイト』手がけたアソビズム新作 - AUTOMATON
    mizchi
    mizchi 2023/05/18
  • The Bun Bundler | Bun Blog

    Bun.build({ entrypoints: ['./src/index.tsx'], outdir: './build', minify: true, // additional config }); Reducing complexity in JavaScriptJavaScript started as autofill for form fields, and today it powers the instruments that launch rockets to space. Unsurprisingly, the JavaScript ecosystem has exploded in complexity. How do you run TypeScript files? How do you build/bundle your code for productio

    mizchi
    mizchi 2023/05/17
  • GitHub Codespaces 雑感

    GitHub Codespacesをちょっと試した。 初期導入時にハマりどころも多いけど、真面目に設定しておけば、普通にCodespacesの環境だけで開発することは十分できそうだなと感じた。リポジトリ単位で環境を用意するのが基で、多くのリポジトリに対して毎日のようにレビューをしたりPull Requestを出したり、みたいな開発フローには綺麗にはまらないと思うけど、普通に仕事で単一のリポジトリに対してだけ作業する用途であれば上手くはまると思う。Zoomで会議しながら重い処理を実行していても影響が無いのは良かった。Zoomで会議しながら重い処理を回すべきではないという意見もある。 Codespacesの利用の流れ Codepsacesを利用するときの流れについて。まず、予め .devcontainer/devcontainer.json を配置したリポジトリを用意しておく。Codespa

    mizchi
    mizchi 2023/05/16
  • Scoped CSS is Back

    Several years ago, I made a plea to save scoped CSS. One of the top features on my CSS wishlist was on the chopping block, and despite a pretty big push from the community, it died. Well, great news — it’s back. And it’s so much better than the previous version. Even better, the W3C spec is mostly stable, and there’s a working prototype in Chrome now. We just need a little interest from the commun

    Scoped CSS is Back
    mizchi
    mizchi 2023/05/14
  • Chrome113でHTTPヘッダを上書きしていろんな状態をお試しできる - hogashi.*

    Chrome 113 で、 DevTools の Network ペインで HTTP ヘッダを好きなように編集して、いろんな状態をお試しできるようになっている。 What's New in DevTools (Chrome 113) - Chrome Developers で紹介されている。 GitHub から example.com を fetch してみる GitHub の CSP ヘッダを上書き example.com の CORS のヘッダを上書き 途中で指定したフォルダの中身は何? 上書きをやめるには? 感想 GitHub から example.com を fetch してみる 試しに、 CSP で外部への通信がそれなりに制限されている GitHub から、 example.com への fetch を成功させてみる (外部サイトへの通信は、認証情報や秘密の情報の漏洩などに気をつ

    Chrome113でHTTPヘッダを上書きしていろんな状態をお試しできる - hogashi.*
    mizchi
    mizchi 2023/05/14