<?xml version="1.0"?>
<News hasArchived="true" page="8164" pageCount="10739" pageSize="10" timestamp="Sat, 01 Aug 2026 18:50:21 -0400" url="https://my3.my.umbc.edu/posts.xml?page=8164">
<NewsItem contentIssues="true" id="37250" important="false" status="posted" url="https://my3.my.umbc.edu/posts/37250">
<Title>Bits Blog: Mark Zuckerberg Starts Spending His Billion-Dollar Charitable Fund</Title>
<Body>
<![CDATA[
    <div class="html-content">The Facebook co-founder is beginning to direct money to various causes, including a contribution to a group promoting computer science education in schools.<br><div><table border="0"><tbody><tr><td>
    <a href="http://share.feedsportal.com/share/twitter/?u=http%3A%2F%2Fbits.blogs.nytimes.com%2F2013%2F10%2F21%2Fmark-zuckerberg-starts-spending-his-billion-dollar-charitable-fund%2F%3Fpartner%3Drss%26emc%3Drss&amp;t=Bits+Blog%3A+Mark+Zuckerberg+Starts+Spending+His+Billion-Dollar+Charitable+Fund" rel="nofollow external" class="bo"><img src="http://res3.feedsportal.com/social/twitter.png" style="max-width: 100%; height: auto;"></a> <a href="http://share.feedsportal.com/share/facebook/?u=http%3A%2F%2Fbits.blogs.nytimes.com%2F2013%2F10%2F21%2Fmark-zuckerberg-starts-spending-his-billion-dollar-charitable-fund%2F%3Fpartner%3Drss%26emc%3Drss&amp;t=Bits+Blog%3A+Mark+Zuckerberg+Starts+Spending+His+Billion-Dollar+Charitable+Fund" rel="nofollow external" class="bo"><img src="http://res3.feedsportal.com/social/facebook.png" style="max-width: 100%; height: auto;"></a> <a href="http://share.feedsportal.com/share/linkedin/?u=http%3A%2F%2Fbits.blogs.nytimes.com%2F2013%2F10%2F21%2Fmark-zuckerberg-starts-spending-his-billion-dollar-charitable-fund%2F%3Fpartner%3Drss%26emc%3Drss&amp;t=Bits+Blog%3A+Mark+Zuckerberg+Starts+Spending+His+Billion-Dollar+Charitable+Fund" rel="nofollow external" class="bo"><img src="http://res3.feedsportal.com/social/linkedin.png" style="max-width: 100%; height: auto;"></a> <a href="http://share.feedsportal.com/share/gplus/?u=http%3A%2F%2Fbits.blogs.nytimes.com%2F2013%2F10%2F21%2Fmark-zuckerberg-starts-spending-his-billion-dollar-charitable-fund%2F%3Fpartner%3Drss%26emc%3Drss&amp;t=Bits+Blog%3A+Mark+Zuckerberg+Starts+Spending+His+Billion-Dollar+Charitable+Fund" rel="nofollow external" class="bo"><img src="http://res3.feedsportal.com/social/googleplus.png" style="max-width: 100%; height: auto;"></a> <a href="http://share.feedsportal.com/share/email/?u=http%3A%2F%2Fbits.blogs.nytimes.com%2F2013%2F10%2F21%2Fmark-zuckerberg-starts-spending-his-billion-dollar-charitable-fund%2F%3Fpartner%3Drss%26emc%3Drss&amp;t=Bits+Blog%3A+Mark+Zuckerberg+Starts+Spending+His+Billion-Dollar+Charitable+Fund" rel="nofollow external" class="bo"><img src="http://res3.feedsportal.com/social/email.png" style="max-width: 100%; height: auto;"></a>
    </td></tr></tbody></table></div>
    <br><br><a href="http://da.feedsportal.com/r/176968703022/u/0/f/640387/c/34625/s/32b75cb3/sc/4/rc/1/rc.htm" rel="nofollow external" class="bo"><img src="http://da.feedsportal.com/r/176968703022/u/0/f/640387/c/34625/s/32b75cb3/sc/4/rc/1/rc.img" style="max-width: 100%; height: auto;"></a><br><a href="http://da.feedsportal.com/r/176968703022/u/0/f/640387/c/34625/s/32b75cb3/sc/4/rc/2/rc.htm" rel="nofollow external" class="bo"><img src="http://da.feedsportal.com/r/176968703022/u/0/f/640387/c/34625/s/32b75cb3/sc/4/rc/2/rc.img" style="max-width: 100%; height: auto;"></a><br><a href="http://da.feedsportal.com/r/176968703022/u/0/f/640387/c/34625/s/32b75cb3/sc/4/rc/3/rc.htm" rel="nofollow external" class="bo"><img src="http://da.feedsportal.com/r/176968703022/u/0/f/640387/c/34625/s/32b75cb3/sc/4/rc/3/rc.img" style="max-width: 100%; height: auto;"></a><br><br><a href="http://da.feedsportal.com/r/176968703022/u/0/f/640387/c/34625/s/32b75cb3/a2.htm" rel="nofollow external" class="bo"><img src="http://da.feedsportal.com/r/176968703022/u/0/f/640387/c/34625/s/32b75cb3/a2.img" style="max-width: 100%; height: auto;"></a>
    </div>
]]>
</Body>
<Summary>The Facebook co-founder is beginning to direct money to various causes, including a contribution to a group promoting computer science education in schools.      </Summary>
<Website>http://bits.blogs.nytimes.com/2013/10/21/mark-zuckerberg-starts-spending-his-billion-dollar-charitable-fund/?partner=rss&amp;emc=rss</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/37250/guest@my.umbc.edu/53d8420cbfa907032ae1f2aaa0cb6031/api/pixel</TrackingUrl>
<Tag>chan-priscilla</Tag>
<Tag>code-org</Tag>
<Tag>computers-and-the-internet</Tag>
<Tag>education-k-12</Tag>
<Tag>facebook-inc</Tag>
<Tag>facebook-inc-fb-nasdaq</Tag>
<Tag>internet</Tag>
<Tag>new</Tag>
<Tag>philanthropy</Tag>
<Tag>silicon-valley-community-foundation</Tag>
<Tag>start-ups</Tag>
<Tag>technology</Tag>
<Tag>york</Tag>
<Tag>zuckerberg-mark-e</Tag>
<Group token="retired-583">Web Developer - Build Group</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/retired-583</GroupUrl>
<AvatarUrl>https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xsmall.png?1363101197</AvatarUrl>
<AvatarUrl size="original">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/original.jpg?1363101197</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xxlarge.png?1363101197</AvatarUrl>
<AvatarUrl size="xlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xlarge.png?1363101197</AvatarUrl>
<AvatarUrl size="large">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/large.png?1363101197</AvatarUrl>
<AvatarUrl size="medium">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/medium.png?1363101197</AvatarUrl>
<AvatarUrl size="small">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/small.png?1363101197</AvatarUrl>
<AvatarUrl size="xsmall">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xsmall.png?1363101197</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xxsmall.png?1363101197</AvatarUrl>
<Sponsor>Web Developer - Build Group</Sponsor>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>true</CommentsAllowed>
<PostedAt>Mon, 21 Oct 2013 07:30:48 -0400</PostedAt>
<EditAt>Mon, 21 Oct 2013 14:09:28 -0400</EditAt>
</NewsItem>

<NewsItem contentIssues="true" id="37249" important="false" status="posted" url="https://my3.my.umbc.edu/posts/37249">
<Title>Twitter Bootstrap 3 CSS Overview</Title>
<Body>
<![CDATA[
    <div class="html-content">In this tutorial we have discussed salient points of the Twitter Bootstrap 3 CSS. This tutorial will help you to understand several key aspect of how Bootstrap 3 works.</div>
]]>
</Body>
<Summary>In this tutorial we have discussed salient points of the Twitter Bootstrap 3 CSS. This tutorial will help you to understand several key aspect of how Bootstrap 3 works.</Summary>
<Website>http://feedproxy.google.com/~r/w3resource/~3/wlv5KfBj_y4/CSS-overview.php</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/37249/guest@my.umbc.edu/184d55a0f4adb67be7ec4d89a7b49ae1/api/pixel</TrackingUrl>
<Tag>backend</Tag>
<Tag>css</Tag>
<Tag>frontend</Tag>
<Tag>html</Tag>
<Tag>html5</Tag>
<Tag>javascript</Tag>
<Tag>nosql</Tag>
<Tag>sql</Tag>
<Tag>xhtml</Tag>
<Tag>xml</Tag>
<Group token="retired-583">Web Developer - Build Group</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/retired-583</GroupUrl>
<AvatarUrl>https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xsmall.png?1363101197</AvatarUrl>
<AvatarUrl size="original">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/original.jpg?1363101197</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xxlarge.png?1363101197</AvatarUrl>
<AvatarUrl size="xlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xlarge.png?1363101197</AvatarUrl>
<AvatarUrl size="large">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/large.png?1363101197</AvatarUrl>
<AvatarUrl size="medium">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/medium.png?1363101197</AvatarUrl>
<AvatarUrl size="small">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/small.png?1363101197</AvatarUrl>
<AvatarUrl size="xsmall">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xsmall.png?1363101197</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xxsmall.png?1363101197</AvatarUrl>
<Sponsor>Web Developer - Build Group</Sponsor>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>true</CommentsAllowed>
<PostedAt>Mon, 21 Oct 2013 07:16:43 -0400</PostedAt>
<EditAt>Thu, 15 May 2014 09:16:23 -0400</EditAt>
</NewsItem>

