Natron Tutorial見る

https://www.youtube.com/playlist?list=PLqazFFzUAPc7c67ZuC629CBVL-26e_5QE

2 - Draw Nodes and Basic Animation

https://youtu.be/cplmV8EJXMw

  • 操作したいプロパティを右クリックしてSet Keyするとキーをセットできる
  • タイムマーカの上をクリックしてオレンジのマークを出して、プロパティを操作すると

golang備忘録

頭悪いからすぐ忘れる

go.modを使ったモジュール管理を開始する

go mod init <gitのURL>

httpで静的ファイル返す

https://stackoverflow.com/questions/26559557/how-do-you-serve-a-static-html-file-using-a-go-web-server

http.Handle("/", http.FileServer(http.Dir("./public")))

こうやって書くと、 / 以下が全て /public にマップされるので、 /js/script.js は /public/js/script.js としてserveされる。

例えばpostだけ処理分けしたいとかになったら

標準libの http.HandleFunc() だと、POSTだけ処理分けしたいとかなったら、r.Methodで場合分けするしか無いが、ここで便利なのが例のゴリラ

 r := mux.NewRouter()

    // APIハンドラ
    r.HandleFunc("/api/aaa", aaa).Methods("POST")

    // 静的ファイルハンドラ
    r.PathPrefix("/js/").Handler(http.FileServer(http.Dir("./public")))
    r.Handle("/", http.FileServer(http.Dir("./public")))

    // routerをhttpのデフォルトハンドラとして登録
    http.Handle("/", r)

JSON postしたのをparseする

https://stackoverflow.com/questions/15672556/handling-json-post-request-in-go

type checkStruct struct {
    URL      string `json:"url"`
    UserID   string `json:"userID"`
    Password string `json:"Password"`
}

func x() {
    decoder := json.NewDecoder(r.Body)
    var params checkStruct
    if err := decoder.Decode(&params); err != nil {
        log.Fatal(err)
    }
}

readerをstringに

 b, err := ioutil.ReadAll(resp.Body)
    if err != nil {
        return "", err
    }

    str := string(b)

10GbEを引きたい

10GbEを引くためのLANケーブル

Cat6AのUTPケーブルが無難

市販のCat7対応ケーブルでコネクタがRJ45のやつは10GbEではない。

引きたかったCat6Aで引くべき。

https://home.jeita.or.jp/upload_file/20180618105908_H95U0A2VLc.pdf

Q3
RJ45プラグ付の「Cat.7」と表記されたパッチコード
が販売されておりますが、これについて教えてください。
これは、Cat.7の性能はあるのでしょうか。
A3
RJ45プラグではCat.7性能を満足することはできません。
よって、これは不適切な表現であり「誤表記」と考えられます。
Cat.7性能を満足するプラグは、一般的にTERA、GG45、ARJ45コネクタであり、
よって、「Cat.7」と表記された RJ45プラグ付コードは、Cat.7の性能を満足して
おりません。

Q6
10GBASE-Tで使用する部材は、各規格の
Cat.6Aの部材を使用すれば問題ないでしょうか。
A6
全てカテゴリ6A(JIS規格)、カテゴリ6A(TIA規格)の部材で構築すれば
問題ありません。

STPかUTPか

https://ja.wikipedia.org/wiki/10%E3%82%AE%E3%82%AC%E3%83%93%E3%83%83%E3%83%88%E3%83%BB%E3%82%A4%E3%83%BC%E3%82%B5%E3%83%8D%E3%83%83%E3%83%88

シールドされてないツイストペアケーブル(UTP)とシールドされたツイストペアケーブル(STP)がある。STPでもシールド方式により下表の分類がある。STPは正しくアースを接続しないと静電気などにより逆にノイズ発生源となる。

WindowsでATPしたい

Microsoftが売ってるATPと名がつくものが多い

Windows Defender ATP / Microsoft Defender ATP
エンドポイント保護

Azure ATP
Azure ADに対して不正なリクエストや認証が起きてないか検査して保護

Office 365 ATP
Exchangeのメールの保護

Windows Defender ATPを買いたい

Microsoft Defender Advanced Threat Protection を使用するには、次のいずれかの Microsoft ボリューム ライセンス製品が必要です。
* Windows 10 Enterprise E5
* Windows 10 エデュケーション A5
* Windows 10 Enterprise E5 が含まれている Microsoft 365 E5 (M365 E5)
* Microsoft 365 A5 (M365 A5)

https://docs.microsoft.com/ja-jp/windows/security/threat-protection/microsoft-defender-atp/minimum-requirements

結局Microsoft 365 E5を買わないとあかんのか…

Windows Defender ATPはアンチウィルス含むのか

含まないらしい

https://www.microsoft.com/ja-jp/biz/windows/security-atp.aspx

Q. ウイルス対策ソフトとは違うの?
A. 異なります。
ウイルス対策ソフトは侵入や実行防止を目的としていますが、WDATP をはじめとするEDR 製品は侵入
された後の検知や対処を目的に作られています。ウイルス対策ソフトと組み合わせてお使いください。

http://download.microsoft.com/download/2/9/E/29E415DE-58B6-48D5-9190-A53D4A4F5599/Win10_Defender_ATP.PDF

Windowsの場合はMicrosoft Defender AVと組み合わせる。 Macの場合はBitdefenderと組み合わせるのか?

だがATP for Macのドキュメント読むと、これ単体でアンチウィルスしてくれるっぽいが…

Windows上でMS Defender AV以外のアンチウィルスと組み合わせた場合は、MS Defender ATPは「パッシブモード」というので動いて、検知するだけモードみたいになるらしい。
https://docs.microsoft.com/ja-jp/windows/security/threat-protection/windows-defender-antivirus/windows-defender-antivirus-compatibility

ブロック スコープの変数 'var' を再宣言することはできません。

同じディレクトリにある複数のファイルで同じ名前の変数を宣言した際に、以下のエラーが出るときがある。

  • ブロック スコープの変数 'var' を再宣言することはできません。
  • Cannot redeclare block-scoped variable 'var'.

解決するには、ファイルのどこかで export {}; を宣言する。らしい。

export {};
const var = 1;

でもなぜこれで直るのか? そもそもファイル単位で名前空間が分離されてるはずなのに、再宣言なんておかしくないか?

調べたら、TypeScriptは、import/exportを書いていない.tsファイルはモジュールとして扱わず、グローバルスコープの下に置かれるらしい。

In TypeScript, just as in ECMAScript 2015, any file containing a top-level import or export is considered a module. Conversely, a file without any top-level import or export declarations is treated as a script whose contents are available in the global scope (and therefore to modules as well).

Modules · TypeScript

reference

medium.com

twitter cardをサーバー生成する際にcontent-typeを忘れてはいけない

card validatorで "WARN: No metatags found" を食らった場合、 まずはHTTPレスポンスで Content-Type: text/html を返しているかを疑うこと

特にlambdaでやっている場合