Thứ Năm, 29 tháng 3, 2018

Waching daily Mar 29 2018

I really do not feel like putting this up now but hi guys it's Keila (Kay-La) first of

all illness apologize because I'm probably gonna be sniffling in this

video I'm actually sick but I went to Costco and got a pretty good amount of

things so I wanted to show you guys so if you had any questions on what type of

things you want to get our Costco hopefully this will help first and

foremost

pick it up you can't go to Costco without getting some toilet paper just

honestly will last you for like six months next I'm frozen green beans

actually don't cook with green beans often that which is sad you but I really

do love green beans and the only reason I picked these up is because they didn't

have frozen broccoli so I definitely like to get um vegetables that are

frozen because I like fresh um vegetables but frozen is easy and you

always have them on deck so this is probably last me for a while can't go to

top without some eggs these are the organic eggs yeah we

some strawberries now I usually don't get fruit from Costco just because I

never eat all the fruit and half of it goes bad but I love strawberries and

they were actually a really good price so I think I'm gonna try to eat as much

as I can and whatever I don't eat I'm just gonna chop up and throw the freezer

next this is more stuff for my sister but I do indulge in these too

these aren't the nut bars we actually started opening them they have almond

cashews and walnuts in it with a cocoa drizzle and sea salt this is a great

replacement for a candy bar the total net carbs for one of these is seven that

carb so if you can fit it into your macros I would HIGHLY advise checking

these out I have a sweet tooth sometimes it's not that bad but every now and then

I want something that I can you know just grab and neither think about and

not cook anything so these are perfect they're amazing I'm telling you if you

can put these in your macros I'll make your life so much easier all right

next is some macadamia nuts my sister actually went to Hawaii a couple of

weeks ago and she brought back a whole bunch of macadamia nuts and I realized I

have a slight obsession for macadamia nuts I think I've got them earlier in my

ketogenic lifestyle and I really didn't like them because I got them like plain

it wasn't salted I like eating these without some of the Lily's chocolate and

it just tastes so good since they didn't have frozen broccoli I got some fresh

broccoli I love broccoli I rock and cheese with this I put it in casseroles

honestly broccoli is like my BFF just sauteing that up with some butter tips

and I got a big thing of spinach I love cooking spinach down a little bit of

butter also I'm going to be making a back spinach feta chicken cream sauce

thing I'll link it down below a lot of people have been commenting and I think

tried it and that they loved it and I forgot all about it so that's why I

picked up some spinach and that's why I picked up some cauliflower rice now I

usually don't get cauliflower rice from Costco because I feel like half of it

goes bad but I'm gonna use half of it now and I'm gonna try to freeze the

other half and see how that goes hopefully it works out can't go to

Costco without getting some bacon they know

this cut bacon so hopefully this cooks well I like

cooking a whole container in the oven it makes BLT wraps easy you know makes

my mornings easy right now I still have a package of pre-cooked bacon so I don't

use that yet I also got some cheese snacks I'm not sure what it's that's why

I got it this one organics doesn't you know what it was the same price but I'm

gonna go ahead and get this one so I'll probably eat this with like pepperonis

or lunch me or whatever I have one deck or fight so I'm gonna roll by itself

cheese person so you shouldn't have to have one so kind of neat or I like with

my flat crisp so we'll see I already have butter but I can't go to hospital

without getting some Kerrygold butter I've missed Kerrygold the last couple of

grocery shops I haven't gotten caracals because they either were out or the

store didn't carry it so I got my love back odd me next I got some some sheep

milk feta so I'm going to be like I said before with me making that spinach feta

cream sauce chicken thing so I needed to feta I'm gonna see how I can like cuz I

don't need all this but do you want to save it does anyone know how to like

preserve cheese can you put this in the freezer I don't know I'm gonna do some

research on it and we're almost at the end

laughs I got some organic ground beef now this is this is 85% lean and 15% fat

normally you'd want to go 84 or 80 for lean 24 fat but honestly

this doesn't mean well add a couple tablespoons of olive oil and you can add

your fat back in and then cop the whole time get shut up Chelsea okay and last

but not least I got some chicken thighs I went ahead and got the organic but

most skinless literally it was double the price of the other one that's almost

telling me Kayla don't get the organic because you ve eaten chicken a lot one

of these for sure I'm gonna be cooking up in the next day or two and the other

I'm just going to put in the freezer but yeah this is my grocery haul hopefully

got you guys liked it if you guys do you like these types of videos don't forget

to give this video a thumbs up comment down below the type of food that you get

at Costco because I'm always interested and actually watch a couple of videos

before I went to Pasco to remind me of some things to get and yeah I'll see you

guys in the next video bye put this up for me

I'll cook for you

For more infomation >> COSTCO KETO GROCERY HAUL FOR WEIGHT LOSS | KEILA KETO - Duration: 8:06.

-------------------------------------------

Henrikh Mkhitaryan nominated for Player of the Month award ● News Now ● #AFC - Duration: 1:29.

Armenia international Henrikh Mkhitaryan has been nominated for the Player of the Month

Award along with teammates Mesut Ozil, Aaron Ramsey and Granit Xhaka.

The voting is open on Arsenal's official website.

Mesut Ozil set up three goals this month, including two against AC Milan at San Siro

and his 50th Premier League assist during our win over Watford.

Henrikh Mkhitaryan certainly benefited from Ozil's fine form.

The Armenia international buried his through ball against Milan before scoring against

the Hornets the following weekend.

Aaron Ramsey continued his goalscoring form by netting the opener at San Siro before teeing

up Granit Xhaka's strike in the second leg win at Emirates Stadium.

In addition to his 25-yard drive, Xhaka also set up Pierre-Emerick Aubameyang's goal

against Brighton & Hove Albion, and produced a number of solid performances in central

midfield.

Henrikh Mkhitaryan was voted Player of the Month in February.

For more infomation >> Henrikh Mkhitaryan nominated for Player of the Month award ● News Now ● #AFC - Duration: 1:29.

-------------------------------------------

Mental Health and Addictions recommendations for Ontario - Duration: 10:56.

I'm pleased to be joined today by Susan Pigott. Susan is a trained nurse

and social worker and has worked in health and social services for over 35 years.

She was the vice president of communication and community engagement

at the Centre for Addiction and Mental Health where I work. And, recently she's been

the Chair of Ontario's Mental Health and Addictions Leadership Advisory Council.

She's quite active on boards of many community and arts organizations,

as a generally very active person, and things related to health and social services.

Welcome Susan.

Thanks Rob. Pleased to be here.

Susan, I'm wondering if you can start by talking a little bit about

why the Council was created and what its goal has been over the last few years.

Six years ago, the Ontario government,

specifically the Ministry of Health, developed a ten year mental health

and addictions strategy. And the first three years were led by the Ministry

of Children and Youth Services and focused mostly on services for young people.

Three years ago, the reins were handed over to the Ministry of Health

who decided that they would focus on the entire mental health and addictions system.

And the Minister of Health, Dr. Eric Hoskins, decided to set up

an advisory council to provide him with advice on how to build a robust mental health

and addictions service system. So that was our job.

The Council's latest and final report, or last report, is called "Realizing the vision."

Will you talk a little bit about what that vision is or was?

We worked for three years.

Every year, we would submit a report to the Minister of Health.

The last report, which was submitted this past November,

was really a culmination of all the work we've done.

In all our reports, we tried to bucket our advice into three areas.

Firstly, we talked about health promotion and prevention. And, our point was

that creating an environment in this province which promotes mental wellness

is the job of the entire government. It's well beyond the purview of just the Ministry of Health.

So we were very pleased about seven or eight months ago

when the Premier set up an inter-ministerial committee of cabinet on mental wellness.

So, this means that things like adequate income, gainful employment,

stable, adequate housing, all the things that we know are so important in promoting

mental wellness, and helping people who are ill recover, has got a champion at government.

So we had a number of recommendations for them.

We even developed a framework to help them organize the work that each ministry could do.

The other two buckets in our report were focused primarily on

the Ministry of Health and the Ministry of Children and Youth Services.

Because the sad fact is, as you well know Rob, there are hundreds of thousands of people,

adults and children, in this province, who are not well, and they're not receiving

the kind of services that they need.

So we talked about the kinds of things

that are needed over the longer term to transform the system. Among them,

making sure that in each LHIN, in each local health integrated area of the province,

there's a core basket of service, same in Sudbury as it is in the Sault as it is in Sarnia.

We talked about the need for a data strategy

so that we can measure the improvements that we're making as a system. We don't have one now.

We have random data collection. These two recommendations were frankly based on

the kind of recommendations that were made by Cancer Care Ontario in the early days,

maybe about 25-30 years ago, of the transformation of our cancer system.

And, it's worked. We have an excellent cancer care system.

We need to get our mental health service system there.

We also talked, in terms of systems transformation, about the need for funding reform.

The funding patterns of mental health and addictions services are kind of locked in time.

These are recommendations that are absolutely necessary for systems transformation

and we know they're going to take a few years to be implemented.

But, we're happy that as of 2016 the data strategy and the core services work has been started.

Finally, the last bucket were recommendations around critical gaps in service right now.

And, in this area, we have the need for structured psychotherapy, publicly funded.

These are things like mindfulness and cognitive behavioural therapy.

These are new therapies that are proven.

People want them, but they're not publicly available.

As of 2016, the government has started to implement, slowly, structured psychotherapy pilots.

We also talked, in the third report, as we did in the second one,

about the need for there to be easy access for young people to mental health services.

And, as you probably know, last year, the implementation of youth service hubs commenced

under the leadership of the Ministry of Health and the Ministry of Children and Youth Services.

So this is great and we want to make sure that that continues to happen.

We also identified the need for more supportive housing. This is a huge problem.

Each year, we chip away at it, but they're approximately 30,000 people who need supportive housing.

So those were some of the of critical service gaps that we made recommendations.

I have to say we don't know what's going to happen to our year 2017 recommendations

but the ones we made in 2016 have largely been acted on.

So that's very very positive.

Susan, you mentioned in the intro to the report that you had two reference panels.

Can you tell us a bit about those panels? Who they were

and how they contributed to the work and thinking of the Council?

We were determined that we were going to be informed by people

who had direct experience with the mental health and addictions service system,

both as patients or clients and as family members or caregivers.

So we set up two panels: twenty on each, people from across the province.

One were service users and the other were caregivers. These were people who received

some orientation and training. They, of course, come to the to the table with

their own experience but we made sure they understood the context

in which we were working and some of the policy considerations.They were paid for their contribution.

And, they were brought in about five times a year

in the second and third year to both provide us with input in terms of the issues

that we should be addressing and also to comment on our recommendations.

A lot of our recommendations actually grew out of our discussions with these two groups.

The whole thing worked extremely well.

The evaluation feedback from both panels was very positive.

And, I am convinced that this is the way that modern public policy should be done.

I think the days of having experts in the field just come up with public policy,

particularly with regard to healthcare matters, is gone.

I think we have to take our lead from the people

who actually have an intimate experience with the service system.

What's the biggest thing you learned in your work with the Council?

I learned that when there is an opportunity

provided by government for people who work in the field

both in the community and in the hospital sector to try and make a difference, people are,

by and large, able to put their self-interest of their organizations aside

and really work towards systems transformation. It was very heartening to see.

We didn't have much turnover on the Council and it was onerous.

We had working groups, people probably came to meetings at least 10 days or 12 days

each year, full days. And, when you're talking about people

who have full-time jobs on top of that, that's a lot. And people were very generous,

leaders in organizations, about putting the resources of their own

organizations at the service of the provincial government, which was another

very very pleasant surprise: how generous people were in that way. And I think it's

a real lesson to government that it's important for the civil service to work

with partners in the field because the partners are close to the ground and

they have the expertise that government often doesn't have and they're willing

to be collaborative. So it's an extra resource that I don't think governments make use of enough.

Now that the Council's over, do you have any thoughts, some hopes

or expectations about how the good work of the Council might be continued?

We did make a recommendation in our report

that there be an outside of government body created to be able to maintain a focus on

systems transformation. We aren't expecting necessarily something of the

magnitude of a Cancer Care Ontario but the need for an outside body to inform

and keep the mental health and addictions issues in high priority with

government has been identified, many times, by other groups, most recently the

Select Committee, back about eight years ago, and and we made the same recommendation.

So I'm hopeful that this may come about.

Thank you Susan, thank you for taking the time to talk to us today

