スピーカー | トランスクリプト |
| ウェイン・レヴィン | 継続的な改善のためにJSLアプリケーションのHamcrest自動テストを拡張するセッションへようこそ。 |
| ここでお見せするのは、あなたへの約束です。あなたも生産的な費用効果の高い方法を構築する方法をお見せします。 |
| 高品質保証、信頼性とサポート性の高いJMPベースのミッションクリティカルな統合分析システム。 ええ、それは言うことがたくさんありますが、それは |
| これが、この環境で私たちが行っていることです。 とても満足しています。 それをあなたと共有できることを本当に光栄に思います。 |
| これが、ここで従うアジェンダです。 少し紹介します、私の自己、私はすぐにそれをします、そしてあなたが私たちについてあまり知らないかもしれないので、Predictumについて少しだけ、 |
| 私たちの背景、JSL開発の背景、インフラストラクチャ、それに関連する少しの歴史。 |
| そして、私たちがあなたと共有するためにここにいる私たちが実施している変更の結果。 次に、デモンストレーションを行い、次のこと、今後の計画について話します。最後に、質問がある場合はそれを開きます。 |
| ウェイン・レヴィンです。右側の私です。 私はPredictumの社長であり、参加しています |
| ヴィンス・ファラーと。 Vinceは、この非常に重要なイニシアチブを主導してきた当社のチーフソフトウェアエンジニアです。 だから私たちについて少しだけ、そこに。 私たちはJMPパートナーです。 |
| 1992年に発売したので29歳。 |
| 私たちは、JMPを使用して、統計手法などのトレーニングを行い、それらの分野でコンサルティングを行っています。 |
| 統合された分析アプリケーションとシステムを展開するため、この取り組みが私たちにとって非常に重要だったのはなぜですか。 最初にJMPアプリケーションを提供しました |
| 2000年のJMP4.0、ええ、確かに20年以上前、私たちはより大きなシステムを構築してきました。 もちろん、それ以来、それは小さすぎる小さなツールでしたが、私たちは、JMP8または9を中心に大規模なシステムの構築を開始したと思います。 |
| ですから、これについてはかなりの歴史があり、10年以上も簡単です。 ですから、ほんの少しの背景... 2019年の後半まで、私たちの開発環境は本当に異なっていて、断片的でした。 |
| プロジェクト管理 |
| そこにありましたが、繰り返しになりますが、すべてが壊れていました。 バージョン管理と時間管理、開発者時間など、そして一般的にはプロジェクト管理のために、さまざまなアプリケーションがありました。 |
| 開発者は簡単に支出していました。これについて説明します。 |
| JMPアドインの暗号化やパッケージ化など、日常的な機械的な作業を行うだけの時間の約半分。 ご存知のとおり、構成パッケージを維持し、 |
| ご存知のとおり、暗号化されたスクリプトと暗号化されていないスクリプトのリポジトリまたは一般的にレポと呼ばれるものを分離します。 それは...私たちが考えなければならなかったことがたくさんありましたが、それは実際には開発作業ではありませんでした。 本当に仕事でした |
| 開発者の才能は...無駄にされました。 また、私が言ったように、私たちは長い間それを行ってきました、2019年でさえ、私たちは簡単に10年でした、それで10年以上のレガシーフレームワークはJMP5にまでさかのぼります、あなたが知っている、あなたが知っている、それは肥大化して遅くなっていた。 |
| そして、JMPは何年にもわたって長い道のりを歩んできました。 つまり、JMP 9では名前空間が取得され、JMP14ではクラスが導入されました。 |
| 始めた。そして、私たちがこれを本当に可能にしたのはハムクレストでした...この主要なイニシアチブで。 そのため、この主要なイニシアチブは2019年8月に開始されました。 |
| そして、それが私たちが最初のGitlabライセンスを取得したときであり、それが私たちの新しい開発です...私たちの新しい開発アーキテクチャの開発は、そこから形になり始め、それ以来改善され続けています。 |
| 毎月、基本的に、私たちは前進するにつれて、ますます生産的になるために私たちの能力を追加し、構築してきました。 |
| そしてそれは継続しているので、私たちは実際にこれを無駄のないタイプの努力と考えています。 それは本当にリーン原則に従い、私たちの開発を加速させます。 |
| このシステムのおかげで、自動テストが可能になりました。Vinceがそれを示します。 そして、ここにこの小さなモデルがあり、早期にテストし、頻繁にテストします |
| そしてそれが私たちの仕事です。 コードの再利用をサポートし、Predictumシステムフレームワークを再開発しました。 現在は2.0です。 以前の取り組みから多くのことを学びました。 すべてがなくなり、ほとんどすべてがなくなり、置き換えられて拡張されました。 |
| そして、ヴィンスはそれについてもっと教えてくれます。 簡単に言えば、生産性が50%以上向上し、開発者の方がはるかに満足していると言えます。 彼らはそれほどイライラしていません。 |
| 彼らは彼らの仕事にもっと焦点を合わせています、私は開発者がしなければならない本当の仕事を意味します、退屈な種類のものではありません。 |
| まだ改善の余地があると言うつもりですので、まだ終わっていません。Vinceがそれについて詳しく教えてくれます。 |
| 現在、開発標準があるので、機能のスタイルガイドがあり、すべての開発は機能に基づいています。 |
| 各関数には少なくとも1つのHamcrestテストが必要であり、開発者が互いに共有しているコードレビューがあります。 |
| 私たちが私たちの基準に従っていることを確認するために。 そして、それはそれらの基準をどのように強化し、それらをより良くするかについての疑問を提起します。 |
| また、開発者がコードを解読することを奨励される、これらの一種の楽しいセッションもあります。 |
| そうです、それらは、これらのブレークコードの課題、またはあなたが持っているもののように呼ばれています。 したがって、それは私たちの手口の一部になり、すべてこの開発環境にぴったりと適合します。 それは、例えば、さらなるテスト、さらに追加されるハムクレストテストにつながります。 小さな、かなり小さなプロジェクトが1つあります |
| 1年以上前にやったことです。 私たちはそれの新しい段階に入っています。 それはよく終わった... |
| 100をはるかに超えるHamcrestテストが組み込まれており、開発プロセスを通じて何度も何度も実行されます。 |
| したがって、他のいくつかの利点は、開発者が何をしているのかなど、リソース割り当てを割り当てて追跡できることです。 誰もが他の人が何をしているのか知っています、 |
| 継続的インテグレーション、継続的デプロイ、そのようなもの)、 |
| コードの衝突は早期に検出されるので、もしそうなら、複数の人がいくつかのプロジェクトに取り組んでいるので、誰かがここで関数を変更していて、他の誰かと衝突するでしょうやっています。 私たちはもっと早く知るつもりです。 |
| また、複数のスタッフ間のサポート性を向上させることもできます。 特定の開発者に依存するコードを持つことはできません。開発者やサポートスタッフがサポートできるコードが必要です |
| 前進します。 それが私たちの重要な目的でもありました。 そして、それは品質保証領域全体を一般的に前進させます、 |
| QAに関するFDAの要件、検証、IQ OQPQなどのサポートを含みます。 だからそれは...私たちは自動化または半自動化しています |
| これらのタスクもこのインフラストラクチャを介して行われます。 社内外で使用しているので、ご存知かもしれませんが、 |
| いくつかの製品があります、(???)神戸サッシュラボですが、新しい製品はよくスパムします神戸はスパムを送信します(???)他の場所でも話題になっています |
| 2021年のJMPディスカバリーヨーロッパ会議で。 あなたはそれらをチェックしたいかもしれませんが、それらはかなり大きいです |
| コードベースとそれらはすべて開発されています。言い換えれば、その表現を知っていれば、私たちは独自のドッグフードを食べますが、すべてのクライアントでも使用しています |
| 開発なので、これはクライアントにとって重要なことです。クライアントが依存するアプリケーションを構築しているからです。 |
| ですから、私たちは...信頼できるインフラストラクチャを用意する必要があります。とにかく、それはこれの大きな部分です。 |
| Predictumシステムフレームワークについて説明しました。 あなたはそれのいくつかの断片をここで見ることができます。 これはスクリプトインデックス内にあり、引数と |
| 例とそのすべて。 私たちはそれらすべてを組み込み、95%、それらの95%以上にHamcrestテストが関連付けられています。 もちろん、私たちの目標は、それらすべてが確実に実行され、そこに到達していることを確認することです。 |
| そこに着きました。 持っている...これらのフレームワーク...このフレームワークは実際にはここのインフラストラクチャの一部です。 それはそれの重要な要素の1つです。 もう一つはそれだけです...ハムクレスト... |
| ユニットテストを実行する機能。 そして、最後にスライドがあります。これにより、コミュニティへのリンクが表示され、ハムクレストについて詳しく知ることができます。 これは |
| 数分前に述べたように、JMPによってもたらされた開発はJMP14に戻りました。 Gitlabはこれの大きな部分です。これにより、プロジェクト管理リポジトリ、CI / CDパイプラインなどが提供されます。 |
| また、私たちが作成したJSLのビジュアル...ビジュアルスタジオコード拡張機能があります... 5つ星が付けられているので5つ星が表示されます |
| ビジュアルスタジオで。 私たちがそれを何と呼んでいるのかわかりません。 ヴィンス、多分あなたは私たち、店、あなたが何を持っているかを言うことができます。 それは何百回もダウンロードされており、私たちは |
| 定期的に更新します。 だから、それはあなたが行って探すこともできるものです。 最後のリソーススライドにもそのリンクがあると思います。 |
| それで、私が今やろうとしていることは、これをヴィンス・ファラーに渡すつもりです。 ヴィンスもまた、私たちのチーフソフトウェアエンジニアです。 私が言ったように、Vinceは2019年8月からこのイニシアチブを主導しました。 大変な作業でした |
| 大変な作業が続きます。 私たちは皆、会社の中で、ここでのヴィンスと彼のリーダーシップに非常に感謝しています。 そうは言っても、ヴィンス、ここから取ってみませんか? するつもり... |
| 私は... |
| ヴィンス・ファラー | 共有。 |
| それでウェインはハムクレストに何度も言った。 ハムクレストが何であるかを知らない人のために、それはによって作成されたアドインです |
| JMP。 |
| JustinChiltonとEvanMcCorkleが主導していました。 これは、自動化された方法で実行、テスト、および結果を取得できる単体テストライブラリです。 |
| それは本当に私たちのボールの転がりを始めました、それ故にそれが延長と呼ばれる理由です。 |
| 私はいくつかのものを示すつもりです |
| 私の画面で。 私は、構築したVSCode拡張機能でほぼ独占的に作業しています。 これはVSCodeです。 |
| これを行うのは、統合の取得やラボの統合の取得など、作成する必要のない多くの組み込み機能または拡張可能な機能があるためです。 |
| ここでは、これがJSLスクリプトであり、問題なく読み取られていることがわかります。 |
| あなたがそれを手に入れたいのなら、あなたが... VSCodeに精通しているのなら、それはただの軽量のテキストエディタです。 JMPと入力するだけです |
| そして、あなたはそれを見るでしょう。 それだけです。 |
| しかし、私たちは私たちがしていることに行きます。 |
| そう。 |
| コードを変更する場合は、 |
| パイプラインの実行があります。 |
| それが何をするのかを少しだけ示します。 したがって、READMEファイルをこれに変更すると、Discoveryのデモになります。 |
| 2021年。 |
| そして、私はそれをコミットするつもりです。 getがわからない場合は、 |
| 現時点での正確なスナップショットが必要だと言ったら、それをリポジトリにプッシュしてサーバーに保存します。 |
| 幸せな日。 |
| コミットメッセージ。 より多くのreadme情報。 |
| そして、VSCodeは素晴らしいので、私はプッシュを取得することができます。 |
| パイプラインのデモ。 |
| だから今私はそれをプッシュしました。 パイプラインが実行されます。 ここに移動してこれをクリックすると、マージリクエストが表示されます。 だから今 |
| パイプラインが実行を開始しました。 |
| パイプラインの状態を確認できます。 |
| 現在実行しているのは、必要なHamcrestファイルが含まれていることを確認することです。 いくつかの要件があります |
| 私たちはそれができるように強制します... |
| 私たちは私たちがいることを確認することができます |
| 私たちの仕事をうまくやっています。 |
| そして、それは完了です。 暗号化を押します。 |
| 次に、encryptはパッケージ全体を取得して暗号化します。 |
| ここに行けば、 |
| これはどこかのVMです。 そうすべき |
| 走り始める |
| すぐに。 |
| つまり、すべてのコードを通過しているだけです。 |
| 暗号化されたすべてのパスワードを書き込み、通過し、すべてのものをクリックします。 複数のスクリプトを同時に暗号化しようとしたことがある場合は、 |
| おそらくそれが苦痛であることをご存知でしょう。ウェインが言ったように、これらを行うのに多くの時間がかかったので、これを行う必要がないように自動化しました。 |
| たとえば、リリースを実行するたびに100個のスクリプトを実行して、すべてのスクリプトを暗号化する場合、それはひどいものでした。 |
| 私たちは私たちを持っている必要があるので |
| コードが暗号化されているのは、申し訳ありませんが、意見です。共有をやめることができます。 |
| ああ。 |
| 実行します。 |
| すぐに終了するはずです。 |
| 次に、それを通過してステージングし、ステージングは基本的に、ドキュメントのように、必要なすべての情報ソースを取得します。 |
| 他のすべての記述は、アドインで必要な形式にレンダリングされます。これは、他のgithub、gitlabと同様に、ほとんどのドキュメントがマークダウンで記述されてから、任意の形式にレンダリングされるためです。 |
| これの残りを示す必要はありませんが、ええ。 だから、それは通過しています。 それは行くだろう。 |
| VSCodeに戻ります。 |
| そう。 |
| 変更する場合、これは1つの関数にすぎません。 |
| 私がここに入ると、これを実行するとしたら... |
| JSL、現在の選択を実行します。 |
| そう。 |
| それが戻ってきたことがわかります...それがやろうとしているのは、ビッグクラスを開き、フィットラインを実行して、方程式を取得することだけです。 それは方程式を返しています。 |
| そして、あなたは実際にそれがここでも走ったのを見ることができます。 |
| だが。 |
| したがって、これにはさらにいくつかのドキュメントが使用される可能性があります。 |
| そして、私たちは、ああ、実際にはこのデータテーブルを開いたくないようなものです。 |
| しかし、これを本当に簡単に実行してみましょう。 |
| そして、言います、 |
| 番号。これは良いリターンではありません、それは明らかにすべての大文字で方程式を回します。 |
| だから私がそれを上演すると。 |
| より良いドキュメント。 |
| 押す。 |
| 再びここに戻ります。 |
| だから、再びそれはプッシュしています。 これは別のパイプラインです。 |
| 設定方法にもよりますが、一連のパワーシェルスクリプトを順番に実行しているだけです。 |
| ただし、このパイプラインにはさらに多くのステージがあることに気付くでしょう。 |
| だから私たちが |
| これをスケーリングできるようにするために、JSLのみをテストします |
| 最初は最小限で、それが通過するにつれて、さらにテストすることができます。 |
| また、変更されたJSLファイルがあるかどうかのみをテストしました。 |
| しかし、私たちはこれを通り抜けることができます。 |
| テストがフリーズした場合に備えて、実行され、テストのどこにあるかがわかります。 閉じないモーダルダイアログボックスがある場合、明らかにJMPはその後何もしません。 しかし、あなたが見ることができる、それはたくさんのことをしました、ええ、素晴らしい。 私はこれで終わりです。 |
| エキサイティング。 |
| それを更新します。 少し緑色のチェックマークを付けます。 |
| そして、私たちは行くことができました、大丈夫、今すべてを実行します。 それは、通過し、すべてをテストし、次に暗号化し、次に暗号化された、基本的にはアドインを作成する実際のものをテストし、次にそれを再度ステージングし、パッケージ化し、実際のアドインを作成します。その点で、私たちは顧客に提供します。 |
| 1分かかるので、それほど速くはしません。 |
| だが |
| ここに行って、ああ、 |
| さて、私は本当にこのデータテーブルを閉じたいです。 そもそもなぜコメントアウトしたのかわかりません。 私はそれをもう使っていないので、私たちはそれを開いているべきではないと思います、私たちは望んでいません...私たちはそれを望んでいません。 |
| 大丈夫と言います。 |
| dtを閉じます。 |
| もう一度押します。 さて、これはすべて、Hamcrestを使用して私のコンピューターで手動で行うことができます。 |
| しかし、ご存知のように、開発者が何かをプッシュして、コンピューター上のすべてに対してすべてのHamcrestを実行しない場合があります。これは、それをキャッチすることを目的としています。 それは私たちに私たちの仕事を少し良くすることを余儀なくさせました。 |
| そして |
| ええ。 |
| このボタンをクリックし続けます。 開けるだけでもいいのですが。 |
| これで、パイプラインが再び実行されていることがわかります。 パイプラインに移動します。 |
| そして、私は繰り返しこれを言い続けるつもりです。 テスト、暗号化、テストを行っています。 |
| 暗号化が独自に行われることがあるため |
| 誰かが暗号化を行ったことがあるなら、問題の世界。 |
| 実行、実行、実行、実行、実行。 |
| そして、ああ、私たちはスローを取得しました。 あなたはそれを見ますか? |
| 私はデッドパンになろうとはしていませんが、あなたは知っています。 |
| したがって、これを準備完了としてマークして、「完了しました」と言うと、次のようになります。 |
| ああ、まあ、そのテストは合格しませんでした。 |
| 今 |
| ダウンロードできます |
| テストがアーティファクトに合格しなかった理由。 |
| そしてこれはJユニットを開きます |
| ここで引き出すファイル。 |
| また、getlabでレンダリングするので、簡単かもしれませんが、今のところはこれを実行します。 |
| 最終的に。 すべてを最小限に抑えます。 |
| さあさあ。 |
| したがって、決定係数で何かが発生し、失敗したことがわかりました。 |
| 内部 |
| 青の。 |
| だからここに来ることができます。 |
| 言う、なぜこれが失敗する原因となっているブーイングに何かがあるのですか? |
| ああ、誰かが私たちの方程式を呼んだのがわかります |
| そして、彼らはデータテーブルがそこにあると仮定しました。 それで、私が変更した何かが他の誰かのコードを壊したので、あたかもそれが起こるかのように。 |
| だから私たちはその問題を抱えています。 |
| あなたは何処に行きましたか? さあ。 |
| これが、私たちがここで行っているすべての主な目的です。私が何かを変更し、他の誰かのものを壊したという事実をキャッチできるようにすることです。 |
| だから私は通り抜けることができました。 |
| ブーが何をするか見てください。 |
| 言ってやるがいい、多分私はビッグクラスを開くべきだ |
| 自分。 |
| ええ、かっこいい。 さて、それを保存すると、 |
| 私はおそらくそれを良くする必要があります。 |
| 自分でビッグクラスを開きます。 |
| それを上演します。 |
| ビッグクラスを開きます。プッシュします。 |
| そして再び、ただ見せてください |
| 古いパイプライン。 |
| 今これはかかるはずです |
| そうではありません...長すぎません。 |
| だからここに行きます。 私たちは... 1つだけをテストしています... |
| JMPバージョンですが、ご覧いただけます |
| 自動的に、1つだけでテストします。 |
| 次に、開発者が「はい、完了しました。すべてが良好に見えます」と言うのを待ちます。 継続する。 リソース上の理由から、これを行います。 |
| これらは常に自動的にチャギングしているVMで実行されており、複数の開発者がいて、すべてこれらのシステムを使用しているためです。 |
| 私たちも... |
| ご覧のとおり、これは実際にはDockerシステムであり、これらをコンテナー化しています。 |
| さて、私たちはこれらをコンテナ化する過程にあります。 私たちはそれらを機能させていますが、まだすべてのバージョンを持っているわけではありません。 |
| ただし、14.3を実行します。少なくともこのプロジェクトでは、14.3、15、15.1を実行します。 |
| そしてそれはうまくいくはずです。 |
| 物事を元に戻しましょう。 |
| あなたが知っているので、うまくいきます。 |
| おそらく古典的なことをすべきだったでしょう...しかしそれは大丈夫です。 |
| そうそう。 |
| テストします。 |
| これを何度も言い続けているような気がします。 すべてをテストします。 |
| 実際にこれを実行して、得られた結果の最終結果を示します。 |
| かかるだけです。 |
| 若干。 |
| そして、これをテストし、それが実行されていることを確認します。ログを確認できます。 走っているランナーを教えてくれるように、何が起こっているのか、どこにあるのかについて、まともな情報を取得しています。 |
| 現在、Windowsでのみ実行しています。 繰り返しますが、これはデモであり、 |
| 実行できるはずです |
| もっと。 |
| それが実行されている間、私はVSCodeについてもう少し話します。 |
| VSCodeには、スニペットなどもあるので、関数を作成したい場合は、 |
| 機能情報全体に作成されます。 自然なドキュメントを使用します |
| 繰り返しになりますが、それはハムクレストチームから盗まれました。 |
| 私たちのように |
| 開発ドキュメント。 |
| したがって、すべてを自然なドキュメント形式で配置するだけです。 繰り返しになりますが、このアイデアは私たちが仕事をするのを助け、私たちに仕事を強制することです。 |
| もう少し良い、もう少し勇気があります。 |
| ウェイン・レヴィン | ドキュメントについては? |
| ヴィンス・ファラー | ええ、それはドキュメンテーションのためです。 |
| ウェイン・レヴィン | 私たちが開発している間、私たちは同時に文書化しています。 |
| ヴィンス・ファラー | うん。 絶対に。 |
| ご存知のとおり、forループとwhileループもあります。 |
| 準行の場合は、そのようなものです。 |
| 私たちは...これですか...これはもう完了しましたか? うん、それはおそらく終わった。 |
| したがって、緑色のチェックマークが表示されます。 これで、すべてのシステムで実行されます。 |
| ここに戻ることができれば、あなたはそれを見るでしょう。 |
| JMPを開きます。 いくつかのテストを実行します、 |
| おそらくビッグクラスを開くでしょう。 |
| 次に、すべてを閉じます...すべてを閉じます。 |
| ウェイン・レヴィン | だから私たちはこれをやっています、主に理由は |
| 私たちのクライアントの多くは、異なるバージョンのJMPが展開されており、特定のアドインを必要としていますが、 |
| それを実行すると、彼らは、あなたが知っているように、フィールドにちょうど異なるバージョンを持っています。 また、バグを報告しているため、JMPのサービスであるJMPのアーリーアダプターバージョンに対してテストします。 |
| しかし、クライアントにとっても、新しいバージョンのJMPにアップグレードできることがわかっているので便利です。 彼らは、私たちが彼らのために構築したアプリケーションがテストされていることを知っています。 |
| そして、それは私たちにとって日常的なことです。 |
| 良い。 |
| ヴィンス・ファラー | 完了です。 完了です。 完了です。 |
| への変更... |
| 私は話すことができます... |
| そして、これは実行されるだけです、私たちはできます |
| あなたが望むならこれを映画の魔法、メグ。 |
| ただそれをより速く走らせるために。 |
| 基本的には、ステージングを始めたいだけですが、少し時間がかかります。 |
| ウェイン、それについて他に何か言わなければならないことはありますか? |
| 涼しい。 |
| 私はそれを置きます... |
| 私が言えることは、 |
| ステージングするとき、 |
| mkdocsにもドキュメントがあります。したがって、実際にはmk docのバージョンを実行してレンダリングし、ヘルプをヘルプファイルに入れて、基本的にリリースを作成できるので、そうする必要はありません。 |
| それに対処します。 |
| リリースの作成は大変な労力だからです。 |
| 暗号化。 ほぼ完了です。 |
| おそらく、1つだけプリロードされているはずです。 |
| ライブデモ、あなたは何をするつもりですか。 |
| いくつか。 |
| 実行します。 |
| ああ、絶対にやりたいことが一つあります。 |
| したがって、パイプラインが実際に行う最後のことは、実際に時間を費やしたことを確認することです。 |
| 私たちは実際に費やした時間を記録していませんし、支払いも受けていないので、それを強制します。 |
| 素晴らしい、素晴らしい時間。 |
| ヴィンデファラー | そう |
| ヴィンス・ファラー | それがなければ仕事は失敗したでしょう。 |
| 私はただいくつかの仕事を見せることができます。 やってみます。 |
| それは港湾労働者のものです。 私たちはそれを望んでいません。 |
| そう |
| あなたはそれが私たちに私たちの成功を与えたのを見ることができます。 |
| 失敗はありません。 予期しないスローはありません。 それはすべてハムクレストからのものです。 |
| いい加減にして。 もう1つ。 |
| さて、ステージングに取り掛かりました。 |
| それが行うことの1つは、リポジトリを作成します。 |
| それは毎回それらを新鮮に作成します。 |
| つまり、ステートレスのような状態に保とうとしているようなものです。 |
| 仕方。さて、アーティファクトをダウンロードできます。 |
| そして今、私たちはこのパイプラインのデモを持っているはずです。 |
| そこに行けたらよかったのに。 |
| 何。 |
| Internet Explorerが起動しているのはなぜですか? これで、パイプラインのデモが表示されます |
| JMPアドインです。 |
| 解凍すれば。 |
| ご存じない方もいらっしゃると思いますが、JMPアドインは単なるzipファイルです。 |
| 今それを見ると、 |
| すべてのスクリプトが含まれ、fooがあり、バーがあります。 それらを開くと、 |
| 開いた、 |
| 暗号化されたファイルであることがわかります。 |
| つまり、これは基本的に私たちが顧客に提供できるものです |
| 機械的な仕事はそれほど多くありません。 ウェインはそれを述べました |
| 開発者の不満は少なく、個人的には控えめな表現だと思います。これを実行する前にこれを何度も繰り返すことは非常に苛立たしいことであり、これは多くの人を助けました。 |
| それ。 |
| ウェイン・レヴィン | さて、暗号化について、アドインを配信するとき |
| 社内のユーザーが使用する場合、セキュリティ上の理由などの理由から、通常は誰にもアクセスできないようにします。 |
| コードを処理します。 そういうことで、暗号化されていないコードを配信する可能性があるので、クライアントはコードを暗号化していますが、エンドユーザーに配信するには、通常、すべてを暗号化する必要があります。改ざんされる。 そのようなものの1つにすぎません。 |
| ヴィンス・ファラー | はい、これでデモは終了です。 ウェイン、まとめのためにそれを取り戻したい場合。 |
| ウェイン・レヴィン | ええ、素晴らしいです。 |
| 確かに、ありがとう、それをどうもありがとう、ヴィンス。 つまり、このシステム全体には多くの可動部分があるので、基本的には、私たちが持っていることを確認する必要があります。 |
| ご存知のように、コードは互いに衝突していない複数のユーザーによって開発されています。 同時にドキュメントを作成しています。 実際、ドキュメントはアプリケーションとともにデプロイされるため、それを織り込む必要はありません。 それは... |
| インフラストラクチャは、自動的に処理されるように設定されています。 これをコードとともに包括的に同時に更新できます。 |
| あなたがそうするなら。 進行中のHamcrestテスト、記述されている関数のそれぞれ、 |
| あなたがそうするならば、期待される結果があります。 それでそれらは比較されます、そしてそれで私達は簡単に、そこにその方程式にいくつかの問題があったと思います。 Rスクエア、または別の値で戻ってきたもの、 |
| つまり、ここで何かが正しくないということです。関数からのこの出力を期待していました |
| ユースケースの場合。 これは、クライアントから得られるものの1つです。ご存知のとおり、Hamcrestテストに変換されるユースケースのプールを構築し、離れて行きます。 ここに他のスライドがいくつかあります |
| スライドをダウンロードすると、いつでも、いつでも利用できます。 だから私はあなたのためにそれを利用できるようにしておきますそしてここにパイプラインの小さな写真があります |
| 私たちが採用していることと、開発者向けのコードレビューアクティビティについても少し説明します。 あなたがそれで行ったり来たりしたいなら。 ヴィンセント、コードのレビューと承認がどのように行われるかについて、ここに何か追加しますか? |
| ヴィンス・ファラー | ええ、マージリクエストの内部です |
| コードのdiffにJSLコードがあります。 そして再び、大きな |
| ありがとうございました |
| ハムクレストを行った人たちも、GitHubとGitLabがJSLを読み取れるようにするためのレクサー(?)を開始したため、実際にはこれはgetlabの内部にあります。 |
| また、JSLを読むこともできます。 それはそれを実行しませんが、それは素晴らしいフォーマットを持っています。 それはすべて白いテキストだけではありません、それはそこに美しいです。 私たちはただ入ります、 |
| このスクリーンショットのように、行をクリックし、必要なコメントを入力すると、レビュー可能なタスクになります。 そのため、GitLab内でできる限り多くのことを実行しようとしています |
| 透明性の理由から、そして |
| すべてが終了したら、うんと言うことができます。マージリクエストを実行する準備ができています。 それをマスターブランチ、メインブランチに入れましょう。 |
| ウェイン・レヴィン | 素晴らしい。 ですから、あなたは本当にそうです...それは助けになります、あなたが知っている、私たちは本当にコーディング標準を定義しています、そしてあなたがそうするなら、そして |
| 私はエンフォースメントという言葉が好きではありませんが、それはそれが意味するものです。 そしてそれは変動を減らします。 複数の開発者が理解しやすくなります。 |
| 他の人がしたこと。 そして、私たちが新しい開発者を参加させると、彼らは標準を理解するようになり、何を探すべきかを知って、何をすべきかを知っています。 |
| つまり、オンボーディングがはるかに簡単になり、ここでもすべてがここに添付されているので、サポート性などがわかります。 |
| これは先に述べたスライドですが、一部のリソースについてのみ、GitLabを使用しています。 GitHubやあなたが持っているもののように、一般的にどのgitにも同じ原則が適用されると思います。 ハムクレストのコミュニティリンクは次のとおりです。 で話がありました |
| ツーソンでは、それは私たちが旅行して集まっていた昔の2019年でした。 とても楽しかったです。 そして、これがビジュアルのマーケットプレイスリンクです...ビジュアルコードスタジオ。 |
| Visual Studio Code、何がありますか。 |
| したがって、Vinceが言ったように、すべてが統合されているという理由だけで組み込みのJMPエディターを使用するのではなく、そのエディターを多用します。 それは... |
| これは、すべて1つの大きなアプリケーション開発環境の一部にすぎません。 それでは、Vinceと私は、Vinceと私を代表して、これに関心をお寄せいただきありがとうございます。また、JMPチームにも本当に感謝したいと思います。 ジャスティン・チルトンとその会社、 |
| 声をかけます。 ハムクレストがいなければ、私たちはこれに参加しません。 あれは |
| 欠けている部分、またはJSL開発を実際に行うことを可能にした部分でした。 |
| 基本的に、一般的に業界でコード開発に期待される種類の標準。 だから私たちは本当に感謝しています、そして私は私たちを知っています... |
| ご存知のとおり、これはデプロイした各アプリケーションで伝播されます。 そしてこの時点で、ヴィンスと私はどんな質問でも喜んで受けます... |
| info@predictum.comに転送され、折り返しご連絡いたします。 ただし、この時点で、Q&Aに公開します。 |