ブックマーク / qiita.com/m_mizutani (2)

  • pythonで小さなツールを作る時のtips - Qiita

    自分で小さいツールを作る時に心に留めているtipsです. 書き始めたときは「どうせ書捨てだし」と思って書き始めると意外と長い間,もしくはいろんなところで使うことになったりするので,気をつけておくと後から楽になるというような小技です.大規模なソフトウェアの開発ではまた違った流儀があると思います. メインルーチンを関数にする 関数名はなんでもいいのですが,自分は趣味で main() という名前の関数を用意し,メインルーチンは全てそこに書くようにしています. pythonの小さなサンプルコードを見たりすると関数外の部分にベタで実行コードが書かれていたりします.もちろんそれでも動くのですが,以下の2点で後々面倒になることがあります. グローバル変数だらけになり管理が追いつかなくなる:「どうせ小さなスクリプトだし」ではじめると最初は見通しが良くてもだんだんどこでどの変数名を使っているか分からなくなっ

    pythonで小さなツールを作る時のtips - Qiita
    itouhiro
    itouhiro 2017/09/05
    「main() 関数を用意し全てそこに書く。argparseでコマンドラインopt。tqdmで進捗を表示。printf debugでlog()関数を用意する」
  • ネットワークキャプチャデータを見る時のTips - Qiita

    ネットワークのトラブルシュートなどをする時にtcpdumpやwiresharkといったツールを使ってキャプチャデータを取得し、正常ではない通信を特定するなど分析します。その時にIPアドレスやポート番号といったことは当然確認すると思いますが、記事ではそれ以外に分析に利用できそうな小技をいくつか紹介したいと思います。お題は以下のとおりです。 MACアドレスからNICのベンダーが分かる IPヘッダからおおよそのホップ数が推測できる TCP/IPヘッダからOSを推定できる TCPの3-way-handshakeからネットワークの遅延を測れる TCPの再送状況からネットワーク品質の変化を見れる DHCP/mDNS/NBNS/LLMNR から同一ネットワーク内のホスト名がわかる TLSのclient helloから接続先のホスト名がわかる 【注意事項】 職のネットワークエンジニアの方にとっては当た

    ネットワークキャプチャデータを見る時のTips - Qiita
    itouhiro
    itouhiro 2017/04/13
    「NICのベンダーが分かる。ホップ数推測できる。OSを推定。ネットワーク遅延を測れる。ネットワーク品質の変化を見れる。同一ネットワーク内のホスト名がわかる。接続先のホスト名がわかる」
  • 1