Hi, I'm Thomas with RF Elements, and today's episode is about noise lore. Noise is the signal that RF radio receives but doesn't understand. Noise lore tells us how strong the noise is and determines the signal to noise ratio, which tells us how strong the useful signal is compared to the noise. There are two main sources of noise. First, is the noise created by the radio itself because of the physics of the parts it is built from. There are many types of noise devices produced, such as thermal noise, flicker noise, shot noise or burst noise. Some of all these types of noise makes up the noise floor created by the radio itself. In the lab conditions, the noise floor is the jittery line at the bottom of the spectrum the radio works with. The useful signal is recognized by clearly higher level above the noise floor. Second type of noise is man-made. The devices located near your radio produce signals seen as noise by your radio and are received through the antenna. The man-made interference is usually much stronger than the noise created by the radio itself and is the biggest problem of fixed wireless networks. Your radio sees the signal quality primarily through the SNR given that the signal is between the noise floor and the maximum powered radio can work with. Interference decreases the SNR your radio is working with. Lower SNR means lower MCS rates seen as decreased overall throughput at the user end. A frequent misunderstanding among wisps is that the solution to the interference is to use the antenna with higher gain. Although higher gain antenna will increase the received signal strength, it can be harmful to the SNR because of the side lobes which decide how much added noise your radio sees. The traditional sector patch array antennas have huge side lobes, so the benefit of added signal due to the higher gain can be drowned in the added noise caused by the side lobes in high noise areas. The best way to avoid increasing the noise floor is to avoid collecting their interference in the first place. Using an antenna with small or no side lobes such as horn will push the noise floor down. Despite the horn might have smaller gain, the Leica side lobes improves the SNR, so eventually the link can perform better than with a higher gain antenna. If you want to know more about link planning, stay tuned for some of our following episodes.


