青竹雑記帖(6代目)

テキスト処理をメインとしたIT解説をします。

プログラミング遍歴自慢(この記事中にポートフォリオはないので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年以降)
  • 挫折したもの

6代目雑記帖開設

半月前の6月10日、私が初めてブログ「青竹雑記帖」を開設してから12年が経ちました。それを機に、ブログを書きやすい環境に変えようと6代目に移りました。

先代のブログは手作業が多く、更新作業が煩雑だったため、なかなか記事を積極的に書けていない状況でした。その結果、先代の10日付ブログ記事でぼちぼちブログ更新を再開しようと書いてから今日まで、書くネタはそれなりにあったのに、書くのがひたすら後回しになっていました。先代ブログは自作の静的サイトジェネレータでHTMLを生成してしまってから、手作業で個人サイトのスペースに配置するというもので*1、完全自作のこの方式はすべてを自分のしたいように設計構築できる反面、どうしても公開までに手間がかかってしまい、書いて投稿するまでのハードルが高くなってしまっていました。

ブログを書きやすくするためには、各種デザインや公開発信、SNS共有をプロの手に任せるのが最良です。自分はデザインを細かくチューニングしたいわけではなく、読む人にとって読みやすくあれば問題ありません。自分のWebデザイン能力は全くの不足であるため、下手に独善的なデザインにするよりは、プロによるデザインを活用したほうが良いと考えました。

プロに任せるには、個人サイトのサーバにWordPressなどのCMSを設置する方法や、はてなブログなどのブログホスティングサービスを利用する方法があります。過去の雑記帖では両方の方法を試していました。初代ははてなダイアリーを利用し、2代目はWordPress、3代目ははてなブログを用いて発信していました。今回は、自分が保守管理する手間を少しでも省くことと、昔からよく利用していたという点ではてなブログを採用しました。これで自分のシステムに自ら引導を渡すことができます。グッバイ!

とはいえ、先代のブログのためのシステムは決して無駄ではありませんでした。プログラミング能力の向上はもとより、HTML / CSSを手書きして自分だけのデザインを作り上げる体験を積み増しすることができました。もしかしたら、7代目の雑記帖だったり、あるいは私のサークル活動における成果を投稿するCMSに活用されるかもしれません。もちろんGitHubからクローンしてもらって、他の人の研究材料や実活用に供してもらうのもうれしいです。

ちなみに、先代のブログはサブドメインを少し変えました。こちらからアクセスください。 → http://5th-blog.aotake91.net/(2022.06.25 13:00現在、HTTPS化作業がうまくいっていないみたいなので、HTTPでしたらアクセスできます)

どうしてもSSL/TLS証明書の適用が出来ないため、先代ブログのアドレスを元に戻しました。https://blog.aotake91.net/ (2022.06.30 23:30追記)

それではどうぞよろしくお願いいたします。

*1:ちなみに、そのためのシステムは私のGitHubリポジトリ https://github.com/mugi-grainp に公開しています。