読者です 読者をやめる 読者になる 読者になる

僕の書いたクソプログラムについて

はじめに

Hatenaブログのアカウントを作りました。無事に進級が決まったさとりです。
この記事はFUN Advent Calendar 2015の12月15日寄稿記事です。現在12月15日290時間30分ですから、なんとか間に合いましたね。遅れてすみません。


他の方の書いた記事を読んでいると、読みやすい構成だなとか、とてもためになるなという感想を抱きます。自分の考えていることを140文字以上で綴る機会がほとんどなく、拙い文章ですがよろしくお願いします。


僕が女装男子という新境地を開いたのは、2015年6月頃のことでした。友達から借りた「ひめゴト」を読んだのがきっかけで、新な性癖を獲得しました。気づけば本や絵、アニメなど、様々な女装男子モノに手を出していました。
今回寄稿する上で、この1年間余りで培ってきた女装男子に関する

f:id:aonism43:20151226022305j:plain あんなことや

f:id:aonism43:20151226024417j:plain こんなことについて
未来大生に伝えるために執筆しよう。
と思ったのですが、せっかくですし(周りを見て)、僕が今までに書き殴ってきたソースコードを赤裸々に紹介しようと思います。


紹介するコードについて

僕の勉強不足により、コードはほとんどがProcessingで記述されたpdeファイルで、ほぼ全てが未完成プログラムです。大学に入って初めてプログラミングをした育ち村生まれのJDが、大学2年生の時から1年間書き溜めたクソプログラムをいくつかだらだら解説していきます。

ところで、コードをweb上で公開するためにGitHubを始めました。webに公開するのが目的ではなく、過去に戻ってプログラミングをやり直せる魔法のツールくらいにしか今は思ってません。GitHub Desktop使ってます。commitしかしたことありません。勉強します。


前置きが長くなりました。次からコードを紹介していきます。


目覚まし時計

Clock

f:id:aonism43:20151226033457p:plain


多分これが一番最初に能動的に作ったクソプログラムです。未完です。

以前大学の講義でスケジューラーを制作するために、時計もどきを制作するプログラムに触れたことがあったため、ふと自分が使いたい目覚まし時計作ろうと思いました。

上の写真のところまで完成しており、この他に1桁同士の四則演算問題を出題するプログラムが実装されています。この目覚まし時計は指定の時間になると指定した音楽が鳴り、何問か出題される簡単な計算問題に全て正解すると音が止まります。その日の起床時間や正答率、目覚ましの鳴動時間などをライフログとして、記録・グラフ化しようと考えました。

が、アナログ時計を実装した時点で満足してしまいました。嬉しくて嬉しくて仕方がなかったので,毎日このプログラムを実行して動く様を眺めていたほどです。

そのうち(多分)完成させます。


PictureFav

PictureFav

f:id:aonism43:20151226045743p:plain

Twitterに関するクソプログラムを作ってみたいと思い、Twitter4Jをインポートして制作にとりかかりました。
その頃、絵を描く人のアカウントをリストを作成し、お気に入りの絵をふぁぼることをしていました。これをもっと楽にしようと思いついたのがこのクソプログラムです。

現在は画像を含むツイート20件の取得しかできておらず、画像の取得やふぁぼ、保存など、メインとなる機能が何もできていません。ので、完成予想図のクソコラを作ったのが上の画像です。
リストにある絵を表示し、左下のフォルダをクリックすることで左上の絵をふぁぼってフォルダ内に保存してくみたいな感じのやつです。

作ったら使うなーとか定期的に思い出すんですが、全然進んでません。そのうち(多分)完成させます。

 


Combination・Prime

Combination
Prime

f:id:aonism43:20151227000130p:plainf:id:aonism43:20151227000141p:plain


計算をプログラムにやらせてみようと作ったのがこの組み合わせ順列プログラムと素数プログラムです。

組み合わせ順列プログラムは、組み合わせ順列を再帰関数で計算するもので、プログラム書いた気になれるクソプログラムでした。

素数プログラムは指定した数字以下の素数を全て表示するクソプログラムです。エラトステネスの篩 というアルゴリズムを見つけて衝動的に組みました。今まで組んだクソプログラムの中で最も実用性がありません。

一応完成してます。


おわりに

本当は艦これのアンソロジー読んでて作りたくなった海戦ゲームや、任意のベジェ曲線を描くプログラム等も紹介しようかと思ったのですが、めんどくさくなったので割愛します。物好きな方はaonism43 (Satori) · GitHubからどうぞ。

たらたらクソプログラムを紹介することで僕が伝えたかったことは、

  • 下手くそでもいいからコードを書いてみる
  • コードを書くためのアイディアは身近に転がっている

ということです。
とても汚いコードばかりで人に見せられるものではありませんが、「そんなプログラム作らなくてもいいでしょ」みたいなプログラムにも取り組んで、手探りでコードを書いてきたことで、ほんの少しずつですが最初よりはコードを書けるようになったと思います。
コード書けるようになりたいけど勉強めんどくさいな、とか思ってる方は、ブロック崩しの作り直しでもいいのでコードを書いてみてはどうでしょうか。

上手なコード書けないくせに偉そうなこと言い過ぎたかもしれません。ソースコードにほとんどコメントが書いてなくてすみません。
以上でFUN Advent Calendar 2015寄稿記事の筆を置きたいと思います。誘ってくれたおれおくんありがとうございました。遅れてすみません。女装男子について書くとか言ってすみません。

まだまだ未熟ですので、本記事へのコメントやクソプログラムの内容へのコメント、またGitHubの使い方についてのコメントなどぜひぜひ教えて頂ければ嬉しく思います。

最後までご覧いただきありがとうございました。