and thank you for your leadership on the Mental Health and Addictions Leadership Council.

Thank you Rob, thanks for your interest.

For more infomation >> Mental Health and Addictions recommendations for Ontario - Duration: 10:56.

-------------------------------------------

Lullabies Lullaby For Babies To Go To Sleep Baby Songs Sleep Music Baby Sleeping Songs Bedtime Song - Duration: 51:06.

For more infomation >> Lullabies Lullaby For Babies To Go To Sleep Baby Songs Sleep Music Baby Sleeping Songs Bedtime Song - Duration: 51:06.

-------------------------------------------

Legal Action For Malicious Comments On Wanna One's Park Woo Jin And Lee Dae Hwi - Duration: 2:26.

Brand New Music Takes Legal Action For Malicious Comments On Wanna One's Park Woo Jin And Lee Dae Hwi

Brand New Music is the next agency to take legal action on malicious comments.

On March 28, the agency revealed that legal complaints have been submitted to the Seoul Central District Prosecutors Office regarding comments with personal insults and defamation of Wanna Ones Park Woo Jin And Lee Dae Hwi. Soompi. Display. News. English.

300x250. Mobile. English. 300x250. ATF. Brand New Music explained, There are many people who have been giving positive attention, but the judgment was made that the false information endlessly being spread online and offline harms the artists normal activities.

As a result, we decided to take strong action on those who have continuously left malicious comments for the protection of our artists..

Song Joon Yong, the lawyer in charge, shared that about 2,000 posts and comments were examined, and commenters who clearly damaged reputation with extreme contemptuous language or false information were specified.

The first complaints to be filed were on those who have continuously and repetitively left such malicious comments.

Brand New Music commented, As the severity of the malicious posts continuously increases, the artists and the fans who support them have received great pain, and concluded, We will continuously monitor and collect data for the protection of our artists, and we will do our best to protect our artists.

Previously in 2017, Brand New Music dropped their first lawsuit against malicious commenters of their artists. However, it was announced in January 2018 that the company was once again considering legal action due to the increasing severity.

For more infomation >> Legal Action For Malicious Comments On Wanna One's Park Woo Jin And Lee Dae Hwi - Duration: 2:26.

-------------------------------------------

Azure Container Instances for Multiplayer Gaming - Theater Presentation 1 - Duration: 17:11.

>> Hi. Hello, everybody.

My name is Brian Peek,

I'm a Cloud Developer Advocate on the Azure Team,

and I'm going to talk to you today about

Multiplayer Server Scaling using a bunch of

different Azure services like Container Instances,

Event Grid, and Azure Functions.

They'll see a name here, Dimitris Gkanatsios,

he wrote like 98 percent of

this, but he couldn't be here.

So, unfortunately you're all stuck with me.

But, it should still be a great session,

because we make sure that we give

due credit to Dimitris and

see that he did a lot of the work here.

So, the scenario that I want to talk about today

is creating stateful, isolated,

multiplayer services that are as lightweight as possible,

but that can be scaled on demand.

And then, thrown into bonus points here for

paying per second instead of paying per hour,

per month, or a flat rate,

and then being able to actually

scale that automatically So,

you're not having to monitor

CPU usage and whatnot on your own.

And for this, we're going to use

an open source game called OpenArena which is

actually based on the Quake engine

that is open source a billion years ago.

So, if you actually want to try the demo later,

we're actually going to spend

up an instance and use it now.

You could download this on your device.

There's three different links there if you're

on iOS, you have to pay for it.

But, we'll run it from here and you'll be able to see us

connect to the backend of that service inside of Azure.

So, there's five pieces of Azure we're going to use here.

We're going to talk about

Docker, Azure Container Instances,

Azure Storage, specifically,

File Share and Table Storage,

Azure Functions, and Event Grid.

Those are the five things that make up this demo.

So, Docker, if you haven't heard of Docker,

it's the hotness right now, everybody loves Docker.

You can sort of think of it as a lightweight VM,

but it is in no way an actual virtual machine.

The only things that get

virtualize are the parts of your application,

not the operating system.

So, if you look at the difference of

the two diagrams on the right,

you can see your application in binaries or in

a container and they live their virtual lives by Docker,

and your host or operating system isn't touched.

Whereas, in their traditional VM scenario,

your application, all your binaries,

and everything that support your app,

as well as an entire guest

operating system are required to be virtualize.

So, Docker allows you to have really lightweight images.

In fact, our Docker images,

just under 10 megabytes to run our server multiplayer.

So, they spin up within seconds

instead of within minutes.

Azure Container Instances,

which is actually in preview right now,

it will be live.

It's a live now but it will be out of

preview really, really, really soon.

This is what allows you to run Docker containers on

Azure, just with a single command.

You can run it from the command line, from the portal.

They scale on demand,

you pay by the second,

so you only pay for what you use.

What's really super cool about this is you don't

need to manage an underlying machine,

a physical machine or a virtual machine.

So, you spin up your Docker image,

people play for free minutes.

You pay for three minutes worth of usage.

And you never have to worry about patching,

upgrading, maintenance or anything

else on the underlying machine.

It's all managed for you.

All this does is just run Docker instances.

For storage. we're going to talk

about File and Table Storage,

and I'll get into the details of

those two things as we go through.

Azure functions, these are server lists.

Everyone keeps talking about server lists,

that's the other new hotness these days.

Basically, this means that you can write code,

you don't need to set up an app service,

you don't need to set up a server,

a virtual machine or anything.

You just write the code and you pay per execution.

So, if you run this function,

that's going to create and

spin up in an Azure Container Instance.

If you run it 500 times in a month,

you pay for 500 executions.

That's all you pay for, you don't pay for the service,

there's no patching, there's no anything.

It's just the function. We're going to talk about HTTP,

Timer and Event Grid triggered functions.

There are other types of triggers that you can use.

Those are the three that we need for this.

And then finally, there's something called

Azure Event Grid.

This is one of

the several things that we have on Earth to

manage events inside of Azure.

For this one, the thing,

the key to remember for this one is,

this is the service that will let you

know when something in Azure has occurred.

So, if you spin up one of

these container instances, when it's done,

Azure Event Grid will call

a function to let you know, yep,

that's complete, you can now

continue on with the next part of the process.

So, it just it lets you know

when something happens in Azure.

So, the basic architecture here is,

we're going to use Azure Container Instances

to run our OpenArena Docker image.

We didn't change any source code.

We're actually using the Linux binary

of OpenArena to run this demo.

What we added was a standard output

and a standard error handler.

We started from the command line and shove all output on

the command line to this file or this script,

so we know when players connect and disconnect.

And the point here is we didn't want to have

to go in and modify the source code.

The point is you can take

your already existing multiplayer backend and

probably get it running on this

without having to change anything.

File Share, we use, because while OpenArena itself,

the binary is pretty small.

There's about 450 megabytes

of assets that go along with it.

We don't need or want to spin that

up with our container instance every time,

those are static, they never change, they're read only.

So, we store all of the files

that are assets on a file share,

the container instance only contains

the binary of the OpenArena server,

and we map that file share into that Docker instance,

so it knows how to find all the files.

But, as Docker works,

you have to download the image from a container registry.

If that's 450 megs, you have to download every time,

it's going to take far longer than

just the 10 megabytes that we

have to download for the binaries.

Azure Functions is used.

This is a set of functions we wrote that allow you to

manage all the container instances

and I'll show you what those are in a moment.

Event Grid lets us know when

instances spin up or get deleted.

And Table Storage we use in order to

just create a list of all the running instances,

their IP addresses, which ports they have open,

just the detailed information we need to run the service.

So, in terms of the functions,

I'm not going to read all of these,

but it's the basic stuff you'd expect.

You have a function that create an instance,

one to delete that instance,

one to list all the instances.The ones that

we're going to talk about more in

detail is the AutoScaler.

What we have now is just an experimental one,

but we're going to show you how you can customize it.

The states of the container instances as we

bring to them is that they start out on a creating state,

Event Grid let us know it's done,

so it gets set to running.

When it's running, now people can

connect to that backend and start playing the game.

When we decide that we've got,

say 20 instances running,

and we don't need that many.

The AutoScaler runs every few minutes and says,

"Hey, can we shut some of these down?"

When it did, we realizes it can,

it will set the instances marked for deletion.

They don't want to delete it, because there might still

be people playing on that instance.

We have a function called AGIGC.

It's a garbage collector that

also runs every few minutes.

Looking for things that are marked for

deletion that have zero players.

And when those two parameters are met,

it will call ACI delete in order to actually

delete the container instance and

you're no longer paying for it anymore.

You're only paying for the ones that are still running.

And of course, we can wind up in a failed state.

Anything can transition to a failed state.

In terms of scaling, we have

a really simple AutoScaler that

we wrote specific for OpenArena.

In essence, by default,

it runs every every one minute.

If the load is over 80 percent,

and we haven't maximized,

we haven't created the maximum number of

instances that we support, we'll spin up another one.

When the load is less than 60 percent and were

greater than the minimum number of

instances that we can create,

we will set the status MarkedForDeletion.

Again, we don't delete it.

We set it for MarkedForDeletion and

the garbage collector will come in

and delete that for us every few minutes.

There's a cooldown period of 10 minutes,

so you don't wind up with stuff scaling

up and scaling down over,

and over, and over again, that's

just a nice little pause in there.

And all the stuff is configurable from

environment variables in Azure functions.

The other nice part is you can just

download this project,

deploy it to Azure, and you could

rewrite your own ACIAutoScaler.

So, maybe in your game, you want

to base it on number of players.

Maybe, you want to base it on some other parameter

when all the people have left the lobby,

you don't want to run this instance anymore.

You can just write your own for

whatever makes sense for you again.

So, does the visual representation

of what happens at the beginning,

no containers exist, ACICreate is called,

we've got to create the first one.

When it's complete, it goes,

you'll see from creating to running,

and we get an IP address.

A bunch of users might connect to Group 1.

AutoScaler runs it and says, "Hey,

we actually need more instances,

we're about to run out of slots."

It'll spin up a second instance.

It'll go from creating to running,

more people might connect to that second group instance,

and then eventually people will stop playing.

So, the active sections might go down

to just one person on that second container group.

AutoScaler runs and sees

that we're below that threshold again,

it'll mark it for deletion, but it won't delete it.

Once all the users have disconnected

from that second container instance,

when the garbage collector runs and sees that,

it will actually delete the final instance,

and now you're back to paying for

just a single Azure container instance.

So, let's see it all on a demo here.

What I have here

is just we created a simple Web portal that

shows all of the containers that are

running and I currently have just a

single one running right now.

And if I startup, OpenArena and I go to "Multiplayer".

I can specify an IP address, 13.91.42.19.

And if anyone else connects to that machine,

you would actually be playing against me right now,

but I am probably alone.

Yup. It's just me. So, I am

now connected to that Azure container instance.

If I come back over to my Web portal and refresh,

you'll see my sessions went up to one.

I'm the only person that's playing that right now.

And that was determined again from that where we

capture the standard output from

the command line of the server we know that I connected.

So, I'm going to cheat here since no one else is playing.

I'm going to change my hook.

So, this is a tool called Azure Storage Explorer

that allows you to view Azure tables,

which is where we store the detail.

You can see this is my one container instance.

It has one active session.

If I can blow that up a little bit.

So, I'm going to use on a cheat and I'm going to

change "ActiveSessions" to "10".

We're going to pretend that 10 people

just connected and are playing this game right now.

And if I refresh, you'll see there's 10 instances.

I'm going to run over to the Azure portal.

And go to the Azure Functions Interface here.

This is my Azure function's project

where all of my functions live.

And I'm going to manually run that Autoscale.

I decided to disable because in a demo,

I don't want it spinning stuff up

when I'm not expecting it to.

So, I'll go to my "ACIAutoScaler".

And what's great about functions is you can actually just

trigger these right from the portal,

and get debug output, and debug them

right inside the portal.

This is a Node.js trigger. We just ran it.

For within the cool down period and you'll see us in a

second here that we have decided

that we don't need to scale in,

but we do need to scale out.

Scale out is set to true,

which means we need to create another instance.

Now, if we go back to our store

to explore and we refresh,

which I've made too big, so I can't find it. There we go.

We should now see there is

a second Azure Container Instance

that was already spun out by that AutoScaler.

And you'll note that the state is set to "Creating".

And then, grid will let us know when it's done creating,

it'll call our ACI Monitor Function and then all

that does is just set that state

