Is it reasonable to require students to bring a laptop to every lecture? In the next academic year,
I'll be teaching a class on how to use a statistical software package
(the R programming language).
I foresee that each class will have two parts:
a lecture and software demonstration,
and time for the students to get their hands dirty
by trying the software themselves.
I now have to decide what type of classroom to request.
Option 1: Computer laboratory
If I hold the class in a computer laboratory,
the advantage is that every student will have a computer
with the software already installed.
The disadvantage is that the classroom layout
is optimized for students to use the computers,
so it is difficult to lecture.
I foresee that it would be difficult for students sitting in the corners
to see the projector screen when I am speaking.
Option 2: Lecture theater
If I hold the class in a lecture theater,
the advantage is that every student will be able to see the projector screen when I am lecturing and demonstrating the software.
The disadvantage is that students would have to
bring their own laptops once a week.
Although I estimate that at least 98% of students own a laptop,
I don't want to embarrass or cause difficulties to any students who do not.
So bearing these two options in mind,
which type of classroom should I request?
Is it reasonable for me to request the lecture theater,
knowing that this will be inconvenient for students
who don't normally bring their laptops to university?
Edits
There will be around 90 students in the class.
My plan is to ask the students to form groups of 3-4 students,
so that they will help one another as they do coding and data analysis.
I will probably have a TA to help to run the lab session
given that there are many students in the class.
I've attached a floor plan of the only computer lab in my university
which is able to accommodate 90 students.
As you can see, if I am trying to give a lecture in this lab,
it can be very hard for me to have eye contact with the students,
and to perceive any confusion or uncertainty in their minds.

What I decided to do
After considering the input provided by the various answers and comments,
I decided to adopt a hybrid approach,
i.e., 1 hour of lecture followed immediately by 2 hours of computer lab time.
During the lecture time,
I will be showing the students how to use the software
and how to estimate and interpret statistical models.
During the computer lab time,
students will apply what I taught in the lecture to a different data set.
I would go with the computer room option. There are several issues with getting everyone to bring a laptop:


As you mention, a few students may not have one, and this could cause embarrassment.
People are using different operating systems, and may have different versions of the software installed. This increases the chance of code working on some computers but not others, which is always tricky to deal with as the lecturer.
High chance that at least a few students will forget their laptops, or their power supplies.


To deal with the issue of the computer room being poorly laid out for lecturing purposes, I would suggest providing all the materials (powerpoint, code scripts, etc) to the students electronically. This way they can have everything displayed on their screens and can follow along even if they don't have a good view of the projector screen.