I fixed a number of the low-hanging a11y issues that you identified.
As for using modern web tooling, keep in mind there are many business and technical tradeoffs that go into any engineering decision. In this case, dynamically rendering the content makes it easier in the future to require aspiring hardware engineers to pass a test demonstrating knowledge of WCAG 2.0 standards before unlocking any educational hardware content.
Very cool! I've been considering going this direction with the videos once I've finished everything for the breadboard version. Modular PCBs would make it a lot easier to rearrange things to experiment with different architectures, which could be interesting.
But I've got a lot of other ideas too, so who knows...
I've done this and once had a phone rep from Geico who was convinced I worked for them because my email was something like [email protected]. This was probably in the late 90s when email was still new to many people. She was really confused that I wasn't getting the employee discount. "Are you sure? Does a family member work for Geico? No? Are you sure?..." I don't think she ever did really understand what was going on.
Perhaps I could have saved even more than 15% if I'd just gone with it. :D
I always understood it to be that the "typographic resolution" aspect of sparklines was an important characteristic and that you really couldn't display a proper sparkline on a screen because most screens just don't have the resolution of printed material. The idea was that the human eye could glean useful information from charts with 600 or even 1200 data points per inch and so you could pack an incredible amount of data into a small space. Even retina displays are only about half that, though most "sparklines" I see don't even attempt that density.
Does anyone know if sparklines are actually used that way? The only place I've seen really dense sparklines are Tufte's books. Most I've seen in the wild seem to have just a handful of data points.
That article has a terrible title. It implies it discusses deficiencies with the Common Core standards. A much better title would be something like "Open questions in mathematics that align to Common Core standards"
This looks like a lot of fun. A couple years ago, I built an 8-bit CPU from 7400 series logic gates on a giant breadboard and learned a ton. And it still works today! I strongly recommend a project like this to anyone who might be interested.
I'm slowly working on putting together a more detailed tutorial for building such a thing. I actually think with the right guidance this is a very accessible project for someone without much background in electronics or computer architecture to learn a lot from.
The reason is because you never want routers to have to fragment your packets ever. Fragmentation is really inefficient. So any modern stack will always set DF and listen for ICMP unreachables. In other words, PMTU discovery.
None of the other reasons you mention are really relevant.
It makes fixing it possible. It's unreasonable to expect that getting millions of people to agree to take specific actions to effect a very precise change in laws will be "easy".
This seems likely, but also easy to work around by advertising a smaller window size.
When you send ACKs, not only do you send the acknowledgement number indicating which byte you expect next, but you also send a window size indicating how many bytes you're willing to receive before the remote end has to wait for another acknowledgement. Normally you want this to be somewhat large so you don't spend lots of idle time waiting around for ACKs. (But not so large that packets get dropped). This is the key to TCP flow control, which was kinda glossed over in the blog post in the interest of keeping things simple.
But perhaps by default, you're advertising a too-large window considering the circumstances. I bet you could make this a lot more reliable just by advertising something smaller.
Good TCP implementations have overcome a lot more than some unwanted buffering.
I was in exactly this situation back in 1996. I moved back in with my parents and enrolled in a couple classes at the local community college. I guess the assumption was that I'd get back on track and transfer back to a 4-year program, but that never happened (academia really wasn't for me). At the same time a friend connected me with an internship doing what amounted to desktop PC support, though it developed into more than that over time.
It turned out I was much better suited to (and motivated by) real world work. (I already had a reasonable amount of software development experience prior to college.) I quickly proved my usefulness, was able to take on more responsibility, and learned a ton about networking hardware over the next year or so. I should point out that during this internship, I was working a lot. I was really into what I was doing, really enjoyed everything I was learning, and seeking lots of feedback from everyone around me.
Since dot-coms were all the rage at the time, there were tons of places hiring anyone who knew anything about the internet (today, it would be mobile or web development perhaps). After a year or so, when I started interviewing, it was apparent I had the relevant experience and no one cared that I hadn't finished college.
I got lucky with the internship, I got lucky with timing (dot-com boom), and I got lucky that I really enjoyed doing something that happened to be highly marketable. But I also was really motivated and worked hard. I hated school because it felt so pointless. But entering the real world, I felt super-motivated because I felt I was doing something productive that wasn't just a contrived assignment to be graded and discarded. If this sounds like you, maybe you'll follow a similar path. On the other hand, if your poor performance in school is a reflection of general lack of motivation that would carry over to work, you've got a tougher problem to solve. My guess is that based on your previous internships, you already know the answer.
I fixed a number of the low-hanging a11y issues that you identified.
As for using modern web tooling, keep in mind there are many business and technical tradeoffs that go into any engineering decision. In this case, dynamically rendering the content makes it easier in the future to require aspiring hardware engineers to pass a test demonstrating knowledge of WCAG 2.0 standards before unlocking any educational hardware content.