from "Running" to "Creating".

So, if we refresh over here in our Web Interface,

you won't see the server

yet because it's still in "Creating" mode.

We can't connect too. We don't have an IP address.

So, this will take maybe 30 or 45 seconds.

It actually spends up a lot quicker.

It's slower for an event grid to

let us know that it's done than it is for

the actual Azure Container Instance to

be created. And let me show you.

Since all these things are Azure Functions,

they're just end points,

so you can hit them with something like postman.

So, I'll show you if we can go to "ACIDetails" here.

Postman has locked up on me.

That's fantastic. Did it come back?

There we go. "ACIDetails". In the body,

it wants to know the

"ContainerGroup" and the "ContainerName".

We'll hit "Send" to upload that.

And one of the things we do with this method is we

just spit out everything that comes

out of standard out and standard error.

So, we can actually see like did

the server fail on creation,

where did it fail, and be able to debug that more easily.

Let's go back over here.

Refresh one more time. It should be done by now.

Yup. So, we're running. We have

a new IP address of our second server.

You'll see that over here on the website.

So, if I go restart OpenArena,

I mean, I can just leave the Arena here.

I can now connect to 13.91.92.244.

So that takes a few seconds for

the port mapping to actually light up unfortunately.

And I hate OpenArena in

"Windowed" mode because it steals

the mouse cursor and I can't move the stupid Window.

Let's fight with a mouse cursor.

That would start in the same spot every time.

All right. Back to here. We've have our IP address.

Let's try one more time here. Specify 13.91.92.244.

There we go. So, now,

we're playing on the second instance.

If I come back to here and I refresh,

you'll see this one actually timed out.

OpenArena will only allow

matches that are about 10 minutes or so.

So, it kicks everybody off once the game is over.

And so, our side of sessions went down to zero.

However, in our second instance,

you can see that there is one.

So, I will cheat.

Actually, I don't need to cheat again because

we only have one session.

If I come back over to the portal and I run my ACI.

I'll clear the log here.

I'll run that same AutoScaler method again.

And if the demo gods are happy with me,

we should see that this will run.

And you'll see "ScaleIn" is equal to "True",

"ScaleOut" as "False", which

means we need to delete that one instance.

And this is pretty instantaneous.

If we go back to "Storage Explorer",

you'll see that this is immediately

marked for deletion and it's actually the first one,

not the second one because there's still

a player that's on that second one.

And then, again, I will manually, this will

normally be running every few minutes,

I'll manually run the garbage collector, "ACIGC".

Now, if we run this,

it actually happened probably that quickly.

And if I refresh over here,

you should see that instance is now gone.

So while I manually ran

the Scaler and manually run the garbage collector,

those would be on timers that would run every minute,

every five minutes, whatever makes sense for your game.

And those things would scale up and down automatically.

So, that's it. That's about

the 20 minutes that I have for.

I got time for some questions,

but these links have some great information.

The first one is the link to this actual project.

You can actually single click "Deploy this to Azure".

There's a nice big blue "Deploy to Azure" button.

If you have an Azure account, it will ask you for what do

you want a name this Resource Group,

what do you want to name the Function.

You press that, it will actually deploy

all of this stuff for you.

And if you go to the "Demos Markdown" file,

it will also tell you how to set

up Azure or the OpenArena demo.

We also have a demo for a game,

an open source game called Teeworlds.

And both of these again ran without

any changes at all and the binary's on the server.

All we had to do was know when players can

to disconnect if we could do from the standard out.

Also, back on the slide,

the next four links are

for the documentation pages

for Container Instances of Entry,

and Functions, and Storage.

And the final one is kind of just our portal

for other game dev topics as they relate to Azure.

We have some Unity SDKs up there.

Someone realist SDK samples with unreal in Unity.

And the final one is our Azure Gaming Portal

where we're streaming all this stuff live.

So, you can connect to that and

then have some sort of inception thing

right now if you really wanted to.

That is my demo. I welcome any questions if you have

any. All that makes sense?

Fantastic. Thank you for coming.

I'll be doing this again tomorrow at 5:30 if you really,

really enjoyed it and want to watch it again. Bye.

For more infomation >> Azure Container Instances for Multiplayer Gaming - Theater Presentation 1 - Duration: 17:11.

-------------------------------------------

시어머니께 배운 편리한 다진마늘 냉동 보관방법 ► Skills for Life ► https://goo.gl/3ZQLoQ - Duration: 3:10.

For more infomation >> 시어머니께 배운 편리한 다진마늘 냉동 보관방법 ► Skills for Life ► https://goo.gl/3ZQLoQ - Duration: 3:10.

-------------------------------------------

You Have Left All for Jesus Now What? - Duration: 14:16.

For more infomation >> You Have Left All for Jesus Now What? - Duration: 14:16.

-------------------------------------------

Git with Unity for Game Development - Duration: 22:36.

>> Hello. Thanks for coming out today.

My name is Edward Thompson.

I'm a program manager at Microsoft.

I work on Git and version control, primarily,

and I'm really excited to be here at GDC.

I'm really fortunate.

A lot of people were really sort of jealous about

the GDC trip because

we've got a lot of people on the VSTS team,

Visual Studio Team Services,

that's the product that I actually work on.

A lot of them came up through gaming backgrounds, right?

So we've got people who worked on Xbox or Xbox games.

We've got people who write games in their spare time and,

of course, we've got a ton of people who

just play games, right?

They're hardcore gamers at home.

And then there's me who doesn't do any of that.

So, it's kind of a trip

to actually be invited and so I had

to understand what's going on in the game world.

And so I dove in and got

my feet wet with Unity and I came at it

from a version control background

and I started thinking about

how I would use Unity as

somebody building version control systems.

And so I wanted to talk a little bit

about some of the things that

I came up with while I was working through Unity.

So, I think the first obvious question is,

why should you use Git if you're using Unity?

Because there are a lot of different options

for Team collaboration with Unity.

They've got their own tools,

but I think it still makes a lot of sense to

use a proper version control system, right?

And you know there are lies,

there are damn lies and then there are statistics,

but these are statistics from

Stack Overflow and it shows

how incredibly popular Git is.

So, it's a powerful version control system.

It's very powerful and

it's incredibly commonly used throughout the industry.

So, if you're a shop that does more than just Unity,

I think it makes a lot of sense

to start thinking about Git.

If you're a shop that wants

to collaborate with outside teams I think it

makes a lot of sense to use Git because Git is

the defacto standard when

it comes to source code management.

So it's incredibly popular and there are a number of

tools already that support it.

So, you can grab whatever

your favorite version control system tools are.

You can use gmaster or Sourcetree.

You can use GitKraken or tower.

There's all sorts of tools just on

the client side alone that you can use.

And then in the server side, of course,

you've got GitHub, Visual Studio Team Services,

you've got all these really cool ways

to manage your source code.

The problem is that Unity

was built before the advent of Git,

before the explosion of its popularity,

and so there are a couple of things that you

need to be aware

of if you're going to want to put your version control,

put your games, your Unity games into Git.

The first thing that you really need

to be aware of is that you

totally need what's called a Git ignore file.

Now, Git ignore is a bit of

metadata for your git repository.

What it does is it tells Git

the files that it shouldn't care about,

that it should well, ignore.

The idea being that,

if you do a build,

you don't want your build output

to actually end up in version control, right?

You want your source,

you want your assets in version control,

yes, but you want

your builds to not be in version control.

You want to produce those every time from source.

So you want to make sure that that gets excluded.

You also need to be

aware that Unity has a Cache Directory,

that it dynamically recreates

and that also shouldn't be checked into version control.

So, this actually tripped me

up right away when I started playing with Unity.

I had excluded my binaries,

I had excluded the temporary

folder because that's really obvious,

I'm looking and there's a folder

called Temp and I'm like, "Okay,

no problem" but what I didn't catch was that there's

this folder called Library and

that's where some Cache data gets stored.

And this is actually the Unity web page.

This is their documentation.

That's how I finally figured out what I

was doing wrong. Let me zoom in on that.

So, the Library folder should not

be included in version control.

That's right from their website.

So, what does this look like if we want

to exclude these changes from Git?

So, we can create a Git ignore file

and we can put the Library folder,

we can put the Temp folder or we can not worry about it.

Which is what I actually

should have done in the first place,

and we can actually go online and get

a Git ignore file that is customized for us,

that I don't have to worry about.

This has been crowd sourced

from the community and it's all on GitHub.

So it takes poll requests and so you can go to

github.com/github/gitignore and you can

download the free package to

Git ignore files for whatever project you're building.

So, in this case, I'm building Unity.

I can go grab the Unity Git ignore,

but they are there for C sharp,

they are there for Java projects, they're there for,

whatever sort of application you're

building you can just

grab that Git ignore right from GitHub.

You don't have to worry about getting it right yourself.

Once I was able to go grab that, I was much happier.

The even easier solution is

to not even worry about getting it from

GitHub because almost all of

the Git hosting providers

when you create a new repository, will give you this.

Visual Studio will also,

when you're creating a new repository

will give you the Git ignore

file that's appropriate for

the kind of project that you're building.

So, in this case, I'm hosting

my repository in Visual Studio Team Services,

again, GitHub has the same sort of option.

Let's take a look at that.

So here this is Visual Studio Team Services and right now

I've got a game that I built already,

but I want to create a new repository

to hold my new Unity Project.

So, what I'm going to do is I'm going to pop up

here to the new repository drop down.

I'm going to give it a cool name

and it's an awesome game with an awesome name.

And now I've got this dropped down,

my gitignore drop down.

And you can see that there's a bunch of

types of projects there already.

I can just scroll through and select

the type of project that I'm building.

Again, this is a Unity project,

so I'm just going to start typing Unity.

And I'm going to select it from

the drop down and when I hit create,

it will start building

my new Git repository

and it will put my Git ignore file in it for me.

So I've got this new repository,

it's only got one thing and that is my Git ignore.

If I open that file up,

let's "Click" on that, take a look at what's in it.

Now, you can see that this is actually

the customized Git ignore file for a Unity project.

Up at the top is the Library directory,

that's what the documentation told us to exclude,

that's the cache directory

that shouldn't be in version control.

Then there's also a Temp folder,

build output and then some customized stuff,

even below that if I'm using

Visual Studio to work on my Unity projects.

So this is a really important thing.

This is a critical first step when

you are building a Git repository to hold Unity.

There's one more, so I'll take questions in a bit.

There's one more metadata file

for Git when it comes to Unity and that's Git attributes.

It's another metadata file that controls how

your Git repository is laid out.

And you might be familiar with this, in fact,

I hope you're familiar with this if

you're using Git already

because one of the really important things it

controls is line endings.

Now, this is one of those problems when it

comes to Git and cross-platform development.

Unix, historically uses a new line as lines operator,

Windows uses a carriage return and a new line.

And when you mix and match,

you can have some problems, right?

So, Git tries to normalize

all the line endings for your repository to Unix style.

And there's a couple of ways that you can do this.

You can either set it up to be

a configuration option called core.autocrlf.

I know that's a mouthful,

but that's not the right way to do it.

Because the problem there is

that that's a per user setting.

That's something that I set up as

a user that if I'm collaborating with you,

that you also have to set up.

And if we don't have it set up the right way,

if our configuration options are mismatched,

then you'll see all sorts of crazy things.

You'll see line endings change,

you'll see that maybe when you run

Git clone and then you run

Git status it will say that things have

changed which nothing changed,

I just closed the repository.

So, I can run

Git status and it'll say things have changed,

I run Git diff and it won't show me any changes.

We call those phantom changes.

There's all sorts of problems that can arise if

you try to use that old style of setting.

Instead, the best practice for

lining and configuration is to

set it up in Git attributes.

And it's just as simple as a one-liner "* TEXT=AUTO.

I'll have links to all of this stuff after

the presentation so you don't have to remember it.

So, that's the simplest

Git attributes that you need

for collaborating on any project.

So that's any source code project

where you have Windows users

or particularly if you have

Windows users on a bunch of platforms.

The other thing that you might want to

do if you are using Unity,

is that you might want to take this a step further.

There's more than just lining and

configuration in this Git attributes file.

It also controls how files get merged.

So, Unity has a bunch of data files that are

complicated to merge by themselves and

thankfully it includes a helper tool

called Unity YAML Merge.

And the awesome thing about this is that you

can hook it up in your Git attributes,

and so, instead of if I change, say,

my.asset file in one branch,

