Okay, everyone, so welcome to anomaly detection algorithms and techniques for real world systems. So my name is Minaj Anandi. I am the lead data scientist at StealthBit Technologies. And so this talk is sort of based on some of the work I've done at StealthBit over the past year and a half. So a quick outline for this talk is a quick overview of anomaly detection. What makes this different from other data science and machine learning type problems? And then I'm gonna talk about detecting anomalies in three different settings. And data streaming settings, we have data coming in and you need to do anomaly detection in real time. Density based anomaly detection. So this is when you have a bunch of data points and you wanna figure out which one and others. And then finally, anomaly detection in time series. So if you have user activity over time, how do you find anomalous speaks and spikes? And then finally, I'm talking about like two practical things about how do you do this in real world with garage testing and how do you convey this information to end users? So what are anomalies, a million dollar question? And the thing is like we all have some conceptual idea of what anomaly is, but it's really hard to define. It's sort of like you know it when you see it with things, but if I were asking you to find anomaly, you'd probably give me something along the lines of, it's just something that's noticeably different from what is expected or is different from everything else. And that's the kind of description, but it allows us to like sort of flexibly define anomalies. Like anomalies are not this like hostile, like hard, steadfast thing that's gonna say fix over time. Anomalies are gonna change over time. And one thing that's important to consider is what is considered anomalous now may not be considered anomalous in the future. You know, a couple weeks ago, kids running around the park at 3 a.m. would be considering how there's this thing called Pokemon Go and kids hanging around parks at 3 a.m. is completely normal. So there are very different approaches to anomaly detection. So one thing we can do is sort of develop a statistical model of like normal behavior. And then we can sort of test as each observation comes in, like how well does it fit into this model? And so we can say if the people according to this model, and then we observe them and say, oh, according to this model, you're acting anomalous. The way, and this is one way we can do this. Another way is we can sort of take a more machine learning approach and try to use classifiers to label data points as like a normal anomalous. So there's one big issue with this approach of treating as a machine learning classification problem is that there's a huge classic more than 99% of your data should be normal and less than 1% or less than 0.1% of your data should be anomalous. That huge class imbalance is gonna be causing you big problems. You can't do deep learning on this because you don't have enough anomalous examples and other traditional machine learning algorithms like support vector machines and random forest are also having issues. We'll also have issues just because of the class imbalance. So for this talk, algorithms that are specifically designed to deal with anomalies and deal with outliers that are very rare in your data set. And so the first setting we're gonna talk about is anomalies in data streams. And so in this setting, we basically have data coming in continuously and we need to be able to identify anomalies in real time or near real time. So as soon as they come free, five seconds at most, we'll be able to say, this is normal or this is anomalous. And so then we have a huge constraint because when we have data streaming, you really can't keep track of everything. You can only keep track of maybe like the last 100 events that happened. And so you need to be able to come up with these like sort of quick and dirty methods that can act quickly, that can like quickly label or identify things as anomalous or not, but also work with the fact that we have limited memory. So let's start with something that should be familiar to people if you've taken a statistics course, the Z-score. So the Z-score is something that's sort of used the time and like how extreme an observation is. If you know the population mean and you know the population standard deviation, you can calculate the Z-score and it sort of measures like how extreme that value is, how likely is it. And so the general idea of the Z-score is that you have the mean which just tells you like what the center is, what you should see the data centered around.  And one way you can use that is to do moving averages and moving standard deviation. So as the data comes in, you have an average like last hundred data examples and the standard deviation lasts 100. As the new point comes in, you update the average, you update standard deviation and then you can calculate a Z-score for this new point. Now if this Z-score exceeds some threshold, let's say 3.5 or 3, then you can flag that point as anomalous. But there is actually a big problem with this. It's not so much in like how we use the fact that like averages and standard deviation are actually kind of bad when it comes to extreme values. So it turns out standard deviation and also means are very sensitive to extreme values. One small extreme value in the data can like drastically increase the standard deviation and they can drastically shift the mean. And as it increases standard deviation, you can also cause other points that would traditionally be considered anomalous to not be considered anomalous because then you'd like deflate their Z-score. And so to get more into like the quick mathematical theory about this, why does this happen? So what is the mean? So it turns out the mean, if you're giving a set of numbers, you want the mean as sort of like a summary statistic, as some number that is private. And arithmetically, the mean is actually a number that solves this optimization problem. You can basically think of your set of numbers as a vector in some data space, as some in a vector as a vector space. And the mean is basically a vector, some number S that sort of minimizes the distance of the vector in like the L2 norm. So this may be complicated, it may be too much math for 9 a.m. 10 a.m., not 9 a.m. So the key thing you need to get out of this is that there's this like X i minus S squared, that's quadratic. And that basically means when you have extreme value, it's gonna like increase quadratically. And I'm gonna show this in the next slide. On the other hand, the median is solved with that minimization problem, which is optimization in the L1 norm, and it's pretty robust to, and show like what's the issue with the mean as standard deviation. So it is two plots. What I did was I created an array of, it's an array with 99 values of 10, and then one value that's like extreme value. So that can be, the extreme value is 10 to the number at the bottom, so it'll be 10 to the two, 10 to the three, 10 to the four. And you can see how like the mean drastically is being increased the value of that extreme value. And as you notice, it takes sort of like a quadratic shape.  And so that's showing like the mean is like super susceptible to one extreme value. All I've done is one extreme value, and it causes the mean to shift greatly. Same thing with standard deviation. Once the extreme value and the standard deviation just shoots up really quickly. So how can we get around this? Well, I mentioned it before on the last slide, the median is pretty robust to outliers. So can we use the median to come up with a new way to define the center and spread? And yes, we can. And so this is called the median absolute deviation. And so this is actually sort of like a more robust, is more robust version, it's like a more robust cousin of the standard deviation. And how it works is it basically it's sort of the median of the median deviation. So you pay up the data, you calculate the median, you subtract the median from each one, and then you find the median of that. So it's like the median median deviation, whereas the standard deviation is sort of like the mean of the deviation from the mean. And so this provides a more robust measure of spread, because it doesn't get affected by that huge outlier. The deviation from that outlier is not gonna be the median, so we don't really care about that. It doesn't affect our median absolute deviation. And this is a pretty easy thing to code up. So this is what it looks like in Python. It's just three lines. You calculate the median, and you take the median of the median deviations. And then you do a new version of these scores. And this is called the modified Z score. And so using the median and the median absolute deviation, we can compute the modified Z score for each data point. You take in your data X, and you subtract out the median, that's what that X tilde is, divide by the median absolute deviation, so that's your notion of spread, where normally that's where the standard deviation be. And you multiply by this constant, 745, that's just more of a constant to make things work out mathematically when you do the integration. That's just more for mathematical theory. You don't really need any more details about why that happens. And then you can use the modified Z score in place of the Z score to do threshold-based testing. And so when you use modified Z score, it's recommended about the same levels of 3.75 of the modified Z score, then you have an anomaly. And so this is nice because it's a quick and dirty method to doing real-time detection. Like you don't need to keep track of two things, the median and the median absolute deviation, and you can quickly compute these modified Z scores for each incoming data point and then the output normal anomalous on the fly. So now let's talk about density-based anomaly detection. We basically have a bunch of data points in some end-dimensional space. And we wanna know which one is noticeably different from the others. That's essentially the goal of density-based anomaly detection. If you look at this plot, you can kinda see which one is gonna be the anomaly, right? It's that guy up in the top right-ish corner. And so a quick primer about density. So if you look a lot in statistical methods and some machine learning methods, you're gonna hear this idea of density-based methods, like DB scan, which is a clustering algorithm, is a density-based clustering algorithm. And so what do they mean by density? So the statistical theory behind this is that in, like we assume that all the data is generated according to some probability distribution. We assume it's generated according to a normal distribution. We assume it's a quarterly distribution. And all those probability distributions have some probability density function. That's like the likelihood of a particular value appearing. And so that's what we mean by like density-based clustering. We sort of want to infer what is the true probability density function generating this data. We don't know what the true probability density function is. No one knows what it is. Any higher power, if any, that you believe in. But we're trying to estimate the probability density function. And so how we estimate density is gonna be a little trick of heuristically how we're gonna think about it. It's like think back to your elementary science classes. What did you learn density as? Density was mass over volume. And so that's sort of like the little heuristic we're gonna go use as we go in. Mass is gonna refer to the number of data points. And volume is gonna be like the volume of the space we're gonna be looking at. And so the way we do this with local outlier factor is we're sort of gonna like try to quantify. So this is an algorithm called local outlier factor. It was invented in 2001. It's a very famous density-based anomaly detection algorithm. And there have been a lot of variations of spin-off off this. And so the question behind this is that like the anomalies should be more isolated compared to the normal points. Like that red point up there, it's more isolated from all the other points. And the idea is that we quantify the relative density around that point. It should be much less than the relative density of every other point. And so the goal of local outlier factor is we're gonna wanna want to estimate the density about a point. How many points are around it? And so to do this, we're gonna need this first intermediate value which is the K distance. So for each data point, we wanna compute the distance whose K is nearest neighbor where K is specified beforehand. So K could be three, K could be five, K could be 100. And so this idea is that this K distance is gonna give us our relative density is like mass over volume. This K distance is gonna give us an idea of volume. If you see the outlier, so that's applying its K distance to his fifth nearest neighbor. And so it has like a large fifth nearest neighborhood. On the other hand, this little point in the center has the purple one and has like a little magenta neighborhood. That's a normal point. It has a very small fifth nearest distance, K distance close to the other points. And so the thing is that the more isolated point is, larger K distance is gonna be. Since it's farther away from all the points, we have to look farther from it to find other neighbors. And now here's an interesting idea. So this is called the reachability distance. So this is gonna be a little confusing at first. And so the reachability distance, A and B, is the maximum of the K distance of B and the distance between A and B.  So this is an interesting idea. So if you can imagine your nearest neighbors as sort of like your friends, the general idea of the reachability distance is, do the people you consider to be your closest friend consider you to be one of their closest friends? State of point? Then yeah, your nearest neighbors are probably also, your closest friends are also, probably also considered you a close friend. On the other hand, if you're the anomaly, then you can go up to your closest friends and like, hey, you're my friend, right? And they'll be like, yeah, sorry. And to sort of prove this, can the camera see me up here? So this is this anomalous points neighborhood. And these are his five closest neighbors, these teal points right here. So let's expand the neighborhood this one, this point. So this is one of his neighbors. If you look at it, the anomalous point is not in its neighborhood. So this teal point doesn't consider him to be one of his close friends, but he considers him to be one of his close friends.  So if your neighbor see you as one of their neighbors, you're good. If your neighbors don't see you as one of their neighbors, you have a problem. And now, like I said, this is all the years we want to estimate density. So we have this idea of volume. We have this idea of mass because we specified how many neighbors we have to look for. If we specified K is five, then we know the mass is five because we have a volume that contains five data points. And now we can sort of, and so for each point, we're gonna calculate the local density about it by taking the average reachability distance of its neighbors to A and taking the inverse of that. So maybe we're wondering why we do this inverse? Well, the average reachability distance is sort of like the volume. And you take the average, you're dividing by the number of points, which is like the mass. So now we have like volume over mass. And we need to kind of get that into density. How do we do that? We take the inverse. And so that's why the local reachability density is this like one over the average reachability distance of the neighbors. Is that confusing to anyone or? Okay. And now we have the average local density for each point. And now we can calculate this local outlier factor score for each data point. And so the local outlier factor score is basically the ratio of your neighbor's density compared to you. And so the idea is that like if you're an outlier, you come from less dense areas. So this ratio should be higher for outliers. So the average density of this point is probably something like very low. Yeah, if you take these five neighbors and take their density, it's gonna be much higher.  And so the idea of the LOF score is like the higher it is, the more likely you're an outlier. And so for this example, that outlier up there, the red point has an LOF score of 2.7. What does that mean? Well, first of all, a normal point should have an LOF score between one and 1.5. What does one mean? It means the average density of your neighbors is about you're in the same neighborhood, the same density region as your neighbors. On the other hand, if it's much higher, that means you come from a less dense region. So it should be, you should be, so you come from a less dense region so the value is much higher. And so let's say if a point has an LOF score of three, that means the average density of that point's neighbors is about three times larger than its local density, which means it comes from a remote region. It comes from a region that's like one third as dense. And that's kind of strange because the points near to you are nothing like you at all. And so that's sort of like our definition of normally, like it's nothing like its neighbors. Okay, so next and final section is sort of like time series based anomaly decodes. So the time state is anomaly detection. We sort of this in X by time. Can we not define the extreme spikes and troughs in the time series? And one thing we need to keep in mind is we want to identify both global anomalies and local anomalies. So global anomalies are ones that like in the entirety of the time series, these sort of stand out. Whereas local anomalies are more just like even the specific like short time range between that point, it sort of stands out. And so this Twitter engineering blog and shows like global anomalies are these huge spikes up there where it's like the local anomalies are sort of normal compared to the global thing, but within their like specific time section, they sort of stand out. And so this algorithm is called the seasonal hybrid ESD or the seasonal hybrid extreme student eyes deviate. And so this algorithm was invented at Twitter in last year. We released it last year. And so this algorithm has two components. It has a seasonal decomposition component which deals with sort of like the time series element of the problem. And then deals with has the ESD component, the extreme student eyes deviate, which deals with the anomaly detection component of the problem. And so the general idea is that we sort of want to like remove some of the temporal noise from the data before we try to detect outliers from it. And so the first composition will sort of remove the temporal noise that we don't care about. And then after we remove the noise, so we basically clean the data, we can move it onto the second component which will then actually identify the anomalies within like the remaining meat of the data. So the seasonal decomposition. So this time series decomposition is sort of like a pretty classic method in like econometrics. And so they get out of time series into like the three important parts. You break it down to the trend which is like the actual thing you care about in the time series. You break it down to a seasonal which are just like periodic patterns. So these could be like seasonal patterns. Let's say if you're in economics, you notice that like people's like consumption of like electronic goods goes up during the winter because people are buying Christmas presents. So this is like a seasonal thing that happens every winter. You don't really care about that noise.  It's just a catch all for the things that don't fit in the other two. And like I said, the trend component is like really the thing we care about. We care about like the trend because it's always like the important stuff in the time series. And so what seasonal decomposition does is we sort of remove, we take the time series, we break it down to these three parts and then we remove the seasonal. We basically remove this periodic noise. If we're like monitoring user's behavior over time and we notice that like people don't do anything on Fridays, and we don't really care about that. That's not specific to a user. That's specific to everyone. People don't do much on Fridays because Fridays they kick back and relax. And so we sort of want to remove that because we don't really care about that. And so after we, so this example of the time series, so the above is the observed time series and then below that are the three components. So if you look at the above time series, it's sort of like it has this increasing over time. And so the trend is just like the straight line is increasing over time. You notice like there's periodic fluctuations of observed data and that's the seasonal. It's capturing that periodic site spikes and troughs. And then you have this random one which is capturing the random noise and the fluctuations that can't be captured by you. And so now we have taken the time series and removed the seasonal component. So we removed that temporal noise from it. Now how we find the anomalies. So the idea of the extreme studentized deviant is sort of like a statistical procedure to iteratively test for anomalies. We basically specify beforehand how many anomalies we think there are. We say I think there are 10 anomalies in this data set or I think there are 50 and then we sort of iteratively test for them. And one thing we have to be careful about is when you do multiple testing if you run the risk of false positives is like a very important issue in statistics of like multiple hypothesis testing leads to like false positives. It's a huge problem in psychology where they'll run multiple tests, run like seven tests at a time and it's like oh one of these tests returned positive you therefore we found a meaningful result. XT Webcomic has a comic about this about jelly beans causing cancer or something of that.  And so like all statistical tests you basically have to specify the alpha value that you want to test for. So this is like alpha equals 0.05 you're testing at the five significance level and you need to specify how many anomalies you're looking for maximum. And the procedures of how this algorithm works is for each data point you compute the g-score which is basically the absolute value of the z-score. You take the data point, subtract mean divide by a standard deviation and take the absolute value of that. And so then you take the point with the highest g-score and using your alpha value that you can compute this critical value or this critical threshold. If the g-score of your test point is greater than the critical value you flag that point as anomalous. And now regardless if you flagged as anomalous or not remove it from the data set. And you just repeat steps one through five for the number of anomalies you're looking for. So if you're looking for 10 anomalies maximum you do this 10 times. And so what this does is like oh find the most extreme point, test it and see if it's anomalous compare what you statistically expect. If it is flag it and remove it if it's not just remove it. And so now you have the remaining data and you find the next extreme point. Test it, if it's anomalous remove it if it's not still remove it and keep doing that until you've done. And so how this algorithm works the result is algorithm. So here's an example from Twitter basically they have this time series as a little hybrid ESD algorithm on it with alpha equals 0.05 and they can show a couple anomalies at the end. And so you see the anomalies correspond to these global spikes where it's really high or these global troughs where it's really really low from what you expect. Like it's very noticeable you can look at that pickager and say yeah that's kind of anomalous it's really high or really low. How do we do this stuff in practice? So one good thing I've learned while doing this is if you're giving this to an end user if you're designing a system for an end user you want to provide them with risk scores. So you don't want to treat this as like a classification problem if you know machine learning you want to treat this as a regression problem because it's like very hard to say if something's like truly anomalous or not like saying that something's like yeah or no this is 0% anomalous. That's like a kind of a big judgment to make.  So this way it's like yeah I think this is a pretty risky value. Like I'm gonna give this a risk score 50 or I'm gonna give this a risk score of 70. And I recommend doing it from like a zero, a hundred scale because people sort of like intuitively understand that scale. Like a hundred is bad, a zero is bad. How do you get these risk scores? Well, one thing you do is when you're calculating the anomalous events is you can sort of like assign a probability to it. You can say like given your critical values given your LOF score I can say this corresponds to a probability of being a likelihood of this is anomalous given this critical value given this LOF score is like 75 or 0.75 multiply that by a hundred. It has a risk score of a hundred. And you can also get additional calculations afterward but you want to give them risk scores. People understand risk scores. They don't really understand probability. And finally how do you test these algorithms? So one key thing is when you're testing your algorithms you have to do it in completely different environments. Don't just test it locally within your company. You want to test it within your company. You want to test it in at a beta customer.  And so this is huge because like in machine learning usually you do like the training, the cross validation and then you do one set of testing. You have some testing data set that you run it on one time. And so that doesn't really work for anomaly detection. You need to test it in multiple environments. In addition I also recommend since anomalies are pretty rare, create some synthetic data where you know there are anomalies in it. And if you can find the anomalies in those, okay that's good. If you can't identify the anomalies in your synthetic data, then you have a problem because if you can't even find the anomalies you know you're there, how can you find the anomalies that you don't know are there? And one thing is that you over time will consistently be testing these algorithms and fine tuning them. And so one thing I recommend is building a test harness to like automate testing of your algorithms. So as soon as you make some changes to it you can easily test it and see how well it performs compared to previous iterations. And I recommend sort of like building your own test harness so you sort of know what you're looking for and what you're testing for compared to like some off the shelf test harness. And so yeah that's my talk. So I guess at this time I'm done so if there are any questions I can take those now. So why do you have to specify the number of anomalies? That's because like theoretically easily go through the entire test for all the data points normally but like then you have this issue of like you're doing the multiple comparison too many times.  Like okay test the first point with some high critical value you remove it then you sort of lower your critical value so you're sort of like gentle relaxing.  Okay so I guess how well do you scale? So actually the first one, the modified Zscore stuff and media absolute visualization. This scales pretty well cause a lot of us can be paralyzed pretty easily. Like you just need to calculate the median globally and then you can calculate the deviations. If you have some distributed system like Spark that across the nodes calculate deviations for each one bring it back together calculate the median absolute deviation on like the global system. And so this actually works very well. It's like scales very well as large data sets cause it's like a quick and dirty method. It's supposed to be quick and it's supposed to scale easily without doing like too many complex computations. So next is the local outlier factor. How well does this scale? So this actually, if you implement this correctly it's like doing this K distance stuff scaling that well. So in SciPy there's an algorithm called the KD tree which is like, it sort of does nearest neighbors really well. It's like implemented really well. SciPy KD tree is in the spatial library. And so that will do the K distance really well. And so as a result this algorithms if you use that or some like efficient implementation of a KD tree or whatever programming you use you can scale well to the number of data points you have. The big issue with LOF is scales poorly with the dimension of your data. So if you can go for like 10 dimensions that works okay you have like a 10,000 dimensional data points that doesn't scale so well because you have to calculate distance in 10,000 dimensional space.  So it scales well like with a number of data points it scales pretty poorly with the number. There is an algorithm that deals better when you have like high dimensional data. I can't remember what it is off the top of my head. Yeah, but it doesn't exist. People have thought about this and that's why I'm like the variations of this. And then finally there's the seasonal hybrid ESD. This actually scales very well with the amount of data points. I mean it was invented by Twitter so it has to like scale to the amount, you know people vomiting into the boy that people do on Twitter every day. So that's a scale well to like that level of data. And so this actually scales pretty well to like large amount data. Time series is usually like one time versus one value. So you don't have to run into this like dimensionality problem. Yeah, so this is like that's like the million dollar question like how do you pick the K and like any sort of these like clustering all of them like K means how do you pick K? Like that's the million dollar question. Best thing is to try out different values see what you get because like, oh hey maybe this looks like this would look anomalous. Maybe that point would look so anomalous if I had like two data points right here. So like just a trio points and like maybe I said K was two then this point will look to anomalous at all. Do you want to like try different values also taking the fact that the higher the K is the like slower this algorithm will be. So as rule of thumb I generally use like there are end data points I use log N as value and then work from there. What do you mean mixture of distributions? So what you're thinking is the more like using K means to find like little clusters, anomalous clusters so they're two different like data generating processes. How do you do that? Yeah, so that's actually a kind of really can't handle like this LOF assumes that like all the data is generated from like the same distribution. Yeah, I'm sure there's some other algorithm that happens like mixture of Gaussians I'm just not sure what they are. So I imagine to be similar to like how you do feature selection other supervised learning just because of the company I work for I really don't have to do much feature selection cause like company has like proprietary security software and that data gives us like maybe four to five features for each user. And so I don't have to do any feature selection on that. I can just use all the features they give me. So I don't have like really any experience in this but I imagine wouldn't be too different from like how you do feature selection in any other traditional machine learning problem.


