Long overdue revisited MCU watching order

Tags

, ,

So, I blogged here a while ago about the order in which to watch the various installments of the Marvel Cinematic Universe. It was a simpler time. The Infinity Saga was maybe only half formed.
But still, there was enough to take a good chunk of time to catch up on. Now, with Disney+ recently launched, this might be the best time to revisit this list.
Now, the sheer size of the MCU is even more intimidating. And that is a statement that will seem naive in a couple years.
Anyway, without further delay here is my updated suggested order:

  • Captain America: The First Avenger
  • Agent Carter Seasons 1 & 2
  • Iron Man
  • The Incredible Hulk
  • Iron Man 2
  • Marvel One Shot: A Funny Thing Happened On The Way to Thor’s Hammer (on Captain America: The First Avenger BluRay/DVD)
  • Thor
  • Marvel One Shot: The Consultant (on Thor BluRay/DVD)
  • The Avengers
  • Marvel One Shot: Item 47 (on The Avengers BluRay/DVD)
  • Iron Man 3
  • Marvel One Shot: Agent Carter (on Iron Man 3 BluRay/DVD)
  • Agents of SHIELD Season 1 Episodes 1-7
  • Thor: The Dark World
  • Marvel One Shot: All Hail The King (on Thor:The Dark World BluRay/DVD)
  • Agents of SHIELD Season 1 Episodes 8-16
  • Captain America: The Winter Soldier
  • Agents of SHIELD Season 1 Episodes 17-22
  • Guardians of the Galaxy
  • Agents of SHIELD Season 2 Episodes 1-19
  • The Avengers: Age of Ultron
  • Agents of SHIELD Season 2 Episodes 20-22
  • Ant-Man
  • Captain America: Civil War
  • Spider-Man: Homecoming
  • Guardians of the Galaxy: Vol 2
  • Doctor Strange
  • Thor: Ragnarok
  • Black Panther
  • Avengers: Infinity War
  • Ant-man and the Wasp
  • Captain Marvel
  • Avengers: Endgame
  • Spider-Man: Far From Home

The Netflix Shows operate pretty separately, and don’t tie in closely to the MCU films. They all take place after Avengers, with the later series (Jessica Jones Season 2, Defenders, etc) taking place after Avengers Age of Ultron. However, apart from that they can basically be watched in their order of release.

  • Daredevil Season 1
  • Daredevil Season 2
  • Jessica Jones Season 1
  • Luke Cage Season 1
  • Iron Fist Season 2
  • Defenders
  • The Punisher Season 1
  • Jessica Jones Season 2
  • Luke Cage Season 2
  • Iron Fist Season 2
  • Daredevil Season 3
  • Jessica Jones Season 3
  • The Punisher Season 2

Similarly later seasons of Agents of SHIELD stop tying in quite so closely to the MCU and can be watched in whatever order relative to the rest of the MCU. The same can be said for marvel’s Runaways and the Cloak & Dagger series. Both are quite good, but don’t tie closely in to the MCU happenings. Though, they are intended to be in the same world. Inhumans should be skipped altogether.

Census 2016 – A few thoughts

Tags

,

So the census website gave us all something to laugh or cringe or rage at in some measure over the last 24 hours. If you are seeing this, you probably saw I had some things to say about it. Some in jest. Some less so. But what happened?

There are stories out this morning that the site was hacked. First of all, if I could ask the ABS to never be so stupid as to use that phrase again, that would be great. When people already have privacy concerns with the data being gathered using a generic chronically misunderstood term like “hacked” just makes you look terrible and the data insecure. Of course people have always had privacy concerns about the census, but when you are now asking for identifying information they are all the more valid.

A little more reading indicates the “hacking” was really a series of Denial of Service (DOS or Distributed Denial of Service – DDOS) attacks. At least as far as the information I am seeing. When you say “hacked” a lot of people envisage some teenage techie savant, or foreign government spy breaking into the system and copying everything to an elaborate USB stick (in fact, that is the definition). But that is not what a Denial of Service attack is. A DOS is simply an attempt to make a system so busy or overloaded it can’t be used by anyone. Just like the first 2 minutes after Ticketmaster puts Beyonce tickets on sale. Or a thousand extra people turning up to catch your train. Suddenly there is no room for you. It just gets too busy. The distinct difference is that any data stored by the website previously is generally no less secure after or during a DOS attack than it was otherwise. This is why just saying “hacked” is a terrible idea.

So, what did happen?

Well, I wasn’t there in the room, so I don’t know. What I do know is that they claim the site was taken down as a security measure after the DOS attacks. Not unreasonable. But why  then was I able to finally get a page at 11pm. Was it brought back up after only a couple of hours? And why did that page then tell me to try again in 15 minutes?

