Live data from Hacker News

Web Development for Beginners – A Curriculum

github.com

81–90 of 111 posts

Re: Web Development for Beginners – A Curriculum

#81
post #9
post #7

Slightly cynical but lesson 2 is already into GitHub and a bunch of terminal commands. Great way to put beginners off web development. I guess it's no surprise Microsoft wants beginners to sign up at lesson 2 of 24. Also I'm not sure if these info graphic styles help or hinder understanding at a glance. I find it more effort to read the flow when it's a comic, but could be just me: https://raw.githubusercontent.com/m…

Our sketchnotes are very popular, and help visual learners. We have others in a different style: https://aka.ms/iot-beginners

That example introduces a lot of visual clutter and inconsistency. I doubt anyone can make it from 1 to 24 and not feel exhausted.

Panel 4, "Deep dive into IOT" has an illustration of stick figure diving under water. I'm not sure the concept of "deep dive" requires the explanation.

https://raw.githubusercontent.com/microsoft/IoT-For-Beginner...

I thought the learning potential was more for the person who makes the sketchnote, rather than people reading docs.

Re: Web Development for Beginners – A Curriculum

#82
post #47

I'm an experienced backend developer but always struggled with learning modern web development. I understand all the core well (html, CSS, JavaScript, etc.), but struggle with choosing the right high level abstraction/framework/technology for ideas I want to implement. E.g. should I make it a single page app or not? Should I be using ES6 imports? Which build tool? Would I want React or Vue or something simpler here?…

I think sveltekit gets it right most of the time. yes its new tech. but I think its way better than the alternatives already.

You want a frontend server that handles auth and credentials. cleans up queries to and from the main backend server.

Then you want as low-level interaction as possible in the HTML space. HTML doesnt provide everything you need. but it gets close. JS should augment HTML, the closer you stay to HTML the better.

Sveltekit goes a long way in providing this, nextjs and all the others just threw way to much tech at the front end space.

You basically want a way to turn URL's and POST requests into GET and POST responses. SPA is mostly not great and was a sidestep in a useable web.

Re: Web Development for Beginners – A Curriculum

#83

about JavaScript, CSS, and HTML basics ...and this is where it goes off the rails; teaching JS before HTML is how we will continue to have the ridiculous proliferation of app-sites that shouldn't require a single line of JS instead needing the latest version of $browser (you have a choice of browser - pick one ...) to even show any content at all. Forms don't need any JS to work, yet the impression this gives to begi…

Please could you inform me how you would build a form that creates, lets say a secondary loan for a company with attached assets. The assets could be zero, or many. How would you create this form without Javascript? Would you require a user to create the assets before the loan? Saying that HTML provides everything a developer needs to provide an application to client is so ridiculous, I have no idea why this sentimen…

You would make multiple form, and track state on the server side (user createdvempty/wip loan, user added assets, user reviewed and confirm loan). Probably share state between client and server via a session token (cookie). Optionally share some state via REST - eg loan ID and asset IDs in path).

That said - complex forms is a typical example of when you might want to move from a web "page" to an "app".

Re: Web Development for Beginners – A Curriculum

#84
post #50

