プログラミングで今の「当たり前」をより良くできる

ソフトウェア開発企業で、ソフトウェアの要件定義と仕様策定、リリースまでの進捗管理や部門間の調整を行っている吉野さん。
開発を担うエンジニアと共に働いていて感じる、プログラミングを学ぶ意義やテクノロジーと人間の役割の違いなどについてうかがいました。

※本記事は、2021年02月17日に「Z会 STEAM・プログラミング教育情報サイト」上で掲載した記事を一部修正の上、再掲しています。

[プロフィール]
吉野有美佳(よしの・ゆみか)

津田塾大学学芸学部国際関係学科卒業。
現在はSaaS(=サース。Software as a Service:提供者のサーバー側で稼働するソフトウェアを、オンライン上で利用できるサービス)の企画・開発に従事している。

※2021年2月時点

テクノロジーをうまく使えば、少ない労力で質の高いアウトプットが可能

私が今担当しているのは、自社が開発するソフトウェアの要件定義と仕様策定、そして、リリースまでの進捗管理や部門間の調整です。
SaaSとして提供しているソフトウェアなので、「一度つくって終わり」ではありません。
より良いものにしていくために、日々、ユーザーが抱える課題を把握しながら機能の改善・追加を検討し、エンジニアたちがスムーズに開発を進められるよう各種調整を行っています。

機能の開発や実装自体はエンジニアが行うため、私自身にはプログラミングに関する知識は求められていません。
むしろ大事なのは、「ユーザーは製品の現状に満足していないはずだ」という前提のもと、製品の課題を見つけ、解決策を考えること
学生時代にこの力をもっと鍛えられればよかったのですが、小学校から大学までの勉強において自ら課題を見つけて解決する経験を積める機会がさほどなかったので、今、ユーザーの声を聞きながら手探りでやっています。

プログラミングができるエンジニアたちと仕事をしていて感じるのは、プログラムや機械に任せられることはそれらに任せ、人間は「考える」というところで価値を発揮していくことが重要だということ。
私は、何か効率化したいことが出てきても、例えばExcelを使って力技でなんとかしようとしてしまいがちです。

でも、エンジニアの社員に相談すると、「そんなのプログラムを組めばすぐできるよ」と提案してくれたり、ささっとやってくれたりするんです。
その際によく言われるのが、

繰り返しや単純作業は、プログラムや機械に任せた方が速くでき、ミスもなく、ストレスもなくていいことばかり。人間ががんばる必要はない。人間ががんばるべきところは、プログラムや機械が出した結果を見て考えること

というものです。
ものすごく納得すると同時に、「考える」というところで自分がもっと価値を出せるようにがんばらないと、と思います。

このような風土の企業で働いていると、一時期メディアで言われていた「テクノロジーが人間の仕事を奪う」という話もそんなことはないなと感じます。
機械が得意とすることと、人間にしかできなことはまったく異なります。
例えば、人と交渉することや、今ある情報を組み合わせて最善の方策を考えることなどは、人間にしかできません。そのために必要な情報の整理は機械に任せるなどして、機械をよりうまく使えるようになれば、より少ない労力で、より質の高いことができるのではないかと思います。

プログラミングを学ぶことをとおして模索する力を鍛えてほしい

小学校でプログラミング教育が始まりましたが、私の場合、今小学生だったとしてもプログラミングにはあまり興味をもたないタイプだと思います。
ただ、ソフトウェア開発に携わっている今思うのは、プログラミングを用いてできることを知るだけでも、これからの人生や社会との向き合い方が変わってくるだろう、ということです。

というのは、私はプログラムを組めば何かしら不便を便利にしたり、非効率なことを効率化したりできると知っているからこそ、エンジニアの人に対して「こういうことってできませんか?」といった提案ができています。
同様に、小学生の子どもたちも、プログラミングに関する知識を得ることで、将来、何か困ったときに「小学生のときにこういうことを学んだな、それを使えばできるかもしれないな。できる人に聞いてみようかな」と思えるのではないでしょうか。

