プログラマ行進曲第二章

主にソフトウェア関連の技術をネタにした記事を執筆するためのブログ

"The Flask Mega-Tutorial"のPartⅣまで進んだ

表題の通り。

http://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-v-user-logins

これを今日はやった。

今日やったことは以下。

…うん、これだけ。

でも少しずつ進んでいる気はする。

更新を「続ける」ことが大切

そう思ってやってます。

はい、今日も空手の稽古帰ってからブログにまとめる余裕がなくなってきて適当文です。

とはいえ、空手の稽古とかで運動していないと割と発狂フラグが立ってきて心身ともによろしくないことは今までの経験上分かっていますので、稽古に行くのは続けますけどね。

本当ならこうやって空手稽古で掴んだ内容をブログにまとめておくといいのかもしれないけれど、プログラミングと違って(?)身体操作が絡む行為で得た内容を言語化してブログにまとめるのって、かなりの時間と言語技術が要求されると思っているので、中々ムズカシイデスネ。

まあ、今日はマンツーマンで稽古できてピンアン初段から5段までみっちり確認しながら練習できて良かったです、はい。

Webプログラミングよく分からないのでチュートリアルで勉強し始めた

golangを使ってゲストブックアプリとか作ってみてよく分かったが、基本的にWebプログラミングをよく分かっていないので一度まともに一通りのものを作ってWeb上に公開しないと勘所が分からない気がしてきた。

golangのMartiniはpythonのFlaskに似ていると思うので、ノウハウが既にWeb上にたくさんあるFlaskを入り口にしてWebプログラミングの勘所を学んでいけばそのままMartini使う上でも生かせそうだなと思い、チュートリアルに手を付けることにした。

前から見つけてはいたのだが、The Flask Mega-Tutorialというものがあり、これがかなりまとまっていそうなのでこれを利用してみようと思う。

記事を書いた人は2014年、つまり今年にオライリー本家から"Flask Web Development"という書籍を出すらしいので、そういう意味でもとっかかりとしてやるにはいいかなと思っている。

やる気がなくなった

のだが、下のMADを見てかなり回復してきた。

権利関係とかの問題あるから普段はMADとか紹介しないんだけど、今回はその原則曲げて紹介したかった。それだけの愛を感じるものだったので。

今年の8/31も楽しみだ。

Sphinx+翻訳 Hack-a-thon 2014.1でEpub3ビルダーの実装の続きをしてました #sphinxjp

Sphinx+翻訳 Hack-a-thon 2014.1/Sphinxハンズオン

かなり久しぶりに参加してきました。と思って調べてみたら、昨年の10月に参加していたようです。記憶は当てになりませんね。

やったこと

SphinxのEpub3ビルダー実装しようと悪戦苦闘してました。

最初に言っておきますが、Epub3ビルダーといっても、まず形式をEpub3形式にする最初の段階のものなので、これができあがったからといってすぐに縦書きだとかルビ使えるとか思わない方がいいですよ。

Epub3ビルダー、これまで躓いていたのは目次に当たるナビゲーションドキュメントの生成だったのですが、ここにきてようやく形になりつつあります。

下のスクリーンショットはMacアプリのMurasakiで開いたPython3.3のepub2ドキュメントです。目次の階層構造が複雑であるという点でテストに適しているので、Python3.3日本語ドキュメントのリポジトリをテストに使用させてもらってます。

次が今作っているEpub3ビルダーで生成したPython3.3のepub3ドキュメントです。

左メニューに表示された目次はまだ階層構造を表現できていないですが、単なるページ内での目次ならちゃんとepub2のものを写し取れるようになってきています。

…が、はっきりいってコピペ&場当たり的なコードで作っているので、現状では下のようにiBooksとか他のリーディングシステムだとinvalidだと警告が出ます*1

epub2の方だとこんな感じ。

結構長い間手を付けていなかったのでそろそろ作業再開して、いい加減報告できるような形にしたいと思ってます。

今日のハッカソンでepub2の方を生成するときの動きをデバッガ使って結構調べられたので、epub3の場合はどうするか考えながら作業進めたいですね。

*1:別にiBooksがEpubリーディングシステムとして優れているというわけではないと思いますがね。

Bootstrap3からFoundation5に移行した

昨日Bootstrap3にしたって記事を書いたばかりですが、今ちょこちょこ手を入れているゲストブックアプリに使っているCSSフレームワークFoundation5に移行してみました。

何で移行したかっていうと、

  • 元々Foundationの方に興味があった。
    • というかみんなBootstrapの方使ってるし、みんなが使っているのに興味あんまり湧かない性格なので。
    • アニメとかゲームでもそうなので。
  • ドキュメントの読みやすさはFoundationの圧勝だった(個人的に)
    • というかBootstrapのページ、あれ元々CSSフレームワークをどういう風に使うものなのか分かってる人しか読みやすくないのでは? と思うくらい、読みにくかった。
    • Bootstrapのページの読みにくい原因の大半は、最初の方に「Bootstrap2から3への移行の仕方」みたいな既存ユーザー向けの記述が来ているのに対して、新規ユーザー向けの「そもそもこんな特徴があります」「○○はこういうものです」といった説明がされてないように見える。
    • あと、Bootstrapのページ見てリファレンス見たかったのにそれっぽい項目無いなとか思ってたら、"CSS"の中にあるとかそれないだろ!
    • Foundationの方は、ドキュメントは"Docs"って分かるように書いてあったし、古いバージョンからの移行の仕方は別個に分かりやすいように置いてあったので、新規ユーザーの自分にとっては自然な流れで頭から読めたのが非常に好印象だった。

結構Foundation推しな感想ですけど、単純に第一印象のみの感想なので、地力の差を表しているわけでは無いですよ、と言っておきます。

どうせ世の中にはFoundationのノウハウよりBootstrapのノウハウの方が数が多いでしょうから、単純にいったらBootstrap使っていた方が詰まったときに解決法探しやすいと思います。

が、まだ今のところ個人的な使用しかしていないし、簡単な使い方程度ならどちらも似ているところがあるので学習移行コストもそれほど高くないだろうと思ってやっていきます。

以上。

Bootstrap3とか初めて使ってみた

今お遊びで自分のプロフィールサイトとかゲストブックアプリとかをGoogle App Engine上に乗せて遊んでいると以前記事で書いたと思うのですが、そのゲストブックアプリにBootstrapとかを使ってみました。というだけの記事です。

適当に使っただけなので全く見やすくなっていないのですが、とりあえず最初の段階はクリアしたのかなとか思ってます。

CSSフレームワークとか一つでもいいから主だったものをパッと使えるようになっているのといないのとでは多分でもサイト構築力も段違いになるんだろうなあ、とか思っているので。

今日は上記のゲストブックアプリとかを動かしているMartiniの使い方も少しまた学んだので、明日辺りにまた記事かけるといいなあ…