<NewsItem contentIssues="true" id="37248" important="false" status="posted" url="https://my3.my.umbc.edu/posts/37248">
<Title>Master responsive design with Modernizr</Title>
<Body>
<![CDATA[
    <div class="html-content">
    <p><img alt="thumbnail" src="http://netdna.webdesignerdepot.com/uploads/2013/10/thumbnail24.jpg" width="200" height="160" style="max-width: 100%; height: auto;">As you know, there is a lot more to building responsive websites than width. You need sensors that give you feedback to adjust sites based on other factors.</p> <p>The best way to improve our feedback from your user’s sensor, or browser, is by using a JavaScript library called <a href="http://modernizr.com/" rel="nofollow external" class="bo">Modernizr.</a> In this article I’ll explain why, when you go beyond width, Modernizr is such an invaluable tool.</p> <p>In front-end development, developers used to adjust a site to fit the constraints of the layout engine used by a particular browser. In 2003, there were only three browsers: Netscape, Internet Explorer, and Opera. Firefox, Safari, and the first mobile browser, Opera Mini, were released by 2005. Chrome wasn’t released until 2008.</p> <p>Currently there are five major browsers, each with its own mobile version. Across that array of browsers, there are also older versions that users haven’t upgraded. In the same way that creating multiple layouts for multiple screen sizes eventually becomes a zero sum game, so does building multiple front-ends for multiple browsers.</p> <p>We’re using responsive web design to accommodate new, cutting edge mobile browsers. But, while accommodating new browsers, it’s important not to do so at the expense of older browsers.</p> <p>Historically, optimization has come as a product of building a site for the most popular browsers and then tweaking to ensure the site looks the same on a set of popular browsers. Designs would have to accommodate the capabilities of all browsers.</p> <p>Progressive enhancement is one strategy to cope with browsers’ failure to support modern features. There is a temptation to build for the most up-to-date features, but, in a responsive web, the design of a site is contextual to the frame that it’s being viewed through. Responsive web design has become popular because it resolves the most obvious changing context — the size of the frame — but the context of a browser runs much deeper than it’s viewport size.</p> <p>SVG makes for a great solution for high-resolution displays, but what about its support in older browsers? It’s not supported in IE 8 or older, so you have to build in a fallback if you support that browser. You could identify the browser and serve alternative styles against that browser but then you would have to serve those same alternative styles for every browser that doesn’t support SVG.</p> <p>Wouldn’t it be easier if you could just write a style that would be used against every browser that didn’t support SVG? That way, you wouldn’t have to keep up with bug reports from the users of older versions. You could just set the fallback once and forget it.</p> <p>Traditionally, feature detection has been accomplished by detecting the browser’s user agent. This is done through JavaScript, using the navigator object. The navigator object dates back to the Netscape days and used to be a developer’s best tool in cross-browser compatibility.</p> <p>If you have Chrome and have enabled DevTools, open your browser’s web inspector by right-clicking on a page and selecting Inspect Element. Then, click on Console and, after the caret, type “navigator.userAgent” and hit Enter. This will return your current browser’s user-agent, which is a string of text used to identify the browser in use. Chrome returns the following:</p> <pre>Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_2) AppleWebKit/537.35 (KHTML, like Gecko) Chrome/27.0.1443.2 Safari/537.35</pre> <p>In a lot of ways, the navigator object is the one of the best sensors we have available to us to inform our system about what our user is capable of; however, it’s not very future friendly. It bases your site’s actuators on a lot of assumptions about what the browser does and does not support. It also is unreliable because users can configure it to access sites that the browser might not be able to support.</p> <p> </p> <h1>What Modernizr does</h1> <p>Modernizr is a JavaScript library used to detect features in the browser. It’s loaded in the head of your page and runs during a page load. Adding it to your site is as simple as adding any other JavaScript library, such as jQuery, but, once added, Modernizer gives you an incredible amount of control in rendering your page and ensuring that every user is served a quality experience.</p> <p>Having been loaded, Modernizr runs a series of checks against the user’s browser to determine what features the browser supports and creates a JavaScript object that you can use to test against. Modernizr doesn’t create support for these features; it simply gives you a way to provide fallback support for modern features. For example, in the case of SVG, Modernizr enables us to provide a fallback image for browsers that lack SVG support.</p> <p>Modernizr also applies a set of classes to the HTML tag, giving you the ability to modify the page’s CSS using the corresponding CSS classes. These CSS classes allow you to use CSS systems to build actuators that will adjust your pages to allow the progressive enhancements available for a page.</p> <p>As opposed to using the User Agent, Modernizr detects features directly by running a series of JavaScript tests that return boolean (true or false) values. This dictates the classes that are set to the html tag and gives you the ability to use JavaScript to detect whether a feature is available.</p> <p> </p> <h1>Installing Modernizr</h1> <p>Installing Modernizr is as simple as linking to the JavaScript library in the head of your page, but where the installation process gets complicated is creating the version that you need. <a href="http://modernizr.com/" rel="nofollow external" class="bo">Modernizr is available for download in two versions,</a> the development version and the production version.</p> <p>The development version is a full 42 KB, uncompressed file. This version is great if you’re well versed in JavaScript and want to make some tweaks to the tests it performs. Because it’s uncompressed, it’s easy to read and augment but it’s best left to developers with a firm understanding of JavaScript.</p> <p>For those of you who might not be completely adept at JavaScript, or would like to quickly build a customized version of Modernizr, this is where the production version of the library comes into play. The production version building tool on the site gives you the ability to create a version with only the tests you require.</p> <p>This comes in handy when you know you only need a certain set of tests. For instance, your site might not take advantage of CSS box-shadows, but it might need to support CSS gradients. Using the build tool, you can include the tests you need and exclude the ones you don’t need, keeping the source code trim and your user’s total load time down.</p> <p>For our example, I’ll be working of the development version. I find that when I’m building a site, it’s best to work with the full version and then once you know what features you’ll be using in your site, trim the version down.</p> <p> </p> <h1>Using Modernizr for cross-browser CSS</h1> <p>Let’s do some simple feature detection with Modernizr. We’ll start with a raw sample site.</p> <pre>&lt;!doctype html&gt;<br>&lt;html lang="en"&gt;<br>&lt;head&gt;<br>&lt;meta charset="utf-8"&gt;<br>&lt;script type="text/javascript" src="js/modernizr.min.js"&gt;&lt;/script&gt;<br>&lt;/head&gt;<br>&lt;body&gt;<br>&lt;/body&gt;<br>&lt;/html&gt;</pre> <p>Let’s use this small test to detect whether or not our browser is capable of supporting SVG. For the sake of simplicity we’ll just add two span tags to the page to detect support.</p> <pre>&lt;!doctype html&gt;<br>&lt;html lang="en"&gt;<br>&lt;head&gt;<br>&lt;meta charset="utf-8"&gt;<br>&lt;script type="text/javascript" src="js/modernizr.min.js"&gt;&lt;/script&gt;<br>&lt;style type="text/css"&gt;<br>.yes{color:green;}<br>.no{color:red;}<br>span{display:none;}<br>.svg .yes{display:inline;}<br>.no-svg .no{display:inline;}<br>&lt;/style&gt;<br>&lt;/head&gt;<br>&lt;body&gt;<br>&lt;div&gt;<br>&lt;span class='yes'&gt;Huzzah! You have SVG support.&lt;/span&gt;<br>&lt;span class='no'&gt;BOO! You don't have SVG support.&lt;/span&gt;<br>&lt;/div&gt;<br>&lt;/body&gt;<br>&lt;/html&gt;</pre> <p>If you test this in a browser that supports SVG, you’ll see the message “Huzzah! You have SVG support.” whereas if you have a browser that fails to support SVG, you’ll find the “BOO! You don’t have SVG support.” message.</p> <p>This example is pretty rudimentary, but it displays the core idea of using Modernizr to fix cross browser issues. If we were doing this same fix using the old user agent method, we would have to have a style sheet for each browser that doesn’t support SVG and change our CSS for each one. (For anyone interested, the only major browsers lacking SVG support are Internet Explorer 7 and under.)</p> <p>By adding the svg/no-svg class to the html on the page, your CSS now has a selector that can be used to override existing CSS rules. Because it’s on the parent-most tag, it can used to override other classes on the page.</p> <p>So, in this case, both span tags are given display:none;. If there is no SVG support, the display:inline declaration on the span tag with the .no class overrides the display:hidden thanks to the no-svg rule on the html tag.</p> <p>Let’s try a more useful example of the same idea. We might want to have an SVG background image on the page, which falls back to a PNG if the browser doesn’t support SVG. By default we’ll use the PNG image. This way, the SVG isn’t served unless it’s needed and becomes a progressive enhancement.</p> <pre>&lt;!doctype html&gt;<br>&lt;html lang="en"&gt;<br>&lt;head&gt;<br>&lt;meta charset="utf-8"&gt;<br>&lt;script type="text/javascript" src="js/modernizr.min.js"&gt;&lt;/script&gt;<br>&lt;style type="text/css"&gt;<br>.skull{<br>width:300px;<br>height:300px;<br>background-image:url(images/skull.png);<br>background-size:100% auto;<br>background-repeat: no-repeat;<br>}<br>.svg .skull{background-image:url(images/skull.svg);}<br>&lt;/style&gt;<br>&lt;/head&gt;<br>&lt;body&gt;<br>&lt;div class='skull'&gt;&lt;/div&gt;<br>&lt;/body&gt;<br>&lt;/html&gt;</pre> <p>Now we have an awesome SVG skull that will look awesome and crisp for users with high-resolution displays, and still look good for users with older browsers.</p> <p> </p> <h1>Summary</h1> <p>There is a great wealth of information to be learned about Modernizr. We showed you how it does the work of cross-browser capability without having to remember or maintain a running list of which browsers support SVG.</p> <p>It functions exceptionally as a system with which to serve your user actuators to create speedy and highly functional websites.</p> <p> </p> <p><em><strong>Do you use Modernizr in your projects? What other methods have you used for serving responsive content? Let us know in the comments.</strong></em></p> <p><em>Featured image/thumbnail, <a href="http://www.shutterstock.com/pic-72832432/stock-photo-acceleration-of-the-motion-on-the-night-road.html" rel="nofollow external" class="bo">divergent lines image</a> via Shutterstock.</em></p> <p><br><br> </p>
    <table width="100%"> <tbody>
    <tr> <td> <a href="http://www.mightydeals.com/deal/macdojo.html?ref=inwidget" rel="nofollow external" class="bo"><strong>MacDojo’s Mac Shortcuts Pro Course – only $27!</strong></a> </td> <td> <a href="http://www.mightydeals.com/?ref=inwidget" rel="nofollow external" class="bo"><br> <img src="http://mightydeals.com/web/images/widget-logo.png" height="40" width="90" alt="Master responsive design with Modernizr" style="max-width: 100%; height: auto;"><br> </a> </td> </tr> </tbody>
    </table> <p><br> </p> <a href="http://www.webdesignerdepot.com/2013/10/master-responsive-design-with-modernizr/" rel="nofollow external" class="bo">Source</a> <br><div><table border="0"><tbody><tr><td>
    <a href="http://share.feedsportal.com/share/twitter/?u=http%3A%2F%2Fwww.webdesignerdepot.com%2F2013%2F10%2Fmaster-responsive-design-with-modernizr%2F&amp;t=Master+responsive+design+with+Modernizr" rel="nofollow external" class="bo"><img src="http://res3.feedsportal.com/social/twitter.png" style="max-width: 100%; height: auto;"></a> <a href="http://share.feedsportal.com/share/facebook/?u=http%3A%2F%2Fwww.webdesignerdepot.com%2F2013%2F10%2Fmaster-responsive-design-with-modernizr%2F&amp;t=Master+responsive+design+with+Modernizr" rel="nofollow external" class="bo"><img src="http://res3.feedsportal.com/social/facebook.png" style="max-width: 100%; height: auto;"></a> <a href="http://share.feedsportal.com/share/linkedin/?u=http%3A%2F%2Fwww.webdesignerdepot.com%2F2013%2F10%2Fmaster-responsive-design-with-modernizr%2F&amp;t=Master+responsive+design+with+Modernizr" rel="nofollow external" class="bo"><img src="http://res3.feedsportal.com/social/linkedin.png" style="max-width: 100%; height: auto;"></a> <a href="http://share.feedsportal.com/share/gplus/?u=http%3A%2F%2Fwww.webdesignerdepot.com%2F2013%2F10%2Fmaster-responsive-design-with-modernizr%2F&amp;t=Master+responsive+design+with+Modernizr" rel="nofollow external" class="bo"><img src="http://res3.feedsportal.com/social/googleplus.png" style="max-width: 100%; height: auto;"></a> <a href="http://share.feedsportal.com/share/email/?u=http%3A%2F%2Fwww.webdesignerdepot.com%2F2013%2F10%2Fmaster-responsive-design-with-modernizr%2F&amp;t=Master+responsive+design+with+Modernizr" rel="nofollow external" class="bo"><img src="http://res3.feedsportal.com/social/email.png" style="max-width: 100%; height: auto;"></a>
    </td></tr></tbody></table></div>
    <br><br><a href="http://da.feedsportal.com/r/176969087174/u/49/f/661066/c/35285/s/32b62fc2/a2.htm" rel="nofollow external" class="bo"><img src="http://da.feedsportal.com/r/176969087174/u/49/f/661066/c/35285/s/32b62fc2/a2.img" style="max-width: 100%; height: auto;"></a>
    </div>
]]>
</Body>
<Summary>As you know, there is a lot more to building responsive websites than width. You need sensors that give you feedback to adjust sites based on other factors.   The best way to improve our feedback...</Summary>
<Website>http://rss.feedsportal.com/c/35285/f/661066/s/32b62fc2/sc/4/l/0L0Swebdesignerdepot0N0C20A130C10A0Cmaster0Eresponsive0Edesign0Ewith0Emodernizr0C/story01.htm</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/37248/guest@my.umbc.edu/c0d25690b1b58fcd77ddea972c357ede/api/pixel</TrackingUrl>
<Tag>art</Tag>
<Tag>browser-detection</Tag>
<Tag>css</Tag>
<Tag>design</Tag>
<Tag>development</Tag>
<Tag>html</Tag>
<Tag>html5</Tag>
<Tag>illustrator</Tag>
<Tag>javascript</Tag>
<Tag>mysql</Tag>
<Tag>oracle</Tag>
<Tag>photoshop</Tag>
<Tag>php</Tag>
<Tag>responsive-content</Tag>
<Tag>responsive-design</Tag>
<Tag>responsive-web-design</Tag>
<Tag>sql</Tag>
<Tag>using-modernizr</Tag>
<Tag>using-svg</Tag>
<Tag>web-development</Tag>
<Group token="retired-583">Web Developer - Build Group</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/retired-583</GroupUrl>
<AvatarUrl>https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xsmall.png?1363101197</AvatarUrl>
<AvatarUrl size="original">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/original.jpg?1363101197</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xxlarge.png?1363101197</AvatarUrl>
<AvatarUrl size="xlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xlarge.png?1363101197</AvatarUrl>
<AvatarUrl size="large">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/large.png?1363101197</AvatarUrl>
<AvatarUrl size="medium">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/medium.png?1363101197</AvatarUrl>
<AvatarUrl size="small">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/small.png?1363101197</AvatarUrl>
<AvatarUrl size="xsmall">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xsmall.png?1363101197</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xxsmall.png?1363101197</AvatarUrl>
<Sponsor>Web Developer - Build Group</Sponsor>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>true</CommentsAllowed>
<PostedAt>Mon, 21 Oct 2013 06:15:37 -0400</PostedAt>
<EditAt>Mon, 21 Oct 2013 06:15:37 -0400</EditAt>
</NewsItem>

