Apart from Maxim 46 (Beware of the Hidden Blanks), you should also heed Maxim 11 (A Macro Is Not Needed) and, for the time being, forget that macros exist. You can and should then relearn this when you have mastered the basics of the SAS language, like DO loops in a data step:
data have;
infile datalines truncover;
input topics $256.;
datalines;
PHYSICAL COMPUTING BASIC COMPUTER TEACHING PROJECTS USING WORD PROCESSING AND DATA ANALYZING POWERPOINT
GAME DESIGN
WEB DESIGN AND DEVELOPMENT MOBILE APP DEVELOPMENT
PHYSICAL COMPUTING MAKER ACTIVITIES WEB DESIGN AND DEVELOPMENT TEXT-BASED PROGRAMMING
;
data want;
set have;
array keywords [6] $ t1-t6 ('PHYSICAL','ACTIVITIES','GAME','DATA','CODING','MOBILE');
array varnames [6] physcomp makeract gamedesign datasci coding mobiledev;
do _n_ = 1 to 6 ;
if findw(topics, trim(keywords[_n_])) > 0 then varnames[_n_] = 1;
else varnames[_n_] = 0;
end;
run;
To become master of a tool, the most important thing to learn is when not to use it.