1.はじめに
エンジニアという人たちはQiitaのようなプラットフォームで記事を書いて公開しているというのを知った時、仕事以外でも常に勉強をしてアウトプットもしてすごい世界があるんだなと感心した。でも非ITながら市民開発者として活動しているとこういう記事にお世話になったことはもちろん、周りの人に共有してやう立ててほしいとか、自分の知識整理だとかアウトプットをしてより理解を深めたいという感情に共感するようになっていた。それでもこれまで文字にしてきたものは社内勉強会で共有するスクショや短い文章を継ぎはぎした簡単なプレゼン資料程度だったのだけれど、今回いろいろやってみて「記事にしよう!」となぜか頭に浮かんだので思いつくままに書いてみようと思う。なお自分の書いたコード公開等どこまでやっていいのか理解できていないが、それを調べていると記事がいつまで経っても完成しなさそうなので単なる感想文として公開を優先することにする。
2.今回のお題 緯度と経度から住所を調べる
会社の人から緯度と経度から住所を調べられないかと相談があった。
よくわからなかったのでまずはそのままChatGPTに相談をした。すると逆ジオコーディングというものであることとその概要、おすすめのウェブサービスまで一気に出てきた。少し前ならgoogle検索でそれっぽいキーワードを調べて、まずはどのリンクをクリックするかを選び中身をサラッと読んでそれを二、三回繰り替えしていたのだから便利な世の中になったものだ。
そして選んだのはこちらの組み合わせ。一枚の地図に複数のピンをさしてそれぞれのラベルを常時表示できる理想的なものが作れた。
Nominatim → 緯度経度から住所を返す
Leaflet → 地図を描いてピンを立てる
OpenStreetMapタイル → 背景の地図画像を提供
ただ最終的にこれは採用しなかった。なぜなら会社のパソコンでやっていいのかわからなかったから。
というわけでウェブ上で緯度と経度を入力して出力された地図をひたすらスクショしてコピペした。残ったのはこれ以上調べなくていい、頭を使わずひたすらショートカットを繰りかえせば完成するという安心感と悔しさだった。
3.作りたいものは理想通りにできたのに不安が大きくなった
そもそもAPIも提供元に登録をしてAPIキーをもらって使えるものというイメージしかなくコードもChatGPTが華麗に作ってくれたことも相まってAPIを使っている実感がないし、利用規約とか自分の安全的な話も使ったデータのアクセス権程度しか気を使ったことがなく基本頭の中にあるものをそのまま共有して受け手が取捨選択すればいいでしょという感覚なのでどこまでがいいとかダメとかさっぱりわからない。特に市民開発者はプログラミングを職業とする人がする基礎的な学習をせずに業務に使うものを作るための最短距離での調べものしかせず動けばOKなのでフォローしてくれる人がいなければ無法地帯なのだ。この点、私がいつもお世話になっているMicrosoft365系の最新情報をシェアしてくれるコミュニティの一人はこれ系の注意喚起もしてくれるのでありがたい。ここでもまたコミュニティでの活動とはいえ本業にも関連しているから名前を出して感謝を述べた方が向こうにも宣伝になるよねと思いつつ、もう自分の感覚が信じられなくなってしまった私はお名前を言わないでおく。とりあえず頭の中で三回感謝ツイートをしているので許してください。
4.今後やりたいこと
今回の理想の形がなんとなくわかったのでとりあえずやりたいことを箇条書きで残しておく
・Nominatim, Leaflet, OpenStreetMapを使った私の理想のやり方を公開したい
・今のコードは地図がどーんと真ん中にあるだけなので全体の見た目や機能をがんばってよりウェブサイトっぽい形にしたい
・ほかの人も入力できるようにしたい
・会社環境でも動くものを作りたい
・Markdownと上手な文章を書けるようになりたい
きっと上二つはJavaScript, HTML, CSSで、その下ふたつは各サービスと会社の規約をチェックすればいいのかな?
公開する場所は甘々に褒められて自己肯定感をアップさせつつ、よさげなフィードバックも欲しい。
5.最後に
しんどい。
ハッピーだったのは下調べもコードもChatGPTにやらせたら意外と理想的なものがすぐできちゃったところまでで、その後は会社のパソコンでやって怒られたらどうしようとかこの理想形のコードをシェアして問題ないかとか記事を書くにしてもスクショはどの範囲までなら安全なのかとかひたすら不安になったし調べてもこれで十分なのか自信がない。それでもこの記事を書いたし今後やりたいことも整理したからひょっとするとエンジニアに向いているのかもしれないと無理やりポジティブにしてみる。でもしんどい。