タグ

ブックマーク / zenn.dev/mattn (6)

  • Go の入力バリデーションパッケージ ozzo-validation を試した。

    はじめに Go のウェブアプリで使う入力バリデーションに関して、ozzo-validation を検討した。 これまでのバリデーション 普段、仕事では labstack/echo という Go のウェブフレームワークを使う事が多いのだけど、バリデーションに関しては labstack/echo のサンプルに合わせて go-playground/validator を使ってきた。 go-playground/validator は機能も豊富で(一応)痒い所に手は届くのだけど、struct にタグを付けて判定させないといけない。これが実に煩わしい。以前 labstack/echo を使ったサンプルを書いたので、それを見て欲しい。 // Comment is a struct to hold unit of request and response. type Comment struct { I

    Go の入力バリデーションパッケージ ozzo-validation を試した。
  • ls -l はなぜ事故を起こすのか

    はじめに この記事は以下の記事で事故がなぜ起きたかを技術的に理解し筆者のtipsを共有しようと思い書きました。あくまで筆者のtipsですので、これが正しいとは限りません。 やはり、下記のコマンドが原因でした。 [root@foo script]# ls -l | sh 事故そのものは ls コマンドに -l を付けて実行してしまった事で、ls コマンドが出力したシンボリックリンクが以下の様になってしまったという話です。

    ls -l はなぜ事故を起こすのか
    wushi
    wushi 2021/04/06
    昔 ls -l の結果をうっかり右クリックペーストしちゃってシンボリックリンクの -> で libが全部書き換わってOS起動しなくなったのを思い出した
  • 無料の 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 を使ってみた
  • vimrc の分割管理を上手くやる 2020年版

    筆者の環境について Vim にはプラグインマネージャも沢山あります。その中で僕は vim-plug を使っています。Software Design という雑誌で「Vim の細道」という連載をやっている事もあり、皆さんに一番リーチしやすいプラグインマネージャを選んでいるという事もありますが、基は「トラブルが発生しづらい」という理由で使っているのもあります。 vimrc の分割管理 ところで最近は Vim プラグインが沢山あり、個々に設定が必要な場合もあります。全て vimrc の中に書いてしまうのも良いのですが、そうするとどこからどこまでが、どのプラグインの設定か分からないといった問題が起きてしまいます。僕は vimrc をプラグイン毎に分割して管理しています。 Big Sky :: ぼくがかんがえたさいきょうの Vim のこうせい 2019年 年末版 " Vim 体の機能のデフォルト値

    vimrc の分割管理を上手くやる 2020年版
  • Vim9 script はどれくらい速いのか

    はじめに Vim というテキストエディタは、vi から引き継いだ独特な操作を提供します。そしてそれだけでなく Vim script という独自のスクリプト言語で Vim 自身を拡張する事ができます。多くの Vim ユーザの方もそれはご存じかと思います。 もしかすると知らない方もいらっしゃるかもしれませんが、昨年末から Vim の作者 Bram Moolenaar 氏が vim9 というブランチを作り今年の1月に master ブランチへマージしました(vim9 とは言えどまだバージョンは8です)。その中に含まれていた機能が Vim9 script です。 そもそも Vim script Vim script は Vim のバージョン 5.0 の頃から登場し、元々は設定ファイルである vimrc を環境により if 分岐する為に登場しました。その後 Vim script に色々な関数が足され

    Vim9 script はどれくらい速いのか
  • grep の「バイナリファイル (標準入力) に一致しました」が出る条件を調べていたらそれは長い旅路の始まりだった。

    はじめに 昨今では1行につき、1つの JSON を出力する様なログファイル形式も珍しくはありません。 grep しやすい データベース化しやすい これらの理由で各所で多く使われています。僕も仕事で普通に使っているのですが、ある日突然そのログファイルを集計するスクリプトで以下の様なエラーが出始めました。

    grep の「バイナリファイル (標準入力) に一致しました」が出る条件を調べていたらそれは長い旅路の始まりだった。
    wushi
    wushi 2020/10/07
  • 1