タグ

devに関するginpeiのブックマーク (334)

  • 状態、結合、複雑性、コード量の順に最適化する - valid,invalid

    There’s No Such Thing as Clean CodeのHacker Newsコメント経由でコードやシステム設計・最適化についての良いコメントを見つけた。どうやらHacker Newsで何度も引用されているらしいが日語で言及された記事が見つからなかったので取り上げてみる。 コメントは2016年のSandi MetzのThe Wrong Abstractionに関するもので、発言者のcurun1rいわく「私は設計の優先順位をこの順序で学習することで、優れた開発者になれた」。*1 4つの基準と優先順位のガイドライン 状態 > 結合 > 複雑性 > コード量 私は状態 (state)、結合 (coupling)、複雑性 (complexity)、コード量 (code) の順に削減することでコードを最適化する。 コードがよりステートレスになるなら、結合を増やすこともいとわない 結

    状態、結合、複雑性、コード量の順に最適化する - valid,invalid
    ginpei
    ginpei 2023/11/05
    例えばステートレス実現のために結合を許容する、複雑性軽減のためコード複製を厭わない、というような順序付け。この優先度は感覚にも合ってる。「良い設計」言語化の中で一番好きかも。
  • Learn from the best - GitHub Resources

    GitHub Learning PathwaysUnlock the power of GitHub for your business with expert-guided learning pathways, accompanied by insights from industry leaders. Each pathway offers prescriptive tutorials to grow expertise and optimize GitHub for your organization. AI-powered development with GitHub CopilotTransform your engineering organization with GitHub Copilot. Get started by understanding how GitHub

    Learn from the best - GitHub Resources
    ginpei
    ginpei 2023/09/29
    GitHub Learning Pathways。公式チュートリアル。GitHub Actionsの作り方とかリポジトリー操作権限の管理とか。
  • GitHub - eslint-community/eslint-plugin-n: Additional ESLint rules for Node.js

    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 - eslint-community/eslint-plugin-n: Additional ESLint rules for Node.js
    ginpei
    ginpei 2023/08/09
    Node.js関係のESLintルールセット。module.exportsやrequire()まわりとか、APIをpromisifyするかとか、__dirnameをpath.join()なしで使えるかとか。
  • Introducing Turbopack: Rust-based successor to Webpack – Vercel

    Vercel's mission is to provide the speed and reliability innovators need to create at the moment of inspiration. Last year, we focused on speeding up the way Next.js bundles your apps. Each time we moved from a JavaScript-based tool to a Rust-based one, we saw enormous improvements. We migrated away from Babel, which resulted in 17x faster transpilation. We replaced Terser, which resulted in 6x fa

    Introducing Turbopack: Rust-based successor to Webpack – Vercel
    ginpei
    ginpei 2022/10/27
    Webpack作者Tobias Koppers氏による後継ツール。Rust製で最新のメモ化機構を備え700倍高速とのこと。まだアルファ版でNext.js 13から利用可能
  • Dotenv

    ginpei
    ginpei 2022/10/06
    環境変数の設定ファイル.envをチームで共有するサービス。
  • Netlify App

    Start building the best web experiences in record time

    ginpei
    ginpei 2022/09/10
    HTMLの静的ファイルを含むフォルダーを単純にアップロードして公開できるサービス。未ログイン状態だと1時間で消える。
  • Introduction - mdBook Documentation

    Introduction mdBook is a command line tool to create books with Markdown. It is ideal for creating product or API documentation, tutorials, course materials or anything that requires a clean, easily navigable and customizable presentation. Lightweight Markdown syntax helps you focus more on your content Integrated search support Color syntax highlighting for code blocks for many different language

    ginpei
    ginpei 2022/09/03
    Markdownからドキュメント用サイトを構築するツール。Rust製でcargoからインストール。
  • UX Core

    The tool consists of 210 hands-on examples of cognitive biases use in software development for better user experience (UX).

    UX Core
    ginpei
    ginpei 2022/08/25
    ソフトウェア開発に関する認知バイアス(思考パターン)の説明と実例。100件以上。項目同士の関連リンクでジャンプもできる。また上部タブで、バイアス選択してペルソナを作成できる。
  • GitHub - Wilfred/difftastic: a structural diff that understands syntax 🟥🟩

    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 - Wilfred/difftastic: a structural diff that understands syntax 🟥🟩
    ginpei
    ginpei 2022/04/01
    差分閲覧ツール。言語の構文を理解し適切な箇所で区切った差分を見せてくれる。コメントや文字列あたりには色も付けてくれる様子。RustのCargoでインストール。
  • Amazon EC2 Instance Types - Amazon Web Services

    Amazon EC2 provides a wide selection of instance types optimized to fit different use cases. Instance types comprise varying combinations of CPU, memory, storage, and networking capacity and give you the flexibility to choose the appropriate mix of resources for your applications. Each instance type includes one or more instance sizes, allowing you to scale your resources to the requirements of yo

    Amazon EC2 Instance Types - Amazon Web Services
    ginpei
    ginpei 2022/03/12
    AWS EC2のインスタンスごとの説明。比較表はない。自分で頑張って読むとT3aは同種のものより10%お得とかT4gはT3より40%お得とか書いてある。
  • 2022年におけるフロントエンド開発のベースライン

    LINE株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。 LINEヤフー Tech Blog TL;DR:2022フロントエンド開発で最も考慮すべきユーザー環境は、パフォーマンスでは低スペックのAndroid端末、標準仕様では2年前のSafari、そしてネットワークでは4Gです。それに対してはJSへの過剰依存などが原因で主にパフォーマンスの面でのウェブ全体の対応がよくありません。 こんにちは!LINEフロントエンド開発室のダバロス アランです。この記事のタイトルを見て「釣りタイトルですね〜」と考えている方がいると思いますが今回に限ってはそれを大目に見てください。それはなぜかと言いますと、2021年から2022年にかけて私たちフロントエンドエンジニアが全体的に考え方を改める必要が出るほど大きな変化がありました。 その変

    2022年におけるフロントエンド開発のベースライン
    ginpei
    ginpei 2022/01/27
    データ提示多い安心記事。2年前Safari、安いAndroid、4G回線を現代の基準線に。速度(Core Web Vitals)とアクセシビリティ不十分サイト多い。IEを落とすと機能をフルに使えてサイズも減る。静的サイトは専用ツール優位が顕著。
  • rjとtとjqコマンドでHTTPレスポンスを試験する - ゆーすけべー日記

    Web 開発者は HTTP レスポンスをよく見る。 以前 CDN を導入する際に、キャッシュがヒットしているかどうか、どこのエッジがキャッシュを返しているかを確認するためにヘッダをよく見ていた。また、ヘッダだけではなく、TTFB といったレスポンスタイムも気にしている。とにかく HTTP レスポンスをよく見る。 HTTP レスポンスを確認する3つの方法 Chrome さえあれば DevTools を見て一目瞭然である。 とはいえ、コマンドラインで確認したい時がしばしばある。 GUI を操作するよりも手軽である。 その場合はcurlコマンドを叩けばよい。 これでプロトコル、ステータス、ヘッダが分かる。 また、レスポンスタイムを測りたければ、その名もttfb.shというcurlをラップしたコマンドラインツールがある。 https://github.com/jaygooby/ttfb.sh この

    rjとtとjqコマンドでHTTPレスポンスを試験する - ゆーすけべー日記
    ginpei
    ginpei 2022/01/22
    rjでウェブAPI結果取得、jqでJSON解析して抽出、tで試験。パイプで繋げてCLIから利用。返却内容の試験の他、死活監視や応答時間計測も。
  • 加賀さんと僕 5 〜艦これウィジェットと個人開発を継続する技術〜

    書きました。 2021年、個人開発アドベントカレンダーの6日目です。 https://qiita.com/advent-calendar/2021/personal-project

    加賀さんと僕 5 〜艦これウィジェットと個人開発を継続する技術〜
    ginpei
    ginpei 2021/12/09
    利用者がいて技術的な面白みもある状態が最高だが通常そこに留まらないので、逆に両者なくなる手前で踏み止まると長期継続できると。RC版で利用者確認、技術をプラグイン化して分離、諸々を自動化。
  • GitHub - marteinn/The-Big-Username-Blocklist: This is a opinionated blocklist of words that you might not like to see used as usernames in your service.

    This is a opinionated blocklist of words that you might not like to see used as usernames in your service (think username.domain.com, domain.com/username or username@domain.com). The editable blocklist can be found in list_raw.txt and is categorized into six sections: Privileges User privilege terms to prevent faked authority. Example: root, super Code: Programming terms that you might want to avo

    GitHub - marteinn/The-Big-Username-Blocklist: This is a opinionated blocklist of words that you might not like to see used as usernames in your service.
    ginpei
    ginpei 2021/11/15
    ユーザー名というかscreen nameに不適切なもの一覧。adminやlogin、404、.htaccess等々。URL等で使う設計のときに弾くと良いもの。
  • Your code displays Japanese wrong

    A static site to link people to when their code is displaying Japanese wrong. View the Project on GitHub heistak/your-code-displays-japanese-wrong Why am I here? If someone gave you a link to this page, that person probably thinks your code displays Japanese wrong. In short, from a native Japanese eye, yѳur ҭєxҭ lѳѳκs κιnd ѳf lικє ҭЋιs. This page will give you a brief description of the glyph appe

    ginpei
    ginpei 2021/10/28
    日本語が中華系フォントになっているとき開発者へ伝えるべき内容。どうおかしいのか、どう修正するのか、そんなに重要なのか。"imagine your єnglιsЋ ҭєxҭ lѳѳks lικє ҭЋιs"
  • Content EditableでWYSIWYGエディタ作るの楽しい! - maru source

    こんにちは丸山@h13i32maruです。 僕は今、Ubie Discoveryで医療従事者向けのカルテエディタを作っています。人生で初めてContent Editableを使ってエディタを作ってるんですが、それがすごく楽しいです!というのも、エディタを作るには色々技術的な課題があります。例えば、テキストをパースするには?ASTからHTMLをビルドするには?パフォーマンスのよい更新方法は?などなど。それらの技術的な課題を解決していくのが単純に楽しいという感じです。また、車輪の再発明は極力抑えつつ、自分たちのプロダクトでやりたいことを実現できるような工夫もしています。 というわけで、今回はそんなエディタ作りで取り組んだ課題と解決策を紹介していきたいと思います。 (訳: 楽しかったので、誰かに聞いてもらいたい!) エディタの概要 メンテしやすいテキストパーサ - PEG.js メンテしやすいH

    Content EditableでWYSIWYGエディタ作るの楽しい! - maru source
    ginpei
    ginpei 2021/07/14
    Markdownみたいな、文法と表現のエディター。execCommand()なし。プラグイン機構で疎結合、責務で分割し単方向へ依存、入力と処理を混合しない、構文解析器を用意してAST、試験や文書を用意。感動的に綺麗な設計っぽい。
  • How good is your logo?

    Giacomo Urgeghe Top 1% Logo designer on Upwork The site could be a great tool! especially for newbie designers or even for me who have 20 years of experience to verify that my projects have no design issues. Kiana Rickard Top 1% Logo designer on Upwork This logo tester could really benefit someone who is new to logo design or unfamiliar with the best logo guidelines to follow. This website will pr

    How good is your logo?
    ginpei
    ginpei 2021/06/25
    ロゴの独自性、複数の背景色や縮小時における視認性、色遣いから転用のしやすさ他を評価するツール。類似のロゴを探して見せてくれる。
  • GitHub - google/zx: A tool for writing better scripts

    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 - google/zx: A tool for writing better scripts
    ginpei
    ginpei 2021/05/12
    シェルスクリプトをJavaScriptで書く、みたいなnpmパッケージ。await $`cmd`でコマンド実行して出力を得たり、cdやfetchが簡単だったり、readlineラッパーで入力を得たり。シェル変更可能。npm前提のウェブ系環境で強そう。
  • DocBaseのフロントエンド改修をどのように進めたか

    こんにちは、クレイの阪です。 もともと外部委託パートナーとしてクレイ案件のお手伝いをしていましたが、気づけば中の人となっていました。 よろしくお願いいたします。 先日、DocBaseはフロントエンド構成を Backbone.js+Coffeescript から React.js+TypeScript へ移行しました。大改修です。 どれくらい大きな変更だったかというと、10万行(2500ファイル)もの変更が行われ、それまでRubyだったはずのリポジトリ代表言語がTypeScriptに替わってしまったほどでした。 なお、2021/3/31のリリースでリニューアルすべてが終了したわけではありません。今後、機能拡張やUI改善をしやすくするための足がかりという位置づけです。 安全にリリースするためテスト期間を多めに取ったこともあり、期間としては1年ほどかかってしまいました。 今回はどのようにリニュ

    DocBaseのフロントエンド改修をどのように進めたか
    ginpei
    ginpei 2021/05/11
    『フロントエンド構成を Backbone.js+Coffeescript から React.js+TypeScript へ移行』すごすぎ。しっかり計画立て実施。まず部分的に変更、裏側やE2E試験、UI等は維持、CSSクラスは維持の後CSS in JSへ置き換え、週1で認識合わせ。
  • Next.jsアプリをVercelからGoogle Cloudに移行した話

    ZennではフロントエンドNext.jsを使っています。もともとはVercelで動かしていたのですが、2021年3月にGoogle Cloudに移行しました。今回は移行を決めた理由や、具体的な構成、移行作業などについて書きたいと思います。 なぜ移行したのか Next.jsのデプロイ先としてVercelは圧倒的に優れています。ISRやImage OptimizationといったNext.jsの強力な機能をサーバー側の追加設定なしで使用できますし、CDNでの静的ファイルのキャッシュなども特に意識しなくてもいい感じにやってくれます。 Vercel以外にデプロイするとなると、Next.jsの一部の機能がうまく動かなかったり、パフォーマンス・チューニングを自分で頑張る必要があったりと自分で面倒を見なければならない部分が多くなります。 しかし、Zennのケースでは以下のような理由からVercelから

    Next.jsアプリをVercelからGoogle Cloudに移行した話
    ginpei
    ginpei 2021/03/30
    元々GCP利用なので親和性の向上、依存先の低減、値段。GCPでISRは使えないが近い挙動は実現可能。一部機能や開発環境は先に移行し、負荷試験も済ませ、詳細な手順書を用意して当日のミスを防ぐ。