毎日がアップデート中

毎日がアップデート中

正社員エンジニアとして働きつつ、フリーランスでツール開発やライティングも行っています。AIの力も借りながら、自分らしい働き方を模索中。日々の工夫や学びを記録しています。

副業や本業の作業の中で、
「これ、無料サービスでできるな」と思うことはよくあります💻

例えば、QRコード生成、CSV変換、簡単なデータ整形、画像リサイズなど。
検索すれば、すぐに使えるWebサービスが見つかります。

実際、最初はそれを使っていました。

ただ、使い続けていると少しずつ不便が出てきます。

毎回ブラウザを開く。
データを貼り付ける。
結果をダウンロードする。
保存場所を選ぶ。

1回あたりは数十秒ですが、繰り返すと地味に時間を使います。

さらに、副業で扱うデータは社外に出せないケースもあります。
無料サービスにアップロードするのは避けたい場合もあります。

そこで、自分用に簡単なツールを作りました。

スプレッドシートに入力したら、
ボタン1つで処理が完了。
結果はそのままシートやドライブに保存。

外部サイトにアクセスする必要もありません。

機能としては、無料サービスとほぼ同じです。

それでも、自分で作るメリットはありました。

・処理を自分の業務フローに合わせられる
・まとめて一括処理できる
・他の処理と組み合わせられる
・データを外に出さずに済む

特別な技術ではありません。

既存サービスで十分なことも多いです。

それでも、作業の中に組み込むことを考えると、
自分専用の形にした方が結果的に早くなりました。

無料サービスで済む処理でも、
業務の流れの中では別の選択になることがあります。

最近もまた、同じ理由で小さなツールを1つ追加しました。

 

==================================

 

当記事は、ChatGPTで校正校閲を実施したものになります。

 

最初は、QRコードを1つ生成するだけのツールでした💻

特定のURLを入力して、ボタンを押すとQRコード画像を出力する。
それだけのシンプルなものです。

既存の無料サービスでも作れますが、毎回ブラウザを開いて、URLを貼り付けて、ダウンロードして…という手順が少し面倒だったので、自分用に作り始めました。

スプレッドシートにURLを入力して、ボタンを押すとQRコードが生成されて、そのままシートに表示される。
最初はその機能だけで完成のつもりでした。

ただ、実際に使い始めると、すぐに次のことが気になります。

複数URLをまとめて生成できた方がいい。

1件ずつボタンを押すのではなく、一覧から一括で生成できるように処理を追加しました。

さらに使っていると、今度は画像として保存したくなります。

生成したQRコードを、Googleドライブに自動保存する処理を追加。

ファイル名も、URLそのままだと分かりづらいので、シートの別列の値を使って保存するように変更。

その後、同じURLを何度も生成しないように、既存チェックも追加しました。

最初は「1つのQRコードを作る」だけのツールでしたが、
一覧生成、ファイル保存、重複チェックなど、機能が増えていきました。

コードも最初の数十行から、気づけば数倍の長さになっています。

それでも、元は自分用の小さなツールです。

先日もまた、保存先フォルダを選べるようにする処理を追加しました。

最初に想定していた形とは、だいぶ変わっていってます。

 

何かと機能がモリモリになっていくのがエンジニアの性です。。。

 

もっと機能が増えていく予定なので、販売も視野に入れようかと思っています。

 

==================================

 

当記事は、ChatGPTで校正校閲を実施したものになります。

 

副業で納品済みのGAS付きスプレッドシートについて、連絡が来ました📩

内容はひと言。

「エラーが出ます。」

スクリーンショットもなし、発生タイミングの記載もなし。

まずは状況確認からスタートです。

どのボタンを押したのか、
どのデータで発生したのか、
毎回出るのか、特定条件なのか。

やり取りをしながら情報を集めます。

返信を待つ間、自分でも同じ環境で再現テスト。

テスト用データでは発生せず。

依頼者から送ってもらったデータを確認すると、
一部のセルが空欄、さらに日付形式が文字列になっていました。

その状態で該当処理を回すと、確かにエラー。

原因は単純で、
前提条件として数値や日付が入っている想定で処理を書いていました。

空欄や文字列は考慮していません。

仕様上は「入力必須」でしたが、実際の運用では空欄が混ざっていました。

対応としては、

・事前チェック処理を追加
・空欄はスキップ
・不正形式はメッセージ表示

の3点を実装。

再テスト後、同じデータでエラーが出ないことを確認。

作業時間は約2時間。

