姫路IT系勉強会 2019.02

姫路IT系勉強会 2019.02

13:30

  • ChromeCastがなかなか繋がらないようです。ようやくできました。
  • WindowsでHashicorp Packerが動かんぞ。なぜだ

    自己紹介!

  • 確定申告やりました。が何人かおりました。
  • HackMD(ここ)みんな書いてくださいね。

    14:00

お題1:学生のうちにIT系で働きたい

  • 責任のあることをやってみたい
  • インターンやってみてはどうか
  • Sakura インターネットのインターンの例
    • 以前、営業とカスタマー方面でやってたことがあります。
    • 夏休みのエンジニア向けインターンはあります。
    • だいたい毎年募集しているので採用情報をチェックしてください。
  • 自分にあわなくても気にしなくていい
    • 合わなければ違う仕事を探せばいい
  • 見込まれればオファーがあるかも
  • 受け入れ体制の整ってない会社だと行く意味ないかも(放置されるだけだったり)
  • テストエンジニアならバイトもあるかも
    • ただし、テスター舐めちゃだめです
      • バグレポートなど、まともな文章をかけないと叱られます
      • 学校でのレポート(感想文でない文章)を書いていれば役立つかも
      • コミュ力大切
    • inputボックスにプログラマの思いつかないような文字列を入力できる人がいいです
    • テスターに関していろいろ熱い話が出てきました

お題2:きれいなCSSを素早く書きたい

  • 見たものはたいていぐちゃぐちゃ、綺麗に書かれたSass見たことないです
    • ぐちゃぐちゃ構成・コードは反面教師にしましょう
      • 「俺ならこうする!」精神で読む
  • ジュンク堂で技術書を立ち読みしてきました

  • ここでひとしきり、CSSの設計やSassのお話

  • CSSから派生した話 エンジニアに画面設計させると、しばしば「痛い!」です(特に色彩が)

    • 色彩検定の公式ドキュメントが有用です
    • 色を多く使い過ぎない。
      • 資料を作る際にも応用できます。
      • 「色彩のセンス」を磨くというより、おかしな色の組み合わせを外すこと
    • エンジニアも読んでおくと有用 ノンデザイナーズ・デザインブック [第4版]
    • Sassだと、色相環で180度の位置の色にするとか指定できる
      • こういう機能をCSS自身も取り込んできてます
    • 普通の人は「カーニング」やらない方がいい(日本語での組版にはない)
      • コーダーが手を出すと泥沼、デザイナに任せるかブラウザに任せましょう
  • 派生した話2 ブラウザの下限はどこまでサポート?

    • シェアを調べる
      • Statcounterで古いブラウザのシェアを確認
      • Google Analyticsでトラッキング
        • 「これ以下は切ります」という論拠として
    • 特定企業内であれば、要件で決まるので一概には言えない部分も
    • 「同じ」IE11でも、Windows10とWindows7ではレンダリングが違ってたりします
    • MSもEdgeをChromeベースになるとか?
    • Firefoxのシェア低下(5%未満…)にはなにか理由がありそう(品質以外で)
    • VivaldiやSleipnirもまだ生きてますよ
  • Bootstrapなどのフレームワークはソースを読めない人のためにあるんじゃないぞ
    • ドキュメントを読んで使おう、できればフレームワークのソースも読もう

お題3:Webアプリの寿命はどのくらいですか

  • 病院の電子カルテなら7年くらいは使います。
  • クローズな環境でも5年くらい
    • オープンなら2年程度しかない
      • 特にフロントエンドのJS、寿命激短
        • React/Angular/Vue.js どんどんトレンドが変わる
        • そしてみんなJQueryに回帰?
          • JQueryもう戻れません
      • バージョンアップのことを考えてない環境のPHP7化は地獄
      • ブラウザのバージョンは勝手にどんどんあがる1年で4Verぐらい
        • Windows7あたりまでのIEの感覚とは違ってくる
      • 世間のセキュリティ要件もどんどんきつくなっていってます
        • HTTPでなくHTTPS(SSL)が事実上のデフォルトに
        • IPAのセキュリティ情報が一つ根拠に使えます
        • PHPも「ゆるふわ」から「がちがち」になりつつあります。
    • レベルの高いお客さんも低いお客さんもいます
      • 古い環境での動作を維持したければ、相応のコストをいただきましょう
        • Redhatはそのビジネスモデルをとってます
        • どこまでカバーするかは経営判断にも関わります
    • リプレース周期はPCの買い替えとかディストロのリリースサイクルに合わせませう
  • Ruby(というよりRails)をdisる話題は秘密にしましょうか

お題4:VSCodeでRemoteのインテリセンスが効きません

お題5:USB の LTE が動かない

  • Windows の デバイスマネージャでは確認できる
    • デバイスの認識、接続の正常動作を確認しています
  • 資料として、製造元(Telit)のPDFドキュメントを見ました
  • Linux上では、ip(8)でネットワークデバイスとして見えてはいます
    • でもそこからが謎
  • Linux の /dev にデバイスファイルはない

    • ドキュメントではあるはずの、シリアル/もしくはqmiのデバイスは作られてなかった
    • すみません。言い忘れてました。ディストロは debian busterです
    • lsusb でベンダーIDなどで検索する
    • 「モデムマネージャ」パッケージでつながらないか?
      • modem-manger-gui パッケージ入れて起動させてみました。
        • デバイスが見えてないようでした
      • 低レイヤーで認識してないのでどうにもならない
      • Raspberry Piで、L-03DをEthernetとして認識する - Qiita https://qiita.com/air-gh/items/6add3c0b19e8fe9469aa
  • ファームウェアのバージョンが違うと繋がらない場合がある

    • OSに見えている型番では分からない場合も

