並び順

ブックマーク数

期間指定

  • から
  • まで

281 - 320 件 / 536件

新着順 人気順

アプリケーションの検索結果281 - 320 件 / 536件

  • AWS、ローコード開発ツール「AWS Step Functions Workflow Studio」リリース。サーバレスアプリをビジュアルプログラミング

    AWS、ローコード開発ツール「AWS Step Functions Workflow Studio」リリース。サーバレスアプリをビジュアルプログラミング AWSは、AWS Lambda関数やAWSのサービスなどをフローチャートのようにアイコンを組み合わせることでプログラミングを行える、ローコードビジュアル開発ツール「AWS Step Functions Workflow Studio」(以下、Workflow Studio)をリリースしました。 Workflow StudioはWebブラウザから利用する開発環境です。左側にAWS Lambda関数の呼び出しやAWSのさまざまなサービスがアイコンとして並んでいます。 Workflow Studioで開発された内容は、最終的にJSONベースのコード「Amazon States Language」( ASL)として出力されます。 Amazon S

      AWS、ローコード開発ツール「AWS Step Functions Workflow Studio」リリース。サーバレスアプリをビジュアルプログラミング
    • 「キャッシュは麻薬」という標語からの脱却 - id:onk のはてなブログ

      これは はてなエンジニア Advent Calendar 2023 の 18 日目の記事です。昨日は id:gurrium による private-isuで70万点取るためにやったこと - ぜのぜ でした。私は 50 万点ぐらいで満足してしまっていたので、しっかり詰めていて凄いなと思う。 developer.hatenastaff.com Web アプリケーション開発において、「キャッシュは麻薬」という言葉がインターネット上をよく飛び交っています。YAPC::Kansai OSAKA 2017 の id:moznion のトークでよく知られるようになったワードじゃないかな。 初出はちゃんとは分からないんですが、少なくとも 2011 年には言われていますね。 「キャッシュは麻薬」とはよく言ったものだ。— TOYAMA Nao (@nanto_vi) November 5, 2011 キャッシ

        「キャッシュは麻薬」という標語からの脱却 - id:onk のはてなブログ
      • ChatGPTとLangChainで何でもできるAIを作る - Qiita

        この記事は記事投稿キャンペーン_ChatGPTの記事です。 以下は、個人開発した最新のものになります. CreateToolAGI:ChatGPTとLangChainで何でもできるAI はじめに こんにちは、fuyu-quantです. 今回はLangChainという「大規模言語モデルを使いこなすためのライブラリ」の紹介とその機能を発展させるために作った新しいライブラリlangchain-toolsの説明およびその可能性について共有したいと思います. LangChainの機能であるtoolを使うことで,プログラムとして実装できるほぼ全てのことがChatGPTなどのモデルで自然言語により実行できるようになります.今回は自然言語での入力により機械学習モデル(LightGBM)の学習および推論を行う方法を紹介します. 記事に誤り等ありましたらご指摘いただけますと幸いです。 (※この記事の「Chat

          ChatGPTとLangChainで何でもできるAIを作る - Qiita
        • Cloudflare待機室

          本日、Cloudflare待機室をご紹介できることをうれしく思っております!まず、プロジェクトFair Shotという新プログラムで選ばれたお客様に最初にご利用いただけます。このプログラムは、新型コロナワクチン接種の圧倒的な需要によって、予約登録Webサイトが機能しなくなっている問題の解決を目的としています。BusinessプランとEnterpriseプランのお客様への一般提供については、近い将来行う予定です。 でも、待機室が楽しみってどういうことでしょうか?大半の方が、待機室がどういうところかをご存知のはずです。そこにいるということにうれしい要素は、ほぼありません。私たちがよく知っている待機室は、医師の診察を受ける前にいる部屋です。そうです、予約していても、医師に待たされたり、患者が遅れたりすることがありますね。医師は一度に1人の患者しか診ることができないため、患者が順番待ちをするという

          • 接触確認アプリ「COCOA」に不具合情報 厚労省が調査 | NHKニュース

            新型コロナウイルスに感染した人と濃厚接触をした疑いがある場合に通知を受けられる「接触確認アプリ」に不具合が起きているという指摘が複数、寄せられ、厚生労働省が詳しく調べています。 ところが、厚生労働省によりますと、先週以降、通知が届いた人から、「アプリを開くと『接触は確認されませんでした』と表示された」という連絡が複数寄せられたということです。 このため、厚生労働省は通知を受けた人に対しメールで連絡するようホームページなどで呼びかけています。 このアプリをめぐっては、厚生労働省がことし6月に運用を始めて以降、たびたび不具合が確認されています。 アプリは、5日時点でおよそ1157万件がダウンロードされているということで、厚生労働省の担当者は「原因を早急に確認して修正したい」と話しています。

              接触確認アプリ「COCOA」に不具合情報 厚労省が調査 | NHKニュース
            • “わずか10分”で「負荷試験環境」の構築が可能に クイックにチェックできる状況をサクッと作れる、Linode活用法

              StackScript、k8s、Terraformを使って、Linodeで負荷試験環境を自動で構築する方法について、アカマイ・テクノロジーズの岡本英輝氏と佐藤裕行氏が、実際のデモを交えて紹介しました。後半はLinodeを使った負荷試験のデモとQ&Aについて。前半はこちら。 Linodeのメリットが得られやすいユースケースとは? 佐藤裕行氏(以下、佐藤):後半は、Linodeのユースケースについて、少し岡本さんと話を進めていきたいと思うんですけども。今回はアプリケーションの負荷試験にフォーカスして、デモなども見せていきます。 その前に、負荷試験以外のサービスでいうと、こういうのに向いているとか、こういうのに向いてそうなところって、なにか感覚として持ってたりしますか? 岡本英輝氏(以下、岡本):前半に続いて、ちょっと転送量コストの話ばっかりになってしまうんですけど、やはりアウトバウンド転送量を

                “わずか10分”で「負荷試験環境」の構築が可能に クイックにチェックできる状況をサクッと作れる、Linode活用法
              • Use zsh as the default shell on your Mac

                Starting with macOS Catalina, your Mac uses zsh as the default login shell and interactive shell. You can make zsh the default in earlier versions of macOS as well. By default, your Mac uses either zsh or bash as the command-line interpreter for the login shell and interactive shell: zsh (Z shell) is the default shell for all newly created user accounts, starting with macOS Catalina. bash is the d

                  Use zsh as the default shell on your Mac
                • HerokuのOAuthトークン流出で、やっておくといいことリスト(コメント大歓迎)

                  2022年4月16日(日本時間)にアナウンスがあった、Heroku/Travis-CIのOAuthトークンの流出および悪用を受けて、ユーザーとしてやっておくといいことをまとめました。 GitHubのOrganizationのオーナー向けと個人向けで分けてあります。 追記: 複数の補足のコメントを頂き、記事にも取り込んでいます。ありがとうございます! 注意 執筆者はGitHub, Heroku, Travis-CIの専門家ではありません。この記事は誤っている可能性があります。 この記事は現在調査中の問題について書かれています。最新情報は必ず公式サイトをご確認ください。 GitHub Heroku Travis CI インシデントの概要 GitHubがHerokuとTravis-CIのOAuthアプリケーションに発行したトークンが流出・悪用したことで、それらの連携が有効だった多くのOrgani

                    HerokuのOAuthトークン流出で、やっておくといいことリスト(コメント大歓迎)
                  • Elasticsearchクラスタを再構築し、無停止で切り替えるベストプラクティス - Hatena Developer Blog

                    はてなブックマークチームのid:taraoです。はてなブックマークでは、以前はオンプレミスなElasticsearchクラスタを運用していましたが、AWS上にAmazon Elasticsearch Serviceのクラスタを構築して切り替えました。この切り替えではクラスタの再構築に限らず、アップグレードやマッピングの変更にも使える一般的な方法を採用しました。 この記事では、その具体的な方法を紹介します。 一般的な方法を採用したい目的と背景 検討したクラスタ再構築や切り替えの方法 1. ローリングアップグレード 2. スナップショット・リストア 3. クラスタ横断レプリケーション 4. Reindex API 5. アプリケーションコードによる再インデキシング 目的・条件による取りうる方法のまとめ 採用した再インデキシング手法の詳細 ダブルライトをどのように実現するか 非同期ダブルライトの

                      Elasticsearchクラスタを再構築し、無停止で切り替えるベストプラクティス - Hatena Developer Blog
                    • Cloudflare R2もいいぞ! - ゆーすけべー日記

                      CloudflareがSQLデータベースD1をアナウンスして衝撃を受けましたが、「R2もいいぞ!」というお話。 R2はS3みたいなストレージエンジンで、Sの前「R」、3の前の「2」ともじってて、AWS対抗といえます。で、ちょうどD1がアナウンスされた昨日にベータオープンしました。 A New Hope for Object Storage: R2 enters open beta 「ただのストレージだろ」とたかをくくってたんですが、使ってみてだいぶよいです。 先にまとめると以下の3つのことが言えます。 安い DX(Developer Experience)がよい Cloudflareの他の製品を組み合わせるとヤバい 詳しく紹介します。 作ったアプリ R2を評価するために、以前S3をバックエンドにして作ったアプリケーションをR2に置き換えるというのをやりました。そのアプリケーションについては

                        Cloudflare R2もいいぞ! - ゆーすけべー日記
                      • 【Vue.js入門】の執筆者が語る! Vue.jsで押さえておきたい5つのポイント - FLEXY(フレキシー)

                        ※本記事は2019年11月に公開された内容です。 JavaScript用のフレームワークの中でも高い採用率を誇るVue.js。そのVue.jsをこれから学び始める方は、学び方を教えてほしい、有識者の話を聞きたいと考えたことはありませんか。本記事では、「Vue.js入門 基礎から実践アプリケーション開発まで」の著者である手島拓也氏にVue.jsを学ぶ前に知っておきたいポイントを語っていただきます。Vue.jsの勉強方法や手島氏の経験を知ることができるので、ぜひご覧ください。 学ぶ前にまずはどんな案件があるか知りたい方は、FLEXYで取り扱っているVue.js案件をご覧ください。 私のエンジニア史とVue.jsに出会うまで 先日、慶應義塾大学矢上賞(起業支援)授与式で招待講演をする機会がありました。その際にも強烈に感じたのですが、Vue.jsと私のエンジニア史を切り離して語ることはできません。

                          【Vue.js入門】の執筆者が語る! Vue.jsで押さえておきたい5つのポイント - FLEXY(フレキシー)
                        • あらためて学ぶOSの役割 - 「OSの気持ち」を知り、コンピュータをよりよく理解しよう |ハイクラス転職・求人情報サイト AMBI(アンビ)

                          あらためて学ぶOSの役割 - 「OSの気持ち」を知り、コンピュータをよりよく理解しよう パソコンを操作するうえで、欠かすことができないOS(オペレーティングシステム)ですが、あまりにも「あたりまえ」の存在ゆえ、その実像をイメージすることは多くはないでしょう。OSは「なにを」「どのように」処理しているのかを学ぶと、自身が使用するパソコンがもっとよく理解できるようなるかもしれません。内田公太さんが、OSの役割と働きの基本、そして「OSの気持ち」を理解するための方法を解説してくれました。 こんにちは、内田公太(@uchan_nos)です。 普段皆さんはパソコンを使っていろいろな処理をしていると思います。ネットサーフィンに文書作成、音楽を聴いたり絵を描いたり。この記事をお読みの方はプログラミングもしている方が多いと思います。 C言語の入門書で学ぶ最初のプログラムはだいたい printf("Hell

                            あらためて学ぶOSの役割 - 「OSの気持ち」を知り、コンピュータをよりよく理解しよう |ハイクラス転職・求人情報サイト AMBI(アンビ)
                          • ChatGPTをWebフレームワークにしたら、未来が見えた

                            ChatGPTを文字通りWebフレームワークにしてみました。 何を言っているかわからないと思うので、次のコードを見てください。 import { initChatGptGenerator } from "gpt-as-api"; import { Hono } from "hono"; import { cache } from "hono/cache"; const gpt = initChatGptGenerator( "これからTODOアプリとしてふるまってください。\n今からリクエストを行うので、そのアプリレスポンスを次の指示に従って返却してください。\n\n{{Domain}}" ); const app = new Hono(); app.get("/", gpt("TODOの管理ができるページをHTMLで適切に返してください。", "html")); app.all("/ap

                              ChatGPTをWebフレームワークにしたら、未来が見えた
                            • CockroachDB はどのくらい「しぶとい」のか? / How tough is CockroachDB?

                              CockroachDB はどのくらい「しぶとい」のか? / How tough is CockroachDB?

                                CockroachDB はどのくらい「しぶとい」のか? / How tough is CockroachDB?
                              • 書き込みがあるワークロードにおける ZOZOTOWN マルチクラウド構想とその検討停止について - Qiita

                                この記事はZOZOテクノロジーズ #1 Advent Calendar 2019 23日目の記事です。 昨日の記事は弊チームの inductor による「GKEの内部負荷分散機能を使ってInternal Load Balancerを構築する」でした。面倒で困っているのでGCP様にはなんとかして欲しいものです さて本記事では、残念ながら本番運用には至らなかったのですが、私がここ暫くMLOps業の裏でやっていた「書き込みがあるワークロードにおける ZOZOTOWN マルチクラウド構想」の検討結果について供養のつもりで記そうと思います。 なお、今年は弊社では全部で5つのAdvent Calendarが公開されています。 ZOZOテクノロジーズ #1 Advent Calendar 2019 ZOZOテクノロジーズ #2 Advent Calendar 2019 ZOZOテクノロジーズ #3 Ad

                                  書き込みがあるワークロードにおける ZOZOTOWN マルチクラウド構想とその検討停止について - Qiita
                                • AWSがダイアグラムエディタの開発に便利なライブラリ「Diagram Maker」を公開

                                  Amazon Web Services(AWS)がIoTアプリケーションの開発者向けにダイアグラム作成用オープンソースライブラリ「Diagram Maker」を公開しました。Diagram Makerを利用することで、開発者が外観や使い勝手などを独自に定義しつつ、簡単にダイアグラムエディタ機能をアプリケーションに実装することができるようになります。 Diagram Maker · A library to display an interactive editor for any graph-like data. https://awslabs.github.io/diagram-maker/ GitHub - awslabs/diagram-maker: A library to display an interactive editor for any graph-like data.

                                    AWSがダイアグラムエディタの開発に便利なライブラリ「Diagram Maker」を公開
                                  • ぼくたちは Java アプリケーションの起動速度をどこまで縮められるか

                                    AWS Dev Day 2022 で発表したJava アプリケーションの起動速度のアプローチの資料

                                      ぼくたちは Java アプリケーションの起動速度をどこまで縮められるか
                                    • Big Sky :: Vim をモダンな IDE に変える LSP の設定

                                      Go 言語の IDE 機能を得る為に何か知る必要はありません。Java の IDE 機能を得る為に何か知る必要はありません。HTML の IDE 機能をインストールする為に npm コマンドの使い方を覚えたり、LaTeX の IDE 機能をインストールする為に、配置場所を考える必要もありません。もしインストールを実行しても動かなかったら、それは vim-lsp-settings のバグです。 以前まででれば vim-lsp を導入すると Language Server の登録が必要でした。 if executable('gopls') au User lsp_setup call lsp#register_server({ \ 'name': 'gopls', \ 'cmd': {server_info->['gopls']}, \ 'whitelist': ['go'], \ }) au

                                        Big Sky :: Vim をモダンな IDE に変える LSP の設定
                                      • Vercel、生成AIへのプロンプトでWebアプリのUIを自動生成してくれる「v0」をベータ公開。Freeプランも提供

                                        Vercel、生成AIへのプロンプトでWebアプリのUIを自動生成してくれる「v0」をベータ公開。Freeプランも提供 Next.jsの開発元として知られるVerelは、生成AIに対して自然言語のプロンプトを与えることでWebアプリケーションのユーザーインターフェイスを自動生成してくれるサービス「v0」のベータ公開を発表しました。 v0を使うと、人間のWebデザイナーに「こんな画面を作って」「ここの色は青にして」「ここのフォントは大きく」などと言葉で指定するの同じような感じで生成AIに指示をして、HTMLやCSSなどのコードを書くことなくWebアプリケーション画面の生成が可能です。 Introducing v0: generate UI from simple text prompts. 5,000 waitlist invites were sent today—with over 25

                                          Vercel、生成AIへのプロンプトでWebアプリのUIを自動生成してくれる「v0」をベータ公開。Freeプランも提供
                                        • フルスタックのチャットアプリケーションをAWSとNext.jsで構築する | Amazon Web Services

                                          Amazon Web Services ブログ フルスタックのチャットアプリケーションをAWSとNext.jsで構築する モダンなチャットアプリはリッチな機能を必要とします。これらの機能はファイルストレージ・リアルタイムの更新、そしてクライアントとサーバーの両方からデータを取得する能力が必要です。 従来、これは多くのサードパーティサービスをつなぎ合わせるか、カスタムソリューションの作成に開発時間を費やすことを意味していました。そして、この方法では市場投入までの時間が遅くなり、複数の障害点が発生します。 チャットアプリに必要な機能と、AWS が従来の問題点をどのように解決しているかを紹介するために、我々はリアルタイムチャットアプリケーションのサンプルを更新しました。このバージョンは、ローカルと AWS の両方でアプリケーションを完全に管理・制御することがいかに簡単かを強調するために再設計され

                                            フルスタックのチャットアプリケーションをAWSとNext.jsで構築する | Amazon Web Services
                                          • Goのアーキテクチャとフレームワークについて - pospomeのプログラミング日記

                                            社内slackでGoについて質問されて、それなりに長文で回答したのでその内容を加筆修正したものをブログに残しておく。 質問内容としては以下のイメージ。 RubyだとRailsがあり、MVCを利用することになるが、Goだとそこらへんはどうなるのか? Go初心者なのでGoのモダンなアーキテクチャとフレームワークについて教えて欲しい。 これ系の質問はGo経験者であれば「あーこれなー」と思うだろーし、 Go初心者のときに一度は悩んだことがあるだろう。 なので、個人的な意見を残しておく。 自分の意見が正しいかどうかは自己判断して欲しい。 結論 アプリケーションアーキテクチャの複雑化とMVCフレームワーク システムアーキテクチャの複雑化とフルスタックなフレームワーク マイクロフレームワーク 改めて質問内容を振り返る pospomeが考えるGoのフレームワーク選定 pospomeが考えるGoのアーキテク

                                              Goのアーキテクチャとフレームワークについて - pospomeのプログラミング日記
                                            • LLMを使ったアプリケーション開発の基本とLangChain超入門

                                              書籍はこちら:https://www.amazon.co.jp/dp/4297138395 === ChatGPTのAPIが公開されたころから、多くの組織が大規模言語モデル(LLM)を使ったアプリケーション開発に取り組むようになりました。LLMを使ったアプリケーション開発では、「LangChain」というフレームワークも大きく注目されています。 しかし、「LLMやLangChainが話題なのは知っているが、具体的なことは分からない」「この分野に興味を持っているが、勉強するきっかけを持てずにいる」といった方も少なくありません。 そこでこの講演では、LLMを使ったアプリケーション開発がなぜ盛り上がっているのか、どのように開発するのかといった基本から始めて、LangChainの基礎知識まで概説します。 === イベントページ:https://forkwell.connpass.com/event

                                                LLMを使ったアプリケーション開発の基本とLangChain超入門
                                              • Webアプリケーション設計の第一歩は
ディレクトリの整理から / Encraft 1

                                                2023/3/24、Encraft #1 フロントエンド×設計にて発表した資料です。

                                                  Webアプリケーション設計の第一歩は
ディレクトリの整理から / Encraft 1
                                                • サーバ不要でバックエンドAPIのモックを実現する「Mock Service Worker 2.0」正式リリース。Fetch API、ストリームAPI対応など新機能

                                                  サーバ不要でバックエンドAPIのモックを実現する「Mock Service Worker 2.0」正式リリース。Fetch API、ストリームAPI対応など新機能 Webアプリケーションのクライアントを開発する際に、本来ならばサーバ上で稼働するWebアプリケーションのバックエンドのAPIを呼び出してデータを受け取って表示するといった動作を作り込みたいけれども、まだバックエンドのAPIも開発中であったり、何らかの理由でバックエンドを稼働させる環境を用意できなかったりすることは、しばしば起こりえます。 そうしたときにサーバを立てることなく、バックエンドのAPIをモックとして簡単に設定し提供してくれるソフトウェア「Mock Service Worker」の最新版「Mock Service Worker 2.0」が正式にリリースされました。 Announcing MSW 2.0! Migratio

                                                    サーバ不要でバックエンドAPIのモックを実現する「Mock Service Worker 2.0」正式リリース。Fetch API、ストリームAPI対応など新機能
                                                  • 政府 “濃厚接触者を把握”アプリの導入検討 近く実用実験へ | NHKニュース

                                                    新型コロナウイルスの感染拡大で、政府は感染した人の濃厚接触者を速やかに把握するため、スマートフォンの通信機能を使って接触者をリスト化できるアプリの導入を検討していて、近く実用実験に乗り出すことにしています。 このアプリはシンガポールで開発・導入されているもので、アプリを入れたスマートフォンを持っている人どうしが一定の距離に近づくと、相手の電話番号を暗号化したデータを互いに記録します。 そして、仮にアプリを利用している人が感染した場合、政府の担当者が記録されたデータを解析して濃厚接触者を洗い出す仕組みです。 政府は民間団体による日本版の開発を待って、近く実用実験に乗り出すことにしています。 ただ、個人情報保護への配慮などの課題もあることから、どのような運用が可能かは慎重に検討する方針で、竹本IT担当大臣は「スピード感が必要なので、すぐに取りかかりたいが、アプリの利用が広がらなければ効果は上が

                                                      政府 “濃厚接触者を把握”アプリの導入検討 近く実用実験へ | NHKニュース
                                                    • AWSのローコード開発ツール「Amplify Studio」が正式リリース。Figmaと連携してプロトタイプからコードを自動生成

                                                      AWSのローコード開発ツール「Amplify Studio」が正式リリース。Figmaと連携してプロトタイプからコードを自動生成 Amazon Web Services(AWS)は、Webアプリケーションを最小限のコーディングで開発できる、いわゆるローコード開発ツール「Amplify Studio」の正式リリースを発表しました。 Announcing AWS Amplify Studio is in general availability: FREE pixel-perfect Figma-to-React conversion Bind UI components to data Extend React components in code Works seamlessly with Amplify backends Check out the launch blog!https:/

                                                        AWSのローコード開発ツール「Amplify Studio」が正式リリース。Figmaと連携してプロトタイプからコードを自動生成
                                                      • Goで軽量なデスクトップアプリ作成

                                                        Lorca+SvelteKitでやってみる! https://github.com/zserge/lorca https://github.com/sveltejs/kit あらかじめ必要なもの go(version 1.17.2以降) nodejs(16.9.0以降),npm(7.21.1以降) Chrome/Chromium/Edgeのいずれか プロジェクトの開始 mkdir sample-gui cd sample-gui go mod init sample-gui npm init svelte@next frontend // Choice "Svelte app template" is "Skelton Project". // Choice "Use TypeScript" is No. // Choice "ESLint" is No. // Choice "Prett

                                                          Goで軽量なデスクトップアプリ作成
                                                        • Webサービスエンジニアが教えるサーバサイドのログ分析 情報を可視化して負荷状況を見よ

                                                          ログ分析勉強会は、日々の業務に役立てられる「ログ分析」についての情報交換を目的として活動しています。オンライン開催となった今回、AWSに詳しい山口氏がWebサービスのパフォーマンス改善に必要なログ分析について、日々の業務から得た知見を共有しました。後半は、サーバーサイドから見たログ分析について。 サーバ情報を可視化して負荷状況を見る 続いて、サーバの負荷状況を見るところですね。リソースの情報をコマンドで取得してサーバ情報を可視化しましょうというところです。 よく使うのは、1つ目はhtopですね。htopでプロセスごとにどれくらいのメモリやCPUを使っているかを取っていくのがあります。リクエストが多いときにこれを取っていって、どこが重たくなっているかを見るというのがいいかなと思っています。 例えばアプリケーションサーバと同梱されているものだったりとかすると、アプリケーションサーバの負荷がいき

                                                            Webサービスエンジニアが教えるサーバサイドのログ分析 情報を可視化して負荷状況を見よ
                                                          • 【ソフトウェア設計】例外処理を考える

                                                            はじめに 最近書いてるソフトウェア設計シリーズです。今回は例外に関して。以前、以下のような記事を書いたのですが、もう少し深堀して書いてみました。 ちなみにソフトウェア設計シリーズは他には以下を書いています。 モジュールになぜ分けるのか? モジュール、依存、そしてカプセル化 モジュールをどう分割するのか? 簡潔さは力なり? 予測可能な振る舞いと簡潔さについて ドキュメントとしてのコメント TL;DR 例外は「原則」キャッチしない 業務例外や必ずハンドリングさせたい例外はOptionalなど戻り値の方が便利 だいたい以下の図が言いたい事のすべて 例外処理とは? 「例外処理(Exception Handling)」は言語に依らず普遍的な関心事です。端的に言えば例外処理は異常やシステムの動作に不備が発生した際の特別な分岐処理です。リカバリやリソースの解放、あるいはユーザへの通知などがありますね。

                                                              【ソフトウェア設計】例外処理を考える
                                                            • 「AWSコンテナ設計・構築 [本格] 入門」を執筆しました - horsewin's race records

                                                              はじめに AWS x コンテナに関する商業誌を執筆しましたので、本ブログにて少し内容を紹介できればと思います。 (しかし、見本誌をつみあげるとなかなか圧巻でした!) amzn.to 見本誌 こちら、共同執筆者の新井さん (@msy78)や、監修いただいた佐々木さん(@dkfj)のブログでも触れられている内容になります。執筆に至った経緯などはお二人のブログでも語られていますので、↓をどうぞ。 『AWSコンテナ設計・構築[本格]入門』の監修しました - プログラマでありたい 「AWSコンテナ設計・構築 [本格] 入門」を執筆しました - How elegant the tech world is...! このブログでは執筆者の一人である、私の視点からの書籍の紹介をいたします。 書籍について 本の概要 全5章で構成しています。本当は付録としてECSコンテナを扱うためのツールもいくつか紹介するため

                                                                「AWSコンテナ設計・構築 [本格] 入門」を執筆しました - horsewin's race records
                                                              • 安全なウェブサイトの作り方~失敗例~ - goruchan’s blog

                                                                安全なウェブサイトの作り方を読んだので、理解した内容を自分なりにまとめておきます。資料 上記は3章構成になっていてそれぞれ長めの内容なので、ここでは3章の『失敗例』について、Ruby on Rails ではどうするかについてをまとめます。 SQL インジェクション OS コマンドインジェクション パス名パラメータの未チェック例(ディレクトリトラバーサル) 不適切なセッション管理例(セッション ID の推測) クロスサイト・スクリプティングの例(エスケープ処理) CSRFの例 HTTP ヘッダ・インジェクションの例 メールヘッダ・インジェクションの例 参考 SQL インジェクション 参考資料内の SQL インジェクション例を見て、Ruby on Rails ではどのように対策できるかを確認しました。 例えば、下記ような $uid, $pass をユーザ入力とし、SQL 文を動的に生成する場合

                                                                  安全なウェブサイトの作り方~失敗例~ - goruchan’s blog
                                                                • Next.js製アプリケーションのコンパイルを約100倍高速化した話

                                                                  Next.jsアプリケーションの開発時においてコンパイルが長時間に及ぶ問題が起きていたので、その原因を特定した手法と採用した解決策について記載します。 今回は結果的にコンパイル時間を100倍以上高速化することができました。 前提 今回の対応は以下のバージョンで行いました。 React@18.2.0 next@12.2.4 tailwindcss@3.2.4 postcss@8.4.14 Next.js の開発中に、コンパイル時間が長くなっていることに気づく 最近、Next.jsアプリケーションのローカル開発時に待ち時間が長くて生産性が低いのでなんとかしたい、という相談を受け、調査を開始しました。 まず、おもむろにyarn devでプロセスを立ち上げてみたところ、以下のようなコンパイル時間を示すログが表示されました。 yarn dev yarn run v1.22.19 $ next dev

                                                                    Next.js製アプリケーションのコンパイルを約100倍高速化した話
                                                                  • Python だけで作る Webアプリケーション(フロントエンド編)ーはじめに - Qiita

                                                                    お疲れ様です。 今日からは「Python だけで作る Web アプリケーション(フロントエンド編)」について部分いたします。 はじめに 設計方針 共通部分の作成 ログインページ 商品一覧ページ 商品詳細ページ カートページ 注文一覧ページ 注文詳細ページ まとめ 今回は10の記事に分けて投稿するようにします。 今日は「はじめに」について部分いたします。 なぜ本書を書いたのか 本書は主に以下のような方を対象にしています。 Web アプリケーションの構築経験がない新米エンジニア Python はかけるが、HTML/JS/CSS が苦手な Pythonista 細かい UI の設定はせず、検証・デモ用の Web アプリを短期間で作りたい開発チーム どうやって作ったか 対象読者の悩みを解決するために、次の 3 つの要素が必要と考えました。 Web アプリケーションの基礎知識 参考にしてもらえる品質

                                                                      Python だけで作る Webアプリケーション(フロントエンド編)ーはじめに - Qiita
                                                                    • Introducing ChatGPT and Whisper APIs

                                                                      Developers can now integrate ChatGPT and Whisper models into their apps and products through our API. ChatGPT and Whisper models are now available on our API, giving developers access to cutting-edge language (not just chat!) and speech-to-text capabilities. Through a series of system-wide optimizations, we’ve achieved 90% cost reduction for ChatGPT since December; we’re now passing through those

                                                                        Introducing ChatGPT and Whisper APIs
                                                                      • NFCタグをWebアプリで読み書きできる「Web NFC」、Chrome 81ベータで実装開始

                                                                        Googleは現在開発中のChrome 81ベータ版に、Web NFCの機能を試験的に組み込んだことを明らかにしました。 Web NFCは、WebアプリケーションからNFC(Near Field Communication:近距離無線通信規格)タグの読み書きを行うための仕様および機能です。NFCに対応したICタグとデバイスを数センチの距離に近づけると非接触で通信ができます。 スマートフォンの多くにはすでにNFCリーダー/ライターの機能が備わっているため、Web NFCの機能を組み込んだWebブラウザを利用することでアプリケーションからスマートフォンのNFC機能を利用可能です。 ただし現時点でのWeb NFCの対応範囲はNDEF(NFC Data Exchange Format)と呼ばれる軽量なメッセージ交換までで、ISO-DEP、NFC-A/B、NFC-F、HCEなどへの対応はスコープ外と

                                                                          NFCタグをWebアプリで読み書きできる「Web NFC」、Chrome 81ベータで実装開始
                                                                        • アーキテクチャの進化はドメインイベントが起点になる - KAKEHASHI Tech Blog

                                                                          こちらの記事はカケハシ Advent Calendar 2023 Part2の24日目の記事になります。 adventar.org はじめに 反復的な開発は、変更容易性の高いソフトウェアが不可欠です。ソフトウェア開発の経験がある方なら、デリバリ後の洞察や市場環境の変化から、新しい機能の追加やアーキテクチャの進化の必要性に直面したことが一度はあるでしょう。 私自身、要求分析手法やSOLID原則等の技法を取り入れ、変更容易性に対応する多くのプロジェクトに参加しました。しかし、どれだけ優れた手法や技法を持っていても、変更が難しい要求が出てくることは避けられません。その際、「過去の出来事」を正確に記録していれば、後から見返して問題解決が容易だったと感じることがよくあります。 ドメイン駆動設計(DDD)では、「過去に起こった出来事」を表現するドメインモデルを「ドメインイベント」と呼びます。変更容易性

                                                                            アーキテクチャの進化はドメインイベントが起点になる - KAKEHASHI Tech Blog
                                                                          • 設計の知識と技能で駆動するソフトウェア開発

                                                                            Object Oriented Conference 2024 登壇の機会をいただいたので、ここ数年、設計について考えていることを、言語化してみました。 はじめに 設計と開発プロセスの関係性 ソフトウェア設計の知識と技能 ① ソフトウェア設計の基礎知識 a. 基本課題 b. 解決のアプローチ c. モジュール化:基本となる4つの技法 ② モジュール化 a. モジュールの分類 b. オブジェクト指向プログラミングのモジュール化 c. ドメイン駆動設計のモジュール化 ③アプリケーションのモジュール構成(参照モデル) コア(中心) ポート(境界) アダプタ(周辺) ④モデル駆動設計 全体 事業活動、要件、アーキテクチャ コア(中央) 業務ロジック、ドメインモデル 業務機能、アプリケーションサービス アダプター(周辺) 記録モデル、データベーススキーマ 連係モデル、プロトコル設計 対話モデル、イン

                                                                              設計の知識と技能で駆動するソフトウェア開発
                                                                            • モバイルアプリに最適化した軽量JavaScriptエンジン「Hermes」、Facebookがオープンソースで公開。低スペックのスマートフォンでの実行速度を重視

                                                                              モバイルアプリに最適化した軽量JavaScriptエンジン「Hermes」、Facebookがオープンソースで公開。低スペックのスマートフォンでの実行速度を重視 Webアプリとして構築されているモバイルアプリケーションは、現在では非常に複雑で大規模なものになりつつあります。 これは同時に、アプリケーションのロードや起動にかかる時間が増大することに直結しており、特に発展途上国などで広く使われている低スペックなスマートフォンにおいてはその影響が顕著です。 Facebookがこうした大規模するモバイル向けWebアプリケーションの課題を取り除くべく調査したところ、JavaScriptエンジンを改善する必要があることを認識し、Hermesを開発することにしたと説明しています。(追記:ただし後述のようにHermesは現時点ではWebアプリケーション用ではなくReact Nativeのオプションとなって

                                                                                モバイルアプリに最適化した軽量JavaScriptエンジン「Hermes」、Facebookがオープンソースで公開。低スペックのスマートフォンでの実行速度を重視
                                                                              • [翻訳] Shopifyにおけるモジュラモノリスへの移行 - Qiita

                                                                                こんにちは、食べログシステム本部長の京和です。 本エントリでは Shopify の Engineering Blog から、Kirsten Westeinde による「Deconstructing the Monolith: Designing Software that Maximizes Developer Productivity」を翻訳して掲載します。 食べログではユーザーや飲食店に価値を届けるスピードを最大化するべく、マイクロサービス化などをはじめとしたこれまでの組織やアーキテクチャを刷新するための取り組みを始めています。しかし、マイクロサービスはアプリケーションアーキテクチャとインフラアーキテクチャが複雑に絡み合ったシステムで技術的難易度が非常に高く、適切に構築できなければ「分散されたモノリス」と呼ばれるアンチパターンに陥ります。1 Shopifyではマイクロサービスではなく、

                                                                                  [翻訳] Shopifyにおけるモジュラモノリスへの移行 - Qiita
                                                                                • どうして統合テストは重要なんだろう?

                                                                                  はじめに 最近では、多様なテスト手法や開発者向けツールを散見します。 エンドツーエンド(E2E)テストだけでも、「Cypress」「Puppeteer」「Playwright」「Selenium」などのツールがあります。単体テストでは「Vitest」や「Visual Studio」のビルトイン単体テスト機能など、テストの準備を容易に自動化できます。 ですが、多様なテストツールを導入しても、「When」、「How」を押さえてなければ、テストの効果を有効に得ることができないと考えています。 まず、静的テスト、単体テスト、統合テスト、E2Eテストを実装コスト、実行時間と信頼性の観点で見ていき、無駄や漏れのないテスト戦略を立てていきましょう 。 テストを実装コスト、実行時間と信頼性で考える どのテストを使用するかの選択する観点として、テストをする実装コスト、実行時間と、テスト結果の信頼性のトレード

                                                                                    どうして統合テストは重要なんだろう?