The usefulness of online and hybrid delivery methods in education has long been realized and with the advancement of computer and communication technologies and the Web based authoring tools, their effectiveness have been further extended. We are at a point that online and hybrid course offerings for undergraduates are quickly becoming an integrated and regular part of engineering departments' course offerings. Many institutions are offering online courses, as part of their regular schedule. In this paper, based on our experience that started with hybrid delivery and ultimately extended to a full online offering, we will present a set of recommended steps that can be used as a guide by those who are interested in designing an online introductory computer-programming course. We will then present a set of observations that we feel needs to be considered and discussed by the research community. The paper will include examples of students' comments, which were received in teaching evaluations, for hybrid and online offerings.