タグ

ブックマーク / qiita.com (1,746)

  • tsserverをデバッグする - Qiita

    TypeScriptリポジトリのwiki にVSCodeを利用したデバッグ方法が記載されていたのですが、tsserver自体のデバッグだけだったらもっと簡単に出来るのでメモ tl;dr 単にnodeのデバッグを普通にVSCodeなりchromeのinspectorなりでやるだけです 手順 TypeScriptのリポジトリを取得 ビルドを実施 tsserver.jsをnodeから --inspect フラグ付きで実行 tsserverのプロセスにデバッガからアタッチする tsserverのプロセスに任意のコマンドを投げつけて適当にデバッグする TypeScriptのリポジトリを取得 普通にcloneしましょう https://github.com/microsoft/TypeScript.git ビルドを実施 普通にビルドしましょう。至って普通です ビルド結果は built/local に吐

    tsserverをデバッグする - Qiita
  • Blitz.jsの議論から学ぶ,formik vs react-final-form vs react-hook-form - Qiita

    const { register, handleSubmit } = useForm(); const firstNameRef = useRef(); const onSubmit = data => console.log(data); return ( <form onSubmit={handleSubmit(onSubmit)}> <input name="firstName" ref={(e) => { register(e) // hook-form register firstNameRef.current = e // manually assign your ref }} /> ref={ref}で渡したいのに…。 react-final-formのデメリット render propsが初心者には難しいのではないか?というコメントがいくつかあった。 基的にrender

    Blitz.jsの議論から学ぶ,formik vs react-final-form vs react-hook-form - Qiita
  • Slack社はSlackをどう使っているのか - Slack利用ガイドラインの話 - Qiita

    GitLab社のGitLab Handbookと徹底した文書化、組織的なオープンネス(?)を先日調べたのだが、じゃあ同じように見える化、透明性をアピールしているツールが何か?と考えた際ににSlackがあると思っている。SlackといえばDM禁止!オープンな職場が良し!風通し良し!なやつである。 しかしそれを実際会社で根付かせようとした時に、Slackの使い方を説くだけでは足りなくて、むしろ皆の意識改革みたいなものが必要だな~とひしひし感じさせられる。オープンな会社が良いかクローズドが良いか、「チームの風通しは良いほうが良いのか?」 世の中ひねた人も居るもんで風通しだけ良くてもこんなデメリットが有るなんて言われる 意見は増えても、内容が浅い 意見の浅い深いを確認する手間がかかる 浅い意見でも対応しなければならない 多数派の浅い意見に流されがちになる https://factory-learn

    Slack社はSlackをどう使っているのか - Slack利用ガイドラインの話 - Qiita
  • TypeScript 3.0 の Project reference(プロジェクト参照) やってみた - Qiita

    TypeScript 3.0 がリリースされました。 Announcing TypeScript 3.0 / TypeScript 追加機能のひとつ、Project references は、ちょうど仕事で「どうするのがいいの?」と迷ってたところだったので、さっそくやってみました。 話としてはよくある、 複数のプロジェクトから参照される "共通プロジェクト" の在り方 です。 Project Reference 適用以前 Project Reference 適用前(つまり現状)は、次のような構成になっていました(説明簡略化のため、client -> shared のみを書いてますが serverside からも shared を参照しています)。 root ├── client │ ├── tsconfig.json │ └── src │ └── main.ts └── shared └

    TypeScript 3.0 の Project reference(プロジェクト参照) やってみた - Qiita
  • MacVim-KaoriYa から MacVim + vim-kaoriya に移行する - Qiita

    MacVim-KaoriYa から MacVim + vim-kaoriya に移行してみました。 splhack/macvim-kaoriya: MacVim-KaoriYa MacVim by macvim-dev koron/vim-kaoriya: Vim+kaoriya build system 方針 MacVimvim-kaoriya の中身を変更しない。 MacVim-KaoriYa 固有の vimrc 設定を極力反映する。 UTF-8 と CP932 でエンコーディングされたファイルを変換不要にする。 macOS 以外でも極力影響のない vimrc にする。 手順 MacVimvim-kaoriya のインストール brew install macvim test -d ~/.vim || mkdir ~/.vim git clone https://githu

    MacVim-KaoriYa から MacVim + vim-kaoriya に移行する - Qiita
  • .eslintignore の配置場所は気をつけた方がいい - Qiita

    ESLint v8.25.0 以降から .eslintignore は廃止されました。 今後はESLintの設定ファイルの ignores で指定することになります。 以下は ESLint v8.25.0 より古いバージョンの記事になります。 ESLintを使っていて割と細かい設定が必要なのでメモしておく. .eslintignore と .gitignore は同じ様な役割だが扱い方が全く違います. この違いを分かってないと期待した動作にはなりません. そこで具体的な違いを整理しました. TL;DR .eslintignore はプロジェクトルートに配置する. eslintrcで "root": trueを指定して同じディレクトリに配置するといい. .eslintignore はサブディレクトリには配置しない Dotファイル(.babelrc.js等)もチェック対象にするなら .esli

    .eslintignore の配置場所は気をつけた方がいい - Qiita
  • Angular 8→9→10→11でビルド時間がどれくらい早くなっているかみてみよう! - Qiita

    ng serveでは、外部ライブラリをまとめるvendor.jsやstyle.jsが 9 → 10,11で半分近く削減されており全体のサイズで42%近く削減されている感じです。 nb buildは11だとビルド時間が少しだけ早くなっているような気がしますが、元々のコード数がそれほどでもないのもあり 1~2s位の差しかないものの、少しビルド時間が改善されてそうな雰囲気でした。 各バージョン毎のng buildの平均速度 バンドルファイルのサイズを可視化してみる 少し視点を変えて webpack-bundle-analyzer を利用してバンドルファイル内の容量を可視化して 何か気づけるポイントがないかざっくり確認してみます。 Angular8.2.14 Angular9.1.12 Angular9からivyなる単語が出てきました。 modules数も若干減っているようです。 Angular1

    Angular 8→9→10→11でビルド時間がどれくらい早くなっているかみてみよう! - Qiita
  • SSRはおまいらには早すぎた 〜Next.jsのgetServerSidePropsの登場が何を意味するか〜 - Qiita

    概要 Next.js 9.3から getServerSideProps という仕組みが導入されました。 上記がそのドキュメントですが、これを読んで感動した私はつい語りたくなってしまいました、私情が多分に含まれております、ああそういう視点もあるんだくらいに見ていただければと思います。 僕自身は、SEOをあまり気にしないいわゆるSPAっぽいWebページのNext.jsでの開発を1年ちょいくらい業務でやっていて、今もNext.jsユーザーです。 「getServerSidePropsって何が良いの?なんで生まれたの?」 「なんでgetInitialPropsは非推奨なの?」 「Vercel製のSWRってライブラリあるけど、あれ何?」 「てかgetServerSidePropsとSWRって関係あるの?」 この辺の疑問をお持ちのNext.jsユーザーの方は是非ご一読ください。 ※過剰な煽りタイトルで

    SSRはおまいらには早すぎた 〜Next.jsのgetServerSidePropsの登場が何を意味するか〜 - Qiita
  • Go1.16からは go get は使わず go install を使おう - Qiita

    この記事はGo Advent Calendar 2020 16日目の代打記事です。奇しくも16日目にGo1.16の話をすることになりました。 【追記】タイトル改題しました 状況が落ち着いてだいぶ経ったのと、未だに多くの方にこの記事を見ていただけていることから、Go1.16での変更というより、今を生きる私達がどうすればいいか、という点にフォーカスしたタイトルに改題しました。文に変更はありません。一応注記すると、go get が廃止になったわけではなく、普段の開発フローで使うことはまずなくなった、という意味です。(一通り読んでいただければお分かりいただけるかと。) 【追記】Go1.18について ついに待望のGo1.18がリリースされましたね! https://go.dev/doc/go1.18#go-command そして予告通り go get によるインストール機能は削除されました。どうし

    Go1.16からは go get は使わず go install を使おう - Qiita
  • パソコンから中国語が急に再生され困った話 - Qiita

    作業中に急に中国語が流れて困ってしまった件について調べてみました! 中国語で流れる文章 数ヶ月前より作業中にたまに中国語でなにか一言二言ほど音声が流れるという現象に悩まされていました。 そこでふとボリュームミキサーを開いて見えるところに置き作業をしてるとffplayがどこかで起動され音声が流れたら削除されるという怪しい動きをしてました。 問題の切り分け 何が原因なのかこの時点ではさっぱりわかっていなかったためとりあえずブラウザを終了させその状態で課題を継続しました。しかし、しばらくするともう一度音が鳴ってしまいました。これによってブラウザが原因ではないということがわかりました。 問題の切り分け2 ブラウザが原因ではないということでとりあえず私の開いているものを終了させたりすることにより私が使用しているソフトウェアが原因なのか、それともバックグラウンドで何かしらよろしくない動きをしているソフ

    パソコンから中国語が急に再生され困った話 - Qiita
    heavenshell
    heavenshell 2020/12/23
    エスパー力を発揮してしまった。
  • ECS Fargate/Python におけるNAT ゲートウェイのアイドルタイムアウト (350秒) 対処法 - Qiita

    こちらは iRidge Advent Calendar 2020 20 日目の記事です。 サーバーサイドエンジニアの @orfx がお送りします。 TL;DR AWS の NAT ゲートウェイには通信のアイドル状態が350秒以上続くと、タイムアウトする仕様があります。 インターネット接続が 350 秒後に中断される 問題 インスタンスはインターネットにアクセスできますが、350 秒後に接続が切断されます。 原因 NAT ゲートウェイを使用する接続が 350 秒以上アイドル状態のままになっていると、その接続はタイムアウトします。 ソリューション 接続が中断されないように、接続を介して追加のトラフィックを開始することができます。または、インスタンスで、350 秒未満の値で TCP キープアライブを有効にできます。 NAT ゲートウェイのトラブルシューティング この仕様によって、例えばリクエスト

    ECS Fargate/Python におけるNAT ゲートウェイのアイドルタイムアウト (350秒) 対処法 - Qiita
  • Golang で Vim/neovim 双方で動くセレクタ系のプラグインを作ったときの話 - Qiita

    はじめに この記事では、Vim/neovim 両方で動く Golang 製のプラグインを書いた話をします。 プラグインを書くに当たって色々考えてきた内容をざっくりと紹介していきます。 発端 最近、LSP クライアント、スニペットプラグイン、補完プラグインなどを自作して使っています。楽しいからいいのですが、自分は何をやっているんだろう?と自問自答の日々です。時間が吹き飛んでいるのだけは確実です。 ところで、当時やってみようと思ったのがセレクタ系プラグインでした。(fzf や denite のようなもの) セレクタ系プラグインを作るにあたって、重要になりそうなのはパフォーマンスかな?と思いました。 Vim script で 1 万件のファイルをフィルタしたりって現実的...? Golang 触ってみたい Golang でシングルバイナリなプラグイン書けばインストールも手間いらずでいいのでは?!

    Golang で Vim/neovim 双方で動くセレクタ系のプラグインを作ったときの話 - Qiita
  • Gitと連携するツールとしてのVim - Qiita

    はじめに Vimといえば、みなさんご存じテキストエディタですが、テキストエディタである以前に一つのCLIコマンドでもあります。そんなCLIコマンドの利点一つにThe UNIX philosophyの定理として提唱されている『7. Use shell scripts to increase leverage and portability. (シェルスクリプトによって梃子(てこ)の効果と移植性を高める)』というものがあります。 今回は私も普段の仕事で利用しているVimの梃子としての側面をご紹介できればと思います。 GitコマンドとVim 今回Vimと組み合わせるのはシステム開発で避けては通れぬバージョン管理システムGitです。私は普段Gitを使用するときにはSourcetreeやGitKrakenなどのGUIクライアントを利用せずにCLIで操作をしています。 皆さんこう思われるかもしれません

    Gitと連携するツールとしてのVim - Qiita
  • オーディオプログラミング言語のカレンダー | Advent Calendar 2020 - Qiita

    オーディオプログラミング言語について、メジャーどころや面白そうなものを実際に触ってみて紹介する企画です。 共通のテーマは、(1)440Hzのサイン波生成+ゲイン調整、(2)wavファイルに400msecのディレイをかけてフィードバックとウェットレベルを調整の上で再生、としました。それぞれの言語でこの二つのプログラムを実装します。 オシレーター、ファイル読み込み、バッファ格納、フィードバック処理といった頻出処理の実装方法(もしくはライブラリ利用方法)がひととおり確認できて、言語間の比較もしやすいのではないかと思います。 githubの方も公開しました。こちらはすべての実行確認済みソースコードをダウンロード可能です。 https://github.com/aike/audiolang

    オーディオプログラミング言語のカレンダー | Advent Calendar 2020 - Qiita
  • EmacsにおけるTypescript + React JSXの苦悩と良さげな設定について - Qiita

    これはEmacs Advent Calendar 2020 10日目の記事です。 前置き この記事は淡々と問題を解決する記事ではなく、つらつら苦悩が描写されている。 Typescript + React JSX問題は現在進行形で解決案がドシドシ提案されている。これもその1つとなるといいな。 始まり Emacsのコーディング体験は最高だ。だけど、Typescript + React JSXではいまいちだ。 去年まで会社で利用していたwebのフロントエンド開発はこれだ。 React Redux react-router-dom Emacsのメージャーモードはrjsx-modeを使っていた。 ところが、その1年後の2020年8月。 社内で採用しているフロントエンド周りが大きく変わった。 Typescript Next.js そのためEmacsの構成を大きく見直す必要が出てきてしまった。 下のコー

    EmacsにおけるTypescript + React JSXの苦悩と良さげな設定について - Qiita
    heavenshell
    heavenshell 2020/12/11
    頑張ってほしい
  • GraphQLと相性の良いORM Prisma - Qiita

    この記事は GraphQL Advent Calendar 2020 10 日目の記事です。 前回の記事は @mtsmfm さんの Swiftgraphql-codegen plugin の graphql-codegen-swift-operations を作った でした。 はじめに PrismaはGraphQLを実装するためのクライアントライブラリ,ORM(Prisma1においてはGraphQLサーバ自体も含む)として広く知られていると思いますが、Prismaはversion2(以下、ただのPrismaと書いている箇所はPrisma2を指します)より、ORM部分に注力し、GraphQLとは直接関係ない方向に成長していく方向に舵を取っています。 (参考: https://www.prisma.io/blog/prisma-2-is-coming-soon-mwwfhevie993)

    GraphQLと相性の良いORM Prisma - Qiita
  • vim で ANSI color codes を除去する - Qiita

    ANSI color code が混ざったログファイルを読む際、 less -R <filename> で文字に色が付きます。 しかし、やっぱり vim の高度な編集機能を使いたい。でも、普通に vim でファイルを開くと ^[[4;36;1mSQL (0.2ms)^[[0m ^[[0;1mSET NAMES 'utf8'^[[0m のようにカラーコードがそのまま表示されてしまい、超読みづらい…。 いっそ vim で開く時は ANSI color code を消してしまいしょう。以下はその置換コマンドです。 :%s/<1b>\[[0-9;]*m//g ※ <1b> はそのまま入力するのではなく、 <Ctrl+v><ESC> で入力する Escape 制御文字です。

    vim で ANSI color codes を除去する - Qiita
  • Angular と Firebase で月間 3.5億PV になった PWA の収益性改善とコストカット - Qiita

    と、振り返ってみると毎年綺麗に 300% 成長でこれていますね。 (流石に来年はきついと思います^^; 今回は、そんな サービスを拡大する上で欠かせない収益の話 と 成長したからこそ表面化したコストの話 をまとめていきたいと思います。 収益の話 参照:https://jp.freepik.com PWA は稼げない 昨年の Advent Calendar にて、私はたいそう嘆いておりました(TДT) Web 側の広告は MPA(マルチページアプリ)を前提にしているものがほとんど Web 側では広告の表示を最適化できない(MPA 前提の規約上バックグラウンドで読み込んでおけない それに加えて、SPA のページ遷移が早すぎて広告が表示される前に通過してしまう アプリ側にはインタースティシャル広告やリワード広告といった単価の高い広告商材が豊富に存在する そういった要因から、PWA におけるページ

    Angular と Firebase で月間 3.5億PV になった PWA の収益性改善とコストカット - Qiita
  • Vimで年賀状を作る - Qiita

    こんにちは、IKです。 もうすぐ12月も終わってしまいますね。 時が経つのは早いものです。 そして、12月が終わってしまうということは1月が来るということです。 年賀状の進捗はどうですか?僕はダメです。 そんな年賀状の進捗がダメダメな人に向けて、エンジニアらしい、かっこいい年賀状をすぐに作れる方法を紹介します。 用意するもの Vim やる気 年賀状 プリンタ Vimに書くものを決める Vimで年賀状を書くということは、それなりに書けるものは限られてきます。まず画像が表示できないです。悲しい... そもそも、画像をVimで表示させたらただの年賀状になってしまいます。エンジニアらしさはどこにもない... そこで今回はアスキーアートを駆使して、エンジニアらしい年賀状を作っていきましょう。 年賀状に必須なもの(主観) happy new year という文字列 2021 という文字列 丑 を表すな

    Vimで年賀状を作る - Qiita
    heavenshell
    heavenshell 2020/12/08
    発想がすごい
  • zshで ヒストリに登録したくない(無視したい)コマンドラインを指定する - Qiita

    はじめに zshに限ったことじゃないですが、 コマンドライン操作においてよく使うのがヒストリ機能です 入力したことのあるコマンドラインの参照、展開、抽出なんかができるわけですが たまにヒストリを検索したり、掘っていく時に、このコマンド邪魔だなーってなりませんか pwd,cd,vim なんかがそうです また、 HIST_VERIFY オプションを設定していない場合に、誤って危なげなコマンド(mv,rm)を展開して実行しちゃう なんてこともあるかと 実はzshでは、ヒストリに積みたくないコマンドを指定できます! というマニアックな記事 こう書くのじゃ 肝心の設定ですが、 変数 HISTORY_IGNOREに無視したいコマンドを指定してあげるだけです

    zshで ヒストリに登録したくない(無視したい)コマンドラインを指定する - Qiita