Re:ゼロから始めるハッカソン生活

# はじめに
あけましておめでとうございます!
慶應大学 理工学部 情報工学科 B3のぽこちゃんです

今回は
2023年に参加したハッカソンのまとめと
初心者向けにハッカソンのすすめを書いてみました!

Xもやってるのでぜひフォローしてください
フォロバします!

https://twitter.com/tomato_boy77
# ハッカソンとは
短いものだと2日、長いものだと１か月くらいで
チーム3,4人(たまに個人)で何か開発してて、その出来を競おうというものです

**文法は勉強して少し書けるけど、何作ったらいいかわからん
という初心者にめちゃめちゃおすすめです!**

## 初心者でも参加できる?
**全然大丈夫です!**
ハッカソンにもよりますが、**当日即席**で運営側がチームバランスを考えて割り振りをしてくれることもあります

**できることがない、、、** なんてことはないです
かくいう僕も初めは他の人が作ったコード読んで
コメントつけたりとか、資料まとめたりとかしか出来ませんでした笑

:::note info
積極的にアイデア出しやタスクを求めるなど、参加姿勢が大事です
:::

# 2023年のハッカソン
時系列順で参加したハッカソン紹介していきます!

## HackGPT TOKYO (5月)
https://hackgpt.tokyo/

**人生初ハッカソン**　&　まともにプロダクト作ったの初でした
[A7さん](https://twitter.com/A7_data "A7さん")と2人で参加しました
今考えるとここが仲良くなるきっかけですかね笑

ここではNotionSammarizerなる
GPTのAPIを用いてNotionに保存した記事を勝手に要約して
見出し、3文まとめを作成してくれるというものでした

https://www.notion.so/Notion-Summarizer-README-eb1b3482bfa549fb81c39b0ba5b1f197?pvs=4

今考えてみると**ほんとにお世話になりましたって感じ笑**
ちゃんとClass作ってオブジェクト指向で書かれていくコードを眺めて
勉強させてもらってました

:::note info
エンジニアは皆、初心者にはすごく優しいと思います
:::

##  チャットボットコンテスト (6月)

https://contest.aichatbot.jp/contests/

こちらは完全に個人で開発をしていました
5月のHackGPTをうけて、langchainなどGPT周りを勉強していたので
ちょうどいいなと思って参加しました

ここではKEIO-GPTという
慶應大学の情報をGPTが回答してくれるLINEbotを作成しました

![スクリーンショット 2024-01-07 7.26.23.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1436034/755eaf04-ed49-08d9-dd62-53ef82a7ea3a.png)

https://www.canva.com/design/DAFiiKu7A2Y/iH3txpse-GxY9B5PpoK1pA/view?utm_content=DAFiiKu7A2Y&utm_campaign=designshare&utm_medium=link&utm_source=publishsharelink

実装としては
慶應大学関連のドキュメントをembeddingしてベクトルDB化してRAGで抽出してきて
プロンプトに組み込んで投げる
(なんかの記事通りに作ってLINEを組み合わせただけです)

**特別賞**をいただくことができ記事にもしていただきました👇

https://prtimes.jp/main/html/rd/p/000000056.000019803.html

## KDDIハッカソン (7月)
https://techplay.jp/event/905493

ここは初の**即席チーム**での参加となりました。
かなり悔しい思い出でいっぱいですね...

やはりハッカソンは
**モバイルアプリ** や **WEBアプリ**が多い印象

:::note warn
発表時にデモを見せることが多いので参加者に使ってもらえるように
デプロイがしっかりできる形態になりがちです
:::

当時PythonやJavaなどが集まってしまったので
**せっかくなら新しい言語使ってみよう!!** という話になりました
それがReactとの出会いでしたね

:::note info
Azureの環境もいただけたし
ご飯やお酒もいただけたので参加するだけでも爆アド感ありました
:::


結果としては振るわなかったものの
**新しい言語との出会い、開発の面白さ、知識の広がりを感じることができました**

## 技育キャンプ & 技育アドバンス(8.9月)

https://talent.supporterz.jp/geekcamp/

こちらも前回に引き続き即席チームでの参加

ほんとに優秀な仲間と出会い教わることも多々ありつつ
初めてのモバイル開発に臨みました

Latifyという
通知を後で見れるようにするリマインダー兼管理アプリというものを作成しました

![スクリーンショット 2024-01-07 7.25.04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1436034/75a6db11-4f6f-7c64-bb1f-6f16980510f8.png)



https://www.canva.com/design/DAFqrqvqIFU/6AcRMmD1KW4kSk5r-X_w7A/view?utm_content=DAFqrqvqIFU&utm_campaign=designshare&utm_medium=link&utm_source=publishsharelink


**誰もFlutterを触ったことがない**
という状態から始まった開発でしたが結果は
### 技育キャンプでメディアドゥ様から賞をいただき
### アドバンスの方でもサイバーエージェント様から賞をいただきました!!

https://x.com/geek_pjt/status/1697924873505685580?s=20

## 技育キャンプ (9月)
これまたちょっと苦い思い出ですね...
今回もまた即席チームで参加したのですが、

今度は**Unity**をメインで使うという笑
一体自分は何エンジニアなんだという感覚に襲われましたが
やってみたかったのでちまちま環境構築

そこでぶち当たったのがリソース共有で
gitで管理できない...

:::note warn
後々LFSでできると知りましたが、結局assetが大きいと無理そう???
:::

SourceTreeなるものの導入にメンバー全員つまづいて捨て置き判断
メイン開発の2日間でコードを分けて書いてローカルで結合とかいう
ハプニングに見舞われました😢
なんとか形になるものは作れましたし、

https://www.canva.com/design/DAFr-0GVMeU/BX9QqT3HRyfyPyPvDxqqkA/view?utm_content=DAFr-0GVMeU&utm_campaign=designshare&utm_medium=link&utm_source=publishsharelink

Unityにも慣れることができたので
後々開発する機会にも繋がりました(ハッカソンではないので割愛)

## 100プロ (9月)

https://100program.jp/

こっちは統計検定とモロ被りしちゃってあんまコミットできなかったなあと思います

:::note info
活動支援金で結局２万円くらいいただいてたので
他と比べてリソースは存分に使えました
:::


高専生と大学1年生と即席でチーム組んで開発しましたが
みんなPythonがメインだったので
使ってみたかった**Django**でStableDiffusionのAPIを叩くという
結構シンプルなものにしました

**2月〜また始まるみたいなので初心者めっちゃおすすめです!**
メンターもしっかりついて色々リソース、アイデア紹介してくれるので是非是非!

## NRIハッカソン (11月)
https://bitconnect.nri.co.jp/2023/

**こーれめちゃめちゃ楽しかったです!**


### おやつにお酒にめっちゃいいご飯
### 挙げ句の果てには宿泊施設に銭湯の入浴券までいただいて
朝までずーっと開発してました

![IMG_8951.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1436034/d445cc5d-79d3-9049-427f-72c53d4b6b68.jpeg)


結果としては
学生全然いなくて社会人ばっかのハッカソンで
開発というよりアイデアのレベルがめっちゃ高くてそんなに振るわなかったですけど

**自分がリード**として参加してReactで開発を進めていました

社会人とはいえ開発初心者も多かったので
ノーコードも受賞もしていたので悔しかったですね

反省としては
結構DB設計とかエンドポイントやCRUDの設計はしっかりしていましたが、
表に見えづらく印象として薄かったかな

https://protopedia.net/prototype/4881

:::note info
ハッカソンは開発のレベルだけでなく
デザインセンス、アイデアセンスまで問われます
:::

~~なんなら開発がどれだけレベルが高いかより
目に見えるデザインとアイデアさえよければみたいなとこある。あんまり設計は見られない~~
👆発表も短いと2分とかだし伝えきれないからね

# まとめ
プログラミングを勉強し始めてそこそこ経ちますが、授業とか本の写経ぐらいしかしたことなくて、
アウトプットでず----っと悩んでました
**もっと早く知っていれば、大学１年の時から参加していれば**と思うばかりです

エンジニアの皆さんは優しいです
きっとどこの界隈よりも初心者に対しては教育熱心でサポートが手厚いと思います

悩んでいるのなら一度パッと参加してみましょう!
2回目、3回目は思う以上に足が軽くなりますよ

今年は他にも
応用情報、統計準１級、TOEIC 925点や
長期インターン、企業案件など様々活動をしてきたのでそれもまた記事にしたいと思います

是非、Xの方フォローお願いします!

https://twitter.com/tomato_boy77

ご読了ありがとうございました