Month: October 2020

自己紹介とIoT相談会

今回初めての投稿なので自己紹介させていただきます。 CS学部3年の五味滉人です。出身は長野県です。趣味はゲーム、バレーボール観戦です。よろしくお願いします! 10月22日(木)に創成課題でIoT関連の事を行う3年生4人と4年生の杉本さんでIoT相談会が行われました。 みんなやることがだんだん決まってきたので、創成課題が進むように頑張っていきたいですね!

カオスエンジニアリングとは

4年の新宮です. 今回は現在自分の研究の検証等でカオスエンジニアリングツールを用いているためカオスエンジニアリングについて書いていこうと思います. カオスエンジニアリングはわざと本番環境で稼働している分散システムに障害を発生させることで実際に発生しうる障害に対処できるように事前に準備を行う手法のことを言います. カオスエンジニアリングは動画配信サービスを提供しているNetflixが用いていることで有名です. 今日の分散システムでは冗長化されており, さらに自動復旧機能を持つように設計されている事が多くそれらが正しく機能するかを確認するためにテスト環境ではなく, 本番環境で障害をわざと発生させます. また, 発生させる障害も様々でノードやコンテナの停止からネットワークの遅延やパケットロス、CPUの負荷などがあります. わざと障害を発生させるためのソフトウェア群をカオスエンジニアリングツールと呼び, Netflixが開発したkubernetesコンテナに障害を発生させることのできるChaos Monkeyが有名です. ちなみに自分の研究ではDocker Compose上に複数のコンテナを稼働させてそれらの疎通を断ちたかったためPumbaというカオスエンジニアリングツール用いています. 分散システムでは障害を発生させないのではなくて障害が発生しても問題なく稼働し続けることができることが大切であるため, 障害が発生した際の挙動を理解することのできるカオスエンジニアリングという手法が有効であるということが分かりました.

自己申告フォーム作成

私は、記入してもらった自己申告フォームをPHPにデータを入れてMySQLを通して、最終的にスマートフォンに感染者の症状などを公開するアプリの作り方を調べている途中です。

デジタル・コミュニケーションの課題とは?

今回は,最近に読んだ書籍の中から特に参考になった内容を紹介します.書籍のタイトルは「ソフトウェアの世界でキャリアを築く Making it Big in Software」です.著者はIBMでAI戦略のCTOであり,IBM FellowでもあるSam Lightstone氏です. 今回はこの中の9章「組織で働く」の内容を紹介してみます.この章では,組織の中で働くために必要なスキルを紹介しています.例えば,信頼関係の構築や交渉の基礎,コミュニケーション術です.もし気になれば,Amazonでの購入や大学図書館のデジタルライブラリでの閲覧をおすすめします. 今年はCOVID-19の影響もありデジタルコミュニケーションを活発に行っていますが,そのデメリットが触れられていたので抜粋しました. 周りを味方にするには? デジタルコミュニケーションの罠 人から協力を得たり、プロジェクトや会社への要求を周りに理解してもらうには、いわゆる「説得力」が重要な能力となる。納得がいくよう正確な情報を駆使することなどは、説得力の一部でしかない。人を説得するだけでは不十分で、最終的には人を「味方につけ」たいのだが、それにはお互いの間に情熱や親近感、そして信頼が欠かせない。日常生活でも特定の人からのアドバイスを尊重するのは、その人への信頼があるからだ。信頼は事実や数字の根拠と同じくらい、いやそれ以上に大切だ。 信頼は数々の成功の積み重ねの上に成り立ち、多くの人との係わり合いを通して築かれる。それは、個人的に膝と膝を突き合わせながら行われる。電子メールでは出来ないやりとりだ。製品機能に関する新しいデザインやマーケティング提案書など、自分の意見やアイデアに賛同を得たいとき、その説得を電子メールだけで行ったらどうなるか。テキストメッセージには心もなければ魂もないので、当然、相手からの賛同は得られない。説得するなど到底無理だ。 賛同を得たいときには、面と向かって相手と話そう。アイデアを直接説明できるだけでなく、質問や懸念事項もその場の話し合いで解決できる。現状の話題を超え、話し合いを通して別の発展的なアイデアが生まれる可能性もある。人々を味方につけたいなら、たった5分でも直接会う(F2F, Face-to-face)ほうが、幾日にわたるメールのやりとりに比べ圧倒的に効率が良い。もちろん、5分間のディスカッションだけで(一時間であっても)、確かな信頼を一度に築けることはない。しかしF2Fは電子メールではできない信頼を築くための足がかりになるだろう。 ソフトウェアの世界でキャリアを築く Making it Big in Software (Sam Lightstone / 2012 / オーム社 / P151-152) 読んでみて改めてコミュニケーションがオンラインにシフトしたことで信頼関係の構築が難しくなっている気がしました.半年間のオンラインコミュニケーションで言語化できていなかった課題が明確に分かった気がしました. 後期は卒業課題と創成課題が対面での実施になったことで,F2Fの場面が前期よりも増えています.対面を通じて,新たに配属された3年生を含めて研究室内の信頼関係がさらに向上すると良いと思いました.