<NewsItem contentIssues="true" id="37261" important="false" status="posted" url="https://my3.my.umbc.edu/posts/37261">
<Title>Coordinates: The Umbilical Link of Man to Robot</Title>
<Body>
<![CDATA[
    <div class="html-content">A December contest held by a Pentagon agency will show how far technology has come, and how far it has to go to catch up to sci-fi movie depictions.<br><div><table border="0"><tbody><tr><td>
    <a href="http://share.feedsportal.com/share/twitter/?u=http%3A%2F%2Fwww.nytimes.com%2F2013%2F10%2F22%2Fscience%2Frobot-games-a-challenge-for-the-machines-and-the-controllers.html%3Fpartner%3Drss%26emc%3Drss&amp;t=Coordinates%3A+The+Umbilical+Link+of+Man+to+Robot" rel="nofollow external" class="bo"><img src="http://res3.feedsportal.com/social/twitter.png" style="max-width: 100%; height: auto;"></a> <a href="http://share.feedsportal.com/share/facebook/?u=http%3A%2F%2Fwww.nytimes.com%2F2013%2F10%2F22%2Fscience%2Frobot-games-a-challenge-for-the-machines-and-the-controllers.html%3Fpartner%3Drss%26emc%3Drss&amp;t=Coordinates%3A+The+Umbilical+Link+of+Man+to+Robot" rel="nofollow external" class="bo"><img src="http://res3.feedsportal.com/social/facebook.png" style="max-width: 100%; height: auto;"></a> <a href="http://share.feedsportal.com/share/linkedin/?u=http%3A%2F%2Fwww.nytimes.com%2F2013%2F10%2F22%2Fscience%2Frobot-games-a-challenge-for-the-machines-and-the-controllers.html%3Fpartner%3Drss%26emc%3Drss&amp;t=Coordinates%3A+The+Umbilical+Link+of+Man+to+Robot" rel="nofollow external" class="bo"><img src="http://res3.feedsportal.com/social/linkedin.png" style="max-width: 100%; height: auto;"></a> <a href="http://share.feedsportal.com/share/gplus/?u=http%3A%2F%2Fwww.nytimes.com%2F2013%2F10%2F22%2Fscience%2Frobot-games-a-challenge-for-the-machines-and-the-controllers.html%3Fpartner%3Drss%26emc%3Drss&amp;t=Coordinates%3A+The+Umbilical+Link+of+Man+to+Robot" rel="nofollow external" class="bo"><img src="http://res3.feedsportal.com/social/googleplus.png" style="max-width: 100%; height: auto;"></a> <a href="http://share.feedsportal.com/share/email/?u=http%3A%2F%2Fwww.nytimes.com%2F2013%2F10%2F22%2Fscience%2Frobot-games-a-challenge-for-the-machines-and-the-controllers.html%3Fpartner%3Drss%26emc%3Drss&amp;t=Coordinates%3A+The+Umbilical+Link+of+Man+to+Robot" rel="nofollow external" class="bo"><img src="http://res3.feedsportal.com/social/email.png" style="max-width: 100%; height: auto;"></a>
    </td></tr></tbody></table></div>
    </div>
]]>
</Body>
<Summary>A December contest held by a Pentagon agency will show how far technology has come, and how far it has to go to catch up to sci-fi movie depictions.      </Summary>
<Website>http://www.nytimes.com/2013/10/22/science/robot-games-a-challenge-for-the-machines-and-the-controllers.html?partner=rss&amp;emc=rss</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/37261/guest@my.umbc.edu/c776645d94e1fbf027b8098ca0a25b08/api/pixel</TrackingUrl>
<Tag>atlas-robot</Tag>
<Tag>defense-advanced-research-projects-agency</Tag>
<Tag>honda-motor-co-ltd-hmc-nyse</Tag>
<Tag>new</Tag>
<Tag>research</Tag>
<Tag>robots-and-robotics</Tag>
<Tag>technology</Tag>
<Tag>york</Tag>
<Group token="retired-583">Web Developer - Build Group</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/retired-583</GroupUrl>
<AvatarUrl>https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xsmall.png?1363101197</AvatarUrl>
<AvatarUrl size="original">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/original.jpg?1363101197</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xxlarge.png?1363101197</AvatarUrl>
<AvatarUrl size="xlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xlarge.png?1363101197</AvatarUrl>
<AvatarUrl size="large">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/large.png?1363101197</AvatarUrl>
<AvatarUrl size="medium">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/medium.png?1363101197</AvatarUrl>
<AvatarUrl size="small">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/small.png?1363101197</AvatarUrl>
<AvatarUrl size="xsmall">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xsmall.png?1363101197</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xxsmall.png?1363101197</AvatarUrl>
<Sponsor>Web Developer - Build Group</Sponsor>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>true</CommentsAllowed>
<PostedAt>Mon, 21 Oct 2013 06:00:11 -0400</PostedAt>
<EditAt>Mon, 21 Oct 2013 06:00:11 -0400</EditAt>
</NewsItem>

