並び順

ブックマーク数

期間指定

  • から
  • まで

361 - 400 件 / 5642件

新着順 人気順

JavaScriptの検索結果361 - 400 件 / 5642件

  • else 句に「// 何もしない」コメントを書く意味について

    確かに、パッと見で 「なんだこれ?」 になりますね。 意味のないコメントとして else 句ごと削除してしまって良さそうにみえます。 しかし、実はこの「何もしない」コードは、 プログラミング(理論)的に面白い側面を持っている ので、簡単に記事にまとめてみたいと思います(記事中では Swift に似た擬似コードを使用します)。 キーワード if 式、網羅的パターンマッチ、参照透過、副作用、モナドと単位元 else 句が省略できる条件 例えば、次のコード例を考えてみます: let array: Array<Int> = ... var positiveArray: Array<Int> = [] // var = 可変変数 for x in array { if x > 0 { positiveArray.append(x) } else { // 何もしない } } ここでは array か

      else 句に「// 何もしない」コメントを書く意味について
    • フロントエンドテストにおける知見の宝庫を発見!「javascript-testing-best-practices」 - Qiita

      Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

        フロントエンドテストにおける知見の宝庫を発見!「javascript-testing-best-practices」 - Qiita
      • Yahoo! JAPAN はパスワードレス認証で問い合わせを 25% 削減、ログイン時間も 2.6 倍速に

        Yahoo! JAPAN は日本にて検索やニュースといったメディアサービス、e コマース、メールサービスなど、100を超えるサービスを提供している企業です。これらのサービスで利用するためのユーザーアカウントも長年提供し続け、月間のログインユーザーは 5,000 万を超える規模となっています。しかし、このユーザーアカウントを提供する中で、ユーザーアカウントに対しての攻撃を継続的に受けており、また、アカウントを継続利用する上での課題についてユーザーから問い合わせも多く頂いていました。これらの課題の多くはパスワードという認証手段に依存するものでした。また、当時、技術的にもパスワード以外の認証手段を提供するための機能やデバイスの普及が始まりつつありました。こういった背景のもと、Yahoo! JAPAN はパスワードによる認証からパスワードレスな認証へ移行すると判断しました。 なぜパスワードレスか

          Yahoo! JAPAN はパスワードレス認証で問い合わせを 25% 削減、ログイン時間も 2.6 倍速に
        • テキストをコピペするときにスタイルごとコピーされちゃうのってどんな仕組み? - Qiita

          概要 文章をコピペしてエクセルに張り付けたときに、画面のスタイルもコピーされてしまって困ったことはありますか?ありますよね! (↓こんな感じ) 私もよくやってしまうのですが、実際にどのような処理が行われているのかよく分かっていませんでした。理解を深めるためにも、自分で実装して謎を解いていきたいと思います。 3つパターンの処理を実装 比較のため、プレーンテキスト・HTMLテキスト・リッチテキストのコピー機能をサンプルプログラムを実装してみました。 (リッチテキストのコピーが、範囲選択してコピペしたときと同じ機能を想定しています。) HTMLファイル 画面表示されるHTMLは下記のような感じです。各コピー処理でid="message"の部分を固定でコピーするようにします。 <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"

            テキストをコピペするときにスタイルごとコピーされちゃうのってどんな仕組み? - Qiita
          • バックエンド開発の基本を理解するために必要な10の知識 2022年版

            はじめに バックエンドエンジニアは、プログラミングの中で特にイメージがわきにくい分野である。簡単に言えば、バックエンドエンジニアはユーザから見えない部分にあるシステムである。(例えば、ユーザ認証やデータベース設計・操作・運用などが例として挙げられる) 例えば、ECサイトを運用する際に、ユーザから見えるUIだけを作っても作動しない。バックエンドになるシステムの構築も必要なのだ。 今回はバックエンド開発を理解する上で必要な10の知識を徹底解説する。その中で、個人の見解に過ぎないが初心者にオススメのバックエンドのフレームワークを3選紹介する。あくまで一個人の見解に過ぎないが、今回の記事を通してバックエンドの学習方法またはその魅力を十分に理解していただければ非常に幸いである。 本題に入る前に、本記事における「バックエンド」はあくまで認証やデータベースなどシステムやソフトウェアの裏側で動作しているも

              バックエンド開発の基本を理解するために必要な10の知識 2022年版
            • 【2024年最新】モダンフロント学習教材まとめ - Qiita

              はじめに 今回はフロントエンド(主にReact, Next, TypeScript)でおすすめの学習教材をまとめました。 対象者 エンジニア初心者 モダンフロント技術を学びたい人 ロードマップ Developer Roadmaps エンジニア向けの学習ロードマップが整理されています。 現在の自分の立ち位置を把握し、次にやるべきことの方向性を知ることができます。 エンジニアが使うであろう、ほぼ全技術が網羅的にまとめられているので、まずはこのロードマップを使って現在の立ち位置を掴んでみてください。 TypeScript typescriptlang 公式が提供している学習サービス。 基本文法から実践的な内容まで学ぶことができる。英語が苦手でなければここで一通り学ぶべき。 サバイバルTypeScript 実務で使えるTypeScriptの実装方法を学ぶことができる。応用的な内容も多いが、解説が丁

                【2024年最新】モダンフロント学習教材まとめ - Qiita
              • データベースと向き合う決意 | フューチャー技術ブログ

                秋のブログ週間の9本目のエントリーになります。この企画もこんなに書く人が出てくるように育っていいですね。 「中間層を増やして柔軟性を高めるのがソフトウェアの歴史」 これは大学時代に2つ上の先輩が言っていた言葉です。例えばマシン語を直接書くのではなく、アセンブラで書けば、変換(コンパイル)の手間はかかりますが、他のCPUへの移植はしやすくなります。高級アセンブラと名高いC言語を使えばさらに移植性は上がります。C言語で書かれたVMを使う言語、例えばJava、Python、Rubyなんかはさらに移植性は上がります。 ストレージもそうです。最終的にストレージはビット列を保存するものですが、それにOSのファイルシステムというレイヤーがあり、そこにスキーマで管理されたデータを入れるDBMSが乗っかり、SQLなどの問い合わせ言語でデータ取得できるようにします。DBMSを挟むことで、レプリケーションでバッ

                  データベースと向き合う決意 | フューチャー技術ブログ
                • 実装例から見る React のテストの書き方 - Cybozu Inside Out | サイボウズエンジニアのブログ

                  2024/04/17: 更新 内容を更新した記事を書きましたので、よかったらこちらも併せて、ご覧ください。 zenn.dev こんにちは!フロントエンドエキスパートチームの@nus3_です。 kintone のフロントエンド刷新プロジェクト(フロリア)では、品質を保ったまま開発を加速させるためにフロントエンドのテストを積極的に行っています。 今回はそんなフロントエンドのテストの実装例をいくつか紹介します。この記事がフロントエンドのテストを行う上での参考になれば幸いです。 テストに使用する主なパッケージ コンポーネントのテスト 補足: Testing Library の記法をチェックしてくれるeslint-plugin-testing-library カスタムフックのテスト 補足: React v18 では @testing-library/react の renderHook を使う 参考

                    実装例から見る React のテストの書き方 - Cybozu Inside Out | サイボウズエンジニアのブログ
                  • ソフトウェア開発の進歩完全に止まったような気がする

                    (ゲームの話は一切知らん) いつのまにか「Webフロントエンドの動きが速い」とか誰も言わなくなってることにふと気付いた。なんというかソフトウェアをどう作るか、という問題にたいして大枠の部分では完全に固まってしまって、あとは個別の事情をどうやっていくかみたいな話しか残ってないように見える。 端的にいえば、宣言的UIとkubernetesは聖杯だったのではないかな。 k8sにかんしては「Cloud Runみたいのでいいじゃん」みたいな話はあると思うんだけど、Envoyほしいとかなってくると結局事実上k8s必須だし、今新しくアプリ作るときに宣言的UIじゃないフレームワーク使うこととかほぼ考えられんよな。で、こういう構成が定番ですね、みたいになってなんかもう数年は経つ気がする。結果として日本語でソフトウェア開発の話になるとチームビルディングがどうのみたいな話しかなくなってきていて、なんかつまんねー

                      ソフトウェア開発の進歩完全に止まったような気がする
                    • オンラインドキュメントと日本語全文検索

                      自社では Sphinx というドキュメントツールを利用しているのですが、残念ながらこれに付属している検索機能の日本語検索はかなり厳しいです。また残念ながら Sphinx 開発側も検索周りを改善するという予定は直近ではないようです。 そして検索というのはとても難しい技術なため自分のような素人では導入して「普通に期待する動作」をさせるまでの距離はとても遠いです。 ただ、なんとかして日本語全文検索を実現したいという思いはここ10 年くらいずっと思っていました。これは自社の Sphinx テーマを作ってくれている社員ともよく話をしていたのですが、どうしてもリソースをつぎ込めずにいました。 まとめ日本語検索に対応している Meilisearch を採用したドキュメントスクレイパーの実行は GItHub Actions (Self-hosted Runner) を採用した自社 Sphinx テーマの検

                        オンラインドキュメントと日本語全文検索
                      • 商用でも完全に無料! プレーンなHTMLとCSSで実装された、ランディングページ用のテンプレート -Uisual

                        JavaScriptはなし、プレーンなHTMLとCSSで実装されたランディングページ用のテンプレートを紹介します。 テンプレートはスマホ・タブレット・デスクトップのレスポンシブ対応。ワイヤーフレームのような白黒のシンプルなデザインなので、カスタマイズも簡単です。 Uisual -Free Landing Page Templates Uisual -GitHub UisualはプレーンなHTMLとCSSで実装された、ランディングページ用のテンプレートです。他のCSSフレームワークやJavaScriptなどは一切必要ありません。 MITライセンスで、商用プロジェクトでも無料で利用できます。

                          商用でも完全に無料! プレーンなHTMLとCSSで実装された、ランディングページ用のテンプレート -Uisual
                        • OSSのゆく道:Faker.jsの顛末|Takahiro Ito

                          今日は技術支援のためチュートリアル的なものを作っていたところ、そこで使っていたfaker.jsというライブラリに異変が。faker.jsの機能でTwitterで表示するようなアバター画像のURLをランダムに生成するのだが、その画像がすべて403でアクセスできない。 プロトタイピングにおいてfaker.jsはとても便利だったので、このままでは色々困っちゃうなーと思って調べてみた所、オープンソースの意義について考えさせる事実が見えてきた。 faker.jsの作者を襲った悲劇他に同じ問題に遭遇している人がいないか、Twitterでfaker.jsについて調べた所、以下のツイートを見つけた。 I lost all my stuff in an apartment fire and am barely staying unhomeless. Lost access to most of my acc

                            OSSのゆく道:Faker.jsの顛末|Takahiro Ito
                          • リリースから5年、Webフロントエンドの経年劣化と向き合う

                            @herablog さん、@shunke07 さんと共に Muddy Web #3 で発表した資料です。 https://cyberagent.connpass.com/event/261115/ news.ameba.jpは5年前にデスクトップ版ではReact化、モバイル版ではAMP化が行われ…

                              リリースから5年、Webフロントエンドの経年劣化と向き合う
                            • 「ぷよぷよプログラミング」セガ公式のガイドブック発売へ 最新版のソースコード全文掲載

                              ぷよぷよプログラミングはセガが2020年に無料公開した、ゲームのソースコードを書き写し、ぷよぷよのプレイ画面を確認しながらコーディングを学ぶ教材。小学校でプログラミング教育が必修化した時期だったこともあってSNSなどで話題になり、同年以降も副教材の追加や、セガによる出張講座などが行われている。 関連記事 プログラミング初心者も「“ぷよ”が動いた!」の感動を 着想から7年、ぷよぷよの教材が生まれた理由 コード入力すると“ぷよ”が動くぷよぷよのプログラミング教材が登場。教材を作った経緯や理由を開発者に聞いた。 青学初等部が「ぷよぷよ」のプログラミング教材で授業 青山学院初等部は5月14日から6月25日にかけて、対戦アクションパズルゲーム「ぷよぷよ」のソースコードを使ったプログラミング教材「ぷよぷよプログラミング」を活用した授業を行った。セガが開発した小学生向けカリキュラムを活用し、子供たちにゲ

                                「ぷよぷよプログラミング」セガ公式のガイドブック発売へ 最新版のソースコード全文掲載
                              • 私のフロントエンドディレクトリ構成・テスト観点 2022

                                近日連投していた Next.js 記事のサンプルコードを公開しました。このサンプルコードを元に、私のフロントエンドディレクトリ構成・テスト観点を紹介します(あくまで執筆現在の脳内アウトプットになりますのでご了承ください) フロントエンドディレクトリ構成の事情 タイトルの「フロントエンドディレクトリ構成」をさす「Components」のディレクトリ構成は、いつも悩みのタネです。このモジュールシステムは「デザインシステム観点・アクセシビリティ観点・フロントエンド実装観点」の 3 つの観点が混在するため事情が複雑です。どうせ作るのなら「デザイナー・フロントエンド」どちらの開発基盤にもなりえる、盤石なモジュールシステムを目指したいですよね。 "AtomicDesign やめました"という声をたまに聞くのですが「デザインシステム的に捨てていいの?」と思うこともあるので、とくに要望がなければ、筆者は「

                                  私のフロントエンドディレクトリ構成・テスト観点 2022
                                • 「なんで、for文ってforなの?」って、みんな思ったはず。 - Qiita

                                  はじめに PythonやJavaScript、PHPなどのさまざまなプログラミング言語で"for文"というものが最初に出てきますよね。どの教材でもfor文は使われ、絶対にプログラムでも多用しています。アンチパターンもいくつかありますが、逆を言えば、アンチパターンがあるくらい使い方があります。 最初に思うはずです。 「なんで、for文ってforなの?」 これまでに受け入れてきてしまった"for"について由来を見てみましょう。知らなそうなエンジニアに自慢してみてください。 for文とは 基本的な使い方としては、何かの指示に従って配列オブジェクトなどに対して、適用できる「〇〇の分だけ、同じ処理をしてね!」というものです。 (for文とはなんぞ、別にやらんでいいやろ!と思われるかもですが、簡単にPythonで書いておきます。) 同じ処理を繰り返すので「ループ処理」とも言われます。ではなぜloopじ

                                    「なんで、for文ってforなの?」って、みんな思ったはず。 - Qiita
                                  • Navigation API による「JS での画面遷移」と SPA の改善 | blog.jxck.io

                                    Intro 従来の History API を改善する Navigation API の仕様策定と実装が進んでいる。 これは、History API の使いにくかった部分を補うだけではなく、「JS で画面遷移をする」という現状のミッシングピースに取り組み、SPA が抱える多くの問題だけでなく MPA すら改善する可能性がある。 この API の目的と仕様を解説しつつ、実装のメモを残す。 画面遷移と SPA の軌跡 Web は HTML の取得と描画を繰り返す、画面遷移(Navigation)を前提としたアーキテクチャ(のちに SPA からの逆算で MPA と呼ばれる)が基本であり、ブラウザなどの実装もそれに最適化されている。 一方「アプリケーション」の設計手法をそのまま Web に持ち込んだ SPA は、この Navigation によってもたらされる UX の低下を防ぐ部分がある一方、既

                                      Navigation API による「JS での画面遷移」と SPA の改善 | blog.jxck.io
                                    • 分散型SNS「Misskey」、それを支える技術スタック | gihyo.jp

                                      本連載は分散型マイクロブログ用ソフトウェアMisskeyの開発に関する紹介と、関連するWeb技術について解説を行っていきます。第1回はMisskey、ひいては分散型SNSの簡単な紹介とその内部実装の概略を説明します。 はじめまして! はじめまして、Misskey(みすきー)のプロジェクトリーダーをしている、しゅいろ(@syuilo)です! この度連載の機会をいただきましたので、ちょっと仰々しい気もしますが「Misskey & Webテクノロジー最前線」と題して、今後Misskeyやそれに関わる最新のWeb技術について解説をしていく予定です。 今回はMisskey、ひいては分散型SNSの簡単な紹介とその内部実装の概略を説明します。 対象読者は、後半の実装解説の部分においてはある程度のWeb開発の知識がある人を想定しています。 Misskeyとは⁠、そして分散型とは Misskeyは、オープン

                                        分散型SNS「Misskey」、それを支える技術スタック | gihyo.jp
                                      • Goで実装された高速な