お題6:PITAPAのCSVを掃き出したい

  • PITAPAのチャージ履歴が6ヶ月で消えてしまう
    • 申請ー>照会可能になるまで1ヶ月!
      • 確定申告に間に合わない
    • ブラウザ自動化してサイトからPITAPAのサイトから取得
      • wgetとかでは荷が重いのでPythonのmechanicalsoupを使おうかと思案中
      • https://codecept.io/
        • 構文が自然言語に近いです
          • $I->amOnPage(‘/login’);
            • ログインページを開く
        • WEB制作でCSSデグレのチェックにも便利
          • サイトの全ページを走査してスクショとかも楽々
      • https://devexpress.github.io/testcafe/
        • 操作したらそのまま記録される。Seleniumに近い?
        • ドライバを使わず、PCにインストールされているブラウザ全て切替可能

お題7:Red Hat の Ansible 推し

  • 電話をとったらRed Hatだった
    • わざわざ電話くれるってことは、Ansible Tower売れてないから?
      • そんなのを用意できる「企業文化」のある会社って日本にどのくらい?
      • それを地道に開拓している段階なのかも
    • Ansibleゴリゴリやってるひとは、もう既に次のプロビジョニングツールを探してそう
      • 「冪等性なんて幻想です」(某社の格言)
    • 手順書さえろくにかけてないのに、構成管理ツールなんて使えるわけがない
    • 構成管理ツールはインフラ屋より、下のレイヤに降りてきたプログラマの得意なところ
    • AnsibleをRed Hatが推しているのは確かだけど、コミュニティはコミュニティで自立してほしい
    • 楽をするのに努力することができる人
    • メンテナスコスト? Ansible使わなくっても発生するでしょ
      • 日本語のドキュメントでも更新するコストはあるでしょ
    • テスティングフレームワークがある

お題8:AOSP(Android)の古い仕様のAPIについて

  • 非SDKインターフェースの制限
    • AOSPのAPI を40万を4種類に分類し以降の使用を制限する
      • White :これだけ使って!!
      • Light Gray :使わないでほしいが今は使っていい
      • Dark Gray :使うなよ? 条件次第でエラー
      • Black :使うな。問答無用でエラー
  • アプリ開発者対応
    • veridex
      • AOSPが出したツール
      • アプリのapkが使用しているAPIをチェックする
    • アプリはこれでOK
    • AOSPのアプリより深い部分を開発する人はむり
  • ライブラリ開発者対応
    • AOSPの開発はJava/C++/C言語
    • オブジェクト指向なのでソースコード検索でこまる
      • クラスとメンバ、クラスとメソッドが離れているため全文検索は困難
    • どうしたらいいのか詰んだ
      • そもそも数が多い

お題9:お前らの開発環境を教えやがれください

  • php
    • NetBeans + plugin
    • pluginは落している
    • Eclipseは汎用的すぎまして
  • Ansible
    • atomと関連するプラグインでやってます(シンタックスハイライトとかlintとか)
      • VirtualBOX + Vagrantで
      • プラグインは入れ替わりが激しいです
        • 便利そうなのが出ると、さらに便利そうなのがでてきたりします
    • VSCode+Ansible向けプラグインは入れています(使ってないけど)
  • Java
    • Eclipse
  • JavaScript
    • vim
      • plugin Managerの沼にはまった
      • Emacs よりは vim
    • Go
      • 言語自体がサポートしているので、それを使う。クオリティに差がない。
  • PHP, css, JavaScript
    • Neovim + TerminalがPowerShell(他にこの組み合わせの人に出会ったことがない)
  • 日本語(PlantUML, Markdownなど)
    • VS Code
    • Atom
      • ほぼノーマル
    • Simplenote
      • デスクトップアプリより、ブラウザベースの方がよいです
      • 履歴が取れる
    • Jopline
      • Markdownで書けてPCとスマホで使えるのがいいです
  • Markdown Boostnote
    • SYNTAXチェック用にプレビュー
      • 3カラムが便利
    • プレビューをコンフルーエンスに投げる
  • Evernote
    • 重くて使うのやめた人が何人か
    • Webクリップ機能は便利だが、クリップしても情報の鮮度がすぐ落ちる
  • Processing
    • Atom に Processingプラグインがありました
      • Processingのエディタは使って使えなくもなかった
  • Raspberry Pi
    • vim
    • 今はともかく、RaspberryPi Bあたりは非力でしたので、vim-tinyだったかも
  • 秀丸
    • ライセンス持ちが何人かおりました
    • マクロあるけれど?
      • ユーザーが少ない、高齢化もあるかも
  • SakuraEditor
    • そこそこ機能ある
    • 「タダだから」使う企業ユーザが多いかも
  • EmEditor
    • でかいファイルを開くとき
  • Emacs

  • チームだとVisualStudio・AndroidStudioで統一されることも

    • 設定とか手順書で全員同じ環境に揃えたい
    • コーディング規約を守れない人がいても大丈夫(?)
  • エディタの定義が変わってきている

    • 秀丸、EMEditorなどはスクリーンエディタの延長
    • 今は「エディタ」といえば「モダン・エディタ」

(Appendix的に)お題10:Linuxの勉強方法

お知らせ