対象 一般的なWebアプリケーション 特に、学生などはクレジットカードが使えずそもそも支払いができないという状況もあるので無料のものをまとめてみました。 結論として Supabase Next.js Drizzle Cloudflare Pages Cloudflare D1 / KV どんな要素が必要か Webアプリの開発に必要なのはフロントエンドと、バックエンドです。 バックエンドといっても、その中身は実際の処理に加え、DB、またログイン認証機構が必要になります。 フロントエンド フロントエンドとしては、Next.js一強です。 すでにコミュニティも成熟しているので使いやすく、いろんなところに統合できます。 バックエンド処理 バックエンド処理は、Next.jsの"use server";を使えば簡単に行えるので、別にAPIを作ったりする必要はなさそうです。 フロント・バックエンドのデプ
「はやい」という言葉は「速い」「早い」と意味に応じて漢字の書き分けができるが、「おそい」はslowとlateの違いを漢字で書き分けができないのはなぜか知りたい。 下記の資料を紹介した。 『文字表記と日本語教育』(武部良明著 凡人社 1991) p402-427「3. 漢字制限と書き換え・言い換え」 p414「(前略)このような異字同訓の制限が、後になって、行き過ぎだと考えられるに至った。そこで、当用漢字音訓表の改定に当たっては、「漢字の使い分けのできるもの」や「漢字で書く習慣の強いもの」が、積極的に取り上げられた。(中略)ただし、その場合も、「抱・いだく」「遅・おそい」が採用されながら、「懐・いだく」「晩・おそい」は採用されなかった。それは、「懐く→抱く」「晩い→遅い」でよい、と考えられたからである。」とあり。 『言葉に関する問答集 8』(文化庁 1982) p55-87「第二部 適切な表
はじめに 「DNSって何ですか?」 エンジニア・プログラマの皆さんは会社の同僚や後輩などにこの質問をされたらどこまで回答できますか? 大体の人は、「Domain Name System(ドメイン・ネーム・システム)の略称で、IPアドレスとドメインの紐付けをおこn.....」 みたいな回答になってしまうと思います。 特に自分のような、フロントエンド周りが主領域のエンジニアにとってはDNSの理解はかなり後回しになってしまうかなと思います。 今回は、そんなあまり業務でDNSに携わらない方々に向けて、DNSの最低限知っておきたい基礎知識をやさしくお届けできたらなと思います。 ※タイトルではめちゃくちゃ煽りましたが、本記事は割と基礎的な内容になっています。ご安心を。 DNSとは まずは、DNSとはなんぞやというところから入っていきたいと思います。 DNSとは、冒頭にも登場しましたが、Domain N
これはなに ども、レバテック開発部のもりたです。最近めっちゃ元気!! 今回は『データベースについて勉強したいあなたに送る技術書17冊(+11冊1講義7link)』として、もりたがここ半年くらいでわーっと集めたデータベース周りの書籍(とか)を紹介していきます。アプリケーションって結局はデータベースみたいなところがあると思うんですが、おれは長いことデータベースをどう学んだら良いのか分かりませんでした。同じような気持ちを抱えているITエンジニアの人もいると思うので、学習ロードマップと合わせて紹介していきます。 なお具体的な対象読者は業務でなんとなくSQL書いてるけど、ウィンドウ関数とか言われると分からんな……くらいの人です。 扱う領域と扱わない領域 扱う領域としてはだいたい以下 再入門本 SQL 内部構造 論理設計 周辺知識 データベース理論 その他高度なもの モデリング、NoSQL、分散データ
このサイトでは、SQL を高速化するためのちょっとしたパフォーマンス・チューニングの技術を紹介します。と言っても、『プログラマのためのSQL 第2版』の受け売りがほとんどなので、この本を読んでいただければ、本稿を読む必要はありません。 最初に、パフォーマンス・チューニングに関する全体の方針を述べておくと、それはボトルネック(一番遅いところ)を改善することです。当たり前ですが、既に十分速い処理をもっと速くしたところで、システム全体のパフォーマンスには影響しません。従って「処理が遅い」と感じたら、最初にすることは、SQL やアプリの改修ではなく、「どこが遅いのか」を調査することです。いきなりあてずっぽうで改善をはじめても効果は出ません。医者が患者を診るとき最初にすることが検査であるのと同じです。病因が何であるかを突き止めてからでないと、正しい処方はできないのです。 その基本を承知していただいた
はじめまして。Kyashでデータエンジニアリングを担当しているKyashデータマンです。この記事では、Kyash社内のデータ分析の基礎に関するドキュメントを紹介します。 Kyashでは、データエンジニアリング・ガバナンス・セキュリティなど様々な角度から、公正なデータの取扱いと活用を推進しています。従来は、一部の訓練された技術者がデータ分析を一手に担っていましたが、社内でもデータ活用のニーズも多く、その担当者に分析や集計の業務が集中するという課題がありました。 この課題に対して、データへの適切なアクセス管理を行い、そして適切なBIツールを導入することで、データを取り扱う人が自分でデータ分析・そして活用できるようになることを目指しています。アクセス管理には、個人情報やそれに準ずる機密データに対して、ポリシータグによるアクセス権のコントロール、そしてアクセス権のリネージなどのソリューションの導入
2023年1月5日以降、2億件を超えるTwitterアカウントのデータを公開したと主張する投稿がハッカーフォーラムで行われていたことを複数の報道機関が報じました。*1ここでは関連する情報をまとめます。 自分が影響を受けたのかを確認するには 約2億件のデータに自分のメールアドレスが含まれているか(影響対象か)はHave I been pwnedを使って確認することが可能。 メールアドレス入力後に「pwned?」をクリックし、「Twitter (200M)」と表示された場合は、今回のデータに含まれている。(それ以外のリークに含まれていた場合は別のリーク情報も表示される。) メールアドレスがリークデータに含まれていた場合にTwitter (200M)が表示。 Twitter APIの脆弱性より流出したデータと主張 Twitter APIに第三者が他人のアカウント情報を取得できる脆弱性が2021年
オラクルは、同社が提供している企業向けのJavaディストリビューションであるOracle JDKのライセンスを変更し、無料で本番環境などでの利用を可能にしました。 同社が9月14日付で公開したブログ「Introducing the Free Java License 」で、次のように説明しています(関連するプレスリリース「Oracle Releases Java 17」)。 Oracle JDKを無料で提供し、四半期ごとのセキュリティアップデートも提供する。 新ライセンス「Oracle No-Fee Terms and Conditions (NFTC)」は、商用利用や本番環境での利用を含むすべてのユーザーに対して無料での利用を許可する。 Oracle JDK 17から、この無料のリリースとアップデートの提供を開始する。これは次の長期サポート(LTS:Long Term Support)が
2024年11月現在の最新の構成に関する記事をこちらに書きました。 よろしければそちらもご参照下さい。 (Qiita の本記事は、2022年4月時点の構成に関しての記事で、多少古い内容が含まれています。) 個人開発で 賃貸物件の検索サービス Comfy を作りました1。グラフや地図でサクサク絞り込める UI が特徴のサービスです。とにかく気持ち良い使い勝手を実現するために色々工夫しています。 既にリリースからは 4 ヶ月以上経っているのですが、改めてサービスの概要や、システム構成及び使用した技術・サービスをご紹介しようと思います。2。 サービスの概要 Comfy は日本全国の賃貸物件を検索できる Web サービス です。画面 UI は上の GIF 画像のような感じです。 こだわったポイントを色々書くよりも実際にさわって頂いた方が新感覚の UI や気持ちよさを体感頂けるかと思いますので、 実
スライド概要 SPA(Single Page Application)の普及が一層進んでおり、従来型のMPAを知らないウェブ開発者も生まれつつあるようです。SPA対応のフレームワークでは基本的な脆弱性については対策機能が用意されていますが、それにも関わらず、脆弱性診断等で基本的な脆弱性が指摘されるケースはむしろ増えつつあります。 本セッションでは、LaravelとReactで開発したアプリケーションをモデルとして、SQLインジェクション、クロスサイトスクリプティング、認可制御不備等の脆弱性の実例を紹介しながら、現実的な対策について紹介します。LaravelやReact以外のフレームワーク利用者にも役立つ説明を心がけます。 PHPカンファレンス2022での講演資料です。 PHPカンファレンスでの動画URL https://www.youtube.com/watch?v=jZ6sWyGxcCs
株式会社SODAの社内勉強会で使用した資料です こちらは株式会社SODAのエンジニア社内勉強会にて @decoch が発表したときの資料です。 株式会社SODAについては以下リンクなどをご覧ください。 これはなに? いま流行りの Notion を使っている方は多いと思うのですが、いまいち使いこなせていない、メモ帳としては使っているけどデータベースってなに? というエンジニアの方向けに Notion の使い方を書いた入門記事です。 Notion とは notion.so からお借りしました ドキュメントやテーブルだけでなく望み通りに機能するようにカスタマイズできるワークスペースです。 基本的な使い方 新しくページを作りメモをとったりチェックボックスでタスクを管理したり、Markdown のように使うことができます。 / と打つことでサジェストされ /page と入力し決定をすると新しいページ
混同しやすいが、「おざなり」と「なおざり」は意味を異にする。 「おざなり」は、意識的にいい加減な発言・行動で、その場を取り繕うとすること。 いい加減な取り組みであれ、行為が伴う。 「なおざり」は、注意力が欠落しており、意識せずおろそかな結果になってしまうこと。 行為そのものがなされていない。 国語辞典や語源辞典のある棚をブラウジングした結果、次の資料が見つかった。 『新明解語源辞典』 小松寿雄/編 三省堂 2011 (自館請求記号:R812) p165に「おざなり」の項目があり、記述には、「誠意がなくいい加減なこと。(中略)その雰囲気の流れのままというのが「お座なり」のもとの意味だろう。そのままで努力しないというところから、現在の意味になったものと考えられる。」とある。 p682に「なおざり[等閑]」の項目があり、記述には「いい加減。(中略)「なお」が「なほ(直)」であることについては諸説
「CEOに身代金を要求したい」 こんにちは、PSIRTマネージャのただただし(tdtds)です。この記事はfreee Developers Advent Calendar 2021 18日目です。 freeeにjoinしてから早くも14ヶ月がすぎました。freeeでは毎年10月に全社障害訓練をしていて、昨年は入社したてで右も左もわからないままAWS上の本番環境(のレプリカ)に侵入してDBをぶっ壊す役目をさせられたのも良い思い出です*1。 で、上の「CEOに身代金を要求したい」という物騒な相談は、今年の訓練計画の話です。話を持ち掛けてきたのはCIOの土佐。昨年は主要サービスが落ちて、開発チームが対応にあたる中、ビジネスサイドも顧客対応などで訓練参加しましたが、今年はさらに、経営サイドまで巻き込もうというゴール設定がされたわけですね。腕が鳴ります。 ゴールは「CEOに4BTCを要求する」 ゴー
Fumihiko Shiroyama @fushiroyama 父、博士課程 Software Development Engineer @Adobe / ex-@Microsoft, ex-@amazon All opinions are my own. amazonアソシエイト参加中 note.com/fushiroyama/ Fumihiko Shiroyama @fushiroyama Twitterみたいな緩いつながり、TLひとつ実装するだけでも普通のウェブシステムみたいなクエリでは取れなくてちょっと考えれば非常に複雑なシステムであることは明白だし、システムアーキテクチャの試験の定番トピックだったりするので「誰でも作れる」とか「簡単」みたいなのはご指摘申し上げたくなる 2022-11-22 02:16:50 Fumihiko Shiroyama @fushiroyama 昔つぶや
といった感じです。(この例、下で問題例として取り上げるため、実はおかしなチェック内容にしています。) "No.~基準"までがシートに記載されていてます。回答する発注先企業は"Yes,No,N/A"を3択で✅をつけ、備考欄にNoやN/Aの理由のほか、注記を記載できます。こういう項目が20~500項目あるExcelのシートに、発注先企業の回答担当は自社の状況、対応を確認しながら、ひたすら記載してゆくわけです。 知ってる人は知っているが、知らない人はぜんぜん知らない 最近参加したエンジニアがぞろぞろいらしたカンファレンスで、私が 「……あの セキュリティーチェックシート ってあるじゃないですが、あの 面倒なアレ です。アレにこの規格を採用するよう書いてあったら、各企業に規格の採用が広がるかもですね。あはは。」 と話したことがありました。その瞬間、 嫌なことを思い出したのか顔を曇らせたり苦笑いをす
個人用メモです。 機械学習は素材集めがとても大変です。 でもこの素材集め、実は無理してやらなくても、元から良質な無料データベースがあったようなのです。 URLはこちら YouTube8-M https://research.google.com/youtube8m/explore.html 提供されているサービスは以下の通り 800万個の動画 19億個のフレーム 4800個の分類 使い方はExploreから画像セットを探し、ダウンロードするだけ。 他の方法も見つけた open images dataset 「すごい神だな」と思ったのは これもう完成されてますよね もちろんこの認識前の画像もセットでダウンロードできます。 Youtube-8Mとは、画像数を取るか、精度で取るか、という違いでしょうか。 他にも良い素材集を教えていただきました (はてなブックマーク情報 @sek_165 さん )
::: message info これは[フィヨルドブートキャンプ Advent Calendar 2022 Part.1](https://adventar.org/calendars/7760)の25日目の記事です。 昨日の記事は:@shujiwatanabe:shujiwatanabeさんの[質問しながら出来るようにしていく](https://shu91327.hatenablog.com/entry/2022/12/24/091025)と:@saeyama:saeyamaさんの[Rails/Vue 編集時に画像をD&Dで入れ替えした時のActive Storageの保存方法](https://saeyama.hatenablog.com/entry/2022/12/24/000123)でした。 ::: ↓こういうのを職人が丹精込めて一つ一つ手作りする時代は終わりました。 ```sh
本日8月1日、音声合成技術の世界に、また画期的な動きがありました。「Seiren Voice」や「Yukarinライブラリ」の開発者としても知られるヒロシバ(@hiho_karuta)さんが、ITAコーパスを利用した商用利用も可能なAI音声合成システム、VOICEVOXなるソフトウェアをオープンソースのとして無料でリリースしたのです。具体的には現時点Windowsで動くシステムで、「ずんだもん」および「四国めたん」の声でテキストを読み上げるシステムとなっています。 これがオープンソースとなったことで、一般ユーザーが自由に利用できるというだけでなく、さまざまなシステムに組み込んで喋らせることが可能になったのが画期的なところ。たとえばロボットなどに組み込んで対話型のシステムを作ることや、観光案内システムに導入して喋らせる……といったこともできるほか、クラウド型のシステムを構築し、ブラウザを経由
はじめに あなたはブラウザからデータベース(DB)に情報が行き着くまでにどんな技術が使われているか説明できますでしょうか? どのようなプロトコルが用いられ、どの技術を駆使してサーバと通信しているのか、Webサーバでは何が行われ、どのようにして負荷が分散されているのか、トランザクションはどのように管理されているのか、そしてデータベースではシャーディングや負荷対策のためにどのような対策が取られているのか… なんとなくは理解しているものの、私は自信を持って「こうなっている!!」とは説明ができません。 そこで今回は「大規模サービス」を題材としてブラウザからデータベースに至るまでの、情報の流れとその背後にある技術について、明確かつ分かりやすく解説していきたいと思います。 対象としてはこれからエンジニアとして働き出す、WEB、バックエンド、サーバーサイド、インフラ、SREを対象としております。 1.
この記事は、慶應理工アドベントカレンダー2021の20日目の記事です。 カレンダー全日埋まってすごい 🎉🎉 adventar.org 「Database Design and Implementation」という簡素なDBをスクラッチで作っていく本に取り組んだので、その読了エントリです。 Database Design and Implementation: Second Edition (Data-Centric Systems and Applications) (English Edition) 作者:Sciore, EdwardSpringerAmazon こんな人におすすめ MySQLやPostgreSQLを使った経験はあるが、DBの理論やその実装はあまり詳しくない人に特におすすめです。特に自作〇〇*1に興味がある人は間違いなく楽しめると思います。単純に本に紹介されている理論
下で最新版に記事を編集しましたブログを作ったよ ツイッターアカウントフォローお願いします https://twitter.com/usagipycom こんな記事も書いてます 友達がpythonでPCゲームのレベル上げツールを作っていた それを聞いて、pythonって便利なのね。と思いその後色々あってプログラミングを勉強することにした プログラマー35歳までみたいな世の中で40代おそすぎ!ってあるかもしれない PCがあって、無料の教材はネットに転がってるし、本もたくさんあるし、挑戦するのは無料だし2022年の1月ぐらいから勉強を始めた 入門書って成果物がないからつまらないなと思ってそれ以外になんかないかなって本屋さんをふらふらしてたら python自動化 みたいな書籍がいっぱいあることに気がついた なるほど、もしかしたら仕事楽になるんじゃないかそんな思いから次の本を買った シゴトがはかどる
近年、ECサイトからの個人情報及びクレジットカード情報の流出事件が多数発生しており、被害の大半を中小企業の自社構築サイトが占めています。中小企業の自社構築サイトにおいては、セキュリティ対策の必要性が十分に理解されていないため、適切なセキュリティ対策が行われず被害を招いている状況です。 ECサイトのセキュリティ対策を強化するため、IPAではECサイト構築・運用時のセキュリティ対策をまとめた「ECサイト構築・運用セキュリティガイドライン」を作成し、本日(2023年3月16日)、公開しました。 ガイドラインの内容 ECサイトでひとたび事故及び被害を発生させてしまうと、ECサイトの長期間の閉鎖に伴う売上高の大幅な減少や、原因調査や被害の補償等の事故対応費用を含む甚大な経済的損失が発生します。 本ガイドラインは、ECサイトを構築、運営されている中小企業の皆様に、ECサイトのセキュリティ対策を実施する
先日は住所の件でお楽しみでしたね。 私も楽しくなってしょうもないツイートをしたところ、@masanorkさんから有用な情報をいただいてしまいました。 異体字に加えて外字も根深いですし、日付型に収まらない住基の生年月日とか、屋号を含んだ個人事業主の口座名義とか、外国人氏名における住民登録のアルファベットと口座名義のカタカナとの解離とか、旧姓併記の例外処理とか、文字列型に刻まれたバッドノウハウの塊ですね https://t.co/GOaytijfst — Masanori Kusunoki / 楠 正憲 (@masanork) June 6, 2023 このとき、私はごく簡単な「名寄せの難しさ」の社内研修資料を作っている最中だったのですが、この情報が大変参考になりました。 一方、私だけが得をしているのがなんとなくムズムズしてきたので、ここにアウトプットしてスッキリしようと思います。 なお、住所
こんなWebサービスをリリースしたので、技術的な話をまとめておこうと思います。 元々このサービスは、趣味の延長線のような感じで開発を始めました。競合にあたるnoteやはてなブログなどのサービスが確固たる地位を築いているということもあり、「お金にはならないだろうけど、自分の趣味を詰め込んだものにしよう」というゆるい気持ちで開発を続けています(楽しい)。 選定の方針 趣味と言っても文章投稿サービスなので、ユーザーが少数であったとしても長期間運営しなければなりません。そのため、ユーザー数が少なければランニングコストが数千円/月以下、ユーザー数が増えたときは段階的にコストが上がるように選定を行いました。 アプリケーション フルスタックNext.jsアプリケーションをCloud Runにデプロイしています。各APIエンドポイントはNext.jsのAPI Routesで生やしています。 Next.js
こんにちは、よしこです。 最近、個人的に欲しいツールをVibe Codingで作ることが増えてきたので、私の中で定着してきた進め方をまとめてみようかなと思いました。 ちなみに "Vibe Coding"(雰囲気コーディング)というのは、「人間が音声やテキストで指示を出し、AIが主体となってコードを書くコーディングスタイル」を指すワードです。 私もこのやりかたをするときはほとんどコード書いてません。 要件定義 まずは「何を作るのか」「ターゲットは誰か」「どんな機能が必要か」「画面構成はどうするか」などを決めます。好きなAIとチャットベースで喋りながらまとめていきます。 こっちが全然考えきってなくても、「◯◯なアプリ作りたいんだけど要件定義手伝ってー」から会話を始めれば必要な情報は向こうがヒアリングしてくれます。 ここはChatGPT 4oを使うことが多いです。トーンやノリが個人的な好みと合っ
例えば次のようなテーブルがあったとする。 -- PostgreSQL CREATE TABLE history ( id SERIAL PRIMARY KEY, user_id INTEGER NOT NULL, data TEXT, created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ); -- MySQL CREATE TABLE history ( id INT AUTO_INCREMENT PRIMARY KEY, user_id INT NOT NULL, data TEXT, created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ); INSERT INTO history (user_id, data, created_at) VALUES (1, 'First
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 皆さんごきげんよう。ういこうと申します。 これまで日本マイクロソフト株式会社で Azure のフロントエンド領域を中心としたサービスの Product Marketing Manager をしておりましたが、6/30 日をもって退職することとなりました。 きっと Microsoft 界隈以外では、あなたどなた?という感じだと思いますので、少し自己紹介と、退職エントリ(のようなもの)を書くことにした理由を紹介させてください。ちょっと、いや...かな~り長いので、おやつでも食べながら読むものがないなーというときや、今エンジニアなんだけど、マ
はじめに 「論理削除?deleted_atカラム追加すればいいでしょ」この一言から始まる地獄を、何度見てきただろうか。 最初は簡単に見える。カラムを1つ追加するだけ。しかし、その「簡単さ」こそが罠だ。 論理削除は技術的負債の温床だ。WHERE句への条件追加忘れ、認知コストの増大、テストの複雑化、パフォーマンス劣化。すべては「最初にドメインを考えなかった」ツケである。 しかし現実として、サービスを運用していくと論理削除が必要になる場面は確実に訪れる。 論理削除の本質は、「このレコードは存在するが、存在しないことにしてほしい」という矛盾だ。この矛盾を解消するか、受け入れて安全に管理するか。本記事ではその両方のアプローチを解説する。 なお、私はDBのスペシャリストではないので、ここで紹介する方法が唯一の正解というわけではない。あくまで一つのアプローチとして参考にしてほしい。データベース設計は文脈
こんにちは。MA部の田島です。 弊社では開発ガイドラインというものを用いて、システムの品質を担保しています。今回私がテックリードを務めているということもあり、バッチアプリケーションを開発するためのガイドラインを作成しました。本記事では「開発ガイドライン」と「バッチ開発ガイドライン」を紹介します。 バッチアプリケーション開発に限定したTipsはまとまっているものが多くないため参考にしていただければと思います。 開発ガイドラインについての紹介 冒頭でも紹介した通り弊社では、開発ガイドラインというものを用いてシステムの品質を担保しています。バッチ開発ガイドラインを紹介する前に、まず開発ガイドラインを紹介します。 開発ガイドラインの種類 開発ガイドラインは現在、以下の種類が存在します。 共通 Android iOS Frontend Backend Infra API Batch DB(Datab
サカン竜一郎@世界の打楽器 @wyrm06 世界中の伝統楽器とハンドパンが大好きな楽器マニア。とにかく不思議な音が大好きです!インド・中東辺りの打楽器も大好物。ご依頼はDMで。Rav Vast Drum公式パートナー。 vastdrum.com/discount/SAKAN #ハンドパンで遊ぶ会 主催。 youtube.com/user/wyrm06 サカン竜一郎@世界の打楽器 @wyrm06 ワールドミュージック界隈で話題騒然、世界中の民族音楽が聴ける慶應大Global Jukebox 、マジで直感的に操作できるのがすごく良い…。世界地図からも行けるし、動画後半のように円グラフ状に表示された地域一覧からも調べられます。 theglobaljukebox.org pic.twitter.com/v4qo0AMMAH 2022-11-11 19:21:23
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く