Jig.jp 第2回オフラインインターンシップAチーム 4日目!

本日ブログ担当のAチームの奈良高専から来たよーいちです!

 

毎日のように撮影している出勤画像です。今日はチームのくらっけが起きるのが遅く2人での出勤となりました。(僕たちが出勤No.1でした)

筋トレ

今日もなかやまきんに君Youtube動画を参考に筋トレから始まりました。

内容は【在宅ワーク用】1回5分で全身出来る世界で一番楽な座って ...www.youtube.com › watchになります。

 

 

昨日がすごくハードな筋トレだったため、今日は比較的楽でしたが、昨日の筋肉痛がすごく痛い一日でした。

座ってできる世界で一番楽な運動

開発

丸一日開発に使える日としては、最終日である4日目。昨日までは2ずつ2組でプログラミングを行う、ペアプログラミングで作業をしていたのですが、ここで新たな試みとして4人全員で一緒にプログラミングをするモブプログラミングを導入しました。大きなディスプレイをお借りすることができたのが大きいです。また、なぜか途中からテスト駆動開発(TDD)が自然な流れで導入されました。

 

初めは少しモブプログラミングで会話が思うように弾まずみませんでしたが、徐々にみんな慣れて形になってきました。どうやらテスト駆動開発はモブプログラミングと相性がいいようで、テストを書いていくうちにいつの間にかテストを書くのが実装よりも先になっていました。

 

LT

jig.jpの技術共有会の日だったということでその様子を13時から拝見させていただきました。

 

みんなのキーボード!

jig.jpの社員さんが普段使用しているキーボードについての発表でした。定番のHHKBから光るゲーミングキーボード、2つに分かれているキーボード、トラックボールがついているものやなかにはDvorak配列の自作キーボードまで個性豊かなキーボードがありました。

Dvorakキーボードは左側の中央の列に母音があって、よく使う子音が右の打ちやすいところにあるそうです。自作キーボードでカラフルで音がうるさいそうです。

個人的に気になったのは、2つに分かれたキーボードで、その2つの間にテンキーを設置したものでした。デザイナーの方だそうで、いろいろなショートカットを左手でテンキーで操作したりしながらマウスを操作できるそうです。

 

ちなみに僕のスタイルはPCスタンドを用いて、キーボードはAppleのMagic Keyboard + Magicです。下を向かなくて済むので視線が下にいかない上に、操作性がMacと当然合うので気に入っています。

 

画像生成AI DALL-E mini

最近話題のAIでの絵作成アプリケーションの発表でした。

「〜をするdenoくん」というお題で任意の入力の文字と元画像からAIで絵を生成するWebアプリを制作されたそうです。

まず、denoくんは固有名詞なので、そこを「夜に雨に打たれる白い恐竜」などという記述にして、deepLの力で英語に翻訳してAIで絵を生成するそうです。Deno Deployで公開されていましたが、Deno DeployのCPUは非力なので、そこはGoogle ColabのCPUパワーで生成しているとありました。それぞれは足りない部分があっても、無料のサービスをいくつか組み合わせれば作れる、いい時代ですね。

 

「ボーリングをするdenoくん」や、「DJするdenoくん」など、数多くの絵が描かれていました。

僕が気に入ったのは「この世界を救うために舞い降りた伝説のdenoくん」ですね。尻尾が月になっていて神秘的な感じが好きでした。

 

ボドゲのお供に開発を!

身近なところにも課題はあり、それは開発につながるというお題でした。発表者の方はボードゲームが好きなようで、その中でもおすすめのガンナガンというものがあるそうです。

https://sites.google.com/view/gunngun/game

2人用で、カードを用いたライフポイント(HP)のあるバトルボードゲームのようで(誤りがあったらすみません)紙や電卓などを用いてライフポイント(HP)の管理を行なっていたらしいのですが、どうもそれが面倒臭いと。そこで作成されたのがライフポイント管理アプリです。

初期値が30ptのライフポイント(HP)カウンタが2つあるようなアプリで、そのカウンタは2人にとって見やすいようにそれぞれ180度を回転させる機能がついていました。

フォントがいかにもゲームらしくてカッコよかったです。

TRPGとかでもHPやMP、SUN値などややこしい頻繁に変動する値の管理が面倒なのでそういうものも作ってもいいなと(既にありそうですが)思いました。

 

ちなみに僕はカタンの開拓者たちというボードゲームが好きです。実はちょうどJavaでPCで動作するオンライン対戦可能なカタンアプリを作成する予定を立てていたりしました。(完成は未定です)

 

ナゾトキCTFというオンラインイベントに参加してみた話

