diff --git a/content/histudy/2023/09.md b/content/histudy/2023/09.md new file mode 100644 index 00000000..07e3b86e --- /dev/null +++ b/content/histudy/2023/09.md @@ -0,0 +1,134 @@ +--- +title: 姫路IT系勉強会 2023.09 +date: 2023-09-16 +categories: + - 開催履歴 + - meeting-log +tags: + - 姫路IT系勉強会 +--- +* 開催日: 2023/09/16 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/) +* [Writing a C compiler in 500 lines of Python](https://vgel.me/posts/c500/) +* [社団法人の電子公告が「Telnet」で行われる珍事発生、早速「Tera Term」で読んでみる - やじうまの杜 - 窓の杜](https://forest.watch.impress.co.jp/docs/serial/yajiuma/1528962.html) +* [VS Codeをフォーク | AI時代の最強コードエディタCursorの使い方を紹介|ChatGPT研究所](https://chatgpt-lab.com/n/n4ee439fcb692) +* [FFmpeg Explorer!](https://ffmpeg.lav.io/) +* [wavacity](https://wavacity.com/)でaudacityがWebで動かせるからしい。 +* [OpenTF、TerraformのフォークをGitHubで公開 | gihyo.jp](https://gihyo.jp/article/2023/09/opentf-fork) +* [OpenSSL 1.1.1 End of Life - OpenSSL Blog](https://www.openssl.org/blog/blog/2023/09/11/eol-111/) +* [Microsoft、「Visual Studio for Mac」を終了 ~サポート期間はあと1年 - 窓の杜](https://forest.watch.impress.co.jp/docs/news/1527623.html) +* [Unity のプランの価格設定とパッケージの更新 | Unity Blog](https://blog.unity.com/ja/news/plan-pricing-and-packaging-updates) + +お題 +--------------- + +ここの下にお題(相談したいこと、発表したいことなどなんでも)お書きください。 +※ 記載するお題は参加者一人につき1つだけ記載するようにお願いします。 +※`### <ネタ>+(名前)`の形式でお題を記載してください。 + +### プロジェクト管理はみんなどうしてますか(ぎっぽれ) + +* 一人でプロジェクトを回しているが他社はどうしている? +* プロジェクトの規模は一人で一年くらい。 +* Windows WPFや組込みLinuxで [IoT](https://www.keyence.co.jp/ss/general/iot-glossary/iot.jsp)のセンサー情報をAWSに送信するといった内容 + * [.NET 7 ドキュメントのWindows Presentation Foundation | Microsoft Learn](https://learn.microsoft.com/ja-jp/dotnet/desktop/wpf/?view=netdesktop-7.0) + * [Windows フォームとは - Windows Forms .NET | Microsoft Learn](https://learn.microsoft.com/ja-jp/dotnet/desktop/winforms/overview/?view=netdesktop-7.0) +* プロジェクトの設計からテストまで、改造が多い + * 一人プロジェクトはどのようにタスクを管理している? + * 一人でやっていると仕様が残っていないことがある。 + * みためも自分一人できめてそれで問題がない + * アジャイルなどはあまり必要がない。 + * [アジャイル | 用語解説 | 野村総合研究所(NRI)](https://www.nri.com/jp/knowledge/glossary/lst/aa/agile) + * ドキュメントしているだけで偉い + * ドキュメント工数が計上されているだけですごい + * レビューができていない + * コードレビューは複数の人がいないとできない + * そもそも設計のレビューができていないこともある。 +* 別プロジェクトの例 + * PHPでECサイトの構築 + * 複数人 + * デザイナーなども絡んでくる + * 複数人だと進捗管理などもある。 + * お客様のディレクション、方向性のすりあわせなど + * 引き継ぎなどができる? + * 要求や要件が文書にする? + * 要件や要求が多きくなった場合に実現できなくなることがある。 + * 夢が膨らませがち。夢見がちになることがある。 + * 作業の洗い出し +* プロジェクトの質、要件によって問題がない +* Web系ならAdmin LTEというもので画面のテンプレートをつくる + * [Free Bootstrap Admin Template - AdminLTE.IO](https://adminlte.io/) +* アジャイルなどはチームなどプロジェクトによって合う合わないがある。 +* メトリクス測定をすればいいのでは? + * [メトリクス計測 | 静的解析ツール・単体テストツール C++test | テクマトリックス株式会社](https://www.techmatrix.co.jp/product/ctest/staticanalysis/metrics.html) + * [Visual Studioのコード分析(MS Learn)](https://learn.microsoft.com/ja-jp/visualstudio/code-quality/code-metrics-values?view=vs-2022)を参考にしてみてはいかがですか? + * [循環的複雑度](https://ja.wikipedia.org/wiki/%E5%BE%AA%E7%92%B0%E7%9A%84%E8%A4%87%E9%9B%91%E5%BA%A6) + * レビューはこういったメトリクス測定でしばればいいんじゃないでしょうか? + * その他、リントなどで書き方などのコーディングスタイルをそろえるなどもできる。 + * 参考:[C# at Google Style Guide 日本語訳](https://gist.github.com/hideyukisaito/d298075c63b97f56825b0d413d8e4dc5) + * [.NET ドキュメントの C# のコーディング規則 | Microsoft Learn](https://learn.microsoft.com/ja-jp/dotnet/csharp/fundamentals/coding-style/coding-conventions) + * Google style guideは他言語もあります。 + * レビューは、コーチングするなどの効果はある。 +* 一人仕事の例として静的解析ツールのお守りの想定 + * Coverityやfacebook infer等は、ビルド対象を解析する=ビルド環境(EC2?)が必要 + * [Coverity 静的解析(SAST)ソフトウェア | Synopsys](https://www.synopsys.com/ja-jp/software-integrity/security-testing/static-analysis-sast.html) + * [Infer Static Analyzer | Infer | Infer](https://fbinfer.com/) + * ビルド環境でビルドするスクリプトがある + * ビルドスクリプトのメンテ(数年)がある + * ビルドスクリプトのメンテできるのが一人 + * ドキュメントが少なくなりがち、動機がない + * ひとりよがりになりがち + * ビルド環境が複数あり、同一環境じゃなくなる可能性 + * この仕組みは役に立っている? + * CI/CDになっている? + * 静的解析の指摘を有効に使えている? + * リスク対応が必要 + * コスト面から環境維持のコスト + * 持続可能性,再現性の面から、ドキュメント化、メンテナの増加、環境のコード化などがある。 + * 例えばDockerfileやAnsibleなどで設定ファイルから環境を構築すること。 + * [Docker: Accelerated Container Application Development](https://www.docker.com/) + * [Ansible is Simple IT Automation](https://www.ansible.com/) + +### GPTを使用してOCRをしてみたらいい感じでした(守屋) + +* [Gihyoの記事](https://gihyo.jp/article/2023/07/programming-with-chatgpt-04)を参考にReact+nodejsで、GoogleVisionAPIで文字認識+OpenAIでOCRを作ってみました +* [Function Calling](https://platform.openai.com/docs/guides/gpt/function-calling)を使うと、GPTの処理結果を任意のオブジェクト形式で受け取る事ができる + * プログラムの一部としてGPTを明確に埋め込みやすくなる + * 戻りデータ形式を任意で固定化出来るので、標準APIのように仕様に左右されない + * 複数の処理をまとめた内容も定義できるので、APIの呼び出しよりコストが下がる +* 本来なら検出された文字の座標情報を、項目に当てはめる処理が出る +* 検出された文字列が何に該当するかをGPTが判断する + * 請求書、領収書、納品書、名刺、ハガキ、など書類の種類もGPTが判定 + * オブジェクトに当てはめる方法等、日本語で定義できる + * 自然言語の定義ファイルで、対応可能な書類の数を増やせる + * 曖昧な情報、状況でもGPTがいい感じに判断し、情報を得ることが出来る +* 無い情報の対応を明示してないと、嘘情報が埋まった物が返る + +### (小ネタ)都道府県スロット的なものを(守屋) + +* [都道府県スロット](https://atatata.yasukosan.net/) +* 47都道府県をランダムに1つ表示するだけの物を作りました。 + +告知 +--------------- + +### イベント名(開催日時) + +(イベントの概要をここに書く)