Week 11 - Notes

Even the book indicates to the reader that this chapter should be essentially treated as a reference.

General Thoughts

First off, I know this edition of the book was published in 2017, but discussing Adobe Flash Player is unacceptable in 2020. Even non-experts know Flash to be an empirical security vulnerability. I suppose the only reasonable exception should be archiving or porting Flash animations or games for the purposes of archiving. Anyways, even Adobe, the company behind Flash, has dropped all Flash support as of 2021.

I do not know much about Shockwave, but I would not use it in any browser, unless you absolutely needed to activate Shockwave Player for a legitimate reason (and "because I can" is not a valid reason).

Not to be a cult fan of open source software, but people should just use SumatraPDF Reader instead of Adobe Reader, if you do not want to use Firefox or Chromium browsers to view PDFs on Windows.

I also do not know much about Java Runtime Environment (JRE), but I am going to guess JRE has legitimate purposes, since I have seen it installed on Linux.

For Windows Media Player, I am pretty sure there are Windows versions of VLC and mpv. There is no reason to stay with the very basic video player that comes with Windows 10 anymore.

I would not worry about the formats of audio files, unless you are unable to listen to an audio file due to the file format or if you need high audio quality.

For video file types, .avi is only natively used by point and shoot cameras from 2010. I am not sure any remaining new point and shoot cameras use .avi format anymore - I seriously doubt that, since it tends to be rather a large file format compared to the amount of footage that can be obtained. Lastly, .webm is the worst file format to see if you download the separate audio and video tracks with youtube-dl and have to convert the resulting product into .mkv video format while transcoding soft captions. (Also, the book does not mention .mkv as a video format... but that is probably because it is the video format of choice for data hoarders and movie torrenters.

I am glad this book shows a podcast with a transcription in Practice 11.1 - more people need to be attentive to transcriptions when possible, even though I am aware it is hard work.

I am also glad this book mentioned RSS feeds, but RSS is not that useful unless you have an RSS feed reader.

The book tries to talk about "ethical" issues with copyright with music audio and video from movies/TV shows, but most of the time copyright only protects big budget movies/TV shows made by giant uncaring corporations. Yeah, try applying and enforcing copyright law to memes...

Anyways, the book should mention that there are plenty of other open source video editors out there, but the main one that comes to mind is Kdenlive. There might be other worthy video editors out there, but I do not use video editors all that much.

Some of the knowledge for sampling rates is more appropriate in a music production or a technical film school than this book.

Unfortunately, there is little that is done with respect to accessibility for multimedia. Captions? Yes, some people do this. However, alternate content for all videos on a YouTube channel? Practically nobody does this, even though people should.

Browser compatibility... maybe do not use browsers that are trying to fight a loosing battle, like Pale Moon or Lynx. People, whether you like it or not, should be using either a close Firefox-based browser or a Chromium-based browser (but not Chrome).

Additionally, the book is a bit outdated - I believe YouTube stopped providing the user-contributed closed captioning in 2018. Sad, but then again there is not much that can be done about a for-profit closed-sourced platform from an end-user...

So, you can just ignore all of Section 11.3, since it is all about Adobe Flash. (Practice 11.2 cannot be verified on Linux, unless Flash is somehow installed. As stated before, I would not recommend this, since the class at most only asks 1 question on Flash Player, if at all. So, if you are on Linux and cannot get the Flash file to work, then do not feel bad about it and just move on through the rest of the chapter. Media that would have been using Flash Player in 2005 should now be created using HTLM5 technologies in 2021 and beyond.

The book mentions that fallback content should be supplied if HTML5 audio cannot load. However, most JavaScript dependent sites, such as Twitter, do not even show any media if JavaScript is disabled, which is unfortunate.

Again, the textbook should no longer suggest a Flash SWF version of a video as a fallback option. (Anyways, video services or CDNs should probably be used if you have a lot of videos - videos can take up a lot of site bandwidth and that is some of the legitimate reasons for having CDNs.)

Basically Section 11.5 says that you will not be in trouble with copyright law if you use other copyrighted material for most school assignments (with proper attribution and other practices in order to not plagiarize).

Section 11.6 covers CSS transform properties in order to have fancy menus and gallery transitions, as an example.

In Practice 11.8, there is a typo: the pictures should be all JPG, not PNG - specifically in Step 4.

Figures 11.11-11.12 for Practice 11.6-11.7 (respectively) should show a horizontal navigation bar, not a vertical navigation bar.

In Practice 11.9, the template file should be at chapter2/template.html, not in chapter1/.

Section 11.9 is some JavaScript. Just follow along.

In Section 11.11, even though jQuery is not inherently privacy invasive, you can see that it has the potential to be privacy invasive.

In Section 11.12, I have no idea why the geolocation API is built into HTML5 by default. This stuff is horrifying. Also, the canvas API is cool, but also an avenue for abuse from social media sites, such as Facebook, to track your mouse movements and clicks - if you ever though that using a desktop was more "secure" or "private" than using Facebook's proprietary iOS or Android app.

In Section 11.13, the book means to say that flashing animations should not have a frequency higher than 3Hz to prevent seizures... but then again, maybe you should not have flashing animations in the first place.

I also have no idea why JavaScript sites, such as Twitter and Facebook, are not in trouble for creating sites that literally cease to function properly without JavaScript (and no, it cannot only be due to the fact that these social media companies have lobbyists).

JavaJam Assignment

The JavaJam assignment is very straightforward - you literally only add audio files to the Music page. Since the book stopped giving explicit instructions, simply use Practice 11.3 for the HTML code as a guideline.

Long JavaScript Tangent

This chapter could be called the "JavaScript" chapter - or at least the first chapter in which the practical use of JavaScript appears. While JavaScript should be its own course, since it is a proper scripting language (like Python, not like a markup language like HTML and CSS), very basic JavaScript manipulations are shown.

I am well aware on how JavaScript is treated with disdain on the Internet when it comes to online security. Realistically, you cannot disable JavaScript easily - unless Tor Browser is used with its security slider. However, using Tor Browser is not a typical use case anyways.

I know this is totally unrelated to the textbook, but when these sort of scathing criticisms of JavaScript are lodged, these are criticisms of how JavaScript is used in the real world (i.e., advertising and tracking companies on basically every single website that has no other way to sustainably generate revenue from the website), not the language itself.

In fact, what you use in Chapter 11 is pretty innocent, since the JavaScript is fairly simple (albeit sometimes annoying), since it is unobfubscated JavaScript code. All those advertisers and online trackers are using minified (concise one-liner programming statement styles equivalent to "normal" JavaScript but are difficult to read) in order to save storage space. I do not know much about why JavaScript is obfuscated, but apparently some people out there like to protect their work under the model of security via obscurity, which is not sustainable as a methodology in general. At that point, you should probably use well-known and specialized open-source JavaScript libraries in order to get such work done, but that is a digression I do not want to get into here...