This study found that children who received one dose of measles mumps rebella vaccine, MMR, in kindergarten and primary school were at high risk of mumps infection and waning immunity occurred with time. The study recommends determining the optimal age for a second dose of MMR to prevent mumps epidemics. This article was authored by Yuan Bao Liu, Xihao Liu, Shouying Deng, and others.


Lead toxicity remains a prevalent and major public health concern, especially for babies. And one of the most important sources of lead exposure for the fetus and infant is maternal blood. Lead in pregnant and nursing women's bloodstream readily crosses the placenta and into breast milk. Where does her lead come from? Most may originate from her own skeleton where lead from past exposures builds up. Past exposures to what? Mostly through food, then dust, water, and air. One of the more atypical sources of childhood lead poisoning in the United States are lead-tainted candies, including, ironically, brands with names like toxic waste, though the FDA recall only evidently applied to the nuclear sludge variety, not the other toxic waste candies. Many of the tainted candies were imported from Mexico, particularly candies containing chili peppers and salt as major ingredients. Maybe the lead was from mind salt or grinding stones or lead containing pesticides, they're not sure. But wait a second, there's something else in grocery stores containing imported chilies and salt as major ingredients? Hot sauce! In the last decade, the FDA has issued several warnings and recalls for food products that exceed the standards for lead. Products containing chili peppers and salt were often suspected as sources of lead contamination, such as the candies. However, products such as hot sauces that contain similar ingredients have not been the focus of evaluations until now. They tested 25 different hot sauces and about 9 out of 10 had detectable lead. But only four brands exceeded the FDA's action level of .1 parts per million. But that's the candy standard, so technically none of the hot sauces can be recalled off US shelves. Although candy and hot sauce contain common ingredients, there's simply no hot sauce standard. The most contaminated hot sauces had about a microgram of lead per teaspoon, which may be more than young kids should be getting in their daily diet. But how many six-year-olds are consuming hot sauce by the spoonful? Although hot sauce would not intuitively be counted among food products highly consumed by children, ethnic and cultural practices must be considered. Chili peppers and salt are commonly used in a variety of ways in everyday cuisine, and so they want to see the same stringent candy standard applied to hot sauces, or at least have some limit without enforceable standards for hot sauces – what motivation do manufacturers have to even look into the problem? For example, it may be the soil, the dirt is just so contaminated by lead that just washing off any residue on peppers after picking may cut lead levels fourfold in the final product. But why bother taking the extra step if no one's checking? Any other imports we should be concerned about? I've talked about the heavy metal contamination of herbal supplements, but not this kind of herbal supplement. Several hundred people suffered lead poisoning, presumably resulting from the desire of drug dealers to maximize profits. Lead is heavy, about 50 times heavier than oregano, so it's particularly useful for driving up profits. And it wasn't subtle, you could see the little lead particles. Why an epidemic of lead poisoning among young pierced students? Because dealers could make an extra $1,500 per kilo.


