並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 753件

新着順 人気順

nulabの検索結果1 - 40 件 / 753件

  • Cacoo - Web上で図の作成とリアルタイムコラボレーション

    Online diagramming tool for collaborating on wireframes, flowcharts, and more

      Cacoo - Web上で図の作成とリアルタイムコラボレーション
    • GoFの23のデザインパターンを,Javaで活用するための一覧表 (パターンごとの要約コメント付き) - 主に言語とシステム開発に関して

      GoFデザインパターンの一覧表と,活用のためのコメント,および入門者が独学するためのリンク集(サンプルコード付き)。 入門者の独学を支援するために,このページのURLを提示して熟読させ,各パターンを短時間で効率よく学んでもらう。 デザインパターンはプログラマの常識だ。 Java使いかどうかは問わない。 にも関わらず,入門書を買ったまま,途中で挫折する人が多い。 挫折の原因は,パターンの数が23もあって,多いからだろう。 全パターンをすんなり覚えてもらうためには,各パターンごとに 「要するにこういう目的のパターンなんだ。」 「10文字で表現すると,パターンの意味はこうなんだ。」 という要点・本質を,短いコメントで伝えれば助けになるだろう。 こういった学習を通して,Java言語の「設計思想」も併せて感じ取ってゆけるはず。 全パターンの一覧表(要約コメント付き) 全パターンについて,10文字以内

        GoFの23のデザインパターンを,Javaで活用するための一覧表 (パターンごとの要約コメント付き) - 主に言語とシステム開発に関して
      • サルでもわかる 逆引きデザインパターン 第1章 はじめてのデザインパターン はじめに:

        第1章 はじめてのデザインパターン はじめに デザインパターンとは 特集の構成 すぐわかるオブジェクト指向 すぐわかるUML おわりに 第2章 逆引きカタログ ロジック編 Singleton (シングルトン) Factory/Factory Method (ファクトリ/ファクトリメソッド) Strategy (ストラテジ) Composite (コンポジット) Visiter (ビジタ) 第3章 逆引きカタログ J2EE編 Template Method (テンプレートメソッド) Facade (ファサード) ViewHelper (ビューヘルパ) DAO (Data Access Object) 第4章 逆引きカタログ その他 ユーティリティクラス 実行時例外を標準的に使う Nullオブジェクト 第5章 デザインパターン適用の勘所 はじめに アプリケーションの仕様 リファクタリング前のサ

        • 成長志向のエンジニアならブックマークすべきテックブログまとめ | CAREER HACK

          テックブログ、どれだけチェックしてる? 国内のリーディングカンパニー・スタートアップ、海外企業、そして個人ブログの計4分野における注目のテックブログを一覧でまとめました。 各社が手掛けるWEBサービスの開発思想や使われている最新技術の紹介はもちろん、技術トレンドやいますぐ業務で使えるかもしれないTips、イベント情報まで盛りだくさんの内容です。 成長志向のエンジニアなら、随時チェックすることで必ずシゲキ与えてくれるブログたち。この機会に気になるブログを改めてチェックしてみてはいかがでしょうか? 【国内WEB・IT企業】 クックパッド http://techlife.cookpad.com/ サイバーエージェント http://ameblo.jp/principia-ca/ ミクシィ http://alpha.mixi.co.jp/ ヤフー http://techblog.yahoo.co.

            成長志向のエンジニアならブックマークすべきテックブログまとめ | CAREER HACK
          • Adobeのブラウザ表示チェックサービスBrowserLabが凄い件 - よねのはてな

            Adobeさんが、クロスブラウザ表示テストサービス BrowserLabを開始したので使ってみました。 https://browserlab.adobe.com/index.html このサービスを使うと、以下のブラウザでの表示テストが可能です。 Windows XP Firefox 2.0(2.0.0.18) Firefox 3.0(3.0.13) Firefox 3.05(3.5.3) Internet Explorer 6.0(6.0.3790.3959) Internet Explorer 7.0(7.0.5730) Internet Explorer 8.0(8.0.6001.18702) Chrome 3.0(3.0.195.27) Mac OS X Safari 3.0(3.2.3) Safari 4.0(4.0.3) Firefox 2.0(2.0.0.18) Firefo

              Adobeのブラウザ表示チェックサービスBrowserLabが凄い件 - よねのはてな
            • グリグリ動くUIをVueとSVGでサクッと書く - No Regrets in Bathing

              これは Vue.js #3 Advent Calendar 2017 – Qiita 4日目の記事です。 こんにちは。SVGで色々なコンポーネントを作っているものです。最近の作品は下記のような感じです。 Webでグリグリ動くUIを作りたい!!という一心でやっています。 これらはほとんどSVGとVueの組み合わせのみで作っています。依存が少ないというのは大事で、ライブラリ間の相性でハマったり、いろんなドキュメント間を往復することがなくなります。 Webでグリグリ動くUIを作るのは基本的にめんどくさいです。jQuery pluginを駆使して作るのも闇が多いですし、divやcanvasをゴリゴリするのも結構手間がかかります。 ですが、最近はSVGで高度なUI実装されることが増えてきた気がします。特に自分が衝撃を受けたのは、CacooがFlashからSVGにスイッチしたことです。 nulab-i

                グリグリ動くUIをVueとSVGでサクッと書く - No Regrets in Bathing
              • ガントチャート上でドラッグ&ドロップでタスクの並び替えられるようにしてほしい – Customer Feedback for Backlog

                ベトナムにおけるBacklog活用のリアル ベトナムにおけるBacklog活用のリアル backlog Backlog の Amazon EKS クラスターを Blue-Green アップデートするためにやっていること Backlog の Amazon EKS クラスターを Blue-Green アップデートするためにやっていること backlog 2023年最も素晴らしいプロジェクトを表彰!Good Project Awardを開催しました 2023年最も素晴らしいプロジェクトを表彰!Good Project Awardを開催しました backlog Backlog開発者が夫婦の不和をなくす家庭管理アプリを作ってみた話 Backlog開発者が夫婦の不和をなくす家庭管理アプリを作ってみた話 backlog 創業からもうすぐ80年の老舗企業!ミートボールでおなじみの石井食品様で、プロジェクト

                  ガントチャート上でドラッグ&ドロップでタスクの並び替えられるようにしてほしい – Customer Feedback for Backlog
                • jQueryを卒業したかった僕がReact StaticでReactをイチから学んでWebサイトを作った話 | 株式会社ヌーラボ(Nulab inc.)

                  Typetalk チームフロントエンドエンジニアの岡藤(@johnykei)です。先日 Typetalk Webサイトリニューアルに伴い、フロントエンドの技術を jQuery から React + styled-components に刷新しました。本記事では、React を用いた Web サイト制作についてお伝えします。 はじめに タイトルにもあるように、僕は今まで JavaScript を書く必要がある時は使い慣れた jQuery を使っていました。 フロントエンドエンジニアという肩書きではありますが、フロントエンドエンジニアという職種は幅広く、僕はどちらかというとページやUIのスタイリングが主な業務で、普段 JavaScript を書く頻度もそんなに高くありませんでした。 最近海外ではそのような業種の人をフロントエンドデザイナーと呼ぶ動きも出てきていますが、jQuery しか使ってい

                    jQueryを卒業したかった僕がReact StaticでReactをイチから学んでWebサイトを作った話 | 株式会社ヌーラボ(Nulab inc.)
                  • 良質な情報が得れる!なかのひとが書くネット系企業公式テックブログまとめ45選 | nanapi [ナナピ]

                    はじめに インターネット業界で働く方や企業のWeb担当の方にとって、情報収集というのは日々の仕事の結果に繋がる貴重な活動のひとつですね。RSSリーダーやニュースアプリなど手段はさまざまですが、日々最新の情報に高いアンテナを貼っている方も多いかと思います。 その情報収集元のひとつとして、ネット企業のなかのひとが情報発信をしてくれている公式ブログなどなどは非常に参考になることが多かったりします。 ここでは、そんなインターネット業界で働く方や企業のWeb担当の方に参考になると思われるネット企業の公式テックブログをまとめてみました。ぜひご参考ください。 ネット系企業公式テックブログまとめ 「クックパッド開発者ブログ」(クックパッド株式会社) クックパッド開発者ブログ クックパッドのエンジニアがサイトの開発と運営について書き綴ります techlife.cookpad.com 「サイバーエージェント

                    • 今更聞けない!エンジニアのための CSS の基礎講座 〜ボックスモデル編〜 | 株式会社ヌーラボ(Nulab inc.)

                      注意 HTML5 からは 見た目は CSS に任せ、HTML は文書の構造(セマンティック)を表すことのみに重点を置かれるようになりました。例えば箇条書きリストを作るのに div と display: list-item; を使って構築するより、箇条書きリストを表す ul li を使ったほうがよりセマンティックです。このように目的にあった HTML 要素を使うようにしてください。 ボックスモデルとは CSS でレイアウトをする際には、 ボックスモデル を理解する必要があります。 CSS の定義するボックスモデルは以下の図のように 4つの領域で構成されています。 ボックスモデル解説図 content(コンテンツ) テキストや画像など、要素そのものの内容が表示される領域です。この領域のサイズは width(幅) と height(高さ)プロパティで指定することができます。 padding(パデ

                        今更聞けない!エンジニアのための CSS の基礎講座 〜ボックスモデル編〜 | 株式会社ヌーラボ(Nulab inc.)
                      • Electronアプリをプロダクトとして「正しく」リリースするために必要な3つのこと | 株式会社ヌーラボ(Nulab inc.)

                        Typetalkデスクトップアプリ 先日、弊社チャットサービスTypetalkのデスクトップアプリをリリースしました。おそらくTypetalk.appのパッケージを覗いてElectronの痕跡を見つけ出した方もいらっしゃると思いますが、その通りElectronをベースに実装しています。 ElectronはHTML、JavaScript、CSSなどWebの技術を使用してデスクトップアプリを開発できます。GitHub社のAtomエディタをはじめとして、今では非常に多くのアプリがElectronベースで公開されており、実装方法についても既に多くの記事が書かれています。 ただし、正式にアプリを公開する場合には、コードサイニングなどを行うなど、考慮が必要なポイントがいくつかあります。そこで本記事では正式にElectronアプリをWindows/Mac向けにリリースするにあたって必要だった3つのことを

                          Electronアプリをプロダクトとして「正しく」リリースするために必要な3つのこと | 株式会社ヌーラボ(Nulab inc.)
                        • 構成管理 実践入門 第1章 構成管理入門 はじめに

                          第1章 構成管理入門 はじめに なぜ今構成管理に注目するのか 本特集で扱う内容 サンプルの準備 第2章 Subversionによるバージョン管理入門 はじめに クライアント環境の構築 インポート チェックアウト ソースファイルの変更に関連する操作 チーム開発に関連する操作 おわりに 第3章 Subversionベストプラクティス はじめに 帰ってきたO先輩 コードライン編その1 メインライン コードライン編その2 コードラインポリシー コードライン編その3 プライベートバージョン サードパーティライブラリのバージョン管理 リリース編その1 リリース管理 リリース編その2 自動リリース 継続的インテグレーション 第4章 Maven2によるビルド入門 はじめに なぜMaven2なのか? Maven2のインストール まずは試してみよう さらに開発を進めよう 第5章 Maven2ベストプラクティス

                          • Webエンジニアだったら当然知っておきたい「 クリックジャッキング対策 」とは? | 株式会社ヌーラボ(Nulab inc.)

                            こんにちは。Typetalkチームの永江です。今回は4月にリリースした、BacklogとTypetalkの連携機能である「Backlogカード」の実装の際に行った クリックジャッキング対策 について説明します。 Backlogカードとは Backlogカードは、Typetalkのトピック内にBacklogの課題やコメントをカード形式にして表示する機能です。Backlogの課題キーや課題のURLを貼り付けるだけで、以下の画像のように表示できます(※詳しいご利用方法についてはこちらの「Typetalkのトピック上で課題の詳細を見られる Backlogカード をリリースしました!」をご参照ください)。 Backlogカードの実装は、TypetalkからBacklogに用意した埋め込み用の課題ページを<iframe>で表示するというものです。このような実装にしたのは、もともとBacklogに<if

                              Webエンジニアだったら当然知っておきたい「 クリックジャッキング対策 」とは? | 株式会社ヌーラボ(Nulab inc.)
                            • PostgreSQLの内部構造と監視の話 - そーだいなるらくがき帳

                              Geeks Who DrinkとPostgreSQL Conference Japan 2017での資料です。 nulab.connpass.com PostgreSQL Conference Japan 2017 (2017-11-03) | 日本PostgreSQLユーザ会 詳しく知りたい人は下記の本がおすすめです。 ただし注意点は9.3相当なのでプロセスの仕組みがちょっと違います。 待望の新刊出ました!10系ベースなのでぜひ読んでみてください。 ※2018/10/07 追記 読み応えのある内容になったかなと思います。レベル感で言えばOSS DB Goldの試験出る範囲です。特に内部構造は覚えて置いて損は無いでしょう。 speakerdeck.com 内部構造の中で取り扱っていないところにAUTOVACUUM、TOASTとレプリケーションがあります。AUTOVACUUMはPostgre

                                PostgreSQLの内部構造と監視の話 - そーだいなるらくがき帳
                              • 【永久保存版】初心者 ~ 上級者向け Gitをより理解するために厳選したサイトやスライドをまとめてみた | nanapi [ナナピ]

                                はじめに この記事は、筆者が自分自身のためにまとめたものですが。以下のような方にもとってもオススメできるのでぜひご覧ください。 これからGitを覚えたい方(まだ簡単に追いつけます!) Git使っているけど実はよくわかっていない方(怖がらず裏を理解すれば意外と簡単でシンプルなんですよ!) 日常的にGit使いこなしているけど、いざというときググってしまう方も理解を深めるのに役立つと思います。(怖くない!Git!!) Gitの基礎・振返り向けサイト Git本家! サイトデザインもかなり洗礼!ここらへんにも人気具合が伺えます。 git-scm.com ドキュメント(日本語)も豊富で素晴らしい。 Git - Book The entire Pro Git book, written by Scott Chacon and published by Apress, is available here

                                • 職人任せにしないインフラ構築/運用 ~ DevOps時代を生きぬくために ~

                                  http://nucon.nulab.co.jp/timetable/#track8

                                    職人任せにしないインフラ構築/運用 ~ DevOps時代を生きぬくために ~
                                  • ヌーラボのアカウント基盤を Java 9 にマイグレーションして起きた問題と解決法 | 株式会社ヌーラボ(Nulab inc.)

                                    Java 9の起動パラメータ java.locale.providers に Java 8 と同じ優先度で国際化を行う指定をします。 java -Djava.locale.providers=COMPAT,SPI この設定で日付のフォーマットが Java 8 と同じように動作するようになり、自動テストが成功しました。 以上で 750 個のテストがすべて成功するようになりました。次はいよいよJava 9で既存のソースコードをコンパイルします。 Java 9でコンパイルして Java 9で動かす ヌーラボのアカウント基盤には Java のコンパイル対象が約 1,360 ファイルあります。目標は 1,360 のソースコードがJava 9 ですべてコンパイルできることです。 コンパイラの設定を Java 9に切り替える コンパイラを Java 9に切り替えます。Java 9のバージョン指定には注意

                                      ヌーラボのアカウント基盤を Java 9 にマイグレーションして起きた問題と解決法 | 株式会社ヌーラボ(Nulab inc.)
                                    • 実践!Elasticsearch - Wantedly Engineer Blog

                                      (募集はダミーデータです) (参考: ドキュメント登録の流れについては Elasticsearch 入門 を参照すると良いです。) Analyzer 上記のデータを実際に入れる前に、index の作成と analyzer の設定をします。 以下のコマンドを実行することで analyzer の設定ができます。 下記で説明して行きます。 curl -XPUT 'http://localhost:9200/wantedly-demo' -d \ '{ "settings": { "analysis": { "filter": { "pos_filter": { "type": "kuromoji_part_of_speech", "stoptags": [ "助詞-格助詞-一般", "助詞-終助詞" ] }, "greek_lowercase_filter": { "type": "lowerc

                                        実践!Elasticsearch - Wantedly Engineer Blog
                                      • CacooはなぜKubernetesによるmicroservicesへの道を選んだのか? | ヌーラボ

                                        こんにちは。Cacoo チームの木村(@cohhei)です。Cacoo チームでは、 Kubernetes によるアーキテクチャの microservices 化に取り組んでいます。今回は私たち Cacoo チームが microservices 化によって解決しようとしている課題と取り組みの内容、その成果についてご紹介します。 この記事では以下の内容を含みます。 Cacoo の開発チームがどんな課題を抱えていたか 何故 microservices の道を選んだか どんな技術を選んだか microservices 化してどうだったか 現状の課題 課題:古いフレームワークとモノリシックなアプリケーション Cacoo は2009年にベータ版がリリースされた歴史のあるプロダクトで、モノリシックなアプリケーション上ですべての機能が実行されていました。 そのため、それぞれのコードの依存関係を十分に理解

                                          CacooはなぜKubernetesによるmicroservicesへの道を選んだのか? | ヌーラボ
                                        • 1ファイル・3コマンドで実現!Dockerでチーム全員の開発環境の構築を始めてみませんか? | 株式会社ヌーラボ(Nulab inc.)

                                          以下の3コマンド、これだけでプロジェクトに必要な開発環境ができあがる。そんな環境を Docker で作ってみませんか? $ git clone https://github.com/dataich/sample-docker.git $ cd sample-docker $ docker-compose up こんにちは、Typetalkチームのエンジニアの吉田です! 新しいエンジニアがチームに入ってきてまずやることは、DBやWebサーバなどの開発環境を構築することでしょう(9月に新しい人がチームに入ります、やったね!)。 Typetalkチームでも以前はREADMEに記述された手順に従って、開発者が個別に構築していました。その際READMEに書かれたミドルウェアのバージョンが古かったり、実は手順そのものが変わっていたりすることもあり、ハマることもありました。また、複数のプロジェクトで違う

                                            1ファイル・3コマンドで実現!Dockerでチーム全員の開発環境の構築を始めてみませんか? | 株式会社ヌーラボ(Nulab inc.)
                                          • ヌーラボのインフラ運用最前線 〜イミュータブルを目指して〜 (前編) | 株式会社ヌーラボ(Nulab inc.)

                                            このエントリは前後編に分かれています。前編は主に運用フローやそこでの工夫点、後編は実際の運用から得た知見や今後の課題といった内容です。 ヌーラボのインフラ運用最前線 〜イミュータブルを目指して〜 (前編) ヌーラボのインフラ運用最前線 〜イミュータブルを目指して〜 (後編) 最近はインフラ運用・DevOPS関連のトピックとして目にしないことはないくらい、「イミュータブルインフラストラクチャー」について様々な議論がなされています。私たちも昨年、継続的デリバリという文脈で、@IT の連載にてその基本的な考え方について紹介させていただきました。 さて、今年の二月にローンチをしたばかりのヌーラボのシングルサインオンサービス「ヌーラボアカウント」では、イミュータブルインフラストラクチャの一歩手前として、特定の変更を加える場合のみ、ごっそり環境ごと入れ替えるというやり方にてその運用をスタートしました。

                                              ヌーラボのインフラ運用最前線 〜イミュータブルを目指して〜 (前編) | 株式会社ヌーラボ(Nulab inc.)
                                            • 「どうすれば価値を生み出すか」を知るためにヌーラボ で行っていること | 株式会社ヌーラボ(Nulab inc.)

                                              このエントリは 達人出版会から昨年出版された電子書籍「開発現場に伝えたい10のこと」のうち、私がヌーラボの開発の進め方について紹介させていただいた章を出版社の許可を得て転記したものです。その他の章も関西を中心に活躍しているエンジニアの経験にもとづく知見にあふれたものになっておりますので、本エントリを読んで興味をもたれたらお手に取って頂ければ幸いです。 では、少し長文になりますがおつきあいください。はじまりはじまり! 「どうすれば価値を生み出すか」を知るためにヌーラボで行っていること 私が所属する株式会社ヌーラボは20名ほどの小さなソフトウェア開発会社です。私たちが自社で開発、運営しているウェブサービスには以下があります。 プロジェクト管理ツール Backlog オンラインドローツール Cacoo これらのサービスは、国内だけでなく海外でも沢山のユーザに利用いただき「使いやすい、楽しい」とい

                                                「どうすれば価値を生み出すか」を知るためにヌーラボ で行っていること | 株式会社ヌーラボ(Nulab inc.)
                                              • 株式会社ヌーラボ(Nulab Inc.)

                                                “このチームで一緒に仕事できてよかった” を世界中に生み出していく。 仕事が少しでも楽しくなることを目指し、コラボレーションツールを開発・提供しています。 すべてのチームが使える プロジェクト管理ツール Backlog はチームで働くすべての人が使えるプロジェクト管理ツールです。マイルストーンやガントチャートなどを用いて、課題の優先付けや期限管理が簡単にできます。ソースコードの管理にも最適です。 もっと詳しく アイデアを形にする ビジュアルコラボレーションツール Cacoo はウェブブラウザで使える作図共有ツールです。難しい操作は不要でアイデアをすぐに可視化できます。ワイヤフレームなどの基本的な図からベン図やマインドマップなどの特殊図のテンプレートをご自由にお使い頂けます。 もっと詳しく チームワークのための チャットツール Typetalk は雑談を成果に変えるチャットツールです。スピー

                                                  株式会社ヌーラボ(Nulab Inc.)
                                                • 密着 24時! MySQL 5.1 から Aurora への移行100日間 〜 Backlog 編 | 株式会社ヌーラボ(Nulab inc.)

                                                  Photo via Visual hunt Backlog の一部のスペースにて Amazon Aurora へと移行しました。ここでは、その経緯と実際に実施した作業を簡単にご紹介させていただきます。 移行の経緯 昨年末データベース障害が発生しユーザー様には多大なご迷惑をお掛けしてしまいました。 Backlog には Terraform をどう使っているかを紹介したブログ にあるように複数の運用環境があります。 その各々の環境の構築時期によって EC2 上で自前運用していた MySQL もあれば、RDS for MySQL もある、といった統一されていない状況でした。また EC2 上ではまだ MySQL 5.1 も稼働していました。 移行を検討するにあたり、優先したのは障害時の復旧が素早く出来ることと、少しでも運用の管理コストを下げることでした。Backlog のサーバは 100 台以上で

                                                    密着 24時! MySQL 5.1 から Aurora への移行100日間 〜 Backlog 編 | 株式会社ヌーラボ(Nulab inc.)
                                                  • CDNをAkamaiに切り替えた - Glide Note

                                                    2ヶ月くらい前にCDNをAkamaiに切り替えたので、知見を公開。 (追記 2015年8月18日 私個人の認識不足で用語の使い方に問題があったので一部修正しました s/SLA 100%/高可用性構成/g) TL;DR Kaizen Platform, Inc.で利用しているCDNをAkamaiに切り替えた Akamaiはスタートアップでも利用出来るコスト感 高可用性構成のAkamaiを利用することでCDNの可用性というインフラエンジニア的に頭の痛い問題が減った CDN第一世代 AWS CloudFront CDN (-2015年1月) CDNにCloudFrontを利用 サービスで利用しているインフラのほとんどがAWSで稼働しており、 その関係でCDNもCloudFrontを選択。 CDN第二世代 CloudFront + CDN77 (2015年1月-5月) AWS CloudFront

                                                    • 【個人開発】収益化したサービスのコードを50%以上削除して得られた境地

                                                      先に境地を 個人開発の場合、少ないコード・最低限のシステム構成は正義。 なぜなら、時間やお金に制限がある個人開発者にとってサービスの継続に関わる問題だからです。 例えば、自分のサービスを世に広めたいとか、一発当てたいとか、作ったサービスで生活をしたいとか、 なにか目標があるなら達成する方法は、達成するまでやめないことです。 なのでサービスを提供し続けることは最も大切なことです。 これまで個人開発者としては↓の気持ちで開発を進めてきました。 しかし、この経験の後にこの↓の名言の大切さを改めて感じることができました。 シンプルにしておけ愚か者 また、本記事本文より たくさんプラグインやモジュールを入れたシステムはメンテナンスがしんどいです。「デフォルトで使う」ということの魅力を改めて実感しています。リソースが限られている個人開発の場合、このような時間の消費は極力なくす方向にしていくべきです。

                                                        【個人開発】収益化したサービスのコードを50%以上削除して得られた境地
                                                      • 運用中のPostgreSQLのスキーマを無停止で安全に変更する | 株式会社ヌーラボ(Nulab inc.)

                                                        初めに こんにちは。ビジネスチャットサービスTypetalkを開発・運用している吉田です。Typetalkではデータの永続化ストレージとしてPostgreSQLを利用しています。扱うデータ量は多く、チャットというサービスの性質上書込み頻度はとても高いです。PostgreSQLを使い日々開発を進めていると、追加する機能によってはスキーマを変更する必要があります。メンテナンスを計画・告知してサービスを止めてしまえば、時間はかかるかもしれませんがスキーマの変更はそう難しくありません。しかしTypetalkはユーザーが日々の業務を進めるために利用しており、サービスが止まるとコミュニケーションが取れなくなります。業務を円滑に進めるためのビジネスチャットツールですので、極力サービスは止めたくありません(最後の計画メンテナンスは2019年6月30日で1年以上前となっています。)。本記事では以下の3つのケ

                                                          運用中のPostgreSQLのスキーマを無停止で安全に変更する | 株式会社ヌーラボ(Nulab inc.)
                                                        • 実践!ヌーラボサービスでの CloudFront の障害対策 | 株式会社ヌーラボ(Nulab inc.)

                                                          CDNが単一障害点にならないようにするために ヌーラボでは 2010 年 Cacoo の商用サービスの開始に合わせて AWS における運用を開始しました。当時、運用環境として AWS を採択する決め手の一つになったのが CloudFront でした。その後も着々とエッジロケーションは増え、独自ドメインのサポートなど魅力的な機能も提供され、今ではヌーラボの全サービスの静的ファイルの配信で利用している、無くてはならないサービスとなっています。 その魅力の反面、CloudFront の障害は、アプリケーションそのものに問題がなくても、以下のような表示が崩れた画面が表示されて、ユーザが全くサービスを使えなくなるという、その影響が非常に大きいものです。また障害の原因が DNS やネットワークの経路における問題といった、私たちが直接解決しにくい領域にあることもしばしばです。 ただ、どんな事情であれ、障

                                                            実践!ヌーラボサービスでの CloudFront の障害対策 | 株式会社ヌーラボ(Nulab inc.)
                                                          • 目指すのはぶっちぎりの速さ! なぜ HTML5 版CacooはSVGを採用するのか | 株式会社ヌーラボ(Nulab inc.)

                                                            こんにちは! Cacoo チームの中原です。現在CacooチームはFlashで作られている図の編集画面(以下エディタと表現します)を* HTML5 で置き換える開発を進めています。このブログでは、 HTML5 版 Cacoo で図形の描画に使用される、SVGを選択した理由と経緯について説明したいと思います。 (*置き換える理由については「Good-Bye Flash ~ CacooはHTML5で生まれ変わります」をご覧ください) どの技術を使って図形を描く?重視したのは「パフォーマンス」 図形の描画にどんな技術を使うか。いくつか候補を上げました。 2D Canvas 3D Canvas (WebGL) SVG (これ以外に、Unityという意見もありましたが今回はWeb標準技術を使うことを前提にしました。) さて、どれを使おう。私たちがどの技術を選択するのか、基準を決める必要があります。そ

                                                              目指すのはぶっちぎりの速さ! なぜ HTML5 版CacooはSVGを採用するのか | 株式会社ヌーラボ(Nulab inc.)
                                                            • AWS費用と戦う

                                                              2017-11-10 Geeks Who Drink in Tokyo -AWS & 神楽坂 Edition- @nulab

                                                                AWS費用と戦う
                                                              • はてながエンジニア向けイベントでアジフライを出すようになった理由 - Hatena Developer Blog

                                                                広報・マーケティング部の id:kiyohero です。クラウドパフォーマンス管理ツール「Mackerel」(マカレル)のマーケティングや、採用イベント「Hatena Engineer Seminar」の企画・運営などを担当しています。この記事では「はてながなぜオフラインイベントを重視するのか」、またその結果「なぜアジフライをエンジニア向けイベントで配るようになったのか」についてお伝えします。 オフラインイベントを重視する理由 はてなはこれまで、オフラインイベントをそれほど積極的に行ってきませんでした。理由としては人員的な問題であったり地理的な問題(はてな本社は京都にあり、大半のエンジニアも関西在住です)であったりします。また、オフラインの施策をとらなくても「それなりに」回っていたということも、積極的にオフラインイベントを行っていなかった理由のひとつでもあるように思います。 2014年にリ

                                                                  はてながエンジニア向けイベントでアジフライを出すようになった理由 - Hatena Developer Blog
                                                                • プルリクを起点に検証環境が自動で構築されるようにしたら すぐにレビューできるようになったのでみんなハッピーになれた話

                                                                  こんにちは。CacooチームのYAMLエンジニアの木村(@cohhei)です。「readiness」は「ready」の名詞形で「レディネス」と読むことをわりと最近知りました。今回はプルリクエスト向けに検証環境が構築される仕組みを作ったので紹介します。 忙しい人のためのざっくりとした説明 プルリクエストが作られたら自動で検証環境が構築される仕組みをつくりました。 環境まるごと作るわけではなく、フロントエンドJavaScript配信用のPodだけに対応しています。 レビュアーやテスターはクエリパラメーターが追加されたURLにアクセスするだけでその検証環境にアクセスできます。 プルリクエストをマージする前にそのバージョンを非エンジニアでも試すことができます。 プルリクエストごとに環境が作られるので、複数の開発プロジェクトが同時に走っているときに便利です。 コミットしてプルリクエストを作るだけです

                                                                    プルリクを起点に検証環境が自動で構築されるようにしたら すぐにレビューできるようになったのでみんなハッピーになれた話
                                                                  • Rust + Yew = WebAssembly でかんばんライクなタスク管理アプリを作ってみました。 | 株式会社ヌーラボ(Nulab inc.)

                                                                    Rust + Yew = WebAssembly でかんばんライクなタスク管理アプリを作ってみました。 YewはRustで書かれたフロントエンド向けのフレームワークです。 書かれたコードはWebAssemblyに変換されて、ブラウザ上で実行することができます。プロジェクトのREADMEに「ElmとReactに影響を受けた」と書かれているように、JSX風のHTMLを書けるようなマクロが用意されていて、Rustのコード内にHTMLっぽく表現でビューを書くことができます。 また、Elmアーキテクチャのように、モデルとビューがあり、メッセージによって状態の更新がされるようになっています。 というわけで、以前、このブログでsakiが書いた「Vue.js でかんばんライクなタスク管理アプリを作ってみました。」という記事を参考に、見ためがほとんど同じようなかんばんライクなタスク管理アプリ (タスクボード

                                                                      Rust + Yew = WebAssembly でかんばんライクなタスク管理アプリを作ってみました。 | 株式会社ヌーラボ(Nulab inc.)
                                                                    • JavaScriptフレームワークについて個人的な思い - 当時を振り返りながら - albatrosary's blog

                                                                      HTML5 Experts.jpでエンタープライズ特集が組まれたことは承知だと思います。やはり注目すべきところはJavaScriptフレームワークの見解ではなかったかと思います。JavaScriptフレームワークについては人それぞれ考えがありますので、一概にこれとは言えませんが、私が感じているところを記載したいと思います。 世の中の動向と以前の判断 Googleトレンドを見る限りではAngularJSのひとり勝ちのように思えますが、身の回りの案件ではBackbone.jsが多いのではないかと思えます。1年半前にHTML5プロジェクトを行ったときに選定で残ったのが Backbone.js AngularJS Sencha Ext JS でした。最終的に利用したのはBackbone.JSだったのですが理由がjQueryベースで入り易かったということが上げられます。AngularJSは独特な記法

                                                                        JavaScriptフレームワークについて個人的な思い - 当時を振り返りながら - albatrosary's blog
                                                                      • コロナ禍での転職活動(データエンジニア)についてのメモ - yasuhisa's blog

                                                                        Twitterでは先に言っていましたが、現職のはてなを3月末で退職します。3/19が最終出社日でした。はてなでの思い出はこちらに書きました。 そのため、転職活動をしたわけですが、コロナ禍での転職活動は平常時と異なる部分も結構ありました。また、データエンジニアとしての転職は初めての経験でした。誰かの参考になるかもしれないので、私が考えたことや感じたことをメモ書きとして残しておきます。 在宅勤務と就業可能な地域 Web上でのアウトプット データエンジニアという職種の多様性 転職にあたって重視したこと 魅力に感じた点 当然、不安もある 在宅勤務と就業可能な地域 カジュアル面談させてもらった企業さんは、ほぼ在宅勤務に移行済みだった 隔週や月一で物理出社という会社も半々くらい? 緊急自体宣言が出ていない時期(夏〜秋)にカジュアル面談させてもらったので、今は状況が違うかも カジュアル面談、採用面談もz

                                                                          コロナ禍での転職活動(データエンジニア)についてのメモ - yasuhisa's blog
                                                                        • 3TB超のCacooのPostgreSQL 9.3を9.5にアップグレードした話 | 株式会社ヌーラボ(Nulab inc.)

                                                                          こんにちは。Cacooチームのイニエスタこと、とおのぶです。CacooはデータベースのPostgreSQLのバージョンアップを実施しました。基本的には公式のpg_upgradeの手順に従っています。ここではドキュメントには記載の少ない具体的な作業内容の流れを紹介したいと思います。 理由 ユーザアンケートからみる Cacoo のコア・バリューで記されたとおり、全体的なパフォーマンスの向上については重要度の高い課題の一つです。PostgreSQL 9.5ではソート性能の大幅な改善が強化点の一つで、パフォーマンスの改善が見込まれます。またフェイルオーバ後、新しいマスターに追従するスタンバイとして、古いマスターサーバをオンラインに戻すことができるpg_rewindも、PostgreSQL 9.5の魅力の一つです。 バージョンアップ前の構成 構成は、マスタとスレーブのストリーミング・レプリケーション

                                                                            3TB超のCacooのPostgreSQL 9.3を9.5にアップグレードした話 | 株式会社ヌーラボ(Nulab inc.)
                                                                          • 私からあなたへ 一人前のJavaエンジニアになるためのロードマップを送ろう - Qiita

                                                                            内容 以下記載のURLを参考にロードマップをJavaバージョンにしてみた。 初心者から立派なJava エンジニアになる方への学習の道しるべになれば。 また自分自身すべてできるわけではないので、できるようにするためのメモ書きとして。 (ただ以下をなんとなく理解するだけで2,3年以上かかった。。。) 参考 ※ 会社の同期から基本文法についてレベル別記載のアドバイスをいただいたので修正(2018/4/9) 学習方法 1.Hello World どのプログラミング言語でもそうですが、まずは動かし方を学びましょう。 ゲシュタルト崩壊するくらいHello Worldは書きましょう。 最初のうちはstatic void mainの意味も分からなくて大丈夫です。徐々に理解できるはずです。 2.基本を学ぶ 以下のサイトや書籍を使用してプログラミングの基礎を知りましょう。 文法の書き方やメソッドの使い方、アク

                                                                              私からあなたへ 一人前のJavaエンジニアになるためのロードマップを送ろう - Qiita
                                                                            • Docker で「速くてウマイ」な CI 環境を構築するための 5 つの Tips | 株式会社ヌーラボ(Nulab inc.)

                                                                              Docker 社のユースケースでもあげられているように、CI/CD で Docker を使うというのは、プロダクションシステム以外で Docker の特性を活用できる良い場所だと考えています。ヌーラボではBacklog でのプルリクエストの提供以降、CI のジョブの実行のために Docker を利用しています。ここではその運用から学んだ5つの Tips を紹介したいと思います。 ヌーラボの CI 環境の全体図 これがヌーラボの CI 環境の全体図です。 CI には Jenkins を利用しており、Jenkins のジョブのトリガーとなるのは左側の Backlog や Typetalk です。実際には Jenkins Backlog Plugin や Jenkins Typetalk Plugin を利用してジョブを処理しています。これらのプラグインの詳細については本ブログ末に参照先をのせて

                                                                                Docker で「速くてウマイ」な CI 環境を構築するための 5 つの Tips | 株式会社ヌーラボ(Nulab inc.)
                                                                              • ライブラリを使わずここまでできる!Web Componentsで近未来のフロントエンド開発 | 株式会社ヌーラボ(Nulab inc.)

                                                                                Cacooチームエンジニアの川端です。普段はCacooのエディター(編集画面)のフロントエンドの開発をしております。最近パパになったので娘の写真を親に共有するアプリを作ってみました。その際に、Web Componentsなる機能を使ってみました。JSフレームワーク群雄割拠の昨今、ライブラリを使わずWeb Componentsだけでどこまでできるのかご紹介したいと思います。 Web Componentsとは? Web Componentsとは、HTMLの要素をカプセル化して再利用可能なパーツにするためのブラウザのAPI群です。ReactやVueやRiotでいうところのコンポーネントをライブラリを使うことなく素のJSだけで作ることができる技術になります。 Web Components | MDNによると次のように記されています。 Web Components は、オープンなウェブテクノロジーを

                                                                                  ライブラリを使わずここまでできる!Web Componentsで近未来のフロントエンド開発 | 株式会社ヌーラボ(Nulab inc.)
                                                                                • Vue.js でかんばんライクなタスク管理アプリを作ってみました。 | 株式会社ヌーラボ(Nulab inc.)

                                                                                  Backlog 開発チームの saki です。仕事は Scala と Java ですが、Ruby や JavaScript などのいわゆる動的型付け言語も好きです。最近はフロントエンドに興味がありプライベートで Vue.js を触っています。 Vue はプログレッシブフレームワークを謳っており、その名の通り最初は小さく導入でき、ソフトウェアの成長に合わせて他のライブラリを組み合わせることで規模の大きい開発にも利用できる柔軟さが気に入りました。ドキュメントも充実しており学びやすいと思います。どのライブラリも自分が一番と宣伝する中で、他のフレームワークとの比較 のページには誠意を感じました。 今回はそんな Vue を使って、かんばんライクなタスク管理アプリの簡単な作り方を紹介します。アウトラインは以下です。 基礎の作成 状態別にタスクを抽出する処理を作成 task-card コンポーネントの作

                                                                                    Vue.js でかんばんライクなタスク管理アプリを作ってみました。 | 株式会社ヌーラボ(Nulab inc.)