Tambourine作業メモ

主にスキル習得のためにやった作業のメモ。他人には基本的に無用のものです。

Rails チュートリアルをやってみる(2) 1.3 最初のアプリケーション

1.3節から、チュートリアルに合流する > bundle exec rails _5.1.6_ new hello_app create create README.md create Rakefile create .ruby-version create config.ru create .gitignore create Gemfile run git init from "." Initialized empty Git reposi…

Rails チュートリアルをやってみる(1) 〜1.2 前置きと環境のセットアップ

いまや、新人プログラマの最初の難関として知られるようになったRailsチュートリアルをやってみることにする。 Railsが無かった頃からのRubyユーザーで、なんだかんだと日常の道具としてRubyを使って20年だが、 Railsは仕事が暇な時期にちょびっと本を読んで…

CSS GRIDを勉強してみる(12) - アスキーアートっぽい指定

CSS

ガイドは新しいページに入った。 developer.mozilla.org グリッド線に沿って配置するのが王道なんだけども、そうではないやり方もある。 アスキーアートっぽいやり方が。 いや、ガイドにそう書いてあんだもんよ("we sometimes call this the ascii-art metho…

CSS GRIDを勉強してみる(11) - さまざまなshorthand

CSS

ここからは developer.mozilla.org を読む。エゲレス語の文書を読んでいて、かつ、私の英語能力がプアなので、英語そのままの用語が出てきたり、 英文をそのまま引用したり、内容を勘違いしていたりするかもしれない。知ったこっちゃないけど。 あと、少しペ…

CSS GRIDを勉強してみる(10) - display: contentsとの関係

CSS

今度はdisplay: contentsとの関係の話。また知らない子の登場である。 ちょっと調べてみたところ、display: contentsを指定すると起きることは あたかもその内容がタグで囲われていないように扱われるということのようだ。ほっほーう。 DOMツリー上、レベル…

CSS GRIDを勉強してみる(9) - 絶対位置指定との関係

CSS

グリッドコンテナやアイテムが絶対位置指定のブロックとどういう関係になるか、見てみる。 出発点は、こんなHTMLとCSS。box3に長い文章が含まれている。 div class="wrapper"> <div class="box1">One</div> <div class="box2">Two</div> <div class="box3"> このブロックに絶対位置を指定する。 グリッドコンテナがブロックを含</div>…

CSS GRIDを勉強してみる(8) - グリッドをフレックスボックスに近づける

CSS

残念だが、ここから翻訳がなくなっているのでエゲレス語を読むしかない。とほほ。 さて、フレックスボックスとfrとminmax()を使ったグリッドは、一列の幅いっぱいにアイテムが 広がるという意味では似ている。しかし、全体の幅を広げたり狭めたりしたときに …

CSS GRIDを勉強してみる(7) - アイテムの配置

CSS

フレックスボックスでアイテムの配置を制御して、こんな風に並べてみる。 指定しているCSSはこんな感じだ。 wrapper { display: flex; align-items: flex-end; min-height: 200px; } .wrapper > div{ padding: 1em; } .box1 { align-self: stretch; } .box2 …

CSS GRIDを勉強してみる(6) - グリッドとフレックスボックス

CSS

ここからは、 developer.mozilla.org の内容に入る。 グリッドとフレックスボックスの違いについてが最初のテーマ。 しかし、音に聞くBootstrapとはなんぞと遅まきながら調べてみたら、 最近はCSSのグリッドもいいらしいぜという経緯で勉強をはじめているた…

CSS GRIDを勉強してみる(5) - コンテンツの重なり

CSS

スタートはこの状態から。 グリッドアイテムは同じセルを占有することができる。つまり、重なってもいい。重ねてみる。 今、わざと各コンテンツの背景色の透過度opacityを0.5にしてあるので、重なっているのがよくわかる。 しかし、これだとどちらが上にある…

CSS GRIDを勉強してみる(4) グリッド線

CSS

Firefoxの開発者ツールのGrid Inspectorのオプションには"Display line numbers"という項目があって、 これにチェックを入れるとグリッド線の番号がわかる。縦横それぞれに1から始まる番号がついている。 コンテンツの配置位置をこのグリッド線を使って指定…

CSS GRIDを勉強してみる(3) 暗黙的なグリッド

CSS

暗黙的なグリッドと明示的なグリッドについて説明されている。 例えば、この状況。 2行3列のグリッドが出来ているけど、CSSで指定しているのはgrid-template-columnsだけ。 だから、列は「明示的」だけど行は「暗黙的」ということになる。 暗黙的なグリッド…

CSS GRIDを勉強してみる(2)

CSS

developer.mozilla.org これを読んでる。 まず、初っぱなはここからスタートする。 HTMLはこんなの。 <div class="wrapper"> <div class="one">One</div> <div class="two">Two</div> <div class="three">Three</div> <div class="four">Four</div> <div class="five">Five</div> <div class="six">Six</div> </body> CSSはこんなの。重なってもわかるように半透明の色をつけてます。 .wrap…

CSS GRIDを勉強してみる(1)

CSS

フロントの技術について知らなさすぎるので、今度はCSSを勉強してみたい。 というわけで、CSS GRIDをやる。なぜかその前にBootstrapのhowtoビデオを見た エゲレス語が難しいので0.5倍速で見た。時間がかかった。コンセプトはわかったけど、HTMLの魔改造ぶり…

Angularで遊ぶ(7) - ディレクティブ - ngFor

お仕事だと一番よく使うかもしれない、要素をテーブルにするための繰り返しのディテクティブ。 TABLEなら繰り返しの指示は<table>に書く。 複数の要素を繰り返したかったら<ng-container>というダミーの枠を作る。 app.component.html <table class="table"> <tr> <th>No</th><th>通称</th><th>型式番号</th><th>主なパイロット</th> </tr> <tr *ngFor="let b of ms; index as i"> <td>{{i + 1}}</td> <td></td></tr></table></ng-container></table>…

Angularで遊ぶ(6) - ディレクティブ - ngIf

条件によって要素を追加・削除する。これは開発者ツールでみたDOMの変化が面白かった。 app.component.html <form> <label for="ifsample">表示/非表示</label> <input id="ifsample" name="ifsample" type="checkbox" [(ngModel)]="ifsample" /> </form> <div *ngIf="ifsample"> <p>見えてる?</p> </div> app.component.ts export class AppComponent { ifsample = false; }…

Angularで遊ぶ(5) - パイプ

テンプレートの機能にパイプというものがあって、 シェルのパイプのような記法で表示する変数を整形できる。 表示のための機能はテンプレートに寄せたいと、そういうことなのかな。 わざわざ新しい記法を入れてまでやることなのかとか、そんな気がしないでも…

Angularで遊ぶ(4) - データバインディング - 双方向バインディング

読んでもよくわからない・・・サンプルは以下 app.component.html <form> <label for="name">名前:</label> <input id="name" name="name" [(ngModel)]="myName" /> <div>こんにちは、{{myName}}さん!</div> </form> app.component.ts export class AppComponent { myName = '山田' } [ ]でViewへ向かう方向のバインド、( )でコンポーネントへ向かう方向のバインドを …

Angularで遊ぶ(3) - データバインディング - イベントバインディング

フロントの動作の核心、イベントの扱いでございましょう。 app.component.htmlはこんな感じ <input type="button" (click)="setCTime($event)" value="現在時刻" />{{ctime}} <hr /> <form> <label for="key">キー入力:</label> <input id="key" name="key" (keydown)="keylog($event)" /> </form> <div>キーコード:{{which}}…</div></hr>

Angularで遊ぶ(2) - データバインディング - 属性バインディングとクラス・スタイルバインディング

app.component.htmlはこんな感じ <table border="1"> <tr><td [attr.rowspan]="len">結合</td><td>1</td></tr> <tr><td>2</td></tr> <tr><td>3</td></tr> </table> <div class="line back" [class.fore]="clazz" [style.text-align]="align" [style.font-size.%]="fsize">…</div>

Angularで遊ぶ(1) - データバインディング - Interpolationとプロパティバインディング

この本で勉強してる。安定の山田祥寛クオリティ。感謝しかない。Amazonへのリンクを貼ってますが、技術評論社の本なのでPDF版が買えますからそちらをお勧め。下のリンクからどうぞ。 Angular アプリケーションプログラミング | Gihyo Digital Publishing … …

ANGULAR QuickStartをやってみる

プロジェクトの切れ目ってこともあり、新しいものを勉強する。 なので、買って1年ぐらいほったらかしのAngularの本をやる。 まず、githubにあるquickstartを取ってこいと書いてあるので観に行くと、 quickstartはCLIツールをインストールしてそこから取るよ…

Rを触ってみろ

・・・と会社から言われたので、イジってみる。とりあえず、Rを使うような仕事が目の前にあるわけではないんだけども。R自体はhttps://www.r-project.org/から入れる。今回は今時点の最新らしいR-3.5.1.pkgをダウンロードした。あとはインストーラーの言われ…

Apache Spark で遊びたい(3)

DatasetのAPIドキュメントは、> https://spark.apache.org/docs/latest/api/scala/index.html#org.apache.spark.sql.Datasetにあると書いている。次に進む前にちょっと眺めてみる。説明書きに書いてあることをまとめておく。 Dataset とは別にDataFrameとい…

Apache Spark で遊びたい(2)

本家のQuick Start(https://spark.apache.org/docs/latest/quick-start.html)をやってみる。最近ちょっと勉強しかけているScalaの方をやってみる。 > spark-shell 2018-05-03 16:40:22 WARN NativeCodeLoader:62 - Unable to load native-hadoop library for…

Apache Spark で遊びたい(1)

なんだかインストールばっかりしている気がするが、まあ、そんなものである。社内の勉強会で、ちょっくらApache Sparkを触ってみることになった。まずは、環境の確認 > python --version Python 3.6.0 :: Anaconda 4.3.0 (x86_64) > java -version java vers…

Apache Spark で遊びたい(4)

Quick Startの続き。"More on Dataset Operations"に沿って遊んでみる。データは、大昔のとあるサーバのjavaheapのデータを使うことにする。こんなデータ。 > head -n5 javaheap.app01 09:00:11 550792720 1543502336 09:01:10 321361976 1543502336 09:02:1…

Hyperledgerで遊ぶ(4) - いよいよインストール

npmでインストールするらしい。 > npm install -g composer-cli npm WARN deprecated fs-promise@1.0.0: Use mz or fs-extra^3.0 with Promise Support npm WARN deprecated crypto@0.0.3: This package is no longer supported. It's now a built-in Node m…

Hyperledgerで遊ぶ(3) - node.jsはv6じゃないとだめだって!

で、いよいよHyperledgerを入れようとすると、node.jsのバージョンはv6までじゃないとだめだというhttps://hyperledger.github.io/composer/installing/development-tools.html The following are prerequisites for installing the required development to…

Hyperledgerで遊ぶ(2) - いろいろとインストール

引き続き、pre-reqをインストールしていく。nodeはインストール済みなので、brew upgrade nodeで最新化。Dockerはbrew cask install dockerする。VSCodeはMicrosoftからダウンロードして普通にインストールした。Hyperledger Composer Extension for VSCode…