仮想待合室サーバの実装と詳解

                                        ペパボのテックカンファレンスで話しました。

                                          Goで実装された高速な
仮想待合室サーバの実装と詳解
                                        • ChatGPT APIを使った個人開発のススメ

                                          2023年3月2日ChatGPT APIが発表されました。 このニュースを見て、 「このAPIを使って何か面白いサービスを作れるのでは…?」 と思った方も多いのではないでしょうか? 筆者もそんなふうに思った個人開発者の一人です。 そこで試しに作ってみました。 AIがおすすめの本を選んでくれる 「AI本屋さん」 です。 (ぜひご来店ください) 本記事では、ChatGPTを使って何か作ってみたいなと考えている方に向けて、 サービス開発の流れ Tips AI 個人開発のススメ についてご紹介します。 サービス開発の流れ 「AI本屋さん」を例にサービス開発の流れを紹介します。 1. 設計 まずはざっくり設計を行いました。 流れは以下のようになります。シンプルですね。 【フロント】質問を投げる 【バックエンド】質問からプロンプトを生成し、ChatGPT APIにリクエスト 【ChatGPT API】

                                            ChatGPT APIを使った個人開発のススメ
                                          • 70万通りのURLを持つWebサービスを Next.jsにリプレイスして高速化した話

                                            ジャムジャム!!Jamstack_2に登壇した際の発表資料です。 https://jamjamjamstack.connpass.com/event/226467/ ご質問あれば、Twitter: aiji42_dev までどうぞ。

                                              70万通りのURLを持つWebサービスを Next.jsにリプレイスして高速化した話
                                            • 重いサイトを軽くしろ!年末年始は #WebSpeedHackathon 2021 に挑戦しよう | CyberAgent Developers Blog

                                              ABEMA で Web フロントデベロッパーとして活動している 宮代 @3846masa です。CyberAgent Advent Calendar 2021 4 日目は、Web パフォーマンス改善のコンテストについてお話します。 TL;DR Web パフォーマンス改善コンテスト “Web Speed Hackathon 2021 mini” を開催します! 改善する対象は https://web-speed-hackathon-2021.herokuapp.com/ です オンライン開催で、12 月 4 日から 1 月 3 日までの 1 ヶ月間、好きなときに誰でも参加できます 記事の後半は、課題となる「重たい短文投稿サイト」を作るまでの開催記です はじめに CyberAgent では、Web パフォーマンス改善を競うコンテスト “Web Speed Hackathon 2020” を昨年

                                                重いサイトを軽くしろ!年末年始は #WebSpeedHackathon 2021 に挑戦しよう | CyberAgent Developers Blog
                                              • 爆速のアイコン検索サイトを作った

                                                爆速のアイコン検索サイトを作ったので、遊んでみてください。 (1) まずは自分が使いやすいアイコン検索サイトを作りたかったので作りました。(2) 様々なアイコンを爆速で横断検索し、サクッとアイコンをコピーできるようにしました。単純ながら意外とその部分が面倒なサイトは多い気がします。(3) また応用とメンテがしやすい実装にして、非常にサポート範囲の広い DB を GitHub Pages 上で構築しました。公開時点では 120+ のアイコンセットと、130,000+ のアイコンをサポートしており、サポート数も観測範囲では No.1 です。 開発動機 アプリ/サイト開発ではまずお世話になるであろうアイコン。私はこれまで Material Icons と Bootstrap Icons ばかり使っていました。これは検索が面倒だったからです。検索が面倒だと知名度の高いものだけに閉じてしまうので、良

                                                  爆速のアイコン検索サイトを作った
                                                • 楽天銀行、預金残高7兆円を超える

                                                  楽天銀行は、2021年12月末に預金残高が7兆円を超えたことを発表した。6月末に6兆円を超えてから、半年で1兆円を積み増した。ネット銀行の中では、口座数は最多となる1100万を超えている。 競合となるネット銀行の預金残高は、住信SBIネット銀行が6兆6284億円(21年9月末)、ソニー銀行が3兆円(同9月末)、auじぶん銀行が2兆円(同8月末)、PayPay銀行が1兆3476億円(同9月末)となっている。 楽天銀行の預金残高が大きく増加した原動力となったのは、楽天証券との口座連携サービス「マネーブリッジ」だ。普通預金の金利を0.1%に優遇する措置の効果で、口座数は300万口座を超え、マネーブリッジの預金残高は4兆円を超えた。全体の6割弱が、マネーブリッジ口座に入金されている形だ。 一方で、4月からは、マネーブリッジの金利優遇を変更し、預け入れ300万円以上については優遇金利を0.04%に引

                                                    楽天銀行、預金残高7兆円を超える
                                                  • 2022年に OSS 活動によって得た報酬を公開

                                                    この記事を書いているのは 12 月 17 日なのでもう 3 日分書いていないことになりますが、頑張って追いつきたいと思います。 筆者が 2022 年に OSS 活動によって得た報酬を公開します。 前提 筆者はUbie 株式会社のフルタイムのソフトウェアエンジニア兼大学生であり、余暇時間にいくつかの OSS に関わっています。 主に Prettier というコードフォーマッターのメンテナンスをしています。 目的 この記事の目的は、読者の誰かがお世話になっている OSS プロジェクトに対して寄付や貢献をするきっかけになることです。ぜひお願いします。 筆者が受け取っている OSS 活動による報酬には大きく分けて二種類あります。 一つ目は OSS プロジェクトの OpenCollective から分配された報酬です。Prettier の OpenCollective に集まった資金を毎月 $150

                                                      2022年に OSS 活動によって得た報酬を公開
                                                    • WebAssemblyの歴史について

                                                      はじめに 最近、Node.jsとDenoの開発者であるRyan DahlさんがJavaScript Containersという記事を書いていることを知った。 Webとの親和性の高さがサーバーサイドで求められる中、JavaScriptがユニバーサルスクリプトとして活躍するだろう。そして、コンテナランタイムがLinuxコンテナの抽象レイヤーとしてあるように、JavaScript界隈では既存のWebAPIそのものが抽象化の手助けとなるであろう、みたいな趣旨の内容だった。 彼がChromeのV8 JavaScript Engineを使ってNode.jsを誕生させた同じ頃、JavaScriptの可能性を信じて方法を模索した人がいる。Alon Zakaiさんだ。 Alon(以降、敬称略)はWebAssemblyやその考えの元になった asm.js 、 JavaScriptコンパイラ Emscripte

                                                        WebAssemblyの歴史について
                                                      • ナメやがってこの型ァ!!超イラつくぜぇ~~~~~ッ!!

                                                        const colors = ["赤","青"] as const; type Colors = typeof colors[number]; //"赤" | "青" typeof colors[number]・・・ってよォ~~~~~ typeofはわかる。スゲーよくわかる TypeScritの世界では、typeofで変数から型を作れるんだよなァ だがnumberってのはどういう事だああ~~~~っ!? 配列にnumberを渡せるかっつーのよ───────ッ!! ナメやがってこの型ァ!! 超イラつくぜぇ~~~~ッ!! 解説 これはよォ 「Lookup Type」ってやつらしいぜぇ たとえばよォ 👇みたいに書くとPerson型からプロパティの型を取り出せるよなァ~?? type Person = { name: string, age: number } type name = Person

                                                          ナメやがってこの型ァ!!超イラつくぜぇ~~~~~ッ!!
                                                        • 静的サイトジェネレータ「Astro 3.0」正式リリース。JavaScriptなしでSPAのようなアニメーションの画面遷移など新機能

                                                          静的サイトジェネレータ「Astro 3.0」正式リリース。JavaScriptなしでSPAのようなアニメーションの画面遷移など新機能 オープンソースで開発されている静的サイトジェネレータ「Astro」の最新バージョンとなる「Astro 3.0」が正式にリリースされました。 Astro 3.0 is out now! 30% faster and more powerful than ever. View Transitions, Image Optimization, JSX Fast Refresh, and so much more. https://t.co/vOi44246Hg — Astro (@astrodotbuild) August 30, 2023 Astroは、ReactやVue、Svelte、Alpine.js、TypeScriptなどのさまざまなフレームワークやライ

                                                            静的サイトジェネレータ「Astro 3.0」正式リリース。JavaScriptなしでSPAのようなアニメーションの画面遷移など新機能
                                                          • 世界一わかりみの深いasync/awaitによる非同期処理 | SIOS Tech Lab

                                                            こんにちは、サイオステクノロジー武井です。今回はasync/awaitの動きをOSカーネルのレイヤーから追うことで理解を深めようとしてみます。 1. async/awaitはむずい async/await、なかなかにとっつきにくい概念だと思います。 「非同期処理には async を付ける」「await しないと結果が取れない」——ルールとしては覚えられます。コードも動きます。でも、こんな疑問にぶつかった経験はないでしょうか。 await している間、プログラムは「止まって」いるの? 止まっていないの? 「待つ」のに、なんで速くなるの? await を付け忘れると Promise が返ってくるのはなぜ? そもそも誰が「処理が終わった」ことに気づいて、続きを実行してくれるの? これらイベントループやepollの仕組みを知っていると、スッキリ解決するのではと思い、今回、一筆したためました。 キー

                                                              世界一わかりみの深いasync/awaitによる非同期処理 | SIOS Tech Lab
                                                            • 【怖い】経緯を読んだらガチの国際クライムサスペンスだった→フリーのエンジニアを狙ったサイバー攻撃が増加中

                                                              🍪🍺 @cookieandbeer 国際犯罪の被害に遭いかけたので注意喚起です! 海外サイト(WeWorkRemotely)で良さげな案件を探していて、出会ったクライアントとビデオ通話した後「早速今の実装見てみてほしい」という話になりました。もう遅いし明日にして今日は飲むか〜と思っていたら「すぐチェックしてほしい」という連絡が pic.twitter.com/bRhXJkFEGX 2024-07-20 16:41:25 🍪🍺 @cookieandbeer しょうがないにゃあ…と思いつつまずは親の顔より見た setupTest.js を見るとそこには変わり果てた姿が…… 偶然昼までMarkdown書き物をしてたためVSCodeの折り返しを有効にしていたので気づきましたが、普段無効にしてるときだったらこんなふうに見えるので気づくのは難しそう pic.twitter.com/fbk3og

                                                                【怖い】経緯を読んだらガチの国際クライムサスペンスだった→フリーのエンジニアを狙ったサイバー攻撃が増加中
                                                              • Reactを使うのかVueを使うのかについて個人的なモチベーションを整理したかった

                                                                本記事はあくまで執筆時点(2022/3/27)での一意見でありますので、今後時間や技術的な変化により参考にならない部分も出てくるかもしれません。 Reactはいいぞ、Vueはいいぞと様々な情報が世の中には溢れているものの、「こういう場合には」という前提条件にあまり言及されていない情報が多いような気がしたので自分なりの視点で考えてみたいと思いました。 また、SvelteやAngular等他のフレームワークもありますが、そちらは個人的にはよくわからないので、あくまでReactとVueについてだけ言及していきます。 私のフロントエンド経験と気持ちの変化 2018年くらいにReactを勉強し始める。 → Reactって難しい…。 2019年くらいにVueを学び始める。 → Vueって簡単!Reactよりわかりやすくてええやん! 2020年くらいにNuxtの案件に参画する。 → Webフロントエンド

                                                                  Reactを使うのかVueを使うのかについて個人的なモチベーションを整理したかった
                                                                • 新MacBook Pro(M3)でも機密情報が漏えい 2020年以降のApple製品全てに脆弱性 米国チームが発表

                                                                  このコーナーでは、2014年から先端テクノロジーの研究を論文単位で記事にしているWebメディア「Seamless」(シームレス)を主宰する山下裕毅氏が執筆。新規性の高い科学論文を山下氏がピックアップし、解説する。 Twitter: @shiropen2 米ジョージア工科大学などに所属する研究者らが発表した論文「iLeakage: Browser-based Timerless Speculative Execution Attacks on Apple Devices」は、Mac、iPad、iPhoneなどのApple製品に搭載のSafariを標的としたサイドチャネル攻撃に関する研究報告である。 この攻撃は、最近発売されたM3チップを搭載した新型MacBook Proでも成功し、ソフトウェアの更新状況に関わらず、Apple製品にとって依然として脅威であることを示した。 「iLeakage」

                                                                    新MacBook Pro(M3)でも機密情報が漏えい 2020年以降のApple製品全てに脆弱性 米国チームが発表
                                                                  • 今Partytownがヤバい。JavaScript Sandboxの未来はどっちだ?

                                                                    概要 Partytownというプロジェクトが先月発表された。このプロジェクト自体はWebのパフォーマンス向上(3rd Party Scriptによるブロッキングの低減)を主目的としているが、実質ブラウザにおけるJavaScript Sandboxの方向性に一石を投じるものであるとして自分は理解した。本稿ではこちらについて背景とともに解説を試みる。 WebブラウザにおけるJavaScript Sandbox JavaScriptで記述されたWebアプリケーションにおいて、たとえばプラグイン機構を実現したいなど、他Partyが提供あるいはユーザ自身が記述したスクリプトを、ホストとなるアプリケーションに影響を与えることなく実行することを許可したい、というケースはままある。2000年代に跋扈したブログパーツの類はWebコンテンツに対するプラグインの代表例とも言えるが、埋め込み先ページに対しての全権

                                                                      今Partytownがヤバい。JavaScript Sandboxの未来はどっちだ?
                                                                    • フロントエンドのスピードに置いていかれたので、よく聞く技術を調べて分類してみた

                                                                      元フルスタックエンジニア(死語)をやらせていただいていたものです。 JavaScript(TS)周りの進歩が凄く、あまりにもついていけていなかったので、気になったワードを片っ端から整理してみました。 それぞれに対する説明の正しくないものが含まれてしまっている可能性があります。 そんなところを見つけたときは優しく教えてくださると助かります。 各ツールの詳細というよりは、それぞれがどんな役割のものなのかを記載しています。 この記事が誰かの助けになれば幸いです。 調査・分類した言葉(技術)たち Hono Bun Deno Biome Vite Webpack Turbopack esbuild Babel SWC Prisma まず上記に上げたものが、どういった機能を持つものなのかもわかりませんでした。 それを整理すると以下になるようです。 JavaScript Runtime Deno Bun

                                                                        フロントエンドのスピードに置いていかれたので、よく聞く技術を調べて分類してみた
                                                                      • jq 1.7をリリースしました - プログラムモグモグ

                                                                        jqがjqlang organizationに移譲され、数名の新たなメンテナーを入れた開発体制に移行してから三か月が経ちました。 私にとってこの三か月はとても濃厚で、これまでのOSS活動の中でも特に大変な期間でした。 itchyny.hatenablog.com github.com リポジトリの管理権限をいただいてからまずやったことは、既存のissueやPRの整理でした。 500ほどのissueとPRに目を通し、ラベルをつけて、解決済みのものを閉じて、直近で入れたいものを独断でリリースマイルストーンに入れていきました。 この整理がついた頃には他のメンテナの活動も活発になり、私の作ったマイルストーンのissueやPRを確認してくれました。 そして先日、ようやく1.7をリリースしました。 1.6から実に五年弱、一時は開発が完全に止まってしまいプロジェクトの存続を危ぶむ声も上がるような状況から

                                                                          jq 1.7をリリースしました - プログラムモグモグ
                                                                        • Reactで大量描画しても60fps出すためのパフォーマンスチューニング術 - SmartHR Tech Blog

                                                                          こんにちは、SmartHRでプロダクトエンジニアをやっている @Tokky0425 です。 みなさんは普段組織で働いていますか?僕は組織で働いています。 組織で働くにあたって便利なもの、ありますよね。そう、組織図です。 SmartHR にも組織図の機能があるのですが、部署数や従業員数が多いとブラウザ上での操作が重くなってしまうという問題がありました。 最近「数万人規模の組織図での 60fps」を目指してこの組織図機能の描画パフォーマンス改善を行ったので、その中で実践したフロントエンド開発における大量描画処理の Tips を共有します。(React を前提としています) そもそも問題はどこにあるのか 最近まで、SmartHRの組織図機能は数万人規模の企業で十分に使えるような作りになっていませんでした。というのも、対象従業員数が数万人を超えてくると、いろんな操作が著しく重くなり、実用に耐える操

                                                                            Reactで大量描画しても60fps出すためのパフォーマンスチューニング術 - SmartHR Tech Blog
                                                                          • Reactを使うならReact Developer Toolsの再レンダリング時ハイライトくらい設定してくれ

                                                                            最近 React と Next.js に入門したのですが、入門時点で一番最初に知っておきたかったことについて書きました。 「React 初心者が useState とかを学習する前にまず一番にやることはこれ」っていう内容です。。 タイトルは自分への戒めです。 TL;DR この記事を読むと React Developer Tools の簡単な使い方を知り、useState の再レンダリングについて動きがイメージできるようになると思います React Developer Tools これのこと。React を使った開発をするのであれば、必ず導入しないといけないレベルのもの。 再レンダリング時ハイライトの設定 React Developer Tools をインストールした後、F12 を押下して Component を選択この歯車を押下する。 すると、以下のような部分があると思うのでチェック ON

                                                                              Reactを使うならReact Developer Toolsの再レンダリング時ハイライトくらい設定してくれ
                                                                            • JavaScriptを雰囲気で使っていたので勉強し直したら知らなかったこと

                                                                              小ネタ。chromeで動作確認 何となく使っていたので改めて勉強してみたら知らなかったことなどのまとめ this 関数の呼び出し元のオブジェクトがthisになる。ただし、呼び出し元のオブジェクトの指定がない場合は、windowオブジェクトがセットされる。ただし、厳格モードuse strictの場合はundefinedがセットされる const foo = { bar: function() { // 呼び出し元はfoo.bar() console.log(this); // foo object const baz = function() { // 呼び出し元はbaz()でオブジェクトの指定がない console.log(this); // window object } baz(); const qux = function() { 'use strict'; // 呼び出し元はqux

                                                                                JavaScriptを雰囲気で使っていたので勉強し直したら知らなかったこと
                                                                              • TypeScriptの型を展開してホバー表示してくれるVSCode拡張「Prettify TypeScript」が便利

                                                                                TypeScriptは強力な型システムが魅力です。 しかし、複雑な型定義は理解が難しいです。特にライブラリの型定義などはジェネリクスや交差型などがネストしていることも多く、すぐに把握するのが難しい場合があります。 Visual Studio Code(以下VSCode)でTypeScriptの開発をしている際、型にカーソルをホバーすると型情報が表示されます。 しかし、深いネストや複雑な型の場合、展開される情報が不十分で、定義を追う必要があります。 そんな時に役立つVSCodeの拡張機能がないかな〜と探していたら「Prettify TypeScript」というぴったりの拡張機能を発見しました!この拡張機能を使うと、ホバーした時に型が展開された状態で表示されるため、型情報を把握しやすくなります。 Prettify TypeScriptの概要 Prettify TypeScriptを使用すること

                                                                                  TypeScriptの型を展開してホバー表示してくれるVSCode拡張「Prettify TypeScript」が便利
                                                                                • モノレポにすべきか、レポジトリを分割すべきか

                                                                                  先日 フロントエンドの Monorepo をやめてリポジトリ分割したワケ というブログがバズっていた。そのおかげか、Twitter でもモノレポに関する言及がちょこちょこあった。一家言あるドメインなので書きたい。ただの一家言(a.k.a お気持ち)なのでぜひ皆さんの意見も聞いてみたい。 tl;dr 別に自分はどっち派とかではなく、どっちも選ぶ。強いて言うならリポジトリ分割派で、依存更新がしんどくなったら monorepo 派。 免責 モノレポに対する一家言を書きたいだけであって、内容自体はフロントエンドの Monorepo をやめてリポジトリ分割したワケ と全く関係なく、そのブログで述べられている施策については何も言及しません。ただ一つ言及するとしたら肉の部位がコードネームに採用されているのは良いと思いました。🍖🍖🍖 モノレポにしたくなる状態の前提にあるもの 前提は元記事と同じように

                                                                                    モノレポにすべきか、レポジトリを分割すべきか

                                                                                  新着記事