Hi, I hope that you are doing great. On Friday 24th March at HVL and on Tuesday 28th March at NHH, we will cover the material in chapter 10. Please, prepare the material for that lecture. Have a nice week, Mario
Ch1: We install Python and Visual Studio Code. We learn to create virtual enviroments, and we create our first Flask app.
Ch2: By using Flask routes, we design the basic structure of our app (home page, and app calculator page).
Ch3: We learn the basic elements of HTML (head and title), and we study the main elements and properties of the head and title.
Ch4: We develop the HTML and CSS file to design the navigation bar, the header and the developers sections in our home.html file.
Ch5: We develop the HTML and CSS file to design the methodology.html and carbon_app files. We also learn how to use Bootstrap.
Ch6: By using Blueprints, we change the structure of our app creating a package that will be hosted in the platform Forward.
Ch7: We create an account in GitHub and Amazon Web Services (AWS). We deploy our app in AWS by using Elastic Beanstalk and CodePipeline.
Ch8: We learn how to create forms to interact with the user. We protect sensitive information creating environmental variables.
Midway conference: The students present their apps and their business models. They also explain their team work strategy.
Ch9: We connect our app to a database by using Flask-MySQL. We create queries to access users information.
Ch10: We learn to customize validation messages, and we focus on the log in, log out, and authentication functionalities.
Ch11: By using Python, we develop the mathematical machinery to work out users' transport carbon emissions.
Ch12: We deploy our app connected to a PostgreSQL database in Amazon Web Services by using a Relational Database Service.
Ch13: We develop some basic queries to access users' carbon emissions data and we display that information by using tables and chart.js.
Ch14: We deploy our app in Heroku. We create a PostgreSQL database and connect it to our app by using environmental variables.
Lysdagen Conference: The students share their apps with Startup Lab and Bergen municipality who also present their own projects.
The assignment of the course consists on two parts.
The first module of the course where the students write a 7-8 pages (no more) essay to work out transport carbon emissions counts for the 40% of the grade.
The second module of the course where the students develop an app to work out transport carbon emissions counts for the 50% of the grade.
All the groups will present their theoretical model and their app in a final conference. All the groups must attend that conference. Depending on the number of groups, the conference will be organized in two days (one afternoon, and one morning). If some members in the group cannot attend the conference, the other members can assume that duty. At HVL, ALL THE STUDENTS must attend the final conference, since that is a requirement imposed by the HVL legislation.
The presentation during the "weekly challenge" and the presentation in the final conference account for the 10% of the final grade. In particular, the performance of the students during the "weekly challenge" accounts for the 5% of the final grade, and the presentation in the final conference accounts for the 5% of the final grade.
The two modules, the "weekly challenge" and the final conference presentations will be conducted in groups of 6-7 persons, and the final grade will be allocated to each group.
The essay and the presentation in the final conference will be evaluated by me and an external evaluator. All the assignments (first module, second module, "weekly challenge" and the final conference presentations) are conducted during the same semester.
The students write a 7-8 pages (no more) essay. To write the essay, the students must search in scientific papers and official documents to develop a solid methodology to work out transport carbon emissions. The quality of the essay will be based on the methodology, and the quality and originality of the exposition. The students can present exclusively the methodology, or can also illustrate the methodology with examples, or any other resource they consider appropriate.
Based on the methodology presented in the essay, the students develop and app. The app will be developed step by step during the course. At the end of the course each group have its own app running on Heroku and Amazon Web Services. To have a good grade, the apps must have all the functionalities developed during the course. The students could also change the layout of their apps if the want. The students have a lot of freedom to develop their own app. However, to have a good grade, the students must guarantee that the app have all the functionalities learned during the course, and have a nice and intuitive layout.
During the course, I will teach the students to create their own GitHub repository, and their own accounts in Heroku and Amazon Web Service. After each lecture, the students will update the GitHub account based on the content covered in that lecture. By doing that the students will have their own apps running in Heroku and Amazon Web Service. Before to take the exam, each student must send me the links to their GitHub repositories and Heroku and Amazon Web Service, so that I can verify that they have followed the course.
At the end of the course, we will create a package with the students’ apps. Therefore, each student will have its own app hosted in the platform Forward. This will help the students to have a portfolio of apps publicly available at no cost, since the students’ apps will use the databases and the resources of Forward.
The essay and the development of the app is conducted in random groups of 6-7 persons. In the future the students will need to work with persons from different background, and write and essay and develop in that environment helps them to make that transition smoothly.
The key dates for the course are the next ones:
At HVL, the lectures are on Mondays (14.15-16.00) and Fridays (10.15-12.00) at room M509. At NHH, the lectures are on Tuesdays (10.15–12.00) in Aud J and on Thursdays (08.15–10.00) in Aud H).
Each chapter has its own webpage. To make the course more effective, and to facilitate the learning process, each chapter has its own YouTube video(s), and its own GitHub repository(ies). The students must watch the videos and follow the directions in the videos before each lecture.
In each lecture, we go through the material covered in the videos, and we will type all the code. So, that at the end of the lecture we are sure that all the students understand the material covered in each chapter. In the lectures, we will work in groups. So, the students can help each other.
Each week, I will propose a “weekly challenge” to the students. The students will work on that challenge together, and the subsequent week we will propose the solutions to the challenge in the lecture. Each week, one group will be randomly selected to present its solution in the weekly challenge. To facilitate the cooperation to solve the weekly challenge, we will use a chat where all the students from HVL and NHH will participate. I will participate also in that chat proposing ideas to solve the weekly challenge.
All the lectures will be streamed by using Zoom (https://nhh.zoom.us/j/6343089435).
At HVL, the tutorials will take place on Mondays from 16.00 to 17.00 at the students bar in the main entrance. I will be sitting there during that time, and I will help you with your doubts. The bar is a quiet and open space and helps to create a relaxed and comfortable environment for the students to talk openly about their questions, doubts, ideas.
At NHH, the tutorials will take place on Thursdays from 10.00 to 11.00 at the small students bar in the main building (the bar close to the small staff canteen). I will be sitting there during that time, and I will help you with your doubts. The bar is a quiet and open space and helps to create a relaxed and comfortable environment for the students to talk openly about their questions, doubts, ideas.
If you cannot meet those days, or you cannot meet physically, please drop me a line, and we set an appointment at a different time, or by using Zoom (https://nhh.zoom.us/j/6343089435)