<NewsItem contentIssues="true" id="37247" important="false" status="posted" url="https://my3.my.umbc.edu/posts/37247">
<Title>Challenging CSS Best Practices</Title>
<Body>
<![CDATA[
    <div class="html-content">
    <table width="650">
    <tbody>
    <tr>
    <td>
    <div>
    <img src="http://statisches.auslieferung.commindo-media-ressourcen.de/advertisement.gif" alt="" style="max-width: 100%; height: auto;"><br><a href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=1" rel="nofollow external" class="bo"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=1" alt="" style="max-width: 100%; height: auto;"></a> <a href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=2" rel="nofollow external" class="bo"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=2" alt="" style="max-width: 100%; height: auto;"></a> <a href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=3" rel="nofollow external" class="bo"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=3" alt="" style="max-width: 100%; height: auto;"></a>
    </div>
    </td>
    </tr>
    </tbody>
    </table>
    <p><em><strong>Editor’s Note</strong>: This article features techniques that are used in practice by Yahoo! and question coding techniques that we are used to today. You might be interested in reading <a href="http://coding.smashingmagazine.com/2012/04/20/decoupling-html-from-css/" rel="nofollow external" class="bo">Decoupling HTML From CSS</a> by Jonathan Snook, <a href="http://nefariousdesigns.co.uk/on-html-element-identifiers.html" rel="nofollow external" class="bo">On HTML Elements Identifiers</a> by Tim Huegdon and <a href="http://coding.smashingmagazine.com/2013/08/02/other-interface-atomic-design-sass/" rel="nofollow external" class="bo">Atomic Design With Sass</a> by Robin Rendle as well. Please keep in mind: some of the mentioned techniques are not considered to be best practices.</em></p>
    <p>When it comes to CSS, I believe that the sacred principle of “<a href="http://en.wikipedia.org/wiki/Separation_of_concerns" rel="nofollow external" class="bo">separation of concerns</a>” (SoC) has lead us to accept <strong>bloat, obsolescence, redundancy, poor caching</strong> and more. Now, I’m convinced that the only way to improve how we author style sheets is by moving away from this principle.</p>
    <p>For those of you who have never heard of the SoC principle in the context of Web design, it relates to something commonly known as the “separation of the three layers”:</p>
    <ul>
    <li>structure,</li>
    <li>presentation,</li>
    <li>behavior.</li>
    </ul>
    <p>It is about dividing these concerns into separate resources: an HTML document, one or more cascading style sheets and one or more JavaScript files.</p>
    <p>But when it comes to the presentational layer, “best practice” goes way beyond the separation of resources. CSS authors thrive on styling documents entirely through style sheets, an approach that has been sanctified by <a href="http://www.mezzoblue.com/" rel="nofollow external" class="bo">Dave Shea</a>’s excellent project <a href="http://www.csszengarden.com/" rel="nofollow external" class="bo">CSS Zen Garden</a>. CSS Zen Garden is what most — if not all — developers consider to be the <strong>standard</strong> for how to author style sheets.</p>
    <h3>The Standard</h3>
    <p>To help me illustrate issues related to today’s best practices, I’ll use a very common pattern: the <a href="http://www.stubbornella.org/content/2010/06/25/the-media-object-saves-hundreds-of-lines-of-code/" rel="nofollow external" class="bo">media object</a>. Its combination of markup and CSS will be our starting point.</p>
    <h4>Markup</h4>
    <p>In our markup, a wrapper (<code>div.media</code>) contains an image wrapped in a link (<code>a.img</code>), followed by a div (<code>div.bd</code>):</p>
    <pre><code>&#x000A;    &lt;div class="media"&gt;&#x000A;      &lt;a href="<a href="http://twitter.com/thierrykoblentz">http://twitter.com/thierrykoblentz</a>" class="img"&gt;&#x000A;            &lt;img src="thierry.jpg" alt="me" width="40" /&gt;&#x000A;      &lt;/a&gt;&#x000A;      &lt;div class="bd"&gt;&#x000A;        @thierrykoblentz 14 minutes ago&#x000A;      &lt;/div&gt;&#x000A;    &lt;/div&gt;&#x000A;    </code></pre>
    <h4>CSS</h4>
    <p>Let’s give a 10-pixel margin to the wrapper and style both the wrapper and <code>div.bd</code> as <a href="http://www.yuiblog.com/blog/2010/05/19/css-101-block-formatting-contexts/" rel="nofollow external" class="bo">block-formatting contexts</a> (BFC). In other words, <strong>the wrapper will contain the floated link</strong>, and the content of <code>div.bd</code> will not wrap around said link. A gutter between the image and text is created with a 10-pixel margin (on the float):</p>
    <pre><code>&#x000A;    .media {&#x000A;        margin: 10px;&#x000A;    }&#x000A;    .media,&#x000A;    .bd {&#x000A;        overflow: hidden;&#x000A;        _overflow: visible;&#x000A;        zoom: 1;&#x000A;    }&#x000A;    .media .img {&#x000A;        float: left;&#x000A;        margin-right: 10px;&#x000A;    }&#x000A;    .media .img img {&#x000A;        display: block;&#x000A;    }&#x000A;    </code></pre>
    <h4>Result</h4>
    <p>Here is the presentation of the wrapper, with the image in the link and the blob of text:</p>
    <div>
    <div>
          <a href="http://twitter.com/thierrykoblentz" rel="nofollow external" class="bo"><br>
            <img width="40" src="http://0.gravatar.com/avatar/a1c5c36dfde41ff8c4a92c94180b2dbf?s=78&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D78&amp;r=G" alt="me" style="max-width: 100%; height: auto;"><br>
          </a>
    <div>
            @thierrykoblentz 14 minutes ago
          </div>
    </div>
    </div>
    <h4>A New Requirement Comes In</h4>
    <p>Suppose we now need to be able to display the image on the other side of the text as well.</p>
    <h4>Markup</h4>
    <p>Thanks to the magic of BFC, all we need to do is change the styles of the link. For this, we use a new class, <code>imgExt</code>.</p>
    <pre><code>&#x000A;    &lt;div class="media"&gt;&#x000A;        &lt;a href="<a href="http://twitter.com/thierrykoblentz">http://twitter.com/thierrykoblentz</a>" class="imgExt"&gt;&#x000A;            &lt;img src="thierry.jpg" alt="me" width="40" /&gt;&#x000A;      &lt;/a&gt;&#x000A;      &lt;div class="bd"&gt;&#x000A;        @thierrykoblentz 14 minutes ago&#x000A;      &lt;/div&gt;&#x000A;    &lt;/div&gt;&#x000A;    </code></pre>
    <h4>CSS</h4>
    <p>We’ll add an extra rule to float the link to the right and change its margin:</p>
    <pre><code>&#x000A;    .media {&#x000A;        margin: 10px;&#x000A;    }&#x000A;    .media,&#x000A;    .bd {&#x000A;        overflow: hidden;&#x000A;        _overflow: visible;&#x000A;        zoom: 1;&#x000A;    }&#x000A;    .media .img {&#x000A;        float: left;&#x000A;        margin-right: 10px;&#x000A;    }&#x000A;    .media .img img {&#x000A;        display: block;&#x000A;    }&#x000A;    .media .imgExt {&#x000A;        float: right;&#x000A;        margin-left: 10px;&#x000A;    }&#x000A;    </code></pre>
    <h4>Result</h4>
    <p>The image is now displayed on the opposite side:</p>
    <div>
    <div>
            <a href="http://twitter.com/thierrykoblentz" rel="nofollow external" class="bo"><br>
                <img width="40" src="http://0.gravatar.com/avatar/a1c5c36dfde41ff8c4a92c94180b2dbf?s=78&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D78&amp;r=G" alt="me" style="max-width: 100%; height: auto;"><br>
            </a>
    <div>@thierrykoblentz 14 minutes ago</div>
    </div>
    </div>
    <h4>One More Requirement Comes In</h4>
    <p>Suppose we now need to make the text smaller when this module is inside the right rail of the page. To do that, we create a new rule, using <code>#rightRail</code> as a contextual selector:</p>
    <h4>Markup</h4>
    <p>Our module is now inside a <code>div#rightRail</code> container:</p>
    <pre><code>&#x000A;    &lt;div id="rightRail"&gt;&#x000A;        &lt;div class="media"&gt;&#x000A;            &lt;a href="<a href="http://twitter.com/thierrykoblentz">http://twitter.com/thierrykoblentz</a>" class="img"&gt;&#x000A;                &lt;img src="thierry.jpg" alt="me" width="40" /&gt;&#x000A;            &lt;/a&gt;&#x000A;            &lt;div class="bd"&gt;&#x000A;                @thierrykoblentz 14 minutes ago&#x000A;            &lt;/div&gt;&#x000A;        &lt;/div&gt;&#x000A;    &lt;/div&gt;&#x000A;    </code></pre>
    <h4>CSS</h4>
    <p>Again, we create an extra rule, this time using a descendant selector, <code>#rightRail .bd</code>.</p>
    <pre><code>&#x000A;    .media {&#x000A;        margin: 10px;&#x000A;    }&#x000A;    .media,&#x000A;    .bd {&#x000A;        overflow: hidden;&#x000A;        _overflow: visible;&#x000A;        zoom: 1;&#x000A;    }&#x000A;    .media .img {&#x000A;        float: left;&#x000A;        margin-right: 10px;&#x000A;    }&#x000A;    .media .img img {&#x000A;        display: block;&#x000A;    }&#x000A;    .media .imgExt {&#x000A;        float: right;&#x000A;        margin-left: 10px;&#x000A;    }&#x000A;    #rightRail .bd {&#x000A;        font-size: smaller;&#x000A;    }&#x000A;    </code></pre>
    <h4>Result</h4>
    <p>Here is our original module, showing inside <code>div#rightRail</code>:</p>
    <div>
    <div>
    <div>
              <a href="http://twitter.com/thierrykoblentz" rel="nofollow external" class="bo"><br>
                <img width="40" src="http://0.gravatar.com/avatar/a1c5c36dfde41ff8c4a92c94180b2dbf?s=78&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D78&amp;r=G" alt="me" style="max-width: 100%; height: auto;"><br>
              </a>
    <div>
                @thierrykoblentz 14 minutes ago
              </div>
    </div>
    </div>
    </div>
    <h3>What’s Wrong With This Model?</h3>
    <ul>
    <li>
    <strong>Simple changes to the style of our module have resulted in new rules in the style sheet.</strong><br>
    There must be a way to style things without <em>always</em> having to write more CSS rules.</li>
    <li>
    <strong>We are grouping selectors for common styles (<code>.media,.bd {}</code>).</strong><br>
    Grouping selectors, rather than using a class associated with these styles, will lead to more CSS.</li>
    <li>
    <strong>Of our six rules, four are context-based.</strong><br>
    Rules that are context-specific are hard to maintain. Styles related to such rules are not very reusable.</li>
    <li>
    <strong>RTL and LTR interfaces become complicated.</strong><br>
    To change direction, we’d need to overwrite some of our styles (i.e. write <em>more</em> rules). For example:</li>
    </ul>
    <pre><code>&#x000A;    .rtl .media .img {&#x000A;        margin-right: auto; /* reset */&#x000A;        float: right;&#x000A;        margin-left: 10px;&#x000A;    }&#x000A;    .rtl .media .imgExt {&#x000A;        margin-left: auto; /* reset */&#x000A;        float: left;&#x000A;        margin-right: 10px;&#x000A;    }&#x000A;    </code></pre>
    
    <h3>Meet Atomic Cascading Style Sheet</h3>
    <blockquote>
    <dl>
    <dt><a href="https://www.google.com/search?q=define%3A+atomic" rel="nofollow external" class="bo">a·tom·ic</a></dt>
    <dd>/ə’tämik/</dd>
    <dd><em>of or forming a single irreducible unit or component in a larger system.</em></dd>
    </dl>
    </blockquote>
    <p>As we all know, the smaller the unit, the more reusable it is.</p>
    <blockquote>
    <p>“Treat code like Lego. Break code into the smallest little blocks possible.” — <a href="https://twitter.com/csswizardry" rel="nofollow external" class="bo">@csswizardry</a> (via <a href="https://twitter.com/stubbornella" rel="nofollow external" class="bo">@stubbornella</a>) <a href="https://twitter.com/search?q=%23btconf&amp;src=hash" rel="nofollow external" class="bo">#btconf</a></p>
    <p>— Smashing Magazine (@smashingmag) <a href="https://twitter.com/smashingmag/statuses/339024926197559296" rel="nofollow external" class="bo">May 27, 2013</a></p>
    </blockquote>
    <p></p>
    <p>To break down styles into irreducible units, we can <strong>map classes to a single style</strong>, rather than many. This will result in a more granular palette of rules, which in turn improves reusability.</p>
    <p>Let’s revisit the media object using this new approach.</p>
    <h4>Markup</h4>
    <p>We are using five classes, none of which are related to content:</p>
    <pre><code>&#x000A;    &lt;div class="Bfc M-10"&gt;&#x000A;        &lt;a href="<a href="http://twitter.com/thierrykoblentz">http://twitter.com/thierrykoblentz</a>" class="Fl-start Mend-10"&gt;&#x000A;            &lt;img src="thierry.jpg" alt="me" width="40" /&gt;&#x000A;        &lt;/a&gt;&#x000A;        &lt;div class="Bfc Fz-s"&gt;&#x000A;            @thierrykoblentz 14 minutes ago&#x000A;        &lt;/div&gt;&#x000A;    &lt;/div&gt;&#x000A;    </code></pre>
    <h4>CSS</h4>
    <p>Each class is associated with one particular style. For the most part, this means we have one declaration per rule.</p>
    <pre><code>&#x000A;    .Bfc {&#x000A;        overflow: hidden;&#x000A;        zoom: 1;&#x000A;    }&#x000A;    .M-10 {&#x000A;        margin: 10px;&#x000A;    }&#x000A;    .Fl-start {&#x000A;        float: left;&#x000A;    }&#x000A;    .Mend-10 {&#x000A;        margin-right: 10px;&#x000A;    }&#x000A;    .Fz-s {&#x000A;        font-size: smaller;&#x000A;    }&#x000A;    </code></pre>
    <h4>Result</h4>
    <div>
    <div>
          <a href="http://twitter.com/thierrykoblentz" rel="nofollow external" class="bo"><br>
            <img src="http://0.gravatar.com/avatar/a1c5c36dfde41ff8c4a92c94180b2dbf?s=78&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D78&amp;r=G" alt="me" width="40" style="max-width: 100%; height: auto;"><br>
          </a>
    <div>
            @thierrykoblentz 14 minutes ago
          </div>
    </div>
    </div>
    <h4>What Is This about?</h4>
    <p>Let’s ignore the class names for now and focus on what this does (or does not):</p>
    <ul>
    <li>
    <strong>No contextual styling</strong><br>
    We do not use contextual or descendant selectors, which means that our style sheet has no dead weight.</li>
    <li>
    <strong>Directions (left and right) are “abstracted.”</strong><br>
    Rather than overwriting styles, we serve a RTL style sheet that contains rules such as these:</li>
    </ul>
    <pre><code>&#x000A;    .Fl-start {&#x000A;        float: right;&#x000A;    }&#x000A;    .Mend-10 {&#x000A;        margin-left: 10px;&#x000A;    }&#x000A;    </code></pre>
    <p>Same classes, same properties, different values.</p>
    <p>But the most important thing to notice here is that <strong>we are styling via markup</strong>. We have changed the context in which we style our modules. We are now editing HTML templates instead of style sheets.</p>
    <p>I believe that this approach is a game-changer because it <strong>narrows the scope dramatically</strong>. We are styling not in the global scope (the style sheet), but at the module and block level. We can change the style of a module without worrying about breaking something else on the page. And we can do this without adding any rule to the style sheet, let alone creating a new class and rule:</p>
    <pre><code>&#x000A;    .someBasicStyleForThisElementHere {...}&#x000A;    </code></pre>
    <p>We get no redundancy. Selectors are not duplicated, and styles belong to a single rule instead of being part of many. For example, the style sheets that this page links to contain 72 <code>float</code> declarations.</p>
    <p>Also, abandoning a style — for example, deciding to always keep the image on the left side of the module — does not make any of our rules obsolete.</p>
    <h4>Sound Good?</h4>
    <p>Not sold yet? I hear you saying, “This goes against every single rule in the book. This is no better than inline styling. And your class names are not only cryptic, but unsemantic, too!”</p>
    <p>Fair enough. Let’s address these concerns.</p>
    <h4>Regarding Unsemantic Class Names</h4>
    <p>If you check the W3C’s “<a href="http://www.w3.org/QA/Tips/goodclassnames" rel="nofollow external" class="bo">Tips for Webmasters</a>,” where it says “Good names don’t change,” you’ll see that the argument is about <em>maintenance</em>, not semantics per se. All it says is that changing styles is easier in a CSS file than in multiple HTML files. <code>.border4px</code> would be a bad name only if changing the style of an element required us to change the declaration that that class name is associated with. In other words:</p>
    <pre><code>&#x000A;    .border4px {border-width:2px;}&#x000A;    </code></pre>
    <h4>Regarding Cryptic Class Names</h4>
    <p>For the most part, these class names follow the syntax of Zen Coding — see the “<a title="Zen coding cheat sheet (PDF)" href="https://zen-coding.googlecode.com/files/ZenCodingCheatSheet.pdf" rel="nofollow external" class="bo">Zen Coding Cheat Sheet</a>” (PDF) — now renamed <a href="http://docs.emmet.io/cheat-sheet/" rel="nofollow external" class="bo">Emmet</a>. In other words, they are simple abbreviations.</p>
    <p>There are exceptions for styles associated with direction (left and right) and styles that involve a combination of declarations. For example, <code>Bfc</code> stands for “block-formatting context.”</p>
    <h4>Regarding Mimicking Inline Styles</h4>
    <p>Hopefully, the diagram below clears things up:</p>
    <p><a href="http://media.smashingmagazine.com/wp-content/uploads/2013/10/venn-diagram_mini.png" rel="nofollow external" class="bo"><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/10/venn-diagram_500_mini.png" alt="Venn diagram that shows all possible logical relations between inline styles and styling via classes and markup." width="500" height="327" style="max-width: 100%; height: auto;"></a><br>
    <em>Inline styles versus Atomic CSS.</em></p>
    <ul>
    <li>
    <strong>Specificity</strong><br>
    The technique is not as specific as <code>@style</code>. It <strong>lowers style weight</strong> because rules rely on a single class, as opposed to rules like <code>.parent .bd {}</code>, which clocks in at 0.0.2.0 (see “<a href="http://coding.smashingmagazine.com/2007/07/27/css-specificity-things-you-should-know/" rel="nofollow external" class="bo">CSS Specificity: Things You Should Know</a>”).</li>
    <li>
    <strong>Verbosity</strong><br>
    Most classes are abbreviations of declarations (for example, <code>M-10</code> versus <code>margin: 10px</code>). Some classes, such as <code>Bfc</code>, refer to more than one style (see “Mapping” in the diagram above). Other classes use “start” and “end” keywords, rather than left and right values (see “Abstraction” in the diagram above).</li>
    </ul>
    <p>Here are the advantages of <code>@style</code>:</p>
    <ul>
    <li>
    <strong>Scope</strong><br>
    Styles are “sandboxed” to the nodes they are attached to.</li>
    <li>
    <strong>Portability</strong><br>
    Because the styles are “encapsulated,” you can move modules around without losing their styles. Of course, we still need the style sheet; however, because we are making context irrelevant, modules can live anywhere on a page, website or even network.</li>
    </ul>
    <h3>The Path To Bloat</h3>
    <p>Because the styles of our module are tied only to presentational class names, <strong>they can be anything we want them to be</strong>. For example, if we need to create a simple two-column layout, all we need to do is replace the link with a <code>div</code> in our template. That would look like this:</p>
    <pre><code>&#x000A;    &lt;div class="Bfc M-10"&gt;&#x000A;        &lt;div class="Fl-start Mend-10 W-25"&gt;&#x000A;            column 1&#x000A;        &lt;/div&gt;&#x000A;        &lt;div class="Bfc"&gt;&#x000A;            column 2&#x000A;        &lt;/div&gt;&#x000A;    &lt;/div&gt;&#x000A;    </code></pre>
    <p>And we would need only one extra rule in the style sheet:</p>
    <pre><code>&#x000A;    .Bfc {&#x000A;        overflow: hidden;&#x000A;        zoom: 1;&#x000A;    }&#x000A;    .M-10 {&#x000A;        margin: 10px;&#x000A;    }&#x000A;    .Fl-start {&#x000A;        float: left;&#x000A;    }&#x000A;    .Mend-10 {&#x000A;        margin-right: 10px;&#x000A;    }&#x000A;    .Fz-s {&#x000A;        font-size: smaller;&#x000A;    }&#x000A;    .W-50 {&#x000A;        width: 50%;&#x000A;    }&#x000A;    </code></pre>
    <p>Compare this to the traditional way:</p>
    <pre><code>&#x000A;    &lt;div class="wrapper"&gt;&#x000A;        &lt;div class="sidebar"&gt;&#x000A;            column 1&#x000A;        &lt;/div&gt;&#x000A;        &lt;div class="content"&gt;&#x000A;            sidebar&#x000A;        &lt;/div&gt;&#x000A;    &lt;/div&gt;&#x000A;    </code></pre>
    <p>This would require us to create three new classes, to add an extra rule and to group selectors.</p>
    <pre><code>&#x000A;    .wrapper,&#x000A;    .content,&#x000A;    .media,&#x000A;    .bd {&#x000A;        overflow: hidden;&#x000A;        _overflow: visible;&#x000A;        zoom: 1;&#x000A;    }&#x000A;    .sidebar {&#x000A;        width: 50%;&#x000A;    }&#x000A;    .sidebar,&#x000A;    .media .img {&#x000A;        float: left;&#x000A;        margin-right: 10px;&#x000A;    }&#x000A;    .media .img img {&#x000A;        display: block;&#x000A;    }&#x000A;    </code></pre>
    <p>I think the code above pretty well demonstrates the price we pay for following the SoC principle. In my experience, all it does is grow style sheets.</p>
    <p>Moreover, the larger the files, the more complex the rules and selectors become. And then no one would dare edit the existing rules:</p>
    <ul>
    <li>We leave alone rules that we suspect to be obsolete for fear of breaking something.</li>
    <li>We create new rules, rather than modify existing ones, because we are not sure the latter is 100% safe.</li>
    </ul>
    <p>In other words, we make things worse because <strong>we can get away with bloat</strong>.</p>
    <p>Nowadays, people are accustomed to very large style sheets, and many authors think they come with the territory. Rather than fighting bloat, they use tools (i.e. preprocessors) to help them deal with it. <a href="http://chriseppstein.github.io/blog/2013/04/22/joining-linkedin/" rel="nofollow external" class="bo">Chris Eppstein tells us</a>:</p>
    <blockquote>
    <p>“LinkedIn has over 1,100 Sass files (230k lines of SCSS) and over 90 web developers writing Sass every day.”</p>
    </blockquote>
    <h4>CSS Bloat vs. HTML Bloat</h4>
    <p>Let’s face it: the data has to live somewhere. Consider these two blocks:</p>
    <pre><code>&#x000A;    &lt;div class="sidebar"&gt;&#x000A;    </code></pre>
    <pre><code>&#x000A;    &lt;div class="Fl-start Mend-10 W-25"&gt;&#x000A;    </code></pre>
    <p>In many cases, the “semantic” class name makes up more bytes than the presentational class name (<code>.wrapper</code> versus <code>.Bfc</code>). But I do not think this is a real concern compared to what most apps onboard these days via <code>data-</code> attributes.</p>
    <p>This is where <a title="A compression utility" href="http://www.gzip.org/" rel="nofollow external" class="bo">gzip</a> comes into play, because the high redundancy in class names across a document would achieve better compression. And the same is true of style sheets, in which we have many redundant sequences:</p>
    <pre><code>&#x000A;    .M-1 {margin: 1px;}&#x000A;    .M-2 {margin: 2px;}&#x000A;    .M-4 {margin: 4px;}&#x000A;    .M-6 {margin: 6px;}&#x000A;    .M-8 {margin: 8px;}&#x000A;    etc.&#x000A;    </code></pre>
    <h3>Caching</h3>
    <p>Presentational rules <strong>do not change</strong>. Style sheets made from such rules mature into tool sets in which authors can find everything they need. By their nature, they stop growing and become <strong>immutable</strong>, and immutable is <strong>cache-friendly</strong>.</p>
    <h3>No More .button Class?</h3>
    <p>The technique I’m discussing here is not about banning “semantic” class names or rules that group many declarations. The idea is to reevaluate the benefits of the common approach, rather than adopting it as the <em>de facto</em> technique for styling Web pages. In other words, we are restricting the “component” approach to the few cases in which it makes the most sense.</p>
    <p>For example, you may find the following rules in our style sheets, rules that set styles for which we do not create simple classes or rules that ensure cross-browser support.</p>
    <pre><code>&#x000A;    .button {&#x000A;        display: inline-block;&#x000A;        *display: inline;&#x000A;        zoom: 1;&#x000A;        font-size: bold 16px/2em Arial;&#x000A;       	height: 2em;&#x000A;       	box-shadow: inset 1px 1px 2px 0px #fff;&#x000A;       	background: -webkit-gradient(linear, left top, left bottom, color-stop(0.05, #ededed), color-stop(1, #dfdfdf));&#x000A;       	background: linear-gradient(center top, #ededed 5%, #dfdfdf 100%);&#x000A;       	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed', endColorstr='#dfdfdf');&#x000A;       	background-color: #ededed;&#x000A;        color: #777;&#x000A;        text-decoration: none;&#x000A;       	text-align: center;&#x000A;       	text-shadow: 1px 1px 2px #ffffff;&#x000A;       	border-radius: 4px;&#x000A;       	border: 2px solid #dcdcdc;&#x000A;    }&#x000A;    .modal {&#x000A;        position: fixed;&#x000A;        top: 50%;&#x000A;        left: 50%;&#x000A;        -webkit-transform: translate(-50%,-50%);&#x000A;        -ms-transform: translate(-50%,-50%);&#x000A;        transform: translate(-50%,-50%);&#x000A;        *width: 600px;&#x000A;        *margin-left: -300px;&#x000A;        *top: 50px;&#x000A;    }&#x000A;    @media \0screen {&#x000A;        .modal {&#x000A;            width: 600px;&#x000A;            margin-left: -300px;&#x000A;            top: 50px;&#x000A;        }&#x000A;    }&#x000A;    </code></pre>
    <p>On the other hand, you would not see rules like the ones below (i.e. styles bound to particular modules), because we prefer to apply these same styles using multiple classes: one for font size, one for color, one for floats, etc.</p>
    <pre><code>&#x000A;    .news-module {&#x000A;        font-size: 14px;&#x000A;        color: #555;&#x000A;        float: left;&#x000A;        width: 50%;&#x000A;        padding: 10px;&#x000A;        margin-right: 10px;&#x000A;    }&#x000A;    .testimonial {&#x000A;        font-size: 16px;&#x000A;        font-style: italic;&#x000A;        color: #222;&#x000A;        padding: 10px;&#x000A;    }&#x000A;    </code></pre>
    <h3>Do We Include Every Possible Style In Our Style Sheet?</h3>
    <p>The idea is to have a pool of rules that authors can choose from to style anything they want. Styles that are common enough across a website would become part of the style sheet. If a style is too specific, then we’d rely on <code>@style</code> (the style attribute). In other words, we’d prefer to <strong>pollute the markup rather than the style sheet</strong>. The primary goal is to create a sheet made of rules that address various design patterns, from a basic rule that floats an element to “helper” classes.</p>
    <pre><code>&#x000A;    /**&#x000A;     * one liner with ellipsis&#x000A;     * 1. we inherit hyphens:auto from body, which would break "Ell" in table cells&#x000A;     */&#x000A;    .Ell {&#x000A;        max-width: 100%;&#x000A;        white-space: nowrap;&#x000A;        overflow: hidden;&#x000A;        text-overflow: ellipsis;&#x000A;        -webkit-hyphens: none; /* 1 */&#x000A;        -ms-hyphens: none;&#x000A;        -o-hyphens: none;&#x000A;        hyphens: none;&#x000A;    }&#x000A;    /**&#x000A;     * kinda line-clamp&#x000A;     * two lines according to default font-size and line-height&#x000A;     */&#x000A;    .LineClamp {&#x000A;        display: -webkit-box;&#x000A;        -webkit-line-clamp: 2;&#x000A;        -webkit-box-orient: vertical;&#x000A;        font-size: 13px;&#x000A;        line-height: 1.25;&#x000A;        max-height: 32px;&#x000A;        _height: 32px;&#x000A;        overflow: hidden;&#x000A;    }&#x000A;    /**&#x000A;     * reveals an hidden element on :hover or :focus&#x000A;     * visibility can be forced by applying the class "RevealNested-on"&#x000A;     * IE8+&#x000A;     */&#x000A;    :root .NestedHidden {&#x000A;        opacity: 0;&#x000A;    }&#x000A;    :root .NestedHidden:focus,&#x000A;    :root .RevealNested:hover .NestedHidden,&#x000A;    :root .RevealNested-on .NestedHidden {&#x000A;        opacity: 1;&#x000A;    }&#x000A;    </code></pre>
    <h3>How Does This Scale?</h3>
    <p>We have just released a brand new <a href="http://my.yahoo.com" rel="nofollow external" class="bo">My Yahoo</a>, which relies heavily on this technique. This is how it compares to a few other Yahoo products (after gzip’ing):</p>
    <table>
    <tbody>
    <tr>
    
    <th><strong>CSS Assets</strong></th>
    </tr>
    <tr>
    <td>answers.yahoo.com</td>
    <td>30.1 KB</td>
    </tr>
    <tr>
    <td>sports.yahoo.com</td>
    <td>67.4 KB</td>
    </tr>
    <tr>
    <td>omg.yahoo.com</td>
    <td>46.2 KB</td>
    </tr>
    <tr>
    <td>yahoo.com</td>
    <td>45.9 KB</td>
    </tr>
    <tr>
    <td>my.yahoo.com</td>
    <td>21.3 KB</td>
    </tr>
    </tbody>
    </table>
    <p>Our style sheet weighs 17.9 KB (about 3 KB of which are property-specific), and it is shareable (unlike the style sheets of other properties). The reason for this is that none of the rules it contains relate to content.</p>
    <h3>Wrapping Up</h3>
    <p>Because <strong>presentational class names have always been deemed “out of bounds</strong>,” we — the community — have not really investigated what their use entails. In fact, in the name of best practice, we’ve dismissed every opportunity to explore their potential benefits.</p>
    <p>Here at Yahoo, <a href="https://twitter.com/renatoiwa" rel="nofollow external" class="bo">@renatoiwa</a>, <a href="https://twitter.com/StevenRCarlson" rel="nofollow external" class="bo">@StevenRCarlson</a> and <a href="https://twitter.com/thierrykoblentz" rel="nofollow external" class="bo">I</a> are developing projects with this new <a href="http://engineering.appfolio.com/2012/11/16/css-architecture/" rel="nofollow external" class="bo">CSS architecture</a>. The code appears to be predictable, reusable, maintainable and scalable. These are the results we’ve experienced so far:</p>
    <ul>
    <li>
    <strong>Less bloat</strong><br>
    We can build entire modules without adding a single line to the style sheets.</li>
    <li>
    <strong>Faster development</strong><br>
    Styles are driven by classes that are not related to content, so we can copy and paste existing modules to get started.</li>
    <li>
    <strong>RTL interface for free</strong><br>
    Using start and end keywords makes a lot of sense. It saves us from having to write extra rules for RTL context.</li>
    <li>
    <strong>Better caching</strong><br>
    A huge chunk of CSS can be shared across products and properties.</li>
    <li>
    <strong>Very little maintenance (on the CSS side)</strong><br>
    Only a small set of rules are meant to change over time.</li>
    <li>
    <strong>Less abstraction</strong><br>
    There is no need to look for rules in a style sheet to figure out the styling of a template. It’s all in the markup.</li>
    <li>
    <strong>Third-party development</strong><br>
    A third party can hand us a template without having to attach a style sheet (or a <code>style</code> block) to it. No custom rules from third parties means no risk of breakage due to rules that have not been properly namespaced.</li>
    </ul>
    <p>(Note that if maintenance is easier on the CSS side than on the HTML side, then the reason is simply that we can cheat on the CSS side by not cleaning up rules. But if we were required to keep things lean and clean, then the pain would be the same.)</p>
    <h4>Final Note</h4>
    <p>I was at a <a href="http://www.meetup.com/sfhtml5/events/131694202/" rel="nofollow external" class="bo">meetup</a> a couple of weeks ago, where I heard Colt McAnlis say, “<a href="https://www.youtube.com/watch?v=OPBvdsFi7Ss&amp;feature=player_detailpage#t=11041" rel="nofollow external" class="bo">Tools, not rules</a>.” A quick search for this idiom <a href="http://notrulestools.com/Main_Page" rel="nofollow external" class="bo">returned this</a>:</p>
    <blockquote>
    <p>“We all need to be open to new learnings, new approaches, new best practices and we need to be able to share them.”</p>
    </blockquote>
    <p><em>(al, ea)</em></p>
    
    <hr>
    <p><small>© Thierry Koblentz for <a href="http://www.smashingmagazine.com" rel="nofollow external" class="bo">Smashing Magazine</a>, 2013.</small></p>
    </div>
]]>
</Body>
<Summary>        Editor’s Note: This article features techniques that are used in practice by Yahoo! and question coding techniques that we are used to today. You might be interested in reading Decoupling...</Summary>
<Website>http://www.smashingmagazine.com/2013/10/21/challenging-css-best-practices-atomic-approach/</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/37247/guest@my.umbc.edu/71ce32ffcfa89950fb3068533e93d7fb/api/pixel</TrackingUrl>
<Tag>coding</Tag>
<Tag>css</Tag>
<Tag>design</Tag>
<Tag>development</Tag>
<Tag>html</Tag>
<Tag>javascript</Tag>
<Tag>mysql</Tag>
<Tag>php</Tag>
<Tag>sql</Tag>
<Tag>web</Tag>
<Group token="retired-583">Web Developer - Build Group</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/retired-583</GroupUrl>
<AvatarUrl>https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xsmall.png?1363101197</AvatarUrl>
<AvatarUrl size="original">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/original.jpg?1363101197</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xxlarge.png?1363101197</AvatarUrl>
<AvatarUrl size="xlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xlarge.png?1363101197</AvatarUrl>
<AvatarUrl size="large">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/large.png?1363101197</AvatarUrl>
<AvatarUrl size="medium">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/medium.png?1363101197</AvatarUrl>
<AvatarUrl size="small">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/small.png?1363101197</AvatarUrl>
<AvatarUrl size="xsmall">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xsmall.png?1363101197</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xxsmall.png?1363101197</AvatarUrl>
<Sponsor>Web Developer - Build Group</Sponsor>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>true</CommentsAllowed>
<PostedAt>Mon, 21 Oct 2013 05:41:43 -0400</PostedAt>
<EditAt>Mon, 21 Oct 2013 05:41:43 -0400</EditAt>
</NewsItem>

