View posts.md

ブログネタ

自分で書く

  • 完全リモートでのソフトウェア開発の可能性
  • ソフトウェアを外注する際の注意点(失敗しない発注方法)
  • 雨が降るとインターネットが重くなる?
  • 開発の見積事例
  • チケットの書き方
  • Cookie Cutter Scalingの欠点
View jquery-selectmenu.js
Vue.component('jquery-selectmenu', {
props: ['value'],
template: `<select><slot /></select>`,
mounted: function() {
const emit = value => this.$emit('input', value);
$(this.$el).selectmenu({
change: function(event, data) {
emit(data.item.value);
}
});
View q.md

質問

  • Rails経験はありますか?
  • ふだんから英語ドキュメントを読んでいますか?
  • MVCアーキテクチャとはどういうものなのか教えてください
  • RESTfulとはどういうものなのか教えてください
  • 継承と委譲(合成)について教えてください
  • Railsのconcernとはどういうもので、どういうときに使うものなのか教えてください
    • concernの問題点を説明できますか?
  • Railsのcallbackとはどういうもので、どういうときに使うものなのか教えてください
View why-use-parentheses.md

A. ASI対策

return 
  <div>
    <p>Why use parenthesis on JavaScript return statements?</p>
  </div>

これはできない

View gist:1104429
# UPnP Port Mapper
import os
import sys
import re
import urllib2
from xml import sax
from xml.sax import handler
from xml.sax.handler import feature_namespaces
import socket
View money.md
View _z-index.scss
// _z-index.scss
$zIndexList: (
Background: -50100,
ContentFront: 50100,
UI: 50200,
UIPopup: 50300,
Modal: 50400,
);
View webpacker-3-0.md

原文: http://weblog.rubyonrails.org/2017/8/30/webpacker-3-0/

Webpacker 3.0: 別プロセス不要になり、生成される設定ファイルは減った

RailsとWebpackをいっしょに使うのを、この3つ目のWebpackerリリースで、さらに簡単にした。2つの大きな変更は、開発中に別のプロセスがもはや不要なことと、大部分の設定は、いまやWebpacker npm package内に置かれていることだ。だから、あなたのconfig/ディレクトリはきれいなままで、アップデートもより簡単だ。

開発およびテスト中、Webpackerにオンデマンドでコンパイルさせることで、別プロセスの必要性を排除した。このプロセスを高速化するためにいろいろやった結果、多くのアプリで、パフォーマンスは良好以上になることだろう。しかし、巨大なアプリの場合、もしくは、ライブリローディングやhot module replacementが好みならば、 bin/webpack-dev-serverを使い続けることができる。Webpackerは、このプロセスが走っていることを自動的に検出して、packをオンデマンドではなくそこから供給する。賢いね。

それから、Railsのconfig/ディレクトリに生成される設定ボイラープレートの総量を劇的に減らした。標準的はものはすべて、いまではWebpack npmモジュール内に置かれている。これは、アップグレードをとても簡単にする。さらに、デフォルトを好みに応じて上書きすることも依然として可能だ。だから、これはあらゆる面での大勝利なのだ。

View a.rb
module A
def hoge
puts 'hoge'
end
end
A.hoge # a.rb:7:in `<main>': undefined method `hoge' for A:Module (NoMethodError)