A bit of bikeshedding (and I'm not an educator, so take that with a grain of salt), and I guess different views on a good curriculum are to be expected, but a few things I noticed upon a skimming: - No basic HTML "hello, world" in the beginning to hook the reader and show that they can easily make web pages. It seems that they should wade through quite a few lessons, including JS ones, before composing the most basic…

Sticking GitHub and accessibility in the first lessons was a pretty odd choice

Accessibility is a legal requirement for front-end development in a large number of countries around the world (including the US), so it’s good to get a baseline understanding in early.

Re: Web Development for Beginners – A Curriculum

#85

Earlier quoted context omitted.

> "Pedagogy" - I don't know what that means It means “teaching methods”.

The meta-point is that the usage of complex words is off-putting to those trying to learn something for the first time. There's always an element of "I don't know what this is, so I can skip it" but better to keep topics simple and approachable.

This is what dictionaries are for, seriously. Instead of bending backwards to serve some supposedly alienated learners, we can look the word up. When I learn something for the first time I try to be humble and put in some effort. English is not my first language, but if we start avoiding "complex" words soon we will be communicating in grunts.

Re: Web Development for Beginners – A Curriculum

#86

about JavaScript, CSS, and HTML basics ...and this is where it goes off the rails; teaching JS before HTML is how we will continue to have the ridiculous proliferation of app-sites that shouldn't require a single line of JS instead needing the latest version of $browser (you have a choice of browser - pick one ...) to even show any content at all. Forms don't need any JS to work, yet the impression this gives to begi…

Please could you inform me how you would build a form that creates, lets say a secondary loan for a company with attached assets. The assets could be zero, or many. How would you create this form without Javascript? Would you require a user to create the assets before the loan? Saying that HTML provides everything a developer needs to provide an application to client is so ridiculous, I have no idea why this sentimen…

> the moment you go enterprise, more is needed.

If you're employed, working at scale and need to do the complicated stuff, you're not a beginner web developer anymore. At that point, you should already understand the fundamentals and start extending on top of that.

Re: Web Development for Beginners – A Curriculum

#87
post #32

Its probably just me but I guess I teach web dev professionally so I might as well say that I was really excited to see something like this for free from Microsoft but confused to see so much time spent on a canvas app and backend functionality seemingly crammed into the last few sections somehow. I guess it's fine to just have a frontend curriculum but just confused at why this is noteworthy maybe. Im sure this is a…

It's for folks wanting to learn the basics of frontend development. And that means HTML, CSS and JS.

Frameworks are optional since web does not mean only single page apps. And even you want a single page app, you can do it without a framework.

So learning a framework comes after learning the basics.

Re: Web Development for Beginners – A Curriculum

#88
post #67

It's good that they jump in with JavaScript right from the start. This way people learn right away that HTML/CSS are just helper technologies in the whole process of creating Web apps.

It's the other way around. JS is just a helper and optional technology when creating web frontends.

Re: Web Development for Beginners – A Curriculum

#89
post #83

Earlier quoted context omitted.

Please could you inform me how you would build a form that creates, lets say a secondary loan for a company with attached assets. The assets could be zero, or many. How would you create this form without Javascript? Would you require a user to create the assets before the loan? Saying that HTML provides everything a developer needs to provide an application to client is so ridiculous, I have no idea why this sentimen…

You would make multiple form, and track state on the server side (user createdvempty/wip loan, user added assets, user reviewed and confirm loan). Probably share state between client and server via a session token (cookie). Optionally share some state via REST - eg loan ID and asset IDs in path). That said - complex forms is a typical example of when you might want to move from a web "page" to an "app".

Share state? I disagree heavily. There is no reason for the backend to know how many assets a user is trying to add to a loan, or delete, or accidentally load, or add but realize mid-way that it doesn't apply.

Do you belive the backend should know about human incorrect input and track state?

What if a cat steps on a keyboard? every addition to a form is a page reload and a query to the server. then the server sends a response. Which is exactly the bloat everyone seems to go on about.

Im sorry but living in a world of enterprise apps, the sentiment that JS is a poor language and a bad choice is both out of place and highly de-coupled from real-world usage.

Re: Web Development for Beginners – A Curriculum

#90
post #74

Earlier quoted context omitted.

> The agenda is obvious to anyone who cares to look. Alternatively: it's just teaching whatever is popular in the industry, for better or worse (similarly to how DevOps people would be taught Kubernetes, even if it can be horrible in certain cases and for smaller projects). Many sites out there don't need JS. Server side rendering would suffice. And many other sites out there would be well served with minimal JS for…

I teach that kind of stuff at university — I would never think about teaching JS before HTML and CSS. Students should understand what ia possible with HTML and CSS alone. Then we look at the server side, and understand infrastructure and how servers can potentially deliver different HTML and CSS depending on the request and then we start introducing JS as a means to replace serverside stuff, to enrich HTNL and CSS or…

I am trying to finally learn what's going on in the web browser and my biggest hurdle has been CSS. I can read & write rules but the questions are really, which rules and under what circumstances? That plus the different layouts (grid, FlexBox, etc. -- terminology almost certainly wrong, sorry!). Can you please recommend a good resource for learning CSS & layouts?
Post reply on HN