text:
How to Automate Your Performance Test Results with Joey Hendricks
Continuous performance testing is nothing new, but one of the biggest pitfalls of a reliable automated performance test is the manual analysis of its results. In this episode, performance testing expert Joey Hendricks will share his approach to automating much of the analysis of your runs. Discover how to embed an automated analysis approach in your testing process to perform complex comparison analysis in an automated fashion reliably. Listen up!
SmartBear is dedicated to helping you release great software, faster, so they made two great tools. Automate your UI performance testing with LoadNinja and ensure your API performance with LoadUI Pro. Try them both today.
About Joey Hendricks
Fueled by a staggering amount of caffeine and dumplings, Joey has for the past three years embarked on the noble quest to protect software applications from pesky performance problems.
Connect with Joey Hendricks
Company: JoeyHendricks
LinkedIn: joey-hendricks
Git: JoeyHendricks
Full Transcript Joey Hendricks
[00:00:01] Welcome to the Test Guild Performance and Site Reliability Podcast, where we all get together to learn more about performance testing with your host, Joe Colantonio.
[00:00:16] Joe Colantonio Hey, it's Joe, and welcome to another episode of the Test Guild Performance and Site Reliability Podcast. Today we'll be talking with Joey all about how to automate your performance test results analysis. Joey is fueled by a staggering amount of caffeine and dumplings, and he has over three years of experience helping teams on the Quest, protect software applications from those pesky performance problems. I know you all have the experience yourself and you don't want to miss this episode because you want to discover a better way to take all the raw results of your performance tests efforts and really make sense out of them. This episode is really going to help you. We're going to take some talking points we got from his session at this year's I think it's Tricentis now used to be noticed is a pack, and we're going to dive in a little bit more on how to help you actually analyze your results better. You don't want to miss this episode. Check it out.
[00:01:05] This episode is brought to you by SmartBear. Listen, though testing is tough. Investing in the right tools to automate tests, identify bottlenecks, and resolve issues quickly could save your organization, time, and money. SmartBear offers a suite of performance tools like Load Ninja, which is a SAS UI load testing tool, and Load UI Pro and API load testing tool to help teams get full visibility of its UI and API performance so you can release and recover faster than ever. Give it a shot. It's free and easy to try. Head on over to smartbear.com/solutions/performance-testing to learn more.
[00:01:47] Joe Colantonio Hey, Joey. Welcome back to the Guild.
[00:01:54] Joey Hendricks Thank you, Joe. Glad to be here. I do, I do love dumplings and coffee and a bit more higher caffeinated cola. So.
[00:02:00] Joe Colantonio So what kind of dumplings? Chicken dumplings? What is it?
[00:02:06] Joey Hendricks I love chicken dumplings. Whenever in the neighborhood of most it hit me up, and there are very good dumpling restaurants around here, so.
[00:02:13] Joe Colantonio I am a foodie, so I'm definitely, pick you up on that for sure. That's awesome. So, Joey, it's been a while since we spoke. I think it was last time episode 56. And it was about your open-source project quick potato anything new going on with that project?
[00:02:28] Joey Hendricks It's actually going great, for performance testing library for Python we talked about testing. It's kind of grown in popularity a bit. I got some good feedback on it has grown become technically a bit more better, which I like. So it's growing at a steady pace and when I have time, I added and continue working on it, which is a great little repository if you have any. If you ever want to look for a profiling tool for your Python project, don't forget to hit up Quick Potato and find it on my GitHub.
[00:02:57] Joe Colantonio All right, so at this year's PAC event, I think you spoke about the topic of how to analyze your performance tests, test results automatically almost. Any of some really cool things going on. Just curious to know what made you want to submit that topic?
[00:03:13] Joey Hendricks To be honest, at APG, we've been doing this for a very long time already. We religiously store all of our test results. We do that because you want to see trend lines and we want to do analysis on our data. So having a wealth of information available to you to analyze all of the multiple releases and look back and see what changed is amazing. And one of the things that really triggered me was to start thinking about how can I automate my result analysis was mainly that I was thinking about my robotic vacuum cleaner because I really love my, so my vacuum cleaner broke and I bought this new vacuum cleaner on the recommendations of a friend. It was like, these automated vacuum cleaners are great, and I was very skeptical because if you work with I.T. you know, it's never going to work the way you want, but it works absolutely great. I love the thing. It cleans my apartment. It keeps everything nice and tidy, and it only triggers me when I want to be notified, and the same as with my testing. I only want to be triggered when I'm notified. If there is no change and there's nothing wrong with the application, why should I look? Just let me go and let me do my other stuff, which I have plenty of other stuff to do, but I just want to be triggered when it's relevant. So that's kind of where this topic kind of came from. It came from a robotic vacuum cleaner, which I bought because my vacuum cleaner broke. So it was like a strike of, Oh, let's go.
[00:04:34] Joe Colantonio It's awesome. So I guess I always say this on the show when I was doing mainly performance testing really, really like 20, 20 odd years ago, I always found creating the scripts were a lot easier than actually analyzing the data. And so how do you get from that to actually utilizing some methods to help you automatically analyze this? So you only, you only like you said looking at it when, when you need to?
[00:04:57] Joey Hendricks Well, first, you know, everybody has I think most people that are already doing continuous performance testing, they have that testing process in place where the tests get automatically kicked off, it's in the pipeline. So it's part of that quality assurance process. And if you're already at that step and you need to export your, your raw results into a database or on a file share or however you want to do that, you already are at that point where you can continuously do that so you can be triggered after a release that goes through the pipeline. The performance test kicks off and then export raw results and compare them to the previous one because you stored everything. So if you add that point, you can start doing that, which is amazing. And if you don't want to continue and start analyzing it because you can just go back, you can just look at the previous tests that you've done and you have the new tests. So if the previous situation against the current situation and you compare them and you can use a lot of statistical tools that are available to us to start doing this. What I typically see what people do this is they, they compare means, they compare averages. So they just run SLAs over them like can't be hired in five seconds. If it's that, just kick off the test, stop the test that kind of stuff, which is which is OK because obviously, SLAs are important, but it's not actually something that we always want to be looking at. We are more looking at change and the difference. If there's, if there's something relevant for me to look at on the second notice sometimes SLAs are not always that well defined that you can really fail a performance test on them. Usually, they're much higher than the actual response time really is. For example, if your application generally responds within a second, then you have an SLA of five seconds, just highballing some numbers.
[00:06:43] Joe Colantonio So I'll be honest, I probably was a terrible performance engineer after seeing your session because all we really did was look at the averages and we even did like 95% average and we'd run it like three times. And if we had one that was really an outlier, we'd say, Oh, let's just ignore it because it's outside the scope, but you made me rethink that. I think you had a quote from one of your mentors as averages hide the ugliness of an application. Can you talk a little bit more of what that means? I think a lot of people, maybe they're like me, old school, where they always use averages for performance.
[00:07:14] Joey Hendricks I don't dislike averages. Let's get this off the boat after the averages are great because averages if I show an average line to a business owner, you know that makes more sense to them that that clicks. But when I, you know, we're technical people, so we want to see everything. And I have a great visualization of how that the impact of an average, it's all my GitHub. It's something that is also shared online on LinkedIn a lot and the test that I've done where a plotted the average line and then I plot over it the exact same data, I plot over the scatterplot. Like every single measurement. I see a way more interesting pattern starting to fold out. So the averages are great for reporting to stakeholders, but they are very difficult to just base your entire analysis on because if you have all the data available because generally, we have everything available, especially if you're running a load test on it, your load test tool will record everything. You can just export that and you can see the entire raw data. So I would recommend to you to check out my GitHub and just see the the actual visualization because I think that that visualization really speaks about the importance of raw data and staying in shape or you always says like, that it hides the ugliness of the application that's because of the averages, it starts to go and patterns start to be become smaller, less visible or even gone completely. And you can see that perfectly in that example that I have. And because of that, it hides a bit of how ugly the application really is, it makes it a bit more prettier than it really is. So for a business owner, it's OK to share it with but to solely base your entire analysis on just an average line, that's quite false to just go on a limb on that because you're not looking at the complete picture, which you should be.
[00:08:57] Joe Colantonio So I guess the challenges there could be if you have one outlier or a few outliers, it's hard to determine what actually caused or if it's a real issue. How do you know you're, you're not going down a rabbit hole at that point?
[00:09:10] Joey Hendricks I think it's also about, a bit about context. So if you know, if you know what you're doing right and you know how the system is behaving, if you generally get like insane outliers, then there is a problem. But like also, if I take APG for example, we have, we have customers that have just way more complicated calculations going on then, you know, your average Joe. Because of that, we have complicated customers, you have normal customers or you have very small customers and yet very complicated customers with a lot of history and a lot of problems. And so not problems, but more like a complexity around them. Because of that, it just takes longer to calculate them. So most low testing tools will also allow you to see which customer number you might be refused in a request. And then you can also verify if that outlier is a correct outlier. It could just be a very high outlier because you're just having complicated data behind that, and that is just doing a lot more work.
[00:10:06] Joe Colantonio Absolutely. So, you know, you did talk a lot about raw data, what is the raw data? Does it also have things like metrics from the different monitors we're monitoring you able to do correlation or is it just raw data like what is usually included in the raw data that you're sending to the database that you then use to create these graphs?
[00:10:27] Joey Hendricks Well, raw data is a general concept. It's basically that you take every measurement, so it depends on what you take measurements off. So usually for me, the most important thing is user experience. I really care about how people are experiencing our application and how it's performing. You know, I really care about that. I care less about CPU statistics. I care about them, but they're more a secondary measurement to me because if the CPU is blazing at 80%, but I'm delivering a stellar user experience with on under the load that I want, then everything is fine for me. I do care about them. You know, if you move to the cloud where you have to pay it, it's like a gas bill. The more you're going to use in CPU usage, then the higher your bill is going to be. So from that point of view, once you're on that kind of system, you also want to try to reduce that. But for just giving a good digital experience, which is why we built these applications now, we built them so we can provide our customers with an online service. We do want to give them the best experience possible, and if that is with a higher CPU consumption, then I can live with that as long as we deliver a good experience to them.
[00:11:33] Joe Colantonio So you brought up two points when you're doing analysis, it all depends on the quality of your data in your testing environment. So how do you make sure you have good raw data, and if that makes sense, but rather than just throw everything, is there certain?
[00:11:46] Joey Hendricks I think the question that you're trying to say is more like, how can you trust your raw data? Because.
[00:11:52] Joe Colantonio Yes, right, right.
[00:11:53] Joey Hendricks Raw data can be raw data. You can have raw data from an unstable test environment from stable. But generally, what you want to be testing is not how unstable your test environment is, but the change that you've introduced to it. So if you have an unstable test environment that goes like haywire every time you start a test and you get like, you changed nothing, nothing has changed. And now you see fun suddenly. The average, for example, goes for 5 seconds to 7, 8 seconds and you've done nothing. Then there's probably something wrong with your testing environment. So before you can even start and also, that's also and start with continuous performance testing, make sure that you have a stable test environment and that reacts always the same way, only if only changes when you introduce a difference in them. I think that's mainly the point that you want to establish. You want to make sure that whatever you're doing in whatever change you introducing to your test environment, that that is what you're testing and that your environment will always remain stable. A good thing to test this outlet is just run 10 tests against your test environment and see if they look completely alike. Because if they look completely alike, the test results and they're exactly the same and the numbers are within the same ranges, then you're going to have a stable test environment. And that is kind of the cue to start continuous performance testing at the start, also trusting the raw data that flows out of that. It's the same with water. You know, you don't want to drink dirty water, so you make sure it's clean and it's the same with your test environment. You want to make sure that it produces clean test data, which you can trust.
[00:13:24] Joe Colantonio Cool. So I guess that would then would create a baseline. And then was that what you would use as your baseline that you would measure going forward that anything that runs after it if it's off the norm, you'd be alerted? Or how does that work?
[00:13:35] Joey Hendricks So the thing is, is that I care most about is change and positive change, right? We're going foster can be bad. It can be. That is very good. And we wanted a positive change. So aiming towards changing the system a lot by performance improvements that we've introduced, then we know when we are going to release that we are expecting a performance increase, but we are expecting a change. But it also could be that we are expecting a negative change, so negative and positive are both changes. And I care about looking at them. So even if the results of difference between two of my tests are positive. Then I still want to do something with that. I still want to hold the pipeline a look at it, even though it's good, even though it's positive and the same goes with negative, I only don't want to look at it as if it's the same. If it's the same as always and I don't care about it, then just go, there's no change, so there's nothing to really investigate there. So for a positive and both for a negative change, I want to hold that pipeline and I want to look at it manually. And then when I look at it manually, I'm only looking at it when it matters, because it's either that we have introduced a performance increase that right, we have better the system or the system unexpectedly became better and we have no idea why. Because that's also a problem. And if it slows down, obviously, I also want to look at it because then we also have a defect. So I really care about change. And if I can spot change and through these kinds of ways, that's great because there's a very lot of ways where you can achieve that.
[00:15:05] Joe Colantonio So to spot to change it, so it seems like you have this embedded into your pipeline. So you've run a test, it's automatically gone. Where does analysis and then it, it only triggers alerts or stops the pipeline based on criteria you put in, like what's the technology or tooling you're using to get that?
[00:15:20] Joey Hendricks Statistics.
[00:15:20] Joe Colantonio All right.
[00:15:26] Joey Hendricks So it's like, I think a bit of backstory in that I started that playing around with these. I don't have a statistical background, so when I was kind of starting with it kind of was a nitwit in it. I didn't really know what I knew what I was doing generally because I knew math, but not on that level. So I started researching a bit about how in statistics do people find change? So I started looking at them and they generally talk about distance and statistics. So they talk about what's the amount of distance between one distribution, basically a test against another distribution, a test, right? So if you have two performance tests, there are two distributions of data. So if I want to see how many distances then between those two performance tests? Well, there are generally a lot of distances that are rooted deeply into the statistics, and they are excellent for finding out what, what is, how much distance is there. And there are two which I really like, and I'm probably going to mispronounce this for the 15th time, but a kilogram of the square root of distance is one of them. It comes from a hypothesis test. So if you, if you remember that from high school math, flashbacks, helicopter or flying over, it's it's not fun, but they're very powerful. Distance matters. They're metrics in sense. And you also have the Wasserstein distance, which is also a very powerful metric. So these two metrics I kind of used to see okay, how much distance is to between two performance sets and the kilogram of this one interesting one because it depicts the maximum is basically the absolute maximum distance between two distributions aka performance test. And the Wasserstein kind of gives you the surface area between two distributions, so it gives you the general distance between two performance tests, and they will always be around the same numbers so you can classify them. So you can say if I have my baseline, which is this a line and then the benchmark needs to hook that line and have to be as close as possible. And for some visual representation, I would really recommend checking out my GitHub because I have this all in visual animations where they make a little bit more sense to understand them. But because those lines have to be very close to each other because we don't want distance, we want us to say the same. We don't want any change. And because of the Wasserstein and kilogram of they stay in general in the same numbers, if it's very low because they're going to stay near zero and then you can actually classify them so you can say 0 to 10 is low, 10 to 20 is medium, 30 to 40 is high and so on. And you could put a letter rank next to that to say, OK, if those numbers are those distance metrics are around these numbers, then that's an S or that's in, like if you take the Japanese letter system where S is super A-plus and you don't take the A, is that good and so forth, right? And you can give them a rank them and then you can steer on a rank saying how much positive or negative change has been introduced. Those numbers, those statistical distances, can be used for that kind of stuff. They just automatically verify ester an interesting change between two tests. So this can become very technical because I'm skipping some parts of it, which I recommend also reading on my readme because there's a lot of other very complicated stuff like criminal distribution functions, the normalization of the data, all very important factors to consider. There's obviously a lot of Wikipedia articles behind that where the calculations look completely elvish and difficult. But there is a wealth of information, especially if you're trying to automate and make smart decisions around your data.
[00:19:12] Joe Colantonio Nice, so I guess, how much statistics does a performance engineer need to know though? Are these codified in some sort of function that someone could just use? Or do they actually have to program it up in their pipeline to actually use these different, statistic methods that you just mentioned?
[00:19:27] Joey Hendricks Well, normally, if you're in the pipeline, you already have some ability to program in the pipeline so you could use Python Python has like and now you have the site by package for Python, which is basically every statistical calculation that you could possibly want in there. So there's no need to actually understand this from a math point of view. So you don't really need to understand how does this equation actually works? But you do have to understand how what does this number represents? You know, what does it mean? And for the Wasserstein, that is then the general area between two tests and the Kolmogorov-Smirnov statistics or the KS value to make it a bit easier on that to make it a bit easier on me to pronounce it. So the KS value is more the absolute distance between two. So what's the absolute maximum distance between the two tests? So they're great metrics to tell you. Is this is change big or small? Is it concentrated in one space and you can make smart decisions on that? And you can supplement those decisions with stuff like just checking if the average is slower or faster. So you can determine if your tests are running faster than the previous one or slower than the previous one and making decisions based on that, you can start checking the throughput levels if you're still taking in the same amount of throughput. You can check the errors, maybe some, I think you can start also do like a secondary layer where you put your SLAs over it. So if there's difference and it doesn't fit the SLAs, then we have the journey problem and you can start supplementing those metrics, like with other stuff and you can rank those. And I called in science have this word for this, and I love this word, and it's called a heuristic. So it's basically a set of criteria that if it really meets those criteria, then it's good and a heuristic is just a way of making very complicated data like your performance results right or your entire application, and to make very complicated stuff like that. Understandable with just a rule of thumb. So if we know that the Wasserstein is this big, we know that that is an interesting change for application. If the error rates are done out of these number ranges, we have a problem as well if the throughput goes below a certain level and we also have a problem. If the average is lower or higher than this, then you can take some percentiles and good boundaries around that as well, or the percentage change between two percentile. So you can really create what you really want. You can really tune this to how you want, which decisions you want to take around your data. So it depends have been on the context of the application as well, how well this works? For me, this is working very well because I have a very stable test environment. I, my numbers are kind of in the same area and that allows me to actually rank them from S to F and then to tell a business owner, OK, the change that the team has introduced was an F, but a positive one. So they made a massive improvement to the system more, it's a B. So I would recommend not to release because it has a low impact on the system and it produces more errors. Something like that. I can say that now. And for a business owner, a B, an S, an F, a C is more understandable. Then. here are all these numbers and they'll be looking at this like information overload for these people. They just want to type, an easy understanding, understandable metric, and we can also, in the pipeline, we can also make decisions with those ranks. If I have an F, I do this, I create this defect to this team or, or I do this. So you can also focus this kind of analysis on every single API or action that you're doing in your test to really verify and say, like, OK, if this API breaks, we know this OK, this API is broken. It has more errors and normally, it doesn't interest in change in its performance-wise. Let's create a ticket for that team. Just a Jira defect. You'll look at it and hope the pipeline. The release stops there until that team looks at it and continues to release either with a fix or that they accept the risk of going to production with a slightly slower or slower transaction or application.
[00:23:42] Joe Colantonio Interesting. So, you know, when I think of F, I think bad. But you just said F could be good because it's a big change. But like you said, it's a positive change. So do you do automatic alerting like your vacuum when it was stuck in the rug to say, OK, the check-in worked you get an F and with a high-level analysis automatically? Or do you actually analyze the first before you alert people? Like at what point does a human get involved with this?
[00:24:06] Joey Hendricks Yes sure, it has. The same of my vacuum cleaner is it if it kills herself on the rug and it's standing there and it's trying to drag the rug around the room, it usually takes a minute or two, and then it's going to start complaining and I get a notification on my phone to come to check out what's wrong with it. And then I see it standing there. So then I know, okay, I should have been here. So the same as also with my tests. If it really goes wrong, I want to be there. So I'm usually the first contact that goes out and some other teams and I'd get a notification, Hey, it's wrong. And also, when I look at this from the APG context, we also have teams looking at these numbers. So when they're doing the release, they're looking at these ranks. They're looking at these, we generally use a score so they can also look at the score and see, OK, it's bad. And then this guy makes gets fed up with the command chain and then it kind of ends up and analyzes it and they say, OK, OK, we can accept this. This is OK. The benefits of releasing the software now outweigh the performance problems that we might get. And now we're taking a calculated risk and we are no longer taking an unknown risk because we know exactly what is wrong and we can fix it and production leader, or if the risk is too high, we can just decide not to do it right. Just this whole to release fix it. We work for it on a week longer and then go into a go-to production with it really generally comes down to what your organization wants to do and how they want to tackle it.
[00:25:28] Joe Colantonio You know what? Automation testing is usually a lot of false positives where you're getting alerted, but it's really not an issue. How I guess how stable is this approach? And is there ever a time when someone maybe updates your environment without you knowing that makes a difference? That is negative, but you didn't know that a change was made?
[00:25:48] Joey Hendricks Oh, and it's a very good question. So generally speaking, if your test environment is stable and it detects something right, so if you have a stable test environment, then the change introduced, it will catch that because it just numbers that change. If there is something interesting in the numbers change, it will happen. Do keep in mind, you need a lot of data to do this. You can't do this on a very low throughput test. The same goes for high throughput tests. If you're, if you're like a telco that pushes out a couple of million transactions and they have huge raw data sets yet and those calculations are also going to take longer because they're more data, more numbers to crunch. For me, I'm kind of in the low end when it comes to throughput. So for me, the calculations don't take long at all. I can calculate them fairly quickly. And because that's the point which I'm trying to come to is that I kind of guard my test environment. So nobody touches it. Nobody does anything on it without my permission, so I can safeguard it a bit from weird changes that happen because somebody decided to, you know, let's update all the test data. And now there are different types of know. Some customers are gone, some are there, or the kind of information that these customers have changed, which impacts the performance. For me, for example, because the context of the customer really impacts my performance. Because if I have a database stand from April this year and the customers that I use in my data said in my test, they, for example, become way more complicated than the reaction time goes up because my data has changed. So that's why generally we have rules in place around the expectation environments for performance that do not touch them unless without permission because if you do so, you can impact the test environment. So we create a lot of awareness around that as also something generally that you should do. We treat him a little bit like a more special test environment, which with limited access where people request access to be done to start testing on them if they want to test something against a more complicated test environment than they usually have and it will all runs to me then or and some other people that say, I do the analysis and say, OK, yeah, you can do that. Nobody's using the test environment at that time. You're not in the way of any performance tests. Go at it. And changes, they also have to get approved by then my team to just make sure that it doesn't impact the tests. And if we do that, we generally test it. And usually, all the changes that we do in the environment are going to be done a week or two later in production anyways. So we have to make the many ways and we see what the impact is then.
[00:28:17] Joe Colantonio Great. Also in your session, you have really good-looking graphs. What do you use to create those graphs?
[00:28:22] Joey Hendricks I use Tableau. I think a tableau is. And I think I am the least powerful tableau user and the least sophisticated because what I literally do, I do connect to my database is an oracle or a MySQL database, and I visualize the graphs. This is just raw data stored in there. I visualize them. I get the nice graphs out of it, or I just connect with CSV file and I create the graphs all the graphs that you always see from me there either plotted with Tableau or I use a Plotly for Python. If you have to generate for a GIF, a couple of hundred images, I'm not going to do that by hand in Tableau because there's a lot of work. So I generally use Tableau for graphing if I quickly need to graph something or I need to make dashboards, and I use Plotly for anything that I have to automate it. So if I want to send something to a team in an ultimate it's fashion I to use Plotly or maybe an APM tool like AB Dynamics or Grafana or something like that.
[00:29:17] Joe Colantonio Okay, Joey, before we go, is there one piece of actual advice you can give to someone to help them with their performance testing efforts? And what's the best way to find or contact you?
[00:29:26] Joey Hendricks Yeah, you can always contact me on LinkedIn, shoot me a message, connect with me, and let's talk performance. Generally, all of the stuff that I've spoken about is very well documented on my GitHub. So you can find all the code needed to start doing this yourself. So it's all available in Python. All of the stuff is way better explained on my Readme because it is a very difficult subject. It's not easy, it's not a, it's not an easy talk. It's not easy to understand this in one in one go. It's all in there. If you want to test it out, there are some example data you can run it on so you can see for yourself that it works and works in the way that I describe. I can look back at my topic at the pack for more information, and generally, you can find all of the stuff on my GitHub profile. And if you want to commit and try to make this better if have some, as you know, way more about statistics than me. Please help me out here. Let's, let's make a better project out of this, and let's try to make a one-size solution for all performance engineers that they can just download a Python script, embed that into their pipeline, and start automatic result analysis on their own and use it for their own needs.
[00:30:40] Joe Colantonio Thanks again for your performance testing awesomeness. That's everything we value we've covered in this episode. Head on over to testguid.com/p80 and why they make sure to click on the try them both today link under the exclusive sponsor's section to learn all about SmartBear to awesome performance test tool solutions Load Ninja and Load UI Pro, and if the show has helped you in any way. Why not read and review it on iTunes? Reviews really do matter in the rankings of the show and I read each and every one of them, so that's it for this episode of the Test Guild Performance Site Reliability Podcast. I'm Joe. My mission is to help you succeed with creating end-to-end full-stack performance testing awesomeness. As always, test everything and keep the good. Cheers.
[00:31:28] Outro Thanks for listening to the Test Guild Performance and Site Reliability Podcast. Head on over to testguildcom.kinsta.cloud for full show notes, amazing blog articles, and online testing conferences. Don't forget to subscribe to the Guild to continue your testing journey.


