, but this code // executes before the first paint, when

is not yet present. The // classes are added to so styling immediately reflects the current // toolbar state. The classes are removed after the toolbar completes // initialization. const classesToAdd = ['toolbar-loading', 'toolbar-anti-flicker']; if (toolbarState) { const { orientation, hasActiveTab, isFixed, activeTray, activeTabId, isOriented, userButtonMinWidth } = toolbarState; classesToAdd.push( orientation ? `toolbar-` + orientation + `` : 'toolbar-horizontal', ); if (hasActiveTab !== false) { classesToAdd.push('toolbar-tray-open'); } if (isFixed) { classesToAdd.push('toolbar-fixed'); } if (isOriented) { classesToAdd.push('toolbar-oriented'); } if (activeTray) { // These styles are added so the active tab/tray styles are present // immediately instead of "flickering" on as the toolbar initializes. In // instances where a tray is lazy loaded, these styles facilitate the // lazy loaded tray appearing gracefully and without reflow. const styleContent = ` .toolbar-loading #` + activeTabId + ` { background-image: linear-gradient(rgba(255, 255, 255, 0.25) 20%, transparent 200%); } .toolbar-loading #` + activeTabId + `-tray { display: block; box-shadow: -1px 0 5px 2px rgb(0 0 0 / 33%); border-right: 1px solid #aaa; background-color: #f5f5f5; z-index: 0; } .toolbar-loading.toolbar-vertical.toolbar-tray-open #` + activeTabId + `-tray { width: 15rem; height: 100vh; } .toolbar-loading.toolbar-horizontal :not(#` + activeTray + `) > .toolbar-lining {opacity: 0}`; const style = document.createElement('style'); style.textContent = styleContent; style.setAttribute('data-toolbar-anti-flicker-loading', true); document.querySelector('head').appendChild(style); if (userButtonMinWidth) { const userButtonStyle = document.createElement('style'); userButtonStyle.textContent = `#toolbar-item-user {min-width: ` + userButtonMinWidth +`px;}` document.querySelector('head').appendChild(userButtonStyle); } } } document.querySelector('html').classList.add(...classesToAdd); })(); Student Creates Web Safety Guide - News & Stories | 鶹

Skip to main content

Calvin News

Student Creates Web Safety Guide

Fri, Feb 01, 2008
Myrna Anderson

A Calvin senior has authored a Web safety booklet for the Michigan Family Forum (MFF). 
Nate Knapper, 22, a communications and political science major from Clarkston, Michigan, spent his summer internship with MFF authoring the Family Guide to Web Safety. 
“This was my assignment for the summer,” Knapper said. “I got the assignment because this was Michigan Family Forum’s priority at the time. Their old internet safety guide was fairly outdated, and it didn’t include all of the modern Web topics like the social networking sites and blogging. It had some things about chat rooms, which hardly anyone uses anymore. It’s all instant messaging and Facebook now.”
Knapper researched and wrote the guide and supervised its layout and design. The guide contains sections on e-mailing, chatting and instant messaging; social networking, such as Facebook-ing or blogging; online video gaming and gambling; internet file sharing; video sharing and online shopping and auctions. Each section gives definitions of various Web activities and outlines the risks to children who participate online. 
The book also includes tips and resources for parents on file searching, content filtering, safety tips, purchasing precautions, a cyber safety contract, information on the Michigan Cyber Safety Initiative, common Web acronyms and additional resources.
“It’s important because the internet is absolutely important in people’s daily lives now,” Knapper said, “and because it’s used everyday, there’s a greater potential for users and mainly children who don’t know any better to access content that they shouldn’t.”
Knapper is pleased with the finished product, which will be distributed to churches and schools throughout the state. “The composition of it is a lot of work, but to see the finished product is fun now,” he said. “And I liked working with the designer on the color scheme. I really hope it will be beneficial to people.”
While he was working for the Family Forum in Lansing, Knapper was also serving a stint in the Michigan Attorney General’s office, working under the director of the state Department of Homeland Security. In that internship, he helped to research and format the Michigan Public Health Law Bench Book. “In the event of a natural disaster or a terrorist attack, there are certain decisions that the judges would have to make,” he said.  “They consult this book if they have a question.” 
The Homeland Security internship also led Knapper to Washington during Interim to get acquainted with the operations of that office on a federal level. “I had fulfilled all of my Calvin Interim requirements, and this was something I really wanted to do,” he said. 
Knapper enjoyed working all summer on security-related projects. “My two internships dovetailed perfectly,” he said. And while he’s more than willing to fetch coffee, he advised that the key to getting the most out of any internship is being proactive: “Your supervisor shouldn’t feel like you couldn’t care less.” 
In an internship last summer with Michigan State Legislature, Knapper created an intern development program “Curriculum Beyond the Classroom,” for which he was honored with a trio of prestigious awards: the Congressman Paul Henry Integrity Award, the Daniel Rosenthal Legislative Intern Award and the  Frank M. Fitzgerald Public Service Award.
Though his internship experiences have given him plenty of experience in government, Knapper is eyeing a career in the intelligence community after graduation. “I love James Bond,” he explained. “I’m a big fan.”