並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 143件

新着順 人気順

serverの検索結果1 - 40 件 / 143件

  • 技術選定の失敗 2年間を振り返る TypeScript,Hono,Nest.js,React,GraphQL

    技術選定の失敗 2年間を振り返る TypeScript,Hono,Nest.js,React,GraphQL はじめに 新たに書きました。 MySQLを使っても会社は潰れない 久々に記事を書いたのでどうぞお手柔らかに... 私が過去2年間で行った技術選定の成功と失敗を振り返り、その学びを共有したいと思います。 文才無いので淡々と箇条書きでいきます Twitterエンジニア垢作りました。エンジニアのお友達がいません。 @uncode_jp 注意 意見を押し付けるものではありません。ただ建設的な議論は大事だと思う。 自分の意見は明確に、歯切れのよい表現を意識している。人それぞれだよねみたいな感じに逃げたくない。技術選定に結論はある(過激)。 ただし技術選定にはコンテキストがあり、例えばプロダクトのフェーズや組織の事情によって当然結論は変わる可能性がある。 OSSの開発者さん達は偉大ですごい。あ

      技術選定の失敗 2年間を振り返る TypeScript,Hono,Nest.js,React,GraphQL
    • 【AWS】 代表的なクラウドデザインパターン紹介

      はじめに AWSの豊富なサービス群を活用することで、高可用性かつ高スケール性を実現するシステムを構築することが可能です。 しかし、クラウドサービスの特性を最大限に活かすためには、適切なデザインパターンを理解し、実践することが重要です。そこで今回は、AWSを利用して「高可用性」かつ「高スケール性」を実現するための代表的なクラウドデザインパターンを紹介します。 1. EC2インスタンスを利用した動的コンテンツの配信 動的コンテンツとは? 動的コンテンツとは、ユーザーのリクエストに応じて生成されるコンテンツのことを指します。たとえば、ユーザーのログイン状況や入力内容に基づいて異なるページを表示するようなケースです。 AWSサービスの簡単な解説 Amazon EC2 (Elastic Compute Cloud): スケーラブルなコンピューティングリソースを提供するサービスです。必要に応じて、イン

        【AWS】 代表的なクラウドデザインパターン紹介
      • 独力でWebサービスを開発・構築できるフルスタックエンジニアへのロードマップ─幅広いスキルを「Udemy夏のビッグセール」で学ぶ! - はてなニュース

        Webで新規サービスを立ち上げる際に、UIからインフラ周りまで一人で面倒を見られるエンジニアは、少人数のスタートアップでなくとも非常に頼れる存在です。どんな課題に直面しても技術力で乗り越える、そんなスキルフルなエンジニアに憧れる方も多いでしょう。 この記事では、フロントエンドのプログラミング(JavaScript周辺)からサーバーサイド、インフラ、さらに開発手法まで、Web開発で必要になるさまざまなレイヤーのフルスタックなスキルの現在地と、関連するUdemyの講座を紹介します。 株式会社ヘンリーでVPoEを務める松木雅幸(@songmu)さんの執筆です。 フルスタックエンジニアに必要なスキル さまざまな講座でまとめて学習してみよう Udemyでは夏のビッグセールを開催中! ※この記事は、株式会社ベネッセコーポレーションによるタイアップ広告です。記事末に、はてなブックマークした方にAmazo

          独力でWebサービスを開発・構築できるフルスタックエンジニアへのロードマップ─幅広いスキルを「Udemy夏のビッグセール」で学ぶ! - はてなニュース
        • オープンソースとは違う新しい取り組み「Fair Source」登場。ビジネスの持続性とソースコード公開の両立を目指す

          企業がソフトウェアビジネスを持続的に行えることと、ソフトウェアのソースコードを公開することの両立を実現するための新しいライセンスへの取り組みとして「Fair Source」が登場しました。 意訳すると、ソースコードが公開され、開発者のビジネスを守るための最小限の制約がありつつもコードの利用や変更、再配布が可能で、計画的に一定期間後にオープンソースとなるもの、と言えるでしょうか。 具体的なライセンスとしては「Functional Source License (FSL)」が推奨されているのに加えて、「Fair Core License」「Business Source License (BSL)」が該当するとされています。 Fair Sourceの目的とは 公式Webサイトでは、Fair Sourceの目的が次のように説明されています。 The purpose of Fair Source

            オープンソースとは違う新しい取り組み「Fair Source」登場。ビジネスの持続性とソースコード公開の両立を目指す
          • 初心者がプログラミングを学ぶときに最も効果的な方法は「写経」だと思う|shi3z

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

              初心者がプログラミングを学ぶときに最も効果的な方法は「写経」だと思う|shi3z
            • すぐに役に立つものはすぐに陳腐化してしまうから方法ではなく設計の本を読む - API Design Patterns の読書感想文 - じゃあ、おうちで学べる

              あなたがさっきまで読んでいた技術的に役立つ記事は、10年後も使えるでしょうか?ほとんどの場合でいいえ はじめに 短期的に効果的な手法や知識は、ソフトウェア開発の分野において、急速に価値を失う傾向があります。この現象は、私たちが何を重点的に学ぶべきかを示唆しています。最も重要なのは、第一に基本的な原理・原則、そして第二に方法論です。特定の状況にのみ適用可能な知識や即座に結果を出すテクニックは、長期的には有用性を失う可能性が高いです。これは、技術や手法が時間とともに進化し、変化していくためです。 learning.oreilly.com 「API Design Patterns」は、このような考え方を体現した書籍です。しかも480 ページもあります。本書は単なる手法の列挙ではなく、Web APIデザインの根幹をなす原則と哲学を探求しています。著者のJJ Geewax氏は、APIを「コンピュータ

                すぐに役に立つものはすぐに陳腐化してしまうから方法ではなく設計の本を読む - API Design Patterns の読書感想文 - じゃあ、おうちで学べる
              • テストを書く方針と原則の備忘録 - Qiita

                こんにちは。サーバエンジニアのnsym-mです。普段はGoでバックエンドの開発などをしています。 最近テストに関する書籍や記事などを色々読み漁ったので、現時点での自分のテストについての考え方を備忘録として残しておきます。 今回の話はWebフロントエンドやiOS/Androidなどでも適用できる汎用的な考え方として記載していますが、ベースの文脈はバックエンド開発になりますのでそのつもりで読んでいただけますと幸いです なお、本記事では主にGoogle、『単体テストの考え方/使い方』、@t_wadaさんの発表されている考え方(いわゆる古典学派)に倣っています。 用語整理 よく使われるテストスコープ 単体テスト(ユニットテスト) 人によって定義に差がある 統合テスト(インテグレーションテスト) 結合テスト(E2Eテスト) 単体テストの定義がブレることから、スコープではなく実行時間で判断するテストサ

                  テストを書く方針と原則の備忘録 - Qiita
                • 技術選定の成功 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
                  • Go でマルチスレッドプログラミングする際に最低限知っておくべきこと - Cybozu Inside Out | サイボウズエンジニアのブログ

                    この記事は、CYBOZU SUMMER BLOG FES '24 (クラウド基盤 Stage) DAY 10 の記事です。 こんにちは。クラウド基盤本部の野島です。Go は goroutine やチャネルなどの仕組みが備わっており、簡単にマルチスレッドなプログラムを書くことができる言語だと言われています。しかし、マルチスレッドプログラミングには独特の罠があり、何も知らない人が雰囲気でコードを書くとわかりにくいバグを仕込んでしまうリスクが非常に高いです。 この記事では、マルチスレッドプログラミングに詳しくない人に向けて、そのような罠を避けるための方法を紹介します。この記事は Go の基本的な使い方を知っていることを前提としています。 這い寄るデータ競合の恐怖 まずは以下のようなプログラムを考えてみましょう。これは複雑な計算を行って結果を返すような HTTP サーバーのコードです。 // 複雑

                      Go でマルチスレッドプログラミングする際に最低限知っておくべきこと - Cybozu Inside Out | サイボウズエンジニアのブログ
                    • メンテナンス画面の表示方法いろいろ | 外道父の匠

                      コンテナの話(AWSコンテナ系アーキテクチャの選択肢を最適化する)をした時にメンテナンス画面の表示についても軽く触れました。 改めて整理すると他にもいろいろあるということで、上から順に超ザックリと並べていきたいと思います。一応 AWS でを想定していますが、一般的な方法論でもあるので、どこだろうと何かしらの足しにはなるかもです。 条件 どのようなメンテナンス状態にしたいかによりますが、満たすべき条件はおそらくこのようなものがありますよ、ということで整理します。 1回の変更操作で、一括したメンテインを保証すること 管理者はメンテにならず通常アクセスする手段があること メンテ機能の仕込みによって悪影響がないこと 希望するメンテ用レスポンス内容を実現可能であること 静的 or 動的 Status Code 503 Content-Type レスポンス・サイズ 例えば DNS のレコード値を変更し

                        メンテナンス画面の表示方法いろいろ | 外道父の匠
                      • さくらの開発チームにおけるTerraform/Ansibleの活用 | さくらのナレッジ

                        はじめに さくらのクラウドにはいくつかの開発チームがありますが、その中で私が所属しているガンマチームにおけるTerraformやAnsibleの活用というテーマで川井が発表させていただきます。 内容としては、まずこの発表の目的を説明し、IaC (Infrastructure as Code)とはそもそも何かという話をして、それからさくらのクラウドでTerraformをどのように活用しているか、またAnsibleをどのように活用しているかを発表します。 目的 今回はIaCの勉強会ということで、IaCの理解と実践を目的としています。この勉強会に参加することで皆さんがTerraformやAnsibleを理解し、インフラ構築に活用できるようになることを目指したいと思います。 IaCの理解と実践 この発表ではIaCを以下のように定義します。 「IaC(Infrastructure as Code)と

                          さくらの開発チームにおけるTerraform/Ansibleの活用 | さくらのナレッジ
                        • 監視ツールを迷ったら CloudWatch から始めてみるのもありなのでは - カミナシ エンジニアブログ

                          こんにちは、新規プロダクトの開発をしています、a2 (@A2hiro_tim )です。 昨日、開発してきたプロダクトについて、正式リリースを発表させていただきました 🎉 prtimes.jp employee.kaminashi.jp さて、新規プロダクトの立ち上げは、技術選定や運用ツールの自由度が高く、どの監視ツールを使うか、選択に迷うこともあると思います。 我々のチームでは複数ツールの使用経験はあるものの、特定のツールの導入経験や深い知見があるメンバーはいなかったので、フラットに比較検討し、 Amazon CloudWatch の利用から始めてみよう、と意思決定しました。 主な選定理由は、 AWS エコシステムの中で完結できるため、Terraform Cloud などの既存の設定を流用できて新しく覚えることが少ない、AWS 上でコストを一元管理できる、等のメリットがある。 サービス開

                            監視ツールを迷ったら CloudWatch から始めてみるのもありなのでは - カミナシ エンジニアブログ
                          • Goで自作RDBMS - abekoh's tech note

                            はじめに Goで自作RDBMSに挑戦してみたログです。自作、といっても大部分は参考にした書籍の移植です。 ここ1年くらいRDBに向き合う機会が多く、その内部実装を手を動かしながら身を持って理解してみたいというモチベーションから始めてみました。ちょうど会社の『内部構造から学ぶPostgreSQL』読書会に参加したこともモチベーション上げるきっかけとなりました。 (他の方の記事ですが、読書会の記録はこちら↓) 『内部構造から学ぶPostgreSQL』読書会を完走した感想 [改訂3版]内部構造から学ぶPostgreSQLの社内読書会振り返り データベースをデータの箱としか思っていなかった私の『内部構造から学ぶPostgreSQL』を読んだ感想 普段何気なく使ってるRDBMSですが、ACID特性を守るため・大量の読み書きを捌くため、非常に緻密に設計されております。 これを完全再現といかなくとも自分

                              Goで自作RDBMS - abekoh's tech note
                            • ジャンプTOON Next.js App Router の活用〜得られた恩恵と課題〜 | CyberAgent Developers Blog

                              目次 はじめに Colocation を意識した設計方針 Parallel Routes と Intercepting Routes を用いた設計パターン サーバー側に処理を寄せたことによる恩恵と課題 Next.js が抱える課題 おわりに 参考文献 はじめに ジャンプTOON のWeb版(以降、ジャンプTOON Web)の開発を担当している浅原昌大(@assa1605)です。 5 月にサービスを開始した「ジャンプTOON」は、オリジナル縦読みマンガ作品や人気作品のタテカラー版を連載する、ジャンプグループ発の新サービスです。 ジャンプTOON のフロントエンドには、Next.js を採用し開発をしています。 本記事では、Next.js の最新機能や設計パターン、Next.js を採用した恩恵と現在の課題について紹介します。 Colocation を意識した設計方針 Parallel Rou

                                ジャンプTOON Next.js App Router の活用〜得られた恩恵と課題〜 | CyberAgent Developers Blog
                              • ユーザー体験重視の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
                                • Building a highly-available web service without a database

                                  If you’ve ever built a web service or a web app, you know the drill: pick a database, pick a web service framework (and in today’s day and age, pick a front-end framework, but let’s not get into that). This has been the case for several decades now, and people don’t stop to question if this is still the best way to build a web app. Many things have changed in the last decade: Disk is a lot faster

                                    Building a highly-available web service without a database
                                  • ElasticsearchとKibanaがオープンソースライセンスに復帰、Elasticが発表。AWSがフォークに投資し、市場の混乱は解決されたと

                                    ElasticsearchとKibanaがオープンソースライセンスに復帰、Elasticが発表。AWSがフォークに投資し、市場の混乱は解決されたと オランダに本社を置くElasticは、ElasticとKibanaのライセンスにオープンソースライセンスであるAGPLを追加すると発表しました。 3年前の2021年、同社はElasticをマネージドサービスとして提供しているAWSを名指しで非難しつつ、ElasticのライセンスをApache License 2.0から、商用サービス化を制限する「Server Side Public License」(SSPL)と「Elastic License」のデュアルライセンスへ変更しました。 それ以来、ElasticとKibanaはオープンソースではなくなっていました。 同社CEO Shay Banon氏は、今回のオープンソースへの復帰を発表したブログの

                                      ElasticsearchとKibanaがオープンソースライセンスに復帰、Elasticが発表。AWSがフォークに投資し、市場の混乱は解決されたと
                                    • React Server Components の疑問を解き明かす

                                      builderscon 2024 で発表した資料です。 動画はこちら: https://www.youtube.com/watch?v=_Prly-RAF7A&list=PLZjwpOgJkJXteFpwAbcVoQXfd2f5q-OPp --- React Server Compon…

                                        React Server Components の疑問を解き明かす
                                      • HTTP/1.0 From Scratch

                                        Introduction In our previous exploration, we delved into the simplicity of HTTP/0.9, a protocol that served as the web’s initial foundation. However, as the internet evolved, so did its needs. Enter HTTP/1.0, a landmark version released in 1996 that laid the groundwork for the web we know today. HTTP/1.0 was a game-changer, introducing features that revolutionized web communication: Headers: Metad

                                          HTTP/1.0 From Scratch
                                        • 雑にJSONデータを分析させてみる-ローカルLLMの底力 | IIJ Engineers Blog

                                          地方拠点の一つ、九州支社に所属しています。サーバ・ストレージを中心としたSI業務に携わってましたが、現在は技術探索・深堀業務を中心に対応しています。 2018年に難病を患ったことにより、定期的に入退院を繰り返しつつ、2023年には男性更年期障害の発症をきっかけに、トランスジェンダーとしての道を歩み始めてます。 2024/08/22修正: はてなブックマークのコメントから、「それってデシリアライズって言わないよ」というご指摘を頂戴しました。 恥ずかしながら浅学であったがゆえに用語を取り違えたまんま長らく覚えてまして、これを整形表示(Pretty Print)と修正させていただきました。最初の用語登場箇所のみ修正した内容として取り消し線付きで記述しておりまして、それ以降は置換させてもらっています。 ご指摘誠にありがとうございました<(_ _)> これとは別に、後半で記述してるコードの一部に使わ

                                            雑にJSONデータを分析させてみる-ローカルLLMの底力 | IIJ Engineers Blog
                                          • 2ヶ月でリリースしたFindy Toolsの技術選定の裏側 - Findy Tools

                                            これまで、Findy Toolsのアーキテクチャ特集記事では、テーマや分野ごとに複数の企業からアーキテクチャや技術選定の背景を伺い、まとめた記事をお届けしてきました。今回から始まる新シリーズでは、1社の技術選定についてさらに深く掘り下げ、個々の選択がどのように全体の成功に寄与しているのかをより詳細に探っていきたいと思います。初回の本記事では、まず私たち自身であるFindy Toolsが、2ヶ月という短期間でリリースに至った技術選定の裏側をご紹介します。 Findy Toolsについて Findy Toolsは開発ツールに特化したレビューサイトです。 ツールのレビューや他社のアーキテクチャを見て技術選定の参考にすることが出来ます。2024年1月にベータ版としてサービスをリリースしました。 ベータ版までは ほとんど1人で開発され、現在は3名で開発を行っています。 立ち上げのスピードを重視して、

                                              2ヶ月でリリースしたFindy Toolsの技術選定の裏側 - Findy Tools
                                            • postgres.new: In-browser Postgres with an AI interface

                                              Introducing postgres.new, the in-browser Postgres sandbox with AI assistance. With postgres.new, you can instantly spin up an unlimited number of Postgres databases that run directly in your browser (and soon, deploy them to S3). Each database is paired with a large language model (LLM) which opens the door to some interesting use cases: Drag-and-drop CSV import (generate table on the fly) Generat

                                                postgres.new: In-browser Postgres with an AI interface
                                              • macOS版cURLはcURLと証明書検証の仕様が異なる | さくらのナレッジ

                                                はじめに 2023年12月に「cURLの"--cacert"オプション利用時の挙動がmacOSとLinuxで異なる」という内容のissueが立ち、2024年3月にcURLの開発者であるDaniel Stenberg氏が「THE APPLE CURL SECURITY INCIDENT 12604」というタイトルで記事を公開しました。 この記事では本件に関する詳細の説明と検証、また独自の掘り下げを行い、macOS版cURLとオリジナルのcURLの違いについて解説します。ただし、本件は明らかになっていない部分が多くあるため、本記事には推測や仮説が含まれます。ご了承ください。 --cacertオプションにおけるmacOSのcURLとオリジナルのcURLの違い まずはDaniel Stenberg氏の記事で述べられた内容を元に、"--cacert"オプションにおけるmacOS版cURLとオリジナル

                                                  macOS版cURLはcURLと証明書検証の仕様が異なる | さくらのナレッジ
                                                • Software Design 2024年8月号 連載「レガシーシステム攻略のプロセス」第4回 ZOZOTOWNリプレイスにおけるマスタDBの移行 - ZOZO TECH BLOG

                                                  はじめに 技術評論社様より発刊されているSoftware Designの2024年5月号より「レガシーシステム攻略のプロセス」と題した全8回の連載が始まりました。 ZOZOTOWNリプレイスプロジェクトで採用したマイクロサービス化のアプローチでは、安全かつ整合性のとれたデータ移行が必須となりました。第4回では、このマスタDBの移行について紹介します。 目次 はじめに 目次 はじめに マスタDB移行 マスタDB移行について 要件と課題 テーブル構成を再設計したうえでデータ移行を実施する ダウンタイムなしでデータ移行を実施する 方針 異なるDBおよびデータスキーマ間で移行を実施するためEmbulkを使用する ダブルライトをリリースし、データ移行中に発生するDBへの書き込みを両DBにアトミックに実施する データを一時DBに格納し、一時DBから移行先DBにデータを移行する BulkloadとBac

                                                    Software Design 2024年8月号 連載「レガシーシステム攻略のプロセス」第4回 ZOZOTOWNリプレイスにおけるマスタDBの移行 - ZOZO TECH BLOG
                                                  • はてなブログや GigaViewer で使われている画像変換プロキシを EC2 から EKS に移行しました - Hatena Developer Blog

                                                    こんにちは、サービスプラットフォームチーム アルバイトの id:walnuts1018 です。 この記事は、はてなの SRE が毎月交代で書いている SRE 連載の 8 月号です。7 月の記事は id:masayoshi さんの はてなで最近実施している SRE 研修の紹介 でした。 今回は、社内共用の画像変換プロキシである、「Scissors」というサービスを EC2 から EKS に移行したお話をしたいと思います。 画像変換プロキシについて 課題点 サービスプラットフォームチームにおける EKS やりたいこと 移行に関する懸念点 Scissors 専用の Node を用意する Pod / Node のオートスケール オートスケールの検証 負荷試験 1 回目 負荷試験 2 回目 リリース まとめ/ふりかえり 画像変換プロキシについて はてなでは「Scissors」という内製の画像変換プロ

                                                      はてなブログや GigaViewer で使われている画像変換プロキシを EC2 から EKS に移行しました - Hatena Developer Blog
                                                    • CTFで出題される脆弱性 vs プロダクトセキュリティのリアルな課題 - Flatt Security Blog

                                                      週末をCTFに費やし、平日の余暇時間をその復習に費やしている @hamayanhamayan です。去年2023年はCTFtime1調べでは66本のCTFに出ていて、自身のブログでは解説記事を40本ほど書いています。 自分はCTFプレイヤーですが、一方で、Flatt Securityはお仕事でプロダクトセキュリティを扱っている会社です。CTFで出題される問題と、プロダクトセキュリティにおける課題の間にはどのような違いがあるのでしょうか? CTFのヘビープレイヤーの視点から、共通している部分、また、どちらか一方でよく見られる部分について紹介していきたいと思います。色々な形でセキュリティに関わる人にとって、楽しく読んでもらえたら嬉しいです。 はじめに 本記事の目的 CTFで出題される問題 vs プロダクトセキュリティにおける課題 CTFとは プロダクトセキュリティにおける課題について CTF

                                                        CTFで出題される脆弱性 vs プロダクトセキュリティのリアルな課題 - Flatt Security Blog
                                                      • Build a gameplay experience with TypeScript

                                                        This leverages a starter sample available from https://github.com/microsoft/minecraft-scripting-samples/ with a simple build process and TypeScript compilation for Minecraft. From it, you can build out and expand simple gameplay styles. You can also use this project as a starter for your own scripting projects. Important Just getting started with JavaScript? You may want to check out the Scripting

                                                          Build a gameplay experience with TypeScript
                                                        • Good Refactoring vs Bad Refactoring

                                                          I've hired a lot of developers over the years. More than a few of them have come in with a strong belief that our code needed heavy refactoring. But here's the thing: in almost every case, their newly refactored code was found by the other developers to be harder to understand and maintain. It also was generally slower and buggier too. Now, don't get me wrong. Refactoring isn't inherently bad. It'

                                                            Good Refactoring vs Bad Refactoring
                                                          • React Server Components で時限式コンポーネントを作る - mizdra's blog

                                                            特定の時間になったらコンテンツをページに出したい、ということがあると思う。漫画サービスなら「ゴールデンウィーク限定!全話無料キャンペーン!」みたいなのとか。 普段の業務ではこうしたことを実現するために、時限式コンポーネントや、ScheduledComponent などと呼ばれるものを作ってる *1。 // components/ScheduledComponent.tsx export function ScheduledComponent({showAt, children}: { showAt: Date; children: React.ReactNode; }) { if (new Date() < showAt) { return null; } else { return children; } } これを Next.js Pages Router などから、以下のようにして使

                                                              React Server Components で時限式コンポーネントを作る - mizdra's blog
                                                            • ジャンプTOON Web アプリケーションの全体像〜採用技術と開発方針〜 | CyberAgent Developers Blog

                                                              目次 はじめに Next.js × GraphQL のサーバー間通信 Fastly でのコンテンツ配信とキャッシュ方針 vanilla-extract の採用とスタイリングシステム Chromatic による UI テスト / UI レビュー Datadog でのサービスモニタリング ジャンプTOON の CI/CD リリース戦略とブランチ運用の工夫 おわりに はじめに ジャンプTOON の Web 版(以降、ジャンプTOON Web)の開発を担当している2024年度新卒入社の鏑木 俊樹(かぶらき としき) @tosssssy_ です。 5 月にサービスを開始した「ジャンプTOON」は、オリジナル縦読みマンガ作品や人気作品のタテカラー版を連載する、ジャンプグループ発の新サービスです。 ジャンプTOON Web では Next.js App Router (v14.2)を採用して開発をしてお

                                                                ジャンプTOON Web アプリケーションの全体像〜採用技術と開発方針〜 | CyberAgent Developers Blog
                                                              • OpenAPI Specificationを導入するまでの苦労と失敗、その後の効果 - RAKUS Developers Blog | ラクス エンジニアブログ

                                                                はじめに 対象読者 TL;DR OpenAPI Specificationとは OASを導入することの何が嬉しい? 1. プロダクトごとにAPI仕様書を記述するツールやフォーマットがバラバラでスイッチングコストがかかる 2. 記述量が増えると動作が重くなる 3. API仕様変更の伝達漏れの多発 導入までの課題 1. OASの調査に時間をかけすぎた 2. OASのデメリット全てに対応策を講じようとしてしまったこと 導入して1年、開発環境は改善されたのか? おわりに はじめに ラクスフロントエンド開発2課の斉藤です。 ラクスの開発するプロダクトである楽楽明細、楽楽電子保存、楽楽請求ではOpenAPI Specification(以下OAS)を採用した開発を行っています。 今でこそOASを活用した開発を行うことができていますが、導入にあたっては様々な苦労がありました。 そこで今回は 何故OASを

                                                                  OpenAPI Specificationを導入するまでの苦労と失敗、その後の効果 - RAKUS Developers Blog | ラクス エンジニアブログ
                                                                • Ruby Parser開発日誌 (19) - 最高の構文木の設計 2024年版 - かねこにっき

                                                                  はじめに 今回はparserの生成物である構文木についてのお話です。 普段は主にparserとlexerについて考えていますが、たまに構文木について考えを巡らすこともあります。 むしろparserの目指すべき実装が固まったいまだからこそ、その主な生成物である構文木の設計について考える必要があるとも言えます。 Rubyのparserの実装は複数あり、それぞれのparserが生成する構文木もまた微妙に異なります。 それらの構文木は各parserのユースケースに合わせてアドホックに必要な要素が追加されているように見え、なにか原理原則に従っているように思えませんでした。 そのため果たして構文木に設計というものがあるのだろうかという疑問をずっと抱いていました。 Rubyの開発ではユースケースを収集し、それらのユースケースに対してどのくらい応えられているかをもって設計の良し悪しを確認するというアプロー

                                                                    Ruby Parser開発日誌 (19) - 最高の構文木の設計 2024年版 - かねこにっき
                                                                  • [Go言語] gin と singleflight を組み合わせた試行錯誤と実装例 - Techtouch Developers Blog

                                                                    singleflight とは gin とは Middleware Context 2つの実装例 1. 同期待ち方式 2. 非同期待ち方式 まとめ こんにちは。SRE 兼 テックブログ編集長の izzii です。毎年お盆休みに連泊で登山するのですが今年は台風の影響で行けませんでした。悲しい! さて、本記事ではパフォーマンス最適化の文脈で登場することの多い singleflight と、ウェブフレームワーク gin を組み合わせた実装例を紹介します。要素技術の概要とモチベーションに触れつつ、試行錯誤についてもお話しします。実装に関しては結局妥協が必要であり正解の形がないので GitHub で公開という形ではなく、ブログを通して自分の考えた2つの実装を紹介することにしました。この記事は Go に関する基礎知識を必要とします。 singleflight とは 複数のスレッド(go routine

                                                                      [Go言語] gin と singleflight を組み合わせた試行錯誤と実装例 - Techtouch Developers Blog
                                                                    • 社内でGrowiを立ち上げてみた - Qiita

                                                                      はじめに 部署内で情報共有のためWikiを使うとよいのではないか、という話が出ました。最初はMicrosoft TeamsのWikiを使えばよくね?という話でしたが検索機能はないし、バックアップも取れないし、でとても実用にならんだろ、と、調べていくうちにGrowiがよさそうとなりました。 Qiitaでもお馴染みですね。 社内でdocker付きで用意されているUbuntu Serverに立ち上げれば、docker-composeでさくっと設定できるとたかを括っていたのですが、docker初心者にはいろいろと落とし穴が待っていたのでした。 proxyの罠 このGrowiは社内で利用するだけで社外からアクセスはしません。当然会社のproxyの内側に設置します。となると、Ubuntu Serverにツールをインストールするためにproxyを通さねばなりませんので、あれこれproxy設定が必要になり

                                                                        社内でGrowiを立ち上げてみた - Qiita
                                                                      • 外部ファイルをExcelに読み込む際の作業を効率化するPower Queryの活用

                                                                        ExcelにCSVやテキストファイルなどを読み込むときに使うPower Queryは、Excelの一部として出荷されるものの、Excelとは大きく異なる仕組みを持つ。このため、Power Queryは、Excelにテーブルを作り、処理の結果を入れることができるが、そのテーブルにExcelの式を入れることは不可能だった。 しかし、PowerQueryで文字列としてExcelの数式を入れておき、テーブルが読み込まれたあとに、これを数式に変換することで、数式の入ったテーブルを作ることが可能になる。 そもそもPower Queryとは? Excel自体については、ほとんどの読者が知っていると思うが、Power Queryについては解説をしたことがないので、あらためて簡単に紹介しておこう。 Power Queryとは、Excelに付属するETL(「Extract, transform, load」

                                                                          外部ファイルをExcelに読み込む際の作業を効率化するPower Queryの活用
                                                                        • Unboundでお手軽DNSシンクホール

                                                                          背景 #見出しにジャンプ 以前からルータのDNSフォワーダにDNSシンクホールをさせていた。 しかし近年、ChromiumやAppleデバイスでブロック漏れが発生する理由に、対応していないクエリタイプ(SVCB/HTTPS)があることや、FQDN単位でのルールしか書けないためにサブドメイン対応が冗長だったこと、CNAME Cloakingを阻止できないことからDNSソフトウェアの利用は視野に入れていた。 YAMAHA RTXと異なり、NEC IXルータではクエリタイプ毎にフォワード先を切り替えられないため、検討が加速した。BINDやknot、PowerDNSがある中、初学者にも書きやすそうな縛りのない構文が魅力的と感じてUnboundを選んだ。 結果的にはソースコードの変更を要したが、満足に機能している。 更新履歴 #見出しにジャンプ UnboudとSELinuxを共存させるには、SELi

                                                                            Unboundでお手軽DNSシンクホール
                                                                          • セキュリティキャンプ2024 WebAssemblyゼミの備忘録 - ainnoooのブログ

                                                                            WebAssemblyゼミの講師を@saza_kuとさせてもらいました 新設のゼミでして、Wasm楽しいよという独り言と、受講生の方々が優秀すぎましたという備忘録です WebAssemblyゼミとは? WebAssembly(Wasm)は仮想命令セットです。RustやGoをはじめ様々な言語で記述されたアプリケーションをWasmターゲットにコンパイルできます。 Wasmは仮想命令セットですので、x86などのCPUで実行できるようWasmの命令を解釈するソフトウェアが必要になります。これをWasmランタイムと呼んでいまして、本ゼミはWasmランタイムを実装するゼミです。 Wasmの仕様を読み解きながら、基本的なWasmランタイムを実装し、ちょっとしたアプリケーションを動かす、というのがゼミの当初のゴールでした(このゴールはすぐに良い意味で破られます) 応募課題 応募課題ではWasmバイナリのp

                                                                              セキュリティキャンプ2024 WebAssemblyゼミの備忘録 - ainnoooのブログ
                                                                            • Windows 11で最も簡単なTPM 2.0回避策が修正される。他も修正されていく可能性

                                                                              Windows 11で最も簡単なTPM 2.0回避策が修正される。他も修正されていく可能性 MicrosoftのWindows 11ではTrusted Platform Module 2.0 (TPM 2.0)への対応が必須となっているため、AMDであれば一部のZen+以降、IntelであればCoffee Lake世代以降のCPUなどが必要になります。そのため、CPUは性能的には十分でもこのTPM 2.0の要件に阻まれてWindows 11にアップグレードできないため、このTPM 2.0要件を回避するために様々な方法が編み出されていました。 その1つがWindows 11インストールを行うSetup.exeのオプションに『/product server』と追加するだけでこのTPMをバイパスすることができる事が2023年10月ごろに発見されており、レジストリの編集や.dllファイルの置き換え

                                                                                Windows 11で最も簡単なTPM 2.0回避策が修正される。他も修正されていく可能性
                                                                              • What’s new in React 19 – Vercel

                                                                                What’s new in React 19Explore React 19 and how to start using it on Vercel today. React 19 is near. The React Core Team announced a React 19 release candidate (RC) this past April. This major version brings several updates and new patterns, aimed at improving performance, ease of use, and developer experience. Many of these features were introduced as experimental in React 18, but they will be mar

                                                                                  What’s new in React 19 – Vercel
                                                                                • "SRE" doesn't seem to mean anything useful any more

                                                                                  Writing Software, technology, sysadmin war stories, and more. This seems to be a thing now: someone finds out that you worked as an SRE ("site reliability engineer", something from the big G back in the day) somewhere, and now all you're good for is "devops" - that is, you're going to be the "ops bitch" for the "real" programmers. You are the consumer. They are the producer. They squeeze one out a