text:
Benoit PARÉ
BENOIT PARÉ is a French artist born in 1961 in Paris. In 1986 he moved in Greece where he lives and works since then.
After his initial studies in Paris at Ecole Nationale des Beaux-Arts de Cergy-Pontoise, Val d'Oise, he enriched his knowledge of visual arts through traveling in Europe and North America. Then he studied painting under the supervision of Nikos Kessanlis in the Athens School of Fine Arts (1987-1992) from which he graduated achieving the highest grade of 30/30.
Beyond painting, he has also involved himself in wall painting, byzantine art, graphic arts, stage-design, portraits, advertising and illustration (books, magazines, newspapers and the Internet).
Since 1998 he has been appointed professor of arts in secondary education and has been teaching at the gymnasium of the Athens children hospital.
As a painter he has shown his work intwelve individual exhibitions in Greece and in Paris. He has also participated in group exhibitions in Greece, France, Belgium, Germany, Spain, the Netherlands, Canada and the USA.
Individual Exhibitions:
2022 "Argosaronikos", Fine Arts Kapopoulos gallery, Spetses
2019 "Islands", Fine Arts Kapopoulos gallery, Paros
2016 "Pops", Cartoon Art Gallery, Dubai
2013 "comix mania", Fine Arts Kapopoulos gallery, Athens
2010 "Summertime", Fine Arts Kapopoulos gallery, Mykonos
2009 "Smile", Fine Arts Kapopoulos gallery, Athens
2006 "Triptychs", Adam Gallery, Athens
1999 Foundation for Art and Culture of Thrace, Xanthe
1994 French Institute of Athens
1992 French Institute of Athens, Piraeus branch
1991 French Institute of Thessaloniki
1989 «ΑΧΙΟΜΕ», Paris
AEGINA, acrylic on canvas | 120 x 80 cm
acrylic on canvas | 100 x 150 cm

