rewrite of talkshow.js