I think that there are many lessons to be learned from ICT4D, most of which can be applied to other development classes and development projects. The primary lesson that I learned and believe to be the most important is the need to fully understand your target group and work with them closely through every step of the implementation of the project. Not only do you need to know what your target group wants and needs, but also how those needs may change and how your project can adapt to those changes. Too often ICT projects fail because of a lack of communication between the project organizers and the target group, and if there was increased communication and understanding from both sides I think that many projects would be much more successful.
The need for better communication is just as important as the need for both sides to fully understand what the project is intending to accomplish, what can be expected of it, and what is expected of both the project implementors and the target population. ICT projects, and most development projects, should be viewed as a partnership between the project implementors and the target population. If the project implementors are disconnected from the target audience, and vice versa, then the project will have a larger chance of failing. Both sides need to understand their role in the implementation of the project (as well as their relation to the other side of the project) in order for it to be successful.
I have a family friend who started a company that evaluates development projects and their successes and failures. She gives advice to them on how to be more efficient and productive. It would be interesting if there was a class devoted to the evaluation of development projects. It would provide a good example of how diverse development work can be and all the different aspects of development projects, with information on what is generally seen as good and bad ways of project implementation.