You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
こんにちは、チーフエンジニアの id:hakobe932 です。 はてなでは毎週、社内技術勉強会を開催しています。先週の勉強会では現在開催中のはてなインターン2016の参加者のみなさんもインターン生も参加して、いっしょに技術交流を行いました。 このエントリでは、そこで発表した、契約による設計の紹介をしたスライドを公開します。 契約による設計はBertrand Meyer氏によるオブジェクト指向入門*1という書籍で紹介されている考え方です。 オブジェクト指向入門 第2版 原則・コンセプト (IT Architect’Archive クラシックモダン・コンピューティング) 作者: バートランド・メイヤー,酒匂寛出版社/メーカー: 翔泳社発売日: 2007/01/10メディア: 単行本(ソフトカバー)購入: 11人 クリック: 307回この商品を含むブログ (130件) を見る 契約による設計で
Eureka EngineeringLearn about Eureka’s engineering efforts, product developments and more.
特定の処理でエラー(例外)が発生した際にリトライしたいケースありますよね?数秒ほど何らかの理由でデータベースへアクセスができない状態となった時など、数秒間置いてリトライする処理が組まれていれば全体の処理を止めずに完了することができます。そのような処理を Talend で作ってみました。 概要 今回作成したジョブの完成形は下図の通りです。 「リトライ」と銘打たれた(線で見難いですが……)コンポーネントから反復(Iterate)線で繋がれた処理が「エラーとなる可能性のある処理(下図の赤枠内)」となります。 今回は Redshift へアクセスし、「SELECT 'Hello, world!' AS message;」というクエリの結果を tLogRow でコンソールへ表示するだけの処理です。 エラー(例外)が発生した場合は、指定された試行回数・試行間隔でリトライを行い、成功した場合には「成功」
UNIXやMacを使用しているユーザーならば誰でも一度はシェルスクリプトを作成した経験があると思います。どんな環境でも使い回せるポータビリティの高さが魅力ですが、プログラミング言語としてみると独特な部分が多く、なんとなく苦手意識を持っている方も多いかもしれません。 本日紹介する「Bash Infinity Framework」はそんなシェルスクリプトの概念を完全に変えてしまうBash用のフレームワークです。 モジュラーかつ軽量で、C#やJava、JavaScriptといった他の言語のコンセプトを取り入れ、プラグ&プレイで必要な機能だけを追加していける特徴を持っています。 主な特徴は以下の通りです: 自動エラーハンドリング 名前付きパラメータ($1、$2ではなくて) 配列とマップをパラメータとして引き渡せる try-catchの実装 独自例外のthrow キーワードのインポート 出力を改善す
OSS(オープンソースソフトウェア)開発への参加実績は、キャリア形成をしていく上での武器のひとつとなります。 スキルアップやキャリアアップのために、オープンソースプロジェクトに参加したいと考えている方は少なくないのではないでしょうか。そこで今回は、既存のOSS開発に参加する際に読んでおきたい記事を10個ご紹介します。 OSS開発の参考になる記事 OSSコミュニティの種類と特徴、参加方法 / 日本OSS推進フォーラム http://ossforum.jp/node/491 日本Rubyの会、Seasarプロジェクト、日本Apacheユーザ会、日本PostgreSQLユーザ会といったOSSコミュニティの種類と特徴、コミュニティへの参加方法を解説しています。 この記事を参考に、自分が貢献できそうなコミュニティを探してみてください。
fossBytesに8月9日(米国時間)に掲載された記事「Top 5 Highest Paying Programming Languages of 2016」が、Packtが1万1000人以上のITプロフェッショナルを対象にした調査をベースとした、給与支払いの高いプログラミング言語ランキング2016年版を紹介した。 紹介されている給料の高いプログラミング言語は次のとおり。 Bash 10万米ドル(約1010万円) Perl 9万5000米ドル(約960万円) Scala 9万米ドル(約910万円) SQL 6万2000米ドル(約630万円) Delphi 6万米ドル(約610万円) 同記事では、ほかにも人気の高いプログラミング言語や人気の高いWeb開発フレームワーク、開発者コミュニティが興味を持っているアイデアのランキングも掲載されている。それぞれ掲載されているランキングのトップ5は次の
私が関数型プログラミングについて度々耳にするようになったのは、数カ月前からです。でも当時は、それが何なのか見当もつかず、単なるバズワードだと思っていました。皆さんの中にも、そのような方は多いでしょう。それ以来、私は関数型プログラミングについて深く学び、この言葉を日々聞いてはいるものの内容を理解していない初心者の方のために、分かりやすく説明しようと思い立ちました。 関数型プログラミング言語の話になると、「 Haskell と Lisp は どちらが優れているのか 」という 議論 が 白熱する 傾向にあります。HaskellとLispはどちらも関数型言語ですが、実際には大きな違いがあって、それぞれに長所と短所があります。その具体的な内容については、この記事を読み終える頃には深く理解していただけると思います。この2つの言語には、それぞれから派生した言語があります。その中で恐らく皆さんが耳にしたこ
StackOverflowが新サービス「Documentation」を開始。サンプルコードを中心に技術解説、質問されなくとも有用な情報を共同で作成 StackOverflowは、エンジニア向けのQ&Aサイトとしてよく知られています。誰かが質問をすると、その答えを知っている人が回答する。質問をよりよくするために書き換えることもできるし、質問や答えの有用さを評価することもできて良い質問や良い答えはポイントが上がるなど、サイト全体のコミュニティの質が保たれるような仕組みを備えているのが特長です。 そのStackOverflowが、新サービス「Stack Overflow Documentation」(以下Documentation)をベータ版として公開しました(英語版StackOverflowにて。日本語版StackOverflowにはまだのようです)。すでにさまざまなトピックのドキュメントがあ
Amazon、クラウドIDEを提供する「Cloud9」買収。AWSが統合開発環境をSaaSとして提供する布石か Webブラウザから使える統合開発環境、いわゆるクラウドIDEを提供するCloud9は、Amazon.comに買収されたと発表しました。 We will be joining the Amazon Web Services family, and we're looking forward to working together on terrific customer offerings for the future. 私たちはAmazon Web Servicesファミリーに合流する予定です。私たちはすばらしいお客様の未来に向けてともに働けることをとても楽しみにしています。 (Cloud9のブログ「Great News!」から引用) Cloud9はクラウドIDEを提供しているベ
よく訓練されたアップル信者、都元です。APIのデータ入出力フォーマットとして、JSONはすっかり市民権を得た感がありますね。私、XMLも意外と好(もごもご Jacksonで目的の値を取り出す さて、Javaの世界において、よく使われているJSON処理ライブラリとしてJacksonというものがあります。 ここでは、OpenWeatherMapの出力を使って説明していきます。(ただし、以下を実際に試してみるためには、OpenWeatherMapに対して無料登録をおこなって、APIキーを手に入れる必要があります。) http://api.openweathermap.org/data/2.5/weather?APPID=XXXXAPIKEYXXXX&q=Tokyo,jp 上記URLにアクセスすることによって、下記のような情報が得られます。 { "coord": { "lon": 139.69,
https://www.youtube.com/watch?v=7KS4L-mA_-c 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 約1時間前 Takipi のFounderであるTalWeissのSan Francisco Java User Groupミートアップでの講演。本番環境で役に立つデバッグテクニックの紹介です。 1. スレッド名の活用 スレッド名はmutable(EJB除く)である。コードのコンテキストにあわせて、Thread.currentThread().setName(Context, TID, Params, Time,...);のようにすれば、トランザクションID、Serveletパラメータ、キューメッセージID、起動時間など、スタックトレースに役に立つ情報を表示できるようになる。 J
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く