I think they were just too busy. Much too busy. Did they get hit by a DOS? Yeah, could well be. If so, I don’t know that they coped very well. Where did that DOS come from? I don’t know… who has an interest in that not going well? Though, of course, dickhead anarchists are dickhead anarchists sometimes.

Here is my problem…

“In the lead-up to census night, the ABS spent hundreds of thousands of dollars on load testing and said its servers could handle 1 million forms per hour.”

ABC Online (http://www.abc.net.au/news/2016-08-10/australian-bureau-of-statistics-says-census-website-hacked/7712216)

This seems to be true. A quick look at the government tenders website last night indicated to me probably over half a million dollars was spent on load testing the census site. But here is the thing about testing: What if you find something you don’t know how to fix? Or you only find 99% of the issues?

I still haven’t seen the whole site working (for obvious reasons), so it’s a very initial guess. But, does it look to me like the site was on the most efficient technology and deployed the most scalable way? No, not really. But they certainly tried to scale. Did they learn anything from the Obamacare rollout or even from ClickFrenzy or any of the other mass site failures that have been seen very often here and sometimes abroad? I don’t know. I would have hoped so. The result suggests not enough at least.

I also have a problem with the figure from the quote above. 1 million forms per hour. That’s 278 per second. Seems like a lot. Indeed, it is. It’s not really enough, though, is it?

Numbers I saw indicated they expected up to 16 million census responses. That seems high. There are only about 9 million households in Australia. Lets say that has grown a bit and there are 10 million. And we are all “supposed” (not technically required) to fill in our census Tuesday night. Lets say a few get in early, during the day or whatever. Maybe 2 million. Maybe a million will mail in the form. That leaves 7 million to try and fill out their forms probably in the 3 hours between 6 and 9pm (don’t want to leave it too late!) on the specified night. Yeah, well over 2 million an hour. Maybe they are more spread out… but we would probably still see a bunch of attempts around 7-8 o’clock. You might expect a peak around that time of 3 million/hour? I think that’s reasonable. So, 1 million an hour is actually quite inadequate. Furthermore, as people experience failures and come back to try again “15 minutes later” that simply increases load for those already trying those 15 minutes later.

There may have been attacks. If so, your data is probably as safe as it ever was. But, it doesn’t seem like they were really prepared for an operation on this scale. No, let me be clear. This is no reason to defund or attack the ABS. There are maybe people there who made some dumb decisions, but maybe they got the best advice available from the closest things to experts available. And maybe they were just wrong, or inadequate for the scale of the task. Regardless, the ABS still performs a critical role in the management of this country and crippling them will not help them do that job better.

Anyway, it’s the morning after census night. Mine hasn’t been lodged (I will try in 4 days – https://twitter.com/rossmack/status/763018667059650564) and who knows what really went on, but that’s my 2 cents. I guess we will find out more in the coming days.

A Super Quick Redirector for Short Links

Tags

, , ,

Featured imageI decided the other day that I wanted a better way to share content with people. Whether it be a PDF or a youtube URL, or something out of my dropbox. Now, none of that is difficult, I will grant you. It’s pretty easy to email or SMS someone a link, even a longer dropbox content link or one of those expansively long blog links generated from the title. Sure, great for SEO, a real pain to dictate to someone over the phone. And you always take the chance their email app or server or whatever will crush the link into a ball of twisted metal.

So, it seemed to me there must be a way to do this better and in a reusable way. And would it hurt if I enhanced my own branding a little (eg huff.po, nerdi.st, hlp.sc, tmblr.co, wp.me) ? Maybe, but let’s assume not.

Better yet, if I set this up in a way that I can easily configure and maintain the redirections from anywhere, that’s a bonus.

It occurs to me that I can do all this with Edge80 without having to worry about development tools or deployment or servers or whatever. And not having to worry about commissioning or deployment is one of my favourite things. Better than raindrops on roses.

So, my basic plan is to use a nice short domain and to have short, simple paths essentially resolve redirects to longer URLs. That way the minimum processing needs to take place. For example if I were to attempt to proxy content, this would require me to do processing and URL changes when handling things like youtube URLs. The Edge80 libraries make that easy, but it’s not necessary for this use. Here we just want to make sure people end up in the right place.

It’s actually pretty easy to return a redirect (301) in Edge80, which is the pivotal part of what we want to do. Let’s look at the code to return a redirect to edge80.com.

<rule name="a_redirect">
  <set-cache aggressive="true" cookies="ignore" insecure="true"/>
    <compose>
      <header name="Location" value="http://www.edge80.com"/>
      <script>
        <![CDATA[
        document.responseCode = 301;
        ]]>
      </script>
    </compose>
  </rule>

The way I decided to configure this is to put some paths and associated URLs in a text file. Here is an example:

e80vids,https://www.youtube.com/channel/UCaa_-DZyObm7ZHAMMEmoRUA
e80els,http://doc.edge80.com/XML/Resource/Elements
henge,https://www.google.com.au/maps/place/Stonehenge/@51.178882,-1.826216,17z/data=!3m1!4b1!4m2!3m1!1s0x4873e63b850af611:0x979170e2bcd3d2dd

I drop this in the public folder of my dropbox for convenience. It’s such a quick and easy way to HTTP share a file, it suits this circumstance quite neatly. I can easily add redirects to the file wherever I am, even on my phone. I then add some code to the Edge80 script to pull this file when needed, and parse it for paths to redirect to.

First, a setting to know where to get the file of redirections.

<rule name="definitions" priority="-100">
  <prerequisite>
    <defmac name="links_src" value="https://dl.dropboxusercontent.com/your_dropbox_account/links.txt" />
    <!-- A Default place to redirect to. -->
    <defmac name="redirect" value="http://www.edge80.com" />
  </prerequisite>
</rule>

Then when a path comes in we look up in this file and decide on a destination URL using some javascript.

<rule comment="Standard Redirect Rule" match-host="*">
  <apply name="definitions" />
    <!-- Some standard aggressive caching. -->
    <set-cache aggressive="true" cookies="ignore" insecure="true"/>
    <compose buffer="links">
      <!-- Fetch the links config file into a buffer called links -->
      <fetch type="url" url="${links_src}"/>
    </compose>
    <compose>
      <script>
        <![CDATA[
        var lines = dombufs['links'].value.split('\n');
        for (var n = 0; n < lines.length; n++) {
          if (lines[n].length > 2 && lines[n].search(",") > -1) {
            var key = lines[n].split(',')[0];
            if (key == request.path.substr(1)) {
              macros.redirect = lines[n].substr(key.length+1);
            }
          }
        }
        document.responseCode = 301;
      ]]>
    </script>
    <header name="Location" value="${redirect}"/>
  </compose>
</rule>

Because the result is cached aggressively this same 301 result will be returned on subsequent requests for the same path, until the cache expires. So, even though there is a little script run on each of the first requests for each path, the caching makes subsequent requests for the same thing very very speedy indeed.

Want to see it at work? The links given as samples above are, of course, live. Try them here:

And you can download the complete Edge80 source code for this little utility at http://rjm.link/redirector (Right Click to save for best result)

Watching the Marvel Cinematic Universe

Tags

, ,

Marvel Cinematic Universe

Marvel cinematic Universe, by mrsteiners.deviantart.com

I have been asked a few times “Avengers was good, what else should I watch?” or “What should I watch before Agents of SHIELD?“. Of course, the answers for these can vary a bit depending on the source of the query. Peoples personal preferences being what they are.

Anyway, as a result of some of these sorts of queries, I have spent a few moments putting together a somewhat canonical list of what I consider a reasonable order in which to watch the Marvel Cinematic Universe up to now (between the end of Agents of SHIELD season 2, part 1 and the premiere of Agent Carter). Surely I will have some reason to update this list in the near future.

I try to minimise disc changes, but put everything in the correct continuity. The most radical change from the order of release is moving Captain America The First Avenger first, but I think it works at least equally well there and helps inform Iron Man 2, in particular. I have also tried to reduce unnecessary disc changes. Oh, and I have included the Marvel One Shot short films which flesh out some bits and pieces and/or have some cool stuff along the way, I also note which disc you can find them on.

Anyway, here it is:
  • Captain America: The First Avenger
  • Iron Man
  • The Incredible Hulk
  • Iron Man 2
  • Marvel One Shot: A Funny Thing Happened On The Way to Thor’s Hammer (on Captain America: The First Avenger BluRay/DVD)
  • Thor
  • Marvel One Shot: The Consultant (on Thor BluRay/DVD)
  • The Avengers
  • Marvel One Shot: Item 47 (on The Avengers BluRay/DVD)
  • Iron Man 3
  • Marvel One Shot: Agent Carter (on Iron Man 3 BluRay/DVD)
  • Agents of SHIELD Season 1 Episodes 1-7
  • Thor: The Dark World
  • Marvel One Shot: All Hail The King (on Thor:The Dark World BluRay/DVD)
  • Agents of SHIELD Season 1 Episodes 8-16
  • Captain America: The Winter Soldier
  • Agents of SHIELD Season 1 Episodes 17-22
  • Guardians of the Galaxy
  • Agents of SHIELD Season 2 Episodes 1-10

Happy watching!