修正そのものより、再現条件の特定と確認の方が時間を使いました。

「エラーが出る」という一文だけでも、実際の対応はここまでかかります。

そんな改修対応の日でした。

 

==================================

当記事は、ChatGPTで校正校閲を実施したものになります。

副業で、GASの修正依頼が来ました💻

内容はシンプルで、
「動くけど遅すぎるので速くしてほしい」
というものです。

対象は、すでに別の方が作成済みのGAS付きスプレッドシート。
機能や出力結果は変えず、速度だけ改善してほしい、という依頼でした。

まず現状確認。

実行すると、ボタン押下から完了までかなり待たされます。
体感でも分かるレベルで、業務で使うには厳しい速度。

コードを追うと、原因はだいたい予想通りでした。

ループの中で getValue() と setValue() を繰り返していて、
セルを1つずつ読み書きする形になっていました。

処理の見た目は分かりやすいのですが、行数が増えると一気に遅くなるタイプです。

仕様は変えない前提なので、やることは決まっています。

対象範囲を getValues() でまとめて取得して、
配列上で判定と加工を全部終わらせ、
最後に setValues() で一括反映。

「どの範囲をいつ読んで、どこに書くか」だけを整理して、
1セル処理を配列処理に置き換えていきました。

書き換えたのは中身だけで、画面側の操作や出力形式は変更なし。

修正後、同じデータで再実行。

待ち時間が明らかに減って、体感でもすぐ分かります。

計測すると、実行時間は数十秒 → 数秒程度。

依頼内容は「速くしてほしい」だけだったので、追加機能も新画面もなし。
その日はひたすら既存コードを読みながら、配列処理に差し替える作業で終わりました。

 

==================================


当記事は、ChatGPTで校正校閲を実施したものになります。

 

副業で、GAS付きのGoogleスプレッドシートを納品しました💻

 

元々こんなものがあったらいいかなっと思って作ったもので、
PCでの利用前提で作った業務ツールです。

ボタンを押してスクリプト実行、
サイドバー表示、
メニューから各処理を呼び出す、よくある構成。

動作確認も完了して一区切り…のはずでした。

後日、ひと言。

「スマホとかiPadでも使えますか?」

試しにスマホで開いて確認。

まずボタンが押しづらい。
サイドバーは表示されない。
GASメニューも分かりにくい。

そもそも、モバイルだと操作性が成立していません。

レイアウトを直すレベルではなく、
「これはシートのままだと厳しいな」と判断。

そのままWebアプリに切り替えることにしました。

GASの doGet で画面を作って、
HtmlService で簡単なUIを用意。

ボタン操作もフォーム入力も全部Web側に移動。

スプレッドシートは裏のデータベース扱いに変更。

結局、その日はずっとHTMLとGASを書いていました。

元のシートはほぼ触らず、作り直しに近い状態。

作業時間はだいたい4時間くらい。

「シートを修正する日」のつもりが、普通にWeb開発の日になりました。

副業は、たまにこういう方向転換が入ります。
 

これからは、依頼以外で作るツールはPC・スマホ・ipad全てに対応(レスポンシブ)しようと決めました。

 

==================================

 

当記事は、ChatGPTで校正校閲を実施したものになります。

 

昨日の副業は、新しい開発はせず、過去に作ったツールの棚卸しをしていました💻

フォルダを整理していたら、昔作ったスクリプトやシートが大量に出てきたからです。

GAS、スプレッドシート、Python、ちょっとした自動化ツール。

「これ何のために作ったんだっけ?」というファイルもちらほら。

せっかくなので、一度全部数えることにしました。

ファイル名を一覧にして、
「今も使っている」「もう使っていない」で仕分け。

結果。

自作ツールは合計32個。

そのうち、今も定期的に使っているものは9個だけ。

残り23個は、ほぼ触っていません。

案件用に単発で作ったものや、試しに作って終わったものが大半でした。

体感では「結構活用している」つもりでしたが、数字にすると3割以下。

思ったより少なめです。

フォルダの中身も、現役より“過去資産”の方が圧倒的に多い状態。

とりあえず、使っていないツールは別フォルダに移動して整理。

昨日やったのはそれだけ。

新機能ゼロ、売上ゼロ。

ただの棚卸し作業でした。

でも、ディレクトリだけは少しすっきりしました。

今日はまた別の作業に戻ります。

 

==================================

 

当記事は、ChatGPTで校正校閲を実施したものになります。

 

最近、副業の作業がずっとGASとスプレッドシート中心になっています💻

