プログラミングとは
プログラミングとはコンピュータを動かすときの命令をする文章であるプログラムを作ることです。
プログラムはパソコン、スマホなどはもちろん、家電や自動車などのコンピュータが組み込まれたものすべてを制御しています。
DENXでは下記で紹介するような分野のプログラミングをしています。
競技プログラミング
競技プログラミングとは、ある問題が与えられその問題解決を行うプログラムを書き、その結果を競う競技です。
ただ競技とはいっても、アルゴリズムやデータ構造の知識を使って2~3時間で小問題を複数問解くAlgoや、数週間~1ヶ月ほどの期間を設けて大規模な問題に対する近似解を求めるMarathonといったジャンルが存在します。
DENXではアルゴリズムやデータ構造の勉強会を年10回ペースで行ったり、ICPCという大学対抗のプログラミングコンテストに参加しています。
機械学習
機械学習とは今はやりの人工知能の一種です。
物事のさまざまなデータを集めて分析して特徴を見つけ出し、仕事の自動化や未来の予測をするのが機械学習です。
具体例として会話システムや画像処理、音声認識、ゲームAIなどが挙げられます。
日々、最新の技術や知識を学んでいます。
web開発
web開発では、インターネットを使ったアプリやサービスを制作します。
主にWebサイトのデザインなどの目に見える部分を作るフロントエンドと呼ばれる部分と、サーバーデータの管理など目に見えない部分を作るバックエンドの二つに分かれます。
アプリケーション開発
アプリ開発は名前の通り、スマートフォンやパソコンなどのアプリを作るものです。
動画プレイヤーやSNSなどが挙げられます。
その他にも…?
電子工作やゲーム制作、数値解析などでもプログラミングを使用します。
過去にはBOXの入室を自動でツイートするといった、IoTに取り組んでいた方もおりました。
このように、どんなものにも活用できるところが、プログラミングの強みです。