注意 HTML5 からは 見た目は CSS に任せ、HTML は文書の構造(セマンティック)を表すことのみに重点を置かれるようになりました。例えば箇条書きリストを作るのに div と display: list-item; を使って構築するより、箇条書きリストを表す ul li を使ったほうがよりセマンティックです。このように目的にあった HTML 要素を使うようにしてください。 ボックスモデルとは CSS でレイアウトをする際には、 ボックスモデル を理解する必要があります。 CSS の定義するボックスモデルは以下の図のように 4つの領域で構成されています。 ボックスモデル解説図 content(コンテンツ) テキストや画像など、要素そのものの内容が表示される領域です。この領域のサイズは width(幅) と height(高さ)プロパティで指定することができます。 padding(パデ
JJUG CCC 2015 Fall 2015-11-28T15:00-15:50 の発表資料です。 話せなかった分は切りましたが、言いたいことは言い切っています。Read less
和田卓人さんによるテスト駆動開発問題解説の寄稿です! バグのないよいコードを書くには、よいテスト設計が重要です。今回は現在時刻に関する問題と、その問題で提出された実際の解答コードを紹介しながら、どのようにテスト設計し開発していくのかを解説していきます。 ゲスト解答による解答コードも公開中! by CodeIQ運営事務局 はじめに こんにちは、和田(@t_wada)です。今日は先日出題させていただいたTDDに関する問題の総評を行いつつ、テスト容易性設計について考えてみたいと思います。 問題文 私が出した問題は、以下のようなものでした。 問1. 下記の仕様をテスティングフレームワークを使ってテストコードを書きながら実装してください。 【仕様1】 「現在時刻」に応じて、挨拶の内容を下記のようにそれぞれ返す機能を作成したい。 (タイムゾーンはAsia/Tokyoとする) 朝(05:00:00以上
リンクしないけど、0の0乗がゼロ除算同様未定義であるというような記事がブクマを集めていてなんか困るよなぁと思って書いた。 前提として である。 $x^y$ は、$(0,0)$ で不連続になっているので、極限を根拠に $0^0$ を定めるとすると、不定とか定義されないとか、そういうことになる。 これは未定義のほうが好ましいかもしれない理由のひとつにはなるけれど、決して決定的ではない。 連続性を根拠にするのは、一見未定義であっても連続性を保つように定義できれば幸せになるからだと思う。 とはいえ。 $x^y$ の $(0,0)$ における連続性と、$0^0$ の値は、別の話だ。 どうやっても連続性が保てないからといって、よい定義が存在しないという事にはならない。 というわけで、$0^0$ が時折現れる世界をより住みやすくするためにはどうすればいいのかを考える。 ゼロ除算のように未定義にするのがよ
[速報]無償のコードエディタ「Visual Studio Code」が、Go言語/Pascal/Reactなどに対応。ベータ版にも到達。Microsoft Connect(); 2015 マイクロソフトは11月18日(日本時間18日深夜)に開催したオンラインイベント「Microsoft Connect (); 2015」において、無償のコードエディタ「Visual Studio Code」のベータ版到達と、エクステンションによるGo言語やPascal言語、TypeScriptやReactなどを発表しました。 エクステンションでGo言語やPascalに対応 マイクロソフト EVP、Cloud&Enterprise Groupスコット・ガスリー氏。 4月に発表したVisual Studio Codeは、コードを書くことに最適化したエディタだ。IntelliSenseやデバッガ、Gitによるソー
http://martinfowler.com/bliki/TestCoverage.html 「テストカバレッジ(コードカバレッジ)の目標値はどれくらいがいいのか?」という質問とか、コードカバレッジの高さの自慢とかを、ときどき耳にする。でも、大事なポイントを外している。コードカバレッジは、コードのテストされていない部分を発見するための有用なツールである。ただテスト自体がどれだけ良いかという指標としては、テストカバレッジはほとんど役に立たない。 二つ目の例を先に検討してみよう。「カバレッジが87%以上じゃないと本番には入れない」というようなことをやっているところも多いみたいだ。「TDDやっているならカバレッジが100%があたりまえ」という言葉を聞くこともある。賢人が言った: カバレッジが高いことを期待する。マネージャがそう期待することもある。でも微妙な違いがある。 – Brian Mari
The search giant is making its AI open source so anyone can use it In November 2007, Google laid the groundwork to dominate the mobile market by releasing Android, an open source operating system for phones. Eight years later to the month, Android has an an 80 percent market share, and Google is using the same trick—this time with artificial intelligence. Today Google is announcing TensorFlow, it
こんにちは。おうちハッカーの石田です。 いつもはおうちハックネタばかりですが、今日は人工知能関連の話題です。 今日2015/11/10、Googleが自社サービスで使っているDeepLearningを始めとする機械学習技術のライブラリを公開しました。 TensorFlowという名前で、おそらくテンソルフローと呼びます。 テンソルは、数学の線形の量を表す概念で、ベクトルの親戚みたいなものです。それにフローをつけるということは、そういった複雑な多次元ベクトル量を流れるように処理できる、という意味が込められているのだと思います。 こちらをさっそく触ってみたので、紹介したいと思います。 TensorFlowの特徴 公式紹介ページから特徴をいくつかピックアップします。 Deep Flexibility ~深い柔軟性~ 要望に応じて、柔軟にニューラルネットワークを構築できます。ニューラルネットワークの
はじめまして。ハンズラボ歴3ヶ月、pythonista歴3日の倉嶋です。 ハンズラボでは技術書は経費で落ちますので、みんなドンドン買ってきます。 総務担当がポチポチGoogleスプレッドシートに蔵書登録していたのですが、登録が間に合わず、未登録の蔵書が散見されるようになりました。 解決のため、BooklogにWeb本棚を作りました。 BookLog モバイルアプリからもバーコードで登録できて便利!各自で登録できる! ついでに新規登録した蔵書をSlackに流したい!ということでBooklogのRSSフィードを使って作りました。 ハンズラボっぽい縛りは以下のとおりです。 * せっかくだからAWS使おう。新機能のLambdaのScheduledEventだ! * Lambdaでpython使えるようになったし、pythonで書いてみよう! ・・・と勢いこんで作ってみたはいいものの、python+
MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。 PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。
photo by EYLC 積読消化合宿というのをやりました - miyohide's blog この記事に憧れて「週末は温泉に行って開発したり積読を消化するぞ!!!」という気概で10/30 ~ 11/1にかけて箱根に行ってきました。 最高の環境で温泉に浸って、美味しいものを食べながら仲間達と読書と開発に励めば、それは目覚ましい成果が出るに違いありません。 この会の目的 以下の積ん読を消化しようと張りきって持って行きました。特に「すごいHaskell」に関しては3年ぐらい途中まで読んでは放置の繰り返しなので、今回こそ読了するぞ!という気持ちで挑みました。 すごいHaskellたのしく学ぼう! 作者:Miran Lipovačaオーム社Amazon Effective Python: 59 Specific Ways to Write Better Python (Effective Sof
※2011.3.30追記 11個目の判断項目を追加しました。 また、「昔はね...」の補足説明を各項目に追加しました。 レガシープログラマ = モダンな言語のおいしい機能をうまく使いこなせていないプログラマ おいらは時々社内システムのコードレビューなんかをやっているのですが、「なんかちょっと前時代的だな〜」とか「ちょっと修正したらC言語でもコンパイルできそうだな〜」って思うことがよくあります。 おいらがレビューする言語は主にC#です。C#やJavaのような比較的モダンな言語のおいしい機能をうまく使いこなせていないプログラマを、ここでは「レガシープログラマ」と呼ぶことにします*1。 そこで、おいらがこれまでに見てきたコードの中から「これはレガシープログラマっぽい」と思った典型的な症例を10個11個挙げてみます。 レガシープログラマの判断項目 使われるローカル変数をすべてメソッドの最初に宣言す
クックパッド社の 朝Lint活動の記事を見て、最高じゃん…!と思い自分も真似して運用してみることにしました。 techlife.cookpad.com とりあえず自分だけで勝手にやることにしたので 「Lint警告解消に限らずやりたいこと好き勝手やってやるぞ!」って感じで2週間くらいやってみました。わりと進捗よくて成果出てきた気がするので、どう考えて何をやったかを残しておこうと思います。 なぜやろうと思ったのか 普段の開発タスクに追われて細かいところに手がつかず歯がゆい思いをしていたからです。 今作っているTaptripはグロースフェーズにあり、新規ユーザーの流入やDAU・MAUの向上といった数字から逆算した施策を高速にこなすべく開発を進めています。 この方針自体には納得しているんですけど、直近で数字が出るかよくわからない細かい改善というのはやはり優先度が低くなってしまうんですよね。そしてそ
Photo by Oferico 皆さんはアルゴリズムやデータ構造について勉強したことはありますか?そして、基本的なアルゴリズムについて、どのようなものがあって、どのようなときに使うとよいかといったことを説明することができますか? 仕事をしていると、プログラミング言語等の勉強や業務に忙しくて、正直アルゴリズムどころではないという場合がほとんどでしょう。しかし、いつか勉強しようと思っていたけど、基本的なアルゴリズムにどんなものがあるのかなんて今更聞けないな……ということもあるかと思います。 今回はそんな方に向けて、基本的なアルゴリズムの一部の概要に加え、アルゴリズムの勉強に役立つサイト、書籍をご紹介したいと思います。 ■アルゴリズムを学ぶ意味 例えば、ソート等については、通常はすでにソート関数があるので、自分で作らなくても済む=アルゴリズムも勉強しなくていいと思ってしまうかもしれません。しか
プログラミングにはレベルの低い・高いがある。ここでいうレベルとはCPUとかストレージデバイスといった生のハードウェアに近いかという意味である。レベルが低いほど生のハードウェアを意識しなければならない。カーネルは低レベルなソフトウェアの代表である。高尚かどうかと混同されることを嫌ってか、低レイヤ・高レイヤという言い方も良くする。私はあえて混同させたくてレベルという単語を使用している。 私は元々低レベルのプログラミングの方が計算機を操ってる感があって好きだった。しかし、しばらく離れてJavaとかPythonとか高レベルなことをやっていたが、ふと低レベルのところを再び触りたくなったので、 ハッカーのたのしみ Binary Hacks Cプログラミング高速化研究班 等を読み返しながら勉強している。低レベルはちょこちょこっとチューニングするだけで演算が高速化していき、ハッカー感が得られるので楽しい。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く