カテゴリー: 開発

WPのシンタックスハイライト

このブログでは、サーバーの構築手順なんかも紹介してるので、「シンタックスハイライト」はぜひとも使いたい。 当初は「Enlighter」を使ってたんだが、イマイチかゆいところに手が届かない。 「ソースコード」ならいいんだろうが、「コマンド履歴」を記載しようとすると、いまいちフィットするのが無いし、テーマをカスタマイズしようとすると、WAF に引っかかってウザったかったりといった具合。 で、いい感じのが無いかと探して、「Highlighting Code Block」というのにたどり着いたんだが、対応言語を増やせるという触れ込みだったはずが、上手くいかず。 「Highli...

続きを読む

初めてのPerl&続・初めてのPerl

最近は、Webサイトの案件といえば、WordPressが圧倒的に多く、そうでなかったとしても、PHPを使ったシステムのことが多い。 しかし、フリーランスとして独立した当初は Movable Type の案件がスタートで、自作のプラグインを開発したりしたんで、Perl を使っていた。 そんな時期に購入した本。 古いっちゃ古いが、Perlが使える環境はレンタルサーバーとかだと、まだまだ多い。 この本は Perl 5.10 を前提に書かれていて、現在は Perl 5.32 まで来ているので、古いのは確かだが、メジャーバージョンアップがされているわけでは無いので、学習用にはまだまだ十分使えるんじゃな...

続きを読む

今すぐ使える かんたん SEO&SEM

SEOのノウハウって、検索サイト側のアルゴリズムが変われば影響を受けるし、かつて通用したテクニックが突然使えなくなる、なんてこともある。 そういう意味では、この本はさすがに情報が古いし、今となっては使えないツールも紹介されている。 とはいえ、すぐに廃れるような小手先の裏技的なものが紹介されているわけでは無く、基本といえば基本になるようなノウハウが紹介されているので、基本を学ぶ意味では、この本の価値もまだあるかもしれない。 今すぐ使えるかんたん SEO&SEM

続きを読む

事務所NAS gitサーバーの構築

http://nuneno.cocolog-nifty.com/blog/2016/08/synology-nasd-1.html https://gist.github.com/walkerjeffd/374750c366605cd5123d 1.NASにGit Serverをインストールする DSMのパッケージマネージャーから、Git Serverを探してインストールする。Gitlabが使えるという情報もあったが、情報が古いのか、DS418jが対応してないだけなのか、ともかくGitlabはインストール出来ない。Git Server自体はインストールできるので、...

続きを読む

Dockerで開発環境 Dart編

今度は Google 謹製のプログラミング言語、Dart にチャレンジ。 https://www.dartlang.org/ JavaScript の代替となるべく開発された・・・ようだが、Chrome への Dart 用仮想マシンの搭載は断念されたらしい。 公式サイトにインストール手順は示されているが、どのディストリビューションが指定されているわけでもなく、依存パッケージも書いていない。 Linux の手順として、apt-get を使う手順が示されているので、apt-get を使うディストリビューションで行ってみる。Ubuntu か Debian あたりが妥当か。...

続きを読む

Dockerで開発環境 Rust編

こんどは、Mozilla が開発に大きく携わったという、Rust にチャレンジ。 https://www.rust-lang.org/ https://doc.rust-lang.org/cargo/index.html 公式サイトによると、インストールは下記のスクリプト一発らしい。 curl https://sh.rustup.rs -sSf | sh 別にディストリビューションを限定するものでもないようだ。 ならば、Alpine でやってみようじゃないか。 が、Dockerfile 作ってビルドしようとすると、下記のようなエラーが出てダメ。 curl...

続きを読む

いろんな言語で “Hello World!” 1970年代

タイトル通り、いろんな言語でプログラミング入門のど定番、"Hello World!" をやってみる。 プログラミング言語年表(Wikipedia) プログラミング言語一覧(Wikipedia) 1.C言語 環境:Alpine Linux 3.9 + gcc 8.3.0 + libc-dev 0.7.1(Docker) C言語とC++は、社会人になってから初期の段階で仕事で使っていた。プログラミングを習得するにあたって早いうちにコレに触れられたのは大きいと思う。 [hello.c] #include int main(){ p...

