並び順

ブックマーク数

期間指定

  • から
  • まで

41 - 80 件 / 537件

新着順 人気順

Zennの検索結果41 - 80 件 / 537件

  • Cloudflare D1 がヤバい

    まだ検証足りないけど、マジで想像通りのブツなら魂震えるかもしれん…。 Announcing D1: our first SQL database Cloudflare D1 = Edge SQLite Cloudflare D1 は Cloudflare Worker で、つまり CDN Network 上で sqlite が動きます。これだけなら普通の sqlite ホスティングなんですが、もちろん Cloudflare が出すからにはそれだけではなく、CDN Edge 上に Read Replica がバラ撒かれた sqlite になります。ヤバくないですか? 僕はヤバいと思いました。 このヤバさを知るために、Cloudflare が開発した基盤についていくつか抑えておく必要があります。 Durable Objects は CDN 上の Actor モデルを構築できます。この Acto

      Cloudflare D1 がヤバい
    • sudo su とかしてる人はだいたいおっさん

      sudo su と sudo -s はほぼ同じ。実行されるシェルが異なることがある。 sudo su - と sudo -i もほぼ同じ。環境変数のクリア的な意味だと sudo su - の方が強い。 以下は別に読まなくてもいい。 su 別のユーザーでシェルを実行するコマンド。自分は「す」とか「えすゆー」とかと呼んでる。 元は super user とか switch user とか substitute user の略だったらしい。 デフォルトでは root になるが、引数でユーザー名を指定するとそのユーザーになる。 新ユーザーのデフォルトのシェルとして設定されているシェルが実行される。 入力するパスワードは新ユーザーのパスワード。 ~% su Password: (rootのパスワード) root@hostname:/home/tmtms# id uid=0(root) gid=0(r

        sudo su とかしてる人はだいたいおっさん
      • 新入社員「DNSってなんですか?」→ これ、どこまで答えられますか?????????

        はじめに 「DNSって何ですか?」 エンジニア・プログラマの皆さんは会社の同僚や後輩などにこの質問をされたらどこまで回答できますか? 大体の人は、「Domain Name System(ドメイン・ネーム・システム)の略称で、IPアドレスとドメインの紐付けをおこn.....」 みたいな回答になってしまうと思います。 特に自分のような、フロントエンド周りが主領域のエンジニアにとってはDNSの理解はかなり後回しになってしまうかなと思います。 今回は、そんなあまり業務でDNSに携わらない方々に向けて、DNSの最低限知っておきたい基礎知識をやさしくお届けできたらなと思います。 ※タイトルではめちゃくちゃ煽りましたが、本記事は割と基礎的な内容になっています。ご安心を。 DNSとは まずは、DNSとはなんぞやというところから入っていきたいと思います。 DNSとは、冒頭にも登場しましたが、Domain N

          新入社員「DNSってなんですか?」→ これ、どこまで答えられますか?????????
        • ソースコードを公開したソフトウェアで収益を得ている会社

          ソースコードを公開したソフトウェアで収益を得ている会社をまとめる。いわゆる「オープンソースソフトウェア(OSS)」という有名な言葉を使わなかったのは、OSS の定義に当てはまらない、またはその可能性があるものが含まれているため。 この記事では "OSS" の定義に当てはまらないものも含め、主要な事業を構成するソフトウェアを一定のライセンスの下で公開している会社をまとめていく。このようにソースコードを公開して利用者やフィードバックを集めるビジネスモデルは open core とか COSS: Commercial Open Source Software と呼ばれているようだ。 企業が「ソースコードが公開されているソフトウェア」を利用するメリットとしては、主に以下の2つがあると考えられる。 コア機能の開発に集中できる 自社のビジネスの核となるソフトウェアの開発に集中し、それ以外の機能的・非機

            ソースコードを公開したソフトウェアで収益を得ている会社
          • Zenn|エンジニアのための情報共有コミュニティ

            つくりながら学ぶ!AIアプリ開発入門 - LangChain & Streamlit による ChatGPT API 徹底活用

              Zenn|エンジニアのための情報共有コミュニティ
            • Python だけで作る Web アプリケーション(フロントエンド編)

              Python だけで作る Web アプリケーション第一弾です。HTML/CSS/JSを使わずに、PythonだけでUIを含むWebアプリケーションを作ります。

                Python だけで作る Web アプリケーション(フロントエンド編)
              • 個人開発でクローズドなチャットを作るので電気通信事業に届出

                電気通信事業法 第九条の規定に違反して電気通信事業を営んだ者は、三年以下の懲役若しくは二百万円以下の罰金に処し、又はこれを併科する。 実はこの法律のことは知っていたので、特定の人だけが見られるチャットを作るのを今まで避けてきました。届出は面倒そうだと思っていましたが、実行してみると簡単だったので記事にまとめました。 総務省による解説 電気通信事業参入マニュアル[追補版] を基準に解説します。 他人の通信を媒介する 電気通信設備を用いて「他人の通信を媒介する」とは、他人の依頼を受けて、情報をその内容を変更することなく、伝送・交換し、隔地者間の通信を取次、又は仲介してそれを完成させることをいう 『他人の通信を媒介する』場合、クローズド・チャットと見なされ、電気通信事業の届出が必要となることがあります。なお『オープン・チャットは電子掲示板と考えらえるため届出は不要』らしいです。そういうものとして

                  個人開発でクローズドなチャットを作るので電気通信事業に届出
                • 小規模(5〜20人)オフィスのネットワーク構築例

                  背景 株式会社マインディアCTOの@matsubokkuriです。 事業規模の拡大に伴いオフィスの移転がありました。それに伴い社内ネットワークインフラの構築しました。オンサイトで働く人は約10名。エンジニアは私1名なのでインフラ整備を自分でやるか外注するかという選択でしたが、外注するためにはRFP作るのが面倒だし費用がかかるのでDIYしました。 中小企業のネットワーク構築の記事は5年前の@wadapさんの記事が詳しいです。その記事以降、まとまった社内LAN構築の良い感じのノウハウ記事を見つけられませんでした。その5年の差分を埋めるためにも記録を書いておきます。 要求定義 ゲスト用ネットワークの分離(インターネット回線、LAN回線) 将来のシステム監査で指摘されるであろうことなので。 トラフィックのQoS制御のため。 インターネット上のホストにおいてグローバルIPアドレスによるアクセス制限が

                    小規模(5〜20人)オフィスのネットワーク構築例
                  • 正規表現の"正規"とは何か気になったら正規表現の歴史を紐解くことになってしまった話

                    正規表現の"正規"って何 ある時ふと思いました。 「正規表現の"正規"って何だろう?」 「何を根拠に"正規"を名乗っているのか?」 と。 「誰かが『これが正規の表現だ』と言ったはず」で、 「それは周りにどうやって"正規"だと認められたのだろう」 ということが気になったので調べてみました。 "正規表現"という名前でなくて、"ジャックさんの表現"とか"記号ごちゃごちゃ表現"だったらこんな疑問も持たなかったのですけど。 数学における"正規"とは 一般に"正規"というと、"正規品"や"正規の手順"といったように"本物の(genuine)"や"公式な(official)"といった意味がありますが、数学の"正規"はちょっと違います。 数学で"正規"(および"正則"、英語では"regular"または"non-singular")は、ある概念に強い制限をかけたもの、という意味です。強い制限をかけたものは取

                      正規表現の"正規"とは何か気になったら正規表現の歴史を紐解くことになってしまった話
                    • Kubernetesをだいたい理解するまで

                      インフラ初心者がいきなり実務でKubernetesを使うことになったので、その学習記録✎ 流れとしては、 概念的なところを抑える 実際に手元で動かしてみる です! また、すでにKubernetesについて書かれたわかりやすい記事がたくさんあるので、本記事はそれらをもとに自分の理解をまとめたものになります。 概念的なこと まずはこれで概要把握 まずは👇を読もう。(ありがたやありがたや...) 僕らは何故Kubernetesを使うのか Kubernetesというものが出てきた背景を、オンプレの時代からどういうふうに変わっていったかわかる KUbernetesの概要がわかる メリデメがわかる Argo CDの例などを用いてどういうふうに使われているのかイメージが付く Kubernetesとは ざっくりいうと、 サービスをコンテナ上で動かすようになったことで起こった、 複数のサーバ上で複数のコン

                        Kubernetesをだいたい理解するまで
                      • あと2時間でElastiCacheのメモリが枯渇!そのときあなたは何をしますか?

                        突然ですが... あなたは、あるゲームプロジェクトの本番リリース2日前にサーバエンジニアとしてJOINしました。いざリリースを迎えたとき、ElastiCacheのメモリが突然危険域を超え、さらにあと2時間で枯渇しそうな状況になりました。 さて、この状況におかれたあなたは何をしますか? はじめに モバイルゲームのシステムは新しいイベントをopenするとトラフィックが2倍、3倍、時には普段の10倍以上来ることがあり、トラフィックの変動が非常に大きい特性があります。 新しいゲームのリリース時はより顕著で、想定以上のトラフィックが来ることもしばしばあります。 この記事は、あるゲームプロジェクトの本番リリース時に大規模トラフィックが来た際のサーバトラブルを題材に、 どのような観点で問題を切り分けていったのか、トラブルシュートのプロセス どのような準備(負荷テスト)をしていれば防げるのか という話をし

                          あと2時間でElastiCacheのメモリが枯渇!そのときあなたは何をしますか?
                        • ChatGPTは馬鹿じゃない! 真の実力を解放するプロンプトエンジニアリングの最前線

                          はじめに ChatGPTをはじめとしたLLMを使いこなすための必須スキル、プロンプトエンジニアリング について解説します。 最近は動きが早すぎてキャッチアップが難しくなっていますが、特に以下のような手法が注目されているようです。 In-context Learning (ICL) Chain-of Thought (CoT) Zero-shot CoT ReAct Self-Consistency Program-aided Language Model (PAL) 今回は、6つのテクニックの中からPart1として、ICL、CoT、そしてZero-shot CoTの3つを紹介します。 これらのテクニックは、ChatGPTをはじめとするLLMのポテンシャルを最大限に引き出すために必要不可欠です。 さらに、各テクニックを詳しく解説した論文も紹介していますので、是非ご一読ください。 In-con

                            ChatGPTは馬鹿じゃない! 真の実力を解放するプロンプトエンジニアリングの最前線
                          • なぜ脱OSSが増えているのか?

                            はじめに TerraformやVaultを開発するHashiCorpは自社製品をOSSのMPL(Mozilla Public License v2.0) から、ソースコードは公開するも一部の利用に制限があるBSL(Business Source License) への変更をアナウンスしました。 これは2018年のRedisを皮切りにMongoDBやCockroachDB、ElasticSearchなど多くのプロダクトで進められている脱OSSの流れです。商用のオープンソース[1]と言われてしまうこともある最近のこの動きの理由は何故なのか? という点を以下の動画で解説しました。 動画中では尺の都合で端折った個所も多いので、こちらの記事の方にもまとめておきたいと思います。 OSSとは? OSSの定義 まず、OSS(オープンソース)とはなんでしょうか? これはRMSのフリーソフトウェアを源流とする

                              なぜ脱OSSが増えているのか?
                            • もう初回コードレビューはAIに任せる時代になった - CodeRabbit -

                              どんな人向けの記事? レビューによって心理的なダメージを受けやすい方 非エンジニアだが、エンジニアチームがどんな機能を作っているか知りたい方 業務が溜まっていて、レビューに割く時間を捻出するのに苦労している方 コピペできるコードも公開します 初回レビューをAIに任せると、いろんなロールの人の役に立つ レビューは得意ですか? 優秀なエンジニアしかいないチームであれば、PRは1トピックに絞って小さく明確なコミットによって作成され、適切な要約とともに提供されることでしょう。 しかし、実際にはいろいろな制約から、PRが想定よりずっと大きくなってしまったり、関連トピックと異なるコードが混じってしまうこともあります。 実際のところ、大きなPRを適切にレビューするのは難しいことです。また、自分が詳しくない領域のレビューを行わなければいけない機会もあります。 今回の記事は、レビューを作成してくれるAI C

                                もう初回コードレビューはAIに任せる時代になった - CodeRabbit -
                              • ソフトウェア設計についての原則や法則についてまとめてみた

                                ソフトウェア設計について、YAGNIやSOLIDなど多くの原則・法則があることが知られていますが、その解釈にはぶれが存在することが多いです。そこで、特に有名なものあるいは有用と感じることが多いものをいくつかピックアップして、その解釈やトレードオフについてまとめてみました。 注意としては、SOLIDが入ってることからわかる通り、主にOOPに関する文脈になります。また、各原則の定義については概ね知っている前提で書いているのであまり初学者向けの記事ではないかもしれませんのでご承知おきください。 YAGNI(You ain't gonna need it.) YAGNIは、予測による実装が実際に役立つことは少ないという経験則から生まれた原則です。 一般にオーバーエンジニアリングが利益をもたらすケースは限定的で、どちらかというとプロジェクトに害を与えることが多いとされています。YAGNIは日々状況の

                                  ソフトウェア設計についての原則や法則についてまとめてみた
                                • マルチスレッド・プログラミングの道具箱

                                  まえがき クラウド上の仮想サーバから手元のスマートフォンまで、いまや複数のCPUコアを搭載するマルチコアはどこにでもある環境になりました。ハードウェア側が並列(Parallel)・並行(Concurrent)処理に向けて急速に進化する一方で、ソフトウェア側つまりプログラミング言語の進化はさほど追い付いていません。並行処理記述の手軽さを求めた Go言語 や、マルチスレッド処理の安全性を重視する Rust言語 などが登場してはいるものの、「普通にプログラムを記述するだけで複数CPUコア環境で高速に走るプログラミング言語」は遠い夢物語のままです。 モダンなプログラミング言語や並列・並行処理ライブラリは、複雑で難解なマルチスレッド処理を直接記述しなくてすむよう、安全性・利便性の高い抽象化レイヤを提供します(例:Go言語のgoroutineとchannel、Rust言語の Rayonライブラリ)。し

                                    マルチスレッド・プログラミングの道具箱
                                  • スイカゲームの作り方

                                    はじめに Go言語用のEbitengineというゲームエンジンに興味があったので、試しにスイカゲームもどきを作りってみました。Ebitengineを使うと意外と簡単にスイカゲームもどきを作る事ができたので、なるべく分かりやすく作り方を紹介してみようと思います。 まずは先に完成品をお見せします。ちなみにフルーツの回転は面倒くさいので実装しないことにしました。 ちなみにEbitengineはwasmでも普通に動きます。ビルドしたものをこちらに置いたのでブラウザから実際に動かす事ができます。 それではスイカゲームもどきを作って行きましょう。 描画する まず一番初めにフルーツの画像を作るところから始めます。これはリンゴ、オレンジ、ブドウ、パイナップル、メロン、スイカのつもりです。 続いてフルーツを定義します

                                      スイカゲームの作り方
                                    • Ajaxから始まった一つの時代の終わり

                                      最近の流れを見ていての感想文なので、ideaとして投稿します。筆者のバックグラウンドとしては、Remixの商業記事を書いたり、App Routerの商業記事を書いたりしている人です。 さて、筆者は2022年の秋から、社内システムではありますがRemixをプロダクション運用しています。また、Next.jsのApp Routerについても、パラダイムとしてはRemixにインスパイアされた部分が多い[1]おかげで、順調にキャッチアップできています。 RemixとApp Routerは、ルーティングとデータフェッチを高度に統合しており、Progressively Enhanced SPA(PESPA)と呼ばれることもあるそうです。PESPAについては、次の記事が話題になりましたね。 このPESPAであるRemixを実運用する中で、フレームワークの手触りが近年触ってきたものと大きく違っている点があっ

                                        Ajaxから始まった一つの時代の終わり
                                      • ChatGPTのVSCodeプラグインが神すぎる件について

                                        (追記) 自動ログイン機能が利用規約に抵触していたらしく、マーケットプレイスより削除されました。 GitHubにAPIを使ったものは残っているので、知識があれば動作させられるかと思います。(自己責任) これを使った再配布等の行動はトラブルの元なので控えた方がよいでしょう。 ChatGPT いいよね 最近一番メッセージやりとりしてるのChatGPTだし、なんなら1日にしゃべる量よりChatGPTと話してることの方が多い可能性まであります ChatGPTのチャットツール自体はこちらから参加して試せるわけですが、プログラムを書くときに使ったことのない言語やライブラリを開拓する際ここまで有難い存在はありません. このようにネット上を探し回ると地味に時間のかかる情報もチャット形式で手に入ります. さて、今回の話題ですが、我が愛しのテキストエディタ「Visual Studio Code」のChatGP

                                          ChatGPTのVSCodeプラグインが神すぎる件について
                                        • しずかなインターネットの技術構成

                                          こんなWebサービスをリリースしたので、技術的な話をまとめておこうと思います。 元々このサービスは、趣味の延長線のような感じで開発を始めました。競合にあたるnoteやはてなブログなどのサービスが確固たる地位を築いているということもあり、「お金にはならないだろうけど、自分の趣味を詰め込んだものにしよう」というゆるい気持ちで開発を続けています(楽しい)。 選定の方針 趣味と言っても文章投稿サービスなので、ユーザーが少数であったとしても長期間運営しなければなりません。そのため、ユーザー数が少なければランニングコストが数千円/月以下、ユーザー数が増えたときは段階的にコストが上がるように選定を行いました。 アプリケーション フルスタックNext.jsアプリケーションをCloud Runにデプロイしています。各APIエンドポイントはNext.jsのAPI Routesで生やしています。 Next.js

                                            しずかなインターネットの技術構成
                                          • 「スクラムで生産性は上がらないしリリーススケジュールが狂いまくりなんですよ」とか言うお前らに告ぐ

                                            前提 この記事は内製開発をしているSaaSの中の人であるエンジニアが、SaaSの内製ソフトウェア開発をする上での話として書いています。 前ふり 「スクラムで生産性は上がらないしリリーススケジュールが狂いまくりなんですよ」 「何が原因なんですか?どうすればいいんですか?」 という相談を受けました。 NDAを書いてから、どれどれとチームの状況を見てみました。 該当チームのスプリントゴール 該当チームのスプリントゴールはこんな感じでした。 QAフェーズのプロジェクトAを、QA作業を完了してリリースできる状態まで進める 実装フェーズのプロジェクトBを、フィーチャーの実装率を50%まで進める 設計フェーズのプロジェクトCを、要確認な点を除いて実装レディーな状態まで進める スプリントゴールが3つありますね。とても面白いですね。 思わずボンドルド卿みたいな反応をしたくなりますがここは先に進みましょう。

                                              「スクラムで生産性は上がらないしリリーススケジュールが狂いまくりなんですよ」とか言うお前らに告ぐ
                                            • 車載 OS について語る

                                              はじめに 他分野のエンジニアに「1回のミーティングで車載OSについて教えて」と相談されることがあったため、その説明の際に使ったメモ書きを共有する。一応、最初に予防線を張っておくと、私自身、車載ソフトウェア業界に身を置くが、「いわゆる車載OS分野の専門家か?」というとそうでもないし、やや距離のある分野の方への説明なので、ツッコミはお手柔らかにお願いしたい。 ISO-26262機能安全について OSという耽美な響きからGeekでTechな話を期待されたかもしれないが、まず国際標準の話から説明を始める。というのも、この点が生命・財産に関わるソフトウェアと、そうでないソフトウェアを分かつ、大きな前提のため、ここはスキップできない。 機能安全とは? 国際標準とは世界で統一的なコミュニケーションを図るための規格であり、Terminologyについては他のどんな文書より定義が厳密なものだが、「1回のミー

                                                車載 OS について語る
                                              • 30分で完全理解するTransformerの世界

                                                はじめに 初めまして。ZENKIGENデータサイエンスチームのはまなすです。正式な所属はDeNAデータ本部AI技術開発部なのですが[1]、業務委託という形で今年度から深層学習系の開発等に携わっています。 深層学習界隈では、2017年に衝撃的なタイトル(Attention Is All You Need)の論文が発表されてから早5年半、元出自の機械翻訳タスクを大きく越えて、Transformer関連の技術が様々な領域で用いられる汎用アーキテクチャとして目覚ましく発展し続けています。 今回はそんなTransformerが現時点までにどのように活用されてきたか、また、どのように工夫されてきたかをざっくりと俯瞰し、流れをおさらいする目的の記事になります。本記事の大枠は、2021年時点でのサーベイ論文である A Survey of Transformers に倣いつつ、適宜、2023年2月上旬現在ま

                                                  30分で完全理解するTransformerの世界
                                                • Clubhouse リアルタイム配信の仕組みについて (妄想編)

                                                  Cloubhouse はすでに OSS である Janus Gateway に切り替えており Agora は使用していないようです ライセンス Creative Commons — 表示 - 非営利 - 改変禁止 4.0 国際 — CC BY-NC-ND 4.0 前提 @suthio_さんがつぶやいていたのがきっかけ https://twitter.com/suthio_/status/1353945619577008128?s=20 招待してくれた @dmnlk さんに感謝 DNS パケット見ただけ 他の方の解析は見ていない クライアント側の処理は知らない 気が向いたら更新している 著者 商用 WebRTC SFU 開発者 WebRTC プロトコルスタック実装者 End to End Encryption プロトコルスタック実装者 IRIAM 配信サーバ設計者 妄想 求人にメディアサーバ

                                                    Clubhouse リアルタイム配信の仕組みについて (妄想編)
                                                  • 基本情報技術者を取得してから「見える世界」が変わった話をしようか

                                                    どうもお疲れ様です。 MESIです。 皆さん基本情報技術者は取得済みでしょうか? よくITエンジニアの免許と言われている資格ですよね。 私は一昨年の秋に取得しました。 ちょうどエンジニアとして就職して2年目の時でしたね。 それまでの私の知識は業務で必要とされる部分しか知識がなく、情報系の学科を出ているわけでもないので、ITエンジニアとしての土台が全くない状態でした。 時々、このままではいけないと技術書を買って読むのですが、土台がないので頭に全然入ってこないし、何が書いてあるのかわからない。。 そんな私が基本情報を受験してから、見える世界が変わった件について話します。 『何をしている?早く基本情報技術者を取るんだ!』 新卒1年目の自分に言いたいセリフNo1がこれです。 なぜ基本情報を受験することになったのかといいますと、会社で半年に一度目標設定をするのですが、その一環としてです。 エンジニア

                                                      基本情報技術者を取得してから「見える世界」が変わった話をしようか
                                                    • Clubhouse リアルタイム配信の仕組みについて (解説編)

                                                      Cloubhouse はすでに OSS である Janus Gateway に切り替えており Agora は使用していないようです ライセンス Creative Commons — 表示 - 非営利 - 改変禁止 4.0 国際 — CC BY-NC-ND 4.0 前提 ざっくりと雑に解説。 どんな技術を使っていてこんな感じだろうという妄想は以下をどうぞ。 Clubhouse リアルタイム配信の仕組みについて (妄想編) 著者 商用 WebRTC SFU 開発者 WebRTC プロトコルスタック実装者 End to End Encryption プロトコルスタック実装者 Clubhouse の仕組みはとてもシンプルで配信者が N 人で、それを数千人が聞くという co-streaming と呼ばれる仕組みの一つ。この方式は今までは主に映像ありでパネルディスカッション的な使い方が主だっだ。それを

                                                        Clubhouse リアルタイム配信の仕組みについて (解説編)
                                                      • 良いコード/悪いコードで学ぶ設計入門の感想と注意点

                                                        「良いコード/悪いコードで学ぶ設計入門」という本がとても売れているようです。私の所属している開発チームでも、何人か購入した人がいたので、私も購入して一通り読んでみました。 結果として、いくつかの考えが整理され、私としてはこの本によって考えが深まり、本を読んで考えた事自体は有意義であったと思いました。ただし一方で、あまり知識がない状態で(自分の中での判断軸が無い状態で)この本を読むと、色々と誤解が生まれるのではないか?という事を感じました。 一つの技術書がこれだけ売れるという事はそんなに多くはない事だと思うので、つまり、 その内容が改善されるとその効果は相対的に大きい という事になります。そこで、私が本を読んでいて思ったことや、この本の内容で正しいこと、現在も賛否両論とされること、事実として認識が間違っているであろうこと、この本で触れられていないが設計において大事なこと、などについてまとめて

                                                          良いコード/悪いコードで学ぶ設計入門の感想と注意点
                                                        • え、HTTPSの転送なのにファイルも暗号化するんですか???

                                                          TL;DR 基本的には二重での暗号は不要 ただし、転送後も暗号化したまま使うなら、転送前から暗号化するのは良い ルールXを無邪気に追加して不整合のあるセキュリティルールを作ってはいけない はじめに 社内のセキュリティルールやスタンダードを決めるときに、HTTPSなのにVPN必須になってたりファイル暗号も必須になってたりするケースたまに見ます。今回は、それは実際に必要なことなのか? セキュリティ的に有効なのか? という点で考察をしていきたいと思います。 背景 二重三重に暗号化しても性能ペナルティが無いなら「なんとなく安全そうだから」でOKにしてしまいがちなのですが、これはよく考える必要があります。 というのも 「ルールXを追加することで既存のルールAと不整合が出る」 ってことは割とよくあるからです。具体的には「SCPのファイル転送は(SCPのセキュリティに不備があった時の)安全性のためにファ

                                                            え、HTTPSの転送なのにファイルも暗号化するんですか???
                                                          • Figma によるデザインシステム入門

                                                            本書は Figma によるデザインシステムコースの日本語訳になります。デザインシステムに興味がある人や構築しようとしている人もチェックしてみてください。デザインシステムに縁のないデザイナーや開発者のためにプロダクトと向き合った最適なデザインシステムを探求するための材料になれば嬉しく思います。 (原文 : https://help.figma.com/hc/en-us/sections/14548397990423-Course-Introduction-to-design-systems) この記事は、Figmaから許可を得た上で翻訳され、Brand Guidelineに則った内容となっております。(Brand Guideline: https://www.figma.com/ja/using-the-figma-brand/) ## 更新情報 [2023/7/1] - 表紙画像に、このコ

                                                              Figma によるデザインシステム入門
                                                            • お気に入りのコマンドラインツールを淡々と紹介する

                                                              めちゃくちゃ良い記事でした。 「OSS は使っていることを公言するだけでも貢献になる」と songmu さんが言っていたので、私も貢献したいと思います。 僕も貢献したいのでよく使うコマンドラインツールを紹介していきます。 特定のプログラミング言語等に依存するツールは省いています。 actionlint - GitHub Actions の Workflow ファイルの静的検査 GitHub Actions の Workflow ファイルの静的検査ツールです。 かなり精度が高く、色々な設定ミスを検知してくれます。 エラーメッセージも見やすくて助かります。 aicommits - コミットメッセージを自動生成 変更内容を元に自動でコミットメッセージを AI が生成してくれるツールです。 コミットをする前にちゃんと確認してくれるのも安心感があって良いです。 cLive - ターミナル操作を自動化

                                                                お気に入りのコマンドラインツールを淡々と紹介する
                                                              • クラスメソッド、技術情報共有サービス「Zenn」の買収に関する契約を締結〜誰かのために、自分のために知見を共有するプラットフォームの開発を加速〜 | クラスメソッド株式会社

                                                                クラスメソッドのAWS総合支援 コスト最適化からセキュリティ、構築支援、運用保守まで、AWS活用を支援します。

                                                                  クラスメソッド、技術情報共有サービス「Zenn」の買収に関する契約を締結〜誰かのために、自分のために知見を共有するプラットフォームの開発を加速〜 | クラスメソッド株式会社
                                                                • QiitaやZennよりも便利? IPAの資料を読もう!

                                                                  はじめに 飲み物じゃないIPAをご存じでしょうか? 漢字でいうと、独立行政法人 情報処理推進機構ですね。情報処理技術者試験を実施いる謎の組織という認識の方も多いと思います。 実はIPAはいろんなドキュメントを公開していてQiitaやZenn以上にお役立ちなサイトなのです。 まあ、AWSをどうこうとか、FireabaseやNext.jsのようなキラキラした奴は基本載ってないので特に代替えするものではないですが、ブログとかはまた種類の違った情報があるので個人的には結構使うことあります。しかも 「日本語」! こういう感じの事をTwitterでつぶやいたところ意外にイイねをされたので、せっかくだしどんなドキュメントがあるかちょっと紹介したいと思います。 セキュリティ関連NIST文書 まずはNISTドキュメントの翻訳版! これは良いですよね。NISTはアメリカの米国国立標準技術研究所で、セキュリティ

                                                                    QiitaやZennよりも便利? IPAの資料を読もう!
                                                                  • JSONをいい感じに見るCLIを作った

                                                                    その他 OS の方は GitHub のrelease ページから DL することができます。 使い方 tv はミニマムな CLI として作ったのでテーブル表示の機能とそれに付随したオプションのみを提供しています。 配列になっている JSON をテーブル表示する キーを指定することでそのキーを使ってソートできる いくつかのスタイルでテーブルを表示できる 以上が主の機能です。 Table 表示 ユースケースとして JSON が帰ってくる API を想定します。 API の例として jsonplaceholder を利用します。 今回は https://jsonplaceholder.typicode.com/users を使います。 この API は以下のようなデータが返ってきます。 $ curl -s https://jsonplaceholder.typicode.com/users [

                                                                      JSONをいい感じに見るCLIを作った
                                                                    • 「トランザクション張っておけば大丈夫」と思ってませんか? バグの温床になる、よくある実装パターン

                                                                      この記事は DeNA 20 新卒 Advent Calendar 2020 19日目の記事です。 はじめに MySQLやPostgreSQLに代表されるRDBMSではトランザクションと呼ばれる仕組みが提供されています。多くのWebアプリケーションエンジニアはこのトランザクションを駆使してDBとやりとりをするロジックを組み立てることになります。 しかし不整合を起こしたくない処理があるからといって闇雲にトランザクションを張ったり、トランザクションが張られているからと安心してアプリケーション側で闇雲にロジックを組み立ててしまうと思わぬバグを生むことになってしまいます。 このエントリでは、「トランザクションを張っておけば大丈夫」という考え方は危険な場合もあるということを、ありがちな実装例を交えて紹介していきます。 並列に処理されるトランザクション そもそも、トランザクションは全て直列に処理されるわ

                                                                        「トランザクション張っておけば大丈夫」と思ってませんか? バグの温床になる、よくある実装パターン
                                                                      • 【DDD入門】TypeScript × ドメイン駆動設計ハンズオン

                                                                        TypeScriptとドメイン駆動設計(DDD)を組み合わせ、APIを構築するハンズオンガイドです。この本では、DDDとは何かという基礎的なところからソフトウェア開発における戦略的設計、戦術的設計まで、包括的な知識を提供します。 戦略的設計では、ビジネスの要求に合わせたドメインモデルの設計をイベントストーミングを用いて行います。その後、戦術的設計では、具体的なコードの実装に関連するDDDの原則と実践を学びます。 TypeScriptを使ってコードを書きながら、DDDの概念を実際のプロジェクトに適用するヒントを紹介します。

                                                                          【DDD入門】TypeScript × ドメイン駆動設計ハンズオン
                                                                        • Postgres と MySQL における id, created_at, updated_at に関するベストプラクティス

                                                                          読者対象 ある程度データベースに関する知識を持っている,経験年数 1 年以上のバックエンドエンジニア 特定のプログラミング言語に依存する部分は含めないため,すべての SQL 使用者を対象とする また,ゼロからの丁寧な説明というよりは,リファレンス感覚で使える記事という形にまとめる。 RDBMS の対象バージョン PostgreSQL: 9.4 以降 MySQL: 8.0.28 以降 id (データ型と INSERT 時のデフォルト埋め) 導入 一般的に採用されやすいプライマリキー用の値として,以下を考える。 連番整数 MySQL では AUTO_INCREMENT, Postgres では IDENTITY や SERIAL と呼ばれるもの UUID v1: ハードウェアごとにユニークな単調増加値 UUID v4: ランダム値 UUID v7(ドラフト): 単調増加であるタイムスタンプとラ

                                                                            Postgres と MySQL における id, created_at, updated_at に関するベストプラクティス
                                                                          • Re: Rails を主戦場としている自分が今後学ぶべき技術について

                                                                            この記事は、 Rails を主戦場としている自分が今後学ぶべき技術について(随筆) | うなすけとあれこれ についてのアンサー記事です。 うなすけ君が Ruby on Rails で育ってきたように、僕も JavaScript とともに育ってきたという自覚があります。なので、これについて書くことは、ポジショントークは避けられない、という感覚があります。 冷静に比較しようとも思いましたが、やっぱり開き直って思いっきりポジショントークをすることにしました。そっちのほうが面白いと思うので。 自分の基本的な主張は、こちらの記事にあるとおりです。 Frontend Study #1: 基調講演 - Frontend 領域を再定義する 自分と Ruby on Rails 僕は、キャリアとしては Rails の会社で JavaScript を書いてきたことが多かったです。学生の頃は socket.io

                                                                              Re: Rails を主戦場としている自分が今後学ぶべき技術について
                                                                            • Rust入門

                                                                              プログラミング言語Rust入門です.なるべくわかりやすいように解説しました.公式ドキュメントを読んでみたけど,あまりよくわからなかったという人に向いているかもしれません. 誤字や間違いなどのご指摘は以下からコメントをお願いします. https://zenn.dev/mebiusbox/scraps/90bc293a07430d

                                                                                Rust入門
                                                                              • ブラウザキャッシュの仕組みについてまとめた

                                                                                Web開発において、ページの読み込み速度は非常に重要になります。 そのためにもブラウザのキャッシュは効率的なWebサイト運営に不可欠な機能です。 ブラウザのキャッシュには次のHTTPヘッダを設定することができます。 Expiresヘッダ Cache-Controlヘッダ Last-Modifiedヘッダ ETagヘッダ これらのキャッシュには強いキャッシュと弱いキャッシュで分類が可能です。 「Expires」「Cache-Control」は強いキャッシュであり、「Last-Modified」「ETag」は弱いキャッシュに分類できます。 強いキャッシュと弱いキャッシュ 強いキャッシュは設定された期間内は完全にローカルキャッシュを利用して、サーバーへのリクエストを行いません。 一方で弱いキャッシュはキャッシュされたリソースの検証が必要であり、ETagやLast-Modifiedヘッダを利用して

                                                                                  ブラウザキャッシュの仕組みについてまとめた
                                                                                • 無料の SSL 証明書が得られる ZeroSSL を使ってみた

                                                                                  はじめに 皆さんは ZeroSSL を知っていますか?個人でウェブサイトを運営している皆さんであれば、多くの方は Let's Encrypt を利用されていると思います。 https://letsencrypt.org/ja/ もちろん僕も使っています。僕の様なエンジニアの方であれば SSL の仕組みもおおよそ理解もしているし、コマンドラインの実行方法も知っておられるのでウェブサイトの SSL 証明書を取得する事もそれほど難しい事ではないでしょう。 しかしそれほど詳しくない方が certbot の様なコマンドを使って SSL 証明書を発行するのは割と難しい事です。そこでご紹介したいのが ZeroSSL です。 https://zerossl.com/ ZeroSSL とは ZeroSSL もまだあまり名前が知られていないせいか、Google 検索で「ZeroSSL」を検索すると「ZeroS

                                                                                    無料の SSL 証明書が得られる ZeroSSL を使ってみた

                                                                                  新着記事