Hatena Developer Blog

はてな開発者ブログ

ペパボ・はてな技術大会〜インフラ技術基盤〜の参加者募集中!!!

上記エントリにて先日お知らせしたペパボ・はてな技術大会〜インフラ技術基盤〜の募集を開始しています。すでにconpassのイベントページを公開していますが、本ブログでも改めてお伝えします。以前にお伝えしたとおり、福岡と京都で開催します。福岡編は、7…

【Apple WWDC 2016】iOS 10のApp Transport Securityと2016年末からのATS必須化についてAppleのエンジニアに聞いてきた

Apple WWDC 2016に参加するためにサンフランシスコへ来ているid:niwatakoです。 WWDC 2016のセッション にて、App Storeに公開するアプリは今年中にATS(App Transport Security)が要求されるようになるという発表がありました。 アプリからの通信をhttps接続…

【Apple WWDC 2016】WWDC 初日 Keynote、State of Union、Design Award と Realm WWDC Livestreamed Swift Panel 参加レポート

こんにちは。はてなブックマークのiOSアプリ開発チームで働いている id:niwatako です。 6/13から6/17にかけて、アメリカ・サンフランシスコではAppleの開発者向け年次カンファレンスであるWorldwide Developers Conferenceが開催されています。 私はそれに…

はてなブックマークのデータを用いた機械学習演習やAWSハンズオンなど・はてなサマーインターン講義内容決定!!

はてなでのひと夏があなたをつくります 以前からお伝えしているとおり、はてなでは8月15日から9月9日までの期間でサマーインターンを開催します。 「はてなサマーインターン2016申し込み」はこちら はてなインターンはカリキュラムが前半と後半に大きくわか…

Swift 3.0 をいまから学ぶ Swift Evolution ウォッチング

