Skip to content

Summer2017PostMortem

Mathew Zaleski edited this page Sep 12, 2017 · 3 revisions

Discussion? Is there really no place to make comments on a wiki page? I was hoping for a PR like comment area, but no. For now:

Lloyd's comments post-launch

Now that the app is live and in use by students and the dust is settling, (on the wet paint :-) I have some observations for the next project., or the next iteration of this one.

Security changes everything

When the pages are rendered in an encrypted session browsers will detect "mixed content" and pop up warnings if some urls don't use encryption. https://developers.google.com/web/fundamentals/security/prevent-mixed-content/what-is-mixed-content. Development should be done with https:// enabled, i.e. https://localhost/ so this doesn't come as a surprise at deployment time.

Everything is relative

The project was developed as the root application on the web server, emitting code that requires absolute paths starting from '/', rather than relative url's ('../'), so that the app fails if moved to a sub-directory. i.e. < https://localhost/arbitrary_path/tapp/ > .

Projects should be designed so they can get along with sibling projects on the same host. eg:

(It looks like this might be able to be done with a different Apache module then the one used, need to test it to see if it would work http://httpd.apache.org/docs/2.4/mod/mod_proxy_html.html )

Some dogs won't fetch

The project uses the fetch API which is not supported at all by Internet Explorer: https://developer.mozilla.org/en/docs/Web/API/Fetch_API#Browser_compatibility IE users do not see any content other then the page footer.

While most CSC course TAs and faculty will have installed other browsers, the rank and file in other departments probably have not. if you want adoption by CHASS/FAS IIT I think this would be a deal breaker; IE is the default browser for Windows 7, and Edge is not an installation option. With the demise of Win7 not slated until 2020, IE support would be be a requirement for a University level application, I think.

Some dogs React badly if you sue them

I think the project also uses React.

https://medium.com/@raulk/if-youre-a-startup-you-should-not-use-react-reflecting-on-the-bsd-patents-license-b049d4a67dd2 “If you use React, and you initiate any patent assertion claim (as defined in the PATENTS file) against Facebook (whether React-related or not), you lose the patent right grants for React.” — these are the terms of strong patent retaliation. The same goes for: React Native, GraphQL, Jest, Flow, Relay, immutable.js, Caffe2, Reason, Shimmer, and more.

This is ( probably? :) not a consideration, just something that caught my eye.

Future project?

I think it went well overall, and I think there is an awful lot of overlap between what this does and what we need for graduate admissions application processing...