redpajama_set_name: RedPajamaCommonCrawl


On the morning of Friday 11th November 1977 both Radio Caroline and Radio Mi Amigo's programmes were continually being interrupted by generator problems and, at 12 noon, the two stations closed down. Over the following weekend severe storms hit the North Sea with gales of up to force 10. Both outlets remained silent. Although coastguards reported that they had received no emergency calls from the Mi Amigo, press speculation began about the possible end of Radio Caroline.
DJ Stevie Gordon on the deck of the mv Mi Amigo, a photo posted on Facebook by the man himself.
Following stories about the station's lack of money and with some new wild and untrue rumours about the ship's mast collapsing, some wrote the station off. In fact the mast was perfectly alright and the Mi Amigo was still riding at her usual anchorage. However, because of bad weather, no tender had been able to visit the ship and the DJs had stopped broadcasting to conserve enough fuel to run the ship's lighting and to cook an occasional hot meal. The food supply got so low that the team on board were down to a small sack of potatoes, a packet of rice and one of spaghetti. For a week the DJs and crew had lived on dry soup. Fortunately the weather improved and a tender arrived bringing much needed supplies. The station returned to the air on Tuesday 22nd November.
The technical faults persisted but at least everyone was safe and, to say the least, the reports of Caroline's demise were premature. Work continued on the generators and soon service was back to normal. One unexpected development was the announcement that, as of 1st December 1977, Radio Caroline would revert to night-time broadcasting only. It had become apparent that by Radio Mi Amigo having the exclusive use of the big transmitter and Caroline only able to use the 10 kilowatt one, audiences for the English programmes had fallen. 962 kHz ("319") was the clearer of the two frequencies so Radio Mi Amigo was moving across and the two stations were going to share it. After a year and a half of an all day service, Caroline was going to be nocturnal again.
Brian Martin starts his lunchtime show on 30th November 1977 and plays another version of the promotion which includes the announcement in French. Clip edited from a longer recording shared on the Internet Radiocafé, now known as the Radiotrefpunt (radio meeting point) forum by Vincent. Our thanks to him (duration 3 minutes 21 seconds).
At 11am on 1st December Radio Mi Amigo opened up on 962 and Caroline's 24 hour service was no more. "Europe's first and only album station" was now on the air between 6.30pm (later 6.00pm) and 5am GMT each night.
In February 1978 Caroline began running an album chart show. Although the programme was weekly, the chart actually changed every other week. Called The Caroline Countdown of Album Sound, it was broadcast on Monday evenings. See here and following pages.
Mike Stevens and Mark Lawrence celebrate Caroline's 14th birthday with a Top 50 chart countdown on 26th March 1978. Recording from the Golden Radio NL archive shared on the Internet Radiocafé, now known as the Radiotrefpunt (radio meeting point) forum by MartinJA. Our thanks to him (duration 3 minutes 51 seconds).
Two of Caroline's best-loved DJs joined the station that summer: Tom Hardy presented his first show on 5th June and Richard Thompson (now known as Bob Lawrence and still with the station) came aboard in August.
Left to right: Organiser Ton van Draanen, DJs Paul Hollingdale, Stuart Russell, Tony Allan and Graham Gill at 'Zeezenders 20'. Photo by Rob Olthof. More of his photos from the event are here.
An article written by the DJs aboard the mv Mi Amigo in August was published in the sixth edition of the Caroline Newsletter. You can see it here. Zeezenders 20, mentioned in the article, was a Dutch free radio convention held in Noordwijkerhout in July 1978. It was organised by Music Radio Promotions (the company behind Flashback '67, held in London the previous year) along with Hans and Jelle Knot, Ton van Draanen, Marc Jacobs and Frans Schuurbiers. Radio Day, as it became known, went on to become a popular annual event in The Netherlands for many years.
During September Caroline boss Ronan O'Rahilly had discussions with a company called Radio Hollandia. They were offering to replace Radio Mi Amigo with taped programmes manufactured legally in Holland for in-store closed-circuit systems in shops and restaurants. Former RNI and Veronica star DJs Joost den Draayer, Tony Berk and Will Luikinga were involved so it would have meant some big names being heard on the station but Sylvain Tack, Radio Mi Amigo's owner, insisted that he still had a contract with Caroline and that Hollandia could not take over his airtime.
Towards the end of October 1978 high seas and storms attacked the Mi Amigo. At 11.54am BST on the 20th October Radio Mi Amigo closed down when smoke started billowing from the last remaining working generator. There was a brief Caroline broadcast that evening to let the the office know what was happening.
Continued bad weather held up the tender so no supplies could reach the troubled boat. During this period of enforced 'dead air' Sylvain Tack decided he had enough of financing Caroline. It was time for Radio Mi Amigo to go it alone and buy its own ship.
One of the English DJs on board at the time of the split with Radio Mi Amigo was Stuart Russell, now known as Nigel Harris. In his fascinating book, Ships in Troubled Waters he reveals how the end happened. Firstly a Dutch tender arrived. The tender crew spoke to the Radio Mi Amigo personnel in Dutch but no one would tell the Caroline men what was going on. The Mi Amigo team then left the radio ship on the tender, still without saying anything to their English-speaking shipmates. The tender steamed away then turned and raced full pelt towards the radio ship. As Stuart writes in his book "a collision seemed inevitable". The Caroline guys thought their end was coming but, at the last moment, the tender's engines were slammed into reverse and it veered to starboard. Maybe common sense had prevailed. A collision would have been disastrous for both vessels. The tender crew then attempted to cut the radio ship's anchor chain but, fortunately, the movement of the two boats made this too difficult and the attempt was abandoned. When a British police vessel turned up to see what was going on, the tender turned tail and headed off to the Continent. It is not known exactly what they were up to but, as Radio Mi Amigo was about to launch a new ship, it could be assumed that they wanted to do as much damage to Caroline as possible before leaving.
It wasn't just the Radio Mi Amigo DJs who had gone. As Sylvain Tack's money had paid for the ship's crew, the end of their agreement meant that the Captain and his men departed too. This left just the Caroline DJs and engineers alone aboard the storm-battered and silent radio ship.
Four photos of some colleagues posted on Facebook by Stevie Gordon, reprinted here with his kind permission. Clockwise from top left: Mark Lawrence, Mike Stevens, Stuart Russell and Roger Mathews.
Following the stories of Caroline's financial difficulties, the continued lack of output served to re-emphasise rumours of possible closure and, once again, the newspapers wrote their stories. This time it even ran to a Daily Telegraph leader article, commiserating on the demise and congratulating Caroline on a successful career.
As Christmas 1978 came and went, 962kHz was still quiet and life aboard the mv Mi Amigo was becoming increasingly unpleasant. Fuel supplies were so low that the power was only switched on for three hours a day - just long enough to cook one meal. Without continuous power, the food in the deep-freeze began to rot. Peter Chicago came ashore in an effort to organise supplies, leaving Roger Mathews, Tony Allan, Tom Hardy and two Dutchmen, Bernard Gratz and Marcel Aykman, on board. The weather continued to deteriorate and the heavy seas caused some rivets holding a steel plate in the ship's hull to pop. The ship began to take in water. One generator had to be run non-stop just to power the pumps but the effort proved too much for it and, on 17th January 1979, it gave up the ghost. Without the pump, the water level began to rise and, with a force 7 blowing, the DJs were forced to broadcast a 'Mayday' distress call. A helicopter from RAF Manston investigated and confirmed the emergency. On the afternoon of 19th January the Harwich lifeboat was launched. At about 6pm she reached the listing Mi Amigo, whose stern was now almost completely under water, with the bows sticking up in the air. The crew (and Wilson the pet canary) were taken off and the ship was left to the elements.
Left to right: Roger Mathews, Tony Allan and Tom Hardy after being brought ashore by lifeboat. Photo from 'Caroline - A Story in Photos', published by Three Master Productions.
An All-Time Top 50 favourite tracks chart, as broadcast at Easter 1978, is here.
An article by the DJs about life on the Mi Amigo is here.
Part ten of 'Caroline In the 70s' is over the page.


Prime Minister Stephen Harper said Tuesday the government has known about problems with the temporary foreign worker program since last year and that's precisely why it has been making changes to it.
The government has been acting on problems with the temporary foreign worker program for more than a year, Prime Minister Stephen Harper said Tuesday in response to opposition accusations the government was hiding information and denying that it wasn't working properly.
The accusations arose during several feisty exchanges in question period between the government and the NDP over the temporary foreign worker program following a CBC story about a memo for Human Resources Minister Diane Finley on the controversial program.
CBC News reported on Monday that Finley was warned last year that employers were hiring temporary foreign workers in the same jobs and same locations as Canadians who were filing employment insurance claims. One example cited in the memo showed the number of temporary foreign workers who were allowed to work as food counter attendants and the number of people who claimed employment insurance who cited experience in that sector in the same province.
The briefing note prepared by Finley's deputy minister last May was obtained by CBC's Power & Politics under the Access to Information Law.
In the House of Commons on Tuesday, NDP Leader Tom Mulcair accused Harper of denying that there were any problems with the temporary foreign worker program until changes to it were announced last week.
"Exactly the contrary is true. The government indicated for some time that it would be reforming the temporary foreign worker program," said Harper, adding that measures were already introduced to better match job vacancies with people on employment insurance.
"We've been very clear we need to do a better job of matching the demand for EI and the demand for temporary foreign workers, that's precisely what the government has been doing for a year and a half while, by the way, the NDP's been writing us demanding more temporary foreign workers for their ridings," Harper said.
The temporary foreign worker program has been the subject of much controversy lately on Parliament Hill. Last month, CBC reported that dozens of employees at RBC were losing their jobs to temporary foreign workers.
Earlier this year, two labour unions took Huiyong Holdings Group to court, after the mining company hired more than 200 temporary foreign workers from China for its coal mine in northeastern B.C.
Mulcair asked whether Finley has been hiding information from Harper or if Harper has been hiding information from Canadians about how the temporary foreign worker program was being used.
"The minister brought in changes last year to make sure that people who are on EI, employment insurance, get first crack at jobs rather than temporary foreign workers, but guess what? Guess who opposed that? The NDP opposed it," Harper responded.
Finley and Citizenship and Immigration Minister Jason Kenney defended the government's actions on reforming both the employment insurance and temporary foreign worker programs.
"We recognized this problem a year ago and in fact before that and we've been talking about it publicly since and in fact that's exactly why we introduced changes to the employment insurance and temporary foreign worker programs," said Finley.
Employers are more aware of qualified unemployed people and those seeking work are more aware of employers who are seeking to fill vacancies, she said.
Kenney said the information in the memo was being cited in speeches and interviews a year ago and that it's the NDP that is behind on the issue, not the government.
"Why did it take the NDP a year to catch up with reality?" he said.
The debate on Parliament Hill came as a new report suggested Tuesday that the increasingly controversial system "could be distorting" the natural supply and demand of the country's labour market.
The University of Calgary study suggests Canada isn't facing a wide-scale labour shortage but rather is experiencing a "serious mismatch" between the skills of its labour force and the demands of the labour market.
Kevin McQuillan — lead author of the study titled "All the workers we need: debunking Canada's labour shortage fallacy" — said improving the balance in the labour marketplace does not require an increase in the labour supply.
"Indeed, the TFWP (temporary foreign worker program) is sometimes being used to fill jobs with foreign workers in regions that already suffer from relatively high unemployment rates," wrote McQuillan.
"Temporary foreign workers could be distorting the labour market forces that would bring together more Canadian workers and jobs."
McQuillan suggested an improved immigration policy — that could adjust intake levels with labour market needs and reduce the number of temporary foreign workers brought in — as part of the solution.
"The country is not likely to benefit from a growing class of low-paid, temporary residents," he wrote. "Canada needs to make more effective use of its homegrown human resources."
In 2012, some 213,516 people entered Canada via the temporary foreign worker program, more than three times the number admitted a decade ago.
The private sector brought in 25 per cent more foreign labourers last year than the number of economic immigrants accepted by the government, which has long insisted caps on its own programs are necessary so as not to flood the Canadian labour market.
McQuillan's report conceded there are worker shortages in specific industries and certain regions, but he argued that young Canadians need to be encouraged to pursue an education and careers in fields where jobs are available.
He said this could be done through government funding into educational institutions with programs that match labour market needs and tuition pricing that charges more for study in a field where there is already an excess of labour.
He also suggested the government should find ways — such as a tax break — to entice Canadian workers to move from high-unemployment regions to provinces where workers are needed.
Statistics Canada's labour market survey placed the unemployment rate at 7.2 per cent in March.
Tuesday's report refocused attention on the temporary foreign worker program, which the Conservative government was recently forced to admit is due for an overhaul after weeks of public outcry over the scarcity of Canadian jobs.


text:
// Copyright 2013 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

package org.chromium.ui.autofill;

/**
 * Autofill suggestion container used to store information needed for each Autofill popup entry.
 */
public class AutofillSuggestion {
    final String mLabel;
    final String mSublabel;
    final int mUniqueId;

    /**
     * Constructs a Autofill suggestion container.
     * @param name The name of the Autofill suggestion.
     * @param label The describing label of the Autofill suggestion.
     * @param uniqueId The unique id used to identify the Autofill suggestion.
     */
    public AutofillSuggestion(String name, String label, int uniqueId) {
        mLabel = name;
        mSublabel = label;
        mUniqueId = uniqueId;
    }
}

redpajama_set_name: RedPajamaGithub


text:
Susan McKee
About Susan McKee
http://www.susanmckee.com
Susan McKee is an independent scholar and award-winning freelance journalist specializing in history, culture and travel. She travels widely and to amazing places--including Armenia, Chad, Finland, Mongolia, and Antarctica. A member of the Society of Professional Journalists (SPJ) and the American Society of Journalists and Authors (ASJA), she lives in Indianapolis, Indiana.
Posts by Susan McKee:
Sicily's Special Places: Here are Five Favorites
Sicily. Five of the author's favorite Sicilian cities and why you should visit Siracusa, Palermo, Cefalu, Noto and Erice. Highlights of these great places.
A Summer Cruise in the High Arctic
High Arctic Cruise: Adventure Canada's High Arctic Endeavor traveled to the Arctic Circle and the Nunavut region of Canada, and to Ilulissat, Greenland.
The Tangled Cultures of Goa, India
The smallest state in India, Goa is a melange of Hindu, Roman Catholic, and Muslim cultures. Staying at small local hotels and soaking it all in.
Five Reasons to Visit Lubbock, Texas
A Sleepy West Texas Town? Or a lot More? By Susan McKee Surprises greeted me at every turn in Lubbock, Texas. I'd expected to find a sleepy West Texas town, perhaps with tumbleweed rolling down the streets — and found instead an historic icon of rock 'n' roll, a prairie dog village, an explanation of […]
Columbus, Indiana's Stunning Architecture
Filled with beautiful buildings and public art, Columbus is a gem in the Hoosier Heartland By Susan McKee Public art, modernist architecture, and an ice cream parlor open for more than a century are just three reasons to visit Columbus, Indiana. Exhibit Columbus, on view through November 26, 2017, is the inaugural edition of what's […]
A Rare Chance for Americans from Coast to Coast to See a Solar Eclipse
By Susan McKee What's a total solar eclipse? The moon comes between you, earthling, and the sun, turning day briefly into night. It's not that they're rare — between two and five occur every year (when the moon's orbit is closest to earth) but it is rare for one to cross the entire United States, […]
Kosta Boda: Sweden's Kingdom of Crystal
Kosta Boda is a Temple Devoted to Glassblowing in Glasriket, Sweden By Susan McKee The heat from the furnace (which reaches 2700° F) could be felt from the bleachers where we sat in the Kosta Boda factory in Sweden, watching the glassblowers at work. Taking a glob of molten glass from a nearby container by […]
Mongolia: Still the Land of Genghis Khan
A visit to the Naadam festival in Mongolia, with exciting horse races, archery competitions and experiencing the fierce Gobi desert, sleeping in Gers.
Chad: Touring Animal Parks Where Hope Blooms
Chad: Touring Animal Parks Where Hope Blooms. A wildlife tour of Chad, in Africa.
Mumbai India: Top Sights to See
Mumbai, India: Three You Must See – Elephanta Island, Tea at the Taj Palace, Prince of Wales Museum By Susan McKee Mumbai is a city of many layers. With a population of at least 13 million and a history dating back thousands of years, it would take several lifetimes to absorb it all. Visitors can […]
Chicago: A Perfect Day in the City
See Chicago's favorite destinations in 24 hours.
Germany: Cologne's Carnival, Kölsch and Magi
Cologne: The Carnival, Kölsch and Three Wise Men By Susan McKee Carnival is the German version of Mardi Gras. Kölsch is the particular type of beer brewed only here, and the Wise Men? Well, they're said to reside permanently in Cologne. Officially declared "open" in early November, Kölner Karneval is paused during December and picks […]