それはそれで便利なのですが、
気づけば同じ技術ばかり触っている状態。

案件の募集内容を見ても
「AWS経験者歓迎」

「クラウド環境構築できる方」
みたいな文言がちらほら出てきます。

このままだと選択肢が増えないなと思い、昨日はAWSを触る日にしました。

まずはアカウント作成。

本人確認や支払い設定をして、管理画面にログイン。

その後、
EC2、S3、Lambdaあたりを一通りクリックして中身を確認。

とりあえず
・S3にファイルをアップロード
・EC2のインスタンス作成画面を触る
・料金ダッシュボードを見る
この程度の軽い操作だけ。

本格的な構築まではやっていません。

ほぼ「触ってみただけ」です。

ただ、これまで見たことのなかった画面や用語が大量に出てきて、
IT初心者に戻った感覚。

気づけば2時間くらい触っていました。

成果物は特になし。

残ったのはAWSコンソールのブックマークだけ。

昨日はそんなスタートの日でした。

 

==================================

 

当記事は、ChatGPTで校正校閲を実施したものになります。

 

先日、副業で「軽微な修正案件」を1件受けました💻

募集内容には
「既存シートの簡単な修正」「すぐ終わる内容」
と書かれていて、作業感覚としては1〜2時間くらいの想定。

軽めのタスクとしてちょうどいいと思い、そのまま応募しました。

今回は試しに、最初から作業時間をすべて計測。

開始と終了を都度メモして、
提案・確認・修正・やり取りも全部含めて記録しました。

結果。

・提案文作成 20分
・仕様確認・やり取り 40分
・既存シート解析 60分
・実装修正 90分
・動作確認・テスト 60分
・納品準備・最終連絡 30分

合計 約5時間。

想定の倍以上でした。

実装そのものは1時間半程度で終わっていますが、
実際はその前後の確認や解析にかなり時間を使っています。

「軽微修正」といっても、
既存データの読み込みや挙動チェックの方が手間がかかることが多い。

作業ログを見返してみると、コードを書いていない時間の方が長めでした。

最初の感覚だと2時間案件。

実測すると5時間。

数字にするとだいぶ印象が変わります。

こういう小さい案件ほど、思ったより時間が膨らみがちです。

今回の記録はそのまま残しておきます。

 

==================================

 

当記事は、ChatGPTで校正校閲を実施したものになります。

 

昨日はクラウドワークスを開いて案件チェックから始めました💻

GAS、スプレッドシート、自動化、Excelなど、別々に絞り込み。

ただ、条件に合う案件がほとんどありません。

単価が低い、内容が薄い、工数が読めない。

30分ほど眺めましたが、応募はゼロで終了。

無理に出しても消耗するだけなので、こういう日はさっさと切り替えます。

代わりにやったのは、いわゆる裏作業。

・過去ツールのコード整理
・不要ファイル削除
・テンプレの微修正
・提案文の使い回し部分の書き直し
・作業ログの記録

表に出ない作業ばかりです。

売上は当然0円。

でも、こういう細かい整備は案件が入ると手が止まるので、時間が空いている日しかできません。

気づけば2時間くらい経っていました。

応募も納品も無し。

売り上げることに対しては何も進んでいない日ですが、だいたい毎回こんな感じです。

案件が無い日は、作るより今後のために整える時間になっています。

 

==================================

 

当記事は、ChatGPTで校正校閲を実施したものになります。

 

1ヶ月間の副業に使った時間をすべて記録していました🕒

特に理由はなく、
「実際どれくらい働いているんだろう」と思っただけです。

作業開始と終了時刻を、毎回スプレッドシートに入力。
修正対応、調査、提案文作成、細かい確認作業も全部含めて計測しました。

集計してみた結果。

1ヶ月の副業稼働時間は合計42時間。

平日の夜と土日を少しずつ足したら、この数字になっていました。

売上は約38,000円。

ここから単純に割ると、時給は約900円。

計算してみて、思ったより普通のアルバイト感覚の数字でした。

しかもこの42時間の内訳を見ると、
実装よりも確認や調査の時間の方が長い。

コードを書いている時間は体感よりかなり少なめ。

「副業=開発している時間」というイメージでしたが、
実際は細かい修正とやり取りでほとんど埋まっています。

毎日少しずつ作業しているつもりでも、
月単位で見るとそれなりの時間。

数字にすると現実がはっきり出ます。

とりあえず、今後も同じように記録だけ続けてみます。

 

==================================

 

当記事は、ChatGPTで校正校閲を実施したものになります。