and you change the same.asset file in another branch,

Git doesn't know what the contents of that file are.

Git doesn't. Git just looks at it as lines of text.

That's it. And Git won't do anything

smart about this metadata file. This asset file.

But Unity does know what that is.

So, Unity has been nice enough to package

its own tool that can look

at the changes that have been made on

both branches and reconcile it themselves.

So that's called semantic merging.

There's semantic merge tools for

source code like C# and F#,

and those are great, but

Unity provides a semantic merge tool

for its own data formats.

And so, I would really encourage you to hook this up.

It will make merge conflicts

much much easier to deal with.

It will take care of most of these things for you.

It won't corrupt the data the way Git could,

and it won't leave conflicts

lying around when it doesn't need to.

There's really one more critical piece

of technology that Git

can offer for Unity developers,

and that's something called Git Large File Storage

system or Git LFS.

So, we need to do just a little bit

of version control theory,

and I promise I won't try to bore you too much with this.

Git is what's called a

distributed version control system.

That means that you get,

we say, that you get an entire copy of the repository,

and we aren't kidding when we say that,

because when you run git clone,

it's called git clone for a reason,

you get a full copy of the remote repository.

Everything that exists currently in the current branch,

but also, all of the history.

So, you get every file that's ever been checked into

the repository when you run git clone.

And for images, for video,

for audio, that adds up really quickly.

So, the problem is that, let's say,

I commit a file,

the very first thing I do is commit an image, okay?

That's not so bad. Having one image

in your Git repository isn't so bad.

It's when I change that image

and check in another version,

and another version, and

another version that it starts to add up.

Now, I've got four copies of this file

as it's existed throughout history.

So, each commit has

a full copy of this image that I've checked in.

If it's a one megabyte image, now,

suddenly, these four revisions, four megabytes.

And so, you can see in a Unity, sort of game,

in a Unity repository,

I'm going to have a lot of these large assets.

And as they change versions,

as I iterate on them,

my repository is going to keep growing,

and growing, and growing.

So, what Git LFS does is it finds a solution to

this problem by actually sharding the Git repository.

So instead of checking in

each version of this image over and over again,

Git LFS allows me to move

the data into a separate space that's versioned

just a little bit differently and

managed just a little bit differently.

The amazing thing about this is

that instead of having these images,

when I use Git LFS,

I have what we call just a little Pointer file.

So, in my history,

in my Git repository,

I just have this little LFS file.

It's about 128 bytes.

It's not a megabyte like the pings that it's replacing.

It's a 128 bytes,

and it actually just describes to Git LFS,

to your client when you run Git clone,

how it can actually get the image contents itself.

We can actually take a look at what this file looks like.

This is the complete file that

Git LFS uses when you check in an image.

So it's much much lighter.

And Git LFS will then,

when you use it on your client, will then look at this,

know how to contact GitHub,

or Visual Studio Team Services,

or wherever you're hosting your Git repository,

and pull it down separately.

So, the lifecycle is managed a little bit differently.

You only get the image files that you

need as you need them.

You don't have to get all of the history going

back however long your game's been in development.

So, let's actually take a quick look.

So, I've got a Git repository

right here that I can clone.

It's hosted in Visual Studio Team Services.

So, I'm going to clone it down, and it's got

some large files in it.

Great. So, what I'm

doing now is I'm cloning my Git repository,

and, actually, in

the current branch that I'm checking out,

I only have 10 one megabyte PNGs.

That's not really that big, but as you can see,

I'm downloading a bunch of files.

It's going really slowly.

That's because although I've only got

10 one megabyte PNGs in the current version,

I've checked in a bunch of history.

And so, I'm going to interrupt this.

I'm going to cancel this clone

because it's just going to take forever, right?

We're still at zero percent.

I've got the same repository with

the same history that

I've checked in with Git LFS instead.

So, let's clone that instead.

It's called LargeFiles-LFS.

Right. Look at that.

We were stuck on that receiving objects phase earlier,

and now, it just finished, right?

We still got those two thousand objects,

but instead of getting the full history

with the PNGs in it,

we've got this Git LFS data which is much much lighter.

So, clone very quickly.

It took just a second to download the

10 that actually need to get checked out,

that I'm using currently.

It took just a second to download

those as well. It didn't print any status.

It went that quickly. So, let's

actually take a look at inside.

Right. So here, I've got, well, okay,

so I've got nine one megabyte PNGs and a little one,

a nice little one as well.

But these are actually the files as they exist.

They're actually image files. Let's take a look.

I can open up one. Let's open

this one, the nice small one.

Hey, it's the Git logo.

So, I was able to get just the data that I need,

that I need to work on,

that I need to build without actually

downloading all of the history

that I probably don't care about.

I certainly don't in this case.

Now, there's another technology that some people might

think is a good idea to use here

that actually performs a similar goal,

and that's called a shallow clone,

where you only download the most recent version

of the Git history.

So, you don't actually download history,

you only download the most recent commit.

And that sounds like the same thing that

we're doing, but it's actually not.

A shallow clone is sort of

deficient in Git's mine, right?

You can do a shallow clone

and you won't get any of the history,

so Git doesn't know about any of the history.

You run git log, and you'll

only see the most recent version.

If I run git log here,

I'll see all of my changes

because I have all of my changes.

I just don't have the binaries. Those are in Git LFS.

The more important thing

is that I have all of my branches.

If I did a shallow clone, I would only get

the most recent commit on the current branch,

but here, I've got all of the branches

from the remote server. Let's take a look.

If I run git branch -a, you can see that,

and git checkout oldbranch.

And so, now, I'm actually able to

switch to a different branch.

And if I run LS, it's

updated the files that have changed on that branch.

Finally, I can just open up.

Let's open up image five again.

That's the one that changed.

And before, it was the red logo,

now, it's all blue.

So, by using Git LFS,

instead of doing a shallow clone,

I'm able to still keep all of

the information about my branches.

I can switch to branches and as I do,

Git LFS downloads the data on demand,

downloads the images on demand.

Now, that does mean that I need to be actually

online if I'm switching branches that update images,

that update artwork, or movies,

or audio, but that's actually kind of a nice trade

off in terms of

not having to get the entire history when I clone.

So, if I close this,

I can also run one command and that's Git LFS lock.

So, this is an important command when you are working

with assets that aren't generally mergeable.

If I have an image,

if I have an audio file,

and I want to make changes to it as an artist,

then I want to be able to

lock that file so that nobody else can make

changes at the same time because if I save a wave,

and somebody else save the same wave,

we're not going to be able to merge that.

We're going to have a merge conflict.

More importantly, we lost work

because while I was editing that wave,

somebody else was doing the same thing,

and one of us has to give up our changes,

or we have to figure out how to reconcile our changes,

and so, we've spent a lot of

time working on things that are ultimately not mergeable.

So, I can run Git LFS lock on a file.

This is new in Git LFS 2.0,

and it will tell me that the files are already locked,

and so that I shouldn't actually be making changes to it.

When I actually go and

push these changes up to the server,

and open a full request,

then I can unlock the file,

and so anybody else can make changes

to that file after I'm done with it.

So it's a simple way to coordinate.

It's one of the features of

Git that's been missing for a while,

and it's new in Git LFS 2.0.

It's great for artwork,

for audio, stuff like that.

So, I'm going to stick around and take questions,

but I know I threw a lot at

you and a lot of configuration options especially,

so this is all documented.

aka.ms/gitwithunity. So, thanks so much for your time.

I really appreciate it. I hope you enjoy the rest of GDC.

For more infomation >> Git with Unity for Game Development - Duration: 22:36.

-------------------------------------------

Standard of care for pregnant women with an opioid use disorder - Duration: 1:53.

[Tile text, Standard of care for pregnant women with an opioid use disorder]

[Dr. Jones speaking] So, since the Mother Study was published in

the 2010, there have been a number of guidelines that have come out both internationally as

well as within the United States.

For example, the W-H-O, the World Health Organization guidelines were published in 2014 and those

guidelines clearly state that for women who have an opioid use disorder while they're

pregnant, there are two medications that are a standard of care to treat them, methadone

or buprenorphine.

For the United Nations there are international standards of drug treatment and in those standards

in the section about women and children it specifically stated that both methadone and

buprenorphine are the accepted standard of care to treat opioid use disorder during pregnancy.

As well, the American Society of Addiction Medicine and the ACOG Organization have also

endorsed methadone and buprenorphine acceptable practices to treat opioid use disorder during

pregnancy.

[Text Title: Despite the Evolving Guidelines, Obstacles Remain]

So, some of the obstacles to women to be able to receive a medication assisted treatment like methadone and buprenorphine

during pregnancy include just sheer non-availability of those medications in their local communities.

Sometimes methadone clinics are hundreds of miles away from where women live, or sometimes

there are not enough buprenorphine waiver providers that are able to prescribe the medication

to women, so access is definitely a huge driving barrier for women to receive medication assisted

treatment during pregnancy.

[End slate with HHS and NIDA logo and website, www.drugabuse.gov]

For more infomation >> Standard of care for pregnant women with an opioid use disorder - Duration: 1:53.

-------------------------------------------

EXO-CBX Flies To Japan For Group's New Reality Show - Duration: 0:55.

For more infomation >> EXO-CBX Flies To Japan For Group's New Reality Show - Duration: 0:55.

-------------------------------------------

Paid Content by Delmar Assisted Living - Activities for Residents - Duration: 5:53.

DELMARVA LIFE IS BROUGHT TO YOU BY DELMORE ASSISTED

LIVING.

I THINK WE HAVE THIS ABOUT COME TO GRIPS WITH

THE FACT THAT AGEING IS JUST IT'S A WAY OF LIFE IT'S PART

OF LIFE AND WHILE YOU PROBABLY SOAK UP EVERY GREAT

MOMENT THAT YOU HAVE WITH AGING LOVED.

THOSE MOMENTS DON'T HAVE TO END THIS MOM

AND DAD GRANDMA GRANDPA AS THEY GET OLDER.

EVEN IF THEIR MIND IF NOT AS SHARP AS IT

ONCE WAS CELEBRATING SPECIAL MOMENT CAN DO A LOT TO BETTER

THE LIVES OF THOSE WHO TAKE PART.

THE TEAM AT DEL MAR ASSISTED JETSET THEY

UNDERSTAND.

ACTIVITY.

SO 1 OR 2 5 0 SEATS COREY HE WAS

STOPPED BY TO SEE WHAT THEY'RE UP TO FOR EASTER

ASSISTED LIVING CERTAINLY DOESN'T HOLD BACK WHEN IT

COMES TO SELL YOU MAY REMEMBER AROUND CHRISTMAS

SONG I WAS PLAYING GUITAR AND SINGING WITH KELLY WILL COACH

AGAIN BY.

DOWN TO GET MORE ASSISTED LIVING CELEBRATE

SPRAYING HOW ARE YOU DOING COULD DO IT OR OLGA.

SO TALK TO ME WHAT'S WHAT'S NEW ABOUT

THIS YEAR.

WOW IT'S GETTING WARMER HOPEFULLY THAT'S

THAT'S THE NEW THING I THINK WE DODGED A BULLET LAST LAST

WEEK WITH THE WINTER STORM.

YOU KNOW THINGS ARE GOING VERY WELL WE'RE GEARING UP

FOR EASTER.

THAT'S JUST RIGHT AROUND THE CORNER WITH WARMER

TEMPERATURES PEOPLE GET OUTSIDE MORE.

YOU KNOW.

PLANNING FLOWERS.

THE SMELLS OF CUTTING GRASS NINA WE TRY

TO GEARED TOWARDS THINGS LIKE THAT.

THAT JUST TRY TO BRING TRADITIONS AND MEMORIES BACK

TO PEOPLE.

SURE.

AND SPEAKING OF CELEBRATING MEMORIES BACK

YOU MAY NOTICE THIS GIANT THIS GIANT POPCORN MACHINE AT

HOME.

YOUR.

YOU'RE NOT YOU'RE SMELT NOW IT SMELLS AMAZING

WHERE WE ARE RIGHT NOW THIS IS THE THEATER..

THIS IS THE HOME THEATER THAT WE

BUILT IN HERE AND IT'S YEAH IT'S A FUN PLACE TO BE HAD.

YOU KNOW FAMILIES COME IN WITH THEIR LOVED ONE AND THEY

CAN WATCH MOVIES OR.

ALL DIFFERENT KINDS OF THINGS.

WHAT WE DO HERE WHEN.