続きを読む

Dockerで開発環境 Swift編

今度は、Apple 謹製で、iOS や Mac 向けのアプリを作るのに利用されている、Swift にチャレンジ。 X Code 入ったMBPなんで、もう普通にMacでプログラミングしたほうが良いんだろうけど、モノは試しなので、Docker上に作れないか、試してみる。 Docker Hubには、オフィシャルのSwift イメージも公開されている模様。このイメージは Dockerfile も公開されているので、それを見ながら作っていくということもできそう。 ただ、公式サイトでもサポートされているディストリビューションは Ubuntu のみと書かれていて、公式イメージもUbuntu...

続きを読む

Dockerで開発環境 Hack編・・・は難航中

今度は facebook 謹製のプログラミング言語で、 HHVM という仮想環境で動作する。 PHP をベースにして開発された言語で、PHP で書かれたコードのほとんどはそのまま Hack のスクリプトとして実行可能、とされている。 https://qiita.com/azurite@github/items/1a7b58c2898aac34a7d0 https://docs.hhvm.com/hhvm/getting-started/getting-started CentOS や Ubuntu での構築事例はちらほらネットにあがっているようだし、Docker H...

続きを読む

Dockerで開発環境 Julia編

今回は新しい言語にチャレンジ。Juliaの環境を作ってみる。 公式サイト:https://julialang.org/ Docker Hubには、オフィシャルのイメージも公開されている。(Debianベース) 公式サイトでは、バイナリも公開されていて、"It is strongly recommended that the official generic binaries from the downloads page be used to install Julia on Linux and FreeBSD." ということなので、Linuxではこれを使えば良いらしい。 ...

続きを読む

Dockerで開発環境 RPG・・・は無理っぽい

RPGはこれも古くからある言語で、1950年代発祥のものだが、IBMが開発したIBMの処理系専用の言語らしい。 Wikiにも、IBM-i や OS/400 上で動作する、とある。 いろいろと調べては見たが、Orion とかいう、クラウド上のIDEくらい。これでRPGの開発・・・とか言う記事もあったが、それでもAS/400サーバーにアクセスして・・・とかあったので、結局はIBMの機械が必要っぽい。 ということで、RPGについては断念することとする。

続きを読む

Dockerで開発環境 LISP編

引き続き、古い言語と格闘してみる。今度はLISPにチャレンジ。 とはいえ、LISPといっても、「方言」がメチャクチャ多数ある。ややこしいのは「純LISP」という「方言」まである。(もともとのLISP=純LISP、というわけではない) その中でも、今でも割と情報がありそうなのは、Common LISP や Emacs LISPあたりか。Wikiでは、Clojure、Scheme といったところもLISPの方言とされてるけど、TIOBE Indexに行くと、これらは別言語扱いでランキングされている。 *ここまで来ると、方言というより、「LISPをベースとした別言語」「LISP系の...

続きを読む

Dockerで開発環境 ALGOL68編