text:
Q: How do i do a index match split and concatenate multipul IDs in a cell in google sheets? Hey all please help me i need your help with something i been breaking my head on
basically lets say in google sheets i have a list of products and each product has an ID
when making me sheet i have boxes that contain more than 1 product so in a single cell there is for this case 3 different ID codes displayed like this (eg:  087345-080046-083823)
i need to some how in the column in another sheet state what the products are for (eg:Shirts-shoes-shorts) so whet im looking for that i cant find anywhere is a formula like
=Index(split()match()concatenate())

Thanks.

A: This formula solution work in Excel sheet for the Office 365 version due to the using of TEXTJOIN function.
In E2, enter array formula (Ctrl+Shift+Enter) :
=TEXTJOIN("-",1,IF(ISNUMBER(MATCH(A2:A10,0&FILTERXML(""&SUBSTITUTE(D2,"-","")&"","//b"),0)),B2:B10,""))

A: You said that in google sheets you have a list of products, so below is formula in google sheet. Assumption data in E1:E2 and master in A2:B4, then:
= arrayformula
  ( substitute
    ( transpose
      ( query
        ( transpose
          ( vlookup
            ( split ("'" & substitute(E1:E2,"-","-'"),"-",true,true) ,
              ProdMaster!A2:B4,2,false
            ) & "-"
          ),"Select *",1000
        ) & "%"
      ),"-%",""
    )
  )

