New Developer Perspective
Published: 2023-02-27 05:01:53

**What is confusing about platforms?**
From the perspective of a new developer, web platforms seem like a very broad category of software. Their purposes can be wide-ranging or very specific, and they might cover front-end development or the full stack altogether. I've looked at various sources and have some gotten mixed results in what is and isn't a web platform. The obvious ones are things like WordPress and Shopify, while ones like React and Angular are a bit more ambiguous. Some sources said they were a platform, while others said they were just libraries, while others said they were both. I feel like I need a bit more clarification on what the difference is between a platform and a library, and where React would fall between those. 

**How could web components and VanillaJS standards be taught in a way that is more approachable?**
One of the main arguments listed in the debate is that React allows website applications to be developed quicker from start to finish, and that it can be used for a very broad range of apps. Given that's true, I think that React naturally will attract a crowd of less experienced developers. In order for web components/Vanilla JS to compete with that appeal, it could be taught in a more streamlined way and have better tooling/support. From doing research, React has very good debugging software and easy to learn syntax. Vanilla JS needs something to match that those types of tools in order to get people to stick with it, as it may be more difficult to learn but it does seem to be less complex and more efficient in the long run. 


**What did you find easiest to work with on 1st stab?**
I personally thought working with OpenWC was way easier than trying to figure out React, Angular or Vue. Everything from getting the actual file cloned from Github and working on VSCode all the way to porting my HTML/CSS/JS onto it felt much simpler. It feels a lot more seamless, as it's actually native HTML/CSS/JS as opposed to its own syntax. The only thing that threw me off was having to work around the shadow root when it came to JS logic.

**Think back on the tooling. What parts were confusing? What clicked with you immediately?**
I was thrown into a bunch of tooling software which left me really confused at first. There was so much different software to download like Github, NPM/Yarn, Node.js, VSCode, etc. Getting to go through the development process with this software has proven to be challenging but rewarding at the same time. Going from Vercel to Github to VSCode back to Github can be frustrating if you are going in blind, though. The entire concept of Git/Github seems simple enough but in reality there's a steep learning curve to it. The only thing that really clicked with me immediately was the entire concept of committing/pushing. 

**What additional readings did you have to do in order to make sense of things**
I haven't used readings as much as I've used ChatGPT for help. It's a great resource for things like code snippets, installation instructions, etc. I remember not being able to get my React boilerplate to install locally so I asked ChatGPT for help with the npm commands, and it ended up working.