久しぶりのJavaScript祭り。今回はスピンオフとして「フロントエンド祭り」ということで、今回は「Webのフロントで動きのあるUIを作る時はだいたいjQueryプラグインを選ぶところから始めてる」って感じの人が「え、その機能はこのプラグインにないのでできません」って言わなくてすむようにちょっとずつ自分で作れるようになろうぜ!みたいなノリで話しました。jQueryプラグインみたいなものを自分で作る場合、どうしてもオブジェクトの基本的な仕組みとか挙動をある程度抑えないと作れないので、その辺の言語仕様的なとこについても触れてみた。いう事を話したの初めてなんじゃないかな。今回そういう理由で言語仕様の話をまず最初にやったわけだけど、やっぱり凄く説明が難しいなぁと思う事があったりあれもこれも話さないとダメだってなって凄く長い説明になったにも関わらずとても大事な概念を2つほど話せてなかったので実は結構悔しい思いをしていたりする。何となく今までjQueryで何はともあれセレクタをチョイスしてクリックイベントのコールバックにズラーって処理を書くタイプのいわゆるjQueryなコードから離れ、パーツ(関数)を細かく分離して必要なデータはオブジェクトに格納して単一UIのオブジェクトを作成してそれをnewする感じのオブジェクトベースのUI開発のイメージは掴んでもらえたんじゃないかと思う。jQueryはとても素晴らしいけどjQueryベースの記述をずっと続けるのは見づらかったりメンテ性低いとか色んな理由であまり良いとは言えないからこの辺は実践してもらえると嬉しいなぁという思いがある。いやまぁとはいえ僕もノーメンテのつもりの一度書いて終わりの感じの小規模の場合はがーっと書いちゃうことあるけど、あれですよ、そういう気概は持っておこうねって話です。いうわけでそんな事を考えながら作った資料です。Decksetで作る場合はタイトルページのサムネイルのことを考えて英語タイトルにすれば良いのかなぁと思って今回英語タイトルにしたんだけどどうも何かかっこつけてるみたいな気がして好きになれない。タイトルちゃんと出るの凄く嬉しい。Facebookに流れたりしたときもサムネが真っ白なの寂しい。僕は小規模案件をちょいちょいやる事が多くスケジュールに余裕がないことも多いので、どんなものであれできる限り早く作ることが求められていると思っている。受託だと速さ命みたいなとこあるよね。いった小規模案件を多くやっていくと、段々「デザインは違うんだけど大体こういう感じのhtml書けばcssで良い感じに吸収できるようにはなるよね」みたいなのが見えてくる。同様にcssも衝突とか上書きとかに神経を使わなくて良いようにできる限り堅牢に作るようになってくる。僕の場合そういうタイミングでちょうどBEMが出てきたのもあって最近はすっかりBEMっぽい書き方になってきてる。JSでも、以前はUI単位でjQueryプラグインをひたすら作ってたんだけど何でこちらから100%jQUeryに依存しきった形で書いてだろうって重いもあって、jQueryプラグイン形式じゃなく、それでもまぁDOM周りはjQuery依存してるままだけど単体UIのモジュール化を心がけるようになってきた。やって一つ一つ効率よくとか今後のことを考えてとかやっていって出来上がったものを後で見てみると、これが案外色々使い回せそうな感じのものが出来上がってきてて、何だったらWebComponentsを当たり前に使うようになるまではしばらくこんな感じでいけんじゃないかくらいにはなってきた。久しぶりにCreatorsMeetUpで登壇してきた。今回は僕のJade愛をひたすら話す回だったし、それは同時に僕がどれだけ閉じタグを憎んでいるかをひたすら話す回という意味も含んでいる。それくらい閉じタグが嫌い。htmlとかWebが嫌いとかそういう意味では全くない。閉じタグなんてものを書かなければならないのか、ただそれだけ。いうわけでひたすらhtml(というか閉じタグ)が嫌いだから閉じタグを書かなくて良いJadeをみんな使おうぜ!的に何がどう便利なのかを熱弁したのだけれども、こういった類いのものは「便利なのは分かるけど導入に踏み込むには障壁が多いよね」みたいな言葉と共に次第に発表で感じた熱も冷め、いつしか記憶の奥底とブックまーっくの階層不覚に追いやられさほど現状と変わらぬまま、というケースも往々にしてあるのだろうなぁとも思う。できんもんはできんしね。それでもわざわざ資料を作って発表をするということは、「今はエッジな感じかもしれないけれども、いつかSASSくらいにはメジャーになる日がきっと来るだろうしその時は俺が立役者になってるはずだ!」とかそんな意気込みをこっそり懐に忍ばせつつ話すわけで、まぁとりあえず流行って欲しいというか「Webページ作る=Jade書く」くらいになると良いなぁというのが目下の希望。いうわけでその時のスライドはこちらです。Jadeの基本的な記述法と機能を紹介し、自動化の方法と僕がJadeを使っている中でこうすると便利だ的なTIPSをおまけとして紹介している。僕的にはおまけが一番アツいとこだと思ってる。from[.....]つづきをよむAlfredでも任意のキーワードで任意のアクションを追加する方法2014年11月15日Alfred凄く好きなんだけど、基本的に入力したキーワードがマッチしたものを実行するタイプのアプリなので、Windowsのbluewindみたいに「俺が決めたこのキーワードを売った場合はこのアプリを開きたい(このフォルダを開きたい)」が叶わないなーと思ってたんだけど一応やり方が分かったから書く。カラーピッカーが出る。いうのをなんとかしたい。WorkflowがいるからPowerPack買おう。悪いこたぁ言わねーから買っとけ。春に続き秋もJavaScript祭りが開催されましたね。僕は話たいことを話しに行っただけなのですが、取り仕切ってくれているITかあさんを筆頭にスタッフの方々、会場をご提供頂き、懇親会のスポンサードもやっていただいた株式会社IDCフロンティア様には感謝の言葉しかありません。抽象的な、もっと言うと精神論的な話がしたいなぁと思ったので「プログラム習得にあたりその進め方」について話しました。僕はこのJavaScript祭りはJavaScript知らないといけないんだけどプログラムさわったことないんだよね、って人も結構来るんじゃないかなぁと思ってるので、すげーライブラリとかは今回はまぁ見送りというか僕はそんなに色々ライブラリ触ったわけでもないしで、じゃあ今回は非エンジニアでもそここそ分かる話かつ覚えるために絶対必要だと思う事を中心に話していこうかとおもって今回の話の内容になりました。言いたい事は「書かんと始まらんよ」だけなんですけどね。本買って勉強会に行って色んな知識を蓄えて。それだけじゃ全然ダメで。書かないとなんの意味も無いしなんの成長もしない。どの言語でも「〜がダメだ」って言うことあると思うけど、それは書いてみてダメな事が分かってそれがもたらした結果で自分がどれほど辛い思いをしたか、とかそういう心に刻まれたものの量が結局大事なんだと思う。Xの最新版Yosemiteがベータリリースしたから試しに入れてみたところ、ちょこちょこ動かないものとかが出てくる。ディレクトリの移動」が億劫です。素早く開きましょう、そう、Alfredで。いう機能があって、そのまんまファイルを探せるんです。ディレクトリが出てきます。ディレクトリが出てきたらTabキーでアクションを選択する画面に移るので、「ターミナルで開く」的なアクションを選択しましょう。カーソルキーで移動しても良いし「termi」あたりまで打てば出てくるでしょう。Finderで該当フォルダまでちまちま移動する必要もないから楽だと思います。言葉だけだと分かりづらいかもと思ってスクリーンキャスト撮ってみた。こちらで紹介されていたコマンドをzshでもやろうとして探してみました。gruntを使い出したくらいから結構色々とターミナルで作業する事が増えたのでたまーにちょこちょこカスタマイズしたりしてるんですが、cdしたあとのlsは目から鱗でした。