WHEN YOU THINK OF ASSISTED LIVING

USUALLY YOU DON'T THINK OF AS MUCH FUN AND YOU GUYS

INCORPORATE TONS OF FUN AROUND HERE WOLF.

YEAH WE ARE WE ARE.

HOW CAN I PUT IT OTHER THAN WE JUST WE JUST

WANT TO.

I WANT TO.

YOU KNOW WHEN I GET OLDER I WANT TO

HOPE THAT I'M GOING TO STILL BE YOUNG AT HEART AND BELIEVE

IT OR NOT.

YOUR LOVED ONES ARE YOUNG AT HEART.

THEY JUST NEED TO HAVE FUN AND WE JUST

TRY TO FIGURE OUT WAYS FOR THEM TO DO THAT.

NEW BLOOM IN TEMPERATURES IMPROVING

THE THINGS YOU GUYS ARE OUTSIDE QUITE A BIT.

WE'RE OUTSIDE QUITE A BIT.

WE DO OUTINGS THEY COULD OCEAN CITY

A LOT.

WE'VE TAKEN PEOPLE TO HARRINGTON BEFORE BECAUSE

THEY WANTED TO PLAY THE SLOTS AND HAD AND HAD A GOOD TIME

AND THAT'S THAT.

I GET THAT YOU KNOW WHAT I DON'T GET TO

GO.

BUT YEAH WE DO ACTIVITIES OUT TO LUNCH.

YOU KNOW HAVE FAMILY STYLE DINNERS WHERE

EVERYBODY IN THEY'LL DO.

THE OSCARS THEY'LL DO THOSE KIND OF PARTIES WILL JUST

JUST ALL KINDS OF DIFFERENT THINGS.

NOW I UNDERSTAND THAT YOU GUYS HAVE A GARDEN HERE.

THAT IS JUST FLOORS IN ONE SPOT ON.

IT IS IT'S VERY FLOURISHING WE HAVE A GREAT

LANDSCAPING COMPANY THAT COMES OUT AND THE RESIDENTS..

SOME CAN GET DOWN.

THERE'S ONE LADY WHO JUST LOVES TO

PULL WEEDS.

REALLY.

AND SHE'LL POLL FLOWERS TO

SOMETIMES BUT NO.

IT'S JUST IT'S A GOOD TIME THEY THEY

PUT BIRD FEEDERS OUT AND THE LIKE HUMMINGBIRDS COMING

AROUND AND ALL DIFFERENT KINDS OF ANIMALS.

WE DEER FEEDERS IN THE BACK..

THEY JUST SIT AND WATCH THEM.

THAT'S PRETTY COOL SPRING TEMPERATURES ARE BEAUTIFUL

YOUR GARDEN IS FLOURISHING AND EASTER IS RIGHT AROUND

THE CORNER ACER'S RIGHT AROUND THE CORNER..

YOU KNOW IT'S FUNNY I HAVE A RUNNING

JOKE IN MY FAMILY THAT I HAD AN EASTER BASKET UNTIL I WAS

25 YEARS OLD AND MY FATHER WHO LOVES TO SAY THAT IT IS

NOT TRUE.

I WAS 21 NOT 2005.

BUT YES I USED TO GET EASTER BASKETS UP UNTIL I WAS 21

YEARS OLD AND SAY SAY THE SAME THING.

IT'S.

FULL OF CANDY AND IT'S A FUN TIME

IT'S IT'S A NEW BEGINNING.

YOU KNOW YOU GO THROUGH WINTER AND IT'S COLD AND IT

CAN BECOME BETTER AT TIMES AND SOME PEOPLE LOVE WINNER.

BUT A LOT OF PEOPLE LIKE THE WARMER WEATHERS AND WHEN

SPRINGS BREAKING IN THE FLOWERS ARE BLOOMING.

NOW.

THE BEST PART ABOUT EASTER IS DEFINITELY

THE CHURCH SERVICES YOU GUYS OFFICERS.

WE DO MANY CHURCH SERVICES WE HAVE SOME PEOPLE

THAT COME INTO THREE TIMES A WEEK AND JUST PLAY PIANO PLAY

PIANO AND SING.

THEY DO.

GUITARS.

I MEAN YOU NAME IT.

THERE'S ALWAYS SOME KIND OF ACTIVITY IS GOING ON HERE ALL

THE WAY DOWN TO.

WE HAVE A COUPLE OF FOLKS THAT LOVED TO

PLAY DOMINOES EVERY SINGLE DAY AND I THINK SOME OF THEM

ARE CHEAP AND I'M NOT FOR SURE.

BEEN IT'S TO GET YOUR HEART AND YOUR SPIRIT IN YOUR

MIND IN FOR THE EASTER SPRING SEASON.

ABSOLUTELY.

AND WE'RE GOING TO BE DECORATE AND SOME

EASTER EGGS AND MAYBE DOING SOME EASTER BASKETS AND

THINGS LIKE THAT.

GETTING READY FOR THE HOLIDAY..

IT'S GOING TO BE GREAT TIME WE'RE

GOING.

AND HOPEFULLY EVERYBODY CAN COME OUT AND

JUST BE A PART OF THE FAMILIES AND SIT DOWN AND

HAVE SOME ME A MEAL WITH THEM.

ALL RIGHT WELL YOU INVITED ME ALL THE WAY DOWN

HERE.

I UNDERSTAND EVERYBODY'S DECORATING EASTER

EGGS.

THAT'S RIGHT.

WHAT DO YOU SAY WE.

WE DO.

WE HAVE A LOT.

DO YOU THINK I HAVE WHAT IT TAKES TO MAKE THE ULTIMATE

EASTER DECLARATION I DON'T KNOW.

JIMMY AND LISA COULD PROBABLY PULL IT BETTER NEW

BUT I'M LIKE YOU GIVE IT A SHOT AND SEE WHAT YOU CAN DO.

ALL RIGHT ALL. AND IT LOOKS LIKE COREY IS HAVING JUST AS

MUCH FUN AS THEY ARE YOU KNOW AS ALWAYS.

YEAH HE LOVES GOING OUT THERE AND YOU KNOW

ONE OF THE GREAT ASPECTS ABOUT OR ASSISTED LIVING.

IT'S LIKE AN OPEN BOOK LOVED ONES ARE INVITED TO VISIT

RESIDENTS ANY DAY OR.

FOR YOUR FAMILY.

WE'LL HAVE MORE INFORMATION ON DELMARVA LIFE

DOT COM

For more infomation >> Paid Content by Delmar Assisted Living - Activities for Residents - Duration: 5:53.

-------------------------------------------

Findings Prompt Changing Guidelines for Care of Opioid Exposed Babies - Duration: 1:11.

[Tile text, Findings Prompt Changing Guidelines for Care of Opioid Exposed Babies]

[Dr. Jones speaking]

So, in 2010 we published the Mother, Child, which was published in the New England Journal

of Medicine.

And what the data showed, was that compared to methadone and buprenorphine given to pregnant

women who had opioid use disorders, our mean outcomes were focused on the neonate.

Of the five primary outcome measures that we had there was not a statistically significant

difference in the proportions of babies that required treatment for neonatal abstinence

syndrome between methadone and buprenorphine.

[Tile text, Babies exposed to buprenorphine have less severe NAS symptoms than methadone exposed babies.]

So, if you were a buprenorphine exposed baby, you needed eighty-nine percent less medication

to treat your, neonatal abstinence syndrome compared to being a methadone exposed baby.

Buprenorphine exposed babies also stayed in the hospital for a significantly shorter period

of time than methadone exposed babies.

[End slate with HHS and NIDA logo and website, www.drugabuse.gov]

For more infomation >> Findings Prompt Changing Guidelines for Care of Opioid Exposed Babies - Duration: 1:11.

-------------------------------------------

Roseanne Received Congratulatory Call from Trump for Ratings Success | THR News - Duration: 3:22.

"I've known him for many years and he's done a lot of nice things for me over the years."

After scoring impressive ratings for the premiere of her rebooted sitcom,

Roseanne Barr received a personal phone call from

President Donald Trump congratulating her on the

revival's success, the New York Times first reported.

The ABC comedy averaged a massive 18.1 million

viewers and a 5.1 rating in the key demo.  

On Thursday, the comedian called in to ABC's 'Good Morning America' to

say she was grateful for the viewers, including the president.

"It was pretty exciting, I'll tell you that much," she said of the private conversation with Trump.

"They said, 'Hold please for the President

of the United States of America' and that was about the most exciting thing."

Barr added, "I've known him for many years and he's done a lot of nice things

for me over the years. It was just a friendly conversation about work,

and television and ratings. He really understands ratings and how they

measure things and that's kind of been an interest of mine, too, for a long time."

In total viewers, 'Roseanne''s second coming marked the highest-rated

sitcom broadcast in more than three years. In an interview with

The Hollywood Reporter's Lesley Goldberg, ABC Entertainment

president Channing Dungey expressed her elation at the revival's success, saying:

"What is really making me happy today is that more than anything,

we delivered a high-quality show. It is well-written, smart, well-acted,

funny and it's connecting with audiences for those reasons.

In an era where everybody only wants to talk about streaming and not

as much about broadcast, it's very satisfying to

have one of these connect. It's a win for all of broadcast [TV]."

Elaborating further on why the rebooted sitcom has connected with people,

Dungey explains: "...They've done a wonderful job of bringing the Conners into 2018.

It doesn't feel like we're doing the same episodes that

they were doing 30 years ago. It feels very current and also very funny."

It would seem that Trump agrees with that sentiment.

During his phone call with Barr, the president reportedly thanked the

comedian for her continued support in public as well as the

decision to make her character in the sitcom a

Trump supporter, people familiar with the call told The New York Times.

Barr had this to say on Thursday about why she thinks the reboot has struck a chord:

"The idea that people can agree to disagree is kind of missing from everything."

She continued, "Conflict resolution and agreeing to disagree are important

things that I like to talk about, and I haven't seen much of that anywhere.

That's what we need to do as a country: figure out what we don't like,

talk to each other and discuss how we're going to get it changed or fixed."

Donald Trump Jr. also praised Barr and the show on Twitter Wednesday,

suggesting she consider a run on late-night TV since it

"seem there's some demand for an alternate viewpoint."

Meanwhile THR's TV critic Daniel Fienberg offers his own opinion as to why the

'Roseanne' reboot has found success so far, even in the face of so many

who vehemently shunned the show due to its main character's politics

both on and off screen. Writes Feinberg, "It's my guess that most of them

weren't going to be a 'Roseanne' revival's core demo anyway and that the

show's core demo was probably just appreciative to be visible in a TV landscape

in which almost every character probably either votes Democrat

or doesn't vote at all. Maybe the answer is just that there's a portion of the audience that wants to be seen."

To read more on the 'Roseanne' reboot, including Daniel Fienberg's

full take and more on Trump's congratulatory call to Roseanne Barr, head to THR.com.

For The Hollywood Reporter News, I'm Lyndsey Rodrigues.

For more infomation >> Roseanne Received Congratulatory Call from Trump for Ratings Success | THR News - Duration: 3:22.

-------------------------------------------

Jung Ryeo Won Becomes Promotional Ambassador For Women's Rights Campaign(News) - Duration: 2:36.

Jung Ryeo Won Becomes Promotional Ambassador For Women's Rights Campaign

Jung Ryeo Won has been appointed as the promotional ambassador for the With You movement!. The With You campaign is a response to the Me Too movement that aims to support victims of sexual violence.

Soompi. Display. News. English. 300x250. Mobile. English. 300x250. ATF. On March 27, the Korean Institution for Womens Rights selected Jung Ryeo Won as their promotional ambassador. The actress previously starred in KBS drama Witchs Court, where she portrayed prosecutor Ma Yi Deum.

She gained a lot of support as her character solved cases while conveying the perspectives of sexual violence victims.

Jung Ryeo Won commented, There are so many [sexual harassment and sexual violence] cases. The victims have tried to make this known in many different ways for a very long time, but society has overlooked them.

The problem is that we dont really recognize sexual crimes against women and children, as well as those within the hierarchies of organizations..

The actress stressed the importance of legitimate punishment and emphasized that giving courage to victims would create the most change. She expressed the significance of testimonies, saying that only the victims courage would change society.

Jung Ryeo Won also shared her views that legitimate punishment is necessary to become a society where victims are comforted. She stated, I hope that small voices will ring louder and change social awareness..