はじめまして

今回の初めての投稿なので自己紹介させてください。 CS3年の池田咲也です。出身は福島県の海辺の方です。冬はあまり雪が降らなくて夏は涼しいので住みやすい地域なんですが、田んぼしかないです。電車も1時間に1本しか走らないので若者には住みにくいかもしれないですね。 好きな食べ物はおばあちゃんの作るカレーライスです。週5でもいけます。ただディズニーランドのハングリーベア・レストランにあるカレーライスはおばあちゃんに匹敵するくらい美味しいので食べてみてください。これはおばあちゃんには内緒です。 串田研究室に入った理由は、高校の時にIoT関連のプレゼン発表をする機会が何度かあって、IoTに興味を持ったので入りました。ただプログラミングが苦手でハードウェア知識が皆無なので、これから串田先生や4年生の方々に色々教わりたいと思ってます。よろしくお願いします。

PCは暖房説

CS学部3年生の秋山佑太です。最近部屋が冷えて布団から出れなくなってきました。遠隔授業になってから部屋から出る機会が減ってゲームする時間が過去2週間で60時間を超えていました。夏の間はエアコンが必須でしたが秋冬ごろになるとPCが暖房の役割をしてくれてゲームもできるし、暖房代も浮いて一石二鳥で最高です。好きなゲームはロケットリーグとLOLです。ロケットリーグは元プロだったので興味あったら声かけてください、教えます!よろしくお願いしますm(__)m

テーマに悩む話 -巨人様のお足元にて-