<NewsItem contentIssues="false" id="37276" important="false" status="posted" url="https://my3.my.umbc.edu/posts/37276">
<Title>Schmidt Named America East Player of the Week; McIntyre Earns Setter of the Week for Third Time in 2013</Title>
<Body>
<![CDATA[
    <div class="html-content">CAMBRIDGE, Mass. � UMBC junior outside hitter Hannah Schmidt has been named the America East Player of the Week and senior Mallory McIntyre earned her third conference Setter of the Week award this season, the league office announced on Monday afternoon.</div>
]]>
</Body>
<Summary>CAMBRIDGE, Mass. � UMBC junior outside hitter Hannah Schmidt has been named the America East Player of the Week and senior Mallory McIntyre earned her third conference Setter of the Week award...</Summary>
<Website>http://www.umbcretrievers.com/release.asp?RELEASE_ID=8249</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/37276/guest@my.umbc.edu/4f615b7229cbc7cb9a01c33601e550a4/api/pixel</TrackingUrl>
<Group token="athletics">UMBC Athletics</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/athletics</GroupUrl>
<AvatarUrl>https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/xsmall.png?1709304849</AvatarUrl>
<AvatarUrl size="original">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/original.jpg?1709304849</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/xxlarge.png?1709304849</AvatarUrl>
<AvatarUrl size="xlarge">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/xlarge.png?1709304849</AvatarUrl>
<AvatarUrl size="large">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/large.png?1709304849</AvatarUrl>
<AvatarUrl size="medium">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/medium.png?1709304849</AvatarUrl>
<AvatarUrl size="small">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/small.png?1709304849</AvatarUrl>
<AvatarUrl size="xsmall">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/xsmall.png?1709304849</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/xxsmall.png?1709304849</AvatarUrl>
<Sponsor>UMBC Athletics</Sponsor>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>true</CommentsAllowed>
<PostedAt>Mon, 21 Oct 2013 01:00:00 -0400</PostedAt>
</NewsItem>

