Python
JavaScript
GoogleAppsScript
Python3

「プログラミング始めたい」とビジネス職に言われたときに勧めるべき言語とユースケース

More than 1 year has passed since last update.

この記事はこんなあなたにオススメ

  • プログラマとして働く気は無いが、プログラミングを学びたい人
  • プログラマとして働く気はなさそうな人に「プログラミング始めたい」って言われ疲れた人
  • 非エンジニア向け、プログラミング講習会をやりたい・やっている人

著者の背景

  • 新卒からずっとビジネス職
  • もともと大学時代に分析系のスクリプトを書いていたが、社会人2年目までは会社でコード書くことはなかった
  • 現職はもろもろハックしやすい環境なので、たまに業務を効率化するスクリプトを書いている

独断と偏見での紹介なので、これも教えるに値するよ!いやいや、これは教えるべきじゃなくね?みたいなことあるかもしれませんが、ご愛嬌ということで…

ビジネス職の人が覚えて得する言語を勧めよう

image.png
ビジネス職がやってる作業の3割は人類がやるべきことじゃないです。機械でできます[要出典]
一方、そんな個人の作業効率に関する、問題発見・問題解決ができるほどエンジニアリソースは潤沢でないケースがほとんどです。

そこで、そんな3割の業務を彼らが自分自身の手で楽にできるよう、何から勉強すべきかアドバイスするのがおすすめです。

おすすめの言語と実ビジネスへの応用

GoogleAppsScript(GAS)

業務でGoogleAppsを使える環境なら、GASの提案がおすすめです。

特徴

  • Javascriptベースの言語
  • 従って、フロントや簡単なWEBサービスづくりへの発展性もあってGood
  • 環境設定は不要
  • GoogleSpreadsheetsやGmail、Googleカレンダーと言ったGoogleAppsとの連動が簡単
  • 従ってGoogleSpreadsheetsをDB代わりに使うことができる
  • cronのようなバッチ設定が可能なので、サーバー要らずで定期実行が可能
  • 初学者には難易度が高いかもしれないが、当然に外部APIも叩くことができる

ユースケース

  • 問い合わせフォームの回答を受け取ったら、即時に自動返信をする
  • カレンダーとスプレッドシート両方で管理されているスケジュールを同期させる
  • ChatWorkで自社の株価を定期的につぶやく
  • 定期的にスプレッドシートのバックアップ(スナップショット)を保存する

欠点

  • 外部ライブラリに頼りにくく、APIを叩くなどが初学者にとって難しい
  • エラーメッセージが分かりにくい

Python

いわずもがな。分析志向の強い人や、既にリテラシ高めの人はハマるかもしれません。
プロダクト志向のひとなら、将来Rails書くこと見越して、Rubyでもいいかも。

特徴

釈迦に説法なので簡単に
- pandasやnumpyなど数値処理が便利
- ライブラリが充実
- ドキュメントも充実

ユースケース

  • 定期的に確認しているサイトをスクレイピング
  • コピペ系単純作業をbs4とかにやらせる
  • 自社に関するTweetを収集してポジネガ分析する
  • 暗号通貨の自動売買をする

欠点

  • 環境設定は手伝ってあげる必要がありそう。pip使えるようにするところまではやってあげたい
  • 地味に、pyenvとかで躓く人はつまづきそう
  • Python 2.Xのコードがたくさん落ちているので、サンプルプログラム動かないって泣きつかれそう(print hoge とかで躓く)

やっちゃだめ

C

基本学ぶのには良いなと思いますが、うーんってかんじ
ポインタとかでムダに躓いてほしくないし、非エンジニアならポインタの知識はまじで要らない

Java

オブジェクト志向を学ぶのには良い教材なのかな?
なんか、非エンジニアがビジネスシーンで活用できるイメージがない。偏見?

ExcelVBA

よっぽどExcelerじゃない限り学ばなくていいと思う。記録したマクロを編集できる程度でいい気がする。
死にゆく言語だし、メンテしにくいし、なんか32bit/64bitみたいな論点もあるっぽいし。
なんかこう、辛い記憶しかないや…

非エンジニアな僕が個人的に読んでよかった本たち


なんかいっぱい列挙しようと思ったけど忘れた。
まあ、そこはご存じのいい本をおすすめいただければと。