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
皆さんこんにちは。fluctにてfluct SSPという広告配信システムの管理画面を中心にクライアントサイドの開発を行っております、大関です。 依存パッケージの更新、どうしてますか? 今や数多くの言語でパッケージマネージャが提供されており、みなさんも日常的にコミュニティによるパッケージエコシステムを活用していることと思います。 ですが、この依存パッケージの更新については、どのようにしていますか? セキュリティfixなどを除き、以下のようなことになっていることが多いのではないでしょうか? チームの「いい人」が頑張って更新し続ける その人の謎の情熱が消えると更新されなくなってしまう たまに気がついたら頑張る 「いい人」が頑張るタイプの亜種 気が付かなかったら更新されない 更新はリスクなので塩漬けにする プロダクトは定期的に作り直す前提 CIでテストを回し続けているのに更新しないなんて……とモヤ
SPA でアプリケーションを作る際、angular1 の時はどうも「書かされている」感がして好きになれませんでした。x-tag を使って自前でカスタムエレメントを作っても良いのですが、それでも書かされている感がしますし、若干大げになりがちです。そんな中、angular 寄りで、かつ x-tag よりも薄い JavaScript ライブラリを tokuhirom がガシガシと作ってくれました。 GitHub - tokuhirom/sj.js Tiny javascript view for custom elements based on incremental-dom. This library supports angular1 like templating. https://github.com/tokuhirom/sj.js x-tag の様に js 一つで動きます。そしてだいた
In recent posts we spoke a lot about developing React applications with Redux: It enables the users to easily make testable and structured applications. However, writing a Redux application produces a lot of boilerplate code. One framework alternative is MobX, which solves this problem by doing automation using observables. In this tutorial we are going to build a simple stop watch App step by ste
最小限の設定のTDD手法を使い、「何をテストすべきか?」から、よくある落とし穴の避け方まで、Reactコンポーネントをテストする方法を学びましょう。 導入 まず、 React を触ったことがあり、更にはいくつかのテストも書いた経験があるとしましょう。それでも、コンポーネントをどうテストするのが最善なのか、よく分からないかもしれません。どこから始めるのでしょう。具体的には何をテストすればよいのでしょうか。 いくつかのReactコンポーネントは簡潔過ぎて、そもそもテストが必要なのかすらはっきりしません。 AngularからReactに乗り換えた 人なら、テストには愛憎のような思いがあるかもしれません。 確かに Angular にはテストを支援するツールがたくさんありますが、同時にテストを書くのが難しくなる可能性があります。冗長ながら省略できない定型コードが多々ある上、 $digest の呼び出
glio.js Detects if the mouse of a user leaves the viewport/document borders of your website and when this happens, trigger your callback. Star this Project Download .zip Download .tar.gz Reasons for use: increase your conversion rates, give visitors reasons to stay and grab your users’ attention! Usage: glio.init( [ direction, callback ] ); Use the method init to start. You can pass 5 arrays with
HTML5によってUI周りは大きく改善されましたが、それでもまだまだ物足りないと感じることは多いです。その結果、外部ライブラリを導入せざるを得ず、互換性や組み合わせによる不具合が発生することもあります。 今回は多くのリッチなUIライブラリを提供するZebraを紹介します。Zebraを使えば他のライブラリを使わずともリッチなWebアプリケーションが開発できそうです。 Zebraの使い方 サンプルです。斜めになっている部分もコンポーネントです。 なのでタブをクリックして表示の切り替えができます。 曲線グラフ。 キーボードショートカットで有効、無効が切り替えられるコンポーネント。 コンポーネントの選択を切り替えるデモ。 ドラッグ&ドロップできるグラフ。 細かい表示場所の制御。 マウストラッキング。 複雑な形の中にテキストボックス。 こちらもWebアプリケーションで使えそうな複雑なUIコンポーネン
HTML Party in 鹿児島 で発表した ES2015 の話です。
某 slack で x-tag を教えて貰ったのでちょっと遊んでみた。 X-Tag ★ Web Components Docs Table of Contents Getting Started Registration - Where it All Begins The most important method ... http://x-tag.github.io/ X-Tag は Web Component を簡単きれいに作れるライブラリで、Microsoft からのサポートを受けている事をウリにしているらしいです。動作に必要なのはカスタムタグがサポートされているブラウザというだけで、polyfills も使う事が出来ます。 簡単なチュートリアルが Docs に書かれているのでパッと見ただけでだいたい API が予想できます。自前のメソッドや属性、イベントを定義する事が出来るのでコン
Intro DOM のイベントリスナの仕様に Passive Event Listeners というオプションが追加された。 このオプションは、主にモバイルなどでのスクロールの詰まり(Scroll Junk) を解決するために導入されたものである。 今回は、この仕様が解決する問題と、本サイトへの適用を解説する。 Passive Event Listeners Spec Scroll Event の PreventDefault() 画面のスクロールに合わせたインタラクションを実装する場合、Scroll Event にイベントリスナを登録する。 典型的な例では touchstart や touchend をフックし、その中で DOM の操作などを実施するなどがある。 場合によってはイベントリスナ内で preventDefault() を呼ぶことで、スクロールそのものを止めることもできる。 実
先にまとめを書いておきます GitHubの大量のIssue/PRを効率的に閲覧できるJasperというソフトウェアを作りました 閲覧したいIssueのStream(RSSフィードみたいなもの)を好きな条件で作成することができます 条件はメンションされた、作成した、特定のリポジトリなど、かなり柔軟に設定できます Mac/Windowsの両方に対応しており、$12で販売中です無料で使えます 30日間のフリートライアル版もあります 背景 ソフトウェアエンジニアとして仕事や個人で活動をしていると、GitHubやGitHub Enterprise(GHE)を使うことが多いと思います。 僕も仕事ではGHEを使っており、個人ではOSSを作っているのでプライベートな活動でもGitHubをよく使っています。 そんなGitHubですが、一つ大きな不満があります。 それはIssueやPull Request(P
JavaScript Plugin ArchitectureというJavaScriptのプラグイン設計についての電子書籍を書きました。 この書籍はJavaScriptのライブラリやツールにおけるプラグインアーキテクチャについて見ていく事を目的としたものです。 以下の形式で読むことができます。 Web版 PDF形式 ePub形式 Mobi形式 GitHub上にソースコードも公開されているでので直接Markdownファイルを読むこともできます。 MarkdownよりはWeb版の方が見やすいのでそちらをオススメします。 Twitterのハッシュタグは#js_plugin_book 更新情報はRSSやリリースノートから見ることができます。 v1.0.0 最初に書くと決めたプラグインアーキテクチャが揃ったので1.0.0としてリリースしました。 JavaScript Promiseの本の時と同じく、継
phi I'm a Game Programmer and Frontend Engineer passionate about programming education. Math / C / C++ / C# / JavaScript / HTML5 / CSS3 / Python 未だに form の validation って, とりあえずなんでも受け付けてサーバー側で してエラー返ってきたらヘッダーなりダイアログなりでエラーメッセージを表示するなんてのをよく見ます. 某大手サイトなんかはエラーがあるとリロードしちゃったりするし... ユーザーさんからすると入力した段階で何かしら間違いがあったらすぐに教えて欲しいですよね. 実はこの辺って HTML5 からクライアントサイドでもある程度チェックできるように整備されています. なのでライブラリを使わなくてもある程度サーバーに送る前に
ESLintのエラールール。日本語ざっくり解説[ベストプラクティス編] ※こちらは2015/9/25日の古い記事です。(ESLint v1.5.1 released 22 September 2015) 現時点(2019/9/25)ではESLint v6.4.0です。 最新のドキュメントを読みに行くことを強くオススメします。 (近いうち新たに加筆してこちらに更新する予定です) こんにちは。森田と申します。芸人をしています。今回は ESLintのエラールール。日本語「ざっくりしたの」ないのか、と思ってぐぐしてもなさそうなので自分の勉強のためにも書きました。 こちらの記事は数あるカテゴリーの中の「ベストプラクティス編」です。 他カテゴリーはこちら ESLintのエラールール。日本語ざっくり解説[可能性あるエラー編] ESLintのエラールール。日本語ざっくり解説[スタイル編] ESLintのエ
Description Based on the amazing sphere.js plugin of Sam Hasler, jquery.earth3d.js is an open source jquery ui plugin which will allow you to emulate a 3d earth (or any planet actually) on canvas. I also added some functionalities I needed for my pet project. Here are the main functionalities provided so far: Change the map texture (you can change it to mars for example), along with the tiling Cha
シードルインタラクションデザイン株式会社は、Webブラウザやスマートフォンから制御可能なIoTモーター「Webmo」を5月28日に発売すると発表した。 同製品は、Wi-Fiで接続可能で、JavaScriptなどを通じて制御できるエンコーダー内蔵ステッピングモーター。WebエンジニアやWebデザイナーが使う言語(JavaScriptなど)を用いて、電子工作の知識なしに静音で高度なモーター制御を実現する。 Wi-Fiやモータードライバ、プロセッサなどのモジュールをモーターにワンパッケージにしたことにより、モーター機能を利用したIoT 開発の開発工程の短縮を実現し、IoTサービスへのアイデアの検討に集中できる。同製品を利用することでWebと実世界と連動し、人の行動を直接支援するサービスの開発や、人型にこだわらないロボットアプリの試作を容易に行える。
JavaScript のテスト 書かないと怒られるし、書きたいとは思っているが、書くまでの敷居がやたらと高くなってしまった気がしている人へ。 最小のテスト 本質的にテストを書くのにフレームワークはいらない。 assertion だけあればいい。 isomorphic にしたいなら、 node の assert モジュールすら使わず console.assert だけで書ける。 // assert function assert(actual, expected) { console.log('.'); console.assert(actual === expected, '\nact: ' + actual + '\nexp: ' + expected); } function TestSum() { assert(1+2, 3); } // exec TestSum(); あとは普通に
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く