She then talked about the With You campaign, saying, I included the message, For the eagles who cannot fly. I got the feeling that those who actually have the power to fly arent able to fly when theyre cornered at the edge of a cliff.

Through this campaign and movement, I hope all of us will continue to learn until the day they can soar..

For more infomation >> Jung Ryeo Won Becomes Promotional Ambassador For Women's Rights Campaign(News) - Duration: 2:36.

-------------------------------------------

Setup your CI/CD pipeline for Node.js, Python, .NET, Go, Ruby, or Java - in Minutes - Duration: 18:58.

>> Good afternoon everybody.

Man, I am so excited to be here to show you guys how to

set up DevOps pipeline for whatever language you want.

Now, before we begin let me do a quick intro.

So, my name is Abel Wang.

I'm a Cloud Developer Advocate specializing in DevOps.

So, what exactly is a Cloud Developer Advocate?

That's a big old fancy title, right?

Really, what I do is I write code.

I eat, drink, live writing code.

It makes me ridiculously happy.

It totally defines who I am.

I'm that weirdo at Microsoft.

After a long stressful day at work of writing code,

the way I relax is I go back home,

I play with my dog,

talk to my wife, sit down on the couch,

pull out my laptop and then write

more code because that's what I love to do.

All right. So, some recent roles that I've had.

I've been a Process Consultant,

a Certified Scrub Master,

I've been an ALM Ranger.

I've written code with the VSTS Team.

My area of specialty is definitely around DevOps,

General App Dev, Visual Studio and of course, Azure.

Now, some fun stuff about me.

Back in the day I used to be a rock star.

Thank you. Thank you. Well, at least in

my mind I thought I was a rock star.

Apparently, I wasn't very good because instead of

rocking San Francisco with my guitar,

I'm at GDC talking a lot of DevOps. There's that.

Also, I'm a runner and one of my ultimate goals is

to run a marathon on top of the Great Wall of China.

So, I'm training really hard because I don't

want to be this guy in the red throwing up.

Yeah. Don't want to be that guy.

I'm also part of Donovan Brown's team where we are

five DevOps practitioners and

our sole goal is to help you get into Azure easier.

All right. So, DevOps for any language.

Visual Studio Team Services,

that is the ultimate DevOps solution into Azure.

And now, we've made it ridiculously easy.

To go from nothing at all to

a full end-to-end DevOps project

in the language that you picked.

So, what's in a DevOps project?

You get a team project in Visual Studio Team Services.

You get sample code

in the language that you picked in a Git repo.

You get a CICD pipeline that takes the sample app,

builds it, runs all the unit tests,

and if everything looks good deploys it all the way out

into infrastructure that it

provision for you out in Azure.

And the most amazing thing is you get all of

this with just a couple of clicks. Let me show you.

So, the first thing we're going to

do is we're going to jump into

the Azure portal where we can

create one of these DevOps projects.

Now, the first thing we're going to do is say

let's create a DevOps project.

Now, once this page comes back,

and this is my most favorite page ever,

Azure is going to ask you

what language do you

want to choose in this freaking walks?

Because we've got.NET of course, Java, Node,

PHP, and also Python,

with more languages to come.

This is living free.

We ain't your daddy's Microsoft anymore man.

Whatever language you want to use in Azure,

we're going to try to enable it.

So, right now these are the languages that we

provide with more languages to come.

Now, I'm going to go ahead and

choose.NET and I'm going to choose.NET Core.

Next is going to ask me what

infrastructure in Azure do you want a provision.

Now, we can choose a Web app,

a Web app running on a Linux machine,

we can deploy into containers

and we can deploy into virtual machines.

Now, I'm just going to go ahead and choose

Web app for Windows.

And now is going to ask me what

instance of Visual Studio

Team Services do you want to use.

You can create a brand new one directly from

here or use an existing one.

Now, I'm going to choose my demo account.

So, let me go ahead and find that. Here we go.

And let's give this project a name.

So, we'll call this "Ablegdc".

And now, we get to choose the region that we

want to deploy our resources in Azure.

We could choose South Central

but since we're on the West Coast,

I'm going to choose "West US2".

Click on "Join" and bam.

That is literally all we need to do.

We can now kick back,

relax, and just let Azure do it's thing.

Azure is now going to

create a team project for us in VSTS.

It's going to create a sample app in

the language that we

pick and it's going to put it into the Git repo.

It's going to go ahead and build out

the CICD pipeline that

makes sense for the language that we picked.

And when it's all done,

it'll go ahead and deploy it into

the infrastructure that it provisioned out in Azure.

And when you're done, you

get a portal that looks like this.

Where now you can see everything that it created.

On the left hand side,

we've got our CICD pipeline.

Where we have deep links into

VSTS for our build

or release pipeline and also our source code.

On the right hand side,

we've got deep links into

all the infrastructure that it

created for us out in Azure.

Now, let's go ahead and take a look at our source code.

We'll click on this deep link.

It will take us directly

into Visual Studio Team Services.

Were here is our Git repo.

And you can see, we've created

sample code in the language that we picked.

The language that we picked this

time happened to be.NET Core.

Let's go ahead and check out our build.

In our build, we create a build pipeline for

you that makes sense for the language that we picked.

So in this case here,

we created a build pipeline that makes

sense for.NET Core because

that's the language that I picked.

If I chose Python or Ruby or PHP or Java.

We would build you out a pipeline that

made sense for the language that you picked.

Next, we also create for you a release pipeline.

A release pipeline that makes

sense for the language that you picked.

Now today, this Internet connection is a little

slow so it's going to take

a while for us to actually be able to see this,

but when it finally comes back what you'll

notice is it's going to be able to a release pipeline,

we can dive in, and take a look at it.

And this pipeline is going to have

one environment that we deploy to.

And once again, a pipeline that

makes sense for the language that we picked.

We chose.NET Core deployed

into Azure App Service in the Azure so bam.

Everything is there ready for you.

There's nothing more for you to configure.

There's nothing more for you to

install or do anything else.

Everything just works. So now,

if we go back into our portal.

And click on our application endpoint, bam.

You can see that our app, our sample app,

has already been deployed out into Azure.

Nothing more for you to configure

or to do whatever you need to.

However, you still have full ability to

customize the CICD pipeline

to do whatever you need it to do.

So, the first thing that developers usually tell me or

ask about is that's great for your sample app,

but how do you get your code into this entire thing?

And I'll show you. Let's jump into or Git repo again.

And this right here, is just a Git repo.

So there is nothing stopping us from coming in here,

cloning this repo onto our hard drive,

deleting everything, copying my code on here,

uploading it and then it will

kick off the building and the release pipeline.

So, you can do that but there's also another way.

My actual application that I want to stick into Azure,

it happens to sit in GitHub already

so I can just use that. Let me show you what I mean.

Let's go to my build pipeline.

So, here's my build pipeline.

And when this comes up we'll go

ahead and edit this build pipeline.

Now, what we're going to

do is we're going to look at where we get our source.

And instead of using

the Git repo in Visual Studio Team Services,

we're going to say let's go ahead and

use the Git repo in GitHub.

Now, it needs my personal access token.

So, let me add my token.

I think that's my token.

We'll find out. Click "Authorize" and bam.

Now, we've connected VSTS to my GitHub repo.

So now, I can choose my repository,

which is my Mercury Web application.

And I want to build my master branch.

Just go ahead and save it. Queue It.

And bam.

Once again, I'm totally done.

Now, it's going to go get the latest code from GitHub.

It's going to build it, compile it,

one unit test and if everything looks good,

it's going to automatically deploy it into Azure.

It is literally just that easy.

All right. So, I've shown you

how you can add your code in here,

but what if we needed to

customize the building release pipeline, right?

This application that I

just added from GitHub is quite a bit

more complex than the app

that comes out of the box and our sample app.

The sample app is just a little web app.

My real app sitting in GitHub consists of three parts.

It has a.NET Core part,

but that's the Rest API that I want to run in

a Kubernetes cluster as

a docker container analytics machine.

It also has a ASP.NET web front end and

also an IOS mobile application.

So, can I take this build,

customize it, tweak it to make it build all of that?

And of course, the answer is yes

so wouldn't have asked it live.

Alright. So, the way that you

customize your builds and VSTS is just a task runner.

So, all you need to do is add or remove tasks.

Now, out of the box VSTS comes with hundreds of

tasks that you can just download and start using.

Now, if what you want to

do happens to not exist out of the box,

first thing I would do is check the marketplace.

The marketplace, our partners have created

over 500 build or release task,

download what you need.

Find what you need, download

it, and ready for that you're done.

And if you want to do doesn't

exist out of the box

and doesn't exist in the marketplace,

it is trivial to create

your own custom build or release task as well.

All that is is power show or no JS.

So, what that means is,

anything you do from the command line,

you can easily do with a custom task as well.

It really is that simple.

So, I'm not going to sit here and

drag task around that's kind of boring.

So, I'm going to go ahead and show you

what my finished build looks like.

I use one build agent.

This agent is a hosted windows agent

to build my ASP.NET Front end.

I use another agent,

and this time I'm using one of

our hosted Mac agents to build my iOS application.

And after I built my iOS app,

you'll go ahead and run

my automated UI tests in Visual Studio app center.

And finally, I use

a Linux agent to build my.NET Core Rest API.

Now, after it creates

my Rest API and compiles everything,

I need to have this be a docker image.

So, what I do is I create

a docker image, and then when I'm done,

it will take this docker image and

deploy it into Azure container registry.

And when it's done it will send it down

through the release pipeline and we

can do the same type of stuff for release pipelines.

Now, out of the box release pipeline,

it's a simple release pipeline,

but we can customize

this instead of just a Dev environment.

Maybe we want to go into QA,

maybe we would then from here we want to go into Prod.

This is just our web front end, right?

We also want the ability to deploy my Rest API,

so we can create parallel deployments.

And we'll call this my RestAPI-Dev.

And I can also create

parallel deployments for my mobile application as well.

So, once again, I'm not going to make

you guys watch me actually do that. That's boring.

But this is what my release ends up looking like.

I have three parallel deployments.

One for my web application,

one for my Rest API,

and one for my mobile application.

Now for my web app,

the task that I'm using there are going to be tasks

that make sense to deploy my web application,

and Azure app service tasks

that deploys to Azure app service.

I deploy my database schema and

then I run a bunch of automated UI tests as well.

If I go ahead and work at my Rest API.

My Rest API remember I'm deploying an Azure container.

I'm sorry. I'm deploying

a container into a Kubernetes cluster.

So, I'm using a [inaudible] task

to deploy into my Kubernetes cluster.

And finally, for my mobile,

I'll go ahead and use Azure App Service or

Azure App Center to deploy my application to my iOS app,

to my alpha testers,

my beta testers and eventually all the way

out to the app store itself.

So here you go. Three Parallel deployments

into three completely different systems

with visual studio team services,

you absolutely can do that.

Now usually, the next thing that I do is,

I go ahead and set up approval gates.

So, before and after every environment,

we have the ability to add manual approvers.

These are people that have to physically click

"approve" before it can flow through the gate.

But in VSTS, today we also have the ability to

create automated approval gates

based off of continuous monitoring.

Let me show you what I mean.

Let's go ahead and add an automated deployment gate,

and out of the box, we have

four types of gates that we can add.

One of them is a work item query gate,

that queries for work items to

determine if the gate should pass or fail.

So, one of the ways that we

use this in-house with the VSTS team,

is we do a query for blocking

bugs and if there are any blocking bugs,

bam, we stop that release right then and there.

Another type of automated approval gates that you can

add is by using Application Insights.

So, it's quering using Azure monitor.

So, we use Application Insights to

monitor your application that's running in Azure.

And if there are too many alerts, bam,

once again, we kill that release right then and there.

And finally, the next to invoke

Rest API and invoke Azure function.

These are extensibility points that you can

use to create your automated approval gates.

So, it will call a Rest API

or invoke in Azure functions and in there,

you can write whatever code you need to,

to create whatever type of gates that you need to.

So, the way that I've used this as I

was recently at a hospital,

where they had a very inteResting rule.

They were physically,

literally not allowed to deploy into

production unless they had a physical piece of

paper sign and uploaded into DocuSign.

Now, I knew DocuSign had a Rest API

that you could call to

see if the document has been passed or not.

So, what I did was I created and invoked Rest API gate,

and this is what it ends up looking like.

We first deployed into Dev—everything worked.

We deployed into QA—everything worked.