redpajama_set_name: RedPajamaStackExchange


text:
Museum Admission
Lucy Desi Museum
LaughSafe
Lucille Ball Comedy Festival
Plan Your Museum Visit
Dual Admission National Comedy Center Lucy Desi Museum
Muppet Stand-Up Comedian Fozzie Bear Now on Exhibit at the National Comedy Center
19 Feb Muppet Stand-Up Comedian Fozzie Bear Now on Exhibit at the National Comedy Center
Posted at 13:37h in Press Releases by National Comedy Center
Muppet Stand-Up Comedian Fozzie Bear
Now on Exhibit at the National Comedy Center
Photos here: https://bit.ly/3uddTyf
Jamestown, New York – February 19, 2021 – As the original "Muppet Show" makes its debut on Disney+ today, the show's resident stand-up comedian and beloved Muppet, Fozzie Bear, makes his debut at the National Comedy Center in Jamestown, New York and is on exhibit for visitors to enjoy during their museum experience.
One of the most iconic Muppet characters created by The Jim Henson Company, Fozzie Bear is loved by generations of Muppet fans around the world. The Fozzie character on display at the Comedy Center is an original – featured in many Muppet television shows and films.
While the National Comedy Center is one of the most interactive and immersive museums in the world, it also features artifacts from some of the most legendary comedic artists of all time. Fozzie joins rare items on display from Carol Burnett, Lucille Ball, Charlie Chaplin, Rodney Dangerfield, George Carlin, Ernie Kovacs and many more.
Brought to life, developed and performed by the legendary Frank Oz, Fozzie Bear is well known for his less-than-stellar stand-up talent, his catchphrase "Wocka wocka wocka!" and his close friendship with Kermit the Frog. Fozzie made his first appearance on Jim Henson's "The Muppet Show" in 1976 and his been perfecting his comedy chops for nearly 45 years now, with featured appearances in many of the Muppet feature films beginning with "The Muppet Movie" in 1979. The character's principal performer has been Eric Jacobson since 2002.
"It's wonderful that The National Comedy Center, which I love, is highlighting Fozzie in the context of comedy's heritage," stated Frank Oz. "Fozzie is very close to my heart. A part of me is in him—the part of me that as a young boy loved show business, or as Fozzie would put it, 'The Show Business.' But the similarity ends there. Fozzie wants to be the funniest bear in the world. Never mind the heckling, the fumbling of punch lines, the paltry laughter at his jokes. He has a desperate need to get love from laughter. So he will never quit. He will never succeed in being funny. But he will never quit."
"We are thrilled to welcome Fozzie Bear to the National Comedy Center," stated National Comedy Center executive director Journey Gunderson. "As the country's official cultural institution dedicated to comedy, this is the perfect home for Fozzie, where he is surrounded by comedy legends across all eras and genres of the art form."
The Fozzie Bear Muppet is on exhibit courtesy of the Center for Puppetry Arts.
The National Comedy Center is open Thursdays through Mondays from 10 am to 5 pm. Tickets can be reserved in advance at ComedyCenter.org.
See The Experience
Support/Join
Lucille Ball Desi Arnaz Museum
Thursday – Monday
10 am – 5 pm;
Closed Tuesdays and Wednesdays (open on Tuesdays from Memorial Day through Labor Day only)
203 West Second Street
Jamestown, NY 14701
info@comedycenter.org
© 2023 National Comedy Center | Site by JPD Studio


