TECH |
Engadget Japanese |
Spotify、人気プレイリスト「Release Reader」を広告スポンサーに開放 |
https://japanese.engadget.com/spotify-release-reader-ads-113002857.html
|
releasereader |
2021-09-09 11:30:02 |
ROBOT |
ロボスタ |
JKK東京×群馬大学 ヤマト運輸が外出を支援する生活関連サービスや神奈中と連携 自動運転車両で高齢者の外出を支援 |
https://robotstart.info/2021/09/09/barrierfree-of-distance.html
|
住宅供給公社 |
2021-09-09 11:43:39 |
IT |
ITmedia 総合記事一覧 |
[ITmedia News] Oracle、自社IaaSのオンライン講義を無償提供 日本語含む13言語で |
https://www.itmedia.co.jp/news/articles/2109/09/news170.html
|
cloud |
2021-09-09 20:03:00 |
python |
Pythonタグが付けられた新着投稿 - Qiita |
本:問題解決のPythonプログラミング |
https://qiita.com/www_y118/items/4ed3fea26cdf41a789c5
|
計算量が指数的ONに増えるのでNぐらいが限界だが、bitの勉強にもなるのでコスパよし問題atcoderからお借りしますこちらを参考にしました方針入力された数字sとsの間lensと考えるsの間をbit探索してならだと何も入れない。 |
2021-09-09 20:38:58 |
python |
Pythonタグが付けられた新着投稿 - Qiita |
Optiver Realized Volatility Prediction 簡単なコンペ詳細とEDA |
https://qiita.com/hannnari0918/items/7c38f35d20c96691bc13
|
なので今回のコンペでは株価市場についてのコンペになります。 |
2021-09-09 20:38:08 |
python |
Pythonタグが付けられた新着投稿 - Qiita |
python(mapとlambda) |
https://qiita.com/sama1017/items/d1400520a0424a5b739a
|
map関数listmapcalcmap関数とlambdaの組み合わせlistmaplambdaxxgtgtgt今回は、mapとlambdaについて記事としてまとめた。 |
2021-09-09 20:37:22 |
python |
Pythonタグが付けられた新着投稿 - Qiita |
DjangoーCBVのソースコード分析してみる。 |
https://qiita.com/ugowutei0211/items/4717baeb202a96da64d8
|
CBVの根本的なところに入るための入口はどこにあるか、そしてどの流れでgetやpostを実行するのかを見てみましょう入口pathbooksviewsBooksasviewasviewを入り口とし、後ろのソースコードを追跡します。 |
2021-09-09 20:30:45 |
Program |
[全てのタグ]の新着質問一覧|teratail(テラテイル) |
Unityで作られた.exeファイルをMac用にビルドもしくは変換したい |
https://teratail.com/questions/358640?rss=all
|
Unityで作られたexeファイルをMac用にビルドもしくは変換したいUnityで作られたexeファイルをMac用にビルドもしくは変換したいUnityで製作されたexeファイル自作ではありませんをMac用にビルドまたは変換して動作させられるようにしたいのですが、Unityからファイルを読み込んで操作することができません。 |
2021-09-09 20:57:30 |
Program |
[全てのタグ]の新着質問一覧|teratail(テラテイル) |
UnityのSceneビューでマウスホイール視点ズームがうまくいきません |
https://teratail.com/questions/358639?rss=all
|
UnityのSceneビューでマウスホイール視点ズームがうまくいきませんfeafccdafabdgif少しわかりにくいのですが、添付のようにマウスホイールを軽く動かしただけで非常に大きくカメラがズームしてしまい、作業になりません。 |
2021-09-09 20:54:49 |
Program |
[全てのタグ]の新着質問一覧|teratail(テラテイル) |
rails diviseにてユーザー登録フォームが保存されない |
https://teratail.com/questions/358638?rss=all
|
deviseを用いてユーザー登録を実装していたところ、最初のうちは保存されていたのですがいつの間にか保存されなくなっていました。 |
2021-09-09 20:46:12 |
Program |
[全てのタグ]の新着質問一覧|teratail(テラテイル) |
aptでパッケージのインストールするディレクトリを指定できない |
https://teratail.com/questions/358637?rss=all
|
aptでパッケージのインストールするディレクトリを指定できないGooglenbspColab上でOCRの勉強のためtesseractで遊んでたのですが、翌日には使えなくなっているという現象になり、こちらの記事を参考にターゲットオプションを使って自分で作ったディレクトリにpipコマンドでpyocrをインストールすることはできました。 |
2021-09-09 20:41:07 |
Program |
[全てのタグ]の新着質問一覧|teratail(テラテイル) |
Python OpenCV matplotlib.pyplot 画像認識 モザイク |
https://teratail.com/questions/358636?rss=all
|
PythonOpenCVmatplotlibpyplot画像認識モザイク下記のコードで出るエラーが解決できません。 |
2021-09-09 20:39:31 |
Program |
[全てのタグ]の新着質問一覧|teratail(テラテイル) |
リンクとリストの位置がずれてしまって困っています。 |
https://teratail.com/questions/358635?rss=all
|
リンクとリストの位置がずれてしまって困っています。 |
2021-09-09 20:39:30 |
Program |
[全てのタグ]の新着質問一覧|teratail(テラテイル) |
独自データで学習させたモデルを使用したい |
https://teratail.com/questions/358634?rss=all
|
独自データで学習させたモデルを使用したい前提・実現したいこと現在上記を、自分で学習させたモデルを使って実行しようと考えています。 |
2021-09-09 20:36:40 |
Program |
[全てのタグ]の新着質問一覧|teratail(テラテイル) |
削除したページのURLを開くと、ブログのトップページに飛びます。リダイレクトではなく、URLはそのままでトップページが表示されるのです。どうしたらいいですか。 |
https://teratail.com/questions/358633?rss=all
|
当初はdownloadnbspmanagerでPDFファイルのダウンロードボタンを作っていましたが、現在は削除していますdownloadnbspmanagerのプラグイン自体をアンインストールしていますですが、サーチコンソールで、そのときのダウンロードページが除外クロール済みnbspnbspインデックス未登録に上がってきます。 |
2021-09-09 20:34:22 |
Program |
[全てのタグ]の新着質問一覧|teratail(テラテイル) |
Uncaught ReferenceError: jQuery is not defined について |
https://teratail.com/questions/358632?rss=all
|
UncaughtReferenceErrorjQueryisnotdefinedについて前提・実現したいことUncaughtnbspReferenceErrornbspjQuerynbspisnbspnotnbspdefinedのエラーを解決したいです。 |
2021-09-09 20:16:27 |
Ruby |
Rubyタグが付けられた新着投稿 - Qiita |
Rails | バリデーション validates と validate の違い |
https://qiita.com/YUUKI-Git611/items/85c028f7ac098e9576fd
|
Railsバリデーションvalidatesとvalidateの違いモデルmodelにバリデーションを書く際に使い分けすることがあったのでメモ。 |
2021-09-09 20:36:53 |
Linux |
Ubuntuタグが付けられた新着投稿 - Qiita |
バックアップ用のWi-Fi-Ethernet中継機をRaspberryPiで作った話 |
https://qiita.com/cffnpwr/items/1b5ad5e809e363aed87a
|
|
2021-09-09 20:07:29 |
Ruby |
Railsタグが付けられた新着投稿 - Qiita |
Rails | バリデーション validates と validate の違い |
https://qiita.com/YUUKI-Git611/items/85c028f7ac098e9576fd
|
Railsバリデーションvalidatesとvalidateの違いモデルmodelにバリデーションを書く際に使い分けすることがあったのでメモ。 |
2021-09-09 20:36:53 |
海外TECH |
DEV Community |
Learning Python- Intermediate course: Day 23, IntVar() and Radio-buttons. |
https://dev.to/aatmaj/learning-python-intermediate-course-day-23-intvar-and-radio-buttons-164k
|
Learning Python Intermediate course Day IntVar and Radio buttons Today we will study radio buttons in TkinterToday we will create another simple program The layout will consist of one label and four radio buttons The user has to choose any one of the four buttons and choose the favorite programming language Intvar Before we start coding the program we need to understand what is Intvar Yesterday we saw that Boolean values are not directly supported in Tkinter We had originally written a function with Boolean values but then had to replace it We had to use something called as BooleanVar But what exactly was it Let s understand in depth today Tkinter widgets like buttons take input from the user This input must be processed by the program In order to do so they need to store the data into variables which can be accessed by other functions in the program But the problem with Tkinter is that Tkinter doesn t support our usual primitive data types It s not possible to hand over a regular Python variable to a widget as a variable So what do we do We pass an object which does this work These objects act as variables The only difference is that you need to use the get and set methods for operating on them To read the value of the variable use get To put the value into the variable use set There are four types of such Tkinter variable objects x StringVar Holds a string default value x IntVar Holds an integer default value x DoubleVar Holds a floating point integer default value x BooleanVar Holds a Boolean returns for False and for TrueThe command prompt example below will make things clear gt gt gt a IntVar You cannot declare a IntVar without importing TkinterTraceback most recent call last File lt stdin gt line in lt module gt NameError name IntVar is not defined gt gt gt from tkinter import gt gt gt a Intvar mind the Spelling Traceback most recent call last File lt stdin gt line in lt module gt NameError name Intvar is not defined gt gt gt a IntVar You cannot declare a IntVar before creating a Tk instance Traceback most recent call last File lt stdin gt line in lt module gt File C Users aatma AppData Local Programs Python Python lib tkinter init py line in init Variable init self master value name File C Users aatma AppData Local Programs Python Python lib tkinter init py line in init master get default root create variable File C Users aatma AppData Local Programs Python Python lib tkinter init py line in get default root raise RuntimeError f Too early to what no default root window RuntimeError Too early to create variable no default root window gt gt gt master Tk A blank Tkinter window opens gt gt gt a IntVar IntVar is a class and we are creating an instance of the class gt gt gt a set set the value of a to gt gt gt a get get return the value of a gt gt gt a Traceback most recent call last File lt stdin gt line in lt module gt TypeError unsupported operand type s for IntVar and int gt gt gt a get gt gt gt b BooleanVar gt gt gt b set True set b to True gt gt gt b get True gt gt gt c DoubleVar gt gt gt c get gt gt gt c set gt gt gt c get automatic float conversion gt gt gt a get c get type converts to floating point automatically when float and integer added gt gt gt d StringVar gt gt gt d set hello gt gt gt str c get d get the returned values can be used in operations hello gt gt gt a set b get true gt gt gt a get gt gt gt a set c get type conversion automatic gt gt gt a get gt gt gt a set floating points truncated gt gt gt a get gt gt gt a d gt gt gt a get hello Hope things are clearer now Once we cover object oriented programming we too will be creating objects like intvar and many more Exercise What went wrong in the example below gt gt gt a IntVar gt gt gt a gt gt gt a set Traceback most recent call last File lt stdin gt line in lt module gt AttributeError int object has no attribute set Answer The final program The final program is very easy to understand now that we have covered Intvar Majority of the steps are the same as yesterday with radio buttons replacing checkboxes So please study the program carefully and master Tkinter Radio buttons Comments are put wherever required from tkinter import master Tk master title RadioButton Demo master geometry x v IntVar v set initializing the choice i e no default choicelanguages Python Java Swift JavaScript making an array to choose the programming languages fromStringlbl My Favourite programming language is text to display in the labeldef showchoice function to display the result ResultLabel config text Stringlbl languages v get ResultLabel Label master text Stringlbl Make the label ResultLabel pack Set the radiobuttonsRadiobutton Radiobutton master text languages variable v command showchoice value Radiobutton Radiobutton master text languages variable v command showchoice value Radiobutton Radiobutton master text languages variable v command showchoice value Radiobutton Radiobutton master text languages variable v command showchoice value Radiobutton pack Radiobutton pack Radiobutton pack Radiobutton pack master mainloop Default value is not present If you wanted to have any default value the you need to set v to for Python etc while initializing and run the showchoice function once If you do not run the showchoice function then Python will be selected default but the label won t show the value Choosing only one among all So friends that was all for today Tomorrow we will see how to add color to our applications |
2021-09-09 11:48:29 |
海外TECH |
DEV Community |
23 Essential C# Interview Questions |
https://dev.to/hrishikesh1990/23-essential-c-interview-questions-5aoe
|
Essential C Interview QuestionsHello fellow developers I have compiled a list of essential C interview questions that I felt every developer should know Do drop your thoughts in the comments section below Also feel free to comment in case you find any content to be incorrect Is it possible to execute multiple catch blocks for the same exception No C throws a compile time error if multiple catch blocks are set up for the same exception However you can use multiple catch blocks for different exceptions inside a single try block Describe Serialization with an exampleSerialization is the process that enables C objects to be converted into a stream of bytes allowing them to be stored or sent across networks and applications The receiving application uses deserialization to extract the data for further use Due to this it is used widely in web services for transferring data between servers and clients The major disadvantage of serialization can be attributed to the resources used and data latency is a common issue faced Furthermore serialization is quite slow and XML a type of serialization isn t considered to be very secure using System using System Collections Generic using System Text using System Xml Serialization namespace DemoSerialization Serializable public class Employee public int empCode public string empName XmlAttribute empName public string EmpName get return empName set empName value What is this method of type conversion called Object obj int anum int obj As a reference type is being converted to a value type this type of conversion is called unboxing The process of doing the reverse is called boxing What are delegates and why do we need them A delegate is a type that refers to and holds the reference of a particular method These methods are associated when a delegate is instantiated Delegates are similar to function pointers in C however they are fully object oriented unlike C They are type safe pointers and are mainly used to pass methods as arguments to other methods and events handles The syntax of delegates is as follows delegate name instance name new delegate name calling method name What are Sealed and Partial classes Sealed Classes Sealed classes restrict users from using inheritance preventing the user from inheriting another class from it Sealed classes are defined using the sealed keyword Given the inheritance attribute has been taken away sealed classes work best when used with a class containing static members Syntax of Sealed class sealed class class name data members methods Partial Classes A partial class allows users to split the functionality of a class across the same file or even multiple files During compilation all instances are combined and treated as one Partial classes are defined using the partial keyword Splitting a class allows multiple developers to work with the same class simultaneously However keep in mind that if any instance of the class is declared sealed abstract or base the whole class is declared with the same type Syntax of Partial class public partial Clas name code How is the equals method different from the equality operator Although both the operator and the equals methods are used to compare two objects the logic they use are not the same The operator compares two objects based on their reference identity i e a boolean true would be returned if both objects refer to the same object However the equals method compares two objects based on their content Example Code using System namespace Comparision class ComparisonCode static void Main string args string name flexiple string myName name char values f l e x i p l e object myValues new string values Comparing a name and myName with and Equals Console WriteLine name myName Console WriteLine name Equals myName Comparing a name and myVame with and Equals Console WriteLine name myValues Console WriteLine name Equals myValues Console ReadKey Output True True False True What are Nullable types and what are they used for C throws a compilation error whenever variables are assigned as null The nullable type was a feature that was later introduced to allow users to assign null values to variables Nullable types are majorly used in database applications where tables need to be set to null or while representing undefined values The syntax to declare a nullable type is as follows Datatype variable name null Mention a few benefits of using generics Once defined a single generic type can be used in the same code for multiple purposes increasing reusability and reducing code redundancy Generics provide significantly better performance in comparison to normal system types by reducing the need for type conversion and typecasting of variables to objects Lastly generics provide better type safety Objects that are allowed to pass to a collection need to be defined while using a generic This ensures that only an object of a particular type is passed What are the different types of classes in C Classes are used widely while working with C It comes with different types of classes Static Class Static classes contain static members methods and constructors Static classes do not allow new objects to be created Static classes are sealed hence you cannot inherit a static class from another class Partial Class A partial class allows users to split the functionality of a class across the same file or even multiple files During compilation all instances are combined and treated as one Partial classes are defined using the partial keyword Splitting a class allows multiple developers to work with the same class simultaneously However keep in mind that if any instance of the class is declared sealed abstract or base the whole class is declared with the same type Abstract Class Abstract classes are restricted classes that cannot be used to create objects However an abstract class must contain at least one abstract method These methods do not have a body and are declared inside the class only The abstract keyword is used to define an abstract class The purpose of an abstract class is to provide a blueprint for derived classes and set some rules on what the derived classes must implement when they inherit an abstract class Sealed Class Sealed classes restrict users from using inheritance preventing the user from inheriting another class from it Sealed classes are defined using the sealed keyword Given the inheritance attribute has been taken away sealed classes work best when used with a class inheriting static members Which methods are used to add a new method to an existing one The extension method in C allows users to add new methods to an existing one The main advantage of using an extension method is that it adds new methods without using inheritance and does not modify the source code of the existing class The code to do the same is as follows using System namespace Extension class NewClass Method public void Method Console WriteLine Method namespace Extension static class NewExtention Method public static void Method this NewClass f Console WriteLine Method public class AllMethods Main Method public static void Main string args NewClass f new NewClass f Method f Method Write a code snippet that inherits properties from two different parent classesusing System using System Collections class ParentClass Providing the implementatio public void ParentMethod Creating ArrayList ArrayList My skills new ArrayList Adding elements in the My features ArrayList My skills Add C My skills Add Java Console WriteLine My skills are foreach var skills in My skills Console WriteLine skills Parent class class ParentClass ParentClass Providing the implementation of courses method public void projects Creating ArrayList ArrayList My projects new ArrayList Adding elements in the My features ArrayList My projects Add Reminder Bot My projects Add To Do App Console WriteLine nProject completed foreach var project in My projects Console WriteLine project Child classclass ChildClass ParentClass public class profile Main method static public void Main Creating object of Childclass class Childclass obj new Childclass obj skills obj project Describe early and late binding with an example Early Binding Early binding is when an object is assigned to an object variable during compile time The performance of early binding is much faster as the compiler already knows the methods and properties the object holds This also decreases the number of run time errors C program to show Early Bindingusing System class EarlyBinding public string name public string language public method public void details string name string language this name name this language language Console WriteLine name Console WriteLine language class DriverClass Main Method static void Main string args EarlyBinding e new EarlyBinding e details Eric English e mymethod Late Binding Contrary to early binding late binding is when the compiler does not know the properties an objects hold The type of the object is decided during run time based on the data it holds The performance of late binding is slower as it requires lookups during run time C program to show Late Bindingusing System class LateBinding static void Main Dynamic objects dynamic obj dynamic obj Display the type of objects Console WriteLine Type of the objects Console WriteLine obj GetType Console WriteLine obj GetType What does overloading a method mean and what are the different ways to do it Method overloading is the process of redefining a function one or more times with the same name to perform different operations based on the parameters Method overloading is a common way of implementing polymorphism C distingues the methods based on their signature Methods can be overloaded in the following ways Changing the number or order of the parameter ORUsing different data types Example using System class Overloading adding two integer values public int Sum int a int b int total a b return total adding three integer values public int Sum int a int b int c int total a b c return total Main Method public static void Main String args Creating Object Overloading ol new Overloading int total ol Sum Console WriteLine total int total ol Sum Console WriteLine sum Explain boxing and unboxing with an example Boxing The type conversion process of converting a value type to a reference type is called boxing i e int char etc to object Boxing is an implicit conversion process and the reference type is stored in heap int num Object Obj num Unboxing The process of doing the inverse i e converting a reference type into a value type is called unboxing Unboxing is an explicit conversion process and the value type is stored in a stack int num Object Obj num int i int Obj When are value types preferred over reference types and vice versa Value type variables are int char etc and they are usually performant They are preferred over reference types for their higher functionality and accuracy Reference type variables are used when memory management is a vital factor and while dealing with larger values What are runtime and compile time constants Compiler Time Constants These constants are compiled during compile time itself i e these are replaced by their values as soon as it is compiled Compiler time constants are faster than run time constants and if performance is of importance to you these constants are preferred Run Time Constants The value of these constants is only known or computed when the source code is run But once they are computed the values in these constants cannot be changed Because of this they are more flexible than compile time constants but this makes them slower Why are IDisposable interface used in C The IDisposable interface is used for the dispose methods This method is declared using the IDisposable interface to clean disposable objects and release unmanaged resources that the object contains These resources could be files streams database connections etc using System using System ComponentModel public class IDisposeExample public class Resources IDisposable private IntPtr handle private Component component new Component private bool disposed false public Resources IntPtr handle this handle handle public void Dispose Dispose true GC SuppressFinalize this protected virtual void Dispose bool disposing if this disposed if disposing component Dispose CloseHandle handle handle IntPtr Zero disposed true System Runtime InteropServices DllImport Kernel private extern static Boolean CloseHandle IntPtr handle Resources Dispose false public static void Main Insert code here to create and use the MyResource object Describe the concept of threads in C Also explain the different states A thread is a lightweight program that defines a unique flow of control for a program A thread cycle starts when an object of system threading class is created and the thread is given a state based on the execution flow of the program The execution time of each thread can be managed individually This ensures that two different threads do not overlap each other Furthermore resources are used efficiently and it prevents deadlocks Following are stated in a thread s lifecycle Aborted The thread is dead but not stoppedRunning The thread is executingStopped The thread has stopped an executionSuspended The thread has been suspendedUnstarted The thread is created but has not started execution yetWaitSleepJoin The thread calls sleep calls wait on another object and calls join on some other thread Use regular expressions to search for a string in C static void Main string args string languages “C “Python “Java foreach string s in languages if System Text RegularExpressions Regex IsMatch s “C Console WriteLine “Match found What is reflection Explain with an example The process of accessing the metadata of the methods types and fields in a code during runtime is called reflection The System Reflection method enables you to obtain this data C program to illustrate the use of Reflectionusing System using System Reflection namespace ReflectionExample class Reflection Main Method static void Main string args Initialise t as typeof string Type t typeof string Use Reflection to find about any sort of data related to t Console WriteLine First Name t FirstName Console WriteLine Last Name t LastName What is Singleton Design Patterns in C In the singleton design pattern a class is allowed only a single instance of itself and provides a global point of access to it There are multiple ways to implement a singleton pattern Singleton that isn t thread safepublic sealed class Singleton private Singleton private static Singleton n null public static Singleton n get if n null n new Singleton return n Thread safe Singletonpublic sealed class Singleton Singleton private static readonly object lock new object private static Singleton n null public static Singleton n get lock lock if n null n new Singleton return n Thread safe Singleton using double check lockingpublic sealed class Singleton Singleton private static readonly object lock new object private static Singleton n null public static Singleton n get if n null lock lock if n null n new Singleton return n What is the difference between Static class and Singleton instance Singleton classes can be initialized Static classes cannot be initialized Singleton classes can be extended whereas static classes cannot be extended When the program containing the class is loaded the compiler automatically loads the static classes this is not true for singleton classes What are the various types of serialization available in C Binary Serialization In this method the objects are converted into binary form Hence this is the fastest method and takes up the least space for storage SOAP In this method of serialization the objects are converted into a SOAP compliant envelope These envelopes can be used by any system that understands SOAP SOAP classes are stored in the System Runtime Serialization XML Serialization All the public properties are converted into an XML document This method of serialization is easily readable and can be manipulated into several other formats XML serialized classes are stored in the System sml Serialization |
2021-09-09 11:34:57 |
海外TECH |
DEV Community |
RxJS subscription management with Angular |
https://dev.to/j3nnning/rxjs-subscription-management-with-angular-54ek
|
RxJS subscription management with AngularSubscription of observables is the bread and butter of using RxJS With each subscription we create a Subscription and it is being held in memory If not handled the subscription will be kept in memory and potentially cause memory leak With this article I m going to cover the various methods to manage subscriptions and how to decide on which method to use RxJS subscription management is one of the common mistakes among developers partly due to the learning curve of RxJS partly the opaqueness of subscription yet it is essential to using RxJS effectively Put simply managing RxJS subscription is to know when to unsubscribe Anytime there is a subscribe developer should know or be aware of when it will be unsubscribed be it after nth emission or when the component has been destroyed I m going to cover ways we can use to manage our subscription and when to use them not including any external libraries plugins besides RxJS itself Namely async pipe first operator take operator takeWhile operator takeUntil operator and finally the unsubscribe call Which to use is dependent on the context ie is the piped function ie side effects complex How often or how long should the subscription be kept alive async pipeThe first method that we should always try to reach for is the async pipe method With async pipe we won t need to handle the unsubscribe manually both subscribe and unsubscribe will be handled for you in the Pipe It unsubscribes from the observable as soon as the component is destroyed Internally it also handles the change detection for you With async pipe there ll be a lot less code in your ts file Less code less bug async pipe used in app component html lt p gt data async lt p gt However there s one caveat with async pipe method it is that every time the UI re renders in Angular any async piped observable will trigger causing any functions operations or side effects in between to be triggered as many times as the UI re renders If you have an expensive operation in between the pipe it ll be heavy on the resources Keep this in mind and move the heavy operations to a different stream of observable and handle them in the component s class ts file Also async pipe is really only applicable when the data needs to be printed in template Still it should be the first method we reach for to manage observable subscription when the situation allows Reference AsyncPipe first operatorDespite the name the first operator is the second method we consider With first operator your observable subscription will be unsubscribed as soon as there s one emission that passes through We can pass in a function as our predicate validator to ensure that the one emission through this operator is the value that we want This is the operator to go for when we know very surely that we ll only need one emission from the subscription const data from without requirement unsubscribed with one emissiondata pipe first subscribe output with guard validator function ensures only truthy value can pass through will only unsubscribe after one truthy valuedata pipe first value gt value subscribe output Reference first take operatorSimilar to first operator take operator accepts a finite number of emission difference being that it can take more than one emission One other difference being first will emit an error if the stream completes before a value is emitted while take won t Use this operator when you know only a finite number of emission is needed You may also consider adding a filter operator to guard against the emissions to ensure that the nth number of emission that you get are of value to you const data of takes truthy valuedata pipe filter x gt x take subscribe output Reference take takeWhile operatortakeWhile operator will keep the subscription alive while a condition is true This operator will take in a predicate validator function to determine the condition to be true or false const data of take while value is less than data pipe takeWhile value gt value lt subscribe output It is not common to reach for this operator however there are certain situation that calls for it ie we want the subscription to stop as soon as a condition is fulfilled Another instance we want to remain subscribed as soon as we hover on an element and unsubscribe as soon as we leave Reference takeWhile takeUntil operatortakeUntil operator accepts an observable as its notifier that will tell it when to end the subscription When the notifier is passed in to takeUntil operator it will subscribe to that observable internally and as soon as there s one emit from the notifier it will unsubscribe from both the source and the notifier observable Do note that the notifier observable is unsubscribed by takeUntil internally hence it is unecessary to unsubscribe or complete the notifier observable if nothing else is subscribed to the notifier This operator is likely the most common operator that we ll use It none of the above mentioned operators worked for your situation then takeWhile will most likely be the one for the job It is most often used to keep a subscription alive until an event happened i e when a component is destroyed takeUntil to end subscription when component is destroyedclass AppComponent implements OnInit OnDestroy private readonly destroyed new Subject lt void gt ngOnInit const interval interval interval pipe tap val gt console log val takeUntil this destroyed subscribe ngOnDestroy this destroyed next When using takeUntil to end a subscription make sure that you place it last in the chain of operators to ensure that it covers all the streams in between This will prevent the subscription leak to streams that are after the takeUntil operator takeUntil subscription leakconst streamA interval const streamB interval const notifier new Subject streamA pipe takeUntil notifier switchMap gt streamB subscribe notifier next In the snippet above streamA would end after the notifier emitted but streamB would not end it s subscription would be kept alive and that is the takeUntil leak Reference takeUntil unsubscribe Finally we can simply call unsubscribe of a Subscription to end the subscription You ll have to first assign your subscription to a variable or a class property then call unsubscribe when it is time to end the subscription single subscription unsubscribe const interval interval const subscription interval subscribe subscription unsubscribe However because we ll have to assign each subscription to a variable it is a lot more work code to do and it is done very manually and imperatively compared to the few above mentioned methods It is especially so when there are more than one subscription batch subscriptions unsubscribe const subsciptions const interval interval const subscriptionA interval subscribe const subscriptionB interval subscribe subscriptions push subscriptionA subscriptions push subscriptionB subscriptions forEach subscription gt subscription unsubscribe Reference Subscription ConclusionSo I ve covered ways we can manage our RxJS subscriptions ordered according a heirarchy of decisions Learn them and decide for yourself which one is best suited to solve your problem in the context Worth mentioning there s a library named UntilDestroy that can help you unsubscribe from observables when the component is destroyed It s like takeUntil except you write less code That s all I have to share Happy coding |
2021-09-09 11:27:52 |
海外TECH |
DEV Community |
Why documentation is important |
https://dev.to/niklasbegley/why-documentation-is-important-55bp
|
Why documentation is importantMost software engineers know that they should write documentation But how many can articulate exactly why documentation is needed Let s look into some of the reasons Productive engineersThe lack of good documentation is often cited by engineers as one of the main reasons holding them back doing good work In of Google engineers cited bad docs as productivity issue and the StackOverflow survey found that poor documentation was the challenge at work for engineersEngineers are not cheap If you have engineers and you save them them hour each month because you have decent documentation covering your internal systems that translates into huge savings and a sizable productivity boost If your engineers are wasting time searching for answers to questions that have already been answered your velocity is going to suffer If however engineers document their work as they go a lot of these interruptions can be minimized Instead of asking coworkers for assistance just check the docs Need to setup a new development environment Just check the docs How do I deploy this project again Just check the docs Remote employees will thank youOver the past years thanks to the Covid pandemic evern more of us have had to become familiar with working remotely The importance of documentation is emphasized when you don t have coworkers around to answer questions when you get stuck Now you have to rely on asynchronous communication channels to get your answer You may send an email to that senior colleague but when will they respond Maybe they ll be online in Slack or are they on a different continent and fast asleep You may not get your answer for many hours and meanwhile you re stuck unable to make progres What s worse soon a significant portion of engineering time is spent in these communication channels coordinating work instead of in the editor Having high quality documentation allows your remote employees to help themselves to get the information they need without interrupting a colleague s workflow and stay productive Onboarding becomes a lot easierBringing on a new engineer is a big investment It often takes months for an engineer to ramp up and become productive in a new company every codebase is different and requires some getting used to During those months they will be asking a lot of questions and taking time from other engineers Having good documentation can help here Instead of having to sit down with other engineers all the time the new hires can read through the documentation and become familiar with the codebase and customs on their own Of course they won t be able to become productive on their own But you will be able to cut down their training time And your new hire will thank you because they can be self sufficient and don t have to feel like they are constantly interrupting their new colleagues to ask questions This is actually a great opportunity to test your documentation If a new hire can get started on a project on their own by reading the docs that s a great sign If not figure out what is missing and make the necessary changes Just don t make the new hire change the docs that s your job Stop the brain drainHave you ever been in a company with that one engineer who has been there forever The one that knows every single system inside out and people constantly come to them to ask about different parts of the codebase These types of engineers can be a liability The lottery factor also known as the bus factor refers to the number of team members you could lose before your business stops functioning Having critical information inside the heads of a small number of key people means that you are at risk of losing important institutional knowledge if they were to leave after winning the lottery getting a better job offer or simply deciding to retire By building a culture where information is written down and documented you maximize your lottery factor and stop the brain drain Encourage transparencyWriting in public encourages transparency It s empowering to be able to see what other teams are working on and break down silos in organizations Especially with remote teams where you can t have watercooler conversations writing things down is not only important but absolutely necessary Engineers can go and look at how other teams are solving problems and even suggest improvements It s a great way to share knowledge and make sure information doesn t get stuck It s cheaper than you d expectOne common complaint about documentation is that we don t have time to write things down or documentation isn t necessary These are similar objections to what automated testing encountered a decade or two ago Today testing is part of any project s definition of done Documentation does not take a lot of time if done incrementally throughout the software engineering lifecycle Similar to how taking a project with test coverage to gt is a huge effort if you start documenting a project with no existing documentation it can seem daunting But small incremental updates and refactors are a great return on time invested We ve written a post about how Google Twitter and Spotify built their documentation cultures if you re looking for tips on how to improve your organization s documentation Here are some quick ideas to get you started Use a docs as code approach to make it easier for developers to contribute documentationStart asking for documentation updates as part of code reviewCreate documentation days where the whole engineering teams focuses on docs to bootstrap yourprojects with bad docsProvide templates your teams can use as starting points to start documenting projects |
2021-09-09 11:23:37 |
海外TECH |
DEV Community |
DVC (Git For Data): A Complete Intro |
https://dev.to/hrittikhere/dvc-git-for-data-a-complete-intro-4626
|
DVC Git For Data A Complete IntroAs a data scientist or ML engineer have you ever faced the inconvenience of experimenting with the model When we train the model the model file is generated Now if you want to experiment with some different parameters or data generally people rename the existing model file and train the model again and this process goes on The final directory looks something as shown in the below figure The same thing goes with data as well Fig Typical models dir after experimentationBut if we talk about code we don t have this problem there because we have Git to version the code I mean that I can create a separate branch for changing some code to see its behaviour without altering the previous one What if we can get a Git kind of versioning control system for data and model Wouldn t that be amazing Here comes the DVC Data Version Control which exactly does the thing which solves this problem Although DVC is much more than just data and model versioning It also helps create end to end pipelines capturing metrics related to pipelines and experimenting with ML models But in this blog we will see the data versioning aspect of DVC Installing DVCDVC can be used as a typical Python library and can be installed using package managers like pip or conda To install DVC using pip you can execute below command in the python supported terminal pip install dvcTo install DVC using conda you need to execute below commands in conda terminal conda install c conda forge mamba installs much faster than conda mamba install c conda forge dvcApart from these conventional installation techniques DVC can be installed in other different ways too as described here on the official documentation website Getting StartedCode versioning is not really a new thing for us because we use Git in our daily life but the problem with Git is it becomes extremely slow when the tracking file size is huge as GB That is where DVC comes in Git tracks the changes in code whereas DVC tracks the changes in data as well as models The foundation of DVC consists of a few commands you can run along with Git to track large files directories or ML model files In short you can call DVC Git for data Let us understand data versioning by dvc using a simple demo project Let us assume that we want to create an end to end pipeline to prepare train and evaluate the MNIST dataset and we have code as well as data available and structured as shown in the below figure Fig MNIST pipeline file structure By observing the file structure we can see the MNIST dataset is stored in the data directory as a data xml file and the code corresponding to every stage of the pipeline is stored in the src directory Now as we understand the code tracking src is the responsibility of Git and the data tracking data is the responsibility of DVC Before we version the data we need to initialise the repository as a DVC repository Just like we run command git init to initialise the current directory as a Git repository we need to execute the below command which will initialise the current directory as a DVC repository dvc initThis command will create a new directory dvc just like git init creates git directory Two files gitignore and config will be generated in dvc directory Now we have successfully initialized this as DVC repository Start TrackingIn Git if we want it to track the changes in the code we run a git add command which adds the code changes in the local repository DVC has a similar command as shown below to start tracking the data files dvc add data data xmlNote here that a dvc add command accepts arguments which are data or model file names that you want DVC to track All the filenames must be space separated By executing this command DVC will create two files data data xml dvc and data gitignore File data gitignore looks something like this data xmlIt means that it forces Git not to track original data xml file which is expected because the tracking of data xml is now responsibility of DVC and not Git All files ending with extension dvc are special files which contains the information about where the actual data files will be stored and cached If you take a look at data data xml dvc it just stores an MD signature as shown below md acdccedcebdbNow looking at the complete picture Git will not track data data xml because it is added in data gitignore but Git will track data data xml dvc which will have information about where the actual data xml is stored Now the Git tracked files mentioned above will be stored in Git remote repository on Github BitBucket or Gitlab and DVC tracked data file will be stored in DVC remote repository on any file system that we are going to describe in next section Once we do this the directory structure for MNIST pipeline project looks something like this Fig File structure after dvc add Storing amp SharingThe actual data files which are not tracked by Git will be stored in any kind of file system which can also be called DVC repository File system for DVC repository can be AWS S bucket Google Drive Google storage bucket Azure storage Object Storage Service or any custom created file system Depending on where you will store the data you will need to install external dependencies like dvc s dvc azure dvc gdrive dvc gs dvc oss dvc ssh You can know more about installation here on the documentation website To push the data files in DVC repository first we need to configure the remote origin of the repository where the data will be stored We can do that using below commands dvc remote add d storage s mybucket dvcstore git add dvc config git commit m Configure remote storage dvc remote add command adds the remote origin of the DVC repository where the data will be stored Executing this command will actually add this origin information in dvc config file which Git tracks That is why we also need to commit the changes done in dvc config file as well Now adding the remote origin doesn t automatically push the data in DVC remote repository We can push the entire data file using below command dvc pushIt pushes all the data and model files on which dvc add command is applied RetrievingThere is a reason behind dvc remote add stores remote origin information in dvc config It does so because when next time somebody clones this Git repository It will not have any data It will only have MD signature of the data in corresponding dvc file and it will also have DVC remote repository location information stored in dvc config file So the complete data can be pulled using below command dvc pullIt pulls all the data and model files stored in DVC remote repository ML Pipeline amp VersioningWhile working with DVC we have to create two files dvc yaml which contains information about the stages the ML pipeline will have and params yaml which contains the parameters that different stages of the ML pipeline would use You can take a look at the structure of both files on the example repository DVC is so flexible that you can use command dvc exp run to run the complete pipeline with just single command The command is not only limited to this If you want to run your experiments with different parameters you can mention the values of the parameters which are defined in params yaml as shown below dvc exp run S prepare test split S train learning rate Note here that whenever you run the experiments using the above command DVC caches the output so well that it will only run those states which are affected by the parameters Moreover if you think one of the stages in the pipeline are too much time consuming and you want to checkpoint it so that in case the program crashes it can resume from where it crashed you can define checkpoint true in the output of that stage in dvc yaml file and it will keep checkpointing your results for you DVC keeps track of all the experiments that you perform and even you can see the history of the previously run experiments using dvc exp show It will show you all the previously run experiments You can filter this history as well For example dvc exp show include params train will only show you the past experiments where any of the parameters of train stage was changed Not just that but you can also see the difference between two experiments parameters and their resultant metrics as well using dvc exp diff exp dad exp df where exp dad and exp df are tags of two experiments as shown in history given by dvc exp show Moreover You can navigate to any previously run experiment using dvc exp apply For example if you run command dvc exp apply exp dad then the files will be changed as per the parameter changes specified in that particular experiment DVC gives us the flexibility to commit the experiment into a separate Git branch As shown in the below command using dvc exp branch command you can commit the experiment exp dad to separate branch my branch dvc exp branch exp dad my branchAlternatively you can also commit different experiments in different branches just by switching the branches as described below As we already understand switching between different versions of code by changing Git branch Similarly we can also change the version of the data as well git checkout experiment v dvc checkout data data xmlWe can observe that changing the version of data is now as simple as changing the Git branch Note here that to switch to another version of data we first need to switch to that particular Git branch where that version of data resides Also note here that you must apply dvc checkout to those files for which you want to switch the data version since git checkout only changes the code version How data versioning simplifies experimentation As described in the beginning of this blog we don t need to keep multiple copies of model files anymore and keep renaming them Now we can have single model file which can be versioned using DVC during experimentation Below image explains the same Fig Model versioning for experimentationLet us suppose we are working in Git branch v where the hyper parameter n estimators to train model has value and we have trained a model which is stored as model pkl Now we want to experiment with value for the same hyper parameter n estimators So we don t need to rename the old model file anymore We will switch to another Git branch v using git checkout v command and we will switch to different model file version using dvc checkout model pkl We will change the value of hyper parameter n estimators to now in code in v branch and we can train the model again The new model pkl file generated in v branch is corresponding to n estimators and model pkl file in v branch is corresponding to n estimators Although this is very small experiment but the same thing can be applied in complex experimentation process And with data versioning the experimentation process becomes very flexible We don t need to worry about tracking of data and model files Large datasets versioningWhen the dataset is too large we need very efficient mechanism in terms of space and performance to share different versions of data That is why it is suggested to store the data in shared volume or on an external system DVC supports both of these mechanisms as described below A shared cache can be setup to store version and access lot of data on a large shared volume efficiently As we described earlier the more advanced approach is to store and version the data directly into remote storage ex S bucket Google Drive GCP storage bucket etc You can look here to know more about how to configure external data storage for DVC ConclusionWith this I hope you were able to get a quick overview of how DVC does data versioning DVC also has features to streamline ML reproducibility and support cloud provisioning through cloud providers This would come in handy for the entire MLOps community as now they could interact with each other without worrying about monolithic tools If you like to know more about how to do it and get your hands dirty the documentations are a great way to start If you prefer videos then they have a youtube channel with detailed tutorials Happy Versioning |
2021-09-09 11:13:22 |
Apple |
AppleInsider - Frontpage News |
Apple may have solved bending batteries for the folding iPhone |
https://appleinsider.com/articles/21/09/09/apple-may-have-solved-bending-batteries-for-the-folding-iphone?utm_medium=rss
|
Apple may have solved bending batteries for the folding iPhoneApple is continuing to investigate ways that it can fill the entire volume of an iPhone and is researching batteries that can fill the gaps in flexible devices such as a future iPhone Fold Future folding iPhones may use flexible batteries Photo William Gallagher Apple devices are so dependent on batteries that the company is always investigating every possible option that can make them more powerful or in some way more useful A newly revealed patent application shows that the company is continuing to work on how to make a battery that can work in a folding device Read more |
2021-09-09 11:33:33 |
海外TECH |
Engadget |
The Morning After: Amazon's 'Just Walk Out' tech comes to Whole Foods |
https://www.engadget.com/the-morning-after-amazons-just-walk-out-tech-comes-to-whole-foods-111508062.html?src=rss
|
The Morning After Amazon x s x Just Walk Out x tech comes to Whole FoodsAmazon the owner of Whole Foods is finally bringing the sort of high tech features we were expecting to the nationwide grocery chain Its cashierless Just Walk Out tech will soon arrive in two Whole Foods locations after starting off in Amazon s own Go grocery stores Just Walk Out uses computer vision sensors and AI to let you walk into a store sign in with an app fill up your bags and leave without joining a checkout line or scanning your items I ve tested out the systems at my local Amazon Fresh and I ll begrudgingly admit it s magical It s not my go to grocery store so I usually only pick up an item or two I m mostly shopping there to see how everything works and what Amazon s brick and mortar stores were selling AmazonMultiple ameras in the ceiling monitor shoppers who check in with their Amazon account as they pass through turnstiles Shelves have sensors to detect when shoppers take items ーand it s all pretty amazing Except when it gets things wrong At one point I went in to grab a newspaper what I like the supplements and some milk Unfortunately it added a couple more items to my purchase and you re only informed of this when you re billed after leaving the store To Amazon s credit it was quick to refund me once I flagged the issue through the app It s early days for the tech which is predictably being refined as each shopper passes through its stores There s also something convenient about packing away your shopping as you browse I only saw staff monitoring check ins as most people were confused by the conceit of the place and filling shelves but unions have said Amazon s cashierless tech will cost workers jobs at some point The company says new Whole Foods locations will quot employ a comparable number of team members as existing Whole Foods stores of similar sizes quot This could be just the start Amazon signed a deal last year to license its technology to third party retailers so even if there s not a Whole Foods or Amazon Fresh or Go near you you might not need a check out ーMat SmithMicrosoft issues warning on Windows attack that uses malicious Office filesDon t open Office files unless it s from a source you fully trust Microsoft is warning that some attackers are actively exploiting a remote code execution vulnerability using malicious Office files It affects Windows Servers from version and Windows through What attackers are doing is sending potential victims an Office file and tricking them into opening it That file automatically opens Internet Explorer to load the bad actor s web page which has an ActiveX control that downloads malware to the victim s computer Microsoft says its Defender Antivirus and Defender for Endpoint can both detect the vulnerability and prevent infection so users need to keep them updated and running Continue reading LG claims its new display material is as hard as glassThe Real Folding Window was designed to prevent fold impressions too LG ChemLG Chem has designed a new type of cover window ーthat is the outermost pre installed part of displays protecting them from impact ーwhich it says is as hard as glass and has the capability to prevent fold impressions on the connecting part of a device That s the curse of any foldable devices once it s been folded and unfurled a few times The company calls the material Real Folding Window It s made of PET film with a new coating technology on both sides and it can be folded both outwards and inwards unlike existing foldable screen materials Continue reading The final Android beta is hereNext stop the official release Google has released the fifth and final beta for Pixel phones including the Pixel a and several third party devices giving you one more look before the finished version arrives The Material You design scheme remains the most conspicuous change in Android including an overall interface refresh more fluid animations as well as color themes that adapt to your wallpaper The completed software is due sometime in the quot weeks ahead quot Google said If history is any indication only Pixel owners will get Android first Continue reading DJI s new phone gimbal is also a selfie stickIt s also smaller than its predecessors DJIDJI s Osmo Mobile has an extending arm so you can use it as a selfie stick The new gimbal is palm sized when folded and is a third smaller than the last version The OM is available in two finishes Sunset White and Athens Gray starting today It costs and includes the magnetic clamp tripod wrist strap power cable and storage pouch Continue reading The biggest news stories you might have missedGOG s store adds six classic Star Trek gamesThe Gmail app will soon make voice and video callsGoogle Photos will deliver as many prints as you like to your homeFake pro China accounts tried to push Americans to attend anti racism protestsSenator Warren urges Amazon to tackle COVID misinformationNASA will finally launch the James Webb Space Telescope on December thLenovo s IdeaPad Slim Carbon is an ultralight laptop with an OLED display |
2021-09-09 11:15:08 |
海外TECH |
WIRED |
The Best Locks for Protecting Your Bike or Ebike |
https://www.wired.com/gallery/best-bike-locks
|
bicycle |
2021-09-09 12:00:00 |
海外TECH |
WIRED |
Dolphins Eavesdrop on Each Other to Avoid Awkward Run-Ins |
https://www.wired.com/story/dolphins-eavesdrop-on-each-other-to-avoid-awkward-run-ins
|
cetaceans |
2021-09-09 12:00:00 |
ニュース |
BBC News - Home |
Channel crossings: Migrant boats could be turned back in new UK move |
https://www.bbc.co.uk/news/uk-58495948?at_medium=RSS&at_campaign=KARANGA
|
international |
2021-09-09 11:48:47 |
ニュース |
BBC News - Home |
Long waits for ambulances continue in England |
https://www.bbc.co.uk/news/health-58499857?at_medium=RSS&at_campaign=KARANGA
|
englandit |
2021-09-09 11:04:17 |
ニュース |
BBC News - Home |
India cancel training after fresh Covid case among coaching staff |
https://www.bbc.co.uk/sport/cricket/58500916?at_medium=RSS&at_campaign=KARANGA
|
result |
2021-09-09 11:53:50 |
ニュース |
BBC News - Home |
Mills named in England's preliminary T20 World Cup squad |
https://www.bbc.co.uk/sport/cricket/58498271?at_medium=RSS&at_campaign=KARANGA
|
Mills named in England x s preliminary T World Cup squadSussex fast bowler Tymal Mills is named in England s preliminary T World Cup squad and returns to the international set up for the first time since February |
2021-09-09 11:01:05 |
ニュース |
BBC News - Home |
Covid: How is furlough changing and when will it end? |
https://www.bbc.co.uk/news/explainers-52135342?at_medium=RSS&at_campaign=KARANGA
|
final |
2021-09-09 11:23:06 |
ビジネス |
ダイヤモンド・オンライン - 新着記事 |
「Go To トラベル」関連銘柄を解説!「ワクチン・検査 パッケージ」の活用で行動制限が緩和されることを期 待して「Go To トラベル」が早期再開される流れに!? - 「お宝銘柄」発掘術! |
https://diamond.jp/articles/-/281818
|
新規感染者数が減少していることから「新型コロナウイルスの感染拡大はピークアウトしている」との見方も出てきています。 |
2021-09-09 20:15:00 |
ビジネス |
不景気.com |
ステムリムの21年7月期は5億円の最終赤字、減収と販管費増 - 不景気.com |
https://www.fukeiki.com/2021/09/stemrim-2021-loss.html
|
最終赤字 |
2021-09-09 11:01:37 |
LifeHuck |
ライフハッカー[日本版] |
タブ整理、メモ機能…知らないと損なChrome拡張機能5選 |
https://www.lifehacker.jp/2021/09/241883chrome-extension-matome.html
|
chrome |
2021-09-09 21:00:00 |
GCP |
Google Cloud Platform Japan 公式ブログ |
Google App Engine アプリのセキュリティを強化する新機能 |
https://cloud.google.com/blog/ja/products/serverless/app-engine-egress-controls-and-user-managed-service-accounts/
|
AppEngineの新しい下り外向き制御機能では、GoogleCloudVPCサービス、具体的にはこのサービスのサーバーレスVPCアクセス機能を活用しています。 |
2021-09-09 12:00:00 |
北海道 |
北海道新聞 |
北海道バス、札幌―北見1日4往復運行へ コロナ禍で初の新路線 |
https://www.hokkaido-np.co.jp/article/587546/
|
大阪府東大阪市 |
2021-09-09 20:10:00 |
北海道 |
北海道新聞 |
東京六大学野球、1週遅れで開幕 法大部員コロナ感染の影響 |
https://www.hokkaido-np.co.jp/article/587544/
|
東京六大学野球 |
2021-09-09 20:01:00 |
海外TECH |
reddit |
Update: Janene Hoskovec, The Coughing Karen, is out of a job. |
https://www.reddit.com/r/PublicFreakout/comments/pkvuft/update_janene_hoskovec_the_coughing_karen_is_out/
|
Update Janene Hoskovec The Coughing Karen is out of a job submitted by u Sniperfox to r PublicFreakout link comments |
2021-09-09 11:20:38 |
GCP |
Cloud Blog JA |
Google App Engine アプリのセキュリティを強化する新機能 |
https://cloud.google.com/blog/ja/products/serverless/app-engine-egress-controls-and-user-managed-service-accounts/
|
AppEngineの新しい下り外向き制御機能では、GoogleCloudVPCサービス、具体的にはこのサービスのサーバーレスVPCアクセス機能を活用しています。 |
2021-09-09 12:00:00 |
コメント
コメントを投稿