Teaching web development in Computer Science undergraduate courses is a difficult task. Often, there is a gap between the students' experiences and the reality in the industry. As a consequence, the students are not always well-prepared once they get the degree. This gap is due to several reasons, such as the complexity of the assignments, the working environment, the frameworks used and the time-frame constraints. In this paper, we report on a case study on how we taught web application development using extreme tutoring and in an apprenticeship manner. The assumption was to take two real web applications as basis for practical teaching. We present the different issues that we faced: the setup of the development framework, the heterogeneity of human resources and the volatility of the environment. We describe how the process evolved positively. The students became independent, and implemented two applications. We conclude with the lessons learned.