研究然り、取り組むテーマを決める事って本当に難しいですよね。 自分も何が最善かなんて1mmもわかんないです。多分皆がそう思っているはずです。「周りの人や先輩がこうだから」に囚われず、時間を掛けて、周りの人を使いながら決める事が出来れば理想だと思っています。 え?そんな事分かってる? まぁ、そうですよね・・・ハイ・・・ 本題 CDSLの岡田です。他のメンバーの投稿にもある通り、3年生が加入して研究室も賑やかになりました。学年の垣根に囚われず、フラットかつ良好なギブアンドテイクの関係を築けていけたらと思います(優秀な方々が多いので自分の出番はないと思いますが)。 さて、本学にて研究室に所属した3年生は「創成課題」という形で研究室で活動を開始します。内容は研究室により様々ですが、本研究室では「実際に自分でテーマを決めて活動を行い、最終的にテクニカルレポートを執筆する」という4年次に取り組む卒業課題に近い活動をします。 という事で、テーマを決めなくてはならないのですが、3年生と一緒に活動しているとテーマの決定に苦戦している方も見受けられます(完全に主観ですが)。テーマを決める事ってとても難しい事だと思います。自分も3年、4年と何とかテーマ決めを行ってきましたが、本当にそれで良かったのかと問われると全く自信がないです。 なので、本記事では「テーマ決定」あたりに焦点を当てて本研究室の活動で出てきた案だったり、調べてみた結果に対して所感を述べさせていただいて、最後に自分の拙い感想を書き殴り、まとめとさせていただきます。内容の正否の判断は読んでくれた皆さまにお任せします。そうです。需要が良くわからない前回の自分の記事に引き続き、今度は感想文を垂れ流そうとしている男です。 1.自分の興味のある分野・技術を追求する 興味があるからこそ調査する意欲も高まるというものですし、調べていく中で「〇〇の分野でこういう事をしたい」という気持ちが新たに湧きやすいはずです。でも、興味のある分野はあるけどその中で何にするかという所も悩みどころですよね。そういう時は大体、その分野で普及している技術とか今現在の状況やその実装手法を調べみるのが一番ベターではないでしょうか。そんなのに勝てるわけないと思う気持ちはとても分かりますが、別に勝とうとしなくてもいいのかなと思います。同じような結果になっても、それが既存の手法とは全く手法で実現されているなら十分な成果だと個人的には思います。冷凍食品って、結果的に食べ物が完成するという点では人が料理するのと同じなのに偉大だと思いませんか?最近のはどれも美味しいですし・・・。 2.問題点ベースで考える 現状において未解決な点に対して自分なりのアプローチをして解決策を出すというタイプだと思います。取り扱う問題さえ定める事が出来れば、とりあえずテーマは決まったようなものですし、あとは自分の提案が出せれば波に乗れそうです。じゃあ、問題点をどう探すか?という所になるのですが、一番は先駆者の方々の論文を読んでみる事だと思います。「論文は知識の最終産物ではない」という言葉をどこかで見たのですが、どの論文でもどこかしら不十分な部分というのは存在するものだと思います。自分のテクニカルレポートもそれはそれは穴だらけでもはや無ですね。ハハハ・・・・精進します・・・。 そんな先行研究の不十分な所をテーマにしてしまおうという事です。要はちょっとした粗探しです。でも、既存研究への敬意は忘れないでくださいね。 3.異なるジャンルへの応用を考えてみる 技術や手法の純粋な進歩・改良というよりは、あくまでITを手段として考えて、ITとはまた別ジャンルにアプローチを掛けるというやり方だと思います。2のアプローチに近い気がします。「正直な所、純粋に技術や手法の研究をするのはちょっと・・・」みたいな感じでも、自分が好きなジャンルの問題点をベースにすれば、光明は見えてくるのではないかと思います。後は、研究室で取り扱っている技術・知識範囲から遠くなってしまうとサポートが受けづらくなってしまうのでそこは注意が必要かもしれないです。あんまりにも遠いと「ケテ・・・タスケテ・・・」と手を伸ばしても、誰もその手の取り方が分からないなんてことになるかも・・・。 4.自分のやりたい事をやる 究極的にはこれですね。 もしかしたら、「こういうことをやりたいんだけど、よくわからないし、変なテーマかな・・?」と秘めたるものがありつつも、自信が持てなかったりで中々表に出せないという状況の人も、もしかしたらいるかもしれません。とりあえず、周りの人に話してみるのはどうでしょうか。勇気のいる事だとは思いますが、人に相談を持ち掛けられて、嫌な気持ちになる人間ってそういないはずです(その人の状況にもよりますが)。本研究室に限った話をすれば、事前に申告すれば先生は時間を取って1対1で相談に乗ってくれますし、隔週で学生間で相談する機会があります。まだ先生や大勢に話したくないのであれば、同じ研究室のメンバ―と個人的に議論するのも良いと思います。情弱な自分で良ければ相手になりますので気軽にご連絡ください。 終わりに(蛇足) 「テーマを決める」というのは研究室の活動において最初にして最難関の一つなのかなと思います。調べてみると他大学では、「教授から与えられたテーマをやる」であったり、「決められたテーマの中から選ぶ」といったやり方をしている研究室もあるようです。あとは「先輩方のテーマを引き継ぐ」とかですかね。 上記のような場合、不本意なテーマをやらざるを得ない状況になる事も多いようです。その点、自由に自分で設定できるというのはこのような状況を避ける事が出来るので良いですね。しかし、自由に選べるからこそ、どうすれば良いか分からない取った事も起きやすいのかなと思います。かくいう自分もそうです。自由に選べるってすごい幸せな事なんだとは思うんですね。 テーマを決めれたとしても、次にはそれに対しての研究や開発が待ってます。おそらくテーマ決め以上の時間が必要になるはずです。なので、テーマ決めはたくさん時間を掛け、さらに周りの人を使いながら決めればよいかなと思います。テーマがすぐ決まらない事は恥ずかしい事じゃないはず・・・はず。 巨人の肩の上に立つ 先人の積み重ねた発見(成果)に基づいて、新しい発見を行う事という意味で「巨人の肩の上に立つ」という言葉があるそうです。研究室で活動するからには新しい発見とか発明をしたいですよね。僕もそう思います。 なので、肩に乗せてほしいんですけど、巨人の方々はすぐ登れるようにしゃがんでくれないんですよね。ケチですよね。自分で登って来いってことなんでしょうね。すごい時間が掛かりますし、本当に肩まで登り切れるかもわかりません。 だから、テーマ決めというか、どの巨人に登るのかを吟味するのは当然の権利だと思います。巨人様達のお足元で存分に迷わせてもらいましょう。と、とても寒いポエミーな事を書いてこの駄文を終わりにしようと思います。 拙い文ですが、ここまで読んでくださり本当にありがとうございました。 そろそろ、他メンバーみたいに真面目な記事を書かねば・・・