<NewsItem contentIssues="false" id="37274" important="false" status="posted" url="https://my3.my.umbc.edu/posts/37274">
<Title>Softball Newcomer Kathleen Sharp Receives NJCAA Award</Title>
<Body>
<![CDATA[
    <div class="html-content">UMBC softball head coach Joe French brought in a pair of transfers over the offseason, one of which, junior Kathleen Sharp received the 2012-13 John Stauff Female Scholar Athlete of the Year at the annual National Junior College Athletic Assocation Region XIX awards gala. The award is given to one female student-athlete that excels both in the classroom and on the playing surface.</div>
]]>
</Body>
<Summary>UMBC softball head coach Joe French brought in a pair of transfers over the offseason, one of which, junior Kathleen Sharp received the 2012-13 John Stauff Female Scholar Athlete of the Year at...</Summary>
<Website>http://www.umbcretrievers.com/release.asp?RELEASE_ID=8248</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/37274/guest@my.umbc.edu/55666adf76e01b7d80c77fde7b7a4cd5/api/pixel</TrackingUrl>
<Group token="athletics">UMBC Athletics</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/athletics</GroupUrl>
<AvatarUrl>https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/xsmall.png?1709304849</AvatarUrl>
<AvatarUrl size="original">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/original.jpg?1709304849</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/xxlarge.png?1709304849</AvatarUrl>
<AvatarUrl size="xlarge">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/xlarge.png?1709304849</AvatarUrl>
<AvatarUrl size="large">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/large.png?1709304849</AvatarUrl>
<AvatarUrl size="medium">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/medium.png?1709304849</AvatarUrl>
<AvatarUrl size="small">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/small.png?1709304849</AvatarUrl>
<AvatarUrl size="xsmall">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/xsmall.png?1709304849</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/xxsmall.png?1709304849</AvatarUrl>
<Sponsor>UMBC Athletics</Sponsor>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>true</CommentsAllowed>
<PostedAt>Mon, 21 Oct 2013 01:00:00 -0400</PostedAt>
</NewsItem>