おはようございます。シニアアプリケーションエンジニアの id:cockscomb です。WWDC が目前に迫ったいま、今秋にリリースが予定されている Swift 3.0 について、Swift OSS コミュニティの中心である Swift Evolution から読み取っていきたいと思います。 [PR…

YAPC::Asia Hachioji 2016 にはてなから2人のエンジニアが登壇します

こんにちは。はてなの id:onishi です。 2016年7月2日(土)〜3日(日)にかけて、YAP(achimon)C::Asia Hachioji 2016 mid in Shinagawaが開催されますね!P は Perl ではなく Pachimon だそうです。 こちらのイベントにはてなから2人のエンジニアが登壇します!…

Unicodeプロパティを使ったPerl正規表現

こんにちは、Webアプリケーションエンジニアのid:nanto_viです。 Webアプリケーションを作っていると、「全角文字と半角文字を統一したい」「ユーザーの入力から漢字を抜き出したい」といったテキスト処理を行う場面にたびたび遭遇します。はてなではWebアプ…

インフラを意識してコードを書くということ

チーフエンジニアの id:Songmu です。 4月に 新人エンジニア研修を行なった のですが、その際に、「インフラを意識したアプリケーションの書き方」という講義を担当しました。そこでおこなった講義の内容について整理しながら書き起こしていきたいと思います…

【Google I/O 2016参加レポート】Android開発者向けオススメセッション 3日目とまとめ

こんにちは、アプリケーションエンジニアのid:takuji31です。 5月18日〜20日にGoole I/O 2016が開催されました。 私もはてなのAndroidエンジニア代表として派遣され、参加してきました。 この記事では先日に引き続き3日目のオススメセッションや、現地で見つ…

機械学習・アドテク! iOSアプリ! ブログ! Mackerel!「はてなサマーインターン2016」の募集を開始しました!

はてなサマーインターン2016の募集を開始いたしました!対象は2017年以降に卒業予定の高専生、大学生、大学院生です。募集の締め切りは2016年7月4日(月)正午です。はてなのサービスに興味があり、Webエンジニアとして働いてみたいという学生の皆様からのご…

はてなブログのシンタックス・ハイライト機能に対応する言語を募集します(追記あり)

こんにちは、ブログチームの id:masawada です!今回は、はてなブログのシンタックス・ハイライト機能について紹介します。はてなブログでは「はてな記法」モードおよび「Markdown」モードの場合に、ソースコードを色付けするシンタックス・ハイライト機能を…

【Google I/O 2016参加レポート】Android開発者向けオススメセッション 2日目

こんにちは、アプリケーションエンジニアのid:takuji31です。 昨日に引き続き、2日目の19日に私が見たセッションの中から、Android開発者の皆様にオススメのものを紹介します。 What's new in Android development tools www.youtube.com 最新のAndroidの開…

【Google I/O 2016参加レポート】Android開発者向けオススメセッション 1日目

こんにちは、アプリケーションエンジニアのid:takuji31です。 私は今、5月18日〜20日開催のGoogle I/O 2016に参加しています。 今回は会社からの派遣ということで、知見を持ち帰るべくサンフランシスコにやってきました。私としても念願のGoogle I/O初参加と…

「ペパボ・はてな技術大会 〜インフラ技術基盤〜」を福岡と京都で開催!

こんにちは、はてなウェブオペレーションエンジニアの id:y_uuki です。GMOペパボ株式会社さんとの共同で「ペパボ・はてな技術大会」を福岡と京都で開催します。 今回は、ペパボさんとはてなのインフラエンジニア・ウェブオペレーションエンジニアが集まり、…

HTMLのpattern属性とJavaScript正規表現のunicodeオプション

こんにちは、Webアプリケーションエンジニアのid:nanto_viです。みなさんHTMLのフォーム検証機能は使っていますか? 近年は各Webブラウザの対応も進み、お手軽にフォームの利便性を高められるようになっています。 そんなフォーム検証機能のひとつがinput要素…

リモートワークにおけるSlack Call活用と終業15分前の雑談

ウェブオペレーションエンジニアの id:y_uuki です。リモートワーク環境でのSlack Callの活用を紹介します。はてなのシステムプラットフォーム部(いわゆるインフラ部に相当)には現在9名在籍しており、一人だけ東京オフィス勤務で、残りは京都オフィスに勤…

AWSでのHTTP/2 or SPDY運用の課題とPROXY protocol

東京でウェブオペレーションエンジニアをしている id:dekokun です。 本記事ではAWSでELBを使用してHTTP/2 or SPDYを運用する上で直面する問題としてのクライアントのIPアドレスが分からなくなる問題の紹介を行い、その後に解決策としてのPROXY protocolの紹…

2016年度はてな新人エンジニア研修を行いました

はてなチーフエンジニアの id:motemen です。2016年4月1日付けで、新卒・中途含めて6人の新人エンジニアがはてなに入社してくれました。この記事では、彼らに受けてもらった今回の新人研修についての概要を簡単に紹介します。 動機 もともと、はてなのアプリ…

react-storybookを用いたReactコンポーネント開発

こんにちは!Webアプリケーションエンジニアの id:amagitakayosi です。 今日はReactコンポーネントを手軽に開発するためのツールを紹介します。 前回のあらすじ react-storybookとは 導入してみる 初期設定 storyを作成する 起動 イベントを監視する Hot Mo…

Reactコンポーネントをnpmパッケージとして開発する

こんにちは!ブログチームの id:amagitakayosi です。 今回は、業務で書いた小さなReactコンポーネントをnpmパッケージとして分離した話をします。 今回公開するパッケージ 実装方針 なぜnpmパッケージにするのか 他のコンポーネントの影響で壊れることを防…

Kotlinでモダンなライブラリーを駆使してAndroidアプリを開発する

はじめに こんにちは、アプリケーションエンジニアのid:takuji31です。今年の1月に入社してAndroidアプリの開発を行っています。 先週4月2日(土)にはてな京都オフィスで開催されたKotlin 1.0.0リリース記念勉強会 in 京都で、「Kotlinとモダンなライブラリー…

「はてなサマーインターン2016」開催!

はてなでは、今年も学生を対象としたエンジニア向けの「はてなサマーインターン2016」を開催します。開催時期、応募方法などの詳細については、5月下旬をめどにこのブログで発表します。インターンシップへの参加にご興味のある方は、以下のフォームからメー…

【2016年度版】このPerlハマりどころがすごい!100連発

はじめに autovivificationを避ける myと後置ifを同時に使ってはならない return;で返る値は空のリスト 正規表現によるバリデーションでは\Aと\zを使おう '0' は偽で評価される each は中断した時、中断した時点の状態が残り続ける おわりに はじめに こんに…

AWS EC2でのHTTP/2 or SPDY導入方法

東京でウェブオペレーションエンジニアをしている id:dekokun です。 ここ数年、HTTP/2 or SPDYが話題ですよね。nginxが1.9.5からSPDY対応を切ってHTTP/2の設定ができるようになったり、はてなでも以下ブログにも記載されているように、SPDY or HTTP/2も積極…

インフラエンジニアがGo言語でオペレーションツールを書くことについて

ウェブオペレーションエンジニアの id:y_uuki です。 はてなの東京オフィスで先月開催されたGo 1.6 Release Partyで、「Writing Tools in Go For Ops Engineers」というタイトルで発表しました。発表では、最近作ったGo製ツールを紹介し、なぜGoがインフラエ…

新卒1年目のエンジニアからみた「はてな」

こんにちは!はてなの id:stefafafan です。Mackerelチームのエンジニアとして去年入社しました。今回ははてなという会社に入社して間もない私が気づいた点について書きたいと思います。 エンジニアにとってのはてな モチベーションの高さ 情報共有 環境の改…

「はてな教科書」のSwiftの教科書をSwift 2.2に対応しました

アプリケーションエンジニアの id:Sixeight です。 先日、iOS 9.3の公開に合わせてXcode 7.3がリリースされ、Swiftのバージョンが2.2になりました。 2015年12月にオープンソース化されてから、最初の公式リリースとなります。 swift.org これに合わせてはて…

エンジニアが見るべきテックブログをホストする技術

こんにちは、はてなの id:onishi です。先日、こんな記事がはてなブックマークの人気エントリーに上がっていました。なるほど、興味深いですね。こうやって眺めてみるとブログ事業者としては、テックブログにどんなブログサービスが使われているか気になりま…

エンジニアの専門性を伸ばすためにディレクターに気をつけてほしい3つのこと

こんにちは、 id:stanaka です。先日、社内ミーティングでディレクターから「エンジニアの専門性を伸ばすためにディレクターとしてなにができるか」という質問を受けて回答した社内向けエントリを公開します。 (ちなみに、はてなでのディレクターは、エンジ…

try! Swiftにはてなのエンジニアが登壇します

こんにちは!シニアアプリケーションエンジニアのid:cockscombです! 来週3月2日から4日までの「try! Swift」カンファレンスに、はてなから2名のエンジニアが登壇します。またはてなはtry! Swiftのスポンサーでもあります。 try! Swift 以下に、登壇する2名…

はてなのエンジニアに期待する「アウトプット」

id:stanaka です。はてなでは1月末と7月末に評価の時期を迎えます。毎回この時期になると評価プロセスや評価軸について議論になります。 はてなでのエンジニア評価として、コード品質などいくつかの項目がありますが、その中の一つとして「アウトプットする…

DroidKaigiにはてなのエンジニアが登壇します

Androidアプリエンジニアのみなさんこんにちは!2月18日、19日に開催される「DroidKaigi」というAndroidをテーマとしたカンファレンスに、はてなから2名のエンジニアが登壇いたします。以下に概要を紹介しますので、ご覧になるセッションを選ぶ際にご参考く…

Googleスプレッドシートをcronのように使いSlackに投稿する

はてなチーフエンジニアの id:motemen です。以前の記事で紹介したようにはてな技術グループおよびデザイングループでは毎週社内で勉強会を開催していますが、これを運営していくにあたってひとつ課題であったのが毎週のリマインドでした。developer.hatenas…

はてなでの10年戦える新技術採用戦略の話

この記事ははてなデベロッパーアドベントカレンダーを始めます - Hatena Developer Blogの最終日の記事です。昨日は id:ichirin2501 の MySQLでINSERTのデッドロックに嵌る人を1人でも減らすために - ichirin2501's diary でした。 こんにちは、id:stanaka /…

はてなで新しくWebサービスを作るときのインフラの作り方

この記事ははてなデベロッパーアドベントカレンダーを始めます - Hatena Developer Blogの17日目の記事です.昨日は id:yashigani_w の Promiseを学ぶためにSwiftでPromiseを実装してみた話 - yashigani?.days でした.こんにちは、はてなの id:wtatsuru で…

エンジニア寿司を支える技術

この記事ははてなデベロッパーアドベントカレンダー 2015の15日目の記事です。昨日は id:nobuoka による UWP アプリ開発に TypeScript + React を導入することの検討 (Node.MSBuild.Npm の紹介) - ひだまりソケットは壊れない でした。 こんにちは、はてなの…

(解説) はてなブックマークにおけるアクセス制御 - 半環構造に基づくモデル化

先月開催されたWebDB Forum 2015で、「はてなブックマークにおけるアクセス制御: 半環構造に基づくモデル化」というタイトルの発表をしました。発表資料には多くの方に興味をもっていただけたようですが、わかりにくい点も多かったのではないでしょうか。ス…

Swiftオープンソース化の衝撃

エンジニアの id:cockscomb です。この記事ははてなデベロッパーアドベントカレンダー2015の8日目の記事です。昨日は id:Songmu による Markdownドキュメントをgithubで管理して、はてなブログでホストする ~ Mackerelの場合 でした。 Swiftがオープンソース…

Markdownドキュメントをgithubで管理して、はてなブログでホストする ~ Mackerelの場合

はてなチーフエンジニアの Songmu です。この記事ははてなデベロッパーアドベントカレンダー2015の7日目の記事です。昨日は id:mazco による デザインにおける個性のつけ方 でした。 今日は Mackerel の公開ドキュメントについてのお話です。 Mackerelは以下…

スクリーンショットで振り返る・はてなブログ記事編集画面デザインの歴史

はてなブログはこの4年間のうちに様々な新機能や改善をリリースしてきましたが、そのなかでも特に「記事編集画面」はローンチ当初から継続して改善に取り組んできました。この記事では、過去4年間のスクリーンショット(開発中のものを含む)をいくつか紹介…

はてな×ドワンゴ合同ハッカソン@京都イベントレポート!

こんにちは、はてなの id:onishi です。このエントリは、はてなデベロッパーアドベントカレンダー2015の3日目です。先日このブログで告知させていただいた、はてな×ドワンゴ合同ハッカソンが無事開催され、盛況のうちに幕を閉じました!京都会場の様子をお届…

Perl の Time::Piece 利用上の注意点

こんにちは、アプリケーションエンジニアの id:nanto_vi です。この記事ははてなデベロッパーアドンベントカレンダー 2015 の 2 日目です。Perl で日時を扱うモジュールのひとつに Time::Piece があります。コアモジュールなので手軽に使えますが、Perl - Ti…

はてな 2017年度 新卒採用サイトを公開しました!

本日、はてな2017年度新卒採用サイトを公開しました。 新卒採用 - 株式会社はてな2017年度新卒採用は以下の3職種で採用を行います。 Webアプリケーションエンジニア iPhone、Androidアプリエンジニア Webオペレーションエンジニア エンジニア職の書類締切は2…

はてなデベロッパーアドベントカレンダーを始めます

こんにちは、はてなチーフエンジニアの @songmu です。 さて、今年もアドベントカレンダーの季節がやってまいりました。去年は、はてなエンジニアアドベントカレンダーをこのブログで実施しましたが、今年はエンジニアにかぎらず開発者全般に書いてもらおう…

ドワンゴさんとはてなで学生さんを対象にしたハッカソンを開催します!(京都・東京 2カ所)

こんにちは、はてなの id:onishi です。 11月22日(京都)、28日(東京)に、ドワンゴさんと共同で「はてな×ドワンゴ合同ハッカソン」と題した学生さん向けのハッカソンイベントを開催します。 ドワンゴ・はてなのエンジニアも参加し、交流いただくことがで…

今年はScalaもSwiftも! はてなサマーインターン2015を元に「はてな教科書」を最新化しました

こんにちは、アプリケーションエンジニアの id:pokutuna です。 「はてな教科書」は、はてなで Web 開発に携わるエンジニアのために作られた1週間で Web アプリケーション開発の基本を身につけるための教科書です。はてなサマーインターンシップや、入社時研…

Coursera を利用した機械学習勉強会

はてなアプリケーションエンジニアの id:takuya-a です。 はてなでは、 BrandSafe はてな や、はてなブックマーク のカテゴリ分類など、様々なところで機械学習を利用していますが、今月の初めより、 Coursera の機械学習のコースを参加者全員が修了する こ…

はてな技術グループの2015夏を振り返る

はてなの id:onishiです。YAPCとインターンが終わると夏が終わったという感じがしますね!先日ようやく今年のインターンのレポートサイトを公開しましたので、今年も長い夏が終わったという気持ちでいます。というわけで、今年のはてな技術グループの夏を振…

はてなサマーインターン2015のレポートサイトを公開しました

「はてなサマーインターン2015」のレポートサイト]を公開しました。今回は新カリキュラムを採用しScalaやSwiftも。実際のプロダクションで動作しているサービスやインフラ環境での業務を体験でき、Webサービス開発者として働く自信をつけることできます。200…

「はてな教科書」にSwift 2の教科書を追加しました

本日、はてな教科書に新たにSwiftの教科書を加えました。先進的なプログラミング言語であるSwiftを学習するのに最適な教材です。 「はてな教科書」はもともと、およそ1週間でWebアプリケーション開発の基本を身につけるために、PerlやJavaScript、MySQLなど…