こんにちは、id:hitode909です。今回は、id:onkに話を聞いてみます。 onkさんとはここ半年ほど隣の席に座っていて、マンガチームでの課題を足がかりに、CTO室の時間を使って全社的な問題を解決しようと日々活動しています。 id:onkにアンケート はてなidとその由来を教えてください いつどんなきっかけで入社されましたか? 現在の仕事を教えてください チーム内の立ち位置を教えてください 今日一日の流れを教えてください 最近うまくいったことは何ですか? 最近うまくいってないことは何ですか? ふだん大切にしていることは何ですか? はてなはどんな会社ですか? おわりに id:onkにアンケート はてなidとその由来を教えてください 苗字の大仲 (ONaKa) からです。2004-2005 年ぐらいに取得したはず。当時は (今も?) 母音を省略するのがカッコイイという雰囲気があったと思
はてなアプリケーションエンジニアの id:takuya-a です。 この記事では、Microsoft の検索エンジン Bing で採用された BitFunnel アルゴリズムを紹介します。 昨年のエンジニアアドベントカレンダーでは、文字列検索のアルゴリズム全般について紹介しました(文字列アルゴリズムの学びかた - Hatena Developer Blog)。今年はそのなかでも、インデックス(索引)を使った全文検索アルゴリズムについてのお話になります。 この記事の前半は全文検索の入門にもなっていますので、検索技術になじみがない方にも楽しんでいただけるのではないでしょうか。 逆に、「そんなのもう知ってるよ!」という方は、本題である「BitFunnel アルゴリズムの詳細」から目を通していただければと思います。 この記事は、はてなエンジニア Advent Calendar 2017の21日目の
こんにちは!はてな東京オフィスでアプリケーションエンジニアをしている id:KGA です。 はてなで毎週開催している技術勉強会で「リモートチームでの働き方」と題し、自分以外のメンバーが全員京都オフィスにいるチームで2年間仕事をしてきた経験から心がけるようになったことを発表しました。今回はその発表資料を公開します。 speakerdeck.com 最近では東京オフィスにもエンジニアやデザイナーなどの開発メンバーが増えてきましたが、それでもまだ半数以上のメンバーが京都オフィスに勤務しているというチームも少なくありません。どのチームも規模や状況によって試行錯誤しながら様々な取り組みをし、働きやすいチームを作ることを目標に東京・京都双方で力を合わせ日々改善を行っています。 僕自身、入社当初から東京オフィスに1人だけというチームで働いていて、やはり最初は大小様々な問題に直面しました。そんな中で他のチ
こんにちは! id:amagitakayosi です。 はてなブログチームで JavaScript と Perl を書いています。 最近はてなでは Frontend Lunch Podcast を配信しています。 iTunes: https://itunes.apple.com/jp/podcast/frontend-lunch/id1174199369 RSS: https://hatena.github.io/frontend-lunch/feed.xml (2017-02-07 15:38 追記) Podcast配信サイトを移転したので、配信URLを変更しました。 この記事では、Podcast を始めた経緯を通じて、はてなのフロントエンド会の取り組みを紹介したいと思います。 目次 フロントエンド会の発足 フロントエンドMTG フロントエンドランチ Frontend Lunch Pod
Webサービスの開発は、ユーザ/顧客へ価値を早く届けるため、競合より早くリリースするため、人的リソースを無駄使いしないためなど、とにかく素早く進めたいものですね。一方で、開発を急ぐあまり品質を犠牲にすればかえって価値が失われたり、技術的負債が溜まって長期的なコストが大幅に増大する可能性もあります。開発速度とプロダクト品質は基本的にはトレードオフの関係にあるのでしょう。 開発速度と品質のどちらを優先するかはプロダクトの性質や、チームもしくは会社の状況によって異なるとおもいます。この状況の認識がチームメンバー間でずれていると、チームのパフォーマンスを最大限に発揮できないばかりか、チーム内の関係悪化も招きかねません。エンジニアたちとプロダクトオーナーの間の対立のようなありがちな問題の原因の一つかもしれません。 そこで、開発速度と品質のトレードオフをどう判断すべきかの基準を明確にして、原則それに従
こんにちは!はてなアプリケーションエンジニアの id:takuya-a です。 みなさんは、このような疑問をもったことはありませんか? grep はどのように文字列を検索しているのか? MeCab はどうやって辞書を高速にルックアップしているのか? パーサやコンパイラを作りたいけど、何から始めればいいのか? 本稿では、「文字列アルゴリズムとはどんなものなのか?」「なぜ重要なのか?」「何を知っておくべきか?」「どうやって勉強すればいいのか?」といった疑問にお答えしていこうと思います。 文字列アルゴリズムの意外な応用や、モチベーションを保ちやすい勉強のしかた、文字列アルゴリズムを勉強するために行った社内での取り組み、実装するときのコツといったトピックについても触れています。 このエントリは、はてなエンジニアアドベントカレンダー2016の22日目の記事です。昨日は id:syou6162 さんに
こんにちは、はてなシニアエンジニアの id:y_uuki です。 今年もアドベントカレンダーの季節がやってきましたね。昨年のアドベントカレンダーの記事は以下のページにまとまっています。 明日の12月1日から25日まではてなのエンジニアの誰かが毎日エントリーを書く毎に、以下にリンクを追加していきます。お楽しみに! 12月1日 developer.hatenastaff.com 12月2日 CSS の -webkit-line-clamp プロパティについて by id:nanto_vi 12月3日 developer.hatenastaff.com 12月4日 blog.yuuk.io 12月5日 developer.hatenastaff.com 12月6日 medium.com 12月7日 ichirin2501.hatenablog.com 12月8日 developer.hatena
この記事は、はてなエンジニアアドベントカレンダー2016の14日目の記事です。13日は id:astj による『Perl 6 のモジュールエコシステムの話とモジュールを公開する話 (2016年12月版) - 平常運転』でした。 こんにちは。Mackerelチームでアプリケーションエンジニアをやっている id:itchyny です。 Mackerelは、同じ役割を持つホストを束ねた「ロール」、そしてロールを束ねた「サービス」というまとまりでホストを管理し、一覧性の良いグラフ画面を提供しています。 ロールあたりのホスト数、そしてサービスあたりのロール数が増えると、グラフの画面のパフォーマンスに大きく影響します。 Mackerelチームでは大規模なサービスでも快適にグラフを閲覧できるように、継続的に画面のパフォーマンスを改善してきました。 本記事では、Mackerelのフロントエンドのパフォーマ
こんにちは。アプリケーションエンジニアのid:yashigani_wです。 はてなは、短期間にWebアプリケーション開発の基礎を身につけるための教材である「はてな教科書」をgithubで公開しています。 これは新入社員研修やはてなサマーインターンでの講義に利用されており、毎年のはてなサマーインターンの一環として加筆・修正し更新しています。 今年は「はてな教科書JavaScript編」「SwiftでのiOSアプリ開発」「Web開発におけるコンピュータサイエンス - 機械学習編」を変更・追加しました。 Webアプリケーション開発の学習や研修のために自由にご利用いただけます。 はてな教科書JavaScript編 今年のはてな教科書では、JavaScript教科書を一新しました。 JavaSctiptの講義は内容が長大になってしまったため、他の教科書とは別レポジトリに移動しました。 また、教科書は
こんにちは、チーフエンジニアの id:hakobe932 です。 はてなでは毎週、社内技術勉強会を開催しています。先週の勉強会では現在開催中のはてなインターン2016の参加者のみなさんもインターン生も参加して、いっしょに技術交流を行いました。 このエントリでは、そこで発表した、契約による設計の紹介をしたスライドを公開します。 契約による設計はBertrand Meyer氏によるオブジェクト指向入門*1という書籍で紹介されている考え方です。 オブジェクト指向入門 第2版 原則・コンセプト (IT Architect’Archive クラシックモダン・コンピューティング) 作者: バートランド・メイヤー,酒匂寛出版社/メーカー: 翔泳社発売日: 2007/01/10メディア: 単行本(ソフトカバー)購入: 11人 クリック: 307回この商品を含むブログ (130件) を見る 契約による設計で
この記事は2016年に書かれた古い記事です。当時はまだTypeScript2.0も出ていないころで今とは状況がかなり異なっています。参考にする場合注意してください。 はじめに TypeScriptの型システム Declaration space Open-ended ここまでの確認 型定義ファイルを読み書きできるようになるために declare キーワード 既存のオブジェクトの型定義を拡張する グローバルなオブジェクトに対する宣言 module Export Assignments Relative or Non-relative module imports ES2015形式 実際の定義ファイル 既存の定義ファイルを拡張する declare global { } について Typings について おわりに インターン募集中 はじめに こんにちはアプリケーションエンジニアの id:t_k
おはようございます。シニアアプリケーションエンジニアの id:cockscomb です。WWDC が目前に迫ったいま、今秋にリリースが予定されている Swift 3.0 について、Swift OSS コミュニティの中心である Swift Evolution から読み取っていきたいと思います。 [PR] 本記事は、筆者が株式会社はてなの協賛を得て主催した「関西モバイルアプリ研究会 #14」において、“Swift Otaku — Nerdy Swift-Evolution Watching” と題して発表したものをブログの記事として再構成したものである。 関西モバイルアプリ研究会は、毎月一度、平日夜に京都や大阪で開催される、モバイルアプリ関連の勉強会である。次回の「関西モバイルアプリ研究会 #15」は6月22日水曜日に開催予定だ。 目次 Focus Winding Down Complete
こんにちは。はてなの id:onishi です。 2016年7月2日(土)〜3日(日)にかけて、YAP(achimon)C::Asia Hachioji 2016 mid in Shinagawaが開催されますね!P は Perl ではなく Pachimon だそうです。 こちらのイベントにはてなから2人のエンジニアが登壇します!トークをご紹介しますので興味のある方は是非ご参加ください。 はてなブログのAMP対応の話 7/3(日) 14:00 C会場 (予定) id:hitode909 github.com 現在,はてなブログはAMP(Accelerated Mobile Pages)対応を進めています. 発表者はこれまでに,テキストメインのウェブサービスであるQuyoと,ユーザーが任意のHTMLを書けるブログサービスであるはてなブログの2つのサービスのAMP化に関わってきました. それぞ
チーフエンジニアの id:Songmu です。 4月に 新人エンジニア研修を行なった のですが、その際に、「インフラを意識したアプリケーションの書き方」という講義を担当しました。そこでおこなった講義の内容について整理しながら書き起こしていきたいと思います。 インフラを意識すると何が良いか 業務でWebアプリケーションを扱うと、個人ではなかなか扱えないトラフィックであったりデータ量を扱うことになります。小規模サービスでは考えなくてよかった多くのことを考慮する必要がでてきます。なかなか体験できないことでもあるので、楽しく、やりがいもあります。 また、そういった経験を通して、インフラを意識しコードをかけるスキルを身につけることは、Webエンジニアとしては大きな強みとなります。ISUCONで優勝できるかもしれません*1。 インフラを意識すると何が良いか 〜 中規模ベンチャーの場合 そもそも、はてな
東京でウェブオペレーションエンジニアをしている id:dekokun です。 ここ数年、HTTP/2 or SPDYが話題ですよね。nginxが1.9.5からSPDY対応を切ってHTTP/2の設定ができるようになったり、はてなでも以下ブログにも記載されているように、SPDY or HTTP/2も積極的に導入していっています。 developer.hatenastaff.com 先日、AWSの環境にてSPDYを導入したのですが、導入していくまでにはやはり若干の苦労がありました。そこで、SPDY or HTTP/2をどのように導入していったか及びそこで起きた問題点の解決策等をまとめようと思います。 なお、この記事では"HTTP/2 or SPDY"と書いていますが、SPDYはHTTP/2にその座を譲ろうとしている立場となっています。具体的には、今年の5月にChromeがSPDYのサポートを切る
こんにちは!ブログチームの id:amagitakayosi です。 今回は、業務で書いた小さなReactコンポーネントをnpmパッケージとして分離した話をします。 今回公開するパッケージ 実装方針 なぜnpmパッケージにするのか 他のコンポーネントの影響で壊れることを防げる アドホックな修正の積み重ねで複雑になることを防げる 本体プロジェクトのコードを削減できる デメリット Babelなパッケージのディレクトリ構成 実装 npmの注意点 reactはpeerDependenciesに入れる npm link を用いてローカル開発する場合、npmはpeerDependenciesを解決できない browserify-shimを利用する場合 npm publish 次回予告 追記 今回公開するパッケージ www.npmjs.com 今回は「無限スクロール」のためのReactコンポーネントを作
id:stanaka です。はてなでは1月末と7月末に評価の時期を迎えます。毎回この時期になると評価プロセスや評価軸について議論になります。 はてなでのエンジニア評価として、コード品質などいくつかの項目がありますが、その中の一つとして「アウトプットする」ということを設定しています。 「アウトプットする」ということは直接的にはその本人と会社の社外におけるプレゼンスを向上させる、ということになりますが、それ以上の効果があると考えており、そのあたりの背景について社内向け文章を書いたのですが、せっかくですので社外にも公開します。 「アウトプットする」ことを期待する背景 はてなのエンジニアの評価基準として「アウトプットする」ということを軸の一つとしています。 アプトプットすることは、自身や会社の社外におけるプレゼンス向上だけではない価値があると考えています。 アウトプットすることで各エンジニアがより
はてなチーフエンジニアの Songmu です。この記事ははてなデベロッパーアドベントカレンダー2015の7日目の記事です。昨日は id:mazco による デザインにおける個性のつけ方 でした。 今日は Mackerel の公開ドキュメントについてのお話です。 Mackerelは以下で公式ドキュメントを英語と日本語で提供しています。 help.mackerel.io help-ja.mackerel.io これらは実ははてなブログでホストしています。 翻訳は日本語を先に書いて、それをチームのネイティブ翻訳者が翻訳するフローになっています。 ドキュメントの運営 告知ブログのようなものなら良いのですが、ドキュメントはその性質上定期的なメンテナンスが必要になります。特に以下の様な点がドキュメントを運営する際に難しいところです。 なんらかの一括修正が必要になった場合に修正点を洗い出して一括で反映す
本日、はてな教科書に新たにSwiftの教科書を加えました。先進的なプログラミング言語であるSwiftを学習するのに最適な教材です。 「はてな教科書」はもともと、およそ1週間でWebアプリケーション開発の基本を身につけるために、PerlやJavaScript、MySQLなどを用いて実際にWebアプリケーションを作ってみる教材として作られてきました。はてなサマーインターンシップや、はてなの入社時研修に利用されています。最初はWebアプリケーションのための教科書でしたが、はてなでは近年の多様なニーズにあわせて年々内容を更新してきました。 はてな教科書 はてなサマーインターン2015では新しく様々な内容が追加されましたが、今回はそのうちSwiftに関する部分を先行して公開します。昨日Appleが正式にリリースしたSwift 2を全面的に採用した教科書で、Appleプラットフォームアプリ開発の学習や
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く