またまた古い言語で、今度はALGOLにチャレンジ。本当に作れるかどうか確証はない。 流石に最近の現場で使われることはまず無いであろう、歴史上の言語だが、ブロック構造や入れ子、という記法を初めて導入した言語なので、いろんな言語の『ご先祖様』とは言えるだろう。 流石に手に入るような開発環境はないかなと思って調べてみたら、意外にもそこそこあるようだ。 ただ、一口にALGOLとひとまとめにしてしまうと何かと問題があるようで、実装によってかなり仕様に差異があるようで、Wikiで紹介されてるHello Worldだけを比べてみても、結構な差がある。(ざっくり分けても、ALGOL 58、A...

続きを読む

プログラミング言語の一覧

一覧の元ネタはWikipediaから。実際に調べたり、動かしてみたものを順次列挙。 プログラミング言語年表(Wikipedia) プログラミング言語一覧(Wikipedia) 名称 登場時期 方言/規格 影響を受けた言語 影響を与えた言語 C 1972年 K&R、ANSI C B言語、ALGOL、アセンブリ言語、Pascal awk、csh、C++、Objective-C、D言語、Java、JavaScript、Limbo C++ 1983年 −−− C言語、Simula、Ada Java、C#、D言語、PH...

続きを読む

Dockerで開発環境:Fortran編

古い言語へのリスペクト強化週間(?)の第二弾、ってことで、今度はFortranにチャレンジ。 なんでも、世界初の『高級言語』はこのFortranなのです。 情報処理2種の勉強してた頃は、事務計算のCOBOL、科学技術計算のFortranという覚え方をしてました。 Ubuntuを使えば、gfortran というパッケージが使えるらしい。 参考サイト https://www.linuxmania.jp/aptget-site.html#fortran https://hub.docker.com/r/qualified/fortran/dockerfile ...

続きを読む

いろんな言語で “Hello World!” 〜1950年代

タイトル通り、いろんな言語でプログラミング入門のど定番、"Hello World!" をやってみる。 プログラミング言語年表(Wikipedia) プログラミング言語一覧(Wikipedia) 1.アセンブラ 環境:Alpine Linux 3.9 + yasm 1.3.0 or nasm 2.13.03 +  gcc 8.3.0 (Docker) アセンブラは、就職にあたって、当時の情報処理技術者試験2種の勉強のためにCASLをやった程度。 [hello.asm] section .text global _start _start: mo...

続きを読む

Dockerで開発環境:アセンブラ編

事前にpullしていたAlpine Linuxのイメージを元に、アセンブラの開発環境を作ってみる。 参考:http://dqn.sakusakutto.jp/2011/05/hello-world.html Alpine Linuxでアセンブラをやる場合、YASMというのがあるらしい。 ちゃんとapkでインストールできるパッケージも用意されている。 とはいえ、yasmを入れても、アセンブリしてできるのはオブジェクトコードまでで、実行できるようにするには、ldコマンドでリンクしてやらんといかんらしい。で、そのldコマンドはgccを入れると使えるようになるらしい。 と...

続きを読む

Dockerで開発環境:C/C++編

事前にpullしていたAlpine Linuxのイメージを元に、C/C++の開発環境を作ってみる。 Docker Hubのイメージに、gcc というのがあるので、それを使っても良いんだろうが、なんせ1GB超えのイメージなので、できるだけ軽量なのを使いたい。 ということで、Apline Linuxのイメージを元に作ってみる。 参考:https://qiita.com/Panda_Program/items/abbff0864fb65bdfe7d0 最低限やることといえば、素のAlpine Linuxに gcc と libc-dev を入れるくらい。 Dockerfi...

続きを読む

WordPress on Docker

Docker を使って、MBPの中にWordpress環境を作ってみたのでメモ。 1.フォルダ構成 wp-site └┬─ docker-compose.yaml ├ config │  └ php.ini # アップロード上限の設定変更 ├ data  # MySQLのデータ ├ wp  # wordpressのコンテナ用 │  └ Dockerfile └ wp-content  #WPのテーマ等 開発するテーマファイルのソースをここに。 2.Wordpressのコンテナ用Dockerfile FROM wordpress RUN apt-get update ...

続きを読む

MBPに入ってるプログラミング言語

既にX Codeを入れてしまった後なので、X Codeと一緒に入ってしまったモノもあるかもしれないが、現状のMBPに入ってるプログラミング言語絡みのいろいろを整理してみる。 「主要なプログラミング言語」かどうかは、TOIBE index を参照してみた。上位20位に入ってるもの、その他聞いたことがあったり、老舗だったりする言語もピックアップしてみた。 こうやって見ると、Macには相当いろんなプログラミング言語の開発環境が入れられるというのがわかった。 Bash(シェル) $ bash --version GNU bash, version 3.2.57(1)-rele...

続きを読む