経歴の浅いエンジニアがOSSにプルリクを送ってみた話


EC-CUBEプルリクを送ってみた話

タイトルにもございますように、オープンソースソフトウェアであるEC-CUBEコミットしましたので、記したいと思います。

私は経歴1年半程度のエンジニアで「OSSコミッター」というと、いかにもツヨツヨでギークな方がやっているイメージが強かったのですが、こんな私でもできたので、少しでも多くの方がやってみようと思えるように、手順と心構えを記したいと思います。

なぜEC-CUBEか

EC−CUBEとの関わりは業務で使用したことがきっかけです。
カスタマイズをしていた印象としては、開発ドキュメントがあるため経歴の浅いエンジニアだった私にとって、お作法を学ぶ上でもいい題材であると感じました。

当時私よりも更に経験の浅いエンジニアにタスクの割り振りをしていた私は「このタスクはちょうどいいな、Aさんの勉強になる」と無意識に、経験を積む上でいい題材を選んでいることに気づきました。そこでEC-CUBEを使ったタスク集があれば、エンジニアを目指している人やエンジニアになったばかりの人が、実務で経験するようなタスクを体験できるのではないかと思ったのです。実務では通常ソースコードはセキュリティ上の問題で一般公開することができないですが、OSSであるEC-CUBEは実務でも広く使われている上に、誰でも見ることができます。それで作ったのが未経験からエンジニアがキャリア初期に、任されるあろう3つのタスクを出題してみるでした。こちらの記事は多くの方に読んでいただき、EC-CUBE社の方の目にも止まったようで、中の人と個人的なお付き合いができました。そんなやり取りの中で「よかったら、モーリーさんも開発に参加してみてください。簡単なタスクもあるのでお気軽に」と言っていただけたことがきっかけでした。

OSSに参加するメリット

①日頃お世話になっているプロダクトに貢献できる(課題解決の経験ができる)

なんと言ってもこれが大きい

②エンジニアとしてちょっとした錯覚資産が得られる

関わる前に当初私が抱いていたように、エンジニア仲間にOSSコミット経験があると伝えると一目おいてもらえるようなケースがありました。

③転職市場において有利になる(多分)

知らんけど。

手順を記してみる

本当であれば、自分で問題点を上げてISSUEに上げることが一番の貢献かなと思うのですが今回はコミットすることへの心理的な障壁を下げることが目的なので、最も手軽に参加できる方法を取ります。

それはまずたくさんのISSUEの中から、自分でもできそうなタスクをみつけることです。
いっぱいあって難しそうなものばかりのように思えますが「EASY」とタグが付いているISSUEに絞ってみると比較的簡単そうなタスクもあることがわかると思います。→https://github.com/EC-CUBE/ec-cube/issues?q=is%3Aopen+is%3Aissue+label%3AEasy

私の初挑戦となったISSUEはこちら→https://github.com/EC-CUBE/ec-cube/pull/4709
登録の際の管理項目で必須項目となっているものに「必須」というラベルをつける内容になります。

issueの内容見ると自分でもできそうな気がしますよね??
ラベル部分にspanタグを追加するだけのタスクで且つ別画面には、すでにこの対応はされているため、実質コピペするのみでした。

手順としては
①自分のgithubアカウントにプロジェクトをフォーク(ドキュメント通りにやれば簡単です)
https://doc4.ec-cube.net/contribution-guide/pull-request
②ISSUEに自分が対応することを意思表示
③コードを修正する
④プルリクエストを作成します。他の方が挙げているのを参考にすればOK

私の場合は、簡単なタスクだったので一発でLGTMでした!

コミットしてみて

これを読んで、「何だただの文言修正か」と思う方もいらっしゃると思いますが、いまつよいエンジニアの方も最初から、いきなり難しいことができたわけではないと思うので、まずは参加してみることが大事なのかなと思いました。

エンジニアのの会話のきっかけにはなりますし、皆様も是非挑戦してみてください。

意外と簡単そう!と思っていただけると幸いです。

なにかご指摘等ございましたら、コメントください!