Rent a Dumpster in Saltillo Now!
Simply give us a call and we will answer any questions you may have about the Saltillo dumpster rental procedure, allowed materials, size you may need, etc.
Our roll off containers can usually be delivered in Saltillo the day after you place your order. Make sure to call us early to ensure timely delivery.
Most dumpster rental businesses in Saltillo normally rent containers for a standard speed for 7 days, although most one-time customers end up keeping their container an average of three and a half days. When you call to allow the container, chat with the customer service representative about the length of time you think you will need.
In case it turns out that your job takes longer than you expected, merely phone the dumpster business to explain. Most businesses will charge you on a per-day basis following your initial seven days. It is vital that you communicate this additional need as soon as you know you have it since most dumpster companies have a limited number of bins that will already be reserved. Most businesses will work together with you to accommodate your additional rental time. If you think you will need the dumpster for an additional week or more, make sure to mention that; rates may change based on a longer time frame.
Most companies make it simple for you to book your dumpster appointment. Before you contact rental companies to schedule a drop off or pick up, however, you can take some measures that make the process even easier.
2. Give you and the rental business a lot of time. It is better to phone ahead at least a week or two before you need the dumpster. Should you attempt to schedule an appointment sooner than that, you might have a small selection.
3. Keep in touch with all the rental business. If anything changes in your schedule, contact the business when possible to let them know. This way you can correct the appointment as needed without restricting your options.
What Size Dumpster Should I Get for a Residential Clean Out in Saltillo?
Residential clean outs usually don't require big dumpsters. The size that you need, though, will be contingent on the size of the endeavor.
If your plan is to clean out the entire home, then you most likely need a 20-yard roll off dumpster. You could also use this size for a big basement or loft clean out.
When choosing a dumpster, though, it is often a good idea to ask for a size bigger than that which you believe you'll need. Unless you're a professional, it is tough to gauge the precise size needed for your project. By getting a slightly bigger size, you spend a bit more money, however you also avoid the possibility you will run out of room. Renting a bigger dumpster is nearly always cheaper than renting two little ones.
If you would like to rent a dumpster in Saltillo, you will discover that costs vary substantially from state to state and city to city. One method to get actual estimates for the service you need would be to call a local dumpster business and ask about their costs. You may also request a quote online on some sites. These sites may also comprise full online service that's constantly open. On these sites, you can pick, schedule and cover your service whenever it's suitable for you.
Variables which affect the price of the container comprise landfill fees (higher in certain areas than others) and also the size of the container you opt for. You have to also consider transport costs and also the kind of debris you will be placing into your container.
Price quotes for dumpster rental in Saltillo generally comprise the following: the size of the container, the kind of debris involved, the base price for the dumpster, how much weight is included in the quote, a given rental period and delivery and pick-up fees.
One of the most important things to do when you're contemplating a building or remodeling job is to plan ahead. Part of that procedure will be studying your dumpster needs for the project. Knowing ahead of time how dumpster rental in Saltillo functions will make things easier when you start the procedure. You'll locate the majority of the general information you need online, but for advice specific to your region, you'll need to call your local business. Be sure to ask about any hidden or extra fees so you do not get stuck with a surprise statement.
Among the biggest parts of your research will be establishing the right size container you should rent predicated on the size of the undertaking. This may be your largest cost, so make sure you get a size that is big enough to last for the whole project. Other problems to research first include a potential place for the container, the type of waste which you're throwing away and the duration of time you will need the dumpster.
Junk removal vs dumpster rental in Saltillo - Which is good for you?
When you own a project you are going to undertake at home, you might be wondering if it is better to hire someone to come haul off all your garbage and rubbish for you, or if you should only rent a dumpster in Saltillo and load it yourself.
Renting a container is a better alternative if you'd like the flexibility to load it on your own time and you also do not mind doing it yourself to save on labour. Dumpsters also work well if you have at least seven cubic yards or more of debris. Roll offs generally begin at 10 cubic yards, thus should you just have 3-4 yards of waste, you are paying for much more dumpster than you desire.
Garbage or crap removal makes more sense in case you'd like another person to load your old stuff. It also works well should you'd like it to be taken away fast so it is outside of your own hair or if you simply have a few large items; this is probably cheaper than renting a whole dumpster.
Renting a 40 yard dumpster will get you a container that holds about 40 cubic yards of waste. Dumpster sizes and dimensions are not perfectly normal from company to company, but common measurements for a 40 yard container are 22 feet long by 8 feet wide by 8 feet high. This is the biggest size that a lot of dumpster firms usually rent, therefore it is perfect for large residential projects as well as for commercial and industrial use.
The weight limit on 40 yard containers generally ranges from 4 to 8 tons (8,000 to 16,000 pounds). Be really conscious of this limit and do your best not to transcend it. If you do go over the limit, you can incur overage fees, which add up quickly.
Almost all roll of dumpsters have the exact same width (typically eight feet). This makes it possible for firms to utilize the same trucks to transport a wide variety of dumpsters. When you see a dumpster's measurements, Thus , you can presume they refer to depth and span. You may even see dumpster sizes listed by yards. This actually refers to square yards that measure the dumpster's volume.
If you are organizing a sizable commercial job, then you will probably need a 40-yard dumpster or bigger. Large home renovations may demand a 30-yard dumpster, but most smaller home repairs just need 20-yard or even 10-yard dumpsters. Speak to an expert should you need more advice on selecting a dumpster size that matches your project.
As with any service, it is always a good strategy to reserve your dumpster as far ahead as you possibly can in order to make sure that the dumpster will be accessible when you really need it. Should you wait until the final minute, there is no guarantee that the organization will soon have the capacity to fill your order.
Two or three days notice is generally sufficient to ensure your dumpster delivery punctually. Remember that the most active days are usually on Mondays and Fridays (surrounding the weekend), thus if you can organize your job for the middle of the week, you have a increased possibility of finding the dumpster you need.
Should you find out you require a dumpster the following day or even the same day, please go ahead and call the company. Should they have what you need, they'll definitely make arrangements to get it to you as soon as possible.
Whether or not you desire a long-term or roll-off dumpster depends upon the type of job and service you need. Long-Term dumpster service is for continuous demands that last more than just a couple of days. This includes matters like day-to-day waste and recycling needs. Temporary service is simply what the name suggests; a one-time demand for project-specific waste removal.
Temporary roll-off dumpsters are delivered on a truck and are rolled off where they will be utilized. All these are usually larger containers that can manage all the waste which is included with that specific job. Long-Term dumpsters are usually smaller containers because they are emptied on a regular basis and so do not need to hold as much at one time.
If you request a long-term dumpster, some firms demand at least a one-year service agreement for this dumpster. Roll-off dumpsters only require a rental fee for the time that you just maintain the dumpster on the job.
All major credit cards accepted for dumpster rentals in Saltillo.


Order Your Book Today! BARE USA has been printed and limited edition books are available. Click below to get yours. There's only 25 left in stock.
BARE USA is printed by Puritan Capital, the only printer in the USA that has the technology to digitally print a true black and white image. The book will rest in a handcrafted one of a kind box. This 14 x 9.5 inch hardcover book is filled with over 150 unique images, most of which have never been seen before. You also get 50 stories from the road, one from each state. Each book will come signed and numbered with a certificate of authenticity. This book is 100% made in the USA! Only 100 copies of this book will exist in this size and format.
Check out the video for a full discription of what you'll be getting.
Also available in digital format! It's just like the real thing only digital and only $25! It even comes signed and numbered and the file is specifically made out to you. These hi resolution images can be views on any device, from your smart tv, computer, phone or tablet! Please note, each digital book is specially prepared for you so please allow 48 hours to receive your link to download the file.


Resort Hotel Bogdan is ideally located on Vokzalna Street 2a in Morshin in 969 m from the centre. The closest Ivano-Frankivsk Airport is situated in 66.2 km from the resort.
Here are offered all the necessary services: 24-hour reception desk, comfortable non-smoking rooms, car lot, open terrace, amazing bar, spa complex, internet services. Travellers can pay using these types of bank cards: Visa, Mastercard.
For your accommodation are offered 5 rooms in the resort. Tourists can easily choose between different types of rooms: suite, double. Guests can count on such amenities as refrigerator, safety deposit box, free toiletries, desk, terrace, ironing facilities, flat-screen tv.
This room has a flat-screen satellite TV. The private bathroom comes with a shower and free toiletries.
This room features extra space and a flat-screen satellite TV. The private bathroom comes with a shower and free toiletries.
This junior suite features a balcony. It has a sofa and flat-screen satellite TV. The private bathroom comes with a shower and free toiletries.
This suite features a living room with a sofa and flat-screen satellite TV. The private bathroom comes with a shower and free toiletries.
This suite features a terrace. It has a living room with a sofa and flat-screen satellite TV. The private bathroom comes with a shower and free toiletries.
Children and Extra Bed Policy All children are welcome. One child under 6 years is charged UAH 190 per night when using existing beds. All children under 6 years are charged UAH 190 per night for extra beds. All further older children or adults are charged UAH 230 per night for extra beds. The maximum number of extra beds in a room is 1.
A deposit via bank wire is required to secure your reservation. The hotel will contact you with instructions after booking. Tourist tax is applicable.
Nice hotel. Great people who actually create the atmosphere.
You can talk with your neighbors through the wall.


On February 1, 2018, Durham Regional Police Service (DRPS) officers stopped a vehicle in an Oshawa parking lot after observing what they believed to be a drug transaction. The officers approached the vehicle and asked the driver to produce his driver's licence. Suddenly, the driver accelerated and sped out of the parking lot. A pursuit was initiated. Shortly after, the vehicle of interest left the roadway, crossed a ditch, and collided with a hydro pole, shearing it in half, before the vehicle flipped over and came to rest on its roof. The Director of the Special Investigations Unit, Tony Loparco, has determined there are no reasonable grounds to lay criminal charges against a DRPS officer in relation to the serious injury sustained by one of the vehicle occupants.