CTF(Capture The Flag: 旗取りゲーム)という情報セキュリティの知識で問題を解くゲームについてのお話でした。AttackチームとDifenseチームに分かれてFlagを奪い合うタイプや、問題を解いた量を競うタイプなどがあるそうです。

 

XSSSQLインジェクションなど基本的な攻撃を利用して答えを手に入れたり、ネットワークの解析や実行ファイルの設置などで答えを入手していくそうです。例では、コンソールからGETメソッドのクエリの法則を調べてリクエストのクエリパラメータをいじり、与えられたインターフェイスでは得られないフラグを取得する問題でした。

 

日頃から学校で学んでいる知識が使えそうな競技だと思いながら聴いていました。普段活かしにくい授業の知識なども使えそうなので、授業の知識を活かしたい方はぜひやって見てください。(他の場所で悪用すると不正アクセス禁止法などに引っかかります)

 
子供向けアプリ開発

2人のお子さんがいる方の発表でした。年齢もまだ幼稚園以下で、文字を少しずつ覚え始める年頃。子育ての成長の過程で子供さんのために制作したアプリを紹介していただきました。

 

1歳の頃。まだ話すこともできず周囲の音や景色を見て学習する頃です。そこで、PCでキーを押したらそのキーの日本語入力に対応するひらがなを大きく画面表示し、読み上げてくれるアプリです。これがあれば自然に音を聴いて覚える段階で音と文字の組み合わせも一緒に覚えることができますね。早めに文字を覚えるにはとてもいいアプリだと思いました。

 

5歳の頃。ひらがなを書く練習をする時代です。そこで文字の書き取り練習帳ならぬ文字の書き取りアプリを制作されたようです。薄い灰色のお手本の文字をiPadに移し、それをApple Pencilでなぞり、グレーのお手本の部分のうち、黒く塗りつぶされた割合で評価が「じょうずだね!」や「さあがんばろう!」と変わるようです。

しかし、子供も賢いです。なんとマスの全てを黒く塗り潰せば「じょうずだね」と評価されることに気づいてしまいました。Issueの発生です。

ならばお手本の字の範囲外がお手本の字の3倍以上塗りつぶされていれば「まっくろだよ!」と評価するように変更。

しかし、それでも対抗して、子供もある程度お手本の字に沿ってギリギリのラインで塗り潰します。

結果は、子供の勝利となりました。

 

ふわっちを支える( ?)おやつランドのおやつたち

jig.jpのおやつコーナー、おやつランドのおやつ人気投票の結果発表でした。

5位 パウンドケーキ

4位 アーモンドフィッシュ

3位 カルパス

2位 ようかん

1位 カントリーマウム

でした。

2年前は源氏パイだったそうです。

大人の味覚は子供と大して変わりませんね。(大人からも子供からも愛されるいいお菓子ばかりです)

 

僕のやらかし大公開

長年エンジニアを続けてきて、その中でのやらかしの数々を語っていただきました。僕はこの発表が一番面白かったです。

このやらかしは、あまり言っていいものなのかわからないので綴りませんが、やらかした後の対応がとても素晴らしいなと感じました。自分達が使っているところでやらかしたことがあったら、それはやらかすようなUIであるということ。ではそのUIをやらかさないように変更しようと、チェックを行なっているのが素晴らしいと思いました。

クラウドサービス系などの他社サービスのやらかしに関しては、仕方なく複数人で目視でチェックという形のようです。前の人がよしって言っているし次の人もいるからよし!ってやつですね。

キャッシュのやらかしについては、落とし穴が多いのでそれ専用の本でもあれば読んでみたいなと思いました。バックエンドで毎回同じイメージのレスポンスを返すのでは効率が悪いので、レスポンスのキャッシュを行い、返却することにしたというものでした。どうやらイメージの値のキャッシュではなくレスポンスのキャッシュを行い、そのレスポンスにはセッション情報も一緒にキャッシュされてしまっていたために他のユーザの情報が間違って表示されてしまったというものでした。大事故です。

普通ならそんな間違いしないだろうと感じるかもしれませんが、セッション情報はフレームワークなどを用いれば割と隠れてしまっているものです。キャッシュをする際には何をキャッシュしているのか、きちんと確かめなければいけませんね。

また、キャッシュの値が途中で変更されてしまうミュータブルなオブジェクトをキャッシュする問題なども紹介されていました。

僕はどこで何が変更されているかわからない状態が大変苦手なのでimmutable狂信者です。多少効率が悪くなろうともできる限りmutableにはしません。しかし、キャッシュは効率化を図るためのものです。キャッシュをする際にはimmutableの原則を破ってしまうかもしれません。気をつけましょう。

 

喧嘩

僕たちのチームは大変仲が良く、毎日ワイワイ言い争いながらペアプロやモブプロに勤しんでいます。

 

