🍉

テックシーカーハッカソン2024に参加してきた

に公開

出張報告書みたいになってしまうのは、サラリーマンの悲しい性
https://techseeker.connpass.com/event/314983/

TechSeeker Hackasonの概要

関西で開催される個人でも参加できるハッカソン&展示会ではMaker Fairと並ぶ大規模なイベント。

6月8日-9日にハッカソンがあり、およそ一月で開発。

7月6日-7日に開催されるTechSeeker Collection(展示会)

個人的感想

これまで参加してきたハッカソンの中では一番参加しがいのあるものだったと思います。

チームメンバーの熱意

京橋のQuintBridgeなどで開催されるハッカソンにはちょくちょく参加していますが、だいたいどのハッカソンでも4人でチームを組んでも私一人が8割9割を作る羽目になってしまうことが多かったのですが、今回のチームは4人ともが最後まで熱意をもって開発することができました。

ハッカソン自体のレベル

また私のチームだけでなく、他のチームも意味わからんくらいアホなレベルの制作物を作ってきてまして、刺激を受けただけでなく、パクらせてもらうアイデアや設計もたくさんありました。

偏見かもしれませんが、webアプリケーション系って誰でも簡単になれるのでweb系エンジニアって平均レベルが低いです(もちろん凄い人は凄いです。ただ会社勤めができずフリーランサーになるような社会生活不適合者が多いのも事実)

そう考えるとハード系はある程度の頭脳が必要ですし、チーム制作が必須となってくるので必然的にレベルが高いエンジニアが生き残るのかもしれません

どこのチームに入ってもそれなりに楽しく作れたんじゃないかと思いました。

交流、人脈

エンジニアである以上、情報収集やアウトプットのために交流や人脈作りは欠かせません

もちろんここで言う交流とは婚活パーティーみたいな話して終わりみたいなものではなく、ちゃんと次につながる有益な情報交換ができたかという意味です。

趣味エンジニアとしては、自分の制作物を広めたいという思いがありますので、展示会やハッカソンが次にどこで行われるかという情報は非常に役にたちます。

今回のハッカソン&展示会でも終わった後の交流会でいろいろな人と話ができましたし、ブックマークも増えて有意義なものでした。

使った技術

1.SONY spresense

今回のハッカソンで最大の収穫は、SONY spresenseを試せたことだと思います。
https://www.sony-semicon.com/ja/products/spresense/index.html

少しお高いですが、機能的には充実?

執筆時点で定価税込6800円、秋月なら6000円ちょいです。
同じくwifiを使えるseeedstudioのESP32が1000円ちょいで買えることを考えると高く感じてしまいます。

しかし6つのMCUコアが入っていると考えると1コアあたりの価格はESP32と変わりません。

他にもGPSや音楽再生も可能なことを考えるとむしろコスパ良いと思います。

2.kintone

私の勤め先にも導入されていますが、素人が市民開発したアプリケーションが乱立しているので、情報ガバナンスがとれずめちゃくちゃなことになっています。
そして、以前の部署ではバカ上司からそんな素人が作っためちゃくちゃなアプリケーションのメンテナンスを押し付けられたこともあって、kintoneには良い印象を持っていませんでした。

しかしそれは私の勤め先の問題であって、kintone自体は悪いものではないはず

と思っていたのですが、やはりkintoneは所詮日本製のツールでした

骨の髄までエクセル管理表の思考が染みついた日本のサラリーマンが馴染みやすく作られているので、エンジニアとしては「なんでこんな作りになっているの?」となる部分が多々あります。

公式ドキュメントが読みにくい!

公式ドキュメントが体系立った説明になっていないので、かなり読みづらく理解しづらいです。
(私の頭が悪いだけかと思いましたが、他の人からも同じ感想を聞きました)

せめてnodejsやpythonのサンプルコードでもあれば多少は読みやすいかもしれません

公式ライブラリ rest-api-clientが使えない?

https://www.npmjs.com/package/@kintone/rest-api-client

今回Nuxt3(nodeバージョンは22)で開発しましたが、ローカルで動かす時にはリクエストが通るのですがvercelにデプロイするとリクエストエラーが出るという問題にぶち当たりました。

もうちょっと検証してみると、ビルド時に非推奨なライブラリを参照しているらしくnpm run build後にnpm run previewするとローカル環境でもリクエストが通りません。

最終的にはhttpsのURLを直接fetchする方法でやりましたが、公式ライブラリが使えないのは不便です。

httpsリクエストしか受け付けない

セキュリティを考えるとhttpsしか受け付けないというのは当たり前です。
でも、個人が趣味で開発するアプリケーションにそれほどのセキュリティが必要かと言われるとNoです。
(私の部屋の温度を誰かに読み取られたところで、困ることがあるとは思えません)
むしろセキュリティのために色々面倒な設定をしなければならないマイナス面が目立ちます。
セキュリティは多少弱くても面倒な設定なしに手軽に使えるようなDBがあったらそちらを使います。

1アプリ1テーブルしか使えない

上記の件は、多少の不便さはあっても慣れればクリアできるのですが、こればっかりは致命的と思います。
kintone自体が「非エンジニアでも手軽に使える」ことを売りにしているので、テーブル設計やモデル設計をしないことにしているかもしれません(エクセル文化の日本人には何でもかんでも1枚のシートに書くというほうが馴染みがあるから?)
ただ曲がりなりにもエンジニアしている身からすると、テーブルは関心ごとで分けるべきと考えていますので、1アプリに1テーブルしか設けられないのはデータベースを設計する上で致命的です。

fusion360

個人で趣味に使っています。

アップデートも頻繁に行われており、十分使いやすいのではないでしょうか

Discussion