並び順

ブックマーク数

期間指定

  • から
  • まで

441 - 480 件 / 22184件

新着順 人気順

node.jsの検索結果441 - 480 件 / 22184件

  • N予備校 「プログラミング入門 Webアプリ」を修了した. - JUNのブログ

    タイトルにもあるとおり, N予備校の 「プログラミング入門 Webアプリコース」を修了しましたので, 完走した感想を書きたいと思います. プログラミング入門 Webアプリコース とは まずはじめに, 今回終了したN予備校の「プログラミング入門 Webアプリコース」(長いので以下 入門コース と略します) がどんなコースなのかというのは, N予備校公式サイトから引用すると, 完全な未経験者向けのプログラミング入門講座です。 JavaScriptというプログラミング言語でセキュリティ上の問題のないWebサービスが開発できるようになります。他にも数値集計プログラム、Slackのボットなどを作成しながら、エディタやLinuxの開発環境などの基礎知識を身につけます。なお学習にはPCが必要です。 www.nnn.ed.nico とのことらしいです. 他にも 「大規模Webアプリコース」 や 「スマート

      N予備校 「プログラミング入門 Webアプリ」を修了した. - JUNのブログ
    • マルチバイト文字とURL | 技術者ブログ | 三井物産セキュアディレクション株式会社

      MBSDでWebアプリケーションスキャナの開発をしている寺田です。 前記事では正規表現でのURLのチェックについて書きました。今回はその続きでマルチバイト文字を使った攻撃について書きたいと思います。 前提条件 本記事で想定するのは、ブラウザからパラメータとして渡されて来るURLを、リダイレクトやリンク等のURLとして使うケースです。その中でも、以下のようにサブドメイン部分(★の部分)を可変にする状況を主に想定します。 https://★.example.jp/… 攻撃の目標は、異なるドメイン(evil)のURLを与えてチェックをすり抜けることです。前回の記事にも書きましたが、この状況は(半角英数等のサブドメインしか受け入れないような場合を除き)「/」「?」「#」「\」のいずれかをサブドメインに入れることで攻略できることが大半です。 今回はこれらの記号が全て使用できないように対策されているこ

        マルチバイト文字とURL | 技術者ブログ | 三井物産セキュアディレクション株式会社
      • JavaScriptの非同期処理をじっくり理解する (4) AbortSignal, Event, Async Context

        対象読者と目的 非同期処理の実装方法は知っているが、仕組みを詳しく知らないのでベストプラクティスがわからないときがある 実行順序の保証がよくわからないので自信をもってデプロイできない変更がある より詳しい仕組みを理解することでより計画的な実装をできるようになりたい という動機で書かれた記事です。同様の課題を抱える人を対象読者として想定しています。 目次 実行モデルとタスクキュー Promise async/await AbortSignal, Event, Async Context WHATWG Streams / Node.js Streams (執筆中) 未定 中止処理 並行処理ではしばしば実行中の処理を中止したい場合があります。 古典的なキャンセル処理 Webブラウザ/Node.jsともに、 setTimeout の中止が可能です。 const timeout = setTimeo

          JavaScriptの非同期処理をじっくり理解する (4) AbortSignal, Event, Async Context
        • 外注で初期開発したシステムを内製化するためにやったこと

          この記事は FastDOCTOR After Advent Calendar 27日の記事です。 はじめに ファストドクター株式会社でテックリードをしている shirauix と申します。 弊社では、ある Next.js アプリケーションを別会社のパートナーさんに外注することによって初期開発を行いました。ある時点からこのシステムを内製化することになったのですが、それにあたって多くの課題を解決する必要がありました。 この記事では、外注と内製のそれぞれのメリット・デメリットや、内製に切り替える際にどんな苦労があったのかについての赤裸々な事例をご紹介します。 対象となる読者 外注で初期開発したシステムを内製に切り替えてメンテナンスしようとしているエンジニアの方 新しくシステムを開発したいが、外注と内製のどちらを選択すべきか悩んでいる方 外注と内製の違い 外注するか内製するかはあくまで手段の話であ

            外注で初期開発したシステムを内製化するためにやったこと
          • 新しいメルカリ Web の話 | メルカリエンジニアリング

            @1000ch です、今回は新しいメルカリ Web について書きます。この大きなプロジェクトのリリースは、多くの人の多大なる貢献によって成されたものです。そのプロジェクトの立ち上がりから今日まで、リードする役割でプロジェクトを見てきた一部始終を記録するべく書きます。 メルカリにおけるレガシーなソフトウェア ソフトウェアは生モノとよく言われますが、古くなったソフトウェアとどう付き合っていくかは、どの開発組織も抱えている、あるいはいつかはぶつかる課題なのではないかと思います。多くの方々に利用して頂くためには大規模なソフトウェア群を開発し運用する必要があります。しかし、はじめから全てを見越して完璧なアーキテクチャを構築するのは不可能であり、それをビジネスの成長に耐えうるものにソフトウェアを成長させていくのがエンジニアリングの責務です。 2013 年にスタートしたメルカリに於いても例外はなく、急速

              新しいメルカリ Web の話 | メルカリエンジニアリング
            • DHH氏がRails 8の新機能を解説。Redisなど不要になり、SQLite対応でよりシンプルな構成に。Rails World 2024

              DHH氏がRails 8の新機能を解説。Redisなど不要になり、SQLite対応でよりシンプルな構成に。Rails World 2024 9月26日と27日の2日間、カナダのトロントで開催されたRails World 2024の基調講演で、Ruby on Rails(以下Rails)の作者であるDHH(David Heinemeier Hansson)氏が「Rails 8」の主な新機能を紹介しました。 The #RailsWorld 2024 Opening Keynote with @dhh is now online. Rails 8 beta shipped with Authentication, Propshaft, Solid Cache, Solid Queue, Solid Cable, Kamal 2.0, and Thruster. #NoPaaS needed in

                DHH氏がRails 8の新機能を解説。Redisなど不要になり、SQLite対応でよりシンプルな構成に。Rails World 2024
              • React Server Components と GraphQL のアナロジー

                Next.js の App Router が安定版となり、React Server Components (以下 RSC) を実際に試す環境が整ってきた。 実際、今年はやれどこそこのプロダクトが Next.js を採用しただのやっぱり捨てだのといった話題が尽きなかったように思う。 かくいう自分自身も、今年は App Router の案件に取り組んで RSC と格闘する日々を送っていた。 その過程で、こんなようなことを考えるようになったので、今回はこの辺りの話を書き残しておこうと思う(何回か X に同じ旨の POST は上げていたけど、一回もちゃんとまとめてなかったので)。 RSC がない頃の、別の言い方をすると getServerSideProps を使っていた頃の、Next.js におけるアプリケーションの設計は、トラディショナルな MVC にかなり近しい。 ここでいう MVC は、Sp

                  React Server Components と GraphQL のアナロジー
                • 達人出版会

                  探検! Python Flask Robert Picard, 濱野 司(訳) BareMetalで遊ぶ Raspberry Pi 西永俊文 なるほどUnixプロセス ― Rubyで学ぶUnixの基礎 Jesse Storimer, 島田浩二(翻訳), 角谷信太郎(翻訳) 知る、読む、使う! オープンソースライセンス 可知豊 きつねさんでもわかるLLVM 柏木餅子, 風薬 徹底攻略 AWS認定 クラウドプラクティショナー教科書 第2版[CLF-C02]対応 トレノケート株式会社 高山裕司 超楕円関数への招待 楕円関数の一般化とその応用 松谷 茂樹 手を動かしてわかるクリーンアーキテクチャ ヘキサゴナルアーキテクチャによるクリーンなアプリケーション開発 Tom Hombergs(著), 須田智之(訳) 詳解 AWS CloudFormation 潮村 哲 その決定に根拠はありますか? 確率思

                    達人出版会
                  • Re: WebサーバーアーキテクチャとPHP実行方式の理解から始めるphp-fpmとはなにか?

                    この記事のモチベーション 「php-fpmとはなにか?」を知るため、PHPのドキュメントを見ました。 しかし、ここに書いていることはまあそうなのですがあまりに焦点が絞られ過ぎてて「php-fpmとはなにか?」に対する答えとしては少し不十分な気がしていました。 例えるなら数学の問題に答えるにあたって、途中式を飛ばしたり証明の過程を飛ばしたりというような感じ。 不十分というのは、それを理解するための段階をすっ飛ばして答えだけが書かれている状態のことを指しています。 その不十分なところを自分も曖昧にしか理解できていない気がしており、いい機会なので整理しておこうというのがこの記事のモチベーションです。 そのためこの記事は、「php-fpmとはなにか?」をプロセス→Webサーバー→実行方式と順を追って説明していく構成になっています。 「細けぇこたぁいいんだ、おらぁ今すぐ答えだけ知りてぇンダ」という方

                      Re: WebサーバーアーキテクチャとPHP実行方式の理解から始めるphp-fpmとはなにか?
                    • 継続的にベンチマークを取るための GitHub Action をつくった - はやくプログラムになりたい

                      今年9月に GitHub Action v2 がリリースされました.GitHub Action は GitHub が提供する CI/CD サービスです. 既存のサービスと大きく違う点は,処理を汎用的に Action として切り出して再利用できることです. 例えば,GitHub からのリポジトリのクローン actions/fetch や Node.js のセットアップ actions/setup-node などの基本的な実行ステップも Action として実装されています. 今回はこの GitHub Action を利用して,前々からあると良いなと思っていたベンチマークを継続的に取るための Action をつくりました. github.com github-action-benchmark はベンチマークの実行の出力からベンチマーク結果を抽出し,GitHub pages のブランチに JSO

                        継続的にベンチマークを取るための GitHub Action をつくった - はやくプログラムになりたい
                      • Bootstrap 5の作業環境の構築方法、jQueryを使用しないJavaScriptでの実装方法を解説

                        Bootstrap 5の作業環境の構築方法、依存関係のインストール手順、ページやコンポーネントの実装、jQueryを使用せずにシンプルなJavaScript(バニラJS)でコンポーネントを実装する方法などを紹介します。 Bootstrap 5 tutorial: learn how to get started without jQuery by @zolidev 下記は各ポイントを意訳したものです。 ※当ブログでの翻訳記事は、元サイト様にライセンスを得て翻訳しています。 はじめに Bootstrap 5の作業環境を用意する方法 npm依存関係のインストール Sassファイルをコンパイルするためのgulpfileを作成し、BrowserSync経由でローカルサーバーを作成 BootstrapのSassファイルをワークフローに含める 新しいマークアップで簡単なブログページを作成する ナビゲー

                          Bootstrap 5の作業環境の構築方法、jQueryを使用しないJavaScriptでの実装方法を解説
                        • ReactベースのあたらしいフレームワークRemixをためしてみた | DevelopersIO

                          OSSとしてリリースされたばかりのReactベースのフルスタックWebフレームワークであるRemixをためしてみました。 はじめに こんにちは、CX事業本部MAD事業部の森茂です。 re:Inventを前にAWSの情報も気になるところですが、フロントエンド界隈もReact Conf 2021を前にReact v18 betaをはじめ、Next.js v12やReact Router v6、新しいRoutingライブラリReact Locationのリリースなどなど注目のリリースラッシュが続いているようです。そんな中Reactをベースにした新しいフレームワークであるRemixが本日(2021/11/23日本時間)リリースされました。 Remixとは RemixはReactRouterの作者でもあるMichael Jackson氏(@mjackson)とRyan Florence氏(@ryan

                            ReactベースのあたらしいフレームワークRemixをためしてみた | DevelopersIO
                          • ISUCON12 予選の解説 (Node.jsでSQLiteのまま10万点行く方法) : ISUCON公式Blog

                            ISUCONとはLINEヤフー株式会社が運営窓口となって開催している、お題となるWebサービスを決められたレギュレーションの中で限界まで高速化を図るチューニングバトルです ISUCON12 予選の解説 (Node.jsでSQLiteのまま10万点行く方法) こんにちは、面白法人カヤックのacidlemonです。例年ISUCONに参加するたびにとても長い「やったこと」ブログを書いているので、もしかしたらそちらを読んだことがある人もいるかもしれません。 ISUCONの公式サイトに記事を書くのは ISUCON3の予選の解説 以来でしょうか。今回もacidlemonが解説、fujiwaraが講評を書く予定ですので、お楽しみに。あ、そういえば先日掲載していただいた 面白法人カヤックからの応援メッセージ の脳内インタビューも私が書いていますのでよく考えたらそれ以来ということになるのかもしれません。予選

                              ISUCON12 予選の解説 (Node.jsでSQLiteのまま10万点行く方法) : ISUCON公式Blog
                            • マイクロソフト、次の.NET 7にネイティブコンパイラを搭載する見通しを明らかに

                              マイクロソフトは現在開発中のフレームワーク「.NET 7」で、ソースコードからターゲットプラットフォームに対応したネイティブバイナリをコンパイル時に生成するAOT(Ahead of Time)コンパイラを搭載する見通しだと、「Announcing .NET 7 Preview 3」で明らかにしています。 AOTコンパイラ、すなわち事前コンパイラとは、アプリケーションのビルド時にソースコードをコンパイルしてネイティブバイナリを生成する機能を備えています。 一般に「コンパイラ」とはこのAOTコンパイラのことを指すことが多いですが、アプリケーション実行時にソースコードや中間コードから動的にネイティブバイナリを生成するコンパイラのことをJIT(Just-in-Time)コンパイラと呼ぶのに対比して、あえて「AOTコンパイラ」と呼ぶことも最近では増えてきました。 現在、.NET対応のプログラミング言

                                マイクロソフト、次の.NET 7にネイティブコンパイラを搭載する見通しを明らかに
                              • マイクロソフト、JavaScriptに型宣言を追加しつつトランスパイラ不要の「Types as Comments」をJavaScript仕様策定会議のTC39に提案へ

                                マイクロソフト、JavaScriptに型宣言を追加しつつトランスパイラ不要の「Types as Comments」をJavaScript仕様策定会議のTC39に提案へ マイクロソフトのTypeScript開発チームは、JavaScriptのコードにTypeScript互換のアノテーション(注釈)を加えることで変数や関数などの型を宣言し、エディタなどのツールで型情報を活用可能にする一方、実行時にはJavaScriptエンジンがアノテーションを無視することでコードをトランスパイラで変換することなく実行可能なJavaScriptの新構文「Types as Comments」を、JavaScriptの使用を策定する「TC39」(Ecma International, Technical Committee 39)に提出する計画を明らかにしました。 このマイクロソフトの発表には、TC39の共同議長で

                                  マイクロソフト、JavaScriptに型宣言を追加しつつトランスパイラ不要の「Types as Comments」をJavaScript仕様策定会議のTC39に提案へ
                                • [Web フロントエンド] esbuild が爆速すぎて webpack / Rollup にはもう戻れない - 株式会社カブク

                                  TypeScript + Preact + Material UI + material-table で作っている管理画面のビルドツールを Rollup から esbuild に変えたお話です。 2021/01/07 追記 esbuild に新しく CSS ローダーやプラグイン機構が実装されたので紹介記事を書きました! esbuild の機能が足りないならプラグインを自作すればいいじゃない https://www.kabuku.co.jp/developers/create-your-own-esbuild-plugin はじめに これまでの JavaScript ビルドツールと私 以前は私も定石通り「アプリには webpack、ライブラリには Rollup」をビルドに利用していましたが、近年はアプリのビルドにも Rollup を利用することが多くなり、 webpack を利用することはな

                                  • GitBookをForkしてHonKitを作りました

                                    GitBookはMarkdownからドキュメントページや書籍を作成するツールですが、 以前OSSで公開されていたGitBook(legacy)はDeprecatedとなって開発は止まっています。 ⚠️ Deprecation warning: As the efforts of the GitBook team are focused on the GitBook.com platform, the CLI is no longer under active development. All content supported by the CLI are mostly supported by our GitBook.com / GitHub integration. Content hosted on the legacy.gitbook.com will continue worki

                                      GitBookをForkしてHonKitを作りました
                                    • Webブラウザ上でNode.js環境を実現する「WebContainer」、iOS/iPadOS版Safariに対応。iPhone/iPadでWeb開発環境が起動

                                      Webブラウザ上でNode.js環境を実現する「WebContainer」、iOS/iPadOS版Safariに対応。iPhone/iPadでWeb開発環境が起動 WebAssemblyを用いてWebブラウザ上でNode.js環境を実現する「WebContainer」などを提供するStackBlitzは、WebContainerがiOS/iPadOS 16.4以降のSafariに対応したことを明らかにしました。 iPhoneやiPad上のSafari上で、Node.jsをベースとしたWeb開発環境が起動することになります。 Big news: WebContainers are now supported on Safari, iOS and iPadOS!https://t.co/6SfOUDn4z2 pic.twitter.com/9PykipdNxJ — StackBlitz (@s

                                        Webブラウザ上でNode.js環境を実現する「WebContainer」、iOS/iPadOS版Safariに対応。iPhone/iPadでWeb開発環境が起動
                                      • 定番のコード規約とライブラリから学ぶJavaScriptの命名テクニック(初級編) - ICS MEDIA

                                        プログラミングをしているとき、変数名や関数名の命名に迷ったことはないでしょうか? 時間をかけて考えた変数名や関数名を後で見返したときに何の処理なのかわからないと思ったり、他の人が書いたコードを理解するのに時間がかかった経験は誰でもあると思います。 一般に、プログラマーはコードを書いている時間より読んでいる時間の方が長いと言われています。 わかりにくい命名はコードを読んでいる時間を長くしたり、バグを生む原因になってしまいます。 この記事ではGoogleやAirbnbといった企業が採用しているスタイルガイドや、世界中で使われているJavaScriptライブラリであるReactとVue.jsのコードを調査する中で見つけた、わかりやすい命名をするためのテクニックを初級編と上級編の2回に分けて紹介します。 初級編では、実際に仕事をする中でよく目にしたり自分でも使うことの多いものなど、すぐに使えるテク

                                          定番のコード規約とライブラリから学ぶJavaScriptの命名テクニック(初級編) - ICS MEDIA
                                        • Denoが大幅な方針変更を発表。3カ月以内にnpmパッケージへの対応を実現、最速のJavaScriptランタイムを目指しHTTPサーバを刷新

                                          Denoが大幅な方針変更を発表。3カ月以内にnpmパッケージへの対応を実現、最速のJavaScriptランタイムを目指しHTTPサーバを刷新 オープンソースのJavaScript/TyeScriptランタイム「Deno」を開発するDeno Landは、「Big Changes Ahead for Deno」(Denoの方向性の大きな変更)という記事を公開し、Denoのnpmパッケージへの対応や高速化などの新たな取り組みを発表しました。 Big changes ahead for Denohttps://t.co/Q5xKz3bJLg — Deno (@deno_land) August 15, 2022 今回の発表では、npmへの対応、最速のJavaScriptランタイムを目指す、企業向けサポート、という3つの大きな取り組みが示されています。 3カ月以内にnpmパッケージをインポート可能に

                                            Denoが大幅な方針変更を発表。3カ月以内にnpmパッケージへの対応を実現、最速のJavaScriptランタイムを目指しHTTPサーバを刷新
                                          • Google Cloud FunctionsがPHPをサポート開始。PHPでサーバレスの関数が記述可能に

                                            Google Cloud FunctionsがPHPをサポート開始。PHPでサーバレスの関数が記述可能に Google Cloud Platformにおけるサーバレスコンピューティング環境を提供するGoogle Cloud Functionsで、PHP言語のサポートがプレビューとして開始されることが発表されました。 Today we’re bringing support for PHP, a popular general-purpose programming language, to Cloud Functions. With the Functions Framework for PHP, learn how you can write idiomatic PHP functions to build business-critical applications & integra

                                              Google Cloud FunctionsがPHPをサポート開始。PHPでサーバレスの関数が記述可能に
                                            • Qwikの紹介 – HTMLファーストのフレームワーク | POSTD

                                              Builder.ioは、強力なビジュアルエディタにより、開発者ではない人が超高速なサイトを開発・編集できるようにしています。 私たちのビジュアルエディタが優れている点の1つは、AngularからWeb Components、 そしてその間にあるすべてのフレームワークに至るまで、 さまざまなツールで同じサイトを生成できることです。 出力されるコードは速度が最適化されています。 私たちのツールで作成されたサイトは、手作業で作成されたサイトの大部分よりも高速です。 私たちはこれを心から誇りに思っています。 私たちの製品は、スピードがとても重要であるeコマースに焦点を当てています。 優れたTime to Interactiveの実現は困難 どんなにコードが最適化されていても、静的HTMLのみを提供していない限り、 eコマースサイトがPageSpeed Insightsで100点中100点のスコアを

                                                Qwikの紹介 – HTMLファーストのフレームワーク | POSTD
                                              • OpenAPI (Swagger) まとめ - Qiita

                                                はじめに 自分は実務でReact×TypeScriptを利用したフロント周りとNode.js(Nest)やRailsを用いたバックエンド(API)の開発をしています。 本記事では、OpenAPIを用いたAPI設計の書き方及び、Swaggerの説明と使い方についてまとめていきます。 この記事の対象者 プログラミング初心者から中級者 APIの基礎を理解している人 OpenAPIを用いてサクッとモックサーバーを試したい人 この記事の目標 モックサーバーの環境構築を学ぶ Swaggerの使い方を理解する OpenAPIを用いてAPI設計の具体的な書き方を学ぶ この記事でやらないこと 本記事ではOpenAPIの「書き方」をメインで解説するため、API設計についての細かい解説は省きます。 なおAPI設計については下記の記事でまとめているので、ぜひ参考にしてみてください。 用語解説 OpenAPI 公式

                                                  OpenAPI (Swagger) まとめ - Qiita
                                                • N予備校のプログラミング教材編集に約3年携わって得られた知見 - Qiita

                                                  プログラミング教材の編集に携わって3年経ち、いろいろな知見が貯まってきたので「ドキュメント執筆に関するアウトプット」を行ってみようと思います。 自己紹介 ドワンゴでN予備校のコンテンツ制作に携わっているアルバイトの1人、 ryo-a です。 現在の本業は大学生で、慶應義塾大学にて計量経済学の分析に関係するあれこれをやっています。4月から慶應義塾大学大学院に進学予定です。交通関係の情報や大規模データの処理を好んでおり、最近は地理空間情報処理ツールや各種CLIツールなどを作っていたりします。 2017年4月よりアルバイトとしてドワンゴで働いており、主にプログラミング教材の制作補助に関わっています。働きはじめて3年近く経ち、色々な知見が貯まってきたので教材編集を通じて得られた知見を書いてみます。 併せて、プログラミング教育におけるノウハウが業界内で共有されていけばいいな、とも思います。 (個人的

                                                    N予備校のプログラミング教材編集に約3年携わって得られた知見 - Qiita
                                                  • TypeScript におけるモジュール関連オプションの整理

                                                    TypeScript 4.7 で “module” という名前で始まる Compiler Option がさらに追加されて、さすがに何が何やら感あるので、役割を軽く整理。 この記事では雑な紹介に留めるので、それぞれの詳細は TSConfig Reference を読みに行ってください。 対応関係ソースコードとそれぞれのオプションが何に作用しているのかを雑に図示するとこんな感じ。 重要なことどのオプションをいじっても、import 指定子 (上図の “./hoge” の部分) がコンパイル時に書き換えられることはない。 これが頭に入っていれば、.mts, .cts といった TypeScript のファイルで import "./foo.cjs" と書くことや、 --moduleSuffixes がソースコードの探索にしか影響しないことに得心できるはず。 --moduleTypeScript

                                                      TypeScript におけるモジュール関連オプションの整理
                                                    • JavaScriptだけでExcel風のスプレッドシートを開発できる「jExcel」を使ってみた! - paiza times

                                                      どうも、まさとらん(@0310lan)です! 今回は、JavaScriptで簡単にExcelのようなスプレッドシートを作成できるライブラリをご紹介します! 基本的な操作はすべてJavaScriptから制御可能であり、自分の好きなようにカスタマイズできる強力な機能が多数提供されています。また、簡単なプログラムだけでファイルの書き出し機能が利用できるなど便利なメソッドも多く含まれています。 自作のWebアプリなどにも手軽に組み込めるので、ご興味ある方はぜひ参考にしてみてください。 なお、JavaScriptの基本はpaizaラーニングの「JavaScript入門編」で学ぶことができますので合わせてチェックしてみてください。 【 jExcel 】 ■「jExcel」の使い方 それでは、まず最初に「jExcel」の導入方法から見ていきましょう! 全部で3通りの方法が以下のように提供されています。

                                                        JavaScriptだけでExcel風のスプレッドシートを開発できる「jExcel」を使ってみた! - paiza times
                                                      • Node.js や deno に Web Standard な API をなんでも取り入れるのが良いことなのかについて - from scratch

                                                        この記事は Node.js Advent Calendar の 11 日目の記事です。 qiita.com Web API と Node.js ES2015 以前の Node.js は Web Standard な API の中で足りないものを自分で補う形で進化を続けてきた。 Callback や Event 主体での非同期処理や Common JS な形でロードできる独自のモジュールの仕組みがその筆頭だと思う。ただ逆に Web Standard な API が流行ると今度はそれに追従していかないといけなくなってきた。 ES2015 以後に流行ったものといえば、 Promise 主体での非同期処理であり、 async-await での処理だと思う。また、 ES Modules の台頭もあり、今日では Node.js でも普通に呼び出すことが可能になった。 今ではどちらも Node.js で

                                                          Node.js や deno に Web Standard な API をなんでも取り入れるのが良いことなのかについて - from scratch
                                                        • 「Remix」という哲学を学ぼう──学習コストを最小限に抑えるReactベースの注目フレームワークを解説!

                                                          対象読者 RemixがNext.jsなどとはどんなところが違うのか知りたいJavaScriptエンジニア WebブラウザとNode.jsという異なるランタイムをそれぞれキャッチアップするのが辛くなってきたエンジニア 前提環境 筆者の検証環境は以下の通りです。 macOS Monterey 12.5.1 Remix 1.7.1 Webフロントエンド技術の広がり Webブラウザ上で動くアプリケーション周辺のエンジニアリング分野は、JavaScriptの進化とともにサーバーサイドの責務から分離され、「Webフロントエンド」という名前で呼ばれることが多くなりました。この分野は、Webブラウザをランタイムとしてリッチなアプリケーションを効率良く開発し、ユーザーに良い体験を与えることを主な目的としていると、筆者は認識しています。 ここで着目したいのが、このWebフロントエンド分野においては「Webブラ

                                                            「Remix」という哲学を学ぼう──学習コストを最小限に抑えるReactベースの注目フレームワークを解説!
                                                          • ノーリツ製の給湯器リモコンをPCからNode.jsで操作する(ECHONET Lite)

                                                            こんにちは。 久しぶりに帰省したところ、実家の給湯器のリモコンがIoT対応の製品 RC-G001MW-2 (ノーリツ)になっていました。これはハックしなければならないと思っていじってみたところ、HEMS向けの機能を利用することでわりと容易に制御できたので記事にしてみた次第です。 (画像:ノーリツ公式サイトより) 成果物のコマンドラインツールはnpmに公開しているので、同じモデルや同一プロトコルに対応した給湯リモコンをお持ちの方は実験できるかもしれません(詳細は記事末尾参照)。 HEMS HEMS (Home Energy Management System)とは宅内のエネルギー使用量を管理・可視化する装置です。昨今のIoT対応家電はHEMSとの連携が前提になっているものも増えているようです。 ECHONET Lite HEMSのために国内で策定された通信規格がECHONET Lite(エコ

                                                              ノーリツ製の給湯器リモコンをPCからNode.jsで操作する(ECHONET Lite)
                                                            • Docker for Mac が遅いので代わりに VirtualBox 上で Docker を使う - Qiita

                                                              Node.js の開発では Docker for Mac が便利ですが、仕組み的にディスクアクセスが遅くなるので、処理性能が半分とまではいかないものの、3割くらい遅いです。そこで Docker for Mac のお手軽環境を諦めて、代わりに VirtualBox 上で Docker を使うと、ほとんど性能劣化なく動くようです。 VirtualBox 上で動かす VM は何でも良いのですが、プロダクション環境は AWS が多いので、今回は VM にも Amazon Linux 2 を使うことにします。各ファイルも VirtualBox 上の VM 側に置いて、Mac から NFS でアクセスします。 (1) VirtualBox をインストールする。 https://www.virtualbox.org/wiki/Downloads の「OS X hosts」から、VirtualBox をダ

                                                                Docker for Mac が遅いので代わりに VirtualBox 上で Docker を使う - Qiita
                                                              • WebAssemblyに対してクラウドサービスを抽象化、そのままAWSでもAzureでもGoogle Cloudでも実行可能にする「SpiderLightning」、Deis Labsが公開、標準化も推進

                                                                WebAssemblyに対してクラウドサービスを抽象化、そのままAWSでもAzureでもGoogle Cloudでも実行可能にする「SpiderLightning」、Deis Labsが公開、標準化も推進 WebAssemblyには、ファイルI/OやネットワークアクセスなどのOSが備える基本的な機能を抽象化するWASI(WebAssembly System Interface)と呼ばれる業界標準仕様があります。WASIに準拠して生成されたWebAssemblyバイナリはWindows、Linux、macOSなどのOSに依存せず、どのOS環境でもそのまま実行可能です。 参考:WebAssemblyをWebブラウザ以外の実行環境へ。システムインターフェイスへのアクセスを可能にする「WASI」の策定開始。Mozillaが呼びかけNode.jsらが賛同 WebAssemblyに対してパブリッククラ

                                                                  WebAssemblyに対してクラウドサービスを抽象化、そのままAWSでもAzureでもGoogle Cloudでも実行可能にする「SpiderLightning」、Deis Labsが公開、標準化も推進
                                                                • JavaScriptパッケージシステム「npm」は巨大なバグを抱えていると指摘し、新たなパッケージシステムを開発する「vlt」。npm作者らの参加を発表

                                                                  JavaScriptパッケージシステム「npm」は巨大なバグを抱えていると指摘し、新たなパッケージシステムを開発する「vlt」。npm作者らの参加を発表 npmに代わる新しいJavaScriptのパッケージシステム「vlt」(vōlt:ボールト)を開発しているvlt technologyは、同社にnpmの作者であるIsaac Z. Schlueter氏、npmのスタッフエンジニアリングマネージャであったDarcy Clarke氏、npmのCLIチームであったRuy Adornoらが参加すると発表しました。 Node.jsとnpmが作ったJavaScriptのエコシステム サーバサイドでJavaScriptを実行可能にしたNode.jsの登場と、そのNode.jsを基盤にJavaScriptのアプリケーションやモジュールなどをパッケージングして登録し、自由にダウンロード可能にしたレジストリで

                                                                    JavaScriptパッケージシステム「npm」は巨大なバグを抱えていると指摘し、新たなパッケージシステムを開発する「vlt」。npm作者らの参加を発表
                                                                  • Python Web UIフレームワークで作るデスクトップアプリ | gihyo.jp

                                                                    寺田 学(@terapyon)です。2024年4月の「Python Monthly Topics」は、Python Web UIフレームワークの1つであるStreamlitを使ってWindowsやmacOSのデスクトップアプリを作る方法を解説します。 目的⁠・モチベーション Pythonで自動化のスクリプトを作ったり、JupyterLabやColaboratoryでデータの可視化を行うことがあります。これらを作成者以外の多くの方に利用してもらう方法として、Webシステムやデスクトップアプリとして提供する方法が考えられます。 Webシステムの構築やデスクトップアプリの作成となると、技術的なハードルがあります。他には、時間的なコストに見合わないという状況もあり得ます。 Python Web UIフレームワークを使うことで、比較的少ないコードでWeb UIからスクリプトの実行や可視化をするアプリ

                                                                      Python Web UIフレームワークで作るデスクトップアプリ | gihyo.jp
                                                                    • 機械学習APIでWebサイトの改善点を提案するサービスを作った話 - Qiita

                                                                      まえがき アクセシビリティーの観点からWebサイトを診断し、AIプラットフォームを利用して得た情報をもとにベストプラクティスを提案してくれるオープンソースのWebサービス「Visible」を開発しました。 WebサイトURL: https://visi.dev GitHubリポジトリ(Starください!): https://github.com/visible/visible GoogleのLighthouseなど、Webサイトの診断を行ってくれるサービスは以前からありましたが、診断だけではなく改善点の提案も行う新しいサービスになっています。また、アクセシビリティーに関する理解を深めてもらえるように工夫をした設計にしていたり、コマンドライン版ではスタンドアロンで実行可能なようになっています。 2020年度の「独創的アイデアと卓越した技術を持つ小中高生クリエータ支援プログラム」未踏ジュニアに

                                                                        機械学習APIでWebサイトの改善点を提案するサービスを作った話 - Qiita
                                                                      • OpenAIのGPT-4oを日本語OCRとして使ってみる

                                                                        昨日、OpenAIが生成AIの新しいモデルであるGPT-4oを発表しました。消費するトークン数の節約や、音声合成機能の改善、応答速度の向上など着実な品質改善を見せているようです。私も、特に音声合成(Text To Speech)の表現力について非常に興味を持っています。 私は以前、「OpenAIのGPT-4 Turbo with visionを日本語OCRとして使ってみる」で、GPT-4 Turboの画像認識機能の日本語OCRについて検証を行いました。その当時は、既存のコグニティブAI APIに比べて認識精度が十分でないという評価をしています。とはいえ、その後に出てきたClaude 3 Opusは驚くべき認識精度だったので、OpenAIも巻き返す可能性は十分にあると感じました。Azure OpenAI Serviceを使っている場合は、Vision enhancementという既存のコグニ

                                                                          OpenAIのGPT-4oを日本語OCRとして使ってみる
                                                                        • なぜその API は使われないのか? API の活用を拒む3つの壁とその対策 - CData Software Blog

                                                                          こんにちは! CData Software Japan リードエンジニアの杉本です。 大変ありがたいことに、最近あるSaaSを提供する会社さんから「リリース前のAPIを触ってみてフィードバックをくれませんか?」と依頼を受けました。 私は以前こんな記事 を公開するほど、APIどっぷりな人間なのですが、数多くの SaaS APIを触ってきてよく考えることがあります。 それは SaaS APIというサービス・プロダクトそのものを成長させる上で、もっとも重要なことは「顧客・デベロッパーが、そのAPIをどれだけスムーズにキャッチアップできるか?」という点に尽きるのではないか? というものです。 以下のグラフはAPI管理ツールを提供するSmartBearのAPI調査において、APIドキュメントで最も重要な要素とは何か? というアンケート結果のランキングですが、ExamplesやAuthenticati

                                                                            なぜその API は使われないのか? API の活用を拒む3つの壁とその対策 - CData Software Blog
                                                                          • 社内システムのセキュリティ向上のため、Lambda + CloudFront + S3でインフラ基盤を再構築した話 - Uzabase for Engineers

                                                                            はじめに ソーシャル経済メディア「NewsPicks」SREチーム・新卒エンジニアの樋渡です。今回は、AWSサービスである「Lambda」「CloudFront」「S3」を用いて、弊社で使用している社内向けシステムの基盤を再構築し、開発者体験の向上やセキュリティ対策を行なったお話です。 お話の内容 弊社で使用している社内向けシステムの一つに「Watson」というシステムがあります。「Watson」とは簡単にいうと「NewsPicks」のユーザーIDをもとにユーザーごとの情報を検索・閲覧できるシステムで、お客様からの問い合わせ対応等に活用される重要なシステムです。「Watson」は構築されたのが8年前と歴史が古く、歴史が古い故に数々の問題を抱えていました。今回のお話では、歴史の古い社内システムのインフラとバックエンドを更改し抱えていた問題を解決したぜ!というお話となっています。 抱えていた課

                                                                              社内システムのセキュリティ向上のため、Lambda + CloudFront + S3でインフラ基盤を再構築した話 - Uzabase for Engineers
                                                                            • データライフサイクルとトレードオフ | フューチャー技術ブログ

                                                                              ソフトウェアの中身を大きく2つに分解すると、プログラムとデータに分かれます。コードコンプリートやA Philosophy of Software Designなど、評判の良いソフトウェア設計の本はいくつかありますが、それらはどれもプログラムの説明がメインでデータのライフサイクルについての説明はなかったと思います。しかし、データの表現にもいくつもの方針があって、それによるトレードオフがあるな、というのはもやもやと考えていたので、その考えをまとめて文章にしてみました。 データといっても、処理中の短期間の間では変わらない、いわゆるマスタデータ的なデータです。ジャーナルというか、トランザクション的なデータはここでは触れません。 この記事では、それぞれのトレードオフについて考えていきます。 即値(リテラル) 定数 コマンドライン引数 環境変数 設定ファイル ダウンロードコンテンツ オンラインデータベ

                                                                                データライフサイクルとトレードオフ | フューチャー技術ブログ
                                                                              • Why I Won't Use Next.js

                                                                                You’ve got a new project to work on. Or you’ve got an existing project you’re motivated to upgrade to a more modern approach. Or perhaps you’re dissatisfied with your current modern framework or second-guessing yourself and you’re investigating alternatives. In any case, you’ve got a decision to make. There are lots of “modern” frameworks to choose from. Even if you’re not facing this choice right

                                                                                  Why I Won't Use Next.js
                                                                                • AWS re:Invent 2020で発表された新サービス/アップデートまとめ - Qiita

                                                                                  AWS re:Invent 2020の会期中に発表された新サービス/アップデートのまとめです。 今年も、後から出来るだけ素早く簡単に振り返ることができるようにまとめました! 凡例 (無印) 新サービス (Update) 既存サービスのアップデート (APN) パートナー制度に関連したリリース/アップデート 12/1 (火) 今年の開幕は「Amazon EC2 Mac instances」でした。 Amazon EC2 Mac instances macOS用のAmazon Elastic Compute Cloud (EC2) Macインスタンス EC2 Macインスタンスを使用すると、iPhone、iPad、Mac、Apple Watch、Apple TV、Safari用のアプリ開発者は、macOS環境を数分でプロビジョニングしてアクセスし、必要に応じて容量を動的に拡張し、AWSの従量課

                                                                                    AWS re:Invent 2020で発表された新サービス/アップデートまとめ - Qiita