Salesforce World Tour Tokyo 2019 のDeveloper Theaterで Salesforceのツールの作り方
というタイトルで登壇してきましたー。
資料はこちら
実は 別の言語でApexを動かすアプローチ
というのもCFP出してたんですがそちらは通らなかったという裏話もありますw
モチベーション
- これまで作成してきたSalesforce関連ツールの数はコミュニティの中でも結構上位だと思い、これは私にしか出来無さそうなテーマだと思った
- Salesforceは知名度のわりに3rd partyのツールが少ないのでもっとツールを作る人が増えればよいと思った
- もちろんSaaSだから、とか公式ツールがそれなりに充実してるからってのもあるけど、それにしても少ない印象
- 何の取り柄もないエンジニアがツールを作成する過程でプログラミングを楽しんだり技術力を伸ばせたので、そこらへんを共有するのは面白いと思った
内容
Salesforceのツールの作り方
というよりは ツール作っていこうぜ!
なエモい内容。
この辺を話したかった↓
- 目の前の課題に向き合うこと
- 当たり前を疑ってアイデアを具現化していくこと
- プログラミングを楽しむこと
ってか過去の自分に伝えたかったことって感じかな。
思ったこと
登壇や資料整理の過程で、「あー俺はこういう観点でSalesforceのツールを作っていたのだなー」ってのが改めて整理できた。
前職でSalesforceを使ったSIをやってたんだけど、現職ではSalesforceを全く触っていないし、今後もSalesforceをメインの軸としてエンジニアリングしていく予定・希望は無い。
ただ、前職のときよりも今の方がプライベートで作っているSalesforceのツールの数は多くて、傍から見たら「Salesforce好きなんでしょ?」みたいに思われていて、それはちょっと違うなと毎回否定していたりするw
じゃあなんで私がSalesforceのツールを作成しているのかっていうと、SalesforceのAPIが充実していて、データストアもあって、何か技術を試すためのBaaSとしては最適だから
というのが答えなのかな、と思った
(補足: プロダクトの立ち位置的にはSaaS/PaaSだけど私の用途としてはBaaSなのです)
例えば新しいフロントエンドのフレームワークを試したいとき、大体の人がTODOアプリを作っていると思うけど、 そのTODOアプリが私にとってはSalesforce関連ツールだったりする。 SalesforceはAPIがかなり充実しているので、何も考えなくてもサーバが用意されているしAPIも用意されている。OIDCやOAuth2.0も完備されているのでユーザ認証を含めたフローの実装もできるし、firebaseのようにカスタムなAPIも実装できる。
そういう意味で私にとって新しい技術を試すためのバックエンドサービスがSalesforceになっている。
今回発表した内容で 作りながら学ぶ、学ぶために作る
ということを話したんだけど、わりとそのモチベーションで作っているっていうのが現状で、どうせ作るなら面白いツール・自分のモチベーションが上がるツールを作りたいよね、ということで Apex on Local や AltApex にチャレンジしたという経緯がある。
Salesforceで技術は学べるのか という記事を2年前くらいに書いたけど、日常的にSalesforceに触っていない今でもSalesforceは自分の技術力を上げるきっかけを作ってくれている。