The air was thick and sultry, the aftermath of the intense heat of the day. It must have been one of the hottest of last summer, and people had melted before my feet.
First stop; the pub. But not just any pub; a quirky drinking house with the added bonus of being lulled by the sensual purring of the turtur from the beer garden. Or should I say, a magical evening spent admiring the dainty and rare Turtle Dove, with the added bonus of being next to a pub. The birds showed beautifully, the blue-grey tinged with a shy blush, suiting their coy nature, and as dusk fell the last rays illuminated their delicate patterned feathers as they spread their tails and trilled.
But the evening's excitement wasn't over. Finishing our drinks we headed into the forest in search of another elusive creature, the enigmatic Nightjar.
Relentlessly scanning for the falcon-like silhouette as we stalked beneath the dark trees, I wondered if we'd be disappointed, but then we heard it; the unmistakable churring, gurgling song, accompanied by the distinctive wing clap of the males claiming their territory.
And suddenly there he was, circling around and around our heads in an unbelievable display, silently hunting through the cloud of midges that assailed us. I couldn't say how long we watched in awe, this moth-like bird, it's cryptic gold-flecked plumage an invisible cloak amongst the trees, treating us to this rare show.
To be so close, for so long, it was an incredible experience and both birds a first for me.
It truly was an unforgettable evening.
Susie works for the RSPB based at the Bempton Cliffs Reserve. She is also a local author. We are very pleased at YCN to welcome her on to our writing team, look out for more encounters on our news section soon! You can read her YCN profile Click Here.


As the number 1 radio network in Malaysia, Astro has been entertaining radio listeners with great content since 1996. With a weekly audience of 15.3 million weekly across its 11 brands, it's unsurprising that one of its stable is Malaysia's number one station of choice. Malay station ERA has a weekly reach of 6.7 million on radio and 4.5 million on social media. The brand is famous for playing only the best chart-topping hits of today for its target market of 10-29 year olds. Its popular breakfast show, JoHaRa Pagi ERA with Johan, Haniff & Ray, runs from 6am to 10am and has 3,440,000 listeners per week. It is presented by a comical trio: Johan, thought of as the backbone of the show, who is known for his creative jokes and wacky banter; Ray, loved for his infectious laugh and hilarious antics, who is also an Astro TV host and voice-over artist ; and Haniff, whose unique presenting skills are combined with sharp wit and spontaneous humour. With their riotous presenting skills and the latest music hits, it's not surprising that the station's mission is for this to be the funniest, most popular breakfast show in South-East Asia.
Mediacorp took eight out of the top ten spots in Singapore's latest Nielsen Radio Diary Survey, conducted between September and October 2018, and of its stations, CLASS 95 was the top runner, clinching the top position in the biannual radio survey with a weekly listenership share of 18.8%. Having formerly been the number one English-speaking station, it is now the number one overall station in the first time of radio history as the only station to have over 800,000 weekly listeners.
One of its most popular shows is Muttons in the Morning, presented by Vernon A and Justin Ang who brought the how to CLASS 95 after 10 years at pop music station 987FM. Running from 5am to 10am, the breakfast show is packed with tons of local content, commercial elements and all the big station promos are anchored on the morning drive time. Big personalities Vernon and Justin have a huge fan base and fill their show with games, spoof songs, movie parodies and competitions. Combined with its playlist of hit music, this show looks set to hold its top spot in the popularity stakes.
Owned and operated by Masima Radio Network in Jakarta, Prambors is a commercial radio network that was started in 1971 and now has nine stations across Indonesia. Its aim was to play pop music to its target audience of teenagers and young adults, and it achieved cult status in the Eighties and Nineties. Its radio DJs, or known as Wadyabala Prambors, have always been young adults to keep the station's style fresh and vibrant. Played in the morning from 6am to 10am, its breakfast show is Desta & Gina in the Morning (known as DGITM). Aimed at 15-29-year olds, the programme is known for playing the top international and domestic hits, as well as fun games, such as Gender War in which the presenters are pitted against each other in challenges. The presenting style of Desta and Gina, along with their sidekick Kenny, is as you'd expect from a trio of youngsters – energetic, loud and full of life, making it a fun, exciting show to wake up the youth of Indonesia as they head off to school and work.
Find out more about the breakfast shows in Asia at Radiodays Asia Kuala Lumpur 2019, 27-28 August.


Hi All! Welcome to day 2 of Stamp Highlights as we take a look at Sunday Sentiments, a wonderful sentiment set that takes a different path from the rest!
We think Elena's card is so cute! We love how she masked the iguana onto the boy's shoulder - they are best friends for the summer! And the ink splatter looks like... dirt! Sunday Sentiments provides the perfect grounding for these adorable images.
May created an amazing little scene for someone just as amazing with Chance of Rain and Sunday Sentiments!
Pamela paired two little owls and the beautiful wreath from Charmed with the congratulations sentiment for a wedding card. We love how the little owls are perching on the sentiment!
Laura masked off the sentiment line to add colorful ink blending and a cute girl popping up from In My Heart.
Ashley created a sweet friendship card with this pair of sentiments! The colored owl and die cut wreath from Charmed are the perfect match to this cute card.
Nichol created a set of 5 thank you cards using greetings from Sunday Sentiments on both the front and inside of her cards.
We love how Nicole used the sentiments and how she created a mirror image to make the two girls looks like best friends!
More wonderful projects to come tomorrow!
So cute. Love all of the couples and the loving theme.
Love all of these. This set is so cool.
These are all sooo cute!
All the cards are just adorable, but I have to say May's card really calls to me it is just to cute for words.
Thanks to all the ladies for sharing always so much inspiration to be had.
As always, the DT girls have showcased the new release beautifully! Love all these cards!
This sentiments are super nice, the line is great for elegant cards!
I usually am not a fan of people stamp/dies---but I really like these!!


text:
NewsdzeZimbabwe
Our Zimbabwe Our News
BABA MANYERUKE : I HAVE NOTHING TO SHOW FOR MY CAREER
Friday, November 29, 2019 NewsdzeZimbabwe 0
IT was on August 15, 1942, in Majakatira village, Chief Chatongoza in Chiwundura communal lands, Midlands, when a baby boy was born after only seven months in its mother's womb. His birth did not bring with it much joy, as he was a premature baby with a tiny body filled with little energy that made it difficult for one to carry him in the arms.
Extra care and additional clothing was needed to carry him.
Back in that village, babies born prematurely were regarded as misfortune that would bring catastrophe to the community. Culture and tradition had it that the baby should be cast out of the village.
Village elders were then seized with responsibility of casting away that baby, but were supposed to convene a meeting to decide on how to dispose of the baby.
The village elders' decision was final, according to the village's traditional and cultural laws.
As fate would have it, a few weeks into his birth, Joseph Mechanic Manyeruke got seriously sick.
His illness seems to have sent a message to the village elders that the ancestors were not happy and they must cast away the premature baby as soon as possible or misfortunes would befall their village.
Without wasting time, a meeting was convened. One elderly woman was tasked to mould a big clay pot ("gate" in Shona) in which the baby was to be bundled in before being dumped on the banks of a nearby river.
His mother, Hakuna, was not informed of the village elders' decision, neither was his father, Magundani. Sad!
On the fateful day when Mechanic was supposed to be cast away from the village, elders also convened a meeting and proceeded to the Manyeruke homestead.
No one to this day has an explanation as to how the gospel singer's father, who was not at home that particular time, got word of the village elders' resolution and that they were at his homestead to take away the "misfortune" from the village.
This is the sad story of the life of legendary gospel singer Baba Mechanic Manyeruke as he narrated it to The Herald on Saturday Lifestyle this week.
"My mother told me that she suddenly saw my father arriving moments before I was bundled into the big clay pot. They wanted to take me to the river where I was to be washed away.
"I was told of how my father stood firm, telling the villagers that there was no one who was supposed to touch or think of taking me anywhere.
"On that day, my mother told me, I was so sick that she could not feel my heartbeat. This was despite the fact that I was slowly breathing.
"I was told how my father strongly warned people who had come to take me away that if they dare touched me, someone was going to face the music," said Baba Manyeruke, as he found comfort on a sofa at his Chitungwiza house.
The village elders later left their homestead letting his parents nurse him until he regained his health.
Interestingly, Baba Manyeruke captured his true story on the track "Vakandichengeta Mai" from the album "Dzokororo" released last year. But for him it was not yet over. It then came a time to name the baby.
Baba Manyeruke had a brother called Nkathazo who made and repaired metal pots and cups. He loved and was so passionate about his job to the extent of preferring to be called by the moniker, Makanika.
Nkathazo then grabbed an opportunity to show the world how much he loved his job and came with a suggestion to name his younger brother Makanika.
"It was how the name Mechanic came about. My father named me Joseph and Nkathazo came with Makanika. "It was the nurses at the hospital who wrongly spelt the name and wrote Mechanic on the birth registration forms but it was supposed to be Makanika in Shona."
As he grew up, the name Mechanic became more popular. "It appears people were keen on giving me names from my birth and do you know how the Baba came about?
"I was referred to as Baba Manyeruke on the first day I stepped at RBC (Rhodesian Broadcasting Corporation) now ZBC. I had gone to record my first song "Mukoma Udzai Mai Kuti Ndaroora" after being called by producer Steven Kavhayi.
"That song was the only track that I did, which is not gospel. The youngster referred to me as Mudhara Meks, meaning elder. Then they began calling me Baba Manyeruke," he recalled.
Baba Manyeruke's life seems to have been characterised by hurdles as he grew up.
He started working at Lyons Zimbabwe as a general hand before going to work as a gardener in the leafy suburbs of Borrowdale and Vainona for years up until he became an established singer.
Although he is a role model to many and a celebrity to others, he feels all is not yet okay with him.
Without mentioning how he has been let down by people who had promised him a top of the range car — Jaguar XF — Baba Manyeruke has nothing much to show off for his fame, besides his house along Mandela Road in Chitungwiza.
He does not own any other business as his life solely revolved on music.
On Thursday morning, when The Herald on Saturday Lifestyle visited him at his house, he was pre-occupied with his car — a Nissan Terrano — which he was thoroughly cleaning, preparing to sell it.
Baba Manyeruke wants to sell the Nissan Terrano to raise money to purchase roofing materials for the house he is building in Chiundura, Masvingo.
He has been failing to raise the money for quite some time and selling the car is the only option left for him.
The renowned singer is married to Hellenah Manyeruke, who was also busy with laundry when we arrived at their house.
Mai Manyeruke also told of how she and her friends called Baba Manyeruke Mr Two Dollars after he gave her a $2 note in the Harare Gardens when they were on a date.
"I first met him in Mabvuku at a church conference where he was a guest singer. We then went on a date and it was when he gave me $2. I was so annoyed and went to tell my friends, who then nicknamed him Mr Two Dollars after the incident," she said. Herald
Posted in: entertainment
Share to Twitter Share to Facebook
Follow NewsdzeZimbabwe
UK SNUBS ZIM
ZIMBABWE has not been invited to the United Kingdom-Africa Investment summit opening on Monday next week, dealing another blow to the gove...
NO BAILOUT : CHINA TELLS ED
PRESIDENT Emmerson Mnangagwa's desperate attempts to secure a financial rescue package from China were once again flatly rebuffed after Ch...
THE CHIWENGA DIVORCE FILES
ED NO LONGER THE PRESIDENT : TOP LAWYER
DRUGGED UP CHIWENGA EYEING PRESIDENCY, SAYS MARRY
VICE-PRESIDENT Constantino Chiwenga's estranged wife, Marry, has revealed that the retired army general harbours an ambition to take over ...
Copyright © 2018 NewsdzeZimbabwe | All rights reserved.
Design by Free WP Themes | Bloggerized by Lasantha - Premium Blogger Themes