僕たちのチームはReactでフロントエンドを開発しているのですが、今日初めてフレームワークの罠にハマりました。Reactどうやらかなり頻繁に再レンダリングを行い、変数の更新がされるようなのですが、そのせいで保持しているWebSocketのインスタンスが頻繁に切り替わり、エラーが発生してしまうということが起こりました。useRefやuseEffectを用いて対応しましたが、あれを一人で解決するのは難しかったため、モブプロは偉大だと感じました。

 

チームメンバー4人のうち、3人がReactを使えたためReactを使用しましたが、熟練者は一人もいません。フロントエンドのフレームワークは熟練者の方がいないと落とし穴が多くて難しいですね。

 

僕はReactも使えるし、好きですが、Vue3+TypeScript+Sass派なのでNext+TypeScript+Emotion派のチームメンバーくらっけ君とはよく言い争っていますね。楽しいです。メンターさんにも主張が強いチームだと笑われました。

 

モブプロ中もセグウェイに乗っていたり、楽しいチームです。

 

ペアプロ+プロダクトバックログ+スプリント+TDD。なんだかエクストリームプログラミング(XP)らしくなってきました。

 

サーバーサイドは妥協案でdenoのサーバーサイドフレームワークFresh+TypeScriptを使用していますが、nodejsにするかなどももめましたね。僕的にはServer-Side SwiftのVapor一択なんですが。

 

このまま仲良く明日最終日も頑張りたいと思います。

 

最後に

本日はなんと僕の19歳の誕生日です。自宅以外で過ごした誕生日は初めてでしたね。みんなからは200円分ずつ奢ってもらいました。

 

みんなありがとう! サランへ!

2022夏jig.jpオフラインインターン3日目!Bチーム!

インターンシップ3日目です

 

開発前にセグウェイの練習をしました。前進と停止は自分だけでできるようになりました

朝からキツそうな筋トレをしている様子。自分は今回はパスしました

メガネ堅パンを頂きました


その後はごりごり開発しました

自分はマップ上にスポットの表示等の作業を行いました

外部コンポーネントの見た目を書き換えるのに苦労しました。(propsにあったのに気づかなかった)

各々黙々と作業を進める1日になりました

 

 

 

 

 

 

2022夏jig.jpインターンシップ Aチーム3日目

インターンシップも折り返し地点のオフラインインターンシップ3日目!

本日のAチームブログ担当は山本です。

体操

今日も朝から体操! ザ・きんにくTV様の動画をお借りして取り組みました。
昨日とは打って変わって、今日は世界一キツイ筋トレ(HIIT)。私は途中参加でしたが、それでも十分すぎるほどの疲労感でした!

バイシクルクランチ



続きを読む

2022年夏jig.jpインターンシップ Cチーム (3日目)

これはインターンシップCチーム3日目の記事です。

ラジオ体操

朝の運動はやはり、ザ・きんにくTVに限ります。

昨日よりも運動強度が高くて、みんな疲れてました(不参加の人もいました)。

インターン生の朝は遅い
開発するナリ

前日に引き続いて開発を進めました。

今日は主に状態管理、お散歩ルート表示、データベースからの履歴取得などを実装しました。状態管理について理解が足りず、うまく状態が更新されないことがありましたが、ぴ[高瀬]さんの助けを借りてその場しのぎ的な方法で対応しました。Store Providerなどを実装するといい感じにできるそうです。

開発遠景

17時から中間発表がありました。他のチームの現状を知ることができて面白かったです。

最後はスプリントの振り返りをしました。スプリントでやったことや反省点、今後したいことなどを話し合いました。

 

夜ごはん

私事ではございますが、今日の夜ご飯は歩かないソースカツ丼、すなわち普通のソースカツ丼を食べました。福井県は結構美味しいものが多くて居心地がいいです。

 

おわりに

今日で1回目のスプリントが終わり、明日から次のスプリントが始まります。まだまだ実装したい機能はたくさんあるので、チームで協力しながら頑張っていきましょう。

和田悠輝でした。

 

 

2022年夏jig.jpインターンシップ Cチーム (2日目)

今日のブログ担当のなりです。福井県出身でなので、福井のことも少し紹介しながら作りました!福井のことで気になることがあったら、何でも聞いてくださいね!


体操

朝はYouTubeのザ・きんにくTV(中山きんにくん)の「世界で一番楽な筋トレ&有酸素運動」から始まりました。

世界で一番楽な筋トレ

たった10分間ですが、タイトルとは裏腹にきつかったです。これ、結構ダイエット効果あるそうですよ。高校と比べて10キロ弱太ったからダイエットしなきゃ... とは思いつつ、何もしてないです。毎日10分で良いなら、やってみようかな。

開発

