衣玖さん芸人に!!!俺はなるっ!!!(海賊王的なノリで — mix3 (@mix3) 2014, 6月 8 最近p5-Ikusanを作ったり、それで衣玖さんのIRCボット作ったりして衣玖さんへのロマンティックが止まらないmix3です github.com/mix3/go-ikusanとgithub.com/mix3/go-irc 最近golangを触ってる事が多いのですが(絶賛開発中の社内アプリがgolangだけどそっちにはあんまり関わってなかったりする) 適当になんか作りたいなぁと思っていたところに最近衣玖さんへの愛が溢れ出してきてたので、そりゃ「go版ikachan作ろう」となるのは自然な事ですよね でgoでircってどう触るんだろうとgithubを漁ったところ github.com/thoj/go-ircevent github.com/fluffle/goirc 辺りがirc触るた
最近、あまりプログラミングが得意でない人のサポートをする形で、長い時間にわたってペアプログラミングを行っている。そのなかで、気がついた悪い習慣と成長するための良い習慣というものをまとめてみる。 この記事のバックグラウンドとなる体系的知識が本になりました。 エンジニアリング組織論への招待 ~不確実性に向き合う思考と組織のリファクタリング あわせて読みたい 経営者マインドが足りない!vs. 現場に任せてくれない!の対立をなくすカードゲームをつくった話 新人プログラマに知ってもらいたいメソッドを読みやすく維持するいくつかの原則 新人プログラマに知っておいてもらいたい人類がオブジェクト指向を手に入れるまでの軌跡 ペアプログラミングして気がついた新人プログラマの成長を阻害する悪習 あきらめるにはまだ早い!ソースコードの品質向上に効果的なアプローチ 心理的安全性ガイドライン(あるいは権威勾配に関する一
※ サンプルがJDK7までとJDK8までで意味が変わっていてわかりにくいという指摘があったので、少し直しました。 ※ boxedを使う書き方だと無駄なAutoboxingが走るとの指摘を頂きましたのでmapToObjを利用するように変えました。 Java8の目玉機能の一つにStream APIがあります。 目玉機能だけあって、先日のJava Day Tokyo 2014を含めて色んな所で発表やブログの記事が公開されているので、どんなものかを知ってる人は多いと思います。 Stream APIといえば「".parallel()"と書くだけで並列化してスピードアップ出来る!」という魅惑的なキーワードで紹介されることが多いので、並列化のための仕様だと勘違いされそうですが、そうではありません。 ※ もちろんそういった記事の中をちゃんと読めばそう単純な話じゃないことも分かります。 むしろ、並列化に関し
テストするべき項目、テストするとき考えると思う。 一つのメソッドに対して、テストするべき項目が多すぎるとそのメソッドがやたらでかいとか、不必要な部分までテストしてるとかだと思う。 メソッドがやたらでかい場合は、切り分けるし、不必要なテストは、消すべきだと思う。 あるパラメータからデータを作って、さらにそのデータを使って計算するみたいなの全部まるっと一つにまとめるとかよくされる。何をしているかで分類すると2つやってることがある。メソッドは、一つのことをやればいいと思う。だから、あるパラメータからデータを作るメソッド、データを受け取って計算するメソッドみたいな感じで分けるのが良いと思っている。 sub hoge { $self->fuga() # hoge処理 } 不必要なテストは、こういうhogeメソッドがあったとして、fugaのテストまで、hogeのテストでやってしまうみたいなの見かける。
1.Goの環境設定 1.1. Goのインストール 1.2. GOPATHとワーキングディレクトリ 1.3. Goのコマンド 1.4. Goの開発ツール 1.5. 概要 2.Go言語の基礎 2.1. こんにちは、Go 2.2. Goの基礎 2.3. フローと関数 2.4. struct型 2.5. オブジェクト指向 2.6. interface 2.7. マルチスレッド 2.8. 概要 3.Webの基礎 3.1 webでの作業方法 3.2 Goで簡単なwebサーバを立てる 3.3 Goはどのようにしてweb作業を行うか 3.4 Goのhttpパッケージ詳細 3.5 概要 4.フォーム 4.1 フォームの入力を処理する 4.2 フォームに入力された内容の検証 4.3 クロスサイトスクリプティングの予防 4.4 フォームの複数回送信の防止 4.5 ファイルのアップロード処理 4.6 概要 5.デ
ガイアが俺に書けと囁いているので、徒然なるままに。 一緒に働けない人 1.常に他人事 たとえ仕事であっても、絶対に自分でやろうとしない 自分の仕事ではないと常に考えようとする/発言する 「へ〜大変ですね〜」が口癖 2.言葉の定義にイチャモンをつけたがる 「それって、xxという言葉の定義と違いますよね。それじゃ私の仕事じゃないです。」 「何でそこでその言葉を使うのか理解できません。そもそも(以下略」 『「バグがあるかもしれない」と「バグがある可能性がある」とは意味が違いますよね』 私も意味が分からなかったです 3.話している最中に内容をすり替える 4.最終的には逃げる これが癖になっている人って、何で社会人やっているんだろうね? こういう人とは、話しても理解し合うことは不可能。一緒に仕事をしていても、尻拭いを強いられている感に苛まれるだけ。関わらない環境を作った方が良い。 昔しんどいと思った
続:Androidブラウザでviewportのwidth指定 1年ほど前にAndroidブラウザでviewportのwidth指定という記事を書いたのですが、1年間いろんな端末や状況に対応しているうちに今は結構違うスクリプトを利用しています。 var portraitWidth,landscapeWidth; $(window).bind("resize", function(){ if(Math.abs(window.orientation) === 0){ if(/Android/.test(window.navigator.userAgent)){ if(!portraitWidth)portraitWidth=$(window).width(); }else{ portraitWidth=$(window).width(); } $("html").css("zoom" , por
Androidブラウザでviewportのwidth指定 AndroidブラウザはiPhoneのようにviewportのwidthに数値が指定できません。(ネットを見ていると指定できると書いているページもよくあるのでデバイスによって違うのかも?) タイムリーに@takazudoが同じようなことをやっていて、対応方法が公開されていました。 ただ、私の検証環境、IS01やGALAXY S、Androidシミュレータだとうまく動かず。デバイスの実装差異かなんかかな。 で、色々と試行錯誤していたのですが、meta要素で「content="width"」を指定せず、JavaScriptで次のように指定すると「content="width=640"」っぽい表現が可能です。 $(window).bind('resize load', function(){ $("html").css("zoom" ,
これまで、負荷テストの実行には専門知識と実行環境の準備に多くのコストが必要でした。社会からWebサービスの性能に関する不具合をゼロにするために、簡単、無料、圧倒的な負荷テストサービスを提供します。 ユーザビリティ サーバの応答速度は常に変化し、利用者の直帰率に大きく影響を与えます。サーバの応答速度を可視化し、日々計測することで、すみやかに問題個所を発見できます。 性能測定 サーバの性能不足により、せっかくの営業機会を失うサイトが多く存在します。サーバの性能を正しく把握することで、予測される負荷に応じたサーバの増強ができます。 負荷チェッカー/カレンダーを利用したテスト(ジョブ)の予約や、グラフィカルな結果画面を準備しており、初心者の方にも大変使いやすいサービス。インスタントテスト/URLを入力するだけで、すぐに負荷テストを行うことができます。シナリオテスト/ログインが必要なページや複数のペ
/.Jに聞け:Javaを使うメリットは? | スラッシュドット・ジャパン デベロッパー え、ありますよね? Webアプリに限っても。 というか、上げてるデメリットが現代的じゃないなぁ... 個人的には少数精鋭チームを作れてないならJavaはかなり有りな選択だと思っています。 ※ Java使ってるメンバーがスキルが低いのではなく、LL系で高品質なものを作るのにスキルが必要で、例えスキルがあっても多人数開発にはあまり向かない、という意図 というわけで、自分が思うLL系言語ではなく、JavaでWebアプリを開発するメリットを書いてみます。 静的型づけ言語 HaskellとかOCamlとかScalaとか、その辺の超強力な型付け言語から見ると弱いですが、多くのLLと違い静的型付けな事が特徴です。 これは型というメタ情報を言語仕様に明確に取り込んでいるということです。以下のメリットがあります。 人間が
photo by Scolirk 地方でもマルチデバイス対応を求められることが多くなってきました。 徐々に対応しているところが増えてきたためだと思います。 私も昨年からレスポンシブWEBデザインについて、 対応する必要がありましたので、調べたものをまとめてみました。 もくじ レスポンシブWebデザインとは? ギャラリーサイト レスポンシブWebデザインの作り方 画像の切り替え・最適化 レスポンシブ対応のフレームワーク レスポンシブ対応のライブラリ サイトの高速化 レスポンシブWebデザインとは? 2年程前から流行し始めたレスポンシブWebデザイン。 基本的な考え方、メリット・デメリットを理解しておかないとトラブルの元になります。 レスポンシブWebデザインの基本 レスポンシブWebデザインの基礎 必読!5分でわかる流行のレスポンシブWebデザインまとめ | 株式会社LIG 5分で分かるレス
大体タイトルで言うべきことは終わりなんですが、せっかく今日でちょうど1年になったので全然活用してなかったはてなのブログ機能を使って、記念の意味で書いておこうと思います。 今まで何をやってて、今何をしているか 大学院を出て新卒で東芝の研究所に入る 4年ほど研究員として勤めて2012年1月19日に東芝を退職 その翌日から当時ソーシャルゲームでイケイケだったDeNAで勤務開始 いろいろあって1年でDeNAを退職 家賃の安さに惹かれてさいたまに移住し、現在フリーランスの翻訳業 それぞれのイベントで思うところがなきにしもあらずだったんで、ちょこっとずつだけ書き留めておきたいと思います。 東芝に入った理由 こんなことを書くと東芝の諸先輩方に怒られるでしょうが、特にありません。 学推使って入ったのですが、新卒の就職活動でよくある「ここに内定もらったからなんとなく」就職です。 その履歴で4年弱で辞めてしま
From document-to-code from Hiroaki Koduki 最近「ドキュメントからコードへ」というのをキーワードに考えています。 その辺に関してつらつらと書いてみました。例のごとく英語で書いた資料より日本語の方が詳しいよ>< 「ドキュメントからコードへ」って? 例えばいくつかの種類のドキュメントは下記のようにコードに置き換えることが出来ます。 詳細設計書、テスト仕様書 => 自動テスト JUnit/rspec Selenium/Cucumber サーバの構成定義書 => サーバテストツール serverspec インストールマニュアル => プロビジョニングツール系 chef/puppet 運用手順書 => デプロイツール, JOB管理ツール, CI ツール Capystrano Fabric Jenkins 他にも要件定義や基本設計をAlloy等で作るのもこの範疇
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く