But at the end of QA

that's when I created my Automated Deployment Gate,

where you set up your gates you get to set up with

the polling frequency is going to be and

that's so how long you're going to run your gates.

So, I said let's run this gate for

48 hours and let's poll every five minutes.

So, the first time it polled,

the document still hasn't been signed yet.

Five minutes later, I poll again,

documents still hasn't been signed.

The third time, fifteen minutes later,

I go ahead and poll and guess

what the document has been signed.

So because of that, it automatically passes

through the gate and we start deploying into production.

So, using Automated Approval Gates,

it help us deploy faster yet safer. So there you go.

This is what the power of VSTS and Azure can give you.

We are the only Cloud vendor,

that makes it so incredibly

easy to go from nothing at all to

a full end to end

100 percent customizable pipeline

and the key is 100 percent.

All right. Thank you all, very very much.

For more infomation >> Setup your CI/CD pipeline for Node.js, Python, .NET, Go, Ruby, or Java - in Minutes - Duration: 18:58.

-------------------------------------------

How to Draw House for Kids and Art Coloring Book with Colored Marker - Duration: 10:39.

How to Draw House for

Kids How to Draw House for Kids

For more infomation >> How to Draw House for Kids and Art Coloring Book with Colored Marker - Duration: 10:39.

-------------------------------------------

Arbeits 2 Bits: Google Analytics Tip for Marketing Interns - Duration: 0:31.

Hey everybody I got a great tip for you today. This is specifically for interns

in the marketing area as well as fresh marketing students who are getting

out in the real world. Study Google Analytics. You want to make sure you

learn everything there is to know about analytics so that way you can implement

your strategies perfectly. Understand the different aspects of what

analytics does as well as how each of it works in regards to how well you can

implement a new strategy or revise your current strategy. So if I were you, go

online learn a little bit about analytics and find out what you could do

with it.

For more infomation >> Arbeits 2 Bits: Google Analytics Tip for Marketing Interns - Duration: 0:31.

-------------------------------------------

Your Game For Everyone with PlayFab - Theater Presentation - Duration: 27:00.

>> All right.

Good morning guys.

>> Good morning.

>> Welcome. My name is Brendan Vanous.

I'm the Head of Developer Success for PlayFab,

now part of Microsoft as you probably heard.

I will be giving you guys a talk today on

live game operations in

PlayFab and I'll explain the concept as we go along,

but Ted kick it off.

I want to give you

an idea of some of

the changes in the market over the years.

So, this is your projection from 2000, 2001.

These are the top grossing games for those years.

And then you can see, if you look carefully at the list,

there's only one game in the entire list

that transitions from 2000 to 2001.

But if you then project forward to

the era when people born then are going to college,

2016 to 17, there's a huge difference here.

I mean, if you go back to 2000,

2001, actually, there's another aspect to it, too.

Almost all of these are either PC games

or console games of some kind.

You know, handheld, consoles of some type.

But if you look at the 2016 2017 chart,

you're looking at almost entirely mobile games.

And in fact, 70 percent

of them were the same game from year to year.

Now, there's a big reason for this.

These games don't follow the old classic pattern

of spike of usage and then drop off in long tail.

These are games that use LiveOps.

So, LiveOps is all about re-engaging your users,

getting them more excited about staying in the game,

continuing to play your game for the long term.

Some of the quotes we've heard and there's

a LiveOps booklet that we did for this year.

It contains a whole bunch of best practices

and discussions about different LiveOps.

And we talked to a lot

of folks about the industry to pull this together.

A couple of the key quotes that we got from doing

that process were from the SpaceApe and the Nexon guys.

So, the SpaceApe guys,

you can see $80 million revenue.

And they're saying anywhere from

one third to two thirds of that

is directly attributable to their LiveOps programs.

And then Nexon, of course,

the single biggest predictor of success in their games,

they feel is their live up strategy.

So, you don't need to take their word for it.

This is actual data from our servers.

So, there's two games represented here.

I'm not going to say what the first game was.

If you meet me at a party, you're

not going to get me to drink enough to tell you

what the game is because

I don't talk about things that do poorly.

The first game was a game,

they actually had a, I shouldn't say poorly,

they had an incredible launch.

They were featured on iTunes.

I think they were also featured

on GooglePlay for that matter.

So, they went up to huge numbers of users.

You can see here, they were over

two and a half million DAU when they launched.

And then, they sort of sawtooth down

the spikes on the sawtooth

pretty much represent weekend days.

So, they sawtooth down over time and it's

a classic picture of a game that launches big numbers,

fall off, long tail.

The other game though,

this one I will talk about and you guys

may have actually gone to their talk yesterday.

The other game here is

Idle Miner Tycoon from Fluffy Fairy Games.

Now, they did a talk yesterday

too on their live up strategy in

their games and what they're

doing now and going forward with PlayFab.

And if you didn't get to see it,

obviously it will be in the GDC vault later on,

so you'll always be able to watch it there.

But what they did was,

they took their concept and they did

kind of an internal game jam really and in eight weeks,

just eight weeks of development got

their game on to iTunes and GooglePlay.

And then they just iterated on it.

They didn't do anything other

than organic user acquisition.

They just iterated on the game,

worked with their community to get feedback,

kept making updates and changing.

And long about week 130,

you can see there's a little depth

there and then they start climbing.

That's where they enabled

all the LiveOps that they've been working on.

All the things that they worked with us

on and things they planned on their own.

And you can see the growth just

climbs and climbs and climbs and

it keeps going past that.

And this was a garage studio that started out in

just a few folks and

now they're doing exceptionally well.

They've launched their second game Idle Miner Tycoon and,

oh excuse me, Idle Miner Tycoon is the first one.

Idle Miner factories is the second one.

And yeah, there are

chart stretching up past is

because we're a few weeks past and

this keeps going in that direction.

And it's all down to their LiveOps.

So, what exactly is LiveOps?

And it's really, it's the changes that you

make that are designed to boost your retention,

monetization, basically just keeping your players

excited and interested in personalizing their experience.

Doing things that take

the aspects of the things that you're tracking on about

your players and how they play your game and

focusing any experiences that you

then produce on things that you believe

will appeal to those players based upon that information.

So, a lot of this is around

the cosmetic items or

user acquisition, limited time offers.

Events, sales,

things like that are good examples of LiveOps.

What's not LiveOps is actual gameplay content.

So, if you're doing like new game mode,

if you're doing new levels,

that's not really LiveOps,

but you can use

LiveOps to enhance the performance of those.

So, a good example of that might be take your demo.

You might have a number of

different ways that you want to demo the game to players.

If you're doing, this is for

a premium title in particular,

so you might do level 1, 2,

3 for some folks or you might do level 3,

4, 5 for other folks.

What you could do is you could create an AB test in

our system and then just AB test

on that to see which one gets better conversion.

If you see a definite difference

between them then obviously

just collapsed to that AB version and you're good to go.

That way everybody's using that version.

Hopefully, you get better conversion because of that.

So, what is it takes?

So, in the old days,

obviously a game was just a packaged good.

You worked with your publisher,

you get it boxed up, you shipped to the market,

you're down and you moved on to the next game.

With games as service,

what you're doing is you're shipping your game out,

but that's just like the beginning

of your journey with your players.

You're then operating the game,

you're constantly updating it, you're monitoring it,

you're taking feedback from your community

and within all of this,

the most important aspect of it is making sure

that you have the data in

order to analyze the things that you're

doing and see what successful and what's not.

This is kind of an overall map of all

of the back-end components that

you use to run your game these days.

Down at the bottom,

you've got the core game services,

things like player data, logins, guilds,

trading, in-app purchasing, all that sort of thing.

This is all stuff that we

talked about in yesterday's talk.

It's all very fundamental to your game but realistically,

all of that is kind of table stakes these days.

It's things that are important and

you don't want your team to have to bother with them.

Your team should be focused

on the actual game play differentiators.

The things that make people want to

come back to your game over and over again.

The things that make you unique.

But also around the sides of this,

you see once you've got all of these games services,

you have to have them posted somewhere,

you're going to distribute through

different channels whether there

are the different platforms,

whether they are through steam.

How you monetize your game, of course,

is going to be important and how you buy your players.

But at top, this is what we're talking about right

now is your LiveOps tools, your analytics,

everything that it flows into

this concept of managing your game for

the long term and keeping

your players interested and

hopefully maximizing your revenues.

So, the essential building blocks

for all of these then are these.

It's the BI, events, messaging, updates,

store and catalog, promotions,

customer service, and user acquisition.

I'll go through all of these in

brief but the most important one of them is the BI.

And actually, just to highlight,

we'll be talking again

tomorrow afternoon specifically about

real time events within the system and

how those works so we'll get

into more depth on that there.

But in a nutshell,

your real-time data is everything.

Every single thing that goes on in your game.

It's how are your users?

Which ad campaigns are more successful.?

It's the game tuning that you

do and how people respond to it.

Hopefully, using AB test so that you

can try different experiments with it.

See which things work better than others.

It's how you cross promote.

So, you're going to have multiple games over time.

Being able to track upon all these is using

the data to say not

just what games have they played before

and so what games do I want to advertise to them.

Obviously, not a game they played before but new ones,

but also which games are the ones that

you guys put out there are they're more interested in.

If you do both puzzle games on

RPG and somebody plays all your puzzle games,

the next time you put out a puzzle game, clearly,

you're going to want to send that ad to that player.

So, what we did was after

we created all of those fundamental services and PlayFab,

that we built onto it several years back.

It's something we call PlayStream.

So, PlayStream is every event for your game.

It doesn't matter whether it's coming from a client,

from a server, from a third-party integration.

They all flow into the same stream of data.

When I say stream data, Literally mean it.

This follows what, if you've been reading on it.

What follows the server

lists so-called model of computing,

which is a silly name because obviously there's a server.

But, the idea of the server list model is,

let's use like a shopping store example,

like Amazon or anything like that.

In the old days and old site, what you do is,

you would have a process that

where the user is like picking an item.

He picks a jacket, he says,

''Okay, add the jack to my cart.''

So, an old style systems,

the main site would say, ''Okay,

hey cart, add this, the cart would say, ''Okay,

I've added it and then you reflect that to the user.''

That's not how things work

anymore with the server list model.

You have a flow of information,

a stream, and you say, ''Okay,

let it be known that the user

has added this jacket to the cart.''

Down the stream there are consumers,

and in our case those consumers can do

a wide range of things which I'll show you here,

but in the example I'm talking about

with like a shopping cart system you say,

''Let it be known," and downstream,

there is the cart and the cart sees that event,

knows that event is relevant to it,

and uses it to put the information into the right place.

So, in our case, you can see here.

All of the core events up top things like matchmaking,

you've got buying items even just simple logins.

All of the things that are fundamental to our service.

The base APIs is that we already make

available to you have events.

You don't have to send

any events for those they already happen.

You can also generate custom events though.

In this particular example,

there's a crash log for example

so you could log information whenever

your game has an error so that you

can then track on that and do research

on what areas are more common and

help your development team to focus on them.

But, as you see, it all flows into here.

There's a visualization system in PlayFab,

that lets you then see all those events,

but then they also flow through

to the rules and you see down below.

The rules engine is where you can then have all of

these consumers taking actions

based on the events and then,

those can flow into other services

which then flow into other events,

creating that loop of information about your game,

how it's being played, how it's being used.

So, this is an example

of some of the events that you might see in the game.

The top one is a log-in event.

So, in this particular case

the player logged in, let's see.

The player is in this case,

in London, because you can see that the geo information.

The geo lookup is done by

IP address and then in the bottom case,

the event is a custom event for the game.

In this case, this particular game wants

to track whenever a player visits their store.

This is in-game store. And you can track

on custom information within

these events so you can have.

If you want it to track on player killed,

you could give the information about what X, Y,

Z position the player was at, what X, Y,

Z position the player who killed them was at,

so that you can then create heat maps for example.

The rules engine then is where you build out

these rules that take

advantage of all these events coming into the system.

So, in this case, you've got a statistic change event.

So, the statistic change comes in.

In this case, its boss is killed.

This is actually, if I can get time for it

and go quickly saying make sure you get there.

This particular rule is part of one of our demo games,

where whenever the boss event occurs we were

actually sending an email to the player.

That email contains a link,

which is a deep link back into the game.

So, it's a reward email. "Hey, congratulations.

You killed the boss. Click here to 100 gold."

So, the player gets the email. When they click the link,

