Slides of JDK Update (Especially Project Jigsaw) . https://jjug.doorkeeper.jp/events/33374
6. 今までの型の欠点 ● 基本型 – さまざまなアーキテクチャにあわせれない ● 参照型 – オブジェクト ● 参照とヘッダがオーバーヘッド ● メモリが散乱する – 配列 ● 多次元配列がない(現在は1次元配列の多重化) ● 大きい配列が定義できない(32億要素まで)
■■Ustreamの番組で使用している資料です■■■ Ustreamで放送した内容は、以下YouTubeからご覧いただけます。 https://www.youtube.com/watch?v=xOI9WTTjrCU --------------------------- 番組名は、「SPARC Virtual Lab」、略して「すぱらぼ」。 この番組では、主にSPARC/Solarisの仮想化についてデモなどを用いて解説します。 仮想化以外にも、ハードウェアプラットフォームや、データベース、IT業界の動向など、様々なテーマについて富士通のスペシャリストが語ります。 第1回目は、「CPUのサイジングが超簡単にできる!?SPARC M10のその秘密に迫る!!」をテーマに、デモを交えながらその仕組みをお伝えします。 ■Ustream番組:すぱらぼ http://www.ustream.tv/ch
逆アセンブルを眺めながらネイティブコードの楽しさについて語ります。ハング・メモリリークなど、ソフトウェアエンジニアであればだれでも経験するであろう問題について夏休みの自由研究のように観察します。 簡単な食事および伊藤園からのお茶が提供予定です。 【講演者略歴】 我孫子 泰祐 大学院にて非ノイマン型プロセッサを研究し、卒業後に小さな会社を立ち上げるも諸般の事情で日本マイクロソフトに入社。その後マイクロソフト本社へ転籍。現在は Windows部門にてソフトウェア開発に従事。工学博士。 【内容(予定)】 ネイティブコードとは? 逆アセンブルからCソースを脳内生成してみよう(バグ修正の存在確認) コンパイラによる最適化を観察してみよう(デバッグビルドとリリースビルド) 関数コールの仕組みを観察してみよう(関数呼び出し規約、スタックメモリ) 森の中でメモリリークに出遭ったら(ヒープメモリの観察) 森
2015年2月24日 ヒカ☆ラボ発表資料 Webアプリケーション負荷試験実践入門 ■スライドの目的 負荷試験の重要性を認識して頂く 意味のある負荷試験を最短距離で行うための“段取り”を持ち帰って頂く 内容的には、主にAWS上のLAMP構成のシステムに対する負荷試験ですが、負荷試験ツールに依存しない全般的に通用する話を扱っています。Read less
組み合わせテストを科学的に効率化する――手法とツール、品質保証のための道具:現場で使うためのオールペア法、直交表の基本(2)(1/3 ページ) あらゆる条件を網羅したテストを実行することは現実的ではありません。しかし、職人技と勘、あるいは闇雲にテストツールに頼っても、科学的に品質を保証できません。最小のコストで品質を保証するための手法と、その考え方、制約がどのようなものかをじっくり見ていきましょう。 連載バックナンバー 前回はソフトウエアテストの問題点とテストの基本的な考え方やその手法を紹介し、その中で「デシジョンテーブル」を例に挙げました。今回はデシジョンテーブルなどの「組み合わせテスト」を効率的に実施するための手法として、「オールペア法」や「直交表」の考え方を見ていきましょう。考え方や用語がやや難解に見えるかもしれませんが、テストケース自体はツールが生成してくれます。ツールを適切に使う
サイボウズ・ラボの光成です。 今回は3月15日に開催された「x86/x64最適化勉強会7」の模様についてお伝えします。前回から約1年半振りと久しぶりの開催です。 今回の発表内容は浮動小数点数周りの話が2件、CSSパーサ周りの話が1件、暗号関係の話が3件でした。 以下、それぞれの発表内容について簡単に解説します。 浮動小数点数関係 @ksmakotoさんの発表は「非正規化数のFZ(FTZ)とDAZの違い」(動画1)でした。 浮動小数点数には正しい精度で扱える最小の正の数DBL_MIN(約2.225074e-308)があります。 0とDBL_MINの間の数は精度は落ちるけれども扱うことはでき、非正規化数と呼ばれます。 非正規化数を扱うのはなかなか難しく、ハードウェアやソフトウェアによってはサポートしていなかったり、していてもとても遅かったりすることがあります。そのため非正規化数を0と見なすこと
外部キー便利!!! MackerelではPostgreSQLで外部キーあり そのレコードがあることが保証される 各テーブルのidにアプリケーションレベル(Mackerelの場合Scala)で型付けをするとなお便利 MemberID型、MonitorID型 → idで誤ったテーブルを引くとかがない 本日のスキーマ CREATE TABLE `member` ( `id` INTEGER unsigned NOT NULL auto_increment, `earned_item_count` INTEGER unsigned NOT NULL DEFAULT 0, `name` VARCHAR(191) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARACTER SET utf8mb4; CREATE TABLE `item`
Section: Linux Programmer's Manual (3) Updated: 2014-01-07 Index JM Home Page roff page 名前 setjmp, sigsetjmp - 非局所的なジャンプのために、スタックコンテキスト (stack context) を保存する 書式 #include <setjmp.h> int setjmp(jmp_buf env); int sigsetjmp(sigjmp_buf env, int savesigs); glibc 向けの機能検査マクロの要件 (feature_test_macros(7) 参照): setjmp(): 「注意」参照。 sigsetjmp(): _POSIX_C_SOURCE >= 1 || _XOPEN_SOURCE || _POSIX_C_SOURCE 説明 setjmp()
2013-11-5, 2013-11-15 (鈴) 1. シグナルとは? 2. シグナル・ハンドラと signal システム・コール 3. シグナルの用途 4. SIGHUP, SIGINT, SIGTERM 5. SIGCHLD 6. SIGALRM と sigaction システム・コール 7. siglongjmp による大域脱出 8. popen/pclose と SIGCHLD 第4章 では SIGHUP, SIGINT, SIGTERM によるプログラムの終了をプログラムの処理本体との協力で実現した。 しかし,そうした協力がいつでも可能とは限らない。 そのときこれらのシグナルを扱う代表的な方法の一つは,プログラムの終了地点へと siglongjmp(3) でシグナル・ハンドラから大域脱出し,後処理をしてプログラムを終わらせることである。 SIGTERM に対して大域脱出し,後処
2017年3月26日追記 bpushは2年弱の運営の後、OSSとして生まれ変わりました。詳しくは下記の記事をご覧ください。 国内初のウェブプッシュサービスbpushのOSS化と運営して学んだことについて ブラウザだけでプッシュ通知ができるようになった Chromeのバージョン42からプッシュ通知が可能になったという記事は読まれましたでしょうか? 「Google Chrome 42」安定版リリース プッシュ通知機能追加と45件の脆弱性対 Chrome 42から、Service Workerという新しい仕組みによって、ブラウザを閉じていても、スマートフォンのプッシュ通知のようにサービス側からお知らせを届けることができるようになりました。この機能はデスクトップ版とAndroid版のChromeに導入されています。通知の仕組みにGoogle Cloud Messaging(GCM)を使っているため
Emacs にはデフォルトで M-/ に dabbrev-expand が割り当てられていますが、 hippie-expand の方がファイルのパスや Elisp のシンボルも補完してくれる等、機能が豊富です。 hippie-expand の問題点 日本語Nihongo日本語。にほんごNiho-!- 上の例文でカーソル位置は -!- にあります。 M-x hippie-expand としても Nihongo とは補完されません。 理由として2点あります。 (1) Nihongo という単語の両端にスペースがない。 (2) Niho という単語の頭にスペースがない。 半角文字は常にスペースで囲う癖をつければいいのですが、やや面倒です。 (1) の問題を解決するには関数 he-dabbrev-search の再定義をします。 (2) の問題を解決する方法はここの he-dabbrev-beg
Java Day Tokyo 2015で、NECのJava SEバージョンアップでのトラブルの話が面白かった。 Java EEアプリケーションサーバの開発現場で見たJava SEの実際 資料はこちらで公開されてるので、資料に書かれてることはそちら参照という感じで、どんな話だったか書いてみます。 Java Day Tokyo 2015 アプリケーションサーバーを提供する中でJava SEをバージョンアップしたときに出て来たさまざまなトラブルの話と、Java SE 8から導入されたMetaspaceの話が主でした。 Java EEは機能が標準化されているので、アプリケーションサーバーはカスタマーサポートで差別化をはかるしかない、顧客から見ると、Java SEやOSまで全て含めてアプリケーションサーバーなので、全部対応していく、という話をされていました。 Javaにもそれなりにバグはあって、アプ
Groovy is a powerfull development language with a lot of features and almost all we need. As we all are familiar with Java, Groovy and many libraries, why don't we use it to write scripts for system-automation? This session will show the best practices and how to overcome some obstacles when writing shell-scripts using Groovy.Read less
2015年4月8日に開催された、『Java Day Tokyo 2015』のプレゼンテーション資料と一部のセッションの動画をご提供します。この資料に記載されている内容は、イベント時点のものであり、製品の仕様・機能などについては今後、変更の可能性があります。
7. IDEAPLANT 『 Brainstorming Card 』 ※ アイデアワークショップ専⽤ツール(⼀般販売無し) IDEAPLANT 『 アイデアトランプ 』 http://www.ideaplant.jp/products/ideatrump/ IDEAPLANT 『 ブレスター 』 ブレインストーミング学習ツール IDEAPLANT 『 智慧カード 』 http://www.ideaplant.jp/products/chiecard3/ (スマホアプリ:KAYAC『ideaPod』) IDEAPLANT 『 ブレインライティングシート2 』 http://www.ideaplant.jp/products/bws2/ IIDEAPLANT 『 IDEAVote 』 アイデアを創造的に絞り込む⽅法を学ぶツール IDEAPLANT 『 SCAMPERカード 』 ※ アイデアワ
@masaru_b_cl パスフレーズなしで鍵を作るのはちょっと…。ssh- agent 、Windowsならputty agent(だっけ?)でパスレーズ省略した方が良いんじゃない? — よこお (@takyokoo) January 11, 2013 と、お叱りを受けたので調べました。 ssh-agent、ssh-addを用いて一度だけパスフレーズを入力する 調べてみると、教えていただいた通りssh-agent、ssh-addコマンドを使うことで、対応できそうです。 まず、ssh-agentを実行すると、次のような値が戻されます。 $ ssh-agent SSH_AUTH_SOCK=/tmp/ssh-dACAlw5972/agent.5972; export SSH_AUTH_SOCK; SSH_AGENT_PID=6496; export SSH_AGENT_PID; echo Ag
情報処理における全国のエキスパートが一堂に会したリクルート主催の「春の情報処理祭」。人々が日常的に大量のデータを生成・消費するに伴い、「ビッグデータ」の重要性が高まっていると語る、大阪大学准教授の原隆浩氏。「ビッグデータを制する者が世界を制する」とまで言われ、その研究に注目が集まるデータベース分野の歴史と可能性について解説します。(春の情報処理祭in京都より) 高校生の頃まで、パソコンが苦手だった 原隆浩氏:まず、今日データベース研究会のほうから代表ということで来ましたので、自己紹介を兼ねてお話したいと思います。私は今、大阪大学で准教授をしていまして、42歳になります。なので、大学を卒業してちょうど20年経っているぐらいです。 研究の専門分野は、あんまりデータベースっぽくなくて、どちらかというとネットワークとデータベースの境界領域みたいなことをやって、アドホックとかセンサーネットワークにデ
Javaでのプログラムでは、Optionalが入ったとはいえ、nullとのつきあいは依然として重要です。 そんな中で、nullが入ってると困る処理を書くときには、nullチェックを行うほうが安全です。 そのとき、どのようにnullチェックを行うかというのが問題になります。 Java7からは、Objects.requiredNonNullというメソッドが導入されたので、このメソッドを使って、以降の処理でnullじゃないことを保証するということができます。 けど、このrequiredNonNullが遅いんじゃないかという話があるので、どう遅いのか調べてみました。 requireNonNullと同様に、値がnullだったらNullPointerExceptionを吐いて、null以外だったら素通りするという書き方のひとつに、getClassメソッドを呼び出すというものがあるので、これと比べてみま
2015.04.24 JJUGナイトセミナ Javaのプログラムはどうやって動いているの? GC編Read less
Yahoo! JAPANのIaaS基盤では200超のOpenStackクラスタが稼働しており、それらのコントロールプレーンをKubernetes上にデプロイしています。IaaSチームで管理している十数のKubernetesクラスタは古いバージョンのまま運用が続けられていたため、現在、段階的にバージョンアップおよびその自動化に取り組んでいます。このようなクラスタ群をメンテナンスする中で、工夫した点や失敗した点、得られた知見を紹介します。 Yahoo! JAPAN Tech Conference 2022は2022年2月3日、4日に開催しました。 https://techconference.yahoo.co.jp/2022/ アーカイブ動画はこちらからご覧ください。 https://youtu.be/F5EQqWOw8So
ポインタ C では言語がオブジェクト指向を直接には支援してくれないが、構造体を生成する関数とその構造体を操作する関数を組にして使うような形式にすることはよくあって、擬似的なオブジェクト指向と言えるだろう。 例えばごく簡単な例として整数を格納する構造体を生成する関数と構造体に格納された整数を表示する関数で表すとこういう要領だ。 // foo.h struct foo { int n; }; struct foo* make_foo(int n); void foo_print(struct foo* obj); // foo.c #include <stdio.h> #include <stdlib.h> #include "foo.h" struct foo* make_foo(int n) { struct foo* obj = malloc(sizeof(struct foo)); i
Linuxカーネルもくもく会 #11でやったことです。Linux kernel 4.0 のlivepatchを調べてみる。patchとなるsamples/livepatch/にあるlivepatch-sample.cからスタートして読んでいきましょう。livepatchモジュールにpatchを登録するまでを見ていきます。 まずはpatchのデータ構造。構造体は3種類あって、これらで階層化構造になっている。 struct klp_func struct klp_object struct klp_patch まずは最下層のstruct klp_funcから見てみます。構造体の定義はinclude/linu/livepatch.hにあって、見てみるとpatchのモジュールがセットする変数とlivepatch内部用の変数があります。old_addrはoptionalでシンボル名が重複している場合
少しシリアライズ関係のライブラリを目にする機会がありまして、そういえばこういうまとめ記事あったなぁということを思い出しました。 MessagePack、Kryo、Protocol Buffersなどのシリアライザーのパフォーマンス比較 http://blog.katty.in/4567 気にはなっていたものの、実際にこれらのライブラリを使ってコードを書いたことはなかったので(Protocol Buffersは除く)、いい機会だなと思い試してみました。 今回は、以下について書いていきます。 Java標準 Kryo MassagePack Protocol Buffers JBoss Marshalling 最後の方にかなり個人的な趣向が入っていますが、気にしない方向で…。Java標準が入っているのは、とりあえずといった感じで。 ここから、簡単にシリアライザーごとにシリアライズ対象のクラスと、
G* Workshop G*なWeb API での資料です https://jggug.doorkeeper.jp/events/22473
昨日に引き続き、JJUG CCC 2015 Springの感想を書いていきます。 全体タイムテーブルは、コチラ G-4 あなたとAndroid!? 今すぐダウンロード!〜Android開発で変わる SIerのJava技術事情について〜 ここから、3連続G会場でのセッションを聞きました。最初はSIerでAndroidアプリ開発を行った経験を語ったセッション。 Androidアプリ開発を経験せずに、SIerの下請け会社を抜けてしまったので、大規模なアプリ開発ではどんなフレームワークやライブラリを使うのか興味がありました。 まず、プロジェクトに参加する前の思惑が、自分も多かれ少なかれ同じような事を考えていたのが面白かったです。Eclipseショートカットとか、MyBatisの話とかw。 本題の開発環境は、IDEにAndroid Studio、バージョン管理にGit/GitBucket、ビルドにG
HASUNUMA Kenji (Deprecated) @khasunuma_old Date and Time APIを説明するにISO 8601にまで踏み込むのは蛇足だという方は非常に多く、過去にJava界隈の重鎮から叩かれたことがあります。しかし、過去のセッションやブログを見る限り、ISO 8601には触れずに解説したものは、ほぼ例外なく爆死しています。 2015-05-09 05:11:10 HASUNUMA Kenji (Deprecated) @khasunuma_old Date and Time APIがISO 8601ベースになったのは、先行したJoda-Timeが同様にISO 8601ベースにしてうまくまとまったから。Stephenは暦が無数にあることを承知の上で、ISO 8601という国際規格を「人間向け」の基準と定めたのです。 2015-05-09 05:13:45
はじめに 先日、私たちが開発しているクラウド型WAFサービス、Scutum(スキュータム)において、予想していなかった箇所の修正によってサーバの負荷が大幅に減るということがありました。原因はこのエントリのタイトルにもあるように、Stringクラスのインスタンスを生成する際の方法にありました。 Stringクラスのコンストラクタとcharset Stringクラスにはいくつかのコンストラクタが用意されています。我々が使っていたのはString(byte[] bytes, String charsetName)です。2つめの引数で、"MS932"や"UTF-8"のような文字集合(以下charset)を明示的に指定するものです。 ScutumのようなWAF(Web Application Firewall)は通常のウェブアプリケーションとは異なり、起動している間にさまざまなcharsetを扱うこ
SIGでの議論内容(3) (2ヶ月半のブランクがありましたが)前回は、「どのような時に探索的テストを実施すればよいのか?」の議論(前編)でしたが、今回は「どのような時に探索的テストを実施すればよいのか?」の議論(後編)を紹介します。 どのような時に探索的テストを実施すればよいのか?(後編) ・ミッションクリティカル系 <意見> やらないほうがよい 絶対NGとはいえない SIG参加者の開発ドメインが様々でしたので、意見が二手に分かれました。 1.の「やらないほうがよい」という意見は、SIGの議論内容やこれまで多くの方と話した傾向から、 『ステークホルダにテスト結果のエビデンスを提出する必要があり、(開発規定がある関係で)テスト結果が残らない探索的テストを公式に実施するのは厳しい。』 という現場があります。現実的な方法としては、スクリプトテストを補うために非公式に探索的テストを細々と実施するこ
JaSST'13東海SIG(14)からの続きです。 「テストチャータを作るときに必要な要素は?」(後編) 前回は、付箋のキーワードとして「操作」「開発背景」「想定外」でしたが、今回は「あやしい」についてです。 あやしい 製品 1機能にサブ機能が多い 仕様書の更新時刻が深夜 変更行数が多い機能(差分開発の場合) 不具合が多いモジュール バグが多発している機能:バグ密度が高い機能 対象を絞る観点:バグが出たときの影響が大きいもの お金 時間 人名 企業イメージ バグが多く出た機能:「What?」「When?」 設計時 統合テスト時 FT時 市場リリース後 1.~5.は、開発状況の情報を収集したときに気付いたことですが、開発現場で『よくある話』として身近な問題と実感できる内容です。不具合が発生しやすい特徴ですので、開発関係者で共有すると「テストすべき事」が発見できるかもしれません。 6.は、リス
6/21(土)~22(日)に開催されたWACATE2014夏の1日目夜に実施した「夜の分科会」で議論された内容を6回に分けてまとめています。今回は、第6回目(最終回)です。 今回の内容:赤文字部分 上手くいった事 情報収集&整理 プロセス アプローチ 失敗した事 固定観念 探索範囲 スキル/知識 ノウハウ 現場 現象 蓄積 経験則 議論 スキル チーム 素質 適用範囲 マネージメント 課題 バグの嗅覚 方法論 スキル 言語化 テストチャータ 報告 報告事項 マネジメント 戦略 実施期間 実施範囲 アプローチ 探索的テストの効果 バグが無いことを探索する まとめ 議論内容:6. まとめ 今回の分科会を通じ、気付いた点をまとめます。 1.情報戦 上手くいった要因として、「開発情報を集約」「集約した情報を整理して、開発関係メンバーで共有」が両輪となったことが挙げられます。特に開発情報は、生々しい
6/21(土)~22(日)に開催されたWACATE2014夏の1日目夜に実施した「夜の分科会」で議論された内容を5~6回に分けてまとめます。 今回は、第5回目です。 今回の内容:赤文字部分 上手くいった事 情報収集&整理 プロセス アプローチ 失敗した事 固定観念 探索範囲 スキル/知識 ノウハウ 現場 現象 蓄積 経験則 議論 スキル チーム 素質 適用範囲 マネージメント 課題 バグの嗅覚 方法論 スキル 言語化 テストチャータ 報告 報告事項 マネジメント 戦略 実施期間 実施範囲 アプローチ 探索的テストの効果 バグが無いことを探索する まとめ 議論内容:4. 報告 ・報告事項 「テスト実施手順の記録するには?」と「どのようなレポートを記載すればよいか?」の2点が挙がりました。 「テスト実施手順の記録するには?」 探索的テストはテスト実施手順を記載しないため、バグ発見後にバグ再現を
6/21(土)~22(日)に開催されたWACATE2014夏の1日目夜に実施した「夜の分科会」で議論された内容を5~6回に分けてまとめます。 今回は、第4回目です。 今回の内容:赤文字部分 上手くいった事 情報収集&整理 プロセス アプローチ 失敗した事 固定観念 探索範囲 スキル/知識 ノウハウ 現場 現象 蓄積 経験則 議論 スキル チーム 素質 適用範囲 マネージメント 課題 バグの嗅覚 方法論 スキル 言語化 テストチャータ 報告 報告事項 マネジメント 戦略 実施期間 実施範囲 アプローチ 探索的テストの効果 バグが無いことを探索する まとめ 議論内容:3.2 ノウハウ -議論- 議論内容を5つのキーワードとしてまとめました。 3.2.1 スキル 3.2.2 チーム 3.2.3 素質 3.2.4 適用範囲 3.2.5 マネージメント 3.2.1 スキル 3.2.1.1 底上げする
6/21(土)~22(日)に開催されたWACATE2014夏の1日目夜に実施した「夜の分科会」で議論された内容を5~6回に分けてまとめます。 今回の内容:赤文字部分 上手くいった事 情報収集&整理 プロセス アプローチ 失敗した事 固定観念 探索範囲 スキル/知識 ノウハウ 現場 現象 蓄積 経験則 議論 スキル チーム 素質 適用範囲 マネージメント 課題 バグの嗅覚 方法論 スキル 言語化 テストチャータ 報告 報告事項 マネジメント 戦略 実施期間 実施範囲 アプローチ 探索的テストの効果 バグが無いことを探索する まとめ 議論内容:2.失敗した事 議論された内容を整理したところ、下記3点に集約されました。 2.1 固定観念 2.2 探索範囲 2.3 スキル/知識 2.1 固定観念 固定観念にとらわれると、探索範囲が狭くかつテスト条件の粒度が細かくなり、重箱の隅を突くようなテストに至
6/21(土)~22(日)に開催されたWACATE2014夏の1日目夜に実施した「夜の分科会」で議論された内容を5~6回に分けてまとめます。 今回の内容:赤文字部分 上手くいった事 情報収集&整理 プロセス アプローチ 失敗した事 固定観念 探索範囲 スキル/知識 ノウハウ 現場 現象 蓄積 経験則 議論 スキル チーム 素質 適用範囲 マネージメント 課題 バグの嗅覚 方法論 スキル 言語化 テストチャータ 報告 報告事項 マネジメント 戦略 実施期間 実施範囲 アプローチ 探索的テストの効果 バグが無いことを探索する まとめ 議論内容:1.上手くいった事 「上手くいった事」に関する内容をマインドマップで示します。 ※念のため、内容をまとめたマインドマップ(全体)を再掲します。 議論された内容を整理したところ、下記3点に集約されました。 1.1 情報収集&整理 1.2 プロセス 1.3
お待たせしました。6/21(土)~22(日)に開催されたWACATE2014夏の1日目夜に実施した「夜の分科会」で議論された内容を数回に分けてまとめます。 動機 探索的テストを上手く実施し成果を出すためには、「戦略」「計画」「分析」「テストチャータの設計」などのプロセスが必要ですが、具体的な事例が少ないのが現状です。そこで、各自の泥臭い事例を発信し、探索的テストを実践する上でのポイントを参加者間で共有することにしました。 全体像 当日は、各自に「上手くいった事」「失敗したこと」を付箋に記入頂き、模造紙に貼りながら議論を進めました。実際の模造紙を下記に示します。 議論内容(項目) 前項「全体像」の内容をマインドマップでまとめました。まとめた内容を下記に示します。 次回以降、下記内容を項目毎に紹介します。 上手くいった事 情報収集&整理 プロセス アプローチ 失敗した事 固定観念 探索範囲 ス
お知らせ 『WACATE2014夏(Workshop for Accelerating CApable Testing Engineers)』の1日目夜に開催される「夜の分科会」で「探索的テストを上手く進めための工夫を考えよう!」をテーマとして、オーナーを担当いたします。 探索的テストを上手く実施するためには、 「何を探索したいのか?」 「テストチャータは、どのような内容を記述すべきか?」 「探索的テストの成果を評価するための基準は?」 「探索的テストの完了基準は?」 「探索的テストを複数人で円滑に進めるためのマネージメントは、何を考慮すればよいか?」 「テスト対象を探索しやすくするためには、何を分析すべきか?」 など、「戦略」/「計画」/「分析」/「テストチャータの設計」のプロセスが必要と考えます。 そこで、様々な業種が参加されるWACATEの場で、探索的テストだけでなくスクリプトテスト
JaSST'13東海SIG(13)からの続きです。 「探索的テストに必要な要素は何か?」(別案) 今回は、SIGでの話題を数回に分けてまとめ、私の考えも述べてみます。 SIGでの話題 探索的テストを探索する from Masao Tsuzuki JaSST'13東海SIG(13)でも書きましたが、当初 「探索的テストに必要な要素は何か?」というお題でしたが、「考えにくい」「何を書けばよいか分からない」という意見が挙がったため、「テストチャータを作るときに必要な要素は?」というお題で議論を進めることにしました。 「テストチャータを作るときに必要な要素は?」(前編) テストチャータを作るときに必要な要素を参加者と私で付箋に書き、ホワイトボードに貼り付けてみました。 操作 (イベント)操作のタイミング 操作のバリエーション 操作手順が多すぎる 1.は、組み込み系機器開発でインシデントレポートの記
PostgreSQLカンファレンス2014 【D4】「PostgreSQL SQL チューニング入門 実践編」 (山田 聡) PostgreSQL の実行計画は SQL 毎に固定されたものではなく、 SQL の条件式やデータベースの内容に応じて、最適なアクセスパスや結合方法が選択されます。 しかし、運用が不適切であった場合などに最適ではないアクセスパスや結合方法を含んだ実行計画が 作成されてしまうことがあります。 本セッションでは実際の例を元に、Explain コマンドの結果から パフォーマンスが悪い SQL の問題点を見つけ出すまでの流れと 問題点への対処するための代表的な方法をご説明いたします。
2. Self Introduction • きょん kyon_mm • テストアーキテクト 2年目 • TDD/BDD, SCM, Agile, Softwaretest, SoftwareEngineering • なごや • 基礎勉強会, SCMBC, Nagoya.Testing, Cafe.Testing
シニアがウェブサイトを利用する際の大きなハードルの一つが、各種「入力フォーム」です。 一般的にシニアの方ほど入力に時間がかかり、また不適切な入力によるエラー発生頻度も高くなることは、ユーザビリティ業界の権威であるニールセンノーマングループのレポートも統計データを用いて指摘しています。 シニアをターゲットとしたウェブサイトの多くはこうした状況を考慮して、入力フォームのシニア対応に力を入れているところが多いのですが、その中でも私個人から見て特に完成度が高いと感じているのが、健康食品の『皇潤』で有名なエバーライフです。 今回、そのエバーライフの入力フォームで実装されている様々なシニア対応施策について、実装方法まで含めて詳しくご紹介していこうと思います。 1. 各フォームがそこそこ大きく見やすい 2. 必須項目表示がわかりやすい 3. ふりがなが自動的に入力される 4. 住所が自動的に入力される
プレスリリース&メディア掲載(79) ideaplant 作品(29) 一人ブレスト(20) 電子書籍コンテンツを意識して(2) 今日の一枚(2) IDEAVote/アイデアを、チームでスマートに楽しく評価していくツール(45) アイデアプラントの試作の目線(87) 知であそぼう(5) アイデアプラント 1st (2005-2008)(251) アイデアプラント 2nd (2009-2011)(580) アイデアプラント 3rd(2012-2014)(122) アイデアプラント 6th(2021-2023)(33) アイデアプラント 4th(2015-2017)(167) アイデアプラント 5th(2018-2020)(93) オンライン・ワークショップ&研修(43) 執筆作業と拙著(2) アイデアワークショップ(&アイデア創出の技術&創造工学の講演)(420) アイデア・スイッチ(39)
1. PostgreSQL SQLチューニング入門 入門編 PostgreSQLカンファレンス2014 2014年12月5日 TIS株式会社下雅意美紀 1 2. 自己紹介 • 氏名下雅意美紀 • 所属TIS株式会社 • 略歴2014年:TIS株式会社に入社 • PostgreSQL歴= 入社歴 • 日頃のPostgreSQLとのふれあい 業務で日々勉強する以外にも、JPUGのしくみ分科会や (http://www.postgresql.jp/wg/shikumi/study30_materials)、 PGEConsなど、PostgreSQLのコミュニティにも参加しています。 2 3. PostgreSQL SQLチューニング入門 入門編 本セッションの目標 PostgreSQLがSQL実行時に内部でどのような処理を行っている かを知りましょう。 SQLチューニングで使用するExplain
システムにいくらメモリが搭載されていて、そのうちどのくらいのメモリが実際に使われているのか、本当に必要なメモリはどのくらいなのか。Windows OSのメモリ管理機能について解説。 連載目次 前回はWindows OSのプロセスとスレッドについて解説した。今回はプロセスやスレッド管理とも深く関連する「メモリ管理」について見ていく。 タスクマネージャーでメモリの利用状況を確認する Windows OSと、その上で動作しているプロセスがどのくらいのメモリを使用しているかを確認することは、PCにどのくらいのメモリを用意(搭載)すべきかを決めるために重要なことである。せっかく新しい高速なシステムを導入してもメモリが不足していたのではその性能を100%発揮できないからだ。 現在使用中のシステムにいくらメモリが搭載されていて、そのうちどのくらいのメモリが実際に使われているのか、本当に必要なメモリはどの
ということで、2014/12/05に開催された、PostgreSQLカンファレンス2014 | 日本PostgreSQLユーザ会へ今年も行ってきましたよ。 今回は聞くだけでなく、1枠もらって喋ることになった。(`・ω・´)シャキーン 概要 場所は品川AP。品達が近いので、八重洲より品川のほうが嬉しいw 参加者は280名ほどらしい。なお、チケットは完売。 懇親会は向かいにある品川アネックスビルで開催。 toggterまとめ:PostgreSQLカンファレンス2014(12/5) - Togetter 超要約 今回、私が聞いたのは、keynote1, keynote2, A1, C2, B3, B4。5つ目のセッション(B5)は私が喋ったセッション。 他にも聞きたいセッションは一杯あったんだよねー。 keynote1:Open Source, Open Engineering and Post
PostgreSQLカンファレンス2014に登壇してきたので資料をアップします。 今回は初カンファレンス参加でしたが 日曜から39℃を超える熱を出して死にそうになり、 なんとか体調を取り戻して朝からスタッフ業をし、 英語がぜんぜん出来ないのに控室では英語飛び交い、 セッションを二本こなし、 当日いきなり懇親会の司会業引き継ぎをされる というなかなかセクシーなスケジュールでした。 更にPostgreSQL アドベントカレンダーの担当日でそれはとっても嬉しいなって… 自分で切ったスケジュールながら過密で濃厚な一日を過ごすことが出来ました。 カンファレンスとしてはどのセッションも盛況でしたね。 特にハンズオンやチュートリアルのような初心者〜中級者のコマは立ち見が出るほどの大盛況でした。 (30人ぐらいの部屋に80人が押し寄せるようなセッションもありました) 私としてもガッツリDBエンジニア向けの
いくら英語ができるようになっても、英語で文章を読むスピードは、やはり日本語を読むスピードよりも4割減くらいなので、和訳があれば絶対和訳から読むのですが、英語の原文しかない場合も多々あります。 そうなると、英語で読むしかありません。知らない単語が出てきて、辞書を引くのも面倒だし、知らないまま読み飛ばして理解できないことも多々あるので、「辞書ひきながら一気に読める時間ってどこで作るんだろう?」と、読む前から、げんなりしてしまいます。 ちなみに、どれだけ外国語ができるようになろうと、バイリンガルであろうと、英語を読むスピードは日本語よりも遅いそうです。それは、日本語は漢字交じりの言語で、漢字から多くの意味を理解できるため、少し読み飛ばしても内容が理解できるからだそうです。 そんなわけで、英語をはじめ、外国語で本や論文を読まなければいけないときは、ちょっとした準備をしています。 PDFなどの電子媒
#!/bin/sh rm -fr .git *.txt .gitignore git init echo init.sh>.gitignore && git add .gitignore && git commit -m "Initial Commit" echo b>b.txt && git add b.txt && git commit -m "master 1" git branch other echo c>c.txt && git add c.txt && git commit -m "master 2" echo d>d.txt && git add d.txt && git commit -m "master 3" git checkout other echo e>e.txt && git add e.txt && git commit -m "other 1" echo
JaSST'13東海SIG(15)からの続きです。 SIGでの議論内容(1) JaSST'13東海SIG(14)及びJaSST'13東海SIG(15)では、ホワイトボードに付箋に貼った内容を紹介しましたが、今回から数回に分けてホワイトボードを見ながら議論したことについて紹介します。 スライドのチャータ What/When/Whereをどう書けばよいか分からない(前項の説明との繋がりがよく分からない) 無理があるのでは? 当初(JaSST'13東海SIG(13))、テストチャータを切り口をWhat/When/Whereから検討すると作りやすいのでは?と思いました。しかし、探索的テストの知見は体系的にまとまっていないため、知見と知見との繋がりが見えず、切り口としては良くない結果となりました。 そこで、探索的テストで必要なことを付箋に自由形式で書き出すことにしました。 テストチャータの役割 探索
更新履歴 2012-08-28: URL 公開 2012-08-29: futex、hrtimer、MySQL の発生条件、NTP SLEW モードに関する @odhrfm さんからの情報、キーワード更新、その他いろいろ細かい修正 2012-08-30: 参考リンク追加 2012-09-01: LKML まとめシートの thread#50 を追加 2012-09-03: SLES カーネルの更新情報、per-cpu についての記述、blockdiag によるブロック図を追加 2012-09-11: LKML まとめシートの thread#52, #53 を追加 2012-09-12: LKML まとめシートの thread#54 〜 #58 を追加 はじめに 日本時間 2012 年 7 月 1 日 9:00 にうるう秒が挿入されましたが、その際 Linux カーネルに起因する不具合により、
Merge, tail, search, filter, and query log files with ease. No server. No setup. Still featureful. In Your Terminal Many logging tools, like Splunk, provide great features but are optimized for large-scale deployments. They require installing and configuring servers before they can be effectively used. There is still a need for a robust log file analyzer for the terminal. Easy to Use Just point ln
2015/04/17 公開された資料を追加しました ここ最近いろいろグダグダなので今回は頑張ってすぐブログ書く きっとスライドが公開されるので、公開されたら貼り付けていきます 今回は会場が西新宿のベルサール新宿グランドに変わった。個人的にはアクセスがよくなってうれしい 基調講演のJava 20年史がすごい聞きたかったけど朝起きれず…結局午後から参加 写真のはJJUG会長の会社のデザイナーさんがデザインしたらしい。カッコイイ F-1 だれも教えてくれないJavaの世界。あと、ぼくが会社員になったわけ。 終始納得するセッションだった 歴史を知るの大事 Javaを勉強というとどうしても動くものが作れるようにという目的になってしまうので文法やライブラリ、ビルドツールなどに寄ってしまうのだろう ある程度書けるようになったら、なぜJavaはこうなっているのか?ってわかるとより理解が進むと思う だれも教
- The document discusses optimizing Java performance on hardware by leveraging features like AES-NI, transparent huge pages, and compiler intrinsics. - It provides examples showing performance improvements from using these features, such as faster encryption times when enabling AES-NI and fewer TLB misses with transparent huge pages. - It also discusses Java VM options, garbage collection, and the
JJUG CCC 2015 Spring の発表資料。 --------------------------------------------------------------------------------- 私は2014年にITベンチャーにエンジニアとして入社しました。 理系の大学院出身でしたが、学生時代はとにかくプログラミングから逃げるように過ごしてきました。 入社後の研修ではJavaでif文やfor文の書き方を学んでいたという見事な初心者っぷり。 そんなJava初心者の私が、2ヶ月でwebサービスを開発し、公開するというプロジェクトにチャレンジしました。 数々の困難を乗り越え、何とか「ニクリーチ2016」というwebサービスを公開。 当セッションでは 入社後どのような研修を受けたのか ニクリーチ2016ではどのような技術を使ったのか 一人開発プロジェクトを通して感じたこと
Temas de ofimática en la gestión de archivos Guía de trabajos en clase y actividades de la ofimatica
2. なにこれ 2012/03/17 に行った Git初心者 BootCamp の演習です。 コミットグラフを頭で描ければ勝ちら しいので、「お題のコミットグラフを 作っていこう」みたいな感じ。
This document appears to be a profile for an individual named Miho Ye. Some of the information provided includes that she works as an agile coach, trainer, author, translator, and associate professor. She also engages in community organizing activities. The document includes her name written in both the Latin and Japanese alphabets. It also contains passages from The Fellowship of the Ring in Japa
本サイトはいわゆる帰国子女で30年弱英語を使っているエンジニアである筆者が英語関連の気になった項目や、質問された項目について解説を試みるサイトです。一応TOEIC 950点ですが、普段から使っているという以外に特に英語の専門的な知識はありませんので、鵜呑みにせず参考としてご使用ください。質問の仕方→ http://www.englishforengineers.jp/post/122219356460 コミット説明文は短めの物なら動詞で始めるのがわかりやすい: Fixed a bug where… Removed duplicate code for… Redo the logic around … ある程度長くなる場合はちゃんとした文章のほうがよいかもしれない。時と場合による。 追記 「コミットメッセージの最初の動詞は現在形で」というのをどっかで見て以来、そうしてるんですが、両者にどうい
Hello,everyone! 安河内哲也です。 お待たせしました! 4月から新たに始まった連載「英語スピーキングの達人から盗む!絶対話せる7つの鉄則」の2人目の登場です。「高卒までは日本の普通の英語教育を受け、その後、苦労の末に英語が話せるようになった“元純ジャパ”」に限定して達人を厳選している本連載。今回お話を伺ったのは、英語学習サイトEnglishCentralの創業メンバーで、EnglishCentral日本法人の社長を務める松村弘典さんです。高校までは、英語が苦手かつ嫌いだったにもかかわらず、ひょんなことからシンガポールに渡ったという松村さん。現地で英語のコミュニケーションがまったく取れず苦労しまくったそう。にもかかわらず2年で、イギリスの一流大学の4年に編入するまでの英語力を手にした彼。いったいどんな学習法を実践していたのか? Let’s find out! 高校の英語は赤点ば
1. クリエイティブ・リーダーのための アイデアワークショップ 〜描くプロジェクトに、新しい仲間(運営、参加者)を作るには、 どうすればいいか、をテーマにしたアイデア創出ワークショップ〜 ⽯井⼒重 Rikie Ishii アイデアプラント 代表 早稲⽥⼤学 ⾮常勤講師 rikie.ishii@gmail.com 2015年6⽉13⽇ 13:00〜17:00 ファイブブリッジ1F 創造スタジオごくり 1 2. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1300 <開始バッファ(10)> 1.導⼊「ブレインストーミング・カード」「創造⼒の使い⽅」(40) 2.⼀⼈発想法「死者の書」(直観で意外なアイデアを捕まえてくる発想法)(40) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1430 <休憩(10)> ━━━━━━━━
はじめに データがこれまでになく貴重だと思うなら、確実にそのセキュリティを最優先に考えるべきである。そして、複数のプラットフォームで業務を行う企業が増えるにつれて、利用できる全ての業務対応OSで暗号化を行う心構えが必要だ。そのOSにはLinuxも含まれる。ありがたいことに、暗号化に対応したツールの選択肢はたくさんある。 しかし、どのツールを検討すればよいのだろうか。例えば、Ubuntuソフトウェアセンターを開くと、提供されているツールの大部分(「暗号」で検索するとよい)は、依存関係を解析するライブラリに過ぎないことが分かるだろう。ただし、もう少し深く探してみると、簡単な暗号化に必要なものが何でも見つかる。筆者はそうしたLinux用の暗号化ツールを5つ見つけた。 提供:iStockphoto.com/ChrisBoswell
ほぼデフォルト設定状態の RHEL6 系 OS で通信オフロード設定の有効/無効によって、通信の転送速度がどれほど差異があるか検証してみました。検証環境の概要は下記のとおりです。 さくらのクラウドで仮想サーバを2台用意して、サーバ間をスイッチで接続して速度測定。 測定対象サーバには Sientific Linux 6.5 をインストール。 対向サーバには Ubuntu 14.04.0 をインストール。 各サーバの NIC の理論回線速度は公称 1000Mbps。(最大実効速度は500Mbps 程度) サーバ間を結ぶスイッチの回線速度は無制限。(概ね NIC の実効速度に依存することになる) 速度測定には iperf を使用。 今回、変更対象となる通信オフロード設定は、仮想NIC (Network Interface Card) の TSO (TCP Segmentation Offload
6/26日、JaSST関西に参加しました。西先生が考えているテストアーキテクチャ設計について、そのモデル(メタモデル)をトライしてみました。 先生は、システムアーキテクチャ設計の並行概念として、「テストアーキテクチャ設計」というコンセプトを提唱しています。最終的にはテストスイート(テストケース群)を設計するのですが、テストケースの上位概念として「テスト観点」を上げ、それらをモデル化(グループ化、階層化、関係づけ)することでテストの再利用性やその後の派生開発での利用をしやすくするある種の「設計行為」だとしています。 このモデルは、講義中に描いたものを、懇親会中に西先生と議論し、その後、二次会でも同じテーブルの方々とレビューして書き上げた、第一バージョンです。 この領域にいる方々のコメントを下にお待ちします。 Register as a new user and use Qiita more
Adds an option to show name and shortcuts of any action you invoke (View | Appearance | Descriptions of Actions) in IntelliJ-based IDEs of version 2023.2 and older...
Cask から El-Get に移行したのが先月。 (ちなみに Homebrew の Cask は Emacs の Cask を参考にしたらしいです。) 遅ればせながらCaskから移行した。私のinit.elは http://t.co/6EptUvzKPH から辿れるよ。elpa: を付けたほうが良いのかが判断つかない。 / “Caskはもう古い、これからはEl-Get - いま…” http://t.co/suiPgzXdXP — マスタカ (@masutaka) May 17, 2015 el-get-update とかで頻繁にエラーになるので、調べ始めて文句を言って いるところ(愚かな奴めw)。 el-getもCaskとは違った面倒くささがあって、考えるのも面倒になってきた。MELPAがあるのにVCSでの指定をオススメするって、意味がわからない。el-get-bundleが言うelp
昨日、分散DB本読書会のあとに品川のラーメン屋でリアルタイムとは何ぞや〜みたいな話になった。自分の思いついたポエムをここに書いておこう。現場の問題とはあまり関係がない。 Stream Data Processing: A Quality of Service Perspective (Advances in Database Systems)という本によれば、DSMS (Data Steram Management System) とDBMS (Database Management System)の違いは、クエリを発行するデータ集合の性質にある。つまり、DBMSは今ある有限のデータに対して操作を行うための仕組みで、DSMSはこれからやってくる無限のデータに対して操作を行うための仕組みと定義されていた。このDSMSというやつは、古式ゆかしいストリーム処理システムのことで、まあいわゆるCEP
This document summarizes a presentation about the Gretty Gradle plugin for managing web containers. The Gretty plugin allows running web applications on Jetty or Tomcat with features like hot deployment, integration testing, code coverage, and debugging support. It also enables running multiple web applications on a single container as a "Gretty Farm" with capabilities like single sign-on and clas
先日、OracleのWebページからJDKとJREをダウンロードしようとしたら、「Server JRE」というのが用意されていることに気がついた。 このServer JREとは、いったい何じゃらほい? というのが今回のテーマ。なお基本的にLinuxサーバ環境で考えます(Windows, Solarisは無視)。 JDKとJRE はじめに、複雑怪奇なJavaパッケージについて少し解説しておく。「Javaをインストール」という場合には、開発キットであるJDKとランタイムであるJRE、どちらをインストールするかが問題になる。しかしこの日記を読んでいるような人ならばJava開発者であろうから、JDKを入れてしまえばほぼ間違いなく問題は解決する。 なぜなら、JDKはJREを内包しているので、JDKをインストールすれば自動的にJREも入るからである。というわけで開発者なら、何も考えずにJDKを入れてし
プログラマやデザイナと話してるとしょっちゅう変な英語発音に出くわします。 例えばheightを「ヘイト」と発音したり。 そういう時、私は心では「ヘイトじゃないよハイトだよ!」と呟きつつ、口では「そうですね、ではヘイトは80pxにしましょう!」なんて言ってるのであります。 まあ、所詮我々が話しているのは英語ではなく、日本語の中に出てきた英単語をカタカナで発音しているに過ぎないですし、テレビのテロップでmainをメーンと表記する時代ですので正解などは無いと思っています。 ですから、何でもかんでも正しい英語っぽく発音するべきなどとは思っていませんが、やはり「こいつ適当にスペルを日本語読みしてるだけだろ!」ってのが明らかな場合は、聞いているこっちが恥ずかしくなってしまうものです。 というわけで、この業界で横行してる妙な発音をまとめてみました。 間違って発音すると恥ずかしい英語 これらは間違って発音
IFTTT でインスタグラムの写真をツイッターで直接表示させる 2015-06-10-1 [WebTool] だいぶ前の話ですが、Instagram は Twitter のライバルである Facebook に買収されたため、Twitter のタイムラインに Instagram の写真が直接表示されなくなりました。それをなんとかするために、IFTTT を使ってインスタグラムの写真をツイッターで直接表示できるようにする方法が紹介されていました。 - TwitterのタイムラインにInstagramの写真を表示させるIFTTTレシピ ([ t] TAROSITE.NET) http://www.tarosite.net/social/7224.html で、さっそくやってみました。 で、うまくできました。 いいね! というわけで、簡単な「やってみた報告」でした。
こんばんは。 ここしばらく、『なんちゃって社会派風』の記事を書き続けていった結果、『経済・社会』のカテゴリの記事ばかり増えてしまいました(^_^;)。今日は久しぶりに、このブログの本来のテーマである(?)節約について書いてみたいと思います。 先日、このブログでの収益について、雑なまとめを投稿させて頂いたところ、予想以上のアクセス・ブックマークを頂き、びっくりしちゃいました。 この10万円という金額を大きいと感じるか小さいと感じるかは人それぞれだと思いますが、やはりある程度継続して書いていくのは骨の折れる作業です。正直誰もが誰も出来る話では有りません。そこで今回は、本来記事を書いた人が貰える『アフィリエイト収入』を『自己宛アフィリエイト』としてポイント還元出来るサイトについてご紹介したいと思います。 『自己アフィリエイト』の仕組み このブログでも広告収益の大きな割合を占めている『商品の紹介』
4. © 2015 Kenji Urushima All rights reserved. 3 • 最近のBEASTやHeartBleed、CA不正証明書問題など重大なSSL/TLS脆弱 性に対応するには、どのような設定をすればよいか? • CRYPTREC暗号リストと整合取りながら、暗号の難しい説明なしに、サー バー管理者に使ってもらえる、設定例を豊富に用意した資料 • サーバーの設定はどのように決めるのか – サーバー管理有識者の知見 – 暗号・プロトコルの研究者・有識者の知見 – 証明書発行サービス有識者の知見 – サーバー・クライアント製品の実装状況 – 市場での暗号やプロトコルの利用状況 – SSLサーバー証明書の選定 • 日々の脆弱性に対応する「意識高い系」サーバ管理者向け CRYPTREC/IPA SSL/TLS暗号設定ガイドとは CRYPTRECシンポジウム2015の菊池
2. 背景 お客様からたまに、携帯カメラで文字認識したいという相 談をうける。 AR的に認識した文字に合わせた動画や3次元モデルを 表示するなどをしたい。 特定物体認識では賞品のパッケージは認識できても、 個別の製品番号まで認識できない。 製品番号まで認識出来れば、より強力なマーケティングツー ルになる というわけで、何か使えるものがないか調べてた Tesseract OCR 4. Tesseract OCRとは? オープンソースのOCR(光学文字認識)エンジン 認識可能な言語 日本語含む、30ヶ国語以上 歴史 1984年-1994年 Hewlett Packard にて研究・開発 1995年 UNLV Accuracy Testでトップ3に入る 2005年 オープンソース化 現在のスポンサーはGoogle Google Booksで使う
11. private[sql] abstract class AbstractSparkSQLParser extends StandardTokenParsers with PackratParsers { def parse(input: String): LogicalPlan = { // Initialize the Keywords. lexical.initialize(reservedWords) phrase(start)(new lexical.Scanner(input)) match { case Success(plan, _) => plan case failureOrError => sys.error(failureOrError.toString) } } : } 今度はこの2つを 見てみます。 12. class SqlParser extends
技術部の小野(taiki45)です。クックパッドではこれまで様々なデータベースの負荷対策を行ってきましたが、シャーディングは行われていませんでした。しかし先日クックパッドの認可サーバーが利用している MySQL サーバーの負荷分散のためにクックパッドで初めてのシャーディングを行ったので、Rails アプリケーションでのシャーディングの事例のひとつとしてその際の手法をご紹介したいとおもいます。 構成 Before データベースは1マスター、1ホットスタンバイ、バッチ用の1リードレプリカで構成されています。Read オペレーションのほとんどはキャッシュ層に逃しています。 After データベースの各ロールにつきそれぞれ1台ずつマシンが増えています。 シャーディングが必要になった背景 認可サーバーのアクセストークンの作成・削除時の Write オペレーションが急増し、レコード数自体も急増していて
日本人の国民食として、老若男女問わず愛されているラーメン。中でも首都、東京には有名ラーメン店が立ち並び、しのぎを削っています。今回は、数あるラーメン店の中でも、本当においしいラーメン屋21選をご紹介いたします。ラーメン好き必見のお店ばかりですよ! 1.煮干鰮らーめん圓 中華そば 勇次@町田 の田中氏が立ち上げたお店としても、注目が集まっている”煮干鰮らーめん圓” 店内はカウンターのみになっていて、食券を購入するスタイルです。 店の看板メニューは、煮干しの味を存分に味わえる”煮干しラーメン”。チャーシュー、メンマ、ネギ、半味玉が乗っていて、麺は細麺ストレート。バラ肉のチャーシューも絶品で、じんわりと煮干しを感じられるスープとよく合います。 ■ 基本情報・名称: 煮干鰮らーめん圓(にぼしいわしらーめんえん)・住所: 東京都八王子市横山町21-21・アクセス:JR八王子駅より徒歩5分・営業時
本日codicのEclipseプラグインをリリースしました。これを使えば、プログラミングしながら、よりシームレスにネーミング生成できますので、Eclipseをお使いの方はインストールしてみてください。 codic eclipseプラグインとは このEclipseプラグインは、codicのネーミングツールをEclipseから利用するためのプラグインです。任意のエディタ上でcodicのAPIを使ってネーミング生成が行えます。 このプラグインは、codic のAPIを利用して実装されているためアクセスキーが必要です。アクセスキーは、codicにてアカウントを作成してAPIステータスのページより取得してください。 インストールと使い方 Github のページを参照してください。
MOONGIFTはオープンソース・ソフトウェアを紹介するブログです。2021年07月16日で更新停止しました 文章を書くのが苦手という方は多いのではないでしょうか。個人的にはさすがに毎日のように文章を書いていて苦手意識はないのですが、堅苦しく書くなど文体によっては苦手な形式もあります。何より英文は苦手です。 通常、文章に対するスペルチェッカーはありますが、RedPenは自然言語で入力された文章全体のチェックをしてくれるソフトウェアです。 RedPenの使い方 RedPenのデモです。同じ単語が使われている場合、スペルミスなど様々な観点からチェックを行ってくれます。 RedPenは設定ファイルを使ってエラーチェックを行います。さらに言語非依存で、英語はもちろん日本語やドイツ語、中国語などでも利用が可能です。面白いのはプレインテキストだけでなく、MarkdownやTextileでもそのまま記述
PostgreSQL 9.2より追加されたJSON型だが、特徴を理解して適切に使わないと色々な副作用に悩まされることになる。その問題点を挙げると共に、どのような場合に使うべきかの指針を示す。 PostgreSQLは、データ型としてjsonをサポートしています。しかし、やりたいことがある時に何でもかんでもjson型を使ってしまうというのはやめるべきです。これは、hstoreや新しく登場したjsonb型にも同じことが言えます。これらの型は必要な時には便利なツールになりますが、PostgreSQLでデータのモデリングを行う際に最初に検討すべきものではありません。 なぜなら、データを呼び出したり操作したりするのが難しくなってしまうためです。 何もかも同じところに入れてしまおうとすることによるアンチパターンをご存知の読者もいるでしょう。EAVアンチパターンは、長らくデータベーススキーマにおける必要悪
表題の通り、MyNAとJPUGの合同DB勉強会で発表をしたので資料を公開した。 内容の詳細はスライドそのものを見ていただくとして、言いたいことの主旨はこうである。世の中に完璧なデータモデルはないので、NoSQLは当然の如く必要になる。だが、何でもかんでもNoSQLを使えば良いというものではない。むしろアプリケーションが必要としているデータモデルが何かということをよく理解し、本当に必要な場合にこそ、NoSQLを使うべきなのである。つまり「ご利用は計画的に!」ということだ。 大切なのは、様々なデータモデルを理解し、アプリケーションにとってベストな製品を選択するということだ。ベストなのがRDBかも知れないし、そうでないかも知れない。最適なデータモデルを選択した場合に、出来上がったものの性能も最高になるし、開発効率も最も良くなる。データベースの主流はRDBだが、それはリレーショナルモデルがカバーで
SSH 用の暗号鍵を格納しておいたり、パスワードを覚えておくことは大変です。しかし、悪意のハッカーや侵害行為が蔓延している世界では基本的なセキュリティの備えが大事です。一般ユーザーの大半にとって、つまるところパスワードを記憶することであり、パスワードを覚えてくれるプログラムを探すことになります。IT 分野で仕事をしている我々は、より高いレベルが必要です。パスワードだけではなく、SSH 用キーも扱う必要があります。 次のような状況を考えてみましょう。クラウド上に git リポジトリを扱うサーバーを持っています。作業するためのコンピューターを数台持っています。各コンピューターから、サーバーにプルしたりプッシュしたりします。git は SSH を使うように設定しています。git が SSH を使う場合、SSH コマンドでサーバーのコマンド ラインを実行する時と同じ方法を用います。すべてを設定する
コンテンツブロックが有効であることを検知しました。 このサイトを利用するには、コンテンツブロック機能(広告ブロック機能を持つ拡張機能等)を無効にしてページを再読み込みしてください。 ✕
sysctlのカーネルパニックオプション panicの整理 panic系パラメータの関係 それぞれのパラメータの挙動 kernel.panic kernel.panic_on_unrecovered_nmi kernel.unknown_nmi_panic kernel.panic_on_io_nmi kernel.panic_on_warn kernel.softlockup_panic kernel.hung_task_panic kernel.panic_on_stackoverflow vm.panic_on_oom sysctlのカーネルパニックオプション ちょいとカーネルパニックをどう設定すればよいかという話があって、ためしにsyscltをpanicでgrepすると、意外にというかpanicに関するパラメータがバラバラ出てきてどうすればよいかイマイチわからない。 # sysct
グローバルの競争に勝つために必要なこと 八子知礼氏(以下、八子):3つ目のテーマとして、そういったグローバルなキャリアっていうのを考えた場合、今おっしゃっていただいたように、よりその専門性が必要とされたりであるとか、ITに関わるんだったら皆コード書けよっていうような、そんな話ももしかしたらあるのかなと思ったんですけど。そうしたグローバルの競争に勝つために、ズバリ何が必要だというふうにお考えになりますかね? ジェイソン・ダニエルソン氏(以下、ジェイソン):個人的な話ですか? 八子:個人的な話で。 ジェイソン:一番大事なのは、自分でやってることをしっかり考えることだけだと思いますけどね。「今何をやっている。それは何でやっているのか、それよりいい方法はないのか」を考えれば、もう自動的に改善していくと思いますけどね。 そのまま、上が言ってるようなことをそのままやるとなると、ずーっと技術とか、いろい
9. DSL • Domain Specific Languageの略。 • 特定の領域(ドメイン)の問題を解決する ための言語。 • 専用のパーサーを作る「外部DSL」と、 プログラミング言語を利用する「内部 DSL」、といった分け方ができる。 10. 内部DSLの例 • GrailsでSpring Beanの登録。 // grails-app/conf/spring/resources.groovy ! import my.company.MyBeanImpl ! beans = { myBean(MyBeanImpl) { someProperty = 42 otherProperty = "blue" } }
6. ソースコードリーディング案 1つの案として、井久保さんのソースコード解析資料(http://ikubo.x0.com/PostgreSQL/ pg_source.htm)をアップデートする形で進めていこうと考えています。 No テーマ 説明 担当 1 ソースツリーとPostgreSQLのアーキテクチャ ソースコードの概要とPostgreSQLのアーキテクチャ 2 初期DBの作成処理(Bootstrap) 主に initdb で実行される内容 3 ストレージマネージャ smgr, file, page, buffer, freespace 4 メモリ管理 utils/mmgr 5 postmaster postmaster の処理フロー、シグナル処理など 6 postgresプロセスの概要 postgresプロセスの処理フロー、エラー処理など 7 プロセス間通信(IPC) 共有メモリ、シ
HCPC 勉強会 (2019/4/4) - Convex Hull Trick ※文字が見えない場合は、ダウンロードするかフルスクリーンにしてご覧ください
Linuxとオープンソース・ソフトウェアに関するニュースを伝えるサイト「The Linux Homefront Project」が8月28日(米国時間)、記事「Lennart Poettering merged “su” command replacement into systemd: Test Drive on Fedora Rawhide|The Linux Homefront Project」において、systemdにsuコマンド相当の機能がマージされたことを伝えた。 同記事では、systemdの開発者であるLennart Poettering氏による動画を掲載しているが、この動画からは、machinectlコマンド経由でrootユーザ権限のシェルが起動していることを確認できる。 ここ数年、Linuxディストリビューションの多くが従来のSysV形式のinitからsystemdへの移
広告事業部の鈴木達矢です。コーディングをしてると変数やメソッド名の付け方に悩むことって多々ありますよね。逆にコードを読んでいると単語の選択がこれでいいのかなという時や、動詞の活用形が間違っていてよく意味がわからない、時に潔く日本語の変数名になっていることも見かけます。でもプログラミング言語の単語が英語をベースにしていますし、Railsを使っている場合は日本語が規約(Convention)に合わなかったりします(複数形が無いなど)。それから動詞の活用形が違っていると主語(動作の主体)が変わってしまい、意味が変わってしまいます。その結果コードの可読性が落ち混乱を招きやすくなります。 いくつかの基本的な法則だけおさえておけばコーディング中に可読性の高い単語の選択ができるようになります。今回はそれを目的に、英語の扱いに都度時間を費やしてしまうような方に向けていくつかの法則をご紹介します。*1 変数
最近、OSS関係でGitHubとかMLとかに顔を出していて、当然ながら会話は全部英語。 というわけで、英語を書くときに心がけていることを簡単に書く。 「英語が下手ですいません」とか前置きしない 読めば下手だって分かるから、わざわざ言う必要ない。これ言ってる人を見かけるとほぼ確実に日本人なんだけど、必要以上に卑屈なオーラを感じるので良くないと思っている。いくら日本人が英語苦手とは言え、英語圏の人は糞な英語に慣れてるから大体分かってくれるし、分からない場合はこういう意味かとレスが来るから、その都度説明すればいい。ただし後にも書くように礼儀は必要なので、甘え切って雑になるのはよろしくない。逆に丁寧に書けば懸命さが伝わり好印象。 あと、日本人以外にも非ネイティブは沢山居ると思うと結構気が楽。自分の感覚としては非ネイティブの書く英語ほど分かりやすい気がしていて、ネイティブの方が表現が小洒落てて時とし
Linuxでサーバを運用していると、メモリ不足でSwapが発生することがあります。で、このSwapなのですが、発生頻度を少しだけ調整できます。デフォルト設定だと、物理メモリに余裕があってもSwapが発生します。これを調整すると、少しだけSwapの発生を抑えることができます。 設定しておくと幸せになると思います。 ■パラメータ 下記のファイルに0〜100の数値が記載されています。 /proc/sys/vm/swappiness この数値を0にすると、物理メモリを使い切るまでSwapを発生させません。100にすると、とにかくSwapするようになります。パフォーマンス激落ちです。デフォルトは60です。この数値を0にしてしまえば、数値を1以上に設定すれば、メモリを最大まで使い切るようになります。 追記 2016/3/25 はてなブックマークのコメントで、swappinessを0にするとOOMKil
はじめに 清水です。CloudFromationのテンプレート(つまりJSONファイル)を Emacsで見やすく、編集しやすい環境を整えたのでまとめておきたいと思います。 何もしていないデフォルト状態ではシンタックスハイライトがなく味気ない状態ですが(Before)、環境を整えることでシンタックスハイライトが効いた見やすい、またリアルタイム文法チェックやインデントの効いた編集しやすい環境(After)になりました。 emacsの環境 今回試した環境は以下になります。 OS X Yosemite 10.10.5 GNU Emacs 24.5.1 (GNU Emacs For Mac OS X) homebrewインストール済み Emacsはemacs-color-theme-solarizedを適用 編集用のメジャーモード javascript-mode JSONまわりの設定を何もしない状態
Haskellのコードを書くときは、Windows 10からTeratermでDebianサーバにSSH接続し、そこでEmacsを-nwで起動して使っています。 標準のhaskell-modeでとくに不満はないのですが、いちおうghc-modも入れていて、単純なエラーの確認にはとても重宝しています。 でも、ghc-modの補完機能はほとんど使っていませんでした。補完のためのコマンドが手になじまず、調べている間に手打ちしてしてしまうので、ちっとも身に付かなかったからです。 とはいっても、ある程度の量を書いていると、やはり手で打っているのではしんどくなってきます。何とかならないかなーと思っていたところ、company-ghcというものを発見しました。 Company GHC https://github.com/iquiw/company-ghc ターミナルで開いているEmacsでも、統合開発
CompanyEngineeringProductSunsetting AtomWe are archiving Atom and all projects under the Atom organization for an official sunset on December 15, 2022. January 30, 2023 Update: Update to the previous version of Atom before February 2 On December 7, 2022, GitHub detected unauthorized access to a set of repositories used in the planning and development of Atom. After a thorough investigation, we hav
注意事項 今なら素直にSpacemacsを使ったほうが手軽に環境構築できます。 この記事はある程度当時の状況を網羅したもので、今でも利用されているパッケージはあまり変わっていないので、そういう意味では参考になりますがセットアップ方法や設定などはかなり変わってきているので、参考にならない部分も多いです。 Spacemacsを僕の好みに合わせて設定したものを、以下に解説と合わせてのせているので参考にしてみてください。 SpacemacsでClojureを書くために僕が行った設定 はじめに Clojure の開発環境というのはどんどん新しくなっていくので、最近の開発環境事情について解説しようと思います。 この記事は次の記事の置き換えを狙ったもので、出来るだけ新しい情報を提供することを目的としています。 EmacsでモダンClojure開発環境構築 また何か間違っているという場合は気軽に編集リクエ
Software Design連載記事を掲載します。 株式会社技術評論社の許可を得て掲載しています。 草稿なので細かい部分は実際の記事とは異なることがあります。 他の記事は左下にある「■雑誌連載中(全文公開)」から見られます。 今回は前回少し紹介した、穴埋め式で定型文を入力できるパッケージ「yasnippet」について深堀りしていきます。スニペット作成のチュートリアルから、auto-yasnippet パッケージによる即席スニペットの使い方までを解説します。 ども、るびきちです。 11/8にJohn Wiegley氏がEmacsのメンテナに就任し、Emacs25リリースへ向けての動きで盛り上がっています。 彼は前世紀からたくさんのelispプログラムに関わっていて、長年熱心に活動しているのでこれからのEmacs界が楽しみです。 執筆時点で25.1への仕様凍結がされたので、そう遠くない日にリ
ども、るびきちです。 先々月、先月と操作性を高めるためにはキーボードでの操作をしっかりと整えることだとお伝えしました。 キーバインドを適切に設定しておけば、いつでも素早くコマンドが呼び出せるからです。 それと同時に、入力支援機能を活用しミスタイプなく確実に目的の入力する方法を確立すれば一気に使いやすくなります。 まず真っ先に使うべき入力支援機能はdabbrev(動的略語展開)です。 長い文字列の入力を省力化する重要な機能です。 この機能がないテキストエディタは正直、使いものになりません。 テキストエディタを使っていると、どうしても同じ単語を何度もタイプすることが多くなります。 しかし、毎回馬鹿正直にタイプすると、時間かかるしタイプミスが起こりやすくなります。 Emacsではその問題に対する解決策が用意されています。 最初の数文字をタイプしてからM-/を押してみましょう。 すると「魔法」が発
Software Design連載記事を掲載します。 株式会社技術評論社の許可を得て掲載しています。 草稿なので細かい部分は実際の記事とは異なることがあります。 他の記事は左下にある「■雑誌連載中(全文公開)」から見られます。 前回に引き続き、Emacs の操作性を決定づけるキーバインド設定についてお話します。前半では「同時押し」というEmacsには今までなかった操作を導入するパッケージ「key-chord」を、後半では繰り返し入力するようなコマンドを短くできるパッケージ「smartrep」を紹介します。 ども、るびきちです。 「Emacsの使い勝手は操作性で決まる」という流れで先週はキーバインドの設定を中心にお話してきました。 Emacsはキーボード操作が中心なので、いかに賢くキーバインドを設定するかが操作性を決定付けます。 言うまでもありませんが、よく使うコマンドはキーに割り当てて然る
多様な領域のアイデアワークの設計をしています。アイデア創出に関してお困りのことがあれば、下の黒い四角(公式サイトのお問い合わせページ)から、お気軽にご相談ください。
Previous Next Table of Contents 2. クライアントとサーバ(TCP/SOCK_STREAM)両方に関する質問 2.1 相手側のソケットが閉じられたことをどうやって知ることができますか? Andrew Gierth 氏 ( andrew@erlenstar.demon.co.uk) より: 私の知る限り… 相手側が (SO_LINGER を使ったややこしいことをしないで) close() するか終了したとすると、こちらの read() の呼び 出しは 0 を返すはずです。同じ場合で、write() 呼び出しで何が 起こるかは、もうちょっとわかりづらいです。直後の呼び出し時ではな く、その次の呼び出し時にEPIPE が返るでしょう。 もし相手が再起動するか l_onoff = 1, l_linger = 0 を設定して から閉じたとすると、read() からは(
All Microsoft Global Microsoft 365 Teams Copilot Windows Surface Xbox Deals Small Business Support Software Windows Apps AI Outlook OneDrive Microsoft Teams OneNote Microsoft Edge Skype PCs & Devices Computers Shop Xbox Accessories VR & mixed reality Certified Refurbished Trade-in for cash Entertainment Xbox Game Pass Ultimate PC Game Pass Xbox games PC and Windows games Movies & TV Business Micro
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く