diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 22103792..cf98dc9f 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -4,7 +4,7 @@ # See https://pre-commit.com/hooks.html for more hooks repos: - repo: https://github.com/pre-commit/pre-commit-hooks - rev: v4.5.0 + rev: v4.6.0 hooks: - id: check-json - id: check-yaml @@ -16,16 +16,20 @@ repos: args: - --markdown-linebreak-ext=md - repo: https://github.com/igorshubovych/markdownlint-cli - rev: v0.38.0 + rev: v0.40.0 hooks: - id: markdownlint-fix - - repo: https://github.com/RyoWakabayashi/pre-commit-mirrors-textlint - rev: v12.2.1 + - repo: https://github.com/wate/pre-commit-mirrors-textlint + rev: v14.0.4-1 hooks: + - id: textlint-fix + additional_dependencies: + - textlint-filter-rule-comments + - textlint-rule-preset-ja-technical-writing + - textlint-rule-preset-ja-spacing + - textlint-rule-prh - id: textlint - args: [--fix] additional_dependencies: - - textlint - textlint-filter-rule-comments - textlint-rule-preset-ja-technical-writing - textlint-rule-preset-ja-spacing diff --git a/automations/tasks/add_meeting_log.yml b/automations/tasks/add_meeting_log.yml index 1aae0cd1..09084b97 100644 --- a/automations/tasks/add_meeting_log.yml +++ b/automations/tasks/add_meeting_log.yml @@ -26,7 +26,7 @@ register: api_result - name: ログの内容(6行目以降)を出力用変数に割り当て ansible.builtin.set_fact: - meeting_log: "{{ api_result.json.content.split('\n')[6:] | join('\n') }}" + meeting_log: "{{ api_result.json.content.split('\n')[2:] | join('\n') }}" - name: 開催ログファイルを作成 ansible.builtin.template: src: histudy.md.j2 diff --git a/content/histudy/2024/04.md b/content/histudy/2024/04.md new file mode 100644 index 00000000..be3c68b1 --- /dev/null +++ b/content/histudy/2024/04.md @@ -0,0 +1,264 @@ +--- +title: 姫路IT系勉強会 2024.04 +date: 2024-04-20 +categories: + - 開催履歴 + - meeting-log +tags: + - 姫路IT系勉強会 +--- +* 開催日: 2024/04/20 13:15 +* 司会: wateさん +* 参加人数: 参加者: ???名 (うち学生:0名) +* HackMD: +* connpass: +* ハッシュタグ:[#histudy](https://twitter.com/search?q=%23histudy&src=typd) +* [姫路IT系勉強会 Discordへ参加する](https://discord.gg/rZCeScB) + * **オンライン開催の場合はDiscordのボイスチャットを利用しています** + * Discordは無料プランに乗れる人数(10人以内)なので使っています。 + * 有料版でも$15/月程度なら払えなくもないですね。 + * Discord以外にも色々ありますので、人数が増えたら検討しましょう。 +* [姫路IT系勉強会 Slackへ参加する](https://join.slack.com/t/histudy/shared_invite/zt-ugowinom-ZG0ORhstkrqQGVyjksr_OA) + * 勉強会当日以外での質疑応答やメンバー同士のコミュニケーションに利用しています + * Slackでの話の流れから、突発的に臨時イベントが企画されされるケースがあります + +最近のニュース +----------------- + +気になったニュースをあげて話題をつくろう + +* [姫路IT系勉強会](https://histudy.jp/) +* [xz utilsの件](https://security.sios.jp/vulnerability/xz-security-vulnerability-20240330/) + * [xz Backdoor CVE-2024-3094 @openssf](https://openssf.org/blog/2024/03/30/xz-backdoor-cve-2024-3094/) + * [CVE-2024-3094 @debian](https://security-tracker.debian.org/tracker/CVE-2024-3094) + * [「XZ Utils」にバックドア、オープンソースエコシステム全体の信頼を揺るがす事態に @窓の杜](https://forest.watch.impress.co.jp/docs/news/1580604.html) + * [XZ Utilsの脆弱性 CVE-2024-3094 についてまとめてみた @piyolog](https://piyolog.hatenadiary.jp/entry/2024/04/01/035321) +* [Redisがライセンスを変更⁠⁠、BSDライセンスからRSAL/SSPLデュアルライセンスに](https://gihyo.jp/article/2024/03/redis-dual-licensing) + * [Linux Foundation⁠⁠、Redisをフォークした「Valkey」プロジェクトを始動](https://gihyo.jp/article/2024/03/valkey) +* [スタートアップでソフトウェアエンジニアとして10年たって大事にしていることリスト](https://tomoima525.hatenablog.com/entry/2024/04/01/150049) +* [【研修資料公開】24新卒エンジニア研修「エンジニア基礎」を実施しました!](https://tech.willgate.co.jp/entry/2024/04/01/184252) +* [「最もAIに奪われているフリーランスの仕事」は何なのかデータを基に分析した結果とは?](https://gigazine.net/news/20240403-freelancing-jobs-replaced-by-ai/) +* [映画「Winny」、アマプラ見放題に登場 - ITmedia NEWS](https://www.itmedia.co.jp/news/articles/2404/03/news181.html) +* [GoFetch](https://gofetch.fail/) + * [Apple M1・M2・M3プロセッサに暗号鍵を推測されるリスク、注意を](https://news.mynavi.jp/techplus/article/20240327-2915003/) +* [「PuTTY」に秘密鍵が復元できてしまう深刻な脆弱性 ~「WinSCP」など他ツールにも影響](https://forest.watch.impress.co.jp/docs/news/1584589.html) + * [SourceTree](https://www.sourcetreeapp.com/)とかも影響ありそうです。 +* 雹とか霰で大変でしたね。 + * 姫路市でも災害扱いで罹災証明出るそう + * 罹災証明書及び罹災届出証明書の交付申請 | 姫路市: +* 第一腰椎を圧迫骨折してるらしい + * お大事に! + +お題 +--------------- + +ここの下にお題(相談したいこと、発表したいことなどなんでも)お書きください。 +※ 記載するお題は参加者一人につき1つだけ記載するようにお願いします。 +※`### <ネタ>+(名前)`の形式でお題を記載してください。 + +### お題をここに書く(名前を書く) + +(概要や背景などをここに書く) + +### フル電動自転車買ったよ(のがじゅん) + +* 原付免許必要で、ナンバープレートなど保安装置は必要 +* バッテリー切れ:実績解除 + * 保安装置なしだと公道走れないから注意! +* 特定小型原動機付自転車(キックボードなど)は時速20kmはOK?なんで? + * 特定小型原動機付自転車に関する交通ルール等について 警視庁: + * 業界団体がねじこんだ? + * 道路そんなになめらかじゃないから怖くない? +* 電気だと速度でているかどうか実感がない +* 交差点だと自動車やトラックに気がつかれなくて怖い +* リアル人柱にならないように注意してください +* 自動車運転者からみても怖い +* 自転車を並列で自動車を抜かそうとするのはちょっと +* おじいさん、おばあさんならわかるが若い人がガンガン走るのはよくないかもしれない + * 三輪の原付かシニアカー +* [オープンストリートマップ](https://www.openstreetmap.org/)のマッピングパーティで電動車椅子は意外とパワーがあって、急な坂道でもいけておどろいた + * 電動車椅子は意外と怖い + * モーターは加速がえぐい、低速は苦手 + * 普通は自転車のペダルで、加速するときだけモーターがいいかも +* 航続距離は、フル充電で30~40kmくらい。60kmはほしい。 + * バッテリーをはずして自転車にできるけど、モーターなどの分だけ重い + * パーツがアリエクスプレスで売っているので改造できそう。 + * 今のメーターがおかしいのでなんとかしたい。 + * 炎天下で熱いところにおくと、爆発しないか?スマフォみたいに。 + * 爆発は怖いから使わないときは外すがいいかも + * バッテリーが通販で売ってる… + +### コレデキミモエスボムマスタアダ?!(fu7mu4) + +* みんなでSBOMを学んでみよう!なんて資料を私がつくるわけないじゃないですか。 +* いやー!(耳をふさぎながら) +* WordPressもlockfileが欲しい! + * 得体の知れないWordPress... + * [wp-cli](https://developer.wordpress.org/cli/commands/) がはいっていると調べられるんだが。 + * そもそもWordPressのプラグインは [A distributed vulnerability database for Open Source - osv.dev](https://osv.dev/) の脆弱性データベースに登録されていないので、 [osv-scanner](https://github.com/google/osv-scanner)では調べられない + * [WordPress Vulnerability Database API](https://vulnerability.wpsysadmin.com/) + * 仕方ないので、Ansible-playbookで問合せる形で対応 + * [wpsysadmin](https://www.wpsysadmin.com/)用にコマンドを作るしかないんじゃ +* WordPressの自動更新機能 + * wp-cliだと作業したときに、ファイルパーミッションがあってないときに更新されていないことがある。 + * www-dataアカウントとかログインユーザーをあわせる必要とか + * 一括でファイルパーミッションやオーナーを修正するコマンドを用意しておくとか、wp-cliに特別な権限が与えるようsudoしておくとか + * wp-cliをsudoでwww-dataユーザーで実行する方法。ちょっとこれ危なっかしいので調整は必要かも + * 💻 wp-cli executed by www-data user to avoid Linux permission issues - Alexandros Georgiou: +* もうwp-cliのコミュニティにlockfileを生成するように依頼するしかないんじゃないか +* パッケージ管理していたらできるけど管理外などはサポートされないし、もう一歩すすめられたらいいかなとは思う +* プラグインからサプライチェーン攻撃はくるから + * xzのこと + * ソーシャルハック怖い + * 手を動かす人がいないからこういうことが起きる + * 重要なソフトウェアをリストアップして、支援しましょうみたいな話がアメリカ?であったような? + * 脆弱性で崩壊する図: + * 評価されないために重要な箇所が放置されてしまいやすい + * curlに脆弱性がみつかったときに、ユーザーから24時間以内に対応するように求めるメールがcurlの作者に届いたと報告があった + * [オープンソース「cURL」の作者、大企業から「24時間以内にこの質問に答えるように」との無礼なメールを受け取る](https://www.itmedia.co.jp/news/articles/2201/26/news162.html) + * JavaScriptのライブラリの作者が、大企業からサポート費を払わない、メンテナンスが止まる + * [AppleやNetflixなどの大企業も使用するオープンソースライブラリ「core-js」をたった1人で維持する開発者が「もう限界だ」と支援を求める](https://gigazine.net/news/20230216-core-js-open-source-last-chance/) + * monGo, CentOS, Hasi-corp, Redisがクラウドサービスだけ利益を挙げるのに反抗してライセンスを変更 + * ライセンスを変更されてもその前のバージョンからフォークするのはいかがなものか + * 支援する仕組みがほしいよね + * オープンソースがインフラになっているのだから国家レベルでの対応が必要なんじゃないかな。サイバー攻撃対策もある +* 選挙にでるしかない + * [Debian社会契約](https://www.debian.org/social_contract.ja.html)でいくか。 + * 選挙の仕組みが古すぎて、アナログ + * できない人に合せているので、全部紙のやりとりになっている + * データでやりとりできない + * お金がかかる方式を維持したい人がいる + * 選挙にいく人を増やして文句をいっていかないといけない + * 選挙のアナログさはついていけない +* 消費税のはなし + * 年末調整はいるん?確定申告だけでよくない? + * 電動自転車12万円くらいってことは消費税12000円? 厳しい + * 10%はでかい + * 内税ではだまされた感がある。知らせずに税金を払わせたいという + +### 【小ネタ】CloudFlareに色々上げてみました + +* ドキュメントの検索機能が、真面目に作ると終わりそうにないので、気分を変えてCloudFlareへの移植を進めています。 +* ChatGPTPlusを契約するよりかなり安く済みますので、改善を継続すれば便利なんじゃないかと思います。 + * 普段使っている[GPTのサンプル](https://gpt-sample-sa.pages.dev/) + * [顔から柄を作る](https://pantu-wo-okure.pages.dev/) + * https://github.com/Yasuko/gpt_sample_sa + * https://github.com/Yasuko/pantu_wo_okure + * git submoduleでlibを呼んでいるのでそのあたりを参考にみてください +* メディアデバイスはどうやって? + * デバイスリストをブラウザからとってくる + +### Laravel 11すごいことになってた(かねだ) + +* いや、基本的に[Laravel](https://laravel.com/)なんだけどね? +* バージョンアップの時は、今まで使ってたのをそのまま使えばいいって書いてあるし、、、新しくプロジェクト立ち上げたら今まであったものが無かったりして、かなり大変、、、 +* Livewireのバージョンも上がってたりして、いったん頭をリセットする必要があった +* [サポート期間](https://laravelversions.com/ja) + * LTS(Long Term Support)などを使うとサポート期間が長い + * LaravelはLTSがなくなった? + * Laravel9が一瞬だけLTSで発表されて取り消された + * コミュニティの動向を調査する? +* 大きくかわってほしくなかったら、サポートを期間の短かいものを選ぶなど +* 保守的か先進的かを選定するとかは好み +* 自社コードが実験的なコードが多くて辛い + * おっと私の会社の悪口はそこまでだ + * 若手ならそれもありかもしれないが、ちょっと安定したコードを描くように苦言をていしたほうがいいかも +* LaravelはPHPのバージョンにサポートをあわそうとしている + * 2年ごとにバージョンをあげつづけますか? + * [CakePHP](https://cakephp.org/jp)に変えてもいいんじゃないですかと提案してもいいのでは。 + * 会社としてはLaravel-PHPで人を集めるという方針らしい + * Laravel-PHPで立ち上げで、安定すればCakePHPに移行するなどもありえる。 + * メジャーバージョンごとに、フレームワークが提供するコード更新ツールを使うとか + * ユニットテストをいれて安定性をくわえるとか +* Reactの最初と今ではコーディングルールなどから全部かわっている。 + * フレームワーク毎の作法があるが、それに沿った方がいいのか、独自路線にいった方がいいのか。 + * メンテナンス性を優先することがある。 + * 他の人と違う場合はそれを説明すればいいと思う。 + * README.mdなどで説明しておけばどうか + * ルールや公式は状況にあわせてカスタマイズした方がいいのではないでしょうか(テーラリング?) + * 特殊な例としてはsqliteは独自の[品質計画](https://www.sqlite.org/qmplan.html)を作成している。 +* 他の言語でもフロントエンドは過去にPHPがさんざんとおってきた道だってことがある。 + * [フロントエンドの真実](https://zenn.dev/achamaro/articles/27fe756bd24104) + * PHP4 +* 単一コンポーネント指向はしばらくそのまま? + * なまあたたかい目でみている +* 切り替えられるように話をしていればいいと思います + +### 【ネタ】変数は箱かラベルか(のがた) + +* 文系の学生にPythonプログラミングを教える目的で、[プログラミング入門者向けのテキスト](https://nogajun.codeberg.page/programming1/)書いてます +* 変数の説明で「ラベルみたいな」という言葉を使ったら「[それ、定数ちゃうの?](https://codeberg.org/nogajun/programming1/issues/6)」とツッコまれました +* そう言われるとそうなんだけど「変数は箱のようなもの」という比喩に違和感あるんですよ + * 違和感のある人たち + * 変数を箱ではなく付箋で説明してみた(初学者向け)#初心者 - Qiita: + * 変数「箱」に例えられがちな件について | PROCLASS BLOG: + * 議論とか + * まだたとえ話で消耗してるの? - K.Maebashi'sはてなブログ: +* 結局、なに使ったらいいんですかね + * 「比喩使うな」と言われればそれまでですが + * **【重要】月曜の授業用なので今日中に作る必要があります** + * よくわからないんだけど、算数や数学でxとかyとか変数をつかうので「数学や算数の変数みたいなもの」でいいんじゃないかな?どこにメモリ割り当てとか考えたくないから (fu7mu4) + * 「数学」の言葉を避けたいですよ… + * 数学にはニガテ意識のある人もいるのでさけたい + * 箱は微妙 + * Pythonなので変数名には英語使いたい。[PEP8](https://pep8-ja.readthedocs.io/ja/latest/)に沿わせたい + * appleではなくてTankaなどに抽象化してし + * 「変数とは、値や文字に名前がつけられるラベルのようなものです。」を変数を使わないようにかいて、いれもののを変数といいます。 + * 「なんかわからんけど入れます」にするか + * 型をカレーとして例えるのはいいかもしれない。 +* 例えをどうえらぶ? + * カレーはいいけどカレーを作ったことのない人がいる + * 大学の教室など、確実に体験したことのあるもの、知識にからめる + * 国→都道府県なども使える +* エラーで心をおれないように配慮しましょう。 + * 肯定ペンギンのイメージ + * エラーはプログラムをよくするためのヒントです。 + * エラーはコピーしましょう + * コピーすればネットで検索してもいいです。 + * コピーすればAIで調べられます。 + * [インターンで学生さんから「ここ、エラーで動かないので、見てもらえますか?」って相談された時、つよつよエンジニア秘技を教えた](https://togetter.com/li/2352312) + * 学生には優しすぎるぐらい優しくするのが丁度いいと思ってます +* lint + * textlint, markdownlintをいれたほうがいいかなとは思う + * 今は考えてとってだししている段階だから今はしていない + * あとからする。 + +### 教室にLTSPを導入したけど失敗したみたい・ノーメンテナンスで使える教室システムはご存じないですか?(のがた) + +* [LTSP](https://ltsp.org/)というのは[Linuxのシンクライアントシステム](https://ja.wikipedia.org/wiki/Linux_Terminal_Server_Project) + * という触れ込みだったけどv5.0で全部書き直されて**ファット**クライアントシステムになった + * ファットなのでOS全部を送り込んで起動する感じ + * LTSP導入した理由 + * クライアントPCの世話をしなくてもいい + * 同時にActive Directoryでユーザアカウント管理とユーザーのホームをNFSに集約したかった +* 問題はとにかく起動が遅い! + * ぶっちゃけLive CDイメージを送り込んで起動させてるような感じ + * そりゃ毎回ネットワークブートしてデカいイメージを読み込んでたら遅い + * NFSマウントしてイメージを起動するはずなのになぜ? + * Windows 7世代のPCをお下がりで使ってるのでマシン自体も遅い + * あと、LTSPがオールインワンでDHCPやNFSまで管理しようとするので使いづらい +* ということで相談 + * クライアントPCをノーメンテナンスで使えるオープンソースのシステムはご存じないですか? + * オープンソースなものが必要な理由は、自分がメンテすることとお金が出ないからです +* ちなみに検討中のもの + * クライアントPCはSSD 128GBに換装しているのでOSイメージを送り込んでローカル起動する方向で検討中 + * FOG Project: + * Clonezilla Server Lite: + * DRBL: + * DRBLはClonezillaのサーバー版だけど大規模教室じゃないから上のLiteでいいかなと思ってる + * Theopenem – A Windows Management Solution: + * これもイメージ配信ツールっぽい。オープンソースだけどWindows必要? + * 今のところClonezilla Server LiteかFOGかなという感じ + +### [雑談ネタ] 最近勉強・習得した技術・言語・フレームワークは何?(fu7mu4) + +みなさんが最近覚え ~~させられ~~ た言語やフレームワークをあげてみてください。これは雑談ネタなので話題があればスキップOKです。 + +* fu7mu4また最近OCamlに手を出すことにした + +告知 +--------------- + +### イベント名(開催日時) + +(イベントの概要をここに書く)