kazasikiがプログラミングするブログ

プログラミングとかコンピュータとかWebとか

変数名に型を含むのは避けた方が良い

変数名に型を含むのは避けた方が良い。異論は認める。まず、つい最近リファクタリング(?)で大変苦労した話をさせてください。 例えば、Userクラスがあったとして、きっとみなさんはコードの何処かにこう書くでしょう。 user = User.new(name: 'hoge', age…

安いケーブルは大事に使おう

1本数百円程度のケーブルだから雑に扱ってもいいという理屈は間違っている。 そのケーブルの断線によってなんらかのトラブルに見舞われた場合、それに対処する時間のコストは数百円を遥かに上回る。しかも、昨今の電子機器事情を考えれば常に複数の機器を繋…

どのようにしてプログラマは明らかなバグを見逃すのか

プラットフォーム(Web、スマホ、ゲーム機など)に関係なく、プログラムを書いていればバグを作ることはあります。 その中でも今回は「製品のローンチ後に、ユーザが低くない頻度で使う機能で、普通に操作したのにバグる」というあまり想像したくない、しか…

私のWebからデザインが消えた日

大仰なタイトルにしましたが結論だけ言うと、SafariのReader表示を自動で有効に出来るSafari拡張を見つけた、という話です。 finbarrbrady.com SafariのReader表示を知らない人に掻い摘んで説明すると、Webの文章をデザインとか全部省いた表示で見れる機能で…

【緩募】十万円くらいで私が喜びそうなもの

たまにTwitterやFacebookで呟いていたですが、私は500円玉貯金をしています。最近はレジで500円玉がお釣りになるようにお金を払うのにも慣れました。昨年の10月くらいからやっていてちょうど半年くらいですね。やってみると意外に続くものです。 無印で買っ…

長時間労働は"スポーツマンシップに反する"と思ってる

昨年は電通のいざこざもあったし、最近はこんな記事も上がってるので長時間労働について個人的に思ってることを書きます。 www.tokyo-np.co.jp まず、今の労基法は基本的に経営者から労働者を守る意味合いが強いルールです。なので、過労云々の話題も基本的…

「今時の若者はコンテンツを無料だと思ってる」わけではない

この間同僚とランチを食べた時に、小学生くらいの息子が見たいアニメを動画投稿サイトで検索して見てるって話をされて、最近の若者はコンテンツが無料で手に入るのが当たり前だと思っている的なお決まりな若者批判をされた。自分としてはその辺にちょっと変…

開発速度が事業を回す

「ソフトウェアプロジェクトの開発速度は速ければ速いほど良い」という主張に異議を唱える人はいないでしょう。 ただ、今回はもうちょっと踏み込んで、開発速度が「速いほど良い」程度のものではなく、「事業の競争力を決める」ものであると主張します。 ※ …

2016年 ベストバイ!!!

年末なのでベストバイ記事が流行っていますね。自分も便乗してみました。 Amazonの購入履歴を漁って目ぼしいやつ拾ってくるだけの簡単な作業でした。 耳栓 耳栓です。今年買ったものの中で一番重宝してます。基本的に職場で使っていて、会話してる時以外は常…

Sendagaya.rb #176 の個人的まとめ

sendagayarb.doorkeeper.jp に行ってきました。 主な内容 オブジェクト指向設計実践ガイド を読む 75ページ〜 以下、印象にのこった会話とか ゴミ箱と化すService層 Fat Controller を避けて Model に処理を移す Model が Fat になりはじめる 複数のテーブル…

非エンジニアがエンジニアの作業品質を管理するためにするべきたった1つのこと

非エンジニアがエンジニアの作業品質を管理するためにするべきことを書きます。 前置き 今回の記事は珍しく非エンジニア向けの記事です。例えば、エンジニアに作業を依頼するもしくは発注する企画職の人を想定しています。 エンジニアの人も知っておいたほう…

ActiveRecordから理解するgroupの使い方

この記事では主にActiveRecordのgroupメソッドやそれに関連するメソッドをみつつ、仕組みを説明します。あと、ActiveRecordの集計関数ちょっと癖あるよね的な話です。 テーブル作成 まずはじめにこういうテーブルを作ります。 exam_scores 教科(subject) : S…

Effective "if-else" ~分岐に関わる達人の思考~

経験豊かなプログラマの皆さんであればif文はご存知だと思います。 この記事では、様々な言語でのif文の機能や書き方の違いに触れつつ、より安全なif文の書き方を導きます。要点は、静的言語でコンパイルエラーになるような書き方は動的言語でもしないほうが…

へぇボタンで理解するオブジェクト指向の利点

へぇボタンで理解するオブジェクト指向の利点

Twitterの報告(通報)を押す前に知ってほしい事

あなたがもしTwitterが公開している報告に関するポリシーを熟読したことがあるのであれば、私から特に言うことは特に有りません。ここから先を読む必要も有りません。ぜひ報告(通報)機能を使ってTwitter上の治安を守る助けをしてください。 さて、この文を読…

Twitterでインプレッションを増やす簡単な(汚い)方法

Twitterでインプレッションを増やす簡単な方法を教えます。 一応1週間弱ほど実験して効果があることは確認済みです。 5/18に実験開始して2日間だけ異常に増えてるのか分かるかと思います。 5/20が0になってるのは多分計測エラーです。そのあと2日間も10万…

Nike FuelBand SEを2年間使ってみて

Nike FuelBand SE(以下、FuelBand)を購入して早2年が経ちましたので、所見を纏めます。買って1週間くらいのレビューは巷に溢れてますが、2年後のレビューはなかなかないと思います。 筆者のNike+ ダッシュボード(2015/12/11当時) Nike FuelBand SEだ…

RailsのActiveJobからurl_helperを呼ぶ

RailsのActiveJob内から*_urlヘルパーを呼ぶ方法です。 どんなときに使う? Jobから何かしらのAPIにアクセスして、そのパラメータにcallbackアドレスを設定する場合など やり方 url_helpersをinclude default_url_optionsをoverride(これをしないとhost名が…

ウェアラブルには専門家の洞察が必要

Xiomiが1300円のウェアラブルデバイスを発表した。http://japanese.engadget.com/2014/07/23/xiaomi-1300-mi-band/ 私はnike fuelband SE+を愛用しており、2013年の12月からほぼ毎日欠かさず着用して活動量を図っている。しかし、数字を見てもその数値が実際…

HTML5のCanvasって何に使うの?って話(あとWebGLも)

とりあえず「HTML5を触ってみよう」的なことをやってる人たちを見ると、 実際の開発をするにあたってそのタグを何に使うのだろうとか、 他の手段とどう使い分けるのだろうとか、 そういうことをいつも思います。 ということで、今回はCanvasタグのお話です。…

スケジュールのバッファを食いつぶしてしまう人へ

後輩が「作業をふられた時にいつも期限ギリギリまで作業してしまう。どういう心持ちでやれば余裕を持って作業を完了できるようになるか?」と言っていたのに対して、とりあえず返答した内容を書きます。以下の内容を意識すれば少しはマシになるかと思います…

Facebookのアカウントを簡単に交換する方法

プログラミングとは関係ない話ですが、便利な機能のわりにあまり知名度が高くないようなので、記事として書いてみることにしました。 想定するシーン イベントや勉強会などで、そこで初めてあった人と連絡先を交換しようとすることがあるかと思います。その…

この分岐をどうやって書く?

1.今回の問題 複雑な分岐の書き方で迷ったことはありますか? 今回皆さんに試しに書いていただきたい分岐の処理はこちら。簡単だけどちょっと面倒くさいものです。 2,3分で書いたので少し汚いけど、許して(^_^;)文章で説明すると、変数flagの値によって処理…

Javaの配列に関するちょっとややこしい話

昨日、現場の人のソースを読んでて気になったので指摘したのがあって、それがどんなソースだったのかご紹介。 実際に修正してもらおうとしたところ、その人がしどろもどろになってたのが面白かったので。 私が見たソースはこんなかんじでした。もちろん色々…