<NewsItem contentIssues="false" id="37294" important="false" status="posted" url="https://my3.my.umbc.edu/posts/37294">
<Title>Women's Basketball Continues to be Active in the Community During the Fall</Title>
<Body>
<![CDATA[
    <div class="html-content">The UMBC women's basketball team continues to be active in the community during the fall as it gets ready for its 2013-14 campaign to get underway. The Retrievers made two stops at My Sister's Place over the past month and added a trip to Susan G. Komen Race for the Cure Maryland on Sunday morning. The squad will add in a "meet-and-greet" on Thursday, Oct. 24, where the team will join the UMBC men's basketball team for a reading night at the Arbutus Library from 7-8 p.m.</div>
]]>
</Body>
<Summary>The UMBC women's basketball team continues to be active in the community during the fall as it gets ready for its 2013-14 campaign to get underway. The Retrievers made two stops at My Sister's...</Summary>
<Website>http://www.umbcretrievers.com/release.asp?RELEASE_ID=8250</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/37294/guest@my.umbc.edu/25fbd002e57a48bfdee89be9158a95a1/api/pixel</TrackingUrl>
<Group token="athletics">UMBC Athletics</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/athletics</GroupUrl>
<AvatarUrl>https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/xsmall.png?1709304849</AvatarUrl>
<AvatarUrl size="original">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/original.jpg?1709304849</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/xxlarge.png?1709304849</AvatarUrl>
<AvatarUrl size="xlarge">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/xlarge.png?1709304849</AvatarUrl>
<AvatarUrl size="large">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/large.png?1709304849</AvatarUrl>
<AvatarUrl size="medium">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/medium.png?1709304849</AvatarUrl>
<AvatarUrl size="small">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/small.png?1709304849</AvatarUrl>
<AvatarUrl size="xsmall">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/xsmall.png?1709304849</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/xxsmall.png?1709304849</AvatarUrl>
<Sponsor>UMBC Athletics</Sponsor>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>true</CommentsAllowed>
<PostedAt>Mon, 21 Oct 2013 01:00:00 -0400</PostedAt>
</NewsItem>

