thinking bigger than client-side code only