CSS

April 5th, 2020
css

A Deep Dive

Tomorrow starts my fifth week at my job as a Software Developer, and it's been an interesting ride, for sure. I started off in the first week getting acquainted with some of the code base and knocking out a simple vanilla JavaScript with jQuery validation project. There were several short forms scattered about the site that were giving out some poor validation, and it was a nice way to ease my way in. Granted, I knew nothing about jQuery getting into this project and the learning curve even for this was fairly steep. After that, I spent the next 2 weeks working on a React project, building out a feature to a pre-existing application. This was very involved and I had to learn quite a bit to get going. I started off refactoring the whole project so it was more usable for a team of developers, and then my co-worker thought it would be a good idea to turn it into a TypeScript code base. This was really my first experience with TypeScript, but in the coming weeks I would get plenty of practice working with it. It's true we aren't using TypeScript to its fullest extent, but we are using it about as much you would with a React application. After getting introduced to TypeScript, my co-worker thought it would be a good idea to change the whole application to have a reducer manage the state of the UI, with context handling the state of the data. This turned out to be a great improvement to the app, and gave us some great separation of concerns.

css

All the while, I have continued my studies on my own, and now have more purpose to those studies. Instead of just aimlessly building up my skills, taking a React course here, a GraphQL course there, and really having little structure as to my path, I now have a clear idea of what I need to learn and where I should be focusing my attention. I have a list of about 15 courses, covering all types of topics, like TypeScript, React, CSS, C#, and SQL. I'm trying to systematically go through these courses in a manner that will be conducive to helping my day-to-day work. So, for the last 2 weeks, I've spent my time studying TypeScript, so I could get better in this area. I started off with a 24 hour course by Stephen Grider, and finished that up in just over a week. This course was a great introduction to the superscript of JavaScript, and I gained a great base for the language. Grider does an excellent job simplifying complex topics and tackling them from every different angle he can think of. His style of teaching is that he takes a block of code and refactors it multiple times to show better and better solutions. Then, I moved on to Maximilian Schwarzmueller's TypeScript course, a quicker 15 hour course that covered just as much ground, if not more. While TypeScript is more of an OOP style language, there are uses for it outside of object-oriented programming. In fact, it can be used widely with functional programming, you just may not use more of the advanced features you would with OOP. Grider's course had more of a focus on OOP than I preferred while Schwarzmueller's explored more in the lines of functional programming. Both of the courses were great, and I learned a lot from each. I have about 40 minutes left in Schwarzmueller's course and then I'm moving on to my next adventure.

css

That adventure, as the title would suggest, is the world of CSS. CSS was one of the first things I learned when I got into web development. I took several courses on HTML and CSS at the very beginning and got a nice, general grasp of the language. Later on, I dove a little deeper with some courses on Frontend Masters that focused on CSS, but these were fairly brief forays. I've used CSS with everything I've built in some form or another, but I can honestly say I've spent more time with component libraries than I likely should have, avoiding getting too deep with CSS. There's still a lot I just don't know, and even more that I know but I'm just not very good at. I've signed up for another course on Udemy, one by Jonas Schmedtmann, that focuses on the advanced topics of CSS and Sass. The format of this course seems to be project-based, and it looks like the breadth of topics are going to be very useful. Given that we don't use any kind of component library in my job, these are skills that I desperately need and will use immediately. I've never taken any courses by this instructor, but this course comes highly recommended. As with the last 2 courses, my plan is to try and complete it in a week and move on to the next one. I have another CSS course by Schwarzmueller already picked out, which should be a great follow up, and an awesome way to really cement the concepts I'll be learning in this upcoming course. I hope to have a much better grasp of CSS in 2 weeks' time, if not sooner.

Until tomorrow!

Created by Sam Thoyre, © 2019