<NewsItem contentIssues="false" id="37272" important="false" status="posted" url="https://my3.my.umbc.edu/posts/37272">
<Title>Women's Soccer Clinches Playoff Spot; Quaranta Named Player of the Week</Title>
<Body>
<![CDATA[
    <div class="html-content">Women's soccer sophomore forward Alexa Quaranta posted a seven-point week and helped the Retrievers to clinch a spot in the America East Championship for the first time since 2005 en route to being named the America East Player of the Week, as announced by the league office on Monday.</div>
]]>
</Body>
<Summary>Women's soccer sophomore forward Alexa Quaranta posted a seven-point week and helped the Retrievers to clinch a spot in the America East Championship for the first time since 2005 en route to...</Summary>
<Website>http://www.umbcretrievers.com/release.asp?RELEASE_ID=8247</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/37272/guest@my.umbc.edu/3fae4eed17eead2876c22cab86e8b56a/api/pixel</TrackingUrl>
<Group token="athletics">UMBC Athletics</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/athletics</GroupUrl>
<AvatarUrl>https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/xsmall.png?1709304849</AvatarUrl>
<AvatarUrl size="original">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/original.jpg?1709304849</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/xxlarge.png?1709304849</AvatarUrl>
<AvatarUrl size="xlarge">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/xlarge.png?1709304849</AvatarUrl>
<AvatarUrl size="large">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/large.png?1709304849</AvatarUrl>
<AvatarUrl size="medium">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/medium.png?1709304849</AvatarUrl>
<AvatarUrl size="small">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/small.png?1709304849</AvatarUrl>
<AvatarUrl size="xsmall">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/xsmall.png?1709304849</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/009/69595c9b99f609d75fbb8232d9bd73d3/xxsmall.png?1709304849</AvatarUrl>
<Sponsor>UMBC Athletics</Sponsor>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>true</CommentsAllowed>
<PostedAt>Mon, 21 Oct 2013 01:00:00 -0400</PostedAt>
</NewsItem>

<NewsItem contentIssues="true" id="37246" important="false" status="posted" url="https://my3.my.umbc.edu/posts/37246">
<Title>NSA stands for Not So Astute</Title>
<Body>
<![CDATA[
    <div class="html-content">
    <p><a href="http://usdemocrazy.net/wp-content/uploads/2013/10/national-security-agency-seal.jpg" rel="nofollow external" class="bo"><img alt="" src="http://usdemocrazy.net/wp-content/uploads/2013/10/national-security-agency-seal.jpg" width="614" height="410" style="max-width: 100%; height: auto;"></a></p>
    <p>               You can say a lot of things about the NSA. That it’s intrusive. That it’s Big Brother realized. That it’s a necessary evil in the changing game of national security.</p>
    <p>               But one thing you can count on… this high tech megalith has its act completely together, right?</p>
    <p>               Wrong.</p>
    <p>               According to current and former U.S. officials, <a href="http://www.reuters.com/article/2013/10/18/us-usa-security-snowden-software-idUSBRE99H10620131018" rel="nofollow external" class="bo">the NSA failed to update its anti-leak software at its Hawaii station before Edward Snowden’s now-famous antics</a>.</p>
    <p>               Apparently, the facility lacked the sufficient bandwidth to install the software before Snowden joined the team.</p>
    <p>               At least the NSA can take comfort from knowing it’s not alone. <a href="http://www.buzzfeed.com/justinesharrock/exclusive-years-after-manning-leaks-state-department-cable-s" rel="nofollow external" class="bo">In the years since the Chelsea Manning leak, the State Department has yet to even install adequate security software</a>.</p>
    <p>             It’s crazy that one of the great security leaks in government history was caused by a delayed a software update.</p>
    <p>            Who could be so stupid…</p>
    <p>             Which reminds us… better check our laptops, the last time we at USDemocrazy updated our software was about 2 years ago…</p>
    </div>
]]>
</Body>
<Summary>               You can say a lot of things about the NSA. That it’s intrusive. That it’s Big Brother realized. That it’s a necessary evil in the changing game of national security.                ...</Summary>
<Website>http://usdemocrazy.net/nsa-stands-for-not-so-astute/</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/37246/guest@my.umbc.edu/f12401b0d7a77bc59ecd1126d5a2d0d4/api/pixel</TrackingUrl>
<Tag>current</Tag>
<Tag>democracy</Tag>
<Tag>national-security</Tag>
<Tag>news</Tag>
<Tag>politics</Tag>
<Tag>us</Tag>
<Tag>usdemocrazy</Tag>
<Group token="retired-12">USDemocrazy</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/retired-12</GroupUrl>
<AvatarUrl>https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/012/f0935e4cd5920aa6c7c996a5ee53a70f/xsmall.png?1279120129</AvatarUrl>
<AvatarUrl size="original">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/012/f0935e4cd5920aa6c7c996a5ee53a70f/original.jpg?1279120129</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/012/f0935e4cd5920aa6c7c996a5ee53a70f/xxlarge.png?1279120129</AvatarUrl>
<AvatarUrl size="xlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/012/f0935e4cd5920aa6c7c996a5ee53a70f/xlarge.png?1279120129</AvatarUrl>
<AvatarUrl size="large">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/012/f0935e4cd5920aa6c7c996a5ee53a70f/large.png?1279120129</AvatarUrl>
<AvatarUrl size="medium">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/012/f0935e4cd5920aa6c7c996a5ee53a70f/medium.png?1279120129</AvatarUrl>
<AvatarUrl size="small">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/012/f0935e4cd5920aa6c7c996a5ee53a70f/small.png?1279120129</AvatarUrl>
<AvatarUrl size="xsmall">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/012/f0935e4cd5920aa6c7c996a5ee53a70f/xsmall.png?1279120129</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/012/f0935e4cd5920aa6c7c996a5ee53a70f/xxsmall.png?1279120129</AvatarUrl>
<Sponsor>USDemocrazy</Sponsor>
<PawCount>20</PawCount>
<CommentCount>5</CommentCount>
<CommentsAllowed>true</CommentsAllowed>
<PostedAt>Mon, 21 Oct 2013 00:06:42 -0400</PostedAt>
</NewsItem>

</News>
