並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 1078件

新着順 人気順

JavaScriptの検索結果1 - 40 件 / 1078件

  • サマー・ドッグ(エスパー魔美)

    しばらく経ってもこの画面に変化がない場合は、Javascript を on にして再度読み込んで下さい。

      サマー・ドッグ(エスパー魔美)
    • 氷河期世代は自己責任と言われてもなと思うITエンジニア

      増田は40代前半。新卒はまさに氷河期でSESに就職していらいIT業界に居続けています。転職は数回経験済み。 新卒や20代からの氷河期への侮蔑を感じる。努力不足って感じの。 でもそもそも20年前と今じゃITも含めての周辺環境が違いすぎるのに努力不足の自己責任って言われるのはやっぱ納得がいかない。戦国時代の合戦見て「俺なら~」言う感じのなろう系かよ 転職のイメージの改善まずこれ。転職をなんとも思わなくなった。20年前は同業他社でも転職は難しかった。新卒辞めて出来るのは公務員試験とかかドブラックへの就職のみ。今以上に年齢と能力が釣り合わない募集しか出てなかった 転職のしやすさイメージとともにしやすさも一気に変わった。紙の履歴書と職務経歴書なんて消えた。今も求める企業はたぶんヤバい。アプリやサイトで申し込みしやすくなった。昔のような自分の足で見つけるとか人脈が無いと見つけられないとかがなくなった。

        氷河期世代は自己責任と言われてもなと思うITエンジニア
      • インドとインドネシアぐらい違うみたいなやつ

        前者が後者に部分一致するけど全然違うものの組み合わせ メロンとメロンパンJava と JavaScriptコンゴとコンゴ民主ギニアと赤道ギニア王将と大阪王将他には?

          インドとインドネシアぐらい違うみたいなやつ
        • 初心者がプログラミングを学ぶときに最も効果的な方法は「写経」だと思う|shi3z

          プログラミングの勉強方法で最も効果がない方法は「写経」です。コードを記憶しても無駄です。実際のプログラミングでは記憶にないコードを作り出さなければいけないからです 「写経」はタイピング速度の向上やキーワードを覚える効果はあるかもしれませんが、肝心のプログラミングには役に立ちません — Koichi Nakashima (@ko1nksm) September 3, 2024 こういうエントリを見かけたので。 僕は1990年代からプログラミングを人に教える仕事をしています。最初は中学の時に技術家庭科の授業を先生から任されて同級生にプログラミングを教えることから始まりました。その後、色々な方法を試しましたが、結論としてプログラミング初心者は写経した方が結局は上達が速いと今は考えています。 それが特に強く感じられたのは2015年頃から色々な人にAI関連のプログラミングを教え始めた頃です。 AI関

            初心者がプログラミングを学ぶときに最も効果的な方法は「写経」だと思う|shi3z
          • プログラマじゃない人でもAI対話用にJSONを学ぶのが最高効率という提案

            この文章はプログラマじゃない人向けに JSON を知ってもらうメリット、とくにAIとの効率的な対話方法を説明し、そしてあわよくばプログラマとも JSON の水準で会話してもらえたら嬉しい…というものです。 あなたは誰 UI を作るのが専門のエンジニアです。 エンジニア以外が使うノーコードのエディタを作ったりしてました プログラマじゃない人が JSON を知る利点 プログラマとして、プログラマじゃない人向けのノーコードなどを作っていたんですが、わかったことがあります。それは、「抽象的なロジックを記述するには訓練が必要だが、眼の前のデータとUIに対応したものは簡単に変更・記述できる」ということです。 自分の考える、もっとも成功したノーコードエディタこと Google Form JSON はよく知られているデータを記述する方法の一つです。特定の言語などとは関係ありません。 で、今現在 JSON

              プログラマじゃない人でもAI対話用にJSONを学ぶのが最高効率という提案
            • もしもいま、Rustをイチから学び直すとしたら? Rust入門書著者・matsu7874さんに聞く学習ロードマップ - Findy Engineer Lab

              めまぐるしく変化するテックの世界。技術を身に着けるうえで学ぶべきポイントや学習環境なども年々変わっています。 そこで「もしもいまの環境で、テックのことをイチから学び直すことになったら、自分はどんな風に勉強したいか」というIFストーリーを通じて、技術との向き合い方を考え直してみる企画「テック転生」。 今回は『Rust実践プログラミング入門』共著者の松本健太郎(@matsu7874)さんに“自分だったらこう進めたい、Rustの学習ロードマップ”をご寄稿いただきました。 無理なく2ヶ月でWeb開発をRustで始めるロードマップ 株式会社estieでソフトウェアエンジニアをしているmatsu7874です。2024年8月の今、イチからRustを学び直すロードマップ(あるいはリソースガイド)を考えてみました。仕事の合間にやっていくとして数週間、長くとも2ヶ月くらいでRustで開発している会社に入っても

                もしもいま、Rustをイチから学び直すとしたら? Rust入門書著者・matsu7874さんに聞く学習ロードマップ - Findy Engineer Lab
              • 「AI生成キャラクター」はいまどのレベルまで進んでいるのか?バンダイナムコ研究所が語るAIテキスト生成の光と影【CEDEC 2024】

                頼展韜氏プロフィール 會田翔氏プロフィール バンダイナムコ研究所は、バンダイナムコエンターテインメントと協力して配信AIキャラクタープロジェクトを実施しており、「ゴー・ラウンド・ゲーム(ごらんげ)」という企画を進行している。その裏側で、あるいはゲームテキスト素材生成ツールを作る際において、どのようにAIテキスト生成を利用していたか解説が行われた。 ゲーム開発環境においてもAI生成は当たり前に 近年、LLMは目まぐるしい発展をしており、さまざまな領域を含む問題で構成されるベンチマーク「MMLU」において、人間の専門家を超えるスコアを達成しているという。 しかもこれは商用モデルのみならず、MetaのLlamaをはじめとするオープンモデルも性能差が縮まってきているという。ゆえに、ゲーム開発においても応用が効くわけだ。 ゲーム内のテキスト生成という分野においては、 『ダンジョンズ&ドラゴンズ』のゲ

                  「AI生成キャラクター」はいまどのレベルまで進んでいるのか?バンダイナムコ研究所が語るAIテキスト生成の光と影【CEDEC 2024】
                • 技術選定の成功 2年間を振り返る TypeScript,Hono,Nest.js,React,GraphQL

                  技術選定の成功 2年間を振り返る TypeScript,Hono,Nest.js,React,GraphQL 技術選定に失敗はない 技術選定に失敗はありません。 仮説を立て、検証し、結果の分析からNext Actionを考える。検証の結果がどうであれ、それは過程に過ぎません。 机上の空論だけで全てを理解できるほど、我々人間は賢くないのです。(注意: これは人類全体を誹謗中傷する意味ではありません。) この記事では、この2年間で行った技術選定の成功例をその理由と共に紹介していこうと思います。 申し訳遅れましたが、私、YadaYadaKonnanYadaといいます。私は今回初めて記事を書いたので、どうぞお手柔らかに。 Twitterエンジニア垢作りました。エンジニアのお友達がいません。 @uncode_jp 前提 技術選定に結論はありません。組織毎に前提が違うのだから当然のことです。みんな違っ

                    技術選定の成功 2年間を振り返る TypeScript,Hono,Nest.js,React,GraphQL
                  • 顧客の要望から要件定義、システム生成まで自動化する「Babel」 OSSの「Zoltraak」がコア

                    AIと量子コンピューティングの研究開発を行なうKandaQuantumは、2024年8月31日、顧客の要望内容を元に自動的に要件定義を生成し、さらに自律的にシステムを構築する要件定義システム生成AI「Babel(バベル)」をリリースした。 Babelは一行の要望から要望一覧、要件定義まで一気通貫で記載する。「要件定義プログラミング」により、自然言語からコードへの直接変換を実現。顧客の要望やビジョンを入力するだけで、Babelが詳細な要件定義のYAMLファイルを自動生成する。その上で生成された要件定義に基づき、Babelが独自にシステムを設計、開発。技術的な詳細を指定することなく、望む機能やふるまいを記述するだけでシステムが構築される。

                      顧客の要望から要件定義、システム生成まで自動化する「Babel」 OSSの「Zoltraak」がコア
                    • デイリーポータルZ・林さんがリクルート流「データマネジメント」を深掘り。そもそもデータって大事なんですか……? - はてなニュース

                      「デイリーポータルZ」代表の林雄司です。これまではウェブマスターとか編集長と名乗って、一企業のなかでサラリーマンとしてサイトを運営していましたが、2024年1月にとうとう独立してしまいました。これからは、自分でコンテンツを作るだけじゃなく、営業とか経営をして、きちんとお金を稼がないといけません。 デイリーポータルZは、これまで大きな企業のもとで運営してきましたが、正直なところ20年余りずっと赤字でした。独立して赤字だとサイトを続けられないので、なんとか自分でも稼ごうといろいろやっていますが、けっこう難しいことだと身にしみています。 独立してみたら想像以上に多くの方や企業に応援していただき、驚くべきことに今は何とか黒字を保っています。でも、これからずっとこの状況が続くかどうかは分かりません。だから、もっとちゃんと稼がないとと思って、そのためにはどうすればいいんだろう、といろいろ考えたり、お金

                        デイリーポータルZ・林さんがリクルート流「データマネジメント」を深掘り。そもそもデータって大事なんですか……? - はてなニュース
                      • デザイナーにもお勧め! CSSもThree.jsもタイムライン編集を可能にするTheatre.jsが凄い - ICS MEDIA

                        デザイナーにもお勧め! CSSもThree.jsもタイムライン編集を可能にするTheatre.jsが凄い ウェブサイトの演出を作る上でアニメーションの実装は欠かせません。一般的には、CSSアニメーションやJavaScriptのライブラリ(GSAPジーサップなど)を用いてコードベースで動きをつけることが多いと思います。ですが、完全にコードだけでアニメーションを調整するのは大変だと思ったことはないでしょうか? 一度実装したことがある方は共感いただけるかもしれませんが、少し直そうにもコードに戻って調整し、反映されたブラウザ画面を確認して、もう一度コードを直して…と往復していると結構大変です。また、アニメーションさせるプロパティや要素が複数ある場合には、コードを解読する難易度も上がります。 本記事ではそんな悩みを解決できる、GUIからアニメーションを調整できるライブラリ「Theatre.jsシアタ

                          デザイナーにもお勧め! CSSもThree.jsもタイムライン編集を可能にするTheatre.jsが凄い - ICS MEDIA
                        • 個人開発でもADR (アーキテクチャデシジョンレコード)を書くことの利点 - laiso

                          起業なのか請負開発か趣味のプロジェクト(ペットプロジェクト)かによって状況は異なりますが「私のチームの開発者は私1人だけです」という個人開発においても、ADRは有効なツールとなりえます。 ADRとは何か? ADR(アーキテクチャデシジョンレコード)は、ソフトウェアアーキテクチャにおける重要な設計判断とその根拠、影響、関係する検討事項などを記録した文書です。 一見、現代的な響きですが、その実態はシステム設計ドキュメントの一部です。 "ADR"で検索すると真っ先にヒットするアーキテクチャの入門書『Design It! ―プログラマーのためのアーキテクティング入門』では、ADRは「アーキテクチャ手法に対する開発者寄りのアプローチ」と説明されており、アーキテクトと開発者自身がアーキテクチャに関する意思決定を記録し、共有するための手法として位置づけられています。 アーキテクチャデシジョンレコード(A

                            個人開発でもADR (アーキテクチャデシジョンレコード)を書くことの利点 - laiso
                          • 新しいチームでTypeScriptに素早くキャッチアップするためにやったこと - KAKEHASHI Tech Blog

                            カケハシのプラットフォームチームでソフトウェアエンジニアをしているすてにゃん (id:stefafafan) です。今回は、私が TypeScript をメイン言語として採用しているチームに参加した際、言語や周辺技術のキャッチアップを行った方法について紹介します。 この記事は秋の技術特集 2024の 3 記事目です。 この記事の想定読者 私が元々持っていたスキルセット 認知負荷の増加 TypeScript 学習のためにやったこと 学習の進め方 テックリードとの 1on1 の中で壁打ちや相談 ペアプログラミング 輪読会 もくもく会 学習コンテンツ O'Reilly Online Learning を使った学習 TypeScript Deep Dive プロを目指す人のための TypeScript 入門 安全なコードの書き方から高度な型の使い方まで type-challenges 公式ドキュメ

                              新しいチームでTypeScriptに素早くキャッチアップするためにやったこと - KAKEHASHI Tech Blog
                            • Functional TypeScript

                              オープンデベロッパーズカンファレンス(ODC)2024 での発表資料

                                Functional TypeScript
                              • 無料でセルフホストも可能なオープンソースの地図「OpenFreeMap」

                                自身のウェブサイトやアプリケーションにカスタムマップを表示したい場合、サイトへの登録やユーザーデータベースの作成、使用料の支払いなど面倒な手順を踏む必要がある場合もあります。しかし、ソフトウェアエンジニアのZsolt Ero氏が提供する「OpenFreeMap」は、無料でカスタムマップを表示できるほか、セルフホストすることも可能です。 OpenFreeMap https://openfreemap.org/ 実際に表示されるマップの例が以下。白黒でシンプルに表示されるマップが「Positron」です。 「Bright」ではカラーでマップが表示されるほか、ビルなどの名称が表示されます。 「3D」はマップを鳥瞰(ちょうかん)で見ることが可能で、ビルなどが立体的に表現されているのが特徴です。右クリックでマップを回転・角度を変化させることも可能です。 もう一つのスタイル「Liberty」は「Bri

                                  無料でセルフホストも可能なオープンソースの地図「OpenFreeMap」
                                • あなたのパフォーマンスを倍にする Frontend Ops の傭兵はいかがですか

                                  あなたのパフォーマンスを倍にする Frontend Ops はいかがですか.md あなたのプロジェクトに Frontend Ops を。 [経営者の方へ] ウェブサイトが遅くなっていませんか?機能追加が遅くなっていませんか? 私 @mizchi は Node.js とフロントエンドのエキスパートです。もし私を知らなければ、御社のフロントエンド担当に mizchi とは誰か聞いてみてください。それが一番早いと思います。 Frontend Ops の専門家として御社のプロダクトの改善にご協力します。 Frontend Ops は、ウェブサイトのロード時間を改善したり、開発者の基盤に手を入れることで一日に何度機能を追加できるかという指標に貢献するロールです。その結果としてUXを改善し、ビジネスを前進させます。 成果報酬で、費用はざっくり 100万円*達成率 となります。(詳細は後述) 弁護士作成

                                    あなたのパフォーマンスを倍にする Frontend Ops の傭兵はいかがですか
                                  • JavaScriptで実現するFLIPアニメーションの原理と基礎 - ICS MEDIA

                                    アニメーション実装のテクニックのひとつにFLIPと呼ばれるものがあります。FLIPアニメーションは2つの状態をなめらかにつなげるテクニックで、とくに移動や拡大といった動きに有効です。FLIPアニメーションを用いると、次のようなアニメーションを実装できます。 本記事では、ライブラリに依存しないFLIPアニメーションの原理を理解し、実装する方法を紹介します。 FLIPアニメーションとは FLIPとは、First, Last, Invert, Playをまとめた造語です。これらはFLIPアニメーションの手順を説明したものになります。 First:アニメーションを開始するときの状態 Last:アニメーション終了時の状態 Invert:変化量を計算し、Lastの状態に適用してFirstの状態を復元します Play:Invert量を徐々に減らしてLastの状態に近づけていきます FLIPのおもしろい点

                                      JavaScriptで実現するFLIPアニメーションの原理と基礎 - ICS MEDIA
                                    • role 属性とは、aria-* 属性とは、WAI-ARIA とは、いったい何なのか、いつ使うべきなのか - Qiita

                                      role 属性とは、aria-* 属性とは、WAI-ARIA とは、いったい何なのか、いつ使うべきなのかHTMLアクセシビリティWAI-ARIA 最近、いくつかの場面でWebアクセシビリティについて、コーディングに関する技術的な説明をする機会がありました。そのなかで、そもそもWAI-ARIAというものが、どういう立ち位置のものなのかがわかりづらい状態にあるということに気付きました。その結果として、WAI-ARIAの活用を含めたWebアクセシビリティ向上に取り組むことへのネガティブな印象が生まれてしまったり、理解が足りないままWAI-ARIAの属性を使うことでかえって問題が発生しやすくなってしまったりしている現状があるのではないかと思うようになりました。 そこでこの記事では、なるべくわかりやすい形で、WAI-ARIAそのものや、その中で登場する role 属性や、名前に aria- のプレフ

                                        role 属性とは、aria-* 属性とは、WAI-ARIA とは、いったい何なのか、いつ使うべきなのか - Qiita
                                      • 21社の監視・オブザーバビリティ アーキテクチャ特集 - Findy Tools

                                        デジタル時代の企業にとって、システムの安定稼働と迅速な問題解決は、競争力を維持するための重要な要素です。21社にご寄稿頂いた「Amazon CloudWatch」「Datadog」「Grafana」「New Relic」「Prometheus」「Sentry」「Splunk」の各ツールレビュー記事を参照・抜粋し、それぞれの企業がどのようにシステムの健全性を確保し、未来の課題に備えているのかをアーキテクチャを通してご紹介します。 ※ツール名・ご寄稿企業名共にアルファベット順で掲載しております Amazon CloudWatchAWS CloudWatchは、AWSのクラウドリソースとアプリケーションの監視と管理を行うためのサービスです。メトリックス、ログ、イベントなどを収集、追跡し、可視化することで、システム全体の状態を把握し、問題の早期発見と解決をサポートします。 ▼Amazon Clou

                                          21社の監視・オブザーバビリティ アーキテクチャ特集 - Findy Tools
                                        • Bitwardenの実装から学ぶE2EE

                                          この文章はなに? 本文章は、パスワードマネージャーであるBitwardenが公開しているソースコードを読み、そこでE2EE(End-to-end encryption)がどのように実装されているかについて、私が理解した内容をまとめたものです。 「E2EEをぼんやり理解してるが、どのように実装されているのかはわからない」という方を主な対象としています。 E2EEに対する私個人の課題感として、インターネット等から得られる説明が比較的抽象的であり、実装レベルでの理解が難しいというものがあります。 そこで私自身、そして同じ課題感を持つ方に向けて、E2EEを実践しているアプリケーションの1つであるBitwardenを参考に、それがどのように実装されているのかを詳細に理解すべく、本文章にまとめることとしました。 なお対象アプリケーションとしてBitwardenを選んだのは、私自身がユーザーであること、

                                            Bitwardenの実装から学ぶE2EE
                                          • Web標準のバックエンドアプリのテスト

                                            ここで言う「Web標準のバックエンドアプリ」とはCloudflare Workers、Deno、BunなどのWeb標準をサポートするランタイム上で動くWebアプリです。もしくは、Node.jsでもWeb標準のAPIをサポートしているので、これから紹介するアプリとテストコード自体はNode.js上も動きます。 これらのテストを書く、実行するのは実にシンプルで、拍子抜けしてしまうほどです。ですが、現在、20,000行あるHonoのテストコードは、これらのやり方と全く同じ方法を取っています。注目すべき点は、実際のサーバーを立ち上げることがなく、抽象化されたリクエストとレスポンスのやり取りを試験するだけで、品質が保たれる点です。Honoのテストでは、ランタイムによっては一部実サーバーを立ち上げますが、コアの20,000行ではサーバーを立ち上げていません。この抽象化はPythonのWSGI、Ruby

                                              Web標準のバックエンドアプリのテスト
                                            • オラクルよ、 JavaScriptの商標を手放すときだ。Denoのライアン・ダール氏がオラクルに公開書簡

                                              主要なJavaScriptランタイムであるNode.jsの作者であり、現在もDenoの開発を進めているライアン・ダール氏は、JavaScriptの商標を所有しているオラクルに対して商標を手放すように要請する公開書簡「Oracle, it’s time to free JavaScript.」を公開しました。 オラクルへの要請は今回で2回目 同氏がオラクルにJavaScriptの商標を手放すように要請する試みは2回目です。1回目は2022年9月に行われています。 参考:Denoのライアン・ダール氏「親愛なるオラクル殿、どうかJavaScriptの商標を手放して」と呼びかけ JavaScriptはNetscapeがWebブラウザ用に開発したプログラミング言語であることはよく知られていますが、その名称はサン・マイクロシステムズが登録商標として所有し、同社がオラクルに買収されたことで現在はオラクル

                                                オラクルよ、 JavaScriptの商標を手放すときだ。Denoのライアン・ダール氏がオラクルに公開書簡
                                              • ユーザー体験重視のSPAアーキテクチャ改 - laiso

                                                JavaScriptフレームワークを取り巻く状況は、常に変化を続けています。近年では、サーバーサイドレンダリング(SSR)とクライアントサイドレンダリング(CSR)のバランスは、重要な検討事項です。 ChatGPTのRemix採用 2024年9月、ChatGPTがNext.jsからRemixに移行したことが明らかになりました。この出来事は、Remixの母体であるReact Router系のコミュニティで大きな話題となり、移行の理由について様々な憶測を呼びました。 JavaScriptエキスパートのWes Bos氏(学習動画教材とかを作っている人)は、ChatGPTのフロントエンドのソースコードを分析し、OpenAIがRemixを採用した理由について独自の考察を展開しました。 www.youtube.com 緊急で動画を回すWes Bos氏 Wes Bos氏の分析によると、ChatGPTのア

                                                  ユーザー体験重視のSPAアーキテクチャ改 - laiso
                                                • 「絶対にdisabled属性を避けて、aria-disabled属性を使わなければならない」わけではありません - Qiita

                                                  「絶対にdisabled属性を避けて、aria-disabled属性を使わなければならない」わけではありませんHTMLアクセシビリティWAI-ARIA 最近、「アクセシビリティを向上させたいなら、HTMLの disabled 属性ではなく、aria-disabled 属性を使うべき」という主張を見かけますが、本当にそうなのでしょうか? disabled属性を使っていても、スクリーンリーダーで要素を知覚できる そのような主張をしている人、それを受け止めた人の中には「 disabled 属性を使った要素はスクリーンリーダで読めなくなる」と誤解している人が少なからず存在するように思われます。しかしこれは正しい理解ではありません。 たしかに、disabled属性を付加している button 要素や input 要素、 select 要素、 textarea 要素は、Tabキーによるフォーカスはでき

                                                    「絶対にdisabled属性を避けて、aria-disabled属性を使わなければならない」わけではありません - Qiita
                                                  • ジャイアントパンダに注意 - Next.js のビルド改善 (株式会社GiXo様)

                                                    最近になって Frontend Ops の傭兵として活動を始めました。 Frontend Ops 実践のモデルケースとして、 株式会社GiXo様で Next.js 仕事に取り組ませいただきました。今回、その内容を公開する許可を頂けたので、事例として公開させていただきます。 依頼主 株式会社GiXo様 以下、敬称略 相談内容 フロントエンド関連のリポジトリで、Next.js のビルドが遅くなってしまった。 重いことに起因して Vercel CI で OOM で確率的に落ちるようになった。CIが信用できなくなり、とりあえず再ビルドするクセがついてしまって、生産性が落ちている。 モノレポ内にとくに重いアプリケーションが一つあり、これを調査・解決してほしい。 仮ゴール: VercelCI 上のビルド時間を半分OOM が発生しないようにしたい 調査フェーズ リポジトリの閲覧権を頂き、プロジェクト構成

                                                      ジャイアントパンダに注意 - Next.js のビルド改善 (株式会社GiXo様)
                                                    • Next.js(App router)における開発しやすいディレクトリ構成の例 - TechDoctor開発者Blog

                                                      初めまして、テックドクターでフロントエンド開発を担当している大瀧です。 ディレクトリ構成はコードの可読性やスケーラビリティに関わる重要な要素であると思っています。 しかし、フロントエンドのディレクトリ構成はベストプラクティスが確立されておらず、わりと悩むポイントです。 そこで今回は、Next.jsのApp routerにおいて、弊社で採用しているディレクトリ構成を共有します。この記事がディレクトリ構成に悩む開発者の助けになれば幸いです。 ディレクトリ構成の自由度が高すぎる問題 さきほど「フロントエンドのディレクトリ構成はベストプラクティスが確立されていない」と書きましたが、特にApp routerのディレクトリ構成については、公式ドキュメントで以下のように記載されています。 There is no "right" or "wrong" way when it comes to organi

                                                        Next.js(App router)における開発しやすいディレクトリ構成の例 - TechDoctor開発者Blog
                                                      • Next.js のページ遷移を全力で止める

                                                        LX Frontend Night: Unleash Next.js https://github.com/LayerXcom/next-navigation-guard

                                                          Next.js のページ遷移を全力で止める
                                                        • ウェブエンジニアでもWasmを使いたい! アフタートーク

                                                          フロントエンドカンファレンス北海道 2024にて「ウェブエンジニアでもWasmを使いたい!」というタイトルで20分のトークを行いました. 当日のトークでは,WebAssemblyの特徴に触れつつ,特殊な用途[1]以外でWebAssemblyをどのように活用できそうか,実際にAssemblyScriptのコードを例に紹介しました. AssemblyScriptはTypeScriptをWebAssemblyにコンパイルできる言語として紹介しましたが,より正確にはTypeScriptと同じ構文を持つ言語をWebAssemblyにコンパイルする言語という方が正しいかもしれません. これはTypeScriptにはない構文などをAssemblyScriptでサポートしているという話ではなく,TypeScriptの型推論などの言語機能を活用してAssemblyScriptのコードを書くことができるように

                                                            ウェブエンジニアでもWasmを使いたい! アフタートーク
                                                          • URLシェアを支える技術 lz-string

                                                            WebアプリでURLシェアを実装する際に、URLにすべての情報を持たせてしまいたい場合があります。そのとき、情報をそのままクエリ文字列に渡してしまうとURLの文字数制限に引っかかってしまうかもしれません(厳密にはURLに上限はないようですが、現実はいつもブラウザ実装依存)。 そんなときURLセーフな文字列形式で圧縮してくれるライブラリがあります。lz-sringです。 変換の例 ライブラリで compressToEncodedURIComponent というAPIが提供されているのでこれを使用します。標準のencodeURIComponentでURLセーフな文字列に変換した場合とサイズ比較をしてみましょう。 import lzstring from "lz-string"; const rawData = "Lorem ipsum dolor sit amet, consectetur a

                                                              URLシェアを支える技術 lz-string
                                                            • 弊社のフロントエンドのテストについて、考え方・方針・やっていることなど全部紹介します(2024年版)

                                                              はじめに この記事について こんにちは、zomysan(ぞみ) です。今回は私の所属するソーシャルPLUSのフロントエンドチームがどのようなことを考えてテストを作っているのかを紹介します。 フロントエンドのテスト手法については素晴らしい本や記事がすでにたくさん存在しますが、限られたリソースの中で、実務としてどうテストをこなしているのか、という具体的な事例として楽しんでいただければ幸いです。 テスト運用における課題や改善点も率直に紹介しますので、「うちではこうやって解決しているよ」といったご意見があればぜひコメント欄で教えてください! 対象読者 フロントエンドのテスト運用に悩んでいる方 フロントエンドのテストってどういうものなのか興味がある方 ソーシャルPLUSに入社したフロントエンドメンバー この記事に書いていないこと すべてのチームにとっての最適解は提示していません 弊チームにとっても折

                                                                弊社のフロントエンドのテストについて、考え方・方針・やっていることなど全部紹介します(2024年版)
                                                              • スタイルをカスタマイズ可能な新しい `<select>` 要素

                                                                Note 2024/09/21 現在、カスタマイズ可能な <select> 要素は Chrome Canary の v130 以降で Experimental Web Platform Features フラグを有効にすることで利用可能です。 従来の <select> 要素は CSS を利用したスタイルを適用できないため、多くの開発者にとって課題となっていました。この課題を解決するために JavaScript を用いて独自のセレクトボックスを実装することが一般的ですが、この方法はアクセシビリティやパフォーマンスの問題を引き起こすことがありました。 この問題を解決するために新しい既存の <select> 要素をカスタマイズする手段が提案されました。<select> 要素と ::picker(select) 疑似要素に対して appearance:base-select を指定することで、開発

                                                                  スタイルをカスタマイズ可能な新しい `<select>` 要素
                                                                • 弊社最強のVBA使いの方が15年前からほぼメンテ無しで動いてるシステムのドキュメントを残してないとかで詰められてた→非IT 企業あるある…

                                                                  泥臭IT担当者F @IT_craftmanship 前時代的体質大手メーカーで働く生技-DX横断社員。 DX系はPython/VBA/Tableau/RPA/WebでJavascript 生産技術系はIoT/Fusion360あたりをつぶやきます。 無能な管理職の食い散らし方と討伐計画についてつぶやく下克上アカウントです。 泥臭IT担当者F @IT_craftmanship 弊社最強のVBA使いの方が15年前からほぼメンテ無しで動いてるシステムのドキュメントを残してないとかで詰められてて流石に部長らに向かって「保守運用のためにちゃんと工数取ったのか?内製だからって効果の刈り取りに目が眩んで展開に必死でやりっぱなしになっただけなら担当の責任違うぞ」 泥臭IT担当者F @IT_craftmanship やっとくべきことをやってなかった、これで担当が詰められるならそれはやれと指示されて工数貰って

                                                                    弊社最強のVBA使いの方が15年前からほぼメンテ無しで動いてるシステムのドキュメントを残してないとかで詰められてた→非IT 企業あるある…
                                                                  • 次世代のブラウザテスト自動化プロトコルWeb Driver BiDi

                                                                    Seleniumの独自実装が元となって2018年にはW3C勧告として標準化されました。[1] 言葉の使い方が非常にややこしいのですが、ここでいうW3CのWebDriverはChrome Driver, geckodriverといった具体的な実装ではなく、ブラウザを自動化するためのAPIとプロトコルを規定したものを指しています。 Selenium4を例にとるとWebDriver型のツールは次の流れで動作しています。 Driverに対してクライアントから自動化コマンドを送る Driverが実際のブラウザ操作に変換し、ブラウザを自動操作 Architecture of Selenium WebDriver この方式はW3Cの標準が存在しクロスブラウザ対応が容易な点でメリットがあります。一方で仕組み上flakyになりやすかったり、websocketを使った実装に比べて低速であるというデメリットがあ

                                                                      次世代のブラウザテスト自動化プロトコルWeb Driver BiDi
                                                                    • Playwrightでライブプレビューツールを実装する - ベースマキナ エンジニアブログ

                                                                      こんにちは、yebis0942です。 先日、@basemachina/bm-view-previewというツールをnpmで公開しました。ベースマキナのビュー機能のソースコードをローカル環境で編集しながら、Next.jsのnpm run devのようにライブプレビューで動作を確認できるツールです。 ライブプレビューはPlaywrightによってコントロールされたChromiumで表示しています。PlaywrightをE2Eテストや自動化以外の用途で使うのは珍しい事例かと思いますので、その背景と実装の裏側についてご紹介します。 ビュー機能とは ローカル環境で開発したい bm-view-previewの内部構成 ライブラリとしてのPlaywright ブラウザを人の手で操作できるようにする ウィンドウを表示する ウィンドウのリサイズに対応する ダイアログを自動で閉じない できなかったこと アプリ

                                                                        Playwrightでライブプレビューツールを実装する - ベースマキナ エンジニアブログ
                                                                      • null or undefined

                                                                        https://kyoto-nanka.connpass.com/event/324686/ 補足など: https://susisu.hatenablog.com/entry/2024/09/07/213747

                                                                          null or undefined
                                                                        • 60年前からのプログラミング和文論文を掘り起こした話

                                                                          最初はタイトルを「和文プログラミング論文を〜」としていたのですが、いわゆる「日本語プログラミング言語」の話にも見えてしまうことから、「プログラミング和文論文を〜」に置き換えました。 日本の人々が「プログラミング」にかかわるようになったのは、いつごろでしょうか? その前に、まずは世界のコンピュータとプログラミングの歴史を簡単に振り返ってみましょう。まずは OS から有名どころをたどると、 わかりやすく Windows 95 が 1995 年 [1] その前に広く使われた Windows 3.1 は 1992 年 [2] その下で動く MS-DOS は、バージョン 6 が 1993 年、バージョン 1 が 1981 年 [3] Linus Torvalds が Linux の開発を始めたのが 1991 年 [4] その「契機となった」 Andrew Tanenbaum の MINIX が 19

                                                                            60年前からのプログラミング和文論文を掘り起こした話
                                                                          • プログラミング練習用のタイピングゲームを作った話。エンジニアなら4000点を超えたい! - Qiita

                                                                            はじめに 少しキャッチーなタイトルにしました。すみません。 あくまで、お遊び程度として是非タイピングゲームを楽しんで頂ければと思います。 以下のプログラミング練習用のタイピングゲームを作成しました。 結構面白いです。ハマります。是非、一度プレイしてみて下さい。 4000 点を超えると、結構凄いです。 目指すべきスコア こちらのプログラミング練習用のタイピングゲームで、目標にすべきスコアを簡単にまとめました。社内で色々遊んでみて、大体こんな感じかなー、という感じで適当に書いてます。 8000 点以上 まだ誰も到達したことが無い未踏の地。自分はたどり着ける気がしません。 7000 点以上 かなりタイピングが速い人。寿司打で 20000 点以上は軽く出せる人が到達できるスコアです。 6000 点以上 寿司打で 20000 点を稀に超える人が到達できるスコア。 5000 点以上 タイピングのかなり

                                                                              プログラミング練習用のタイピングゲームを作った話。エンジニアなら4000点を超えたい! - Qiita
                                                                            • 売れるウェブの最新HTML/CSSテクニック40選

                                                                              目まぐるしく変化するWebデザインの世界は、新しい技術やテクニックが毎日のように登場し、追いかけるだけでも大変。 「Webデザインの最新テクニックを知りたいけど、時間が足りない」という方へ。 この記事では、話題になった人気テクニックを中心に集めているので、効果的にWeb注目ニュースをインプットできます。 しかもスニペットはコピペで利用でき、CSSのみでスタイリングされたものも多数。 HTML/CSSやJSのコードをリアルタイムで編集、確認できるので、今後のデザイン制作に活用してみてはいかがでしょう。 こんなことできるの?!最新HTMLテクニック・スニペット Timed Cards Opening カード型の画像カルーセルのスライドに合わせて、背景のフルスクリーンが切り替わる、ヒーロー要素を想定したスニペット。 See the Pen Timed Cards Opening by Dilum

                                                                                売れるウェブの最新HTML/CSSテクニック40選
                                                                              • 2024年9月 俺の eslint.config.js

                                                                                はじめに 「Flat Config が何かはわかったからサンプルをくれ!」という方向けの記事です。 筆者が普段使用している eslint.config.js をご紹介します。 Flat Config については良記事がたくさんあるため ↓ などを参照してください。 今回ご紹介する設定は、React × TypeScript を使用し、フォーマットは Prettier に任せる前提になっています。 しかし、Vue やサーバー Node.js でも使いまわせる箇所は多いと思います。 eslint.config.js まずは結論から。 // @ts-check import { fixupConfigRules } from '@eslint/compat'; import { FlatCompat } from '@eslint/eslintrc'; import eslint from '@

                                                                                  2024年9月 俺の eslint.config.js
                                                                                • CompressionStream でブラウザで gzip 圧縮する

                                                                                  モダンなブラウザは JS API として gzip や deflate が使えます。 昔から Chrome に搭載してるのは知ってたんですが、今見たらだいたい搭載してました。 わかってる人向けに言うと、バンドルサイズ大きめの JS実装の pako や zlib.js が不要になって、ブラウザネイティブの(たぶんHTTP上のgzip展開と同等の)高速な実装が使えます。 // impl const encoder = new TextEncoder(); const decoder = new TextDecoder(); export async function compress(str: string): Promise<ArrayBuffer> { const cs = new CompressionStream("gzip"); const buf = encoder.encode(

                                                                                    CompressionStream でブラウザで gzip 圧縮する