it gets back to the game then they get to a 100 gold.

So, it's that flow that gets gets

pulls the player back into the game over and over again.

But, you can see in the actions chart there,

which I pulled up as a drop

down for the purposes of showing this off.

There's a lot of different things you can do.

You can also send push notifications to the player,

you can increment statistics,

grant them currencies or items.

You can even ban players if necessary.

One of my customers got

really excited when we first introduced

the system because he had long been tracking

on all the things he knew identified cheaters.

So, all he did was he built a rule set and said,

"Whenever this rule set is met, just ban the person."

Oh, and I should also highlight.

One of the ones you see on here,

''Execute Cloud Script,'' that's

probably the most powerful thing

because Cloud script is JavaScript hosted in our service,

and it will actually be offering a

C# option soon as well,

but that is custom logic,

to keep you right, relatively lightweight logic,

short lived things that you

can call from these actions and

do custom things. What's that?

>> Can I ask a question?

>> Sure. Go for it.

>> Can you set it two actions.

>> Can I do multiple actions? Oh, yeah, absolutely.

What I didn't show you actually you see

where it says, ''Add'' down on the bottom.

Yeah, you can add more actions onto a single thing.

>> So, if those actions are different to each other,

let's say if you grant a [inaudible].

Can you wait for the granting to go through?

>> Oh, you don't need to wait. So, the question is,

can you wait on one action to do the other action?

You don't really need to. When you-.

>> You don't need to but if you want

to make sure how many controls,

you don't want to tell the user, you can remove

all the minorities, you can't declare the player.

>> So, the question is about you

want to make sure that if you grant

an item to a player the players

actually got it before you tell them they've got it.

So, this is all a real time system.

I should really emphasize that all these events

are coming in as soon as they occur.

So, within a second, you got the event,

it hits the rule. All these things fire.

When the item is granted,

and you're sending a pusher or an email to the player,

it's going to take longer for the

push of the email to get to the player because

of just Internet latency

then it's can take for the item

to be granted to the player.

So yeah, you really don't need to worry about that.

But, then one of the more powerful ways you

can interact with your users is

by having user segmentation,

and being able to identify

all the ways that people play your games.

And the goal here,

one of the things that we talk about a lot

is getting to this segment of one.

Being able to have enough rich

segmentation of your players

that every single player gets

a truly customized experience.

And it's kind of a lofty goal and you know,

odds are good that you're going to have

a big enough user base that you're going to

have large groups of people who have

each classification of experience.

But, realistically, if you had a 100 different segments,

the number of permutations

that then falls into means that you really

could in some ways have

experiences that are truly

tailored to the individual user.

One of the things you see on here, because if you look

you can segment users on all kinds of

things and your point earlier about

can you do multiple things you could have five,

six, seven, 10 different filters on this.

So, your segments can be very

tightly-defined or very loosely defined either way.

But like, if I take for example

in here total value today in US dollars,

the amount of money the person spent.

For people who spend a lot of money in games,

particularly the free to play

games specifically I should say.

When they go to the store they really

don't care about your 99 cent items.

They want to see the $99 item that

contains like a million gold and a sort of doom,

and in an invisible plane or whatever.

So, being able to show them a different store,

not necessarily varying prices because,

of course, they can get you into trouble potentially.

But, talked to me afterwards,

using variable pricing as a

interstitial where you're offering

discounts works perfectly.

But, being able to offer a different store where you're

showing different items from the total list that

you have is absolutely a great technique because it's

similar to the grocery store eyeline concept,

where the grocery store puts

up the eyeline in everything they want

to really sell through a lot

because they make the most profit on it.

But in your case, you're basically offering

a different eyeline to every single customer.

Scheduled tasks that are a way

to create some logic

that you want to run across a group of users.

So, in this case, for this specific example,

we're taking the all players

in the segment of active players.

And active players, in this case, I think I defined it,

and just players who played the game within

the last two days.

And you're talking about a new event,

an upcoming event that might have been like,

we had a lot of titles do ''St.

Patrick's Days events,'' just recently obviously.

So, you're going to pre-announce these events,

let them know it's coming up so that people know, "Oh,

there's something unique happening for that title,"

and you know maybe this new costumes I can get,

anything along those lines.

You can also run a scheduled task in

addition to against a segment.

You can also run it against at

the title level itself and that's how you might enable

or disable these events

because you're running it just once the title level,

changing some title data.

So that when players log in,

they're getting new messages a day,

they're getting new information

about the configuration for the game,

and that's what gets used to

drive the actual interaction with the player.

And, as you can see, these things can also be

set to a schedule.

You can either set that to be like

hourly, daily, weekly, monthly,

or you could just set a Scrum definition

of when you want these jobs to run.

Live events then. So, obviously,

a big part of LiveOps

is driving these events for your players

because events and having these like periodic,

special periods of time where

the game is a different experience,

is something that keeps people

interested and keep them coming back.

There's a lot of

different ways you might focus on using events,

for fun, for monetization, the whole list here.

Honestly, a lot of events though are a mix of these.

A lot of them are going to be in the

bottom bullet point where it's really

you're doing it to increase the fun of

the game but you're also doing it

because you're introducing some new content.

So, some examples of that would be like these.

A lot of those screenshots by the way that I use are from

a game called Adventure

Capitalist or Adventure Communist.

These are games from Hyper Hippo,

they've been with us for

a very long time and they've been

nice enough to let us use images from their games,

and actually data from

their games when we're demoing the game,

demoing, excuse me, the service to developers.

But these are just some examples like,

having a launch day party

for your players or special day,

President's Day in this case,

St. Patric's like I said.

The Adventure Capitalist guys

have been building out and events over time where

they have more and more events

and they do these things they repeat

these events every single year and definitely,

we see spikes in their usage

every time one of these comes up.

Messaging to users.

So, there's many systems

within PlayFab to allow you to do this.

You saw that you have like pushing email notifications,

that you can do a scheduled task

to send out messages to folks.

But there's also a message of

the date type system in the service as well,

so that you can use that to

drive information about upcoming events.

So when people log in to the game,

you'll get the set of whatever the most recent message of

the date type messages

that you have in a published state,

so that players can get those and you

can present them to the users however you like.

Content, obviously we have a CDN.

We also have Title Data in the system.

So, there's basically multiple

ways in which you can deliver

new content and information about the game to the users.

So, beyond just the message of the day Title News system,

you have the ability to have files.

So, I know a lot of people are Unity developers,

you might use Unity Asset Packages

as a way to deliver new content to the games.

So you could deliver that through the CDN,

so that it gets to users as fast as possible.

But there's also Title Data,

and that's one of the most fundamental systems because

that's where you can store arbitrarily,

say JSON data or whatever format you

need that contains

configuration information for your game.

And that's where you would then adjust

that as you're doing events,

so that you have different information about

the mechanics of the game and how

they're changed based upon,

tuning the game or based upon the events that are

occurring at any given time.

We've got a complete Store System.

So in the store, you're able to define

products that are for sale to the players, the pricing.

We integrate with receipt validation

from all of the major platforms,

the entitlement systems for

the different console systems.

And then we also have in addition,

some just straight up cash purchase systems

enabled like Steam Wallet,

PayPal, et cetera, things along those lines.

But you then just define your Catalog in the game,

you can define various stores.

And a store is a view of

a subset of items within the Catalogs,

so that you can have that differentiation of,

you might have a store for

just different character classes.

The fighter has one store, the clerk has another store.

But you might have different stores, like I said,

for players who spend different volumes of money.

Somebody who's never purchased anything before,

sure, show them all the 99 cent items.

Somebody who spends a lot of money, no,

show them the expensive items

that's what they want to see.

But you can also see at the top,

as an example of the launch

party that I was talking about earlier.

During your first launch day,

maybe you want to give a half off

price to everybody for everything in your store.

So, when you show these,

this is an example of the store

screen in our Game Manager.

Everything about the game you can

configure through the Game Manager.

We try to be always API first,

so there are admin APIs if you

want to control things through your own scripting.

But the Game Manager's really handy tool

for taking care of all of your configurations.

So, in the store,

you can define the set of items that you

want to have for players and the pricing.

Stores can have different pricing, obviously,

so that you can have

the variations that you're offering to people.

And then, down at

the bottom of the whole set-up for the store,

there's the segment override system.

So, when you have user segments defined,

one of the things you can do, is you can say, "Okay,

so, if the players in this segment versus this segment,

don't show them the base store,

show them a different store."

So, that's specifically how

you would do what I was talking about,

where somebody spends a lot of money,

there are in that segment if users

spends a lot of money, great.

So, instead of showing the base store,

show the wealth store for use of

a common used term that's not

necessarily one that I like, but still.

Okay, so that's the idea of the overall system and it

looks like I actually managed to rush that enough,

that I can actually show you a little bit

of this in practice.

So let me bounce out here,

and go to my dashboard.

So you can see, this is the typical dashboard for a game.

And if I load up my demo application.

I'm going to connect and play.

There we go, so I've just logged in,

I mean, there you go, I'm in San Francisco.

Let's look at the data for that. Okay, so

there's my GPS position based upon my IP address.

And if I then go in and

actually play a round of the game.

And obviously, it's just a demo game

so it's really quick to just tell it, "Go to a level."

Boom, there's all the data that comes through with that.

There we go, I killed the boss,

so it actually sent me an email.

Let me go out to my email.

I can make this. Oh for God's sake, I'm sorry guys.

Let's do that again. Duplicate. There we go.

Have we got it now? Why is it

not showing? All right, there we go.

All right, let me just do that again.

We back out of the game. Log out.

All right, now from the top,

let's connect and play. All right, there's the log in.

The log in data showing you the GPS.

All right, I shouldn't say GPS,

geolocation based on IP, realistically.

And then if I go in and play a level, there we go.

Boom, statistics, I killed another boss,

great, I'm on a roll.

So you can see that all these events are happening in

real time as the players playing a game.

So if I then, and I hope I get the right email account,

I'm actually not sure which email account I set up for

this. It's obviously not that one.

So, if I go to here,

all right, I don't want to take up too much.

Here it is, I actually found it.

So, this is the mail that

was just sent to me that has my,

"Congratulations, you get a 100 gold coin."

So, I'm going to click the deep link URL.

"Granted a 100 gold coins to the player,

virtual currency balance changed." There you go.

So that's an example specifically of using that kind of

an operation in our system to

drive that experience for your player.

So, okay, obviously rapid

fire discussion and rapid fire demo,

I wanted to squeeze a lot of information into

a very short period of time.

We are coming up on the 11:15, so I just wanted to check.

Are there any questions at all I can answer for you guys?

I also grabbed a bunch of copies of

this from our booth to bring over.

Let me go back to my PowerPoint deck here.

Just to talk a little bit about Call to Action.

Basically, the action I

just would like to encourage you over to take.

Go to PlayFab and go ahead and create

your free account, developer.playfab.com.

It's easy to set up an account.

Creating an account automatically gets

you in the free tier,

so you can create a title,

you can start experimenting with it,

use it however you like.

And if you got any questions, we've got

a community forum that's linked

both from our developer site and from our main site.

Feel free to ask any questions there.

We're happy to get you all the info you need.

But think through in terms of your LiveOps strategy,

how you want to apply that to your games?

What things make your game unique?

What things make your game play

experiences unique for your players?

How they can be varied?

All of that, all of the things that

we've been talking about here.

Definitely, like I said,

I grabbed a few of these to hand out here.

Definitely, if you don't already have

a copy, pick up a copy of this.

This is our LiveOps

best practices guide that we put

together specifically for this conference.

We'll be putting it on our site later as well,

but we wanted to give everybody here

an opportunity to get a hold of it first.

And yeah, give us feedback

either at the booth or online, whatever.

We really want to hear from our developer community.

That is specifically how we determine what

our priorities are for the things we do going forward,

is what we're hearing from all of you.

All right, so with that, if there are no questions.

All right, great. Thanks guys.

For more infomation >> Your Game For Everyone with PlayFab - Theater Presentation - Duration: 27:00.

-------------------------------------------

Emergency Vet Orlando Fl - Your pet waiting for you to call + 1 (407) 6270810 - Duration: 0:46.

Emergency Vet Orlando Fl - Amazing veterinarians with a huge heart!

Emergency Vet Orlando Fl - There is no such amazing place - just for you and your pet!

Emergency Vet in Orlando is the place where your animal can be treated around the clock.

Không có nhận xét nào:

Đăng nhận xét