 All right, this is a zero preparation talk just to show you how good all the other speakers were tonight Fairly recently I switched from being an engineering manager in charge of front-end team design mobile So now working for a company that's been around for 40 years and has never had a software developer there before They seem to be very good at finding the worst companies to outsource to and my new job is to Reign in all these terrible projects and try to make some sense of them and hopefully not have them anymore But what this is about is bad inheritance when you inherit a project from someone else So usually when you started in your company You will go through all sorts of emotional raiders like this But there are ways that you can do this and actually retain your sanity The first one that I usually look at is source control and you think that surely everyone uses source control or some description No, not everyone actually knows what source control is There are people who are paid real money not Bitcoin to write code that don't know what source control is So your first thing you need to do is make sure that doesn't matter what level you're coming into a project Make sure these things exist If they don't ask about it in the interview first make sure this stuff is there they should laugh at you and say of course We're using source control If they do that, that's good. If they don't then run Even beyond that make sure you've got proper branching and some kind of same source control in place one of the projects I inherited recently had branching where they literally copied the whole project into a new folder and Called it version 2 and then they copied that into another program folder and call it version 3. That's not branching Please work out what branching is and make sure the rest of your team knows Even if you're junior, it doesn't matter if you spent six months coding and no one else knows what they're doing Get in there and actually make it happen because your life will be miserable if it doesn't The next thing with any new project is to make sure it actually runs This sounds stupid, but not all code actually works Most of the time especially with older projects, you'll see that oh, yeah, it's working in the production server We've got another version on the test server, which we're actually developing on which is also the production server We can't run on our local machines because there's no documentation. Good luck The best thing you can do is try to get it running in a completely clean environment That's not run before if you don't have documentation for it write it down And when you're new, this is the perfect time to do it even if it's really Simple documentation just write down as much as you can for your first impressions of the project After a month or two, you'll be used to it will be fine But then when the next person starts they'll go through exactly the same emotional range that you just did Save them the hassle or it might be you in six months time when you come back to this So step three we can write some actual code, but you can't yet What you actually need to do now? CSS so you want to actually look about for your design assets Identify every designer you can find in the company if they're outsourced every single one of them Send an email around or speak to them and say hey, I exist I appreciate what you do Can you send me your brand standards any guidelines color guides anything you possibly got Get in touch with your marketing people do exactly the same thing Tell them that you're on their side Most of the time in my practice I don't know if I tend to work for bad companies that now usually say so well We've got a blue that we use in the logo It's a bit different on the business cards from the letterheads and there's something different on the website And they've got no idea, but at least this gives you a baseline So you know you what you're in for ideally you'll get a full brand guidelines. It will give you proper X codes for colors and everything If you don't then this is a great opportunity for you to create your own or at least even if it's in a small scale It's the stepping stones make your life a bit more safe Can you code now? No What you now need to do is actually do an inventory Go through the project and find out what you're actually looking at how many versions of bootstrap Do you have how many of those versions bootstrap a version one? See what you're in for and have a look really quickly for an upgrade path Maybe they're on three point one and you can upgrade to three point one six really quickly read the release notes find out Make your life that it'll be easier right now if you can upgrade to the latest If you're running something it's using no then you know npm check updates See what packages haven't been changed for three years and have massive vulnerabilities Why can't you code because your images aren't optimized yet? This is the easiest win every single project you're working on and you'll say surely everyone's optimized their images The answer is no one ever optimize their images Even if you don't want to get into tooling at this stage You can just do it manually yourself and still on your local machine run every image That's there in the project through the optimizer put it in Check it into your source source control that you've now got and you've probably cut 300k from the Image sizes on the project without even trying it really doesn't take too much I mean if you want to go and automate it, that's great You should get there, but the first thing you do is just Optimize them before you even need to think about it. It takes very little effort Coding is great, but you can't do that yet because you haven't had a look at The the commonality that's in the code, especially with CSS you'll have the company color that's in the logo Maybe you have two colors in the logo. It's a really exciting company Maybe not except usually what happens in the CSS is someone will copy The hex value from somewhere like maybe they saw on a business card took a picture with their phone and then Did an inspector and then they drop that into one section of the code Another part of the code. There's the same kind of blue, but it's like one hex value off So do an inventory of your code. This is where global find is really important If you're not using a free processor like sass or something at this point This is exactly the time you need to think about it So ideally at this point you can set up your sass variables For all your colors every kind of common thing that you can into some kind of a variable even if it's like that That's okay At least you know what you're dealing with and hopefully you can consolidate that that down really quickly to something like this Same goes for any other commonality fonts media queries go through everything you possibly can Consolidate them into variables. You don't need to do this all at once But to start on this level and your life will be a lot happier Next if this is your own your first day, you might not make it onto your second day But you're there. You're at least into some kind of saying projects And from here on hopefully your project will be a bit better Okay, that's as far as I go because I okay. All right. Thank you We are not that one more announcement you would like Yes, he will shout