I would like to welcome members to the ninth meeting of the 2019 Standards, Procedures and Public Appointments Committee. Agenda item 1, please, is for consideration by the members, and that is to agree to take item 3 in private. That is where the committee will consider the evidence that we are about to hear in this meeting from the Minister for Parliamentary Business. Do members agree to take that in private? Thank you very much, that's great. Agenda item 2 then, it doesn't always move at this speed. Agenda item 2 is for the committee to take evidence from Graeme Dey MSP, Minister for Parliamentary Business and Veterans, and I'd like to welcome Graeme Dey MSP, the Minister, and also Jonathan Brown, Parliamentary Council Office, Alison Coole, head of constitutional and civil law division, and Stephen McGregor, head of Parliament and legislation unit in the Scottish Government. I would like to invite the minister to make a short opening statement, please. Thank you, convener. Yes, I will, if that is okay. I very much welcome this first opportunity since I became Minister for Parliamentary Business 11 months ago, although it seems longer, to attend a meeting of this committee. Those are challenging times as regards legislative pressure that has been placed both on the Parliament and the Government, particularly as a consequence of Brexit. As I am sure that you are aware that I have been heavily involved in taking steps to help manage that situation, I would very much reiterate my appreciation and admiration for the way in which members and committees have responded to the challenge that has been posed us. My job, essentially in all of this, is to work in partnership with the rest of the Parliamentary Bureau and the conveners and the clerks to help to manage the primary and secondary legislation in a way that has allowed us to deal, I would say, largely effectively with what has been before us. We have established a pattern of information sharing with the committees but also with the bureau and the business managers, so that we can better understand what work might be heading the way of Parliament. In the case of the committees, that involves monthly communication, and I would say that, although that approach was initially prompted by us having to deal with the no-deal Brexit legislation, I intend to continue to engage particularly with the conveners in that way. Having been a convener myself, I understand entirely the business planning issues that conveners and clerks face, so I am keen to maintain that collaborative approach. I also recognise, conveners, that, as a convener, when you have ministers in front of you, you will likely have a number of questions to shoehorn into the session. I think that I should leave matters there and place myself at the disposal of the committee. Thank you very much, minister. We have a number of questions on areas that you will probably be understanding of. There has been a bit of correspondence between the committee and yourself in your office. If we could kick off, please, with Gil Paterson, who has a couple of questions to lead us into the session that revolved around Brexit. Good morning, minister. It is with regard to the impact that has been placed on the Government, its impact on preparing for Brexit and, of course, the parliamentary resources that are required to do that. Could you expand on that and tell us how that has been? I think that the thing to stress, Mr Paterson, is that it is the pressure that has been placed on the Parliament as well as the Government, because the Parliament has had to respond to the challenges that have come our way. What I would say is that, with Brexit, it is likely to continue to have an impact on the ability of the Government to deal with our domestic programme. The extent of that impact is unclear. Up to now, we have had an issue that we had to pause half a dozen bills for a period and then reintroduce them in conjunction with the committees. We had a full year 3 legislative programme in place, but, as I said, we had to pause half a dozen bills at one point. We are gradually reintroducing those in conjunction and in agreement with the committees to the Parliament. We also had to pause 38 domestic SSIs that allowed us to clear the decks to cope with Brexit. Obviously, when you defer primary or secondary legislation, that has to come back or largely come back. I think that Parliament thought that there might be a three-month period when it was going to be extremely busy. The reality is that that is going to be extended as we reintroduce the instruments in the bills that we had to defer. We are in discussions with the relevant committees about what that reintroduction will look like. I am confident that we will get through everything that we need to. By way of illustration, this calendar year 2019, we would anticipate that one more bill will gain royal assent than was the case in 2018, which speaks highly of the work of the Parliament in responding to Brexit through us. I am not going to sit here and say that everything will be fine from now on because we simply do not know what lies ahead with Brexit. There has been considerable demand placed on the Government around having the resource to draft instruments, for example. We had to second lawyers from elsewhere to allow us to cope with that, but we have coped. We will look to cope going forward, but in terms of the future legislative programme, we will introduce a full PFG in September with the intention of delivering on that, but the caveat is that, if a no deal Brexit comes our way, that will have an impact. You seem to be comfortable in the resources that you had available, although you said that you had to bring in second other people. You are reasonably comfortable that you managed to do that successfully. What I would say to answer that is that we coped, but the organisation was working flat out and had no spare capacity because of that. We have had to second additional legal resource to allow us to get through that. The way that I would characterise it is that the Government, like the Parliament, rose to the challenge, but it has not been easy. You are in anticipation. I know that you do not know what is coming, but at least you know what you have been through. What is your general take on the likelihood that you have been overwhelmed? You just need to wait and see. We will have to wait and see, but do not underestimate the extent to which those conversations are taking place with the committees and the conveners, to manage workload. Going into year 4, we are mindful not only of the programme for Government, but we want to bring forward the instruments that will normally come forward anyway, the reintroduction of those 38 SSIs, and the fact that the committees will want to do work themselves. That has added to the challenge that you face. Bring to me some more detail about what it is that we are expecting. It is difficult to say what to expect. What we are trying to do is what we have had to do over the past several months, which is to plan as far ahead as we possibly can, so extending out our planning horizon on the volumes of legislation that might come and the types of legislation that might come. We can work out the resource impact of the Scottish Government, but we also have conversations with individual committees about what it might look like for them, so that is what we are trying to do. As we find and we get a better information about what is coming through and but exit, we will include that. Therefore, there is another element to this, and that is the Parliament itself and the committees, so if you have all that additional load that we never expected to come, and we weren't resourceful for that, how has that impacted on the Government's programme and how this Parliament actually proceeds with its business? It has impacted by way of instance with having LL's year to pause six bills, which is probably the best illustration that it can give you, and the instruments. That was a simple judgment that we had to make to allow us to cope, so whilst we have coped, it has come at a price, and we are now planning to try and ensure that we can reintroduce. I should say that not all of the instruments may necessarily have to be introduced. We are looking at that as well. It is about pragmatism and a collaborative approach. I suppose that if you look back on it, yes, it maybe is a surprise that we cope with the load that came out of it, but people really did step up to the mark, be it the Parliamentarians or the officials of the Government, and we have got there thus far. However, if there is another spike in Brexit-related challenges, then there is no doubt that that will affect all of us. Can I take you down a slightly different line, minister? Why the majority of regulation to prepare for devolved statute books for Brexit is being made at the UK level? What is the majority being done there? Again, what does that actually mean for this Parliament? Again, I used the word pragmatic earlier on. We have shown a pragmatism. There was no point, given the pressures that we were under, in duplicating work. If we could agree with the UK Government on some of these instruments, it was common sense to accept them as the basis for proceeding. I absolutely acknowledge that there has been some concern expressed by committees on occasion about the amount of time that they have had to deal with some of these instruments. I am sympathetic to that, but I would say that in fairness, in a number of instances where we have been in late receipt of instruments, it has been error and it has not been in any way deliberate, because you can imagine the pressure on the Government down south when coping with us. That is the reason why we took the decision. If we did not accept that an instrument was in our interest, clearly we would not—that was the judgment call we made—and we had protocols between the Government and the Parliament as to how we would proceed. However, I am obviously open if any committees have particular concerns about the process to hear those concerns and to take them on board. The one element of this Parliament is that its major function is to scrutinise the work of the Government and the fact that the instruments have never appeared in the Scottish Parliament. What is the Scottish Government's view of that in regards to the Parliament not being able to scrutinise something that is happening elsewhere, or are you satisfied that the scrutiny that was taking place elsewhere is up to what you would expect from the process, Stephen? I think that the technical scrutiny of the statute of instruments was undertaken by the UK Parliament, but we put a protocol in place. Before those instruments would go to the UK Parliament, it would be passed by the UK Parliament. The Scottish Government set out to the Scottish Parliament why it thought it was content with the impact and devolve interests to give the Scottish Parliament the opportunity to scrutinise the policy aspects of what the UK Government was doing and the impact on Scotland. We feel that the protocol covered both the technical scrutiny of instruments plus the impact on devolved areas having that protocol in place. I know that you have had the experience of that. Are you satisfied that that went the way that we expected it in terms of the scrutiny element of it? I know that you have concerns with regard to the volume and the impact on the scrutiny side of it. That is not an ideal world that we are living in. Ideally, of course, we would have a full scrutiny process, but my judgment call would be that, by and large, given the circumstances that we were in, we did what we could. We will obviously learn lessons as we go along. One of the things that has developed through the whole Brexit process is that there were, at the outset, quite a lot of issues between departments from Scotland, between the Scottish Government and the UK, maybe not the flow of information that we would have wanted to see. That has improved generally through that process, which I think will be helpful going forward. I reiterate that this is not ideal. We have had to be a responsible Government. We had to look at the best way to deal with it, to ensure that we had everything in place for a no-deal Brexit. That is the best way to do it. Just following up from that, do you feel that, inevitably, because of the pragmatism that you talk about, primarily driven by the situation that we are in, the quality of legislation and the quality of the collaboration and negotiation with Westminster is a lot lower? Brexit-related SI's that we are dealing with. I will perhaps give you two examples. One, reach regulations that you will be aware of. The other one is the regulations on a replacement for the ETS, where there are huge holes, huge uncertainties, but committees have been in a position where we have had to say, well, it is better than nothing. That leaves me feeling very uncomfortable as a member of this Parliament, but I wonder how you feel in terms of the quality of legislation that is going through and is being passed? I think that, generally, the standard has been okay. I would ask you to take on trust that this Government would never go along with something that was not in Scotland's best interests, but I take the example of reach. I know that Mr Ruskell was particularly exercised by those, and I understand that. However, I think that there was a full explanation provided by the UK Government about the late receipt of that instrument, and it was quite clear that there was absolutely nothing sinister about it. I keep saying that this is not an ideal situation, and we could pick out examples like reach, like ETS, where we would have wanted more time and to interrogate in greater detail, but we are where we are. Is that okay? Thank you very much for that. Finally, on the subject, Jamie Halcro Johnston. Thank you very much, convener. Good morning, minister. I recognise that parliamentarians and the committee have stepped up with the additional workload. Are you suggesting that there is legislation that could be going through the Parliament or could be being put forward that might be being threatened in terms of time-wise by the additional workload required to deal with Brexit and the work that is coming through from that? As I said earlier, there were six bills that we paused and we are in the process of reintroducing those. We undoubtedly face potential challenges as we move forward. We will still bring forward a substantial programme for government in September. We are keeping what you would expect in terms of volume, and we will look to get that through. What I should also say is that this is in no way a criticism of committees, but the additional challenges that we face internally have been where committees, probably because of the pressure that they felt under in other regards, have regularly asked for additional time for stage 2, for example. Obviously, in that spirit of co-operation, we have sought to go along with that wherever it is possible, but that has created a little issue currently, in the closing weeks of this parliamentary year. I know that it is normal to have a lot of stage 3, but it feels like we have a lot. There has been a bit of a concertina effect because of that. That does place further demands on members' times, but I keep saying that we are where we are. I am not going to point fingers here, but we have to cope with what is in front of us, and we are collectively doing that so far. If that is the case, I take the point that you are saying. Obviously, there may be a question of prioritising the Parliament's time and the time that we have to do. The referendum Scotland bill yesterday was introduced, and that is a bill that may or may not be actually used or have impact. Is that a good use of Parliament's time, given that we all recognise that there is increasing pressure? That is probably a political element to that question. The legislation has been put forward. If you are suggesting that there already is pressure and that there is already prioritisation taking place in terms of legislation, I think that it is a valid question. What I would say is that the Government considers to be an important piece of legislation. It is factored into our planning, and our anticipation is that we will get through other than Brexit impacting, which is out with our control. We will get through the programme that we have in front of us, which will include that piece of legislation. We will move on slightly. In session 4, the committee conducted an inquiry into legislation in the Scottish Parliament. We have a question or two about the legislative process and the particular quality of supporting documents. Tom Mason, if you would like to ask him. Minister, welcome. We have made some progress in terms of documentation, in terms of the financial memorandum that has been extracted from the explanatory notes. In this session, how have you managed to progress the improvement in documentation, and particularly connected with the impact on existing acts of new legislation coming through? That has been quite a priority for myself since I became minister 11 months ago. In a previous life, I was a convener of a committee, so I understand entirely the concerns that committees have expressed, legitimate concerns at times around some of the accompanying documentation and, just in a general sense, the accuracy of what is in front of them. I note from the session 4 report that the current system is not broken in any way. It invariably produces high-quality legislation, but we should continually look to innovate and improve. That is the approach that I have taken internally in Government. There are a number of measures that we have taken. For example, we have refreshed the key internal guidance documents, such as the bill handbook, which is an essential read, but no page turner has to be said. We have more gateway reviews at critical points in the developments of bills. We have more emphasis on the need to ensure that accompanying documents are of a consistently high standard. We have additional seminars with bill teams to go through with them, what is expected of the next ones coming up in July. I personally have more direct engagements with lead ministers on the management of their bills. There has just been a general emphasis on responding to criticisms that were made prior to my appointment and responding to by my predecessor, to be fair in the first instance, to take on board some of the criticisms that had been made. If we are still not getting it right, what I need is specific examples. I do not get the sense now that there is a wide-scale problem at all, but if there are further specific examples that anyone has, please bring them to my attention and we will look to take any criticisms on board. I want to follow through that. Is that okay? Thank you very much to anyone else at any point at the moment. Okay, thank you very much for that. Thank you minister. Move on please to timescales for the consideration of legislation. Mark Ruskell, if you would like to possibly ask anything. I think that you have started to touch on this already minister, but it is primarily a question about how you have been engaging with committees in relation to timetables for stages of the bills that are before them and how you have been incorporating or responding to committees' preferences for timetabling. I do not want to focus too much on your old committee, but there was a debate in the Environment and Climate Change Committee about the timescale that we needed to deal with stage 2 around the climate bill, particularly in light of amendments and discussions with Government that may be required on some quite technical aspects and a feeling that we need to get that stage 2 right, so that led to a request for an extension. That is one example, there may be others, so can you perhaps reflect on the pressures that you face but also how you have been accommodating some of the needs of committees in that regard? There is an interesting stat that looks at the amount of sitting days that are being utilised by the Parliament over the sessions to take bills from the introduction of stage 3 debate, and in the current session it is 124 days compared to 111 in session 4. That demonstrates that committees are getting additional time in so far as it is possible to scrutinise as they feel is necessary. All those judgment calls when requests come in are a matter of compromise because we have to stick as far as we can to the timetable to get bills through or else that concertina effect will become even more pronounced. There are a number of examples that I could give in recent months where we have had requests from committees for a little bit more time to deal with issues. For example, the Justice Committee looked for an extension at the stage 1 on the civil litigation bill in order to take some additional evidence sessions that happened. The Equalities Committee wanted a way to stage 2 on the age of criminal responsibilities to accommodate two additional evidence sessions ahead of stage 2, which we worked out. The Rural Committee had an extension on the stage 1 deadline for the transport bill to prepare their stage 1 report, which was entirely justified by the workload that committees carry, which is enormous. The Environment Committee is right to take the way to stage 2 quite legitimately to take account of the further evidence that was coming from the UKCCC. Where we can accommodate that, we work collaboratively. It is often a compromise that we reach, but I have to say that we have pretty much managed that. You mentioned figures that there are 124 days in the last session and 111 days in this session, or is it the other way around? I am not sure. It is 124 in this session and 111 in session 4. If you go back to session 3, it was 106. Is that an objective target that you are working towards, or are you looking at it from the perspective of the needs of Parliament and the complexity or simplicity of certain legislation that is put forward? For example, the planning bill has ended up being a lot more complicated than perhaps the Government originally envisaged, but hopefully due to that extended timescale and particularly the time that Government has had to negotiate with parties and members on the committee and outside the committee, then there will be a better quality piece of legislation. If that had been constrained, what do you think might have happened? I do not want to give the impression that we have a target far from it. That is simply a stat that illustrates the time on average that has been given to committees. You are absolutely right. No two bills are the same. You and I could go back to the World Animals and Circuses Bill that we were involved in. You would hardly compare that with the planning bill, although it got at times. The planning bill is a good example of where we found the time to work through the issues around it. Stage 3 is going to be pretty intense and extended, but there is no way that, as a Government, we would seek to constrain the process on any bill. This is a genuine collaborative approach with committees and with conveners. We sit down in advance of bills being introduced and have a look at the breadth of the bill and what we think is likely to be required by way of evidence sessions. We take on board those points from committees. The pressure on the timing, as a result of the bills not being thought through in the negotiation before they start off in the first place. If there were less amendments, in other words, there would be more consensus in the bill. You would not need the time. I do not think that I accept that at all. No bill is perfect when it is introduced, and there will be times when a bill is drafted and introduced. Even at that stage, the Government recognises there may be points to be amended. However, the whole process of scrutiny is to take on board the views of stakeholders who have not seen the bill may take a view that they have not flagged up in the initial consultation carried out by the Government. Of course, we take on board the points of the committee. The stage 1 report will flag up some issues that legitimately have to be addressed. The parliamentary process is there to ensure that, when we finish a bill, it is in better shape than when it started off. There is an inevitability about that. If it started off better, it would go through easier. I invite you to define what you mean by better, Mr Mason. Obviously, that is subjective. If more work is done at the front end, it will speed up the process as it moves to the process. I can assure you that there is a very great deal of work done prior to the introduction of bills. There is an extensive approach that carries on for many months leading up to a bill going to the presiding officer and then being introduced to the Parliament. From my point of view, when I look into timetable bills, I wish that it was quicker, but there is a very extensive process going through involving consultation with stakeholders and drafting consideration of what we are looking to achieve before it comes to the Parliament. I would not accept that argument at all. Can we continue on the timescales issue, taking it up forward a wee bit, on the pause mechanism that has been suggested for stage 3? I wonder if Maureen Watt had something. Thank you, convener. Good morning, minister panel. Stage 3, and the planning bill might be a good example of this. There was a recommendation in a previous SPPA committee's report, which I think was endorsed by the Commission on Parliamentary Reform, that it might be a good idea to have a pause between the passing of the stage 3 amendments and the final debate before passing a bill. Is this a mechanism that the Government might consider in relation to some bills? At this time in the parliamentary year, as a parliamentary business manager, I would perhaps be a bit resistant to that. There is no doubt that we face real challenges in terms of dealing with the workload when we get to this stage in the year. In terms of the specific point about the pause, we would consider that it is appropriate to have a flexible approach, not a prescriptive approach to that, and consider that merits are split in stage 3 proceedings over multiple days on a case-by-case basis. We have done that on occasion, and it is a conversation that takes place between myself and the business managers at the bureau to address the specific demands of a bill. We have had situations where we have the amendments and then we have the debate perhaps the following week, as it has been necessary, but we also appreciate that quite often the members who have been immersed in a bill all the way through would actually like to deal with it on one day if that is viable in terms of the number of amendments and having the debate. We routinely consider the best approach to bills on an individual basis. If you take the example of planning, it will come as no surprise to anyone that there is an unavoidable and compelling case for that to be held over multiple days. Indeed, we looked very specifically in that case around would it be best to have it staggered over a weekend or could we do it all in one week? We took some soundings from those that intend to be heavily involved or we expect to be heavily involved on what the preference was, both in terms of the committee but also other members who were involved. I would say that we think that flexibility is the best approach, but given the commitment that we do look at that on a case-by-case basis and taking board views where it is possible to do so. Thank you very much to both of you. Can we move on just a wee bit to accompanying notes and packages of amendments? I am session four again of this committee recommended that amendments that are linked in some way or form a package to achieve a policy intention should have accompanying notes to make it easier for members and for the public to identify to make the whole process more transparent and accessible. I wonder whether you consider that the provision of accompanying notes could make the amending stages more transparent and accessible and how that could be best achieved? I will bring in an expert on amendments in amendment those. We all accept that amendments and textual amendments to the bills make it for quite a confusing picture. We have done a lot of thinking about that. We have been working with parliamentary authorities on just what the best way to present packages are, but what we have done in the interim is that on almost every Government amendment now, you will find purpose and effect notes that are sent to the committee in advance. That is our best way of showing what amendments naturally are falling together and trying to explain what those cryptic changes can sometimes be and making that available to members in advance so that they have a chance to know what they are actually voting on. That has been one of the main things that we are routinely doing now to try to make that a little more transparent. Is that run-along through the process of SSIs? Is that a similar process that has taken place? Not to that extent. What we have tried to do with SSIs is to take on board the legitimate criticism from some of the committees about the explanatory notes not being as clear and easy to understand as they might be. We have tried to strike a balance by having a summary of what the SSI is seeking to achieve to assist. I am not saying that we have that perfect yet, but we are trying to do that. We genuinely try to take on board the concerns of committees and work with them in that regard. The reason that we are asking this is that you had indicated during the autumn and written to the justice committee to address concerns expressed by it about the quality of policy notes accompanying SSIs. You have emphasised your commitment to ensuring the documents of this type should be accessible. We are just asking the question about whether that has moved on and if it has been improved. I think that the lack of feedback that I have suggested has been improved. We are not in any way complacent, but I should say that it is not just the justice committee. I used to sit in the convener's group and I have heard from a number of former colleagues of the concerns that they had. We have taken that on board and we continue to work through that. I think that that right balance between having the detail on the note and an explanation. I think that we have all read those sometimes and then re-read them again and still perhaps in the past not being entirely clear on what they are seeking to achieve. That has been a shortcoming that we have set about. In fact, I have to say that the credit for that belongs to my predecessor, Joe Fitzpatrick, who began that process. Again, if you have examples where that has not been the case, specific examples, please give them to me and we will use those to improve the processes that we go through internally. It is good of you to put that in the public record, thank you very much minister. I'm a little… Could we move on please to legislative standards body issues and I believe Elaine Smith? Thanks for joining us this morning minister and also to your officers accompanying you. The CPR had recommended a legislative standard body be established and that was to provide a Scotland-wide approach and understanding of what constitutes good legislation. They wanted the Parliament to establish such a body. The committee took a different view and thought that because there was already a range of initiatives under way to improve the quality of legislation and an opportunity for stakeholders to engage, the committee did not recommend the establishment of such a body. However, the committee did feel that development should be monitored in promoting legislative standards, so basically in that spirit, and while you are with us this morning, could it ask whether there have been any new initiatives on the part of the Scottish Government or the Parliamentary Council's office in promoting legislative standards? I'll bring Jonathan in in a second. We shared the committee's view that we didn't feel that there was a need to establish a legislative standard body. There are many ways for the public, stakeholders and Parliament to engage with the Government as it develops its legislative programme. Once legislation is introduced, Parliament also has a comprehensive framework for scrutinising it. I think that it's important to maintain a proportionate approach, but I'm happy to consider ways in which existing practices can be used to improve engagement on certain proposals in the Government's programme and more generally. However, I certainly don't think that there's any lack of scrutiny that then leads to substandard legislation. The Parliament has gotten pretty good at dealing with legislation and getting it right, but I'll bring Jonathan in with detail. In terms of some of the initiatives, you may well have seen that we updated our drafting guidance that we publish, called Drafting Matters. We extended that, expanded on it and tried to make that publicly available so that people can understand what we're working with and hold us to account to that. We've also worked with drafting offices in the UK Government, the Welsh Government and the Northern Ireland Government, to put together a policy document called Common Legislative Solutions, which looks at things that come up on a recurrent basis in legislation and how it might help policy makers to approach that and see where similar things arise and what the solutions might be. We try to engage regularly with users of legislation and stakeholders. Obviously, we have good ties with the Law Society of Scotland and faculty advocates. We maintain a dialogue with them about what they find useful and what they find interesting, but we also try to talk to other users of legislation to see what we can do to get feedback on that and try to improve things. We have a variety of links with other drafting offices around the world to talk about what they're doing about this and how they're assessing quality and how we can learn from one another. That's a strong source of information for us. We work closely with the legislation team here at Parliament about what we're doing, how we can improve and how we can keep that dialogue going and try to make sure that we have the highest possible standards, both in terms of legislation quality and processes around that. That is helpful. It's important to put that on the record when we have committed to monitoring. It helps to answer the previous question from my colleague Tom about the standards of legislation. I don't think that we'll ever get away from the amendment stage. I can't see that ever happening, but I'm sure that that kind of approach adds to helping to reduce that. We've also got the consideration of post-legislative scrutiny. That's something that had exercised the Parliament over the last session. I suppose that that has to be taken into account as well. I don't know how you feel how that's going and how that fits in with the need or not for a legislative standards body? You're absolutely right. Post-legislative scrutiny is another key component of what we do. If there were to be a pattern emerged that suggested that legislation needed to be substantially amended, that's something that we would have to reflect upon. We've obviously, to be fair, a number of committees at times wanted to do a bit of post-legislative scrutiny on individual pieces of legislation that sit in their area of interest. Time hasn't allowed that because of the pressures on the Parliament. I think that that's a process that we should encourage when the opportunity arises. We should never be complacent, but I certainly as an MSP—I came here in 2011 and it felt for the first year in a bit—we did quite a lot of revisiting of legislation that had been passed previously. We're having to improve it, but certainly laterally, when I was on the back bench, we didn't do anything like that. I think that as the Parliament has grown up, it's developed, its process is better, and I think that by and large we do produce a high standard of legislation. You're absolutely right. There must be a place for the amendment process because it's a key component of what we do. I think that post-legislative scrutiny is important and it's a pity that there isn't more time because, obviously, no one can foresee unintended consequences of legislation, and that's the kind of thing that can be explored through that process. I want to say that the recommendation from the CPR about a legislative standard body could still be on the table at some point in the future, but that's why I think that it's important to monitor as we're going along and to see whether or not in the end that might have to be an answer. Given that the Interest Committee on the Member in particular has expressed today, we'll undertake to update the committee on any further measures that we take along improving our internal processes so that you're kept up the speed on that. Thank you very much. You've stirred some interest, minister. However, we have limited time, so I'm sorry to Tom about that. It might help that the minister's given that sort of commitment, but Mark is already in for a question. We have to move on fairly soon to the issue but the Scottish law officer. It was about answers to written questions, so we'd written, as a committee to you, suggesting that the quarterly returns should specify how many questions have not been answered substantively at particular milestones. You'd then written back to say that no accurate timescale can be given to members regarding the delay of substantive answers. Can you explain that a bit because it seems like a puzzling response? Does the Government track how long it takes for members to get answers? If I remember correctly, part of the problem around that is the volume of work that it would generate for members of my team. We collate certain statistics. For example, I can say to you that in the first quarter of 2019, there were a total of 1,441 written questions lodged, and the proportion of questions answered on time was 93.5 per cent, which is above the 80 per cent target. I don't offer that by way of dismissing your question in any way, just as an illustration. However, if I remember correctly, and I'll write back to the committee with further detail on that, it's simply the sheer volume of work that we create for us to pull that together. In general, we seek to get those answers as quickly as we possibly can, but there will always be times when some of them are so complex or require us gathering information from other agencies that we simply won't hit that target. I think that you talked about about 7 per cent of those questions that are substantively delayed, so it wouldn't require analysis on the other 93. It would require some understanding of what the reasons are if there are particular themes across different departments for delay for those 7 per cent. Is that not something worth? Let me take that away. I'll get your argument there a bit about the theme that I'll write back to the committee on it. Are you generally content with the quality of written answers that are coming back? I'll raise an example of some questions that I've asked where I've ended up with an eventual answer that has really just pointed to something that has appeared in the public domain in the interim period between me asking the question and then getting a parliamentary answer. That's clearly not acceptable. I don't know if that's a situation that is occurring in a minority of those 7 per cent that aren't being substantially answered within the timescale or not, but it seems to me to be quite bad practice just to put a signpost onto a website when I expected an answer as a parliamentarian at the appropriate time. If you have very specific examples where you feel you've not had an answer that was appropriate, I'm happy to look at those. There will be occasions where we get PQs that are asking for information that is already in the public domain, as we've been published in SPICE for example, and what I've sought to do when that's happened and it's come across my radar is to encourage officials to provide that information anyway to be helpful, but sometimes there will be an answer that says it's already in the public domain here that's where it is, but I think the point you're making is that that happened with information that was published between you asking the question and getting an answer. I'm happy to engage with you and anybody else on issues such as that and look to see what we can do about it for the future. I'll batch them up and send them off to you. Oh good, something to look forward to. Thank you both very much. Now just to ask a quick question, we've got quite a considerable amount to get through today. However, this has been an extremely useful session with the minister and minister. Can I ask how much approximately time you have, just so we can judge the questioning? I've got time. You've got time. Okay, well thank you very much for that, it's very kind. Okay, so thanks to everyone on that session. We'll move on to the Scottish Law Officers issue. The committee has been considering correspondence from Mike Rumbles MSP and Adam Tomkins MSP about law officers answering questions in the chamber. The issue arose after Mike Rumbles asked the following question. I'll just read it out in the chamber on 23 January of this year. He asked during portfolio question time to ask the Scottish Government what the law advocates position is on its competency to authorise another referendum in Scottish independence without another section 30 order. That question was actually answered by yourself and Mr Rumbles says that he had hoped that it would have actually been answered by the law advocate himself as he was in the chamber at the time. So you know the background to this obviously. Can I ask if you might give us a small run-up because then we could follow on with a couple of questions from that? Maybe not so small to try to explain this situation. So I feel we appreciate the committee, we want a further explanation of the role of the law officers in Parliament. It's not straightforward from a stand and start but the key thing to bear in mind is the unique constitutional position and the responsibilities of Scottish law officers as reflected in the Scotland act because under that framework the law officers wear two hats, one as a minister, a member of the government, another in terms of their role in the criminal prosecution system and the investigation of deaths in Scotland. Their formal status as a member of the Scottish Government is no different to that of any other member of the government. The responsibilities in relation to the prosecution of crime and investigation of deaths are additional to the roles as ministers and the exercise of those functions entirely independently of government or any other person. In practical terms the work of the law officers within the government will naturally concern matters of a legal nature, however that will inevitably also concern the policies and actions of the Scottish Government. It's a well-established fact that government does not disclose its legal advice or indeed whether or not law officers have advised on any particular matter, to do so would be contrary to the ministerial code, the civil service code for example. Given that background as stated in that letter over the 20th of March the government does not consider the current stand in order to be unfit for purpose. That's because those rules quite correctly take account of the unique role of the law officers and do not place any restriction on law officers' participation in proceedings as Scottish ministers. It also reflects the constitutional position of the Scottish Government, which is of course collectively accountable to the Scottish Parliament. It would usually be appropriate for a question relating to a particular minister's sphere of policy responsibility to be answered by that minister, reflecting as necessary the Government's position in relation to the relevant legal considerations. Though, as the committee will be aware, there are occasions when another minister may answer in place of the relevant portfolio minister. We have circumstances when that arises. The issue that has come to the committee on the basis of a member arguing that a member should be able to require their question to be answered by a specific member of the Government from our point of view is wrong. In terms of responses in the chamber, generally the Government would argue that it is unnecessary and in practice an erosion of the Government's ability to be held accountable, since it would potentially delay the provision of an answer where that particular minister whose response was requested wasn't available. It would also be incompatible with the constitutional position, which is that ministers are collectively responsible to the Parliament. Specifically in relation to the law officers, where an opinion relates to a matter that is for government collectively, the response that a law officer would give would be no different from the answer that any other minister would give. At the same time, questions asking what the law officers' views are on specific legal questions would undermine that long-standing convention about legal advice. I recognised that we had a situation that has triggered this, which was in December 2018, but we would very strongly argue that those were very exceptional circumstances. What the Lord Advocate provided was not his detail of the legal advice that he had given, but he answered questions around an issue regarding the position that the Presiding Officer had taken in relation to the competency of the bill and the question. Does anyone else have anything that I may wish to raise? I just ask on the basis of what you have said, and it was quite comprehensive, that your response to Mr Rumble suggested replacing of the second sentence in rule 13.7.1. He would like to have that wordied as an oral question concerning the responsibilities of the Lord Advocate or the Solicitor General for Scotland should normally be answered by them, but it may exceptionally be answered by another member of the Scottish Government if they are unable to attend the chamber. I think that what he is suggesting there is that that is the normal procedure for any minister as part of the Government. Is that it? We would contend that rule 13.7 would want to be made more prescriptive. The consequent loss of flexibility would have been encountered to the proper operation of the constitution and potentially the interests of the Parliament. I think that part of the issue was that Lord Advocate was in the chamber, and presumably that is why Mr Rumble feels that it might be in order to change the standing order to what he is requesting. I do not want to read it all out, but to what he is requesting it be changed to. It had the Lord Advocate not been in the chamber when he was at the committee. He expressed the opinion that he would not have thought more about it, because if someone is not able to be there, clearly any member of the Government can answer. His question was about competency. I want to pressurise a bit further on that. Was it the case then that, when the Lord Advocate answered questions on the continuity bill, it was not about competency? Is it the matter of competency of a bill more for the Presiding Officer rather than the Lord Advocate? It all seems slightly complicated around that. Is that where the answer lies in deciding what is competent and what is not for the Parliament to take forward? Okay. The issue in 2018 was very specific. The Presiding Officer had issued a certificate to the effect that the bill was not within the competence of the Parliament. The Lord Advocate had expressed a different view, so he personally made a statement to the Parliament setting out the basis upon which ministers had nevertheless concluded that the bill was within competence. A very exceptional set of circumstances. That is our position. It is different to the set of circumstances that we had with Mr Rumbles' question. I read his comments at the committee with due respect. I think that it is hard to believe that he was not seeking to tease out what the advice to the Government had been with the greatest respect. There are two different sets of circumstances. The other question is the collective responsibility element. It is for any minister of the Government to answer a question. That set of questions that day sat in the portfolio that I am part of. I answered that question. Add to that, just to say that it is a matter of public record that ministers are advised on the competence of a bill by the Lord Advocate. That is another reason why it was appropriate in the specific circumstances of the continuity bill for the Lord Advocate to explain the Government's view. That followed on, Mr Russell's statement about the bill. However, it is deemed that that was not the case with the bill that has now just come forward to the Parliament. The Bill under question has just been published this week, so it does not apply to that. Is that what you are saying? There is a matter of public record that the Lord Advocate will have advised ministers that that bill is within the competence of the Parliament. In the case of that bill, the Presiding Officer has not issued a negative certificate. I expect that, if the Presiding Officer ever issued a negative certificate again, the Lord Advocate would consider it appropriate to come to the chamber, but we are not in that situation on this bill. We just clarify, convener, that even if the Presiding Officer does issue a negative certificate, the Parliament could still agree to pursue a piece of legislation. It is important that we put that on the record. Absolutely. Thank you very much, Elaine, for bringing that information out. Thanks, Alison. Gil, can you just round us off on this, please? If you don't mind, yes, there are a couple of questions in the generality of what happens elsewhere. I wonder if any other jurisdiction where it is the Parliament or the opposition that gets to say who is going to answer the question, rather than the Government. Well, that's an easy question. I want the officials to see if they have any. I suspect that the answer is not. No, sorry, you stumped us with that one, Mr Paterson. It would be, for this exercise, very useful to know that. I would be grateful if that could be looked at and you could maybe let us know, or maybe we need to do that, to research ourselves. We'll take a look at that and see if we can find anything for you. In a similar line, is there any other jurisdiction that insists that advice sought by the Government from the legal officers is released on demand to the opposition or to the Parliament? Again, I suspect not. Not aware of any other jurisdiction in that it's part of the rule of law, actually, that's fundamental to civilised democratic countries that legal advice is confidential and that the ministerial code reflects that position. In the light of that answer, would it be possible if a rule change took place to standing orders and that the Government could perform efficiently and effectively if that rule came into place and that a law officer could divulge advice that was given to the Government? I think that that would be very difficult. In my last question in this line, since 1999, can you tell us how many times that law officer who has given advice to the executive or the Scottish Government that that information has been divulged to the Parliament or to the opposition? Is it happened ever? I think that I'm not aware of any circumstances in which... None of us have been around since 1999. I think that it's highly unlikely. Well, I have, so I can't remember it. Okay, thanks very much. Thank you very much. Not deliberately. Thank you very much for that. I know that when the minister says that none of us have been around since 1999, he doesn't quite mean it in all areas. Anyway, that was extremely helpful and extremely interesting. I'd like to thank the Minister Graham Day for the Minister for Parliament MSP and also for the very helpful contributions by the Government advisers. I would welcome you to come back again when we decide to invite you. Okay, thank you very much. I'll beat you on a couple of things and we'll do that. Well, that's very kind of you. Thank you very much for that. And that ends this part of the public part of the meeting. Please, we'll be moving into private sessions. So, okay, thank you very much.


