codehexのブックマーク (640)

  • Twemojiが2023年になると表示されなくなる問題に対処する (解消)

    この記事は 2022年12月26日 に書かれた記事です。 2023年1月10日~2023年1月17日にかけて、絵文字画像が表示できない期間が発生しました。 Twitter がオープンソースで提供している絵文字セット Twemoji を使えば、HTML 内に出てくる絵文字を、簡単に Twitter と同じデザインの絵文字画像に変換することができます。 しかし、デフォルトのまま使っている場合、 『2023年になって、突然絵文字画像が表示されなくなる』 なんてことになりかねないので、現在 Twemoji を使用している場合は注意が必要です。 この問題、あまり注目されていないみたいなので、啓蒙活動で記事にしました。 🆙 更新: 2023年1月13日 この記事に記すように、 『MaxCDN が廃止され、レイオフで Twitter による Twemoji の更新が期待できない状況』 であるため、レイ

    Twemojiが2023年になると表示されなくなる問題に対処する (解消)
    codehex
    codehex 2022/12/26
    怖すぎる
  • 新NISAとは。新NISAつみたて投資枠、成長投資枠と旧NISAの徹底比較 - たぱぞうの米国株投資

    新NISAとは。新NISAつみたて投資枠、成長投資枠と旧NISAの徹底比較 令和5年度の与党税制改正大綱が発表され、2024年からNISA制度が大幅にリニューアルされることになりました。 こちらの表がわかりやすいと思います。とりあえず「新NISA」と呼ぶことにします。 新NISA積立投資枠、成長投資枠と旧NISAの比較 ひとことで言えば、従来の一般NISAつみたてNISAを合体したものが「新NISA」になります。「新NISA」には つみたて投資枠 成長投資枠(仮称) という、2つの区分が用意されます。 新NISAのつみたて投資枠と成長投資枠とは これまでは、「つみたてNISA」か「一般NISA」か、どちらかを選ぶ必要がありましたが、「新NISA」はタイプが違う投資枠を、併用することができるようになりました。 さらに、非課税保有期間・口座開設期間ともに「無期限」になりました。既に多くの方が

    新NISAとは。新NISAつみたて投資枠、成長投資枠と旧NISAの徹底比較 - たぱぞうの米国株投資
    codehex
    codehex 2022/12/18
  • 500点出す! - ゆーすけべー日記

    「Web Speed Hackathon 2022」という「非常に重たいWebアプリをチューニングして、いかに高速にするかを競う競技」があります。 リモート参加で11月1日から27日まで開催されています。 ここで言う「高速」とはCore Web Vitalsのスコアが高いことを言い、Lighthouseのスコアをベースにした500点満点の争いです。 ISUCONのフロントエンド版ですね。 以前にも同じ課題で「学生向け」と「社内(サイバーエージェント)向け」が行われたらしく、まだ500点を出した人はいません。 そこで僕は「満点を出したい」と思い、初日から、いやむしろフライングしていたからその前から頑張ってきました。 そして、先日(17日)、ついに500点満点を出しました! たぶん、レギュレーションはクリアしている、はずです(もし違反してたらすいません…)。 自動で行われる「Visual Re

    500点出す! - ゆーすけべー日記
    codehex
    codehex 2022/11/21
    凄い!取ってみたい!
  • 勘を減らしてテクノロジーの力でエンジニア組織を応援したい|Findyに入社しました👍 - Blog::kobaken

    こんにちは。こばけんです。 8月末に約11年半勤めたモバファクを退職して、9月からFindyで働きはじめました。 モバファクでは、エンジニアとして新卒で入社し、プロダクトマネージャー、エンジニア組織開発責任者など任せていただき、たくさんの方にお世話になりました。ここ数年のモバファクでの仕事エンジニア組織全体を改善する仕事でしたが、こちらをこじらせ、まだやるべきことはありつつも退職をさせていただました。応援の言葉をかけていただいた同僚に感謝してます。ありがとうございます。ありがとう。 Findyは、五反田の会社のよしみで繋がってはいましたが、正直入社することは想像していませんでした。が、今はもっと早く知っていれば良かったと思ってます。技術コミュニティに育てられた恩があるので、技術に関わる人や組織に向けたプロダクトを作りたいと思っていました。また、エンジニア採用も組織も問題を抱えてない会社は

    勘を減らしてテクノロジーの力でエンジニア組織を応援したい|Findyに入社しました👍 - Blog::kobaken
    codehex
    codehex 2022/09/14
    おめでとうございます🎉
  • WebKit on GitHub!

    On June 23rd, the WebKit project froze its Subversion tree and transitioned management and interaction with our source code to git on GitHub. Why git? git’s distributed nature makes it easy for not just multiple developers, but multiple organizations to collaborate on a single project. git’s local record of changes makes moving commits between branches or reverting changes simple and quick. git’s

    WebKit on GitHub!
    codehex
    codehex 2022/09/01
    Webkit が GitHub に来た!
  • How I/we got 2k stars - ゆーすけべー日記

    Honoという僕が作っているWebフレームワークのGitHubスター数が2,000に迫ってきた。これまで作ってきたOSSのソフトウェアでは最高で revealgo の221、次点で gh-markdown-preview の134だ。それが一気に2,000である。 もちろん、スターの数がソフトウェアの良し悪しを決めるものではない。 それに2,000はとりわけ多いわけではない。 でも、以前の自分には遥か彼方に見えていた数を獲得できたのは、とても嬉しいことだ。 去年12月から作り始めて9ヶ月間、552コミット。 今や使ってくれる人も増えた。 cdnjs のAPI Serverのバックエンドにも使われているし、 HonoをきっかけにGitHubスポンサーをしてくれている企業や人も現れている。 なにより、いろんなことを勉強させてもらった。 今回はHonoというプロダクトがどうやって2,000のスタ

    How I/we got 2k stars - ゆーすけべー日記
    codehex
    codehex 2022/08/22
    めっちゃいい話だった…‼︎ おめでとうございます🎉
  • IT駆使して人気だった「ブルースターバーガー」なぜ閉店? プロが指摘する「接客不要」の落とし穴

    IT駆使して人気だった「ブルースターバーガー」なぜ閉店? プロが指摘する「接客不要」の落とし穴:長浜淳之介のトレンドアンテナ(1/7 ページ) 焼肉のファストフード「焼肉ライク」で、コロナ禍を吹き飛ばす快進撃を続けるダイニングイノベーション(東京都渋谷区)。同社が低価格・高品質のハンバーガーに挑んだ「ブルースターバーガー」が7月31日に全店閉店した。 ブルースターバーガーは、2020年11月10日、東京・中目黒の山手通り沿いに誕生。オープン当時は店の前に黒山の人だかりが連日できるほどのすさまじい人気。それが半年ほどは続いただろうか。目標とした全国2000店もすぐに達成できそうな勢いを感じた。 しかし、店舗数は思ったように伸びず、今年になって次々に閉店。最後まで残っていた創業店の中目黒店も閉店してしまった。わずか2年足らずの短いブランドの命をあっけなく終えた。 ブルースターバーガーは、IT

    IT駆使して人気だった「ブルースターバーガー」なぜ閉店? プロが指摘する「接客不要」の落とし穴
    codehex
    codehex 2022/08/16
  • Goにおける型によってSQLインジェクションを防ぐ方法

    はじめに 2022年のセキュリティ・キャンプ全国大会に講師として参加しました。その際に、Goにおける脆弱性への対策はどうなっているのか調べました。この記事では、github.com/google/go-safeweb/safesqlがどのようにSQLインジェクションを防いでるのかについて解説します。 なお、@rungさんの文書を多いに参考にしております。また、セキュリティ・キャンプで用いた資料はこちらから閲覧できます。 SQLインジェクションとは? 独立行政法人情報処理推進機構(IPA)が公開している安全なウェブサイトの作り方を見ると、SQLインジェクションは以下のように説明されています。 データベースと連携したウェブアプリケーションの多くは、利用者からの入力情報を基にSQL文(データベースへの命令文)を組み立てています。ここで、SQL文の組み立て方法に問題がある場合、攻撃によってデータベ

    Goにおける型によってSQLインジェクションを防ぐ方法
    codehex
    codehex 2022/08/12
    頭いいなー
  • GitHub Actions の setup-go や setup-node で指定されるバージョンを go.mod や .node-version から取ってくる - stefafafan の fa は3つです

    たとえばGoで書かれているプロダクトのCIをGitHub Actionsでやっていて、Goのバージョンがあがるたびにこのファイルを毎回ちまちま更新しているとあまり面白味のない作業になってしまう。最近だとGo 1.18 から 1.19 にあげるときに以下の go-version に書いてる数字を 1.19 にあげる必要があった。 steps: - uses: actions/checkout@v3 - uses: actions/setup-go@v3 with: go-version: 1.18 - run: go version actions/setup-go@v3.1.0 からは go-version-file に go.mod のパスを指定することによってそこからバージョンを取得して使ってくれるようになった。便利。 .go-version にも対応しているようです。 github.

    GitHub Actions の setup-go や setup-node で指定されるバージョンを go.mod や .node-version から取ってくる - stefafafan の fa は3つです
    codehex
    codehex 2022/08/11
    便利!ありがとうございます!
  • Slack から Discord へ移行した - アルパカの徒然文

    Join code-hex workspace on Slack. から入れる。自分の学習した内容だったり、メモ、何かしらのスニペットを雑に投稿するための Slack を運営していた。 Slack へ投稿しておくことで、後で自分が見返したくなった時に検索機能を利用して情報を引っ張ってくるのにとても便利だった。また他人のツイートに関して、その URL を投稿しておくことでオリジナルが削除されても、スナップショットとしても残るので便利だった。 しかし 2022 年 9 月 1 日から Slack のフリープランの内容が改定されることになった。フリープランの変更に関するよくある質問によると、ワークスペースにある 90 日が経過したメッセージやファイルのデータは全て非表示になり、有料プランへアップグレードしなければアクセスできなくなってしまう。 これでは今まで投稿したコンテンツを見返せなくなってし

    Slack から Discord へ移行した - アルパカの徒然文
    codehex
    codehex 2022/08/02
    移行したのでその様子を書きました
  • 見積・提案書に書いておくと不幸を減らせる前提条件

    はじめに ちょっとつぶやいたら思いのほか需要がありそうだったので、簡単にまとめておきます。 おことわり これを書いておけば、すべての不幸を避けられるというものではありません 提出先との関係性次第では、書かないほうがいいこともあるかも 私自身が普段提案している内容が、すべて記載されているわけでもありません(うろ覚えで書いてたり、大人の事情) これを流用しておこったすべての事項について、何らかの責任をとることはできません 稿では請負による開発を想定しています でも共有することで、この業界の不幸が減ればいいなということでつらつら書いてみます。 他にもあるようなら、Twitterなりコメントなりで提案してもらえると嬉しいです。 前提条件を書く目的 見積・提案書通りに、実施するために必要な条件を明確にする 条件を逸脱したときに、どうなるのかハッキリさせる 上記は概ねつぎのとおり 実現が不可能になる

    見積・提案書に書いておくと不幸を減らせる前提条件
    codehex
    codehex 2022/08/02
  • MySQL/Postgres におけるトランザクション分離レベルと発生するアノマリーを整理する

    読者対象 ANSI 定義の古典的なトランザクション分離レベルとアノマリーは概ね理解している MySQL/Postgres では理論的な部分がどうなっているのかを知りたい 理論面の前提知識 2022-08-19 追記: 社内勉強会向けのスライドを作成しました。先にスライドを見てから,引用文献およびこの記事を読むと理解が深まると思います。 まず ANSI 定義の古典的な定義を聞いたことが無い方は,以下のリンクを参照されたい。 ANSI 定義に対応する解説はこれらのサイト以外にもたくさんあるため,自分にとって読みやすいと感じる情報をあたってほしい。(既に熟知されている方は十分) 次点で読んでいただきたいのが, @kumagi さんの以下の記事。古典的には 4 つの分離レベルと 3 つのアノマリーだけで説明されていたものの,不十分であることが学術的に指摘され,解像度を上げようとする流れが後になって

    MySQL/Postgres におけるトランザクション分離レベルと発生するアノマリーを整理する
    codehex
    codehex 2022/08/01
    多すぎて覚えられる気がしないので定期的に見直す!
  • はじめてのCloudflare D1アプリ

    D1はローカルで動く 5月にClouflare D1が発表されました。ヤバいらしいです。 まだベータすら出てません。PrivateなEarly Accessがありますが、僕はもらってません。でも早く触ってみたい!じゃないっすか。で、よく見てみると、Cloudflare Workersのローカル実行環境のMiniflareにはD1をエミュレートするブランチがもうすでにあるのです。 また、Cloudfalre Workersの公式CLIであるWranglerはそのMiniflareをローカル向けに内包しています。そしてWranglerにもD1に対応させたブランチがあります。ちょっと前まで動かなかったけど、最近動くようになりました。 ってことは、D1はベータすら出てないけど、ローカルでは動くということで、はじめてのD1アプリを作ってみました。 Internal 作る前にMiniflareとWra

    はじめてのCloudflare D1アプリ
    codehex
    codehex 2022/08/01
    スキーマのマイグレーションどうやるのか気になる
  • そのファイル、本当に hooks/・utils/ に入れるんですか? ―― React プロジェクトを蝕む「見かけ駆動パッケージング」 - Qiita

    そのファイル、当に hooks/・utils/ に入れるんですか? ―― React プロジェクトを蝕む「見かけ駆動パッケージング」設計アンチパターンReact 結論 (2023/06/03 追記) React の開発においては、 コロケーション Co-location の原則に従って、ファイルをディレクトリごとに分類しましょう。チームメイトや将来の自分にとって分かりやすいコードベースになります。 スキット「書くときは楽だけど...」 == 某日 == 太郎くんの今日のタスクは、「トーストを作る」です。 イメージ図 太郎くん 「コンポーネントを作るから..」 「ファイルの場所は components/Toast.tsxでええか。」 「useState でローカルに状態管理して、表示を切り替えればええやろ。」 太郎くん「ヨシ!」 この記事は、拙スクラップの一項目をモノローグ形式で分かりやす

    そのファイル、本当に hooks/・utils/ に入れるんですか? ―― React プロジェクトを蝕む「見かけ駆動パッケージング」 - Qiita
    codehex
    codehex 2022/07/24
    ナイス記事 hooks ディレクトリ作ってたけど Go っぽく概念ごとにディレクトリきってやろう
  • GitHub - huachaohuang/awesome-dbdev: Awesome materials about database development.

    The Five-Minute Rule for Trading Memory for Disc Accesses (1987) The Five-Minute Rule 10 Years Later, and Other Computer Storage Rules of Thumb (1997) The Five-Minute Rule 20 Years Later, and How Flash Memory Changes the Rules (2007) The Five-Minute Rule 30 Years Later, and its Impact on the Storage Hierarchy (2017) The Design and Implementation of a Log-Structured File System (1991) This paper pr

    GitHub - huachaohuang/awesome-dbdev: Awesome materials about database development.
    codehex
    codehex 2022/07/18
  • Cloudflare Workers でも Firebase Authentication を使えるぞ!!

    Cloudflare Workers では KV だったり Durable Objects や R2 などといった外部ストレージへアクセスをして何かしら操作するようなプログラムを動かすことができます。しかし、誰でもその操作ができてしまうとセキュリティ面や使用料の面で問題が発生します。 interface Env { ANYBUCKET: R2Bucket } // 誰でもファイルアップロードできちゃう Worker :pien: export default { async fetch(request: Request, env: Env) { const formdata = await request.formData() const imagedata = formdata.get("imagedata") if (imagedata === null) { throw new Er

    Cloudflare Workers でも Firebase Authentication を使えるぞ!!
    codehex
    codehex 2022/07/10
  • 排他制御のためだけに Redis 渋々使ってませんか?データベース単独でアドバイザリーロックできるよ!

    トランザクション分離レベルについての教養があったほうがこの記事の内容を理解しやすいため,必要に応じてまず以下を参照されたい。 背景 以前, Qiita で以下の記事を投稿した。今回の議題に直接的な関係はないが,関連している部分があるため引用する。 MySQL/Postgres とも, MVCC アーキテクチャの恩恵で, SELECT と UPDATE は基的には競合しない。 単一レコードのシンプルな UPDATE でも排他ロックされ,排他ロック中のレコードへの UPDATE での変更操作は トランザクション分離レベルによらず ブロックされる。UPDATE 文に含まれる WHERE 句での検索もブロックされ,これはブロックされない SELECT による検索とは別扱いになる。 但し UPDATE 文の WHERE 句上で,更新対象をサブクエリの SELECT から自己参照している場合は例外。

    排他制御のためだけに Redis 渋々使ってませんか?データベース単独でアドバイザリーロックできるよ!
    codehex
    codehex 2022/07/07
    MySQL の GET_LOCK はコネクションが切れたりしたせいで RELEASE_LOCK に失敗してしまうこととかを考えるとタイムアウトの指定が必須だと思ってる
  • Cloudflare Workers で使えるグローバル変数を一覧する - アルパカの徒然文

    Cloudflare Workers では Module Worker Syntax と Service Worker Syntax の2つの記述方式が存在している。 Service Worker Syntax を利用している場合、環境変数はすべてグローバル変数として利用可能になる。 この方法はデバッグ目的とかで使える多分便利な技である。 addEventListener('fetch', (event: FetchEvent) => { // @ts-ignore console.log({ ...global }) event.respondWith(new Response("Hello, World!!")) }) コードを読んで分かる通り、グローバルで扱えるものすべて global 変数に格納されている。これは @cloudflare/workers-types にも定義されてい

    Cloudflare Workers で使えるグローバル変数を一覧する - アルパカの徒然文
    codehex
    codehex 2022/07/07
    Cloudflare Workers で使えるちょっとした裏技を書きました(短文)
  • React、過剰に複雑な代物。 - Qiita

    はいさい!ちゅらデータぬオースティンやいびーん! 今回の記事は筆者に珍しく、技術紹介ではなく、僕の個人的な意見を書きます。あくまでも、自説です。 React自体は画期的で、プログラミング界に貢献したプロジェクトだと思っていますし、完全に否定したいわけではありません。 Reactに対する違和感=芽生えては大きく育った種 筆者はReactがとても好きでした。JavaScriptが好きになったきっかけもReactでした。何から何までもReactで書き直して、Custom Hooksを作って、refを子部品に渡したり、バリバリ満喫していました。 Vue仕事の関係で習得せざるを得なくなったのですが、Vueは最高に大嫌いでした。これならReactで書き直してやるぅ!と思ったりも。 Reactについて社内でも導入を推進したり、React入門の勉強会を開いたりもしています。 しかし、そんな筆者は、最近に

    React、過剰に複雑な代物。 - Qiita
    codehex
    codehex 2022/07/07
    CustomHookの話はそもそもリアクティブプログラミングが難しいのはありそう 色んな気持ちは理解できる感じ
  • CloudflareでもFastlyでもVercelでもDenoでもBunでもService Workerでも動く

    HonoというWebフレームワークを作っています。 当初はCloudflare Workers向けに作っていたのですが、同じCDNであるFastlyのエッジランタイム、Compute@Edgeでも動くことが分かりました。また、Next.jsのEdge MiddlewareもしくはEdge API RoutesとしてVercelの環境でも動きます。そして、少々手を加えるとDenoでも動きました。もちろんDeno Deployにもデプロイできます。さらに、先程レポジトリが一般公開されたYet AnotherなJavaScriptランタイムのBunでも手を加えず動きました。 この「CloudflareでもFastlyでもVercelでもDenoでもBunでも動いた件」が、なかなか面白かったのでそれについて書きます。 Web標準のAPI これらの環境で同じように動くのは、JavaScriptでかつ

    CloudflareでもFastlyでもVercelでもDenoでもBunでもService Workerでも動く
    codehex
    codehex 2022/07/07
    どこエッジでも動くの凄すぎる