青竹雑記帖(6代目)

雑記帖がまた新しくなりました。

プログラミング遍歴自慢(この記事中にポートフォリオはないのでGitHubを見てください)

突然ですが、私はプログラミングを完全に理解しました。

……この言明は、IT界隈特有の言い回しで「製品を利用するためのチュートリアルを完了できた」と言う意味です。下記をご参照ください。

togetter.com

ITについて何かしら一流の技術や成果物を持ち、「チョットデキル」存在になりたいものです。

さて、もののついでに人生で17回目の記述になりますが、私のプログラミング遍歴を喋っておきましょう(隙あらば自分語り)。この遍歴と私のGitHubのリポジトリ群 を見て、私への仕事依頼の参考になさってください。昼寝時間が削られない程度にお待ちしております。ちなみに最も得意なプログラミング言語Rubyです。ただしRailsは未習得です。それ以外だとシェルスクリプトAWKはすぐに行けます。Pythonは滅ぼします。JavaScriptを持ってきたらローラーでのします。

  • 2000年頃 (9歳) N88-BASIC(86)
    • 市立図書館から「F-BASIC」の本を借り、数値を入出力してキャッキャ遊んだ。
    • 言語規格の違いにより本に書かれたプログラムは動かせなかった。
  • 2001年頃 (10歳) Visual Basic 6.0
    • 父親が自作のソフトウェア資産の移植を目的としてProfessional Editionを購入していた模様。
    • 適当に遊んだものの、自らの用に役立つプログラムは鉄道運転シミュレーションゲームBVE」 (現・BVE trainsim) の路線ファイル構文生成支援プログラムのみ。
  • 2004年頃 (14歳) C++
    • 詳しい時期は忘れた。もしかしたらもう少し前かもしれない。
    • BVE 4.0 が公開され、保安装置をDLLとして自作できるようになり、西鉄ATSを再現したくて飛び込んだ。
    • 当時、ほとんどなかった無料のC++処理系である「Borland C++ Compiler」を利用。しかしあえなく挫折。C++を操れるようになるまでに数年を要し、その頃は別の方に興味が向いていたため、未だ西鉄ATSのプラグインは作っていない。
    • C言語については、父親が持っていた「Microsoft Quick C」の参考書を横から読むなどして少し知っていたものの、実際に動かした経験はないままだった。
  • 2005年頃 (14歳) Visual Basic .NET
    • 新しい Visual Basic と聞いて飛びついてみた。
    • この頃から、個人利用の開発環境がより広く無料で提供されるようになってだいぶ助かったような気がする。
  • 2006年頃 (15歳) ROBOLAB (LabVIEW)
    • 高校の部活でロボット (LEGO MINDSTORMS) を扱うために習得。
    • ……アイコンつなぐのめんどくね?
  • 2010年 (19歳) Ruby
    • 大学の研究入門プログラムで触れる。スクリプト言語への入門。
    • 今のプログラミング活動は実質ここから始まっている。
    • ただ、RailsRubyフレームワークはちんぷんかんぷん。要望があれば学んで実践します。
  • 2010年 (19歳) Scheme
    • わが大学の情報系学科ではLisp系言語としてこれを学ぶことになっていた。
    • カレンダーをGUIで表示(7セグメントLED風数字表示プログラム)するという超大作を作り上げた。
  • 2010年 (19歳) JavaScript
    • お試しで使ってみた。
    • 今やサーバサイドでもクライアントサイドでも広く使われるようになったけど、これ面倒じゃね?
  • 2012年 (21歳) Java
    • 大学の科目で習得。
    • ただし、実用的なプログラムは書いたことはない。
  • 2012年 (21歳) Verilog HDL
    • 大学のハードウェア実験科目で習得。
    • もう忘れた。
  • 2013年 (22歳) C#
    • Windows GUIプログラムを作るために習得。
    • 実用的プログラムを少し作ったものの、その後Windows GUIプログラムを作らなくなったため使っていない。
  • 2013年 (22歳) R
    • データ解析を行うために少し触れてみた。
    • 今でもぼちぼち扱っているけど、だいたいがPythonのライブラリ群を操る方に変わった。
  • 2013年 (22歳) Scala
    • 研究で、センサデータを取り扱うためのシステムを構築するのに利用。
    • 当時はセンサユニットも、データ蓄積システムもろくになかった。今は鼻歌交じりで外部サービスやモジュールを活用して用意できるからいい時代になった。
  • 2015年 (24歳) Perl
    • 自然言語処理系の大学講義の中で扱った。
    • 2022年現在、アルバイト先の基幹システム保守管理の場面でようやく実務に生かされた。
  • 2015年 (24歳) シェルスクリプト
    • 今重用しているプログラミング言語のひとつ。
    • 初手でこれを使いたがるため、チームからはPython等の言語で書き直すよう毎回要求を受ける。
  • 2015年頃 (24歳) AWK
    • お前何歳だ、絶対25歳サバ読んでるだろと言われる諸悪の根源(?)
    • 初手でこれを使いたがるため、チームからはPython等の言語で書き直すよう毎回要求を受ける。(その2)
    • Markdown to HTML簡易変換JSON簡易パーサ を作った。
  • 2015年頃 (24歳) LaTeX / TeX
    • 研究論文執筆のために学んだ。
    • これを用いて西鉄電車の車両運用関係資料や時刻表を組版している。
  • 2016年 (25歳) Crystal
    • Ruby類似の文法で書けるということで興味を持った。
    • 実用プログラムはまだ書いていない。
  • 2018年 (27歳) Rust
  • 2019年 (28歳) Go
    • 大学に舞い戻ったあと、研究用データ処理やアルバイト先のデータ処理で使ってみた。
    • 適当に作ったプログラムはすべてお蔵入りしており、ホコリをかぶっている。
  • 2019年 (28歳) Python
    • こんな言語3フェムト秒で滅ぼしてやりたいが、科学技術系や機械学習系のライブラリ群を呼び出すのに一番使われているので使わざるを得ない。
    • チームの他メンバーとプログラムを共有するために、自分が他の言語で書いたものをPythonに翻訳して渡すことは日常茶飯事。
    • 苦虫を噛み潰しながら今日もPythonでプログラムを書いている。
  • 時期不詳 (2005年以降)
  • 挫折したもの