何周も遅れてしまっているのですが、フロントエンド周りの勉強に取り組んでいます。色々と遠回りをしつつ、Next.jsに流れ着きました。SSRとかSSGとか分かりにくい言葉が多くて難しそうに感じたので、自分なりの理解を図にしてみました。 Server Side Application サーバーはリクエストを受けると動的にHTML文書を生成して返却する。 1993年にCGIが登場した時から基本的に同じ仕組みであり、今でも主要なアーキテクチャです。 Ajax クライアント(ブラウザ)側のJavaScriptでサーバーから追加データを取得し、DOM操作でページの内容を書き換える。 ページ遷移することなくコンテンツを書き換えることができる手法です。このアーキテクチャが登場してから、Webアプリケーションで実現できるUIや表現の幅が飛躍的に広がりました。 CSR (Client Side Renderi
システムトラブルで運用を中止していた「雇用調整助成金」のオンライン申請を、5日再開直後に再びトラブルで中止した問題で、厚生労働省は個人情報が流出した可能性があることを明らかにしました。 ところが初日からシステムトラブルが発生し、運用をいったん中止してシステムを改修したうえで2週間たった5日、正午からオンラインによる受け付けを再開していました。 しかし5日午後2時半ごろ、申請した企業から「他社の情報が見られる」という連絡があり、再開から3時間もたたずに再び受け付けを中止する事態となりました。 厚生労働省によりますと5日、オンラインシステムに登録した企業は2000件で、申請手続きを終えたのは200件に上りましたが、このうち、少なくとも1社の申請書類を別の企業3社が見られる状態だったことが分かったということです。厚生労働省はどの程度の個人情報が見られる状態だったのかなど詳しい状況を調べています。
Fooocus is an image generating software (based on Gradio). Fooocus is a rethinking of Stable Diffusion and Midjourney’s designs: Learned from Stable Diffusion, the software is offline, open source, and free. Learned from Midjourney, the manual tweaking is not needed, and users only need to focus on the prompts and images. Fooocus has included and automated lots of inner optimizations and quality i
Rubyフレームワークとは、Rubyを使用して小規模から大規模のWebアプリケーションやWebシステム開発する際の土台として機能するソフトウェアのことを指します。 つまり、共通するコード(それぞれのプログラミング言語)に機能性を加えて形成された骨組み、枠組みです。 特に大規模のWebアプリケーションやWebシステムなどを開発する際、膨大な量のプログラムを書かなくてはなりません。 しかしフレームワークを使用することで、プログラムの記述量を大幅に削減し工数をさげる事が可能です。 経験が浅いエンジニアでもセキュリティが担保されたプログラムを作成する事ができます。 2.フレームワークとライブラリの違い フレームワークとライブラリの簡単に違いについてお伝え致します。 ・フレームワーク フレームワークは、プログラミングにおいて、特定のオペレーティングシステムのためのアプリケーションの標準構造を実装する
回線の高速化・データ大容量化、スマホの登場など、 時代ともに多様化していくWeb制作を インターネットの登場から年表にまとめました。 本格的にインターネットの普及がはじまる インターネットは、当初大学や研究機関のデータ共有が目的でした。一般に普及する契機は、接続を手軽に行える1995年のWindows 95の登場です。Webデザインは1993年にHTML 1.0が公開され、マークアップによるタイトルや見出しによるデザイン表現が始まります。 世界初のWebサイトは、テキストのみのデザイン Webサイトの歴史は1991年のティム・バーナーズ=リー氏によるWWWの提唱によってはじまりました。当時はテキストのみのデザイン。バーナーズ=リー氏は、URL・HTTP・HTML の最初の設計も手掛けました。 国内のインターネット接続は「ダイヤルアップ接続」と「ISDN」が主流 この時代の一般のネット利用は
概要 はじめに 本日は、AWS CloudFront + WordPress 構成を構築する上でハマった落とし穴をいくつかご紹介します。CloudFront + WordPress 構成を採用される方は、参考にして下さい。 システム構成 Amazon Lightsailに、WordPress環境を起動しています。WordPressのバージョンは、5.6です。WordPressのフロントにCloudFrontを設置し、CloudFrontでSSLの終端を行っています。 なお、今回ご紹介する落とし穴は、通常のWordPress環境およびWordPress Multisite環境の両方で発生することを確認しております。 siteurl がオリジン側のURLを向いてしまう 説明 Amazon LightsailにWordPressのインスタンスを起動し、CloudFront のオリジンに設定してデ
Web対応のざっくりとした変遷は次のようになっています。 2019年5月(Google I/O): テクニカルプレビュー版公開2019年12月: ベータ版リリース(beta channelでも使えるようになった、という方が正確かも)このペースを見ると、2020年のGoogle I/Oにリリースプレビュー、同年12月に開催されるであろうFlutterイベントで正式リリース、などの流れもあり得そうですが、そういうバージョン表記はマーケティング的意味合いも大きいと思っていて、実際の対応ベースで評価する方が適切だとも思います。 (とはいえ、そういう表記が正式版に近づくと現場でプロダクション利用が認められたりすることもあるはずなので、現実的には大事といえば大事ですが。) 本記事では、2019年末現時点でのFlutterのWeb対応の実情を、公式アナウンスをなぞりながら、普段Web周りもよく触っている
こんにちは、イノベーションLABのM.Mです。 今回はQubeで導入したクレジット決済機能のStripeについて記事にしていきたいと思います。 今回は前編として、Stripeのアカウント作成手順について解説します。 Stripeとは? 特徴・仕組み 手数料 対応しているクレジットカード Stripeアカウント登録 最後に Stripeとは? 特徴・仕組み Stripeとは初期費用や月額利用料が不要で、決済ごとに手数料が加算される仕組みのオンライン決済システムです。 Stripeを通じて、クレジットカード、銀行振込、ウォレット(googlepay等)、店舗支払いなど複数の決済手段に対応できます。 アカウント作成後すぐに利用でき、24時間対応のカスタマーサポートがあります。 手数料 決済手数料はクレジットカード決済の場合3.6%、銀行振込の場合1.5%です。 これらの決済手数料は一律であり、支
今回は、swaggerを使って開発効率を爆上げしたいあなたに、ちょっと踏み込んだswagger活用術を紹介したいと思います! paths sectionを修正しなければいけない機会を最大限少なくする paths sectionってそもそも指定すべきプロパティが多いので、ちゃんとAPI仕様を作ろうと思うとどうしても見づらくなります 特に、parametersやrequestBody、responsesが同居すると記述のルールが違うので統一感がなく、階層が深くなり見づらいです そんなpathsはやはり最大限シンプルに保つべきというのが運用していて思うことです 以下にpathsを最大限シンプルに記述した例を提示しますので、是非参考にしてみてはいかがでしょうか! openapi: 3.0.3 servers: - url: http://localhost:3000 info: title: te
厚生労働省は2020年6月9日、雇用調整助成金のオンライン申請システムで6月5日に発生したシステム障害による被害状況と、現時点で判明した原因を公表した。不具合は申請者がシステム画面上の「戻る」ボタンでなく、Webブラウザーの「戻る」ボタンなどで前画面に戻った場合に発生。プログラムミスにより、既に入力を済ませた別の申請者の書類が読み出され、閲覧できる状態になっていたという。 厚労省によると、申請内容が漏えいした申請事業者は1社で、その申請内容を閲覧できる状態になった別の事業者は10社あった。漏えいした情報には役員2人の氏名や役職などの個人情報に加え、法人の銀行口座情報、労働者2人の個人情報や出勤状況、給与明細などの情報が含まれていた。 厚労省は情報が漏えいした事業者と、その情報を閲覧できる状態になった事業者それぞれに謝罪と状況説明の連絡を取った。閲覧できた他社の申請書類をダウンロードした事業
アクセスが集中したため中断していた横浜市の新型コロナウイルスのワクチン接種の受け付けは、5日から再開しました。市によりますと、アクセスが集中しつながりにくくなったものの、問題は起きていないとしています。 横浜市は、3日、高齢者を対象にしたワクチンの集団接種の受け付けを始めましたが、専用のサイトにアクセスが集中したため中断しました。 市によりますと、80歳以上のおよそ34万人を対象に受け付けを始めたところ、想定のおよそ2倍に当たる1分間に200万回のアクセスがあり、処理しきれなかったということです。 このため新たに別のサーバーを設置して処理できる件数を増やしたうえで、5日午前9時からインターネットと電話で受け付けを再開しました。 市によりますと、専用のサイトも予約センターの電話もアクセスが集中してつながりにくくなったものの、問題は起きていないとしています。 今回、予約を受け付けるのは7万50
一般社団法人コンピュータソフトウェア協会(東京都港区赤坂、会長:荻原紀男、株式会社豆蔵ホールディングス 代表取締役会長兼社長、以下「CSAJ」)は、Software ISAC(代表:萩原健太、グローバルセキュリティエキスパート株式会社)で実施した「OWASP アプリケーションセキュリティ検証標準4.0」の日本語邦訳文書を公開しました。 OWASPアプリケーションセキュリティ検証標準(以下「ASVS」)は、アーキテクト、開発者、テスター、セキュリティ専門家、ツールベンダ、アプリケーション利用者などが、最新のWebアプリケーションおよびWebサービスを設計、開発、テストする際に必要となる、機能的および非機能的なセキュリティ対策の定義に焦点を当てた、セキュリティ要件や対策の枠組みを確立するためのドキュメントです。 OWASPの長年にわたる取り組みとASVSを利用する業界からのフィードバックの集大
# GoでWebアプリケーションを作る # 0. この講義について ( 5 min ) # 0.1. 目的 あなたがプログラミングを行う際の選択肢として、Goを挙げられる為の第一歩となること より、知らない人に知ってもらうことを重要視しています # 0.2. 対象者 想定レベルは以下の通りです。 ls, cd 程度のLinuxファイル操作が行える curl の操作が行える 実行形式ファイル(.exeなど)という存在を知っている if, for, switch case などの、割と多くの言語で近い表現のある構文を知っている 関数、引数、戻り値 というキーワードを知っている 出来ると理解が捗るスキルは以下の通りです。 クラス、メソッド というキーワードを知っている どんな言語(COBOL, Javascript, bash, python, ...) でも良いので、簡単なコーディングを行った
安全なGraphQL API開発が出来るって本当? FastAPI+GraphQL+テストで安全なAPI開発PythonテストGraphQL型定義FastAPI はじめに この記事はZOZOテクノロジーズ アドベントカレンダー#2 16日目の記事です! TL;DR REST上でGraphQLを使用するメリットを説明 ORMを使用してPostgresを操作 GraphQLで用いられるスキーマ、ミューテーション、クエリについて説明 Grapheneを使用してGraphQLをFastAPI上で使えるようにする Grapheneとpytestを使用してGraphQL APIをテストする なぜREST上でGraphQLを使用するか RESTは、WebAPIを構築するためのデファクトスタンダードです。CRUD操作ごとに複数のエンドポイント(GET、POST、PUT、DELETE)を設計します。これらの
みなさん、こんにちは。イノベーションLABのハヤシです。 今回は、以下の構成の Web アプリをさくっと作る手順をご紹介します。 バックエンド:Node.js の REST API(Amazon API Gateway / AWS Lambda) フロントエンド:TypeScript の React 今回は全 3 回のうちの 1 回です。 必要な部分だけでも、ぜひ参考にしてみてください。 環境構築手順はこちらで紹介しています blog.css-net.co.jp 1. 前提条件 1-1. 想定読者 1-2. 作成するもの 1-3. 前提条件 2. 事前準備 2-1. 作業ディレクトリ作成 2-2. リポジトリ作成 2-3. ターミナルで git 設定 3. バックエンド API 3-1. API 作成 3-2. API デプロイ 3-3. API 動作確認 3-4. リポジトリに登録 3-
はじめに Ruby on Rails(以下Rails)の最新バージョンである7.0(以下Rails 7)が2021年12月15日にリリースされました。 Rails 7では、JavaScriptフロントエンドの大幅な刷新、CSS BundlingによるTailwind CSSやPostCSSのサポートを含めた、メジャーバージョンアップグレードにふさわしい機能強化が行われています。 本記事では、Railsの公式ブログやRailsガイド、GitHubのRailsプロジェクトのIssuesやPull Requestsの内容をもとに、Rails 7の主要な新機能・機能追加・変更点の紹介を行います。 ※ 以前のバージョンのRailsの主要な新機能・機能追加・変更点については以下を参照してください。 Ruby on Rails 6の主要な新機能・機能追加・変更点 Ruby on Rails 6.1の主要
はじめに 最近、deno が面白くなり始めています。deno はコマンドラインバイナリを1つインストールすれば、import によりパッケージの読み込みはインターネットからダウンロードしてキャッシュされ、開発者が package.json を書く事もなく、とてもお手軽に TypeScript を書くことができます。 もし、機械学習をやりたいとして、事前準備(npm でインストールしたり、conda/pip 等で依存物をインストールしたり)が大幅に削減できるなら、とても便利だと思いませんか? deno で機械学習 deno で機械学習と聞くと tensorflow.js を使いたくなりますが、残念ながら現在はまだ deno で tensorflow.js を扱える様にはなっていません。しかし deno 1.8 では GPU を扱う為の機能が追加されており、ジワジワではありますが目標に向かって
Punditについて、なるべくやさしく解説します。 ドキュメントを翻訳したものに近い内容となっております。 ドキュメントを読めるほど実力に自身がない人 ライブラリを調べる際にいろんな記事を見て時間を消耗する人 上記の方々の助けとなれば幸いです。 ※Railsで利用することを前提に話します。 Punditとは Rubyのgem(ライブラリ) 認可の仕組みを提供してくれる 「認可(Authorization)」と「認証(Authentication)」は意味が異なります。 詳しくは「よくわかる認証と認可」をご参照ください。 簡単に言うと「ユーザーによってページ表示の許可・拒否をしたり、表示情報の範囲を変えたりすることができるgem」です。 似たようなgemとしてcancancanがよく比較されますが、その違いはこちらの記事から引用させていただきます。 cancancanはユーザに対して、どんな
Serverless Haskell - GHCのWASMバックエンドで Haskell を Cloudflare Workers に載せる TL;DR GHC 9.10 から WASM バックエンド(クロスコンパイラ)が JavaScript FFI に対応したので、Haskell コードを Cloudflare Workers 上で動かしてみたよ。快適に開発するための環境構築・ハック方法と、GHCの出力をCloudflare Workers 向けに修正する方法を紹介するよ。 はじめに──Asterius から GHC WASM バックエンドへ GHC は 9.6 から WASM バックエンド(クロスコンパイラ)を搭載していますが、GHC 9.10 から WASM バックエンドが遂に JavaScript FFI に対応しました。 従来から C FFI には対応しており、これを使って F
便利なテレビ・Web会議ツールをお探しの方におすすめしたいのが「Zoom(ズーム)」です。 Zoomはテレビ会議と同様に映像(ビデオ)と音声を使って、社外にいる相手とのコミュニケーションを可能にし、ビジネスシーンでの機能が特に洗練されたツールです。こちらでは、Zoomの概要や主な機能、使い方についてご紹介します。 テレビ・Web会議ツール「Zoom」とは? Zoomとは、いつでも、どこでも、どんな端末からでも Web会議を実現するクラウドサービスで、簡単に言えば、複数人での同時参加が可能な「ビデオ・Web会議アプリケーション」です。 通常はひとつの場所に集まって実施する必要があるミーティングがオンライン上で可能になることから、ビジネスシーンで多く活用されています。 PC、スマートフォン、タブレットなど、現在一般的なデバイスであればZoomをインストールできます。マイクやカメラが搭載されてい
横浜市は3日、新型コロナウイルスのワクチンの集団接種について予約の受け付けを始めましたが、想定以上のアクセスが集中したため、いったん中断しています。これについて市は、受け付けを5日から再開すると発表しました。 横浜市は、高齢者を対象にしたワクチンの集団接種について3日午前9時から予約の受け付けを始めましたが、専用サイトとコールセンターにアクセスや電話が集中し、開始からわずか45分で受け付けを中断しました。 横浜市で接種の対象となる高齢者は全国の市区町村で最も多いおよそ97万人で、3日は80歳以上のおよそ34万人を対象に受け付けを始めましたが、市によりますと、想定のおよそ2倍にあたる1分間に200万回のアクセスがあり、処理しきれなかったということです。 これを受けて横浜市は、対応策として新たに別のサーバーを設置した結果、3日最も集中した時間帯のおよそ3倍のアクセスまで処理できるようになったと
はじめに Vercel AI SDK (React 等から LLM の API をいい感じに stream で呼び出せるようにするやつ) から Ollama (OSS の LLM をローカルで動かすやつ) を呼び出す方法を調べました。 参考 課題 Vercel AI SDK の サンプルコードを、OpenAI から Ollama の langchain のモデルを使って、置き換えて動かそうとしたけど、なぜかうまくいかなかった。 解決方法 ここのディスカッションにいろんな解決方法が記載されている。その中からいくつか試した。 解決方法 1 OpenAI Compatibility API を使う OpenAI API と同じ API で呼び出す方法。呼び出せるモデルに制約がある。マルチモーダルの llava は呼び出せない。 URL 変えるくらい。シンプル。すんなり動いた。 解決方法 2 la
この記事は、求ム!Cloud Nativeアプリケーション開発のTips!【PR】日本マイクロソフト Advent Calendar 2020 の 22 日目です(後から追っかけで書いています)。 本記事では一見していると似ている Web App for Containers と Azure Container Instances を比較したいと思います。 What is Web App for Containers Web App for Containers は Azure Web Apps の実行イメージとして Docker イメージを使うというサービスです。Web Apps のインスタンスとなるので、Web Apps の URL や https など各種機能が使えます。 App Service の料金と機能からもわかる通り、Basic 以上のサービスプランが Web App for
会員登録を行うと、便利でお得なサービスをご利用いただけます(登録無料)。 会員特典情報のお届け マイページ (見積の保存、納期確認、領収書発行サービスなど)
こんにちは。だだっこぱんだです。 今まではフロントエンドな人間のつもりでしたがいつの間にか Most used languages の1位がPythonで50%になっていてあれーってなっています。 今回はpythonで面白いライブラリを見つけたので紹介していきます。 Pythonとフロントエンド 「pythonでフロントエンドする必要ある?」って思う方がいるかもしれません。 割と需要あります。 今ある中ではGradio, Streamlit が有名ですね。 これらは stable-diffusion-webui で使われたり、AI関係の技術のデモでは毎度お馴染みレベルで使われます。 Gradioのデメリット 拡張性が低い バグが多い システムがわかりづらい(フロントエンドをやっている人間からすると) Gradioはクラス名を変えられなかったり、reactiveじゃなかったりして若干使いづら
DifyはDBにpostgres、キャッシュにRedisを使っている。 また、ベクトルDBは複数選択可能ではあるが、Postgresのvectorを使うことも可能なので、postgresで統一させちゃう。 これらをRDSとかで立てようとするとイニシャルで料金がかかってしまうので避けたい。 supabaseはPostgresを安価に、upstashはRedisを安価に使えるので、これらを使う。 まず、supabaseとupstashでアカウントを作成し、DBを作成する。 作成するうえで特に困ることはないので、そのままコンソールをポチポチするだけでOK supabase: https://supabase.com/ upstash: https://upstash.com/ 作成するとHOSTやpasswordなど必要な情報がコンソールに表示されるので、それをdifyのdocker-compo
scaffold で User Model と Controller を作ります。 lock_version というカラムを追加すると Rails で楽観ロックを実装してくれます。便利ですね。 $ cd yourappname $ rails g scaffold User name:string \ email:string \ role:integer \ password_digest:string \ register_user:integer \ update_user:integer \ lock_version:integer \ activated_at:datetime \ deleted_at:datetime User.create!([ { name: 'admin', email: 'admin@example.com', role: 'admin', passw
初めに この記事は StackBlitz の紹介になります。 初めに言っときます。 StackBlitz は滅茶苦茶凄いです。 現状 JavaScript 系のフレームワーク・ライブラリは勿論。(Next.js / Nuxt.js / jQuery等) Node.js自体も動かせます。 WASM を利用して Python や WordPress も動きます。 (2023/10/24 現在) ブラウザのみで開発が完結します。 疑問 でも貴方は今こう思ったかもしれません。 Q. でもお高いんでしょ? A. 基本的には無料です。 Q. 基本的? 使えるプロジェクトの数とか制限されてるんでしょ? A. されてません。 無料アカウントで 無制限です そして今こう思ったのではないでしょうか。 [*] でもなんか裏が有るんでしょ? 無料はおかしい。 確かにおかしいです。 サーバーを動かすのにも電力やクラ
この記事は「つながる勉強会 Advent Calendar 2022」の19日目の記事です。 18日目の記事は@daishimanさんの以下の記事でした! (勉強になりました…!) 今回は、既存のWebアプリをSSL化する機会があったので、その時の手順をまとめました。 Let’s Encryptを使用し、SSL証明書の取得、自動更新処理の実装まで行います。 目次 ・前提 ・Let’s Encryptとは ・手順 1. SSL証明書を取得 1-1. SSL証明書取得の準備(docker-compose.ymlを編集) 1-2. SSL証明書を取得 1-3. SSL証明書を確認 2. httpsで接続 2-1. nginxの設定ファイルにhttpsの設定を追加 2-2. httpsで接続できるか確認 3. 自動更新処理を実装 3-1. 更新コマンドの動作確認 3-2. cronを設定 ・参考
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く