1日目はアイデア出しで終わりましたが、今日はweb画面をどのようにするかを紙で簡単に書いた後、実際に開発を始めていきました。作っているのは散歩アプリです。鯖江の西山公園を元に散歩ルートを決めました。マップの表示をどうするかということにかなり悩みました。明日はもっと進めるよう、頑張ります!

開発してるよー

サバエドッグ

会長の福野さんがサバエドッグを買ってきてくれました。

サバエドッグ

私は福井出身なので、何回か食べたことはあります。とは言え、久しぶりに食べました。この入れ物と割り箸に刺さった感じ、懐かしく思いました。ご馳走様です!美味しかったです!

そういえば、高校の学校祭で毎年売られていました。

店の写真を見るとソースカツ丼という文字があると思います。福井はソースカツ丼が有名なんですよ。福井でソースカツ丼と言えば、私はヨーロッパ軒とレストランふくしんを思い浮かべますね〜。あまり知られていないかもしれませんが、レストランふくしんは日本一になったこともあるんですよ!気になった方は行ってみてください!!

明日は、夏と言えばということで、吉田食堂のロングアイスクリームお願いします!!なんて言いたいところですが、無理ですね笑 あれを人数分買ったらどうなることやら...。気になる人は「吉田食堂 ロングアイスクリーム」で検索してみてください。テレビで何回も紹介されていますよ!

夕食

今日の夜ご飯はCチームのメンターぴさんが中華そばRyoに連れて行ってくれました!スープが特に美味しかったです!ご馳走様です!1番美味しいと聞いたやつは私たちが行ったときにはもうなかったので、また行きたいと思います。夏休みだし、実家から30分くらいなので、いつでも行けますね!

写真とるの忘れちゃった。

終わりに

色々分からないことが多いですが、メンターの方に聞く、検索するなどして、まずは明日の中間発表に向けて、頑張っていきます!

2022jigjp夏インターンAチーム

jig.jpオフラインインターン2日目です!

 

本日は、昨日話し合ったwebサービスを形にするべく、いよいよ開発が始まりました。

朝から筋トレで疲れながらも開発をしました!

開発をしているとあっという間にお昼ご飯の時間になりました!

お昼ご飯とても美味しかったです!

開発や話し合いを一日中していてとても和気あいあいとした雰囲気で出来て良かったです!



 

 

2022夏jig.jpオフラインインターン2日目!Bチーム!

インターン2日目です!本日のBチームのブログは北九州高専のまえかわみちゃこがお送りいたします🍊

 

午前

少し早めに来てしまったのでセグウェイの練習。

昨日から結構乗れるようになってきました。このインターン期間中にはプロになりたいですね。

すでに乗りこなしてるつよつよもいました。はいプロ。

 

みんなが集まったらラジオ体操!という名の筋肉体操!

力はパワー!いや〜楽しいですね!

真剣に筋肉体操に勤しむ高専生たち

体操が終わったら開発です!健康的!

私たちのチームは役割分担を決めて初対面技術を調べたり実装方法を考えたりしていたら時間が過ぎてました🤔

 

お昼ご飯

お昼ご飯は近所のカフェのお弁当です!カフェでお弁当?って思ってたらめちゃくちゃ美味しかったし見た目よりボリュームありました。

ご飯が進む味

開発中のチームメンバーを置いて先に食べる(食べ終わった)3人

 

午後

お腹も満たされたしゴリゴリ開発💪

どのチームもReactを使ってるようでちらほら苦戦してたら似たようなことをしていたりする会話が聞こえてきました。

中には「イマドキだね」「イケてる」という褒め言葉も。おしゃれなコードへの褒め言葉は洋服と同じと学びました。

2日目はまだまだ元気な開発現場

 

途中で福野さんからサバエドッグの差し入れも!

お肉屋さんのささき。私は大きな声で「さささ」と読んでしまいました。

ちゃんとご飯が入っててしっかりカツ丼でした!すごい!美味しい!

チームメンバーの中で真っ先に食べてしまって食い意地を発揮してしまいました。温かい方が美味しいよ。

美味しそうに食べる後輩くらっけ

 

今日の開発終わり!

今日の開発も一区切りついたところでお待ちかねの晩ごはん!

またもや食い意地が花丸満点、私は写真を撮り忘れました。愚か。

メンターさんにご馳走になりました。美味しかったです。

食後は運動!西山公園の展望台へ。綺麗な景色!写真はブレブレ!私は写真を撮る才能がないようです。

思ってた5倍くらい歩いて明日の筋肉が危ういです。パワー。

 

明日もこのままいい感じのペースで開発を進めていきたいですね。

今日の反省「力はパワー」「ご飯の写真は撮ろう」「夜景は夜景モードで📸」

ありがとうございました。