2019年8月

  • 英語を身につけてみたいと思ってきた

    英語なんて身につけても役に立たねーだろ、使う機会ねーだろ。
    と思っていたのですが、オフィス内に日本語がわからない人がいます。英語でコミュニケーションを取るしかない。
    (日本語わからないのに、日本で働くなんてすごい度胸だと尊敬しちゃいます)
    英語なら伝わるので、いい機会だしちょっと英語を身につける努力をしてみようと思います。
    しかし、日本にも外国人増えたなぁという印象がすごくありますね。

    あとは、最近買ったVRゴーグルのコンテンツが英語ばかりなので「英語が楽しめればいいな、ついでに英語にもなれれるし」と思ったところもあります。

    まずはどのように勉強すればいいのか読んでみた

    最初にどんな勉強が効率が良くて、どういう勉強をすればいいのかさっぱりわからなかったので調べてみました。

    ちなみに自分の英語力なんですが、大学受験でも英語は科目になく喋るなんてもってのほかですごく苦手意識があります。
    でも、それって自分の中の勝手な決めつけと思い込みで諦めてるよな、とは思うのでその苦手意識も解消できたらいいかな、と思っています。

    英語上達完全マップ

    こちらを読みました。

    • 海外に行って暮らせば自然と身につく
    • XXするだけで簡単に身につく
    • 勉強しなくていい!

    上記の幻想は捨てろ、と書いてありました。
    自分もうすうすそうじゃないかと思ってました。
    英語を何年も学校で学んでも話すことができないのは、使うための訓練が授業にないなど様々な問題があるため。英語を身につける人は特別な努力をしているし、日本人でなくても海外の言葉を話せる人は通常の勉強以外に身につける努力をしている人だけ。
    この言葉がとても身にしみました。
    しかし、この本はけっこう喋れる人も対象にしているので自分の今の段階では最初の方読むだけで十分でした。
    しばらく勉強を進めて、身についてきたと感じたところでまた読んでみたいと思います。
    最初の段階では

    • 単語と文法などの基本を学ぶ
    • ☝️の後、初級のリスニングで、「ここの単語の意味がわからない」を一切なくるまでやる
    • 自分も発音してみる

    とりあえずこんな感じらしいです。
    初歩の初歩が全然できないのでその辺を重点的にやろうと思いました。
    もしかしたら自分の目的ではここらをマスターすれば満足しちゃうかもしれません。

    その後、さらなる高みを目指したいときに英会話の機会や、海外に行くなどするととてもいいみたいです。海外に行くのはわりと最終段階ということです。

    これからやること

    取り急ぎ必要なので、これだけでとりあえず海外に行ったときに使える!系の本と、英単語・英文法の基本の本と、リスニングCD付きの初級者向けの本を買ってみたいと思います。

    割とすぐ飽きるたちですが、進展があればここで報告したいと思います。

  • 古いワードアートをいろんなところで利用できるように画像保存する方法

    超ニッチで日本で多分自分にしか役に立たない記事を書く試み。

    みなさん!ワードアート使ってますか?
    最近のワードだと、古き良き懐かしいワードアート が使えませんよね!

    昔頑張って作ったファイルも今のパソコンだと残念ながら正常に表示されない可能性が高いのです。
    確実にMacやGoogleスプレッドシートではきちんと表示されません。

    古いパソコンを入手しよう!

    まず、Office2007より前のものが動くパソコンを用意しましょう。
    OSはwindows7はもうすぐサポート切れるし、当然office製品もサポート切れてるので何があっても知らない!古いパソコンはネットに繋がないでくださいね。
    Wordのあのクソダサ懐かしいアートスタイルのためならセキュリティを犠牲にしても構わない!
    そんな酔狂なひとだけ試してくださいね!私は怖いので、使わない古いwindows10の動くパソコンにoffice2003を入れています。ワードアート を作る以外に使わないパソコンです。

    ちなみに古いofficeの動くパソコンなんかいくらでもあるだろ・・・と思ってたんですが入手難易度は以外と高いので頑張ってください。
    ヤフオクとかフリマなら手に入りやすいんですかね?
    (しかし頑張って得られるのは、セキュリティガバガバ、スペックの低いゴミです。ただし、ワードアート が作れます

    ワードアートを作成する。

    作るのはエクセルが良さそうです。
    できるだけフォントサイズをあげてワードを作成しましょう。

    そしてできたワードアート をコピーします。
    その後適当なセルで右クリックして「形式を指定して貼り付け」

    「図(PNG)」を選択しましょう。

    その後エクセルファイルを保存すると、他のパソコンやgoogleスプレッドシートでもワードアート が表示されます。

    表示されているのは画像データなので、画像をコピーして他の画像編集ソフトに入れて編集することが可能になります。
    あとは好きに煮るなり焼くなりしちゃってください!

  • Vue.jsを最速で学んで取り入れたい!という記事

    むかーしにvue.jsの勉強を試みた記事があったんですが、それを見返したら何もやらずに終わってました(驚愕)

    リベンジ編ということで必要な範囲を最速で勉強して、業務に取り入れていきたいと思います。
    こんな感じで、勉強して咀嚼してブログに投稿するというのが、最速の技術習得方法だと思っています。
    そのノウハウについても、そのうち記事にしようかな。

    やりたいのはjQueryをVue.jsに置き換えること。

    jQueryって依然として使用率高いと思うんです。
    だって使いやすいし、簡単だし、普通の仕事の範囲だったら全然事足りてるし・・・ある程度複雑なプログラムだって組めちゃうし・・・と特に現状に不満がないスーパー有能なライブラリだと思うのです。

    しかし、先進的な人たちからは嫌われており、変えろ使うな古い遅いなどと罵られているのです。
    かわいそうに・・・。
    多分まだまだ生き残るし、10ページとかのサイト規模であれば変える必要なんてさらさらないんでしょうが、だからと言って新しいものを学ばなくても良いということにはならないと思いますので、Web業界でいきぬく為にも、ちゃんと学んでおきましょうねvue.js(jqueryが死なないという予測なら次の流行りを待ってもいいかもしれんけどね)

    jQueryの嫌われている理由

    2006年からあるツールですので、設計思想が古く、またレガシーなブラウザに対応する為に肥大化しているということも問題の一つにあげられるのだそうです。
    当時はWebアプリケーションという考え方はなく、HTMLはただの「文書ファイル」。
    データベースとのやり取りをする大規模アプリケーションにはjQueryでは辛いものがあるのだそうです。

    Jqueryは直接要素を書き換えますが、最近は仮想DOMという考え方が主流だそうです。
    書き換え処理をするのは仮想DOMの方で、表示にはそれを反映するだけ、という考え方みたいです。
    それにより、高速化や設計しやすいなどいろいろメリットがあるみたいですね。(まだ勉強前なのでイメージで言ってる)

    やりたいのはjQueryの置き換え

    最初に書きましたが、複雑なことはやろうと思っていません。
    現在jQueryで行なっていることがjQueryでおきかえられればいい・・・ただそれだけなのです。
    それでは以下に具体的にどんなことがしたいか記載していきます。

    • クリックでプログラムを起動する 済
    • クリックで要素にclassを追加する 済
    • スクロールで要素にclassを追加する(パララックス) 済
    • ウインドウリサイズでプログラムを実行する 未
    • スクロールアニメーション 未

    プラグインで行なっていることの代替

    • スライドショー 未
    • スマホメニュー 未
    • lightbox 未

    この程度だと思います。
    アニメーションに関してはCSSをできるだけ使えば問題ないと思います。
    これから調べて記載していきたいと思います。

    やってみよう

    使い始めてみる

    <script src="https://cdn.jsdelivr.net/npm/vue@2.6.10/dist/vue.js"></script>

    vue.jsをCDNで読み込むだけで使い始められます。簡単ですね。

    Vueオブジェクトを作る

    jQueryと違い、「vueオブジェクト」を最初に作ります

    new Vue({
                el: "#app",
                data: {
                    count:0
                },
                methods: {
                    countUp: function() {
                        this.count++;
                    }
                }
            })

    el → スクリプトの影響範囲の指定
    data → 情報元の変数の指定(データベース)
    methods → 実際に動かすスクリプトの名前を指定し、スクリプトを書く

    クリックで起動する

    jqueryの考え方とかなり違いますので頭を切り替える必要があります。
    ①vue オブジェクトで「影響範囲」「データの変数」「実際に動かす関数」を定めます
    ②HTMLの方では「影響範囲に指定したID」「実際にデータを表示する場所」「起動の条件(今回はクリック)と関数名」を指定する必要があります。

    クリックでクラスをtoggle切り替え

    メソッドのifで値をみて切り替えを行なっています。
    「data」で作成した変数を操作するときは頭に「this.」をくっつける必要があるみたいです。
    覚えておきましょう。
    「v-if」でhtmlの方に書いてtoggleを実現する方法もあるみたいですが、自分が理解しやすいやり方で実装しています。そっちの方も試して、メリットがありそうなら追記します。

    スクロールでメソッドを実行

    https://jp.vuejs.org/v2/cookbook/creating-custom-scroll-directives.html

    カスタムディレクティブといってディレクティブを作ることができるみたいですね。

    試行錯誤の上こんな感じになりました。(カスタムディレクティブをつける要素がどこが適切なのかよくわかりません)

    <!DOCTYPE html>
    <html>
    
    <head>
    	<meta charset="UTF-8">
    	<title>Vue.js sample</title>
    	<link rel="stylesheet" href="style.css">
    	<script src="https://cdn.jsdelivr.net/npm/vue@2.5.17/dist/vue.js"></script>
    	<style>
    		.aaa {
    			background: red;
    		}
    
    		.bbb {
    			background: blue;
    		}
    
    		.scValue {
    			position: fixed;
    			top: 0;
    			left: 0;
    		}
    	</style>
    	<script>
    		window.onload = function () {
    			Vue.directive('scroll', {
    				inserted: function (el, binding) {
    					let f = function (evt) {
    						if (binding.value(evt, el)) {
    							window.removeEventListener('scroll', f)
    						}
    					}
    					window.addEventListener('scroll', f)
    				}
    			})
    
    			// main app
    			new Vue({
    				el: '#app',
    				data: {
    					actives: "bbb",
    					scPos: window.scrollY
    				},
    				methods: {
    					handleScroll: function (evt, el) {
    						this.actives = "aaa";
    						this.scPos = window.scrollY;
    						if (window.scrollY > 50) {
    							this.actives = "aaa";
    						} else {
    							this.actives = "bbb";
    						}
    					}
    				}
    			})
    		};
    	</script>
    </head>
    
    <body>
    	<div id="app" v-scroll="handleScroll">
    		<p class="scValue">{{scPos}}</p>
    		<h1 class="centered">Scroll me</h1>
    		<div>
    			<p>ダミーテキスト ダミーテキスト ダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキスト
    				ダミーテキスト ダミーテキスト ダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキスト.
    			</p>
    			<p v-bind:class="actives">
    				ダミーテキスト ダミーテキスト ダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキスト
    				ダミーテキスト ダミーテキスト ダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキスト
    				ダミーテキスト ダミーテキスト ダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキストダミーテキスト ダミーテキスト.
    			</p>
    		</div>
    	</div>
    </body>
    
    </html>

    やはり得意なところはjsonのようなデータの出力とinputからの書き換えな気がする

    いろいろ見てきましたが、上記の内容はjqueryに任せてしまった方が早いんじゃないか?と個人的に感じました。
    inputでデータを書き換えたり、入力した内容を即HTMLに反映したり、サーバーで出力したjsonデータを表示したり・・・というところがやはりvue.jsの得意とするところなのだと思います。
    webアプリ作るなら取り入れた方がいいけど、小規模な静的サイトなら特に入れる必要はないというのが自分の中の結論です。

    次回は、jQueryとVue.jsの共存というテーマで調べて記事を書いてみたいと思います。

    その方が現実に即していて、すぐに仕事に使えそうな気がする。
    置き換えるのではなくて、共存しながら追加していく・・・という考えでいきます。このブログは。

  • Illustratorの代替ソフトはxdで決まり!

    【注意】本格的な印刷には使えません。素直にイラレ使っときましょう。

    追記 : 2020年4月から無料ではデータ共有ができないみたいです。あんまりいいソフトではなくなってしまったかも・・・

    この記事の対象者

    • svgのアイコンを作るのに使いたい
    • 簡単な図を作るのに使うソフトがイラレの代わりにほしい!
    • Webデザインではイラレはほとんど使わない!

    という場合です。

    また、普段ワードやパワーポイントで作っているA4のpdf文書をグラフィックソフトで作りたい、という場合にも使えるかもしれません。(クオリティはそんなにあげられない気もしますが)

    アイコンを作ってみよう

    • 四角/丸の描画ツール
    • ペンツール
    • パスファインダー(結合・切り抜き)
    • svg形式での書き出し
    • 文字のアウトライン化(Ctrl + 8)
    • 選択ツールでパスとハンドルの編集

    これくらいできればいいのではないでしょうか?
    これ全部できます!
    Illustratorいらないんじゃないですかね。
    ちなみにxdは無料です共有ドキュメント数に制限があるのみで、Adobeのアカウントをつくりさえすれば使えますので、ぜひ活用してみてください。

    描画ツール

    三角・丸・四角・線 などが描けますね。

    パスファインダー

    図形を選択して、右側にあるパスファインダのツールから結合できます。
    四角と三角を組み合わせれば、矢印も作れちゃいますね。
    少し上をみてもらうと整列ツールも備わっているのがわかります。

    ペンツール

    ベジェ曲線も問題なく作成できます。
    ハンドルもイラレとほぼ同じ操作感です。

    選択ツールでパスとハンドルの編集

    白い選択ツールどこ・・・?ってなりますが、オブジェクトをダブルクリックするとポイントをいじることができます。曲線ならハンドルの編集も可能です。
    alt(option)とかを使うと細かな操作もいろいろ有効になるはずです。

    文字のアウトライン化

    アウトライン化もちゃんとできますよー。
    文字を選択して
    オブジェクト > パス > パスに変換
    ショートカットは command + 8 or cirl +8

    SVG書き出し

    こんな感じで書き出せます。ここはほかの詳しいサイトを見た方がいいかも

    まとめ

    これで足りたでしょうか?ぜひ試して活用してみてください。

  • 稼ぐ言葉の法則

    とても勉強になった本です。
    商品・サービス・広報など考えるときは一度このフィルターを通そうと思いました。

    ↓フレームワークのエクセルファイル