API構築の基礎を学んだ。QConは、開発者コミュニティにおける知識とイノベーションの普及を促進することで、ソフトウェア開発に力を与える。実務者主導のカンファレンスであるQConは、チーム内のイノベーションに影響を与える技術チームのリーダー、アーキテクト、エンジニアリングディレクター、プロジェクトマネージャー向けにデザインされている。Sheehy氏は、人工知能ハイプ時代における責任ある開発者としてのあり方について、洞察に富んだ開会基調講演をした。Grizzanti氏が、「スタッフ・プラス」への道と、それを「科学」というより「芸術」としてとらえ、芸術を創作することとソフトウェアを創作すること、そして組織のダイナミクスに対処することの類似性について語っている。Codeを採用する:確認するべき6つの適性LCNC(ローコード/ノーコード)プラットフォームは、プログラマーだけでなくプログラマーでなくても、最小限のコーディングとワンクリックのデプロイメントで、アプリケーションソフトウェアを開発できるよう設計されている。ドラッグ&ドロップ方式のインターフェースなどを利用することで、開発・デプロイメントプロセスを簡素化し、効率的なアプリケーション開発とデプロイメントを実現する。SecurityがSuperPackという,スキーマレスの新しいバイナリシリアライズフォーマットをオープンソースとして公開した。SuperPackでは,ペイロードサイズを削減する目的でバイナリシリアライズフォーマットを使用している。他のスキーマレスフォーマットと比較した場合,ShapeSecurityによると,SuperPackは,特定の4.48KBのサンプルフォーマットでのペイロードが最小である。B14%20%12%16%13%YAMLとBSONはメッセージペイロード以外について,かなり冗長である。JSONはYAMLよりはよいのだが,テキストエンコーディング形式であるため,SuperPackよりもかなり大きくなっている。SuperPackはオリジナルメッセージの12~14%で拮抗している。SuperPackのようなエンコードフォーマットを使用するメリットのひとつは,事前にメッセージスキーマを交換しておかなくても,クライアントとの通信が可能なことだ。データタイプ情報はペイロードに含まれている。array5を含む36のデータタイプが前もって定義されている。後者はメッセージで使用される確率の高い値を表現するためのものだ。配列や文字列,マップも含まれている。タイプのひとつであるextensionでは,ユーザが新たなタイプを追加することができる。SuperPackには,繰り返し文字列と繰り返しキーセットの2つの最適化がオプションとして用意されており,特定ケースでのペイロードの削減が可能になっている。Ficarra氏から,SuperPackについて詳細を聞くことにした。SuperPackの前提にあるのは,事前にデータのスキーマを予想できない場合でも,データには何度も繰り返される構造や値が存在する可能性が高い,という思想です。例として,買い主と猫をマップする“cats”というデータ構造があるとします。すべての猫の情報をエンコードしなくても,名前や誕生日,好きな食べ物といった情報があるという事実から,この情報を一度エンコードすれば,それを参照することで,protobuff形式の値のパッキングを極めて効率的に行なうことができます。他に比べて頻度の高い値については,効率的な表現を行なう必要があります。フォーマットを詳細に見て頂けば,すべての値が,私たちが”タイプタグ”と呼んでいる1バイトのインジケータから始まっていることが分かります。このタイプタグには,すべての値あるいは一部の値を,その中に直接エンコードできるような領域が確保されています。単純な例はbooleanタイプタグで,1つの値は真であり,もうひとつは偽です。同じように”uint6”には64のタイプタグがあって,0から63までの値を1バイトで表現することができます。エントリ数が32未満の配列(長さとエントリをエンコードする必要がある)は,長さをタグ内にエンコードすることができます。先程の例に戻ると,猫のひげ(whisker)は普通64本未満ですし,大部分の買い主が飼う猫の数は32匹未満ですから,これらの値は効率的にエンコードできます。そのような比較はしていません。SuperPackの文字列の重複排除機能が特に有効な場合を除けば,ほとんどの場合,Protobufの方が小さいだろうと思います。スキーマ駆動フォーマットが使用可能なニーズについては,特にLZWやDeflateのようなロスレスデータ圧縮アルゴリズムが併用可能であれば,そのメリットを活用した方がよいでしょう。エンコード時間は,キーセットあるいは文字列の重複を除外する最適化が選択(あるいは指定)されたかどうかによって異なります。754倍精度数を使用するJavaScriptのように,実装言語に起因するパフォーマンス上の問題もあります。Security社内で使用しています。オープンソースとして公開する準備はまだできていませんが,ニーズはあると聞いているので,そのプロセスを進めています。それ以外のエコシステムに着手したいコミュニティがあれば,私たちは喜んでお手伝いします。Rustの実装などは面白そうですね!SuperPackはまだ非常に若い,ということも付け加えておきたいと思います。向上を実現できる提案があれば,ぜひお聞きしたいと思っています。仕様のイシュートラッカのイシューをオープンしてください。SuperPackの将来のバージョンが,さらによいものになればと願っています!現在のSuperPackにはJavaScriptトランスコーダが付属しているが,これを起点として他のものを開発することができる。SuperPackは非常に寛容なライセンス下で,オープンソースとして公開されている。毎週火曜日に前週のまとめコンテンツをお送りいたします。(日本語版は不定期リリース)25万人のシニアな開発者コミュニティーにぜひご参加ください。サンプルを見るあなたのメールアドレスはこちら国を選んでください。プライバシーポリシーに従って私の個人情報を扱うことに同意します。毎週火曜日に前週のまとめコンテンツをお送りいたします。(日本語版は不定期リリース)25万人のシニアな開発者コミュニティーにぜひご参加ください。サンプルを見る様々なイノベーターとアーリーアダプターがお送りするテクノロジーの概要を見る。自分がまだ知らないことに気づいていないと知るあなたが興味のあるトピックスをいつでも最新な情報に。あなたのメールアドレスはこちら国を選んでください。プライバシーポリシーに従って私の個人情報を扱うことに同意します。Inc.プライバシーBT。