子どもたちがプログラミングを学ぶにあたってぜひ身につけてほしいことは、模索する力です。
今当たり前にやっていることでも、より良い方法に改善していけることってたくさんあると思います。
それを改善できるかどうかは、改善したいと思うかどうか、そして、改善する手立てを知っているかどうかにかかっていると思います。

そこにつながるのが、解決・改善というゴールにたどり着くまでの間にたくさん思考し、失敗し、ベターな方法を見つけ、解決・改善することを繰り返す経験ではないでしょうか。

この模索する力を鍛えるのに、プログラミングはすごくマッチしていると思います。
プログラミングは「コードを書く→失敗する」というプロセスを必ず通るものですし、「どういうコードを書けば思ったとおりに動くんだろう?」と考え、形にする中で、考え方が間違っていることに気づき、やり直す、次は形にするところが間違っていることに気づき、やりなおす、という試行錯誤を繰り返します。
これはまさに、模索そのものだと思います。

保護者の方は、子どのも興味や意欲を尊重することを大事にして

プログラミングに限らず、保護者の方は、子どもが興味をもってやろうとしていることに対して、「うまくできるのか?」と気にするのではなく、まずは、興味をもちトライしようとしていること自体を尊重していただきたいと思います。

私自身、親からあまりうるさく言われることなく育ち、小学校から中学校にかけてはピアノ、中学時代は部活、高校時代は勉強と、やりたいことをいろいろとやらせてもらいました。
ピアノは、周りの友だちがやっているのを見てやりたくなって始めたものの、練習が好きになれずさぼってしまうことが続きました。
でも、親はとやかく言わず見守ってくれていました。
先生とのレッスン自体は楽しく、続けることができたので、練習しなかった割に今でも楽譜は読めるので、あのときやっていてよかったと思います。
もし、「なんで練習しないの?」「全然上達しないじゃない」などと言われていたら、楽譜をスムーズに読めるようになるまで至らなかった気がします。

私の周囲を見ていると、いろいろとやりたいことの経験を積んできていても、仕事で活躍する分野はそれらとまったく異なる、という人たちがいます。
でも、その人たちの多くから、経験してきたことが生かされていることを感じられるので、興味や意欲のおもむくままにいろいろ経験をすることは大事なんだなと思います。

子どもの「やってみたい!」という思いもそうですし、やった結果うまくいかなかったときに続けるのか、あるいはほかのことにトライするのかという選択も、ぜひ子どもの意思を尊重してほしいなと思います。

吉野さんにQ&A!

Q1. もし今小学生だったとしたら、プログラミングを学んで挑戦してみたいことはありますか?

A1. 友だちとそれぞれ簡単なゲームをつくって、お互いのゲームをプレイしたいですね

人によってまったく異なるゲームができあがると思うし、そうやってできたゲームをプレイすることで、その人の性格や特徴をさらに知ることができるのがおもしろそうです。

Q2. 小学生の頃に熱中していたことは?

A2. これといってないのですが、毎日竹やぶや田んぼなど、外で遊んでいました

周りが山と川と畑ばかりだったので、山の中に秘密基地をつくったり、田んぼで鬼ごっこや競争をしたりと、友達と独自のルールや遊び方を考えて遊んでいました。

Q3. 中学・高校時代に熱中していたことは?

A3. 中学時代は3年間部活しかしていなかったです(笑)

バスケットボール部でした。
顧問の先生は、練習中は厳しく指導する一方で、試合中はあまり口を出さないタイプ。
そのため、練習で学んだことを試合でどう出すか、相手に応じてどうやって試合を組み立てるか、といったことをかなり自分たちで考えてやっていました。
高校時代は、友だちに誘われて放課後も学校に残って勉強漬け、という毎日でしたね。

私のように中学3年間は部活ばかり、高校3年間は勉強ばかり、と極端でなくていいので、何か1つのことに熱中できることはすごく大事だと思います。
1つのことに熱中していると、「好きだけどしんどい」という瞬間がどうしても出てきます。
でも、そのしんどさを乗り越えた経験があると、その後の人生や仕事でつらさを感じたときに、なんとかできるんじゃないかと思います。私にとっては、それが中学時代の部活でした。

 

学年やお子さまの興味に合わせた講座を展開中です。