Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
7. Securing you application: This one is probably more about configuration than anything, depending on all the security features your frameworks and servers have. Explain e.g. the OWASP Top 10 and mention how the particular project would be secured from them or why a security risk is already mitigated. I always missed talks about making your software secure at university.
Homework: Test your project for $risk and explain why it is or is not affected.
8. Performance and optimization. Show how to measure the performance of all the applications and how to identify bottlenecks. Also talk about bundle size optimization and things like minfying, uglifying or duplicate code elimination. Also talk about how you can minimize your footprint by selecting the right libraries in the first place. Discuss when native code is absolutely crucial and when not. Maybe use native modules you call from your platform agnostic mobile framework as an demonstrative example.
Homework for 8: (in the case of react-native) Write a native module of your choice (Android or iOS) of a performance critical task and use it in your app.
9. Wrap-up, assignment of small projects the students can make out of their existing ones. Maybe help them already start their projects for the rest of the lesson.
Homework: Do the assigned project.
(It may be better to have two weeks between the ninth and tenth lesson to ensure that the students get enough time for it. Even better would be 3 - 4 weeks with an intermediate lesson to help fix some bad problems).
10. Presentation of projects, final discussion and feedback for the teacher.
Afterwork for the teacher:
- Read all the feedback and think of whether it makes sense to adapt the class to it. Give yourself a reason why or why not. Then adapt it for the next students. If there is feedback to your presentation skills or the like, also take it seriously. One thing that was never taken too seriously at my university and that is kinda sad. Because some teachers were very cool guys.
- Identify typical technical problems and write them down (you will not remember them all after half a year), including their solutions or workarounds. Emphasize on parts where students typically struggle more. Strip out things which take too much time and find alternatives.
- If the teacher is working in the industry like me, consider offering the best students a job application at your company (or other contacts you know at least have a fitting tech stack).
Sorry for the long post. Had to write that thing finally down (it was in my head for a couple of months now).
I guess there are still a lot of flaws in my syllabus, maybe you got a better idea. Feel free to destroy me in the comments.