Minister for Arts, Heritage and the Gaeltacht, Heather Humphreys TD, has welcomed the decision to award the permanent status of UNESCO City of Film to Galway. Galway joins a select group of cities in the world to have been awarded this honour.
"This is fantastic news and I am really pleased for all of the organisations that were involved in the bid. In particular I wish to commend the Galway Film Centre, who in close association with Galway County Council and Galway City Council, and supported by the Irish Film Board, coordinated the bid that also had the backing of some 50 organisations from both the city and county of Galway".
"Galway has a long association with film making and the audiovisual sector going back over many years and it is a fitting testament to all of the great directors, producers, writers and actors who have made Galway their home. From that creative home, they have produced memorable works that has led to this great honour for their city".
Galway joins Sydney, Australia and Galway's twin city of Bradford in the UK as a designated City of Film. This status brings the highest internationally recognised standard of excellence in the creative industries to Galway. The title of Creative City of Film also includes membership of UNESCO's Creative Cities Network.


text:
cask 'routebuddy' do
  version '4.2.1'
  sha256 '95d979d775ebfbd5c835150d50c809fdb8f5e29823b54a13deec73b6df21c643'

  # objects-us-east-1.dream.io/routebuddy was verified as official when first introduced to the cask
  url "https://objects-us-east-1.dream.io/routebuddy/download/apps2/RouteBuddy_#{version}.dmg"
  appcast 'https://routebuddy.com/routebuddy-topo-map-software-for-windows-and-mac-os-x/'
  name 'RouteBuddy'
  homepage 'https://routebuddy.com/'

  app 'RouteBuddy.app'
end


To ask the Secretary of State for International Development, pursuant to the Answer of 26 February 2018 to Question 128376, on Developing Countries: Coal Fired Power Stations, what support her Department provides to developing countries fully deploying abated coal-fired power projects.
DFID does not provide any bilateral assistance to developing countries for abated coal-fired projects. The UK encourages multilateral organisations to help developing countries make the investment decisions that will best deliver reliable, sustainable and affordable energy which is essential for economic growth and development. The Department of Business Energy and Industrial Strategy is supporting research and demonstration, including through the World Bank and Asian Development Bank, into Carbon Capture, Usage and Storage technology.


text:
Q: How to augment actionlink with route values at runtime with JavaScript in ASP.NET MVC 5? I have this ActionLink.
@Html.ActionLink("Link", "action", "controller", null, htmlAttributes: new {@class = "menuLink"})

I have to set routeValues to null because I don't know the value at compiletime. They are recieved from the selectedvalue of some dropdowns at runtime.
Hence, I am trying to augment the routevalues at runtime with JavaScript. I can't see what other choise I have.
I use the CSS class menuLink on the ActionLink to catch the event.
$(".menuLink").click(function () {
    var $self = $(this),
        routeValue1 = getFromDropdown1(),
        routeValue2 = getFromDropdown2(),
        href = $self.attr("href");

     // ???
});

How can I add the routevalues to make the href correct?
I want the URL to be something like this:
http://localhost/mySite/controller/action/2/2
My focus is on the /2/2 part..
I have tryed this
$self.attr("foo", routeValue1);
$self.attr("bar", routeValue2);

But then I get a URL like this:
http://localhost/mySite/controller/action?foo=2&bar=2

And it doesn't work with my routes.MapeRoute
routes.MapRoute(
    name: "Authenticated",
    url: "{controller}/{action}/{foo}/{bar}",
    defaults: new { controller = "Home", action = "WelcomePage", Foo = "0", Bar = "0" }
);

I don't know if Foo = "0", Bar = "0" is the problem.
Solution added. Thanks to @Zabavsky
if (!String.format) {
    String.format = function (format) {
        var args = Array.prototype.slice.call(arguments, 1);
        return format.replace(/{(\d+)}/g, function (match, number) {
            return typeof args[number] != 'undefined'
                ? args[number]
                : match
            ;
        });
    };
}

var href = $self.attr("href");
var hrefDecoded = decodeURIComponent(href);
var hrefFormatted = String.format(hrefDecoded, 2, 1); // 2 and 1 test only..
$self.attr('href', hrefFormatted);

A: I'm not sure this is the best way of doing this, but I'll provide you with my solution to this problem. The main idea is to generate the link with all required parameters and format the href with javascript, like string.Format in c#.

*

*Generate the link:

@Html.ActionLink("Link", "action", "controller",
    new { Foo = "{0}", Bar = "{1}"}, htmlAttributes: new { @class = "menuLink" })

The helper will generate the correct url, which according to your route configuration will look like this:
Link

*Write the format function.

You can check how to implement one here. If you are using jQuery validation plugin you can utilize the built in format function.

*Format href attribute in your javascript:

$(".menuLink").click(function () {
    var routeValue1 = getFromDropdown1(),
        routeValue2 = getFromDropdown2(),
        url = decodeURIComponent(this.href);

    // {0} and {1} will be replaced with routeValue1 and routeValue1
    this.href = url.format(routeValue1, routeValue2);
});

Do not concatenate route parameters to the href like this href +'/'+ routeValue1  +'/'+routeValue2, the url will result in 404 if you change your route configuration. You should always generate urls with Url helpers and avoid hadcoding them in the javascript code.

A: You can change the href attribute of anchor tag dynamically like below.
$(".menuLink").click(function () {
    var $self = $(this),
        routeValue1 = getFromDropdown1(),
        routeValue2 = getFromDropdown2(),
        href = $self.attr("href"),
        editedHref = href.split('?')[0];

    $self.attr('href', editedHref+'/'+ routeValue1  +'/'+routeValue2 );
});


We discuss a $100,000 Cheeto, a 'Tinder' style app with only one man available (the creator of the app), and more! 2 Middle Aged Dudes and a Microphone is the podcast that brings you the best in weird news, strange stories and goofy stuff. Always family friendly, always fun!


This set is an ideal set of pin punches, made just for removing pins and good for riveting watch and jewelry items as it comes in three different sizes. These sturdy pin punches have knurled handles for a secure hold. Tips are replaceable, they are available to purchase separately and are very inexpensive, as well as easy to replace-simply remove the set screw and change. Use with a small hammer and band block for removing band pins and sizing watch bands. Includes plastic storage box to keep punch set organized.


Brunello Cucinelli's vest has been crafted in Italy from soft wool with a refined striped pattern. It has a cozy detachable shearling collar and is filled with goose down that's been hand-selected for its lightness and breathability. The ribbed-knit cashmere hem ensures it's fitted at the waist to prevent drafts while a multitude of pockets keep your essentials close.


Bobby Owsinski's Big Picture Music Production Blog: Is The World Ready For A New Codec?
Anyone trying to export a song from their DAW knows that there are quite a number of audio data compression formats available today, even though only two of them are normally used in the vast majority of cases. Of course I'm talking about MP3 and AAC when it comes to downloads, although we're seeing an upswing in the use of FLAC files these days. Then when it comes to streaming, Ogg Vorbis is often used (especially by Spotify). This just goes to show that there's quite a bit of diversity in the online music files that we listen to, even if we don't realize it.
That said, a new codec (compressor-decompressor) with better features than what's normally found might be desirable, and that's where the Opus Interactive Audio Codec comes in.
Opus was designed for high-quality audio right from the start, supporting bit rates as high as 510kbs, sampling rates to 48kHz, with the number of channels as high as 255, among other technical features. It can handle a wide range of audio applications, including Voice over IP, videoconferencing, in-game chat, and even remote live music performances, and it can scale from low bit-rate narrowband speech to very high quality stereo music.
It's also totally open, royalty-free, and is standardized by the Internet Engineering Task Force (IETF), incorporating technology from Skype's SILK codec and Xiph.Org's CELT codec.
Getting support for a new standard can be difficult and time consuming, so any new codec, not just Opus, has an uphill battle to begin with. Then again, all is takes is adoption by one service and the rest may follow. Watch the next year to see how Opus does. We may all soon have it as part of the output preferences of our DAWs. Go here to see more info about Opus.
Very interesting article - Opus could end up being remarkable on all fronts - technically and particularly that it is so open.