Amen, so keep your place in Luke chapter two. We're going to go through with Christmas approaching. We're going to look at the Christmas story, the birth of Jesus Christ and the first part of his life this morning and see what we can't learn from this going into Christmas. So Luke chapter two, of course, is a very well-known chapter in the Bible talking about the... It actually talks about the birth of Jesus all the way up to the point where he is 12 years old. So basically, Luke chapter two is the first 12 years of Jesus' life. And there's some other detail in other Gospels and other parts of the Bible that we will look at this morning as well. But let's look at the Christmas story this morning and see what we can learn from this story, this way that God decided to bring the Messiah into the world. God could have just remember, God could have chosen any time and any place in any way to bring the Savior of the world to us. But he chose this time and this place and this way and these people that he used. And let's look at why he did that. Look at Luke chapter two in verse number one. The Bible says in it came to pass in those days that there went out at Cree from Caesar Augustus that all the world should be taxed. And this taxing was first made when Cyrenius was governor of Sirius. So the idea, the story of Joseph and Mary in Luke chapter two in the birth of Jesus leads up to them heading to Bethlehem to actually pay their taxes. And you know, Joseph was not a tax protester and were not to be either. You know, the Bible addresses that in several different places. Jesus even addresses that, but they were on their way to pay their taxes in Bethlehem. And the Caesar here that is called out is Caesar Augustus. And why is that important? Caesar Augustus was actually, if you actually go and look up the history of the Roman Empire, another name for him and the name that I always heard him called was Octavian. So Octavian was the same is another name for Caesar Augustus. He was actually the first emperor of Rome. So Rome, remember, started out as a republic and, you know, they had a more republic type system. And Caesar Augustus was the first kind of the first emperor. He came in and just seized total power and then the Senate and the kind of just became just for looks. He was really a dictator is what was starting here in Rome. He was a great nephew to Julius Caesar. So Julius Caesar was, you know, considered maybe one of the greatest military commanders many people think of all time. And his great nephew, he actually adopted kind of adopted Augustus as his or Octavian as his adopted son. And that's how Augustus became emperor of Rome, but a dictator nonetheless. So this just goes to speak that during the Roman Empire, you know, we're heading into a more oppressive Roman Empire when Jesus is born at this time.  And then a really nice guy right after Claudius was Nero. And of course, Nero, he accused the Christians of burning Rome. And then he, you know, he, he introduced some persecution that Christians still to this day write books about. So Nero was a terrible person. But the point being is that we're entering into a dictatorship in the Roman Empire when Jesus comes on the scene. So it's a very oppressive empire. It's one of the it's it was a peaceful time for Romans at that time. But they were they were under a dictatorship is what I'm getting at. Turn to Isaiah chapter nine, turn to Isaiah chapter nine. So while there was relative peace in the empire of Rome for a couple of hundred years, there was plenty of internal oppression that was happening. There were not it was not a free country, so to speak. Look at Isaiah chapter nine and verse number six. Look what the Bible says. This is a prophecy about the coming Messiah for unto us a child is born unto us a son is given and the government shall be upon his shoulder and his name shall be called wonderful counselor, the mighty God, the everlasting father, the prince of peace. Many names for Jesus there of the increase of his government and peace. There shall be no end upon the throne of David upon his kingdom to order it and to establish it with judgment and with justice from henceforth even forever. The zeal of the Lord of hosts will perform this. Go back to Luke chapter two. So the Bible does predict that the Messiah and those that follow will be under oppression from the government. So the Bible correctly predicts that. That's a fulfillment of prophecy that Jesus came in in this type of environment. Look at verse number three. The Bible says in Luke chapter two and verse number three and all went to be taxed everyone into his own city. And Joseph went up from Galilee out of the city of Nazareth into Judea. Under the city of David, which is called Bethlehem, because he was of the house and lineage of David. Of course, we see Joseph's lineage in Matthew chapter one talks about Abraham to Joseph, showing that he was of the lineage of David. Look at verse number five. To be taxed with Mary, his espoused wife, being great with child. Now that's a statement right there that you wouldn't see except for this miraculous event. Because notice, first of all, his espoused wife. So espousal in the Bible is not engagement. Okay. So today we have this meaningless thing that we call in our society or in our culture today of engagement where people get engaged to be married. It means they have the intent to be married. And it was supposed to be, I suppose 20 or 30 years ago, you would get engaged and then you would be married within a few months. Now people just get engaged and maybe they get it married in two or three years or maybe they never get married at all. The point is engagement is not marriage, but in the Bible espousal is married. So she is considered Joseph's wife, but being an espoused wife means that they have not physically come together yet. So of course in Matthew chapter one, you go ahead and turn there. We can look at how this happened. So she was his espoused wife. So she was considered married. So any physical activity outside of that espousal would be considered adultery in the Bible. And that was the problem that Joseph found himself with when his wife, his espoused wife, was with child when she was found to be pregnant. And the Bible says, look at verse number 18. Now the birth of Jesus Christ was on this wise. And when as his mother Mary was espoused to Joseph, that's married. That's his wife. Before they came together, that means that physical relationship between a husband and a wife, she was found with child of the Holy Ghost. So of course Mary was told that she was with child of the Holy Ghost. This is where God tells Joseph this same thing. Then Joseph, her husband, being a just man and not willing to make her a public example, was minded to put her away privately. And not to go into a big diatribe on divorce, but there is only, today it doesn't apply. But in the Bible it only talks about someone who is espoused or found to not be pure or not be a virgin. That is the only way that you were able to put someone away in the Bible. Look at verse number 20. So he was going to put her away. It was just for him to do that because she had committed adultery at that point. But while he thought on these things, and he didn't want to do it publicly, he didn't want to make an example of her, he wanted to do it quietly. But while he thought on these things, behold the angel of the Lord appeared unto him in a dream saying, Joseph, thou son of David, fear not to take unto thee Mary thy wife, for that which is conceived in her is of the Holy Ghost.  Now all this was done that it might be fulfilled, which was spoken of the Lord by the prophet saying, behold a virgin shall be with child more fulfilled prophecy here, and shall bring forth the Son, and they shall call his name Emmanuel, which being interpreted is God with us. Then Joseph, being raised from sleep, did as the angel of the Lord had bitten him and took unto him his wife. And knew her not till she had brought forth her firstborn son, and he called his name Jesus. So they're told to call him Jesus, and Joseph is led in on the plan here, and he does what he's supposed to do. I mean that's an important part of the sermon this morning, is that Joseph, he followed what the angel said on more than one occasion. So it wasn't the easiest thing for Joseph to do this, because you have to remember, Joseph knows what's going on, but now you have to remember that how would the public look at this situation? I mean here's Joseph, he's espoused to this woman, and she's pregnant. And you know that publicly that would not look great, but Joseph, he did what the Lord asked him to do, is what he did. And then it says, go back to Luke chapter two, it says of course he knew her not till she brought forth her firstborn son. So Mary had other children, this was just her firstborn son, and he called his name Jesus. Look at verse number six of Luke chapter two. So we see Joseph is faithful. Joseph, God lets him in on what's going on, God trusts him to do the right thing, and he does it. Look at verse number six. And so it was that while they were there, the days were accomplished that she should be delivered.  So of course, you know, Joseph was not a rich man. Joseph was a working man, he was probably a carpenter. You know, the Bible doesn't tell us that, but he's probably a carpenter, or at least some man that had a job where he worked for a living. And you know, there was just no more room, the city was full, people were coming in to pay their taxes. And now we hear the story about the shepherds in verse number eight. And they were in the same country, shepherds abiding in the field, keeping watch over their flock by night, and lo, the angel of the Lord came upon them. And the glory of the Lord shone round about them, and they were sore afraid. And the angel said unto them, Fear not, for behold, I bring you good tidings of great joy, which shall be to all people. For unto you this day is born in the city of David a Savior, which is Christ the Lord. So the angel is letting the shepherds in on the, you know, the whole plan here, saying that, you know, the Christ has been born in Bethlehem, and you know, it will be a great joy to all people. And this shall be a sign unto you. He shall find the babe wrapped in swaddling clothes, lying in a manger. And suddenly there was the angel of great multitude of heavenly hosts praising God and saying, Glory to God in the highest, and on earth peace, good will towards men. That's a great verse there in verse 14 talking about, this is, you know, I mean, a lot of people misinterpret this verse today. They say, oh, you know, peace on earth, meaning man should have peace. And this is all just, Christmas time should be a time of peace. But no, this was God, you know, making peace with us, is what this is talking about in verse number 14. And good will towards men, you know, yes, we should have good will towards men. But this is talking about God's good will towards us through Jesus Christ. This is God, you know, reconciling himself, as we'll look at this a little bit further this morning, to the world. And it's his peace towards us changing his wrath to peace is what Jesus is there to do. Look at verse 15. And it came to pass as the angels were gone away from them in heaven. The shepherd said to one another, let us go now even to Bethlehem and see this thing which has come to pass, which the Lord hath made known to us. And they came with haste and found Mary and Joseph and the babe lying in the manger.  We see these shepherds, they're out watching their flocks. This angel shows up and then this whole heavenly host of angels shows up and tells them that Christ has been born. You know, he's basically saying the Messiah is here.  And then in verse 17, we see why this happened. And when they had seen it, they made known abroad the saying which was told them concerning this child. So this was, you know, the reason for their visit. This is why God sent the angels to the shepherds. It's so they could go and then they could witness to everybody else. They could go tell everyone, you know, not that they saw the baby, but who the baby was. So they said, you know, it said they made known abroad the saying which was told them, which means they went and they told everyone that the Christ was born and that he was born in Bethlehem. They told them that the angels came. Look, these were the first soul winners. You could look at it that way. These were the first soul winners after the birth of Jesus. So everything has a purpose in the Bible. You know, these shepherds, they had a very specific reason. God, it right away after the birth, he's getting the word out. He's just getting the word out through the shepherds. Look at verse 18, 18. I'm having problems speaking this morning. Verse 18, look what the Bible says. And they heard and wondered at those things which were told them by the shepherds and all they had heard.  The Christ is here. And then look at verse 19. But Mary kept all these things and pondered them in her heart. So we're going to see a couple things about Mary this morning. But the first thing that we see right here is that Mary, you know, we'll see this as we go further into the sermon. But Mary didn't necessarily understand everything that was happening as far as concerning this child that was born. But the biggest thing that this shows us in verse number 19 is that Mary was a very humble person. Mary was a very humble person.   And this is her son. And she just keeps these things to herself and just thinks about these things in her heart.  You know, she's not going around and bragging about this. She's a very humble and quiet person. And she keeps these things to herself. Look at verse number 20. And the shepherds returned glorifying and praising God for all the things that they had heard and seen as it was told unto them. And when eight days were accomplished, so now eight days have passed, for the circumcising of the child, his name was called Jesus, which was so named to the angel before he was conceived in the womb. And of course, Matthew chapter one, we saw that they were told that they were to name him Jesus. Look at verse 22. So we're eight days in. And then, and when the days of her purification according to the law of Moses were accomplished, they brought him to Jerusalem to present him to the Lord. As it is written in the law of the Lord, every male that opened at the womb shall be called holy unto the Lord. Turn to Leviticus chapter 12. So at eight days, he was circumcised and named. And then here, after the days of her purification, which we'll see in Leviticus chapter 12, we'll see that timeframe as well. Look at Leviticus chapter 12 and verse number one. The Bible says, And the Lord spake unto Moses saying, Speak unto the children of Israel, saying, If a woman have conceived seed and borne a man-child, which is, this is the case with Mary, she shall then be unclean seven days, according to the days of the separation for her infirmary shall she be unclean. And in the eighth day, the flesh of his foreskin shall be circumcised. This is what we're seeing happening to Jesus. And then she shall continue in the blood of her purifying three and 30 days. She shall touch no hallowed thing nor come into the sanctuary until the days of her purifying be fulfilled. So we're looking at, after the circumcision on the eighth day, we're looking at seven days, plus the eighth day, plus 33 more days. So Jesus is about 40 days old at this point in verse number 24, when he goes to Jerusalem. Look at verse number 24 of Luke chapter 2. Luke chapter 2, verse number 24. And to offer sacrifice according to there, to offer sacrifice according to that, which said in the law of the Lord, a pair of turtledoves and two young pigeons. And behold, there was a man in Jerusalem whose name was Simeon and the same man was just and devout, waiting for the consolation of Israel and the Holy Ghost was upon him. Now notice this man Simeon comes in the scene here. Simeon is not a priest. Simeon is not a holy man of any kind. He's just a man. He's just a man that God had made a promise to. And the first thing that is mentioned about Simeon in verse number 25 is that he's just and devout, meaning he's following the Lord with his life. And he's waiting for the consolation of Israel. The Holy Ghost is with him. And it was revealed unto him by the Holy Ghost that he should not see death before he had seen the Lord's Christ. So a very special promise was made to this just and devout man Simeon. He's just a guy. Okay, we don't know what he does. We don't know anything else about him. But he's just and devout. And God made him a promise. And I bet you a lot of other people knew about this promise that Simeon had received from God. He was told that he will not die. And he was obviously an old man. I'll show you that in a minute. But he was a very aged person.   That's quite a blessing that God bestowed on this man Simeon. And he came by spirit into the temple. You say, why was he in the temple? Because the Holy Spirit just led him to the temple at this time. And when the parents brought in the child Jesus to do for him after the custom of the law to make these sacrifices, then he took him up in his arms and blessed God and said, Now, Lord, now let us Thou, Thy servant, depart in peace according to Thy word. For mine eyes have seen Thy salvation, which Thou has prepared before the face of all people, a light to the light, the Gentiles, and the glory of Thy people is real. Now, this is funny, this verse, this set of verses right here. Lord, now let us Thou, Thy servant, depart in peace according to Thy word. For mine eyes have seen Thy salvation, which Thou has prepared before the face of all people. This is called the benediction. You know, when you end a Catholic service or a Lutheran service, and you just chant this over and over and over again after the end of every church service. But this is actually Simeon, this man that received this great promise. It's not talking about you departing in peace to go home. He's literally saying, God, now that I've seen the Messiah, you can take me home now.  My eyes have seen Thy salvation, the salvation that you provide for the whole world through the Messiah. So it's a very powerful verse that, you know, in many different branches of religiosity is kind of made of vain repetition, unfortunately. And Joseph and his mother marveled at those things which were spoken of him.  Why is he grabbing my child? I'm sure they knew. Well, God promised him, or he says that God promised that he would not die until he saw the Messiah. And here he is holding Jesus on day 40 of Jesus' life, saying, God, you can take me home now because he's right here, is what Simeon is saying. Go to Matthew chapter two. Go to Matthew chapter two. Let's continue and let's go and look at the wise men. The wise men. Now, this isn't really the Christmas story because I'm going to show you that the wise men, they actually came on the scene in Jesus' life, probably around the time that he was one or two years old. So look at the wise men. Look at verse number 12. So the wise men, they came to Herod.  And Herod said, hey, go check it out and come back and tell me what's going on. But then God warns the wise men to not go back to Herod. Look at verse number 12 of Matthew chapter two. And being warned of God in a dream that they should not return to Herod. So this is after they've already brought their gifts to Jesus. So this is Jesus two years old here. Okay, so the wise men were not at Jesus' birth. You know, the Christmas story itself was the shepherds, was the inn, was the manger. That's the birth of Jesus Christ. This is later on in Jesus' life. But I also want to show you some things from the wise men's story here. Look at verse number 13. And when they, so they were warned, don't go back to Herod. And when they departed, behold, the angel of the Lord appeared to Joseph in a dream saying, so the angel warns the wise men, don't go back to Herod. And then the angel warns Joseph, you know, the stepfather, so to speak, of Jesus in a dream saying arise and take the young child and his mother and flee into Egypt and be there until I bring the word for Herod will seek the young child to destroy him. So again, he's a young child. He's not an infant. When he arose, he took the young child and his mother by night and departed into Egypt. Again, Joseph is told something, I mean, he's told something extreme in all these cases, by the way. He's told this extreme thing.  I mean, Joseph has a life there. They have relatives there. They have family there. He probably has a job, a business of some kind there. And he just gets up right away in the middle of the night and he goes. He obeys. Again, look at verse 15. And he was there until the death of Herod that it might be fulfilled, which was spoken by the Lord of the prophets saying, out of Egypt have I called my son. Then Herod, when he saw that he was mocked of the wise men, was exceeding Roth and sent forth and slew all the children that were in Bethlehem, in all the coasts thereof, from two years old and under, according to the time which he had diligently inquired of the wise men. So that right there tells you kind of the time period that we're in. So these wise men must have gone to Herod and said, two years ago or a year and a half ago, we have to assume that Herod would round up to make sure that he got the child in the orders that he gave. But he slays all the children two years old and under at that time. That's a terrible event.  I mean that shows you the kind of government, the kind of times, the kind of barbarism that was happening at this time. Life was very cheap at this point in history. Go back to Luke chapter two. Go back to Luke chapter two. So that's Jesus when he's about two years old. Look at verse number 34. Let's go back to the story of Simeon and just finish up Luke chapter two here. And Simeon blessed them and said to Mary his mother, Behold, this child is set for the fall and rising again of many in Israel. And for a sign which shall be spoken against. Yea, a sword shall pierce through thine own soul also, that the thoughts of many hearts may be revealed. And now we see somebody else here. And then there was one Anna, a prophetess, the daughter of Fenuel of the tribe of Acer. She was of great age and lived with a husband seven years from her virginity. And she was a widow of about four score and four years. She was 84 years old. Or she was a widow for four, yeah, she was 84 years old, which departed not from the temple, but served God with fastings and prayers night and day. And she, coming in an instant, gave thanks likewise unto the Lord and spake of him to all that looked for redemption in Jerusalem. And when they performed all the things according to the law of the Lord, they returned into Galilee to their own city Nazareth. So that's taking Jesus of 40 days back home. Now the rest of Luke chapter two, it kind of gets into, you know, the child grew wax strong in spirit, verse number 40. And then we go into a story from verse 42 to verse 47 about how Jesus, you know, his parents lose him in Jerusalem when they went back for the Passover and he goes and he sits in the temple and he listens and everyone's kind of amazed at how old, you know, he's 12 years old, you know, after three days he was lost for three days and he goes and he sits in the temple and he's listening to all the people in the temple talk doctrines and talk about the law of God. And they're all amazed in verse number 48. And his mother said unto him, they saw him, they were amazed as he's sitting in the temple, verse 48. And his mother said unto him, son, why hast thou dealt with us? Behold, thy father and I have sought these sorrowings. So they've been looking for him for three days and he said unto them, Jesus says to them, how is it that ye sought me? Wish ye not that I must be about my father's business? Capital F there, he's talking about God the Father. Now this is Jesus who's 12 years old in verse number 50. It says they understood not the saying which he spake unto them. And he went down with them and came to Nazareth and was subject unto them. But his mother again kept all these sayings in her heart. And Jesus increased in wisdom and stature and in favor with God and man. So here they lost him for three days. He was 12 years old. They were all amazed at his understanding. Of course, he's the son of God, which explains that we're like, we're not amazed, but they were amazed. They're seeing this 12-year-old kid who just has this amazing understanding of the Bible.  So it makes perfect sense that Jesus would have, you know, a great understanding of the Bible even at 12 years old. And remember, he is a man. He's a child. He's also a man. He's God. He's the word of God. But he's also a child who's growing up and gaining understanding.  Okay, so what can we learn from this? I mean, what can we learn from this Christmas story? The shepherds, the birth of Jesus and the manger. The first thing that we can look at this morning is that the coming of the Messiah was forged in struggle, if you want to think about it that way. It was a very hard time in history. The Jews were not free during this time. The Jews were there. You know, they had religious Jews. They had the religion of Judaism at that time. We know that it wasn't the religion of the Old Testament as everyone likes to think that it was. But Jesus came into the world at a very difficult time is the point that I'm trying to make. And the Jews and many of the people of his lineage thought that he was there to free them. That he was there to free them from the Romans. Now, you know, that shows that they did not know the law or the Bible itself at all. It turned to Isaiah chapter 53. Isaiah chapter 53. They did not know their own law. And if they would have known this, if they would have known the law and believed the law, they would have believed Jesus. And he said that himself. Look at Isaiah chapter 53 and look at verse number three. The Bible says he is despised and rejected of men. A man of sorrows and acquainted with grief. And we hid it as it were our faith. We hid as it were our faces from him. He was despised and we esteemed him not. This is a prophecy about the coming Messiah saying that, look, men are not going to accept him. You know, the Jews are not going to accept him. He's going to be despised. He's going to be a man of sorrows. He's going to be rejected by men. But go back to Matthew chapter two and look at verse number one. This idea that he was to be a great ruler and a great king, a great political leader that would lead the Jews out of, you know, oppression and would take, you know, would actually take power, take an actual physical throne when he came to this earth. You know, this was why Herod feared him as well. Look at Matthew chapter one or chapter two and verse number one. Now when Jesus was born in Bethlehem of Judea in the days of Herod, the king, Herod the king, behold, there came wise men from the east to Jerusalem saying, where is he that is born king of the Jews? For we have seen the star in the east and are come to worship him. So Herod, you know, he knows that a king was born and he thinks this king is a threat to me. Herod's a king serving under Roman rule. And he's saying, he's thinking that this king, this is why he killed all those children because he didn't want some king that the people were going to follow. And obviously Herod did not know what the Bible said in Isaiah 53 about what kind of king this would be. But he was not there to physically free them from the Romans. You know, he was there, he was there to spiritually free everyone, not just the Jews from the Romans, but he was there to physically or spiritually free everyone from the wrath of God is what he was there to do. Look at 2 Corinthians chapter five. 2 Corinthians chapter five. I mean, this was a hard time for some new idea to come on the scene for sure. But yes, Jesus was there to free people, but just not in the sense that everyone at that time was looking for it. Look at 2 Corinthians chapter five in verse number 17. Verse number 18. The Bible says, and all things are of God who hath reconciled us to himself by Jesus Christ and hath given to us the ministry of reconciliation to wit that was God that to wit that God was in Christ reconciling the world unto himself, not imputing their trespasses unto them and hath committed us unto the word of reconciliation. Turn to John chapter three. John chapter three. And look at verse number 36. John chapter three. Look at verse number 36. So yes, Jesus was there to free mankind, but he is to free mankind from John chapter three in verse number 36. He that believeth on the Son hath everlasting life. But then look at the second part of this verse. But he that believeth not the Son shall not see life, but the wrath of God abideth on him. Jesus was there to free us from the wrath of God. That's why God sent him to reconcile us from that wrath to himself. It was not to free the Jews from the Romans. He was not to become, he will become a king that rules and reigns for a thousand years. But that was not the main purpose of this first visit. It was to free us from our sins. So what can we take away from this? What can we take away from the Christmas story this morning? First of all, this story, and don't ever forget this, this story, other than the creation in Genesis. This story is the most important thing that God has ever done for mankind. You know, he created the universe, the world, everybody in it, you know, all the animals, everything. But aside from that, the most important thing God has ever done for mankind is the Christmas story. Is sending his son to reconcile himself, reconcile the world to himself. So the interesting thing that I want to point out this morning is that while he did this, while this is the most important thing that God did in the history of the world aside from the creation, he relied on man to help him do it. Isn't that interesting? God did not just come and just magically make all these things happen. He relied on people. He relied on men and women to physically carry this plan out, to be faithful to carry this plan out. Think of Mary and Joseph. Think of Mary and Joseph. He relied on Mary and Joseph to basically do what they were told to be faithful.  She went forth and raised this child. And look, the Bible says, go back to Luke chapter 2 and look at verse 33. The Bible says in many places, verse 33 is of Luke chapter 2. And the Christmas story is a perfect example where the Bible says, and Joseph and his mother marveled at those things, which were spoken of him. Look, they did not always understand everything. They did not understand this whole plan of what God was doing. They just went on faith. They just went on what God told them to do. Look at Luke chapter 2 and verse 48. It says that when they saw him, they were amazed. This is when Jesus was 12 and sitting in the temple and his mother said unto him, Son, why hast thou thus dealt with us? Behold, thy father and I have sought thee sorrowing. And he said unto them, How is that you sought me? Wish ye not that I must be about my father's business? And they understood not the saying which he spoke unto them. Look, Mary just quietly obeyed even though that she didn't understand everything that was going on at every moment. She just did it. She just did what she was supposed to do. Think about Joseph. Just the two main players in the Christmas story. Think about all the things. Look, you don't really hear much about Joseph in the Bible. But just think about the amazing things that Joseph actually did. Joseph, I mean, he didn't put away his wife.  I mean, just because the Lord asked him to just follow this plan and he just did it, I mean, he faithfully moved his family to Egypt in the middle of the night, just dropping everything, just going just on what God told him to do. No thought for his business, for his personal connections, for people's opinions on anything. They just went. They just went. Look, God clearly knew that he could trust these people in his life. And, you know, a point is, God works the greatest miracles. You'll see this in the Bible. He works the greatest works and the greatest miracles through people that he can trust, through people that are loyal to him. We must remember this, this Christmas. This is how the Lord works, folks. He works through people. Look, he has plans. He has, you know, he answers prayers. But he works with and through us. Turn to Mark 16. Turn to Mark 16. Look at Mark 16 in verse number 20. Look at the disciples. He worked with and through the disciples. Look at Mark 16. And they went forth, the disciples, and preached everywhere. Then what? The Lord working with them and confirming the word with signs following. Amen. See, these guys, the disciples, they went forth. They went out. They preached the word everywhere. And then the Lord worked with them. He worked through them. Look, he confirmed their efforts, but they made effort. They made effort. If you want the Lord to intervene in your life, you need to remember this. You need to remember this because He will work with you, the Bible says in Mark 16, 20. This implies that you are working. And the greatest interventions will be with the people that are working the hardest that are the loyalists. Go back to verse 25 and look at Simeon. What are the first two words that the Bible says about Simeon? Just this man. The first two words that the Bible says about this man is that he was just and he was devout. And God made him this great promise. He's another witness. He's another witness, but he was just and he was devout. So God used him and God used him in a great way. God used him to carry out His will. And look, people get this wrong all the time. People get this wrong all the time, but this is a huge, this is a huge characteristics of God that we cannot miss today. Think about on the national level, people miss this.  Let me look. I mean, we all know, we talk about it all the time.   I'll address that in next week. But the point is, you know, people say all that. This nation needs a revival. How many times have you heard that? This nation needs a revival. Look, we can have a revival in this country any time. We can have a revival in this country any time. If enough Christians went out and preached the gospel, we'd have a revival. Why? Because God would work with us and through us. That's why. Look, if we started more churches that were preaching the Bible, there'd be a revival. Why? How do I know that? Because God would work with us and through us. Look, that's how, that's how you start the revival, but you need faithful what? Faithful men to go out and do that. You need faithful people that God can work through. It's not just going to magically just like, here's a nation that's doing it. It's always the people that say, this country needs a revival, that all they do is sit around and watch the news and just get, you know, mad and angry and everything. And they do nothing. They do nothing in their Christian life.  I mean, this is not how God works. This is a fundamental misunderstanding of the nature of God. Look, God is not a welfare provider. Does that make sense? God is going to, when he sees your work, he's going to confirm your work. That's what he's looking for. He expects us to work and then he will work with us. But we have to be working.  We could have a revival if enough men did that. Because God, look, God is faithful. God will work through us. What about on an individual level? What can we take from this on an individual level? We do the same thing. We do the same thing individually that we see on the national level. We pray for things, right? Don't we pray for things and we want God to just step in and just magically fix everything for us? Yeah, we're not loyal. We're not trustworthy. We're not devout. We're not just as Simeon was. You know, we won't change anything in our lives. People have such a hard time changing. It's just the hardest thing for people to change. We do nothing that God tells us we should do and then we pray and we want him to just come in and just step in and just fix everything. It doesn't work that way. I mean, that's what the Bible is showing us. This is not how God operates. He will work with us.  I can work with that. Like, you know what? That guy's working. I can work with that. I can work through that. Look, God doesn't waste time with people. The guy that had one talent and buried it in the dirt, he's like, I'm wasting time giving you a talent. Give it to me and I'm going to give it to the guy that made five more. This is how God works. God looks at us and he's like, can I work with that? Is this person just and devout? So when you have prayers for your family, you have prayers for your marriage, you have prayers for your life, turn to Psalm 18. You have to get this. This is what Mary and Joseph did. God works through people. He didn't just go poof! Jesus! No, he worked through. He was born of a woman. He was raised by faithful people. They took care of him, protected him, all on just the command. Yeah, but God, but God went and he told them what to do. Hello! It's the same thing for us. It's exactly the same. Look at Psalm 18. Look at verse 25. Bible says, with the merciful, thou wilt show thyself merciful. With an upright man, thou wilt show thyself upright. With the pure, thou wilt show thyself pure. Are we seeing a pattern here? It's saying with a pure man, God will be pure. With a merciful man, God will be merciful. With an upright man, God will be upright. But then look at the last one. And with the froward, thou wilt show thyself froward. You know what froward means? Froward means difficult.  You know, how about you tell somebody something again and again and again and they just never do it. That's God with the Bible, with us. He tells us all the answers and we just don't do it. We get ourselves in a bunch of trouble. We don't do it. We don't listen to the Bible. Then we pray. We still don't do it.  You're froward. He's like, but be upright and I'll be upright to you. Be merciful and I'll be merciful to you. God reciprocates. To us. You see, if we're difficult with him, if we're stubborn with him, if we're unmerciful, that's how he's going to be towards us. This is how God works. And this is what we should take from the Christmas story. Joseph and Mary are extreme examples of this. Just how faithful. God trusted, just think about these two people. God trusted these two people with the most important thing that he allowed man to be part of in the acts that he did on this earth. Look, he needed the Messiah to come in in a time of struggle. And then he needed faithful men and women, Joseph, Mary, all the disciples. He needed all those people to be faithful through all that. But then he worked with them. Look at the successes that they had in these times of trouble. He worked with them. He worked through them. And he'll do the same for you. He'll do the same for you. Think about that. Think about that. This Christmas. Think about that. You know, what are we doing? We're going where? We're going into a new year. Think about that. Where do you want the Lord to work in your life? I mean, what are you asking God for? I mean, think about it.  Hopefully everybody in this room is asking God for something. You're like, I don't know why I don't have anything. Well, you're not asking, apparently. If, look, you should be asking God for things, but then you should be praying. You should be working. You should be committing your life to show yourself just and loyal and devout to Him. And then maybe God will say, look, here's what will happen. If you do that, God will say, here's somebody I can work with. Here's somebody I can work through. And that's just how prayers just start getting answered, just like that. I mean, it sounds like a New Year's resolution to me. Not to wrap up two sermons in one, but just think about it. This is how God operates. He works through us. Think about those things. Think about the things that you're praying for. Come up with some things to pray for for the New Year. And then show God that you're somebody that He can work through. And He'll do it. That's who He is. Let's bow our heads and have a word of prayer.