Here's the first ever picture taken of the Ryan Nebula. It was taken by Dr. Henry Draper in 1880 with his 11-inch refractor right here in Cambridge, Massachusetts. 140 years later, here's my Orion Nebula, about the same amount of exposure time taken with off-the-shelf gear.


Okay, so we are going to together actually architect a dynamic internal developer platform. And so, first of all, I want to quickly speak about the making off of this reference architectures what problems we aim to solve the design principles that we applied. And we're going to go to the actual design.  And I've asked in the platform con for our last conference where we're expecting up to 20,000 people this year. I've really asked all the speakers. Hey, please focus on reference architecture so I hope there are a lot more reference architectures coming. We had 500, 500 proposals for talks. I think we accepted 100 so super excited about that make sure you have a look at this as well. So, and again, I talked about that McKinsey is working on this, starting with Amazon and then we have a lot of others coming. But there are a lot of different enterprises and actual platforms that we looked at for that and we've used common patterns. And I think it's worth noticing that we have an like a like a size buyers. All right, so those architectures are designed for teams with up to with not up to, you know, thousands of users but from, you know, minimum 50 users rather 100 users onwards.  And that this is actually, I think something pretty cool. Okay, and let's go ahead. What are the problems that we wanted to solve the usual things that why we're doing platform engineering. We have long lead times. It just takes too long time to market. We're in a recession. It needs to go faster. Otherwise, executives are sad and then we have too much ticket ops and we have high cost of maintenance and we have overwhelmed developers. And we have waiting times and we've missing self service. And that's because our setup is unstructured. It's because we have too many versions of Postgres and we need to maintain them and we have too many files here and too many terrible from files and the communication doesn't work. And now we want to get into a situation low lead time. We want to have a high degree of standardization. I cannot say that enough. That's that's the key thing here. We need to design systems we're getting to get into the design principles that drive standardization by design. We want to have to a certain degree. And many people have crucified me for this but we want to have a certain degree of separation of concern. Yes, ownership of the services. Yes, to a certain degree you build it you run it but separation of concern is nothing to be afraid of abstractions are nothing to be afraid of as long as you don't take context and then we want to have self service. And that is another principle here. Okay. Yeah, exactly. And so the, the, the, the sequencing if you want, and took me a while to understand this, you want to be able to dynamically generate configurations we want to have however you do this but we want to have and I'm going to explain what that means a design that is able to dynamically generate application infrastructure configurations with every deployment, because the drives standardization by design by doing this we enable all of these things self service eliminate ticket ops golden path and I'm going to be very concrete. It's another little bit of buzzwords but I'm going to be very concrete. And because of this we're slashing the time so this is actually sort of the logical thing here. And I want to make sure that we give the right people credits, because I didn't coat this. This has been done by Stefan Schneider, Mike Gatto and Marco Maruri and I think we'll hear a lot more from them. And, and I wanted to insert photos but I didn't find good photos. So we'll probably do that. Hopefully, when we send this out. What is a reference architecture first of all those are standard patterns on how to combine frequently use tools and design choices. We'll have them as visual flow diagrams and you're going to see that now we have that package just code that's an open sourcing we have white papers on this we can share that. And then we are going to have we don't have that yet tutorials on how to actually interact with them and we're going to do a lot of this. Cool. What are the design principles that we've applied. Number one golden paths over cages. What does that mean. It means very concretely. Follow this platform use this if you use this you get certain guarantees if you want to go off the golden path, please do so opaque abstractions we don't force anybody. You can do whatever you want you can go down to the lowest level but then my friend you're on your own. Second, we want to have standardization by design. What does that concretely mean by using the system to deploy and deliver your application. Keeping the degree of standardization as is, or we are improving it by deploying more by adding more services, we are not making it more complex and that's a very, very, very difficult thing to achieve. But that's what we've got to apply to apply here. It's possible through dynamic over static configurations that means rather than having. I don't know terraform home combinations that you need to maintain and they're really clean at day zero because you fork a something from a service catalog. But then they start to railing through the lifetime of the application through the environments rather than that we treat every day like they zero. If there's anything I want you to take away. Every day like day zero regenerate app and infrastructure configurations with every single deployment. And then we want to have code for code first. Very important. Modern enterprise. We have we want to have we want to make sure that we have disaster recovery. We want to make sure everything is as code and we never break the workload of the developer where is the developer in code. And that doesn't mean you can't put a user interface on top, we're going to have that as well and you can do all sorts of fancy things and CL eyes and yada yada yada. And I even advocate for leaving interface choice, but the code needs to be the single source of truth. Okay, cool. So that's it, right. This is the reference architecture. And, and this is a lot of lots of logos, let me say one first thing. You can interchange all of the logos. You know, you can, you can use different CIPa plans you can use five different CIP providers you can use three different registry providers can use different orchestrators different resource plans doesn't matter. That logical design is all the same. And we have five layers. And for me, this was also McKinsey's proposal so you know I'm piggybacking on their fame, but they have they they they dissected this into five different control plane layers you have the developer control plane layer, which is the interaction between the developers and platform engineers and everybody with the platform. You have the integration delivery plane, you have the resource plane, you have the monitoring plane and you have the security plan. And what I want to do right now is I want to go through the different planes, explain what they are, explain the design choice, and then what we're going to do as a in the next step we're actually going to follow a simple deployment because the unit of change in this platform is the deployment. And so, all of these activities always happen at deployment time that's our pulse of business if you want. And that's exactly what we're going to do here let's sort of a couple of observations we've within this reference architecture chose backstage as a portal, because it's the most commonly used. There's another one coming with GCP. And that's using Atlassian compass, which I think is sort of the second big player in that important space, not many know it yet, but it's, we're seeing it in more and more cases and it's accelerating really really fast and if you're in the in the Atlassian ecosystem I'm personally a big fan. Then we have obviously version control we're using scores a workload specification in this case infrastructure is cut with Terraform but you could swap that logo with crossplane or with Pulumi or whatever. And we have get actions here, Amazon ECR, you may take as a platform orchestrator. This is I think a little misleading, the actual implementation, we're using our CD which is the most the commonly used and has much more beef. And then you have the resource plane there here and this I think I've seen a version with with data doc very helpful and this is has to come cloud evolved again, the usual suspects. Cool. Now, let's actually get cracking and dissect this so developer control plane level. Okay, we looked at this already a little bit. And obviously, let's zoom in. And the first thing that I want to zoom into the thing that not everybody's using yet is a little here let's start with this first the workload specification. What is that actually, it's a general recipe on how my workload relates to dependent resources. If you want it's a general way of explaining my architecture to a system. And I'm explaining this in an environment agnostic way which means that the description is, it doesn't matter whether it's staging or production. The database my in this example, Python service depends on a resource of database Postgres storage s3 and then a type DNS and then we have a connection string that tells my workload how to connect to my database. And I, this is actually how the score file looks so it's not. I'm depending on that particular RDS database no we're saying, I'm depending on a database of type Postgres. There's exactly one score file, one workload specification and you can use score you can use anything else that sort of doesn't matter we're using score because you know it's the open source project I worked on so I'm in love with it but you know what, you can write your own many enterprises have their own version of this. And you have one of those workload specifications and they sit next to your workload source code, and, and you will then localize them on an environment by environment basis so that's the workload specification this is where, if you want the developer with every single deployment orders what they need. Okay. And then the other interfaces are used in different situations. So, and I listed this and we're going to send it over but let's actually have a look at and this is not data driven. You know, I've jotted my, my observations down and I would have loved to give you this is against 1000 people but that's really just what I'm observing so usually for deployment you have your good push flow right terminal ID. You have your configurations and change to configurations you have the workload specification. Same thing if you want to add and remove a resource and that's already like a hint. Now you can actually add a resource by just saying hey, I'm adding another resource definition to the workload specification can do that on the go. And by just doing a good push it will create that resource and wire this up, promote this to the next environment, and it will do that in the next environment so that's the beauty here. So this is what we're using for removing resources then for rollbacks and diffs because we have that single source of truth we would probably use an API CLI UI resource detail configuration so how is the conflict of the S3 bucket actually looking definitely infrastructure as code predominant method still terraform spinning up a new environment by definition if every day is day zero you can also do that. Similarly API CLI UI same for logs although that would probably be aggregated as the portal layer. I don't think that this is so correct. Then the portal, the service catalog, you would use that. If you want to, you know, search what microservice was we already have, we have an inner source use case has this been done before, definitely portal, and we have a service create like a scaffolding case right. The portal in combination with the templating API of something like GitHub or GitHub. So those are the interfaces is the answer it, it depends what the user is using, and the answer is hey, different users, different choices. If you have a couple of dozen developers, some developers like the CLI some developers like to use the code base. And I'm a big fan if you really want to drive adoption, the systems should be designed in a way that they can actually choose this. Cool. So this is our developer control plane layer. The next element is the integration into the replay and a number of these things are obviously familiar we have our CI pipeline building the code and then we need to push the code somewhere. And in that case, it's a registry and I'm using ECR here could be any other. And then we have the orchestrator component and the orchestrator is basically a configuration file generator, like a smart conflict file generator with sophisticated RBEC functionality could deploy could create infrastructure, but could also just call other API is like call Terraform enterprise call. I don't know hand over to August CD whatever, but the job of the orchestrator is to read that score file and say, Hey, okay, well, where are you deploying to this type staging? Well, perfect. Let me dig up what database to wire you or what to create for you, create the app conflicts, pull the secrets and then actually hand over to deploy to deploy itself. So that's the integration and delivery plane. Let's go to the next element the resource control plan also comparably straightforward what we what we have here those are the infrastructure components you're using today. In this example. So, out of the box this platform is good just to give you a couple of examples is spinning up an EKS cluster, and then you know you can order namespaces or whatever you have RDS as a database route 53 Amazon as the design of this architecture allows you to really genuinely use whatever you want.   So that's the resource and control plane. And because we are applying dynamic configuration management, it's totally possible to have many cloud estates. So, another thing that's coming out is this in a multi cloud example. This multi cloud or multi cluster in this case doesn't really, you know, is that much of a difference then because the actual configurations are created with every deployment. The configurations are created against the target environment. So that means, if you're deploying to Amazon, or you're deploying to Google, you know, it doesn't matter that much, because that's going to be localized. What this also supports is fairly complicated resource combination orchestration if you want so let's say, give you an example the developer in the score file says hey I need DNS. But what that actually means in the real world is, yeah, you need DNS you probably also need a certificate issue, right. And, you know, you need ingress. And that means that simple request DNS. If we would just translate that that wouldn't be enough. So we that that would actually create an acidic resource graph and sequence the creation of these elements so they're actually ready in combination. Which also allows you to then QA this better and operate against this more more sustainably in its game. So that's the resource control plane. Then we have the monitoring and logging plane. And here this is too simple. So actually, if you know if I have a couple of areas where I think we need to improve this. Then that's definitely the monitoring and logging claim because the reality is, you have a PM right you want to see what's going on my infrastructure. You have a whole topic around error messaging. So how do you surface errors from different infrastructure components centrally, you have a whole conversation around. And then you want to center like stream centralized the elements of the or the outputs of the workflow. How is CD performing. Are there any sign ups that need to happen. All of these things need to actually be aggregated, and that's a pretty non trivial tasks so actually here you need more, and then you probably want to aggregate that on an orchestrator API level or on a portal level. So that's actually easier to consume for the for the for the user. So that's the monitoring and logging plane but you know pretty much you want to have the observability tied in. So basically, if you're creating creating the app conflicts with every single deployment, you know you can enforce the use of side cars labels and annotations, make sure that you really have good coverage here, and make sure you can actually centrally pull in all the locks on a workload by workload basis, and really see what's what's going on. So that's either monitoring and logging plan, and then this the next element where I think, you know, real life is a lot more complex. And you know now secrets management with with vault, but then you know we often have policy systems compliance based translator elements that say, Well, in this situation, you need to create a ticket and it needs to be approved and it goes into production. So I think all of those things also need to find their way in. So this is heavily simplified but a good good starting point I think. Yeah, so now those are all of these different elements. So now, what I actually want to do, let's quickly go back to our beautiful overview graphic here. I want to actually follow a deployment our unit, our rhythm of business, all the way from the git push down to the running application to the configured And, and before we do that I want you to understand that again that idea of dynamic configuration management and nine out of 10 people when they say, yeah, I get dynamic configuration management now don't really get it because it's very different to the approach that we've been, you know, approaching for a good decade or so. So let's go through this again. Let's talk about dynamic configuration management as an asynchronous love affair between platform engineering and application developers, which is such an unsatisfying experience right having an asynchronous love affair. But and that's really what it is so do you have that abstract description of the world. Hey, I'm a developer I have a workload it depends on a database of type posters I'm describing what I need. So now, I'm sending that through my CI pipeline. And by doing that, by definition I'm indicating a context, you know, otherwise that that couldn't build so it's a tag, or, and then I have a matching criteria. I'm deploying to an environment of type staging. I'm deploying to an environment of type production. I'm in a general environment, I have an app ID, I have a test ID, I, I have an end ID and you get the drill so there's some sort of indication of context. How we're doing the indication, you know, subject to the specific respect of organization and whatever but we have a context. Now, I'm sending the context it's making its way through CI. I've applied to change to a workload source code. And with every deployment, I've used that sentence a lot but it's also very important with every deployment. The score file is making its way through my CI pipeline and it hits the orchestrator. And now the orchestrator is performing an RMCD execution pattern. And it's called RMCD because of the song YMCA. That's actually the only reason because YMCA you'll always remember this and then you think about RMCD. And it's easy to remember and you have the tunes in your ears and RMCD means read, match, create, deploy. I'm reading the file. And the orchestrator says, oh, there is a file. And because we treat every day like day zero, the orchestrator has no prejudice so the orchestrator thinks, let me read that file and figure out what that workload needs and reads the file, figures out, oh, it's a Postgres, needs a DNS, needs an S3, okay, fine. Now, next step, read, match, match, what's the context. And the orchestrator again looks at the metadata and says, oh, yeah, this is an environment to a, this is a deployment to an environment of type staging. Well, let me look, make a look up what the platform engineering team wants me to use in that circumstance. And today in that case we say, oh, this is just a deployment to development. I just want you to use the, there is already like a Postgres database and I don't want you to create a new one I just want you to route to the existing one. Okay says the orchestrator, I'm going to go over to the next stage, the create stage and the create stage, we're going to say okay we'll create application and application configurations by applying that workload to baseline conflicts, you know, think of them and then we are actually going to create or wire existing infrastructure components in the very trivial case will just reach out to the Amazon API and fetch the latest credentials, and then inject them through secrets at runtime into the container. And all in the more complex case we're going to do advanced resource, a cyclic resource graphs and we'll do all sorts of procedures in the background, and then we'll, we'll route everything up. Now, and then there's the deployment stage at the deployment stage, we again have, you know, you guessed it, code files, and those code files can sit in repository and then something like our goal can take over and or we're handing over to other orchestration things all your orchestrator can do that in house if you want you know that depends on the on the on the systems you're using. But in the end that's what we have every single deployment we have dynamically regeneration configurations and we have that hot juicy asynchronous love affair between platform engineering and application developers. Good. And what we're going to do now is, and that's like a world premiere we're actually going to look at a golden path. So, and a golden path is something that the developers can use and if they stay on this they get certain guarantees. And I want to show you the first golden path now.  What are you talking about. It's deployment to development. Nothing is special about deploying to development really like nothing. You're taking the most trivial case, you'll get, you'll get an understanding on how this actually works and pens out, and you will understand. Even in that trivial case. What is the beauty of standardization by design. Okay, so we're deploying to development with applied to change to our little Python service. It's very special get push. Let's let's let it run our workload specification also runs because it's always being sent. And we now have the context context environment equals development environment type actually equals development. And then we are going to hit at some point, the orchestrator component and the orchestrator is thinking it's tuned read match create deploy RMCD. It's reading this it's matching the context it's creating the conflict it's configuring the resources in this case, it's really just reaching out because the resources are already there. And then it's deploying and we have our clusters configured and everything is wired and everybody's happy. Now again you're looking at this and saying okay well great you know whatever you have a deployment to development congratulations. Well the thing is, while this is the case, there are like a ton of things that could have changed under the hood. Let me give you a couple of examples. And you might have changed the labels and annotations that you want in workloads. Right. You might want a different side card you might want to update postgres version 14 from to postgres version 15. You have different, I can give you like hundreds of examples. Now, in the normal world, you would send out a request to all developers can you please update that and then after we do this again and nobody does it and then, and after four weeks you ask your CTO to send the email that we've all done that a couple of times. Now in this world, all you change is the baseline configuration. In the next deployment, these things are dynamically flowing in standardization by design by just using the system. It is standardizing itself. So that's the beauty. And now, because we are dynamically creating stuff. We can actually take this to the next level and we can go into the scaffolding workflows and we can go into the creation of a new environment for instance and let's actually do this and this is my golden path scenario number two. We create a new environment and what's the developer experience incredibly simple. We take the exact same score file we take the exact same code. And the only thing we change is that we indicate a new context and the context in this case is, hey, this is an environment of type ephemeral. It hits the orchestrator. The orchestrator says our MCD exactly read match. Hey, environment equals ephemeral. All right. Well, now I'm going to create a postgres. I'm going to create an S3 bucket. I'm going to create a DNS. Wait a minute DNS. We need ingress and certificate of cool. I can do that as well. I'll use Terraform or crossplane or I will automatically send an SMS to the Vatican and the Pope will do it himself and then send back the credentials. We do that better. We do that. And then we create the application configurations we receive the credentials secrets we wire everything up. Yeah, and then it's deployed and we have a new namespace. We have RDSS 3 DNS, everything is in the latest state. Okay, that's the second gold path. And this also means, well, it doesn't matter whether this is the first time or the 10th time, this could be a scaffolding. It could be after two years that this application exists. And this is running through completely automated and making sure everything is tidy and clean tool. Next example here is just for the sake of a deployment of production. What's the message I want to send the message I want to send is is the exact same thing, you know, indicate context and then we have everything running. The more important example is what happens if you want to go off the golden path, you know, I'm always another nice buzzword that I'm always saying is golden path not cages, you know. And so how do you ensure that this isn't a golden golden golden cage, right, because I mean these, these things are great but there's always that situation where you need a resource and the platform engineering team hasn't provided it yet. And it's a very, very frustrating experience for the user, because now you have the feeling Oh, you know, I've been restricted and I have to wait for another team and how is this better than what I have today. And the wonderful thing here is you can give an answer to that. And the answer is going off the golden path. Here's an example of a Rango DB, which I'm always using because a Rango DB is something you never need until you need it. And so, then you say, Well, I need a Rango DB, but, and you're sending the request to the orchestrator. And maybe that has dry around functionality. I'm telling you, hey, Rango, I don't know that I have no idea what to do. So, you know, in, in most cases you would be stuck now, not in this case, you can actually teach the system. How to create a Rango DB, right. And that is also what I mean by layered abstractions, if assuming the developer has the robust access control to do so. But now go in and actually define how a Rango DB is set up that, that, that resource knowledge graph, if you, if you want, can actually learn the century and this is leading to something that is a was a revelation for me two weeks ago, that if you want platform engineering, good platform engineering is actually about cutting and designing your repositories in a sustainable way. I was mind blowing for me when I when I, when I first person, but then actually there's a lot of truth to this we're going to look at this in a second. And so that's exactly what you can do here. Hey, you're just teaching that system. Well, by the way, this is how you create a Rango DB. And in those situations, if those matching criteria are met, should you actually be using a Rango DB. All right, so again, it's the orchestrator R and CD and then we have a Rango DB but the next time a developer now needs a Rango DB and the matching criteria hit back a Rango DB is there, right. And so that's actually what I want to double down a little bit a little bit more that platform engineering is about structuring repositories and a good setup right has a certain has a different repository structure than a lot of the repository structures that were that we've been used to. So, and if I'm, if I'm saying developer owned or platform engineering owned. I'm not saying that this is mandatory. And I'm not saying that sometimes there are developers that have both roles. That really, really depends on the compliance and security posture of your respective organization. Right. So, I'm just, I was just in London yesterday with a, you know, large bank, and at that large bank. The, the division would be very, very extreme. You know, you, it's not in the realm of possibilities that a developer is allowed to change the respective configurations of an S3 bucket in production, but you know, this is not going to happen. But let's say you are in a in a less security heavy environment, then you could absolutely say, hey, as a developer, you can maybe change everything globally until you get into a pre product and you can actually send a pull request to the global configuration of an S3 bucket. But what's different and it's actually have a look at this is that we do separate these things out so the developer actually now primarily owns the workload.  And then you have the things that are cross cutting across the organization. And the first thing that I want to look at with you, again, is the workload profile here in the middle. So you can think of the workload profile I said that before like an empty Helm chart, and it contains the things we need to create the application configurations that could be CPU minimum allocation labels and annotations. Maybe the fact that has your goal to start up as a sidecar, all of these things. Now, workload profiles are have a one on one relationship with a workload. But no, it's not one on one, it's one too many so one workload can actually workload profile can be used in many, many different workloads. Because in reality, and I can tell you that firsthand, even if you're a very, very, very large organization, you maybe need three, four, five different workload profiles, that is pretty much it. Now then we have the, the way that resources are created. And that again, or wired and that again differentiates static so resources that you don't want to have lifecycle owned by the platform. They are just referenced so you can register them and say, Hey, by the way, we have this Postgres, it's already there. If somebody hits those criteria please route. And then you have dynamic resources, and those are resources that if somebody needs an S3, and it needs to be spun up, please use this template. So this would be usually infrastructure as code. The difference is, you now don't have. In this absurd case today where they had 470 different ways of creating Postgres across all teams. And you can say, you know, why not, but you can also say, like, why would that be a good idea. It's, there are no, it doesn't make sense that I'm not, you don't need for 70 different ways to instantiate Postgres this is not necessary like you maybe need a couple. And so that's what you would actually have here. You have resource definitions and resource definitions. You know, there's a terraform provider for an orchestrator for instance that says, if the nth ID is staging and the ID is ABC, then please use the following resource drivers. And the last thing are certain automations compliance elements and all of these things. And that's it. And so, if, if you want to have that case a Rango DB, well what you actually do is that you go into the terraform provider for the orchestrator and by the way we can do that together it's a fun exercise. And so this is the provider, you go into the terraform provider you go into the documentation. Boom, and we read this documentation from from from the bottom. Yeah, this is actually a terrible example. Let's look at this. So you say, we'll have this one. Okay, so you say, if the criteria at ID equals test app. And the user wants a Postgres. I want you to use the following resource definition. Period, that's it. Right, or let's take another example. If nth type is staging an app ideas test app and nth type is development and ideas test app then please at the request of GKE use this resource definition. That's it. It's not super complicated. So that means in that case right where we want to train the system how to create a Rango DB, what that train the system actually means is you are extending that central logic on when to use what cool. All right, so now, you know, I bombarded you with stuff. I'm sure you're completely overwhelmed. If you want to be even more overwhelmed, then you can read the white paper on this that that is, there's one coming out on McKinsey.com and I wrote another one that, you know, that adds more of these these things in a little more, you know, detailed 36 pages so if you're at home with your partner and you really want to have a great thing to read at night 36 pages of juicy platform content. Definitely cool. And the package version is ready. It's coming hopefully soon. There is no tutorials. So it's extremely hard for it to use for you. But I'm hoping some of these guys can write tutorials and otherwise. I hope somebody else doesn't or I'll do it. And then you can actually try these things yourself.  And then, you know, last comment there like a ton, ton more coming at the GCP one is in development right now. And then I think next is Azure and then either multi cloud and then open shift. So, yeah, pretty cool. All right. Cool. Thank you so much Casper and hope everyone have a great end of today or beginning of the day. Bye.