研究室で3台目のサーバーを組み立てる

2年目となる串田研には11人の3年生が入りました。書いている自分も3年です。これで計25人の研究室となります。これだけの人数集まると、2台のサーバーでは足りないだろうということで、サーバーを増設することになりました。VMware ESXiを用いてサーバー内に様々なOSが使える環境、いわゆる仮想サーバーを作ります。28日、30日の2日間で途中までですが、サーバー構築を行いました。 9月28日(月)の午後にサーバーの組み立てを行いました。 29日に行ったこと マザーボードにCPU・メモリ・グラフィックボード・電源装置を繋げる モニタに接続し、BIOSを起動 メモリが認識されているかチェック 電源を落としてCPUファンとSSD(M2)の取り付け BIOSを起動してSSDが認識されているかチェック 組み立てに使うパーツは以下を用意しました。 CPU:AMD Ryzen 9 3950X メモリ:DDR4 3200Mhz 32GBを4枚 マザーボード:PRIME X570-PRO グラフィックボード:GEFORCE GT710 電源装置:RGB850W SSD:SiliconPower PCIe Gen 3*4 M.2 2280 RyzenシリーズのCPUはゲーミングPCにも使われるもので、供給も多く価格も比較的安いです(それでも、10万円くらいします)。CPUを設置したあと、グリスをはじめて塗りましたが、やり方がわからずネットで調べることにになりました。 メモリは研究室のメンバーが同時にアクセスしてきても処理できるように多めに設置します。ちなみに自宅にある1年半前に買ったゲーミングPCのメモリは8GBが2枚です…。 BIOSでメモリとSSDが認識されていることを確認してこの日は解散となりました。プロジェクタで画面を映していたため、SSDが反応しているかどうかBIOS上で見つけるのに手間取りました。皆さん、プロジェクタを使うときは電気を消して操作しましょう! 9月30日(水)は午前から午後にかけてケースファンの設置とサーバーの環境構築を行いました。 30日に行ったこと マザーボードと電源装置をケースに取り付ける ケースファンをケースに取り付ける ESXiのISOファイルをダウンロード ISOファイルをUSBにフォーマット USBからサーバーを起動して、ESXiをSSDにダウンロード ケース内の配線整理 電源がOFFになった後に自動で起動するようにBIOSの自動起動設定を有効化 IPアドレスの固定 IPアドレスにpingを投げてテスト この日は、pingで応答があることを確認して解散しました。 ESXiのISOファイルのダウンロードに会員登録が必要なのですが、前年度に用いた研究室のアカウントを探すことに時間をかなりかけてしまいました。結局、個人のメールアドレスで登録すればよかったみたいです(先生と先輩に相談して判明しました)。 ISOファイルのUSBフォーマットにも手間取りました。普段私が用いている「Rufus」の最新版がなぜかダウンロードできなかったので、一つ前のバージョンをダウンロードすることで対応しました。ddコマンドが使えれば問題なかったのでは…? ここまでで、もう午後2時を過ぎていました。 さらに、SSDからESXiを立ち上げたとき「CPU Fan Error!」が発生しました。 CPUファンとケースファンをCHAファンの給電ポート一か所から給電するよう配線していましたが、マザーボードの説明書を読み返すと、マザーボードにCPUファン用の給電ポートがあったので、CPUファンの給電プラグをマザーボードにつないだところエラーが解消されました。説明書はちゃんと読むべきですねw。「CPU Fan Error!」はCPUファンの回転数が閾値より低い時に起きるエラーらしいので、回転数を計測できない場所につないだときにも起きるみたいです! pingの確認を終えたのは、午後5時過ぎでした… 今回のサーバーの組み立て会では予定を立てずにただ集まって始め、メリハリなく作業をしていたので、時間をかなりかけてしまいました。予定を立ててから行うべきでしたね。それに相談をすることで事態が進むことが多かったので相談は大事だと思いました。

IoT講習会

皆様こんにちは!CDSL新メンバーの河竹です。 本日10月1日(木)、IoTに興味のある3年生のために4年生の杉本さんと3年生の希望者4名によるIoT講習会が開かれました! 杉本さんには電子回路の部品やブレッドボードの使い方、マイコンの説明などをしていただき、3年生はサポートを受けながらESP32にmicropythonのファームウェアを入れるところからLチカまでを行いました。 今後もこういった講習会を開きつつ、研究室のみんなが自分の納得のいくものを作れたらいいですね!