And I think the reason we're talking about developers a lot and we're trying to focus on developers and one of my personal goals is to enable developers to use the cloud better is because they're solving the business problem, right? And so if we can give them better tools to solve those business problems, then we help those businesses, we help those teams create value for their users. Hi, this is your host of Limpartia and we are here at CubeCon in Chicago. And today we have with us once again, Elad Bin Israel, CEO and co-founder of Winkloud. Elad, it's great to have you on the show. Hey, thanks for having me, man. Since we are here at CubeCon, did you folks make any announcement at the show? Just released support for containers in Wing, which is this new programming language we're working on and container support has been something that a lot of people wanted, which I totally understand. And it was an interesting design challenge for us to find the right balance between the high level APIs that we have in Wing for developers, designed for developers and how containers are eventually being orchestrated on the cloud, which is a very low level DevOps-y activity. And so being able to actually create a high level experience for containers, giving developers the ability to use containers but not having to become DevOps experts was a really interesting challenge. And I think we have a pretty interesting experience that we managed to create. Talk a bit about Wing Simulator and how does it help developers?  And it shows you your application as you develop it. So it's like this live view of your architecture as you build your application. And it immediately responds to any changes in your code, similarly to how you build websites and you change your code and automatically it reloads it. And so that's for your entire cloud application. And the ability to actually see those changes immediately and really changes the dynamic of developing cloud applications because you can stay in your creative flow, which is in a way our mission, right? Like I said, give developers the ability to use the cloud, make the cloud a great place to build software. In the past few years, we have been talking a lot about terminologies like DevOps, DevSecOps, platform engineering, SREs. But now the focus is shifting back on core developer experience. What are you seeing here in this space in the market? To me, again, I think it's a lot about the terminology and like how people call themselves eventually, but to me, there's a distinction between the engineers that are responsible for the problem space of the business and the engineers that are responsible for the problem space of the infrastructure. And so that's my distinction between, let's call it the people responsible for the application, the people responsible for the platform. And I think the reason we're talking about developers a lot and we're trying to focus on developers and one of my personal goals is to enable developers to use the cloud better is because they're solving the business problem, right? And so if we can give them better tools to solve those business problems, then we help those businesses, we help those teams create value for their users. And so I feel like that's the reason developers are really empowering them is very important instead of, and I feel like what happens with the existing ecosystem is that developers have been containerized, if you will. It's not in popular opinion in this conference, I think, but I think that's what we're trying to change in a way. What role does open source and open source programming languages like Winglang play in the ecosystem or to empower or enable the developer experience that you're talking about. It's a programming language designed to give developers the ability to use the cloud directly in their code. And so it combines both cloud resources and runtime code together into a single programming model. And it gives developers basically the ability to access the cloud as if they were accessing in-memory data structure, like the same way they're using dictionaries in memory, now they can use buckets and queues and containers and other cloud primitives as first-class citizens in their program. And to me, this is the first step in enabling those developers to leverage the cloud outside of the container in a way. There are so many programming languages out there. There are so many programming languages out there. There are so many open source programming languages there. How does Winglang differentiate itself from the rest? So there's a fundamental difference and there's other differences. The fundamental difference is the fact that code that written in Wing describes both your cloud infrastructure and your application code in the same language. So if you think about the current landscape, you're usually using two different tools, right? Like you're using a tool for your infrastructure and a separate tool for your application logic. And there's a lot of coupling between those two layers that becomes very manual when you have two different tools. And so by incorporating both of those into the same language, you're reducing a lot of the friction that exists today. So that's the fundamental difference. I think the other part is that the entire language and standard library is designed for cloud development. And in a way, it's a language that's tailored for the use cases of building cloud systems. And so there are a lot of little things that actually really change the ergonomics and the experience of developing cloud applications because we can actually create the right experience across the entire stack. So it starts from the programming language, the simulator, the production experience, the deployment experience. So all of those things are tailored for cloud development, which I think is eventually gonna make a big difference because it's accumulating over all these small features and capabilities. What kind of adoption are you seeing of Winglang? Pretty amazing actually, like better than I expected at this point. It's very early. It's like programming language, it's less than a year old, right? Like it's programming languages take time to mature and bake in a way. But we're starting to see this really amazing community form around the language and around the project. We have over a thousand people on our Slack already. We have over a hundred people contributing to the project. Substantial things, not just typos, but actual contributions of code into the compiler, contributions of code into our SDK. So it's very exciting to see these people coming in and really resonating with that vision and with this philosophy. But I also think that because we're really trying to change the way teams are building things on the cloud, it's a big challenge. I think it's gonna be an uphill battle to really educate people. I just heard that there was this keynote that someone would say developers don't need to understand anything. And I literally don't agree with that. I wholeheartedly don't agree with that. I think we need to give developers the right levels of abstraction and then they are empowered to actually deliver independently and be way more productive. And I think like that's our challenge. So what I'm hearing is that Wing Lang not only give developers more, so what I'm hearing is that Wing Lang not only allows developers to get more out of the cloud, but it also gives them better visibility and control. One of the things that we're doing in Wing Lang is we're decoupling the application layer and the platform layer. And by doing that, we're giving developers the ability to use the cloud in their application, but we give DevOps teams and platform teams the ability to fully control how those applications are deployed on their infrastructure. And that means that each one of those personas basically is empowered to deliver independently. Developers can use any of those cloud resources as first-class citizens and so they can use these buckets and queues and APIs and static websites and containers as first-class citizens in their code and they can test them in the simulator. But then when they go and deploy it to the cloud, platform teams can completely customize those things and decide exactly which cloud providers are using, which provisioning engines they're using, exactly the security components that they can actually codify all of their compliance and security in one place. And so the idea is to empower each one of those personas to own their part of delivering these applications to the stack, which is where we were before the cloud, if you think about it, right? Like before the cloud, developers were responsible for the application code that runs inside the machine and infrastructure teams were responsible for the machines and the data centers and the networking. And so that separation makes total sense and I think like we actually need to preserve it but the boundary between the application, what's an application and what is infrastructure, it needs to go up in a way. It needs to give developers, or sorry, go down, I don't know. It needs to move to enable developers to actually take advantage of the cloud more directly. Kubernetes complexity is very well-known and this complexity is not going to go away. It's going to become even more complicated but we have started to hear some discussions that things should be easier for developer. Are you seeing any new technology that is going to make things easier for developers? So the way I see it is Kubernetes is a great production tool. It's an amazing technology for scaling your application, for making sure that they run, that they're highly available, that they're highly scalable. It's a production technology and I don't think developers need this production technology when they're building their application. That's not... And it's the same thing I'm saying about the other parts of the cloud. Like if you're thinking about S3 as a service, it's an amazing production tool. You don't need S3 when you're building your application. Like you just need an abstraction of this concept of an object store. And so being able to decouple those concerns and make sure that you actually use the right tools at the right time is in my mind key to enabling both Kubernetes and other cloud systems. So I think the complexity of Kubernetes makes sense when you're running in production. It doesn't make sense when you're developing your application and when you're testing it. And I think that the reality now is that Kubernetes is leaking out to developers and really changes the way developers actually use the develop. And that's where a lot of the frustration comes from because I don't think developers really need to care about Kubernetes. Like Kubernetes is a production tool. And I think that they'll organize itself in that sense because of that complexity, that's not gonna go away. The other way to think about it is think about traditional software, how traditional software is written. When developers are writing code in Java or in .NET, they don't need to understand the mechanics of how files are stored in the file system, right? Like that's the infrastructure side. They have an abstraction. They can say, I wanna save your file. And there's a bunch of layers below that that take care of actually saving that file. And so being able to decouple those concerns in my mind is the key to enabling each one of those layers. Thank you so much for taking time out today. Talk about doing like all the announcement that you folks made here and some great insights there. And I would love to chat with you again soon. Thank you. Thank you, man.