Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。この本では、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...
![DockerがDocker Application Guidesを発表](https://cdn-ak-scissors.b.st-hatena.com/image/square/ae84da8ad454d9f147ee9b8b3d04e38c76d6581b/height=288;version=1;width=512/https%3A%2F%2Fcdn.infoq.com%2Fstatics_s2_20240530133300%2Fstyles%2Fstatic%2Fimages%2Flogo%2Flogo-big.jpg)
Project Reactorには,すべての基盤となる主要な型が2つあります。システムを流れる0からNの値を表すFlux<T>型と, 0から1の値を表現するMono<T>型です。Java Clientの内部では,単一要求,単一応答モデルに明確に対応するMonoをおもに使用しています。 Flux<Application> listApplications() {...} Flux<String> listApplicationNames() { return listApplications() .map(Application::getName); } void printApplicationName() { listApplicationNames() .subscribe(System.out::println); } この例では,listApplications()メソッドがネット
モノリスをマイクロサービスに分解することから得られた学びとテクニックをお伝えするため、Stitch Fixについて少しお話させてください。Stitch Fixは標準的な衣料品小売業者とは逆のことをします。オンラインで買い物をしたり、自分でお店に行ったりするのではなく、専門家があなたのためにそれをやってくれるとしたらどうでしょうか? まず、60から70の質問からなる詳細なスタイルプロフィールを記入してもらいます。おそらく20分から30分かかるでしょう。サイズ、身長、体重、好みのスタイル、腕を見せたいか、お尻を隠したいか、... 非常に詳細で個人的なことを質問します。なぜだと思いますか? あなたの人生で、あなたに合った服の選び方を知っている人は、あなたについて知っているはずです。だから、こうしてはっきりと質問し、データサイエンスを活用して、これを実現しています。クライアントには、玄関先まで5つ
The C4 model is... 1. A set of hierarchical abstractions (software systems, containers, components, and code). 2. A set of hierarchical diagrams (system context, containers, components, and code). 3. Notation independent. 4. Tooling independent. Uses and benefits The C4 model is an easy to learn, developer friendly approach to software architecture diagramming. Good software architecture diagrams
「RPAは魔法のツールじゃない」 年間8500時間を削減、リクルートはロボットに何をさせた?(1/3 ページ) いかに仕事を効率化し、早く帰るか――政府も提唱する「働き方改革」を引き合いにだすまでもなく、誰もが意識していることだろう。生産性の向上を図る上で、人間の業務内容をコンピュータに代行させるAI(人工知能)やRPA(Robotic Process Automation)に注目が集まっている。 しかし、AIやRPAをうまく活用している企業もあれば、社内にノウハウがなかったり、意思疎通がうまくできなかったりしてプロジェクトが失敗に終わるケースも少なくない(関連記事)。 AIが人間の仕事を奪うといわれる中、PCの入力作業やメール送信といった定型業務を自動化するRPAは、銀行や生命保険会社などが伝票や請求書データの入力などに使っている。 そんな中、「約40人の経理部署でRPAを導入し、年間で
Recently, Google officially launched Android 9 Pie, which includes a slew of new features around digital well-being, security, and privacy. If you’ve poked around the network settings on your phone while on the beta or after updating, you may have noticed a new Private DNS Mode now supported by Android. This new feature simplifies the process of configuring a custom secure DNS resolver on Android,
「Hyperloop」構想が発表されてから5年たつが、いまだに現実とハイプ(誇大宣伝)の区別が難しい。 Elon Musk氏が、ポッドと呼ばれる乗り物をチューブ内を浮いたまま超音速で走行させるHyperloop構想をオープンソースで公開してからの5年間、非常に現実的な進捗が幾つかあった。だが、幾つかの約束は破られ、革新的な交通手段の夢は、少なくともあと数年は夢のままになりそうだ。 Musk氏が2013年8月12日、Hyperloop計画をTeslaとSpaceXのウェブサイトで公開した段階では、そのPDFファイルが世界に存在するHyperloop開発のすべてだった。 5年後、専用路線と実物大のポッドが製造・テストされてきた。Musk氏主催のコンペでは小型ポッドが速度記録を更新している。多くのテスト路線やHyperloopセンターが予定されている。一握りの企業が、オハイオ州クリーブランドから
はじめに 標準入力 input と sys.stdin.readline ソート sort と sorted ソートの key ループ for と while リスト リストの初期化 二次元配列の場合 リストの値参照 リストへの値追加 それぞれの処理速度 まとめ はじめに 最近、PythonでAtCoderなどの競技プログラミングに挑戦しています。これまであまりに気にしなかったけど、ちょっとした書き方で処理速度が変わってくることに気づいたので、これを気に少し調べてみました。 目次にあるように、標準入力、ソート、ループ、リストについて、計8個の処理の速度比較を行いました。処理速度の計測方法は、Mac Book Pro*1を使い、timeitでそれぞれ100回計測*2し、平均と標準偏差を求めています。 結果だけ知りたい方は、まとめへどうぞ。 計測に用いたコードは以下にあります。 github.
COMPUTEXでは見事に姿を消した8コアのCoffee Lakeであるが、やっと出荷時期などが決まったようで、いろいろ情報が流れてきたので、このあたりでまとめておきたい。ただその前に余談というか直接関連しない話を2つ紹介しよう。 今年中にCascade Lakeを投入 その後継はCooper Lakeと判明 まず8月8日、インテルは2018 Data-Centric Innovation Summitというイベントを開催、ここでXeonを中心としたソリューションの紹介や今後の展望などを説明したが、この中で同社のJim Keller氏(Senior VP, GM, Silicon Engineering Group)により2020年までのXeonのラフなロードマップが示された。 内容は、連載464回で紹介した通り、2019年中は引き続き14nmを使った製品が投入されるという話で、新たにCo
TL;DR 手元に Luna Display が届いたのでレビューします! iPad を MBP のセカンドモニタにできるアプリは他にもいくつかありますが、こいつはハードウェアでの描画をサポートし、無線接続で利用できるなど、他にはない特徴をそなえたすごいヤツです。 Luna Display - Turn your iPad into a second display その前に:Luna Display とは Luna Display は、iPad を液晶タブレットにするアプリ「Astropad」を開発・販売していた Astro HQ が、昨年 8月に Kickstarter にて発表したプロジェクトです。 Luna Display by Astro HQ — Kickstarter プロジェクト自体は同 10月に無事目標額を達成、今年の 6月より順次製品の出荷が始まりました。わたしの手元に
たまたま動いているコード オブジェクト同士の比較に JSON.stringify() を使う例がそこかしこで見られます。 典型的には、 のようなコードです。 オブジェクトの中身を再帰的にたどって比較する、いわゆる「深い比較」で「deep equality」を判定したい場合に使われる事が多いようですが、これはとても危うく、いつ壊れてもおかしくないコードです。 理由 まず、JSON化する際にそのまま含まれないプロパティ(enumerableでなかったり、値が関数であったりするものなど)がありますが、これは考慮の上でのことが多いでしょう 問題は、配列でないJavaScriptのオブジェクトには順序が無く、JSONにされる際にもプロパティの順序がどうなるか決まっていないことです。 MDNには、 配列でないオブジェクトのプロパティは、特定の順序で文字列化されることを保証されてはいません。文字列化にお
最近気になっているHTML5関連の技術。 特に、「Electron」にずっと関心があったのですが…。 今まで手を付けていませんでした。 今日は、何となくElectronの事が特に気になりましたので…。 せっかくの機会なので、Electron入門をしてみようと思い立ちました。 そこで、私はElectron開発のための環境を揃えて、最初のプログラムを作成するところまでをやってみました。 実際やってみると、そこまで難しいということはありませんでしたよ。 大体30分くらいで動作するところまでいけましたね。 今回の記事は、Electronの開発環境の構築方法と、最初のプログラムを書いて動作させる方法をまとめます。 Electronとは? Electronというのは、GitHub社が開発したオープンソースのソフトウェアフレームワークです。 主な特徴としては、「Windows/Mac/Linuxのクロス
2019/07/17更新 エバンジェリストとはもともとキリスト教における「伝道者」という意味ですが、IT業界で近年テクニカルエバンジェリスト(エバンジェリストとも呼ぶ)という職域が生まれてきました。 エバンジェリストの役割は自社の製品やサービスの魅力を広く分かりやすく伝えることにあり、営業とも広報とも違い「売る」ことよりも「ファンを作る」ことに重点を置いて長期的な視野で啓蒙していく仕事です。 具体的な活動としては各種イベント・セミナーでのプレゼンテーションや製品導入時の技術支援、書籍執筆などが挙げられますが、業界全体を俯瞰して自社製品の弱点や他社製品の強みなども含めた中立的な見地での情報発信も多く、複雑化したITの世界を理解するにはとてもありがたい存在です。 そんな彼・彼女達のTwitterアカウントをまとめていきます。ここでは製品やサービスを開発・提供している会社の社員さんで、かつ定期的
8/19でboardの正式リリースからちょうど4年が経ちました。 有料アカウントは1500社を超えたところで、会社全体の売上の4割ほどにまでに成長してきました。 単価が安いサービスなので、1500社でやっと4割かという感じがします。 現在、boardにフルタイムでアサインしているのは3人で、エンジニア1名、CS1名、自分がプロダクトオーナー&開発者&CSといったメンバー構成です。 他のメンバーは受託を軸にスポットでboardに入ったり、総務をしながらテストをやったりといった感じで兼任しています。 boardに対するスタンス これは当初から変わらず、「boardだけでやっていくぜ!」という感じでもなく、急激な成長を目指すわけでもなく、自分たちにできることを自分たちのペースで、着実に続けています。 相変わらず営業もマーケ担当もおらず、ようやくCS専任のメンバーが入り、僕の手が離れつつあります。
- json - github “SwiftyJSON/SwiftyJSON” - reactive - github “SwiftBond/Bond” - setting - github “nickoneill/PermissionScope” ~> 1.0 - ui - github “ninjaprox/NVActivityIndicatorView” - github “SVProgressHUD/SVProgressHUD” - github “airbnb/lottie-ios” - github “xmartlabs/Eureka” ~> 4.0 - github “danielgindi/Charts” ~> 3.0.5 - github “kaandedeoglu/KDCircularProgress” - github “ChiliLabs/CHIPageContro
はじめに 皆さまがシステムを運用にするあたり、様々な不安を抱えていらっしゃると思います。 そういったよくある「不安」を書き出し、解消するための対策や参考ページなども記載しましたので、本記事をご覧いただいている皆さまには抱えている不安を淡々と潰していただければと思います。 【ケース1】大量のアクセスによる高負荷への不安 近日中に Web サイトの広告を出す予定だが、現状のままで増加するアクセスに対応できるのか不安がある 以下のような対策が考えられます ELB(Elastic Load Balancing)を使用し、Webサーバー(Amazon EC2)の複数台構成にする アクセス数や負荷に応じて自動で Webサーバー(Amazon EC2)の台数を増やす(スケールアウト)、減らす(スケールイン)ために AWS Auto Scaling を使用する ELB の暖機申請(予め AWS へ連絡して
「サーバレスコンピューティング」や「サーバレスアーキテクチャ」といった言葉は、2014年にAWS Lambdaが発表され、その後広く普及したことで一気に注目を浴びるようになりました。 現在ではAWS Lambdaだけでなく、Microsoft AzureのAzure Functions、Google Cloud PlatformのGoogle Cloud Functions、IBM CloudのIBM Cloud Functionsなど、主要なクラウドサービスの多くでサーバレスコンピューティング環境が提供されています。 サーバがない、のではない。サーバ管理が不要ということ AWS Lambdaに代表されるサーバレスコンピューティング環境は、一般にユーザーがあらかじめ用意しておいた関数を、イベントをトリガーとして実行することで何らかの処理を行うFunction as a Service的なア
UX Movementの創立者、ライター。ユーザーに優しいUXデザインのスキルを読者の方が上達できるよう、UX Movementのブログを始める。 デザインにピュアブラックを使うと可読性が低くなると知っていましたか? 統計によると、「アメリカの成人の58%」がコンピュータ作業で眼精疲労を経験したことがあるそうです。デザイナーは使用する黒の色に注意を払うことで、目が疲れる可能性をある程度減らすことができます。 ピュアブラックの文字や背景 ピュアブラックの文字や背景と白の組み合わせは、ユーザーが文章を長時間読むとき目に不快感を与えることがあり、眼精疲労を招いてしまいます。 白は100%の明度であり、黒は0%の明度です。このように明度のコントラストが強いと光量に不均衡が生じ、ユーザーが明るさに順応しようとするために目が酷使されることになるのです。 この現象を実証するために、暗い部屋で明るい電灯を
UNIX 開発者の一人である Ken Thompson が初期の UNIX にバックドアを仕掛けていたと言われている通称 Thompson hack を自作Cコンパイラで再現してみました。 Thompson hack は UNIX のログイン処理のコンパイル時にバックドアを仕掛けるようなコンパイラを作り、さらにコンパイラのソースコードからその痕跡を消し去るという神業です。 元ネタは Reflections on Trusting Trust という1983年に Ken Thompson が Dennis Ritchie と共にチューリング賞を受賞した際の記念公演です。 Ken Tohmpson はこの細工をしたコンパイラを配布したことはないと主張しているそうですが、このバックドアを利用したと見られる不審なログインがあったという報告もあったとのことで、実際にはベル研究所の外部に配布されていた
LPIC取り扱い停止に関するお知らせ LPI-Japanでは長期にわたりLinux技術者認定試験として「LPIC」の普及活動を行ってまいりましたが、下記の理由からその取り扱いを基本的には停止することといたしました。 今後のLinux技術者認定試験においては、2018年3月から提供をしておりますLinuC(リナック)をご利用いただけますよう、よろしくお願いいたします。 取り扱い停止の理由 1. LPICの試験問題は、インターネットで検索し第三者のサイトから購入ができてしまう状況になってしまいました。このような状況はLinux技術者認定資格としてのLPICの公正性・信頼性が毀損されている状態であると言え、この状況を解決するためにLPI-JapanはLPICの開発元であるLPI Inc.(本拠地:カナダ)に対して早急な試験問題の差し替えを含む改善依頼をしてまいりました。 しかしながらLPI-Ja
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く