<?xml version="1.0"?>
<News hasArchived="true" page="7733" pageCount="10930" pageSize="10" timestamp="Sat, 07 Nov 2026 07:57:07 -0500" url="https://my3.my.umbc.edu/posts.xml?mode=recent&amp;page=7733">
<NewsItem contentIssues="false" id="43844" important="false" status="posted" url="https://my3.my.umbc.edu/posts/43844">
<Title>Prof. Vaporis' Op-Ed on Pres. Obama's trip to Japan</Title>
<Tagline>Obama in Japan</Tagline>
<Body>
<![CDATA[
    <div class="html-content">
    <div>Read Constantine Vaporis' op-ed about Obama's trip to Japan, published on Aljazeera America on April 23, 2014</div>
    <div><br></div>
    <div><a href="http://america.aljazeera.com/opinions/2014/4/obama-injapan-koreamaylasiaphiliphinestoreviveasiapivot.html" rel="nofollow external" class="bo">http://america.aljazeera.com/opinions/2014/4/obama-injapan-koreamaylasiaphiliphinestoreviveasiapivot.html</a></div>
    </div>
]]>
</Body>
<Summary>Read Constantine Vaporis' op-ed about Obama's trip to Japan, published on Aljazeera America on April 23, 2014...</Summary>
<Website>http://america.aljazeera.com/opinions/2014/4/obama-injapan-koreamaylasiaphiliphinestoreviveasiapivot.html</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/43844/guest@my.umbc.edu/1036f37d759616233fc1184acb72c2e6/api/pixel</TrackingUrl>
<Group token="history">History Department News and Events</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/history</GroupUrl>
<AvatarUrl>https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/496/0e975254c6e211f21a5cca6eb2cf1a82/xsmall.png?1582059722</AvatarUrl>
<AvatarUrl size="original">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/496/0e975254c6e211f21a5cca6eb2cf1a82/original.png?1582059722</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/496/0e975254c6e211f21a5cca6eb2cf1a82/xxlarge.png?1582059722</AvatarUrl>
<AvatarUrl size="xlarge">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/496/0e975254c6e211f21a5cca6eb2cf1a82/xlarge.png?1582059722</AvatarUrl>
<AvatarUrl size="large">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/496/0e975254c6e211f21a5cca6eb2cf1a82/large.png?1582059722</AvatarUrl>
<AvatarUrl size="medium">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/496/0e975254c6e211f21a5cca6eb2cf1a82/medium.png?1582059722</AvatarUrl>
<AvatarUrl size="small">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/496/0e975254c6e211f21a5cca6eb2cf1a82/small.png?1582059722</AvatarUrl>
<AvatarUrl size="xsmall">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/496/0e975254c6e211f21a5cca6eb2cf1a82/xsmall.png?1582059722</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/496/0e975254c6e211f21a5cca6eb2cf1a82/xxsmall.png?1582059722</AvatarUrl>
<Sponsor>History Department News and Events</Sponsor>
<PawCount>2</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>true</CommentsAllowed>
<PostedAt>Wed, 23 Apr 2014 11:20:12 -0400</PostedAt>
<EditAt>Wed, 23 Apr 2014 11:25:37 -0400</EditAt>
</NewsItem>

<NewsItem contentIssues="true" id="43846" important="false" status="posted" url="https://my3.my.umbc.edu/posts/43846">
<Title>Can Computer Programming Boost Your Brain Power?</Title>
<Body>
<![CDATA[
    <div class="html-content">
    <h2>Brains Are Like Muscles, and Tackling Complex Skills Like Web Development May Help Strengthen Them</h2>
    <p>Learning how to program for the first time was a challenge for Adam Waxman.</p>
    <p>He worked as a full-time investment banking analyst in Atlanta, but in January 2013, his nights were less about reclining after a day’s work and more about teaching himself Objective-C and JavaScript with books and online tutorials.</p>
    <p><a href="http://blog.teamtreehouse.com/wp-content/uploads/2014/04/brain-gears-istock-3.jpg" rel="nofollow external" class="bo"><img alt="Your brain on computers" src="http://blog.teamtreehouse.com/wp-content/uploads/2014/04/brain-gears-istock-3-225x300.jpg" width="225" height="300" style="max-width: 100%; height: auto;"></a>By that summer, he left his career in finance behind and moved to New York to enroll in a programming boot camp where he learned Ruby on Rails.</p>
    <p>“It’s like learning a foreign language,” says Waxman, 25, a product developer at SeatGeek, a New York ticketing start-up. “It’s much easier to learn a programming language by being very immersive.”</p>
    <p>Careers in code and programming are no doubt booming. But are there less-visible benefits? Can a career in software and web development keep you healthy and fit, particularly your brain? Besides agile software development methods, meet-up groups and collaborative projects — which help foster social interactions — programming involves creativity, critical thinking and algorithmic skills necessary to complete tasks.</p>
    <p>“When people say they want to learn to program, what they’re really saying is, ‘I want to solve a problem that the computer can help you with,’ ” says Sherif Abushadi, an educator at Dev Bootcamp, who has nearly 13 years of experience teaching development. “In fact, most programmers spend half their time failing over and over and fixing those mistakes until they get it right.”</p>
    <h2>Early Studies on Brains and Computer Programming</h2>
    <p>That analytical approach in the context of brain development and computers has been explored for decades.</p>
    <p>In 1980, MIT mathematician Seymour Papert, a co-founder of the programming language LOGO, published the pioneering book “<a href="http://books.google.com/books/about/Mindstorms.html?id=HhIEAgUfGHwC" rel="nofollow external" class="bo">Mindstorms: Children, Computers and Powerful Ideas</a>.” Papert claimed programming provided children with new opportunities for learning and thinking. A <a href="http://www.stanford.edu/~roypea/HTML1%20Folder/logo.html" rel="nofollow external" class="bo">series</a> of studies on the <a href="http://www.tcnj.edu/%7Eijims/previous/Readings/Week1/Cog_Effects_Prog.pdf" rel="nofollow external" class="bo">cognitive effects of programming </a>determined that Papert’s claims were problematic, but other research studies like the <a href="http://psycnet.apa.org/psycinfo/1992-07098-001" rel="nofollow external" class="bo">“Effects of Computer Programming on Cognitive Outcomes,”</a> and those conducted at institutions like <a href="http://scratch.mit.edu/info/research/" rel="nofollow external" class="bo">MIT</a>, have shown that programming can be beneficial to cognitive development.</p>
    <p><strong>Free trial on Treehouse:</strong> Do you want to sharpen your web design and development skills? <a href="https://teamtreehouse.com/subscribe/plans?cid=2062&amp;utm_source=story-23350-brains-computer-programming&amp;trial=yes" rel="nofollow external" class="bo">Click here to try a free 14-day trial on Treehouse</a>.</p>
    <p>Ongoing empirical studies will be important, of course, but here’s what we know generally about the brain: It’s like a muscle, which means we need to exercise it to conserve brain vitality, according to many <a href="http://www.ncbi.nlm.nih.gov/pubmed/10403712?dopt=AbstractPlus" rel="nofollow external" class="bo">research studies</a> cited by the National Institutes of Health.</p>
    <p>For some programmers, the ability to simplify complex issues is similar to a brain workout.</p>
    <p>“I don’t think it’s something that’s magical, where all of the sudden I feel much smarter, but I do think that programming in general is all about tackling pretty large, unknown problems and breaking it down into smarter pieces that makes sense, ” Waxman says.</p>
    <p>Errol King, 29, the director of experience for the <a href="http://www.betathegame.com/" rel="nofollow external" class="bo">kids programming app Beta</a>, says the logical thinking skills he has acquired are transferable outside of the tech world: “The more I go into code, the more I see the world from that perspective.”</p>
    <h2>It’s not too Late to Train Your Brain</h2>
    <p>According to <a href="https://www.einstein.yu.edu/news/releases/395/stimulating-brain-activities-delay-onset-of-memory-decline/" rel="nofollow external" class="bo">research</a>, brain exercises help improve brain function and can possibly fight dementia. But as for <a href="http://sanlab.uoregon.edu/files/2013/12/Berkman-2013-Training-Induced-Changes-in-Inhibitory-Control-Network-Activity-1wdk3sm.pdf" rel="nofollow external" class="bo">brain games</a> — well, science hasn’t exactly jumped on the bandwagon. Still, living a cognitively active lifestyle is never a bad thing — especially when we give our minds and bodies time to relax, says Dr. Sherrie All, a neuropsychologist and founder of the Chicago Center for Cognitive Wellness.</p>
    <p>“We grow new brain cells throughout our entire lives and not at a very high rate so you want to keep the ones you have,” she adds.</p>
    <p>One way to keep the brain young is learning a new skill. Last year, researchers from the<a href="https://www.psychologicalscience.org/index.php/news/releases/learning-new-skills-keeps-an-aging-mind-sharp.html" rel="nofollow external" class="bo"> University of Texas at Dallas</a> discovered that mentally challenging activities that you’ve never done before can sharpen the brain.</p>
    <p>When we learn a new programming skill — such as Python, PHP, Ruby on Rails, or other complex activities outside of programming like digital photography and juggling — our brains are forming new neural connections while strengthening existing ones each time we practice, according to the National Institutes of Health.</p>
    <div>
    <a href="http://blog.teamtreehouse.com/wp-content/uploads/2014/04/Brain-The-Home-and-School-Education-Society-Flickr-2.jpg" rel="nofollow external" class="bo"><img alt='This illustration is from "The Home and School Reference Work, Volume I" by The Home and School Education Society, H. M. Dixon, President and Managing Editor. The book was published in 1917 by The Home and School Education Society. This illustration of the parts of the brain can be found on page 368. The parts are A. Cerebrum; B. Corpus Callosum; C: Medulla Oblongata; D. Arbor-Vitae; E: Cerebellum, F: Pons Varolii (Illustration from Flickr user Sue Clark)' src="http://blog.teamtreehouse.com/wp-content/uploads/2014/04/Brain-The-Home-and-School-Education-Society-Flickr-2.jpg" width="774" height="644" style="max-width: 100%; height: auto;"></a><p>This illustration is from “The Home and School Reference Work, Volume I” by The Home and School Education Society, H. M. Dixon, President and Managing Editor. The book was published in 1917 by The Home and School Education Society. This illustration of the parts of the brain can be found on page 368. The parts are A. Cerebrum; B. Corpus Callosum; C: Medulla Oblongata; D. Arbor-Vitae; E: Cerebellum, F: Pons Varolii (Illustration from Flickr user <a href="https://www.flickr.com/photos/perpetualplum/4565959880" rel="nofollow external" class="bo">Sue Clark</a>)</p>
    </div>
    <p>Of course, there will always be tasks we can perform faster when we’re younger, but that doesn’t mean we’re incapable of doing them when we’re older, either. Moreover, professionals in their 40s and 50s are stepping outside of their <a href="http://www.nytimes.com/2014/03/25/your-money/leaving-the-comfort-zone-to-learn-computer-code.html?hpw&amp;rref=education" rel="nofollow external" class="bo">comfort zones to explore careers in code and programming</a>, which supersedes the misconception that our brains are inflexible.</p>
    <p>“As people get older, they actually don’t lose the capacity to learn,” All says. “Our brains are constantly changing up until the point that we die.”She adds:“I’ve learned [to code] before and it’s a really complex brain exercise.”</p>
    <p>New York-based actress Ondina Frate, 31, a beginner enrolled in <a href="https://www.edx.org/course/harvardx/harvardx-cs50x-introduction-computer-1022" rel="nofollow external" class="bo">CS50X</a>, an introductory online programming class at Harvard, looks forward to the challenges of the training.</p>
    <p>“It’s not as tough in the first week, but then it’s starts [getting] harder,” she says. “It’s very precise and detailed. You have you be very analytical.”</p>
    <p>There are no shortages of <a href="http://technology.meetup.com/" rel="nofollow external" class="bo">Meetup</a> groups or tech organizations, including New York Entrepreneurs &amp; Startup Network, Just Dev It and Silicon Valley NewTech, all of which offer support and networking opportunities to programmers, developers, and coders.</p>
    <p>“It’s also very comforting to know that there are other beginners, too, and if you don’t know something, you can talk about it,” Frate says.</p>
    <p>Researchers from the <a href="http://journals.cambridge.org/action/displayAbstract?fromPage=online&amp;aid=8417401" rel="nofollow external" class="bo">Rush University Medical Center</a> and <a href="http://psp.sagepub.com/content/34/2/248.abstract" rel="nofollow external" class="bo">University of Michigan</a> found that similar social connections are advantageous for brain health. Like other social environments, exchanges in tech communities are exercises for the brain because of social and language skills essential to having a conversation.</p>
    <p>“I think that when a lot of people think of programmers,” Waxman says. “They think of a nerdy guy or women alone that’s probably trying to do something all by themselves when the beauty of code is that you’re making something [together] that can help a lot of people in everyday life.”</p>
    <p>The post <a href="http://blog.teamtreehouse.com/can-computer-programming-boost-brain-power" rel="nofollow external" class="bo">Can Computer Programming Boost Your Brain Power?</a> appeared first on <a href="http://blog.teamtreehouse.com" rel="nofollow external" class="bo">Treehouse Blog</a>.</p>
    </div>
]]>
</Body>
<Summary>Brains Are Like Muscles, and Tackling Complex Skills Like Web Development May Help Strengthen Them   Learning how to program for the first time was a challenge for Adam Waxman.   He worked as a...</Summary>
<Website>http://feedproxy.google.com/~r/teamtreehouse/~3/lH_81CTcUjQ/can-computer-programming-boost-brain-power</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/43846/guest@my.umbc.edu/9b9f9b60662da47f3e1ed3f1a86a05e7/api/pixel</TrackingUrl>
<Tag>android</Tag>
<Tag>css</Tag>
<Tag>design</Tag>
<Tag>development</Tag>
<Tag>features</Tag>
<Tag>html</Tag>
<Tag>ios</Tag>
<Tag>javascript</Tag>
<Tag>responsive</Tag>
<Tag>web</Tag>
<Tag>web-industry</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>Wed, 23 Apr 2014 11:14:51 -0400</PostedAt>
<EditAt>Wed, 23 Apr 2014 11:14:51 -0400</EditAt>
</NewsItem>

<NewsItem contentIssues="false" id="43842" important="false" status="posted" url="https://my3.my.umbc.edu/posts/43842">
<Title>We're Learning Too: A New Codecademy</Title>
<Body>
<![CDATA[
    <div class="html-content">
    <p>Two years ago, we started building a product that would help teach people the skills they needed to succeed in a digital world. As more than 24 million people took Codecademy courses on our <a href="http://codecademy.com" rel="nofollow external" class="bo">web</a> and <a href="https://itunes.apple.com/us/app/codecademy-hour-of-code/id762950096?mt=8" rel="nofollow external" class="bo">iOS platforms</a>, we too learned and grew. Now, we’re excited to show you our latest project — a new Codecademy designed from the ground up, aimed to help you learn skills hands-on, with real projects, and constant feedback. Better yet, the new Codecademy experience helps to connect you with the real skills you’ll need to succeed in today’s workplace.</p>
    
    <img src="http://s3.amazonaws.com/codecademy-blog/assets/logo_blue_dark.png" alt="Logo" style="max-width: 100%; height: auto;">
    
    <p>Learning isn’t just about one exercise or “class,” but instead is a gateway to community, opportunities, ideas, and a better life. We’ve witnessed this through the millions of learners on Codecademy and through the thousands of inspiring teachers who have shared their knowledge with the world with our course creator. We listened to them while building what we think is the best learning experience — for anyone, anywhere — to learn the most important skills of today.</p>
    
    <p>In two years, Codecademy has scaled to become larger than we had ever imagined.  Our learners, spread across the globe in every country in the world, have:</p>
    
    <ul>
    <li>written more than a billion lines of code</li>
    <li>joined more than 24 million others in starting the journey of learning to code </li>
    <li>helped to create more than 100,000 courses using our course creator </li>
    <li>hosted meetups in more than 350 cities </li>
    <li>learned on-the-go through our <a href="https://itunes.apple.com/us/app/codecademy-hour-of-code/id762950096?mt=8" rel="nofollow external" class="bo">mobile apps for iPhone and iPad, both of which have been featured in the App Store</a> </li>
    <li>worked with nearly 100 partner organizations like <a href="http://techcrunch.com/2012/01/17/code-summer-plus/" rel="nofollow external" class="bo">The White House</a> and <a href="http://www.codecademy.com/tracks/apis" rel="nofollow external" class="bo">Twitter</a> to both learn and spread their knowledge even further</li>
    </ul>
    <p>Today, we’re proud to show off the results of all of that to a few friends and, within days, the rest of the world. The first fruits of this effort are an experience that gets you from knowing nothing to building a website — in this case, <a href="http://airbnb.com" rel="nofollow external" class="bo">Airbnb’s homepage</a>. Along the way, you’ll experiment with blocks of code, see the results of adding and subtracting different parts of a page, and use the real terminology that developers and designers all over the world over use to create websites just like Airbnb’s.</p>
    
    <img src="http://s3.amazonaws.com/codecademy-blog/assets/codecademy-learning-environment-2.png" alt="Build a professional website" style="max-width: 100%; height: auto;">
    
    <p>Our new platform leaves you not just with new knowledge, but with a portfolio of projects you can share with your friends, enabling them to learn from you. We’ve even built the capability for you to share your work with future employers, and to demonstrate your new skills. We’ve been testing our new learning interface for weeks and we’ve seen it applied in an amazing number of ways — from designers at major firms winning new consulting work because of their ability to build their designs to students in high school making personal webpages for themselves.</p>
    
    <img src="http://s3.amazonaws.com/codecademy-blog/assets/codecademy-learning-environment-4.png" alt="Learning environment" style="max-width: 100%; height: auto;">
    
    <p>Codecademy’s learning experience comes not just from the data behind 24 million learners and billions of lines of code, but also from the individual stories we’ve heard from our wealth of committed learners. Former book critic <a href="https://twitter.com/JulietWaters" rel="nofollow external" class="bo">Juliet Waters</a>, for instance, started learning with her 11-year old son as part of our Code Year program in 2012. Since then, <a href="http://www.nytimes.com/2013/12/15/opinion/sunday/the-code-of-life.html" rel="nofollow external" class="bo">she’s gone on to chronicle her journey in a book that’s coming soon, noting that programming helped her feel “more connected with others in our tech-driven society.”</a> A parent named Shari told us that her 11 and 13-year old sons had a “reaction to what they are learning [that] beats their enthusiasm for the [video games].” We work hard everyday to deliver a similar experience for our users all around the world — with more than 65% of users outside the US, it’s important to us that we’re democratizing access to the fundamental blocks of knowledge that can improve peoples’ lives.</p>
    
    <img src="http://s3.amazonaws.com/codecademy-blog/assets/14.png" alt="Panel" style="max-width: 100%; height: auto;">
    
    <p><a href="https://www.youtube.com/watch?v=fjQ7XaMNQNc" rel="nofollow external" class="bo">Tommy Nicholas’ story</a> is just the sort we’re hoping our new learning environment will foster: he began with almost no programming knowledge at all, and gained enough skills to develop a website, <a href="http://coffitivity.com/" rel="nofollow external" class="bo">Coffitivity</a>, that was named one of <a href="http://techland.time.com/2013/05/06/50-best-websites-2013/slide/coffitivity/" rel="nofollow external" class="bo">TIME Magazine’s Top 50 websites in 2013</a>. </p>
    
    
    <p>Billions of lines of code, millions of users, and years after our founding, we’ve been astonished by what people can do when they can easily learn the fundamental skills that can transform their lives. Today, we’ve redesigned Codecademy to reflect that potential — and hopefully to help more people reach their goals and build the future they want to live in.</p>
    
    <p><a href="http://www.codecademy.com/jobs" rel="nofollow external" class="bo">If you want to help us, we're hiring</a>!</p>
    </div>
]]>
</Body>
<Summary>Two years ago, we started building a product that would help teach people the skills they needed to succeed in a digital world. As more than 24 million people took Codecademy courses on our web...</Summary>
<Website>http://www.codecademy.com/blog/136-we-re-learning-too-a-new-codecademy</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/43842/guest@my.umbc.edu/0c96e7098b9de6a5466f4c38211672d7/api/pixel</TrackingUrl>
<Tag>academy</Tag>
<Tag>code</Tag>
<Tag>codecademy</Tag>
<Tag>learning</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>Wed, 23 Apr 2014 11:00:00 -0400</PostedAt>
<EditAt>Wed, 23 Apr 2014 11:00:00 -0400</EditAt>
</NewsItem>

<NewsItem contentIssues="false" id="109726" important="false" status="posted" url="https://my3.my.umbc.edu/posts/109726">
<Title>UMBC scientists receive Maryland Innovation grant from TEDCO to advance bioremediation of PCB-contaminated sediments</Title>
<Body>
<![CDATA[
    <div class="html-content">Professor Kevin Sowers, Professor of Marine Biotechnology at the Institute of Marine and Environmental Technology (IMET), and Professor Upal Ghosh, at the University of Maryland Baltimore County, have received a $100,000 grant from the Maryland Innovation Initiative (MII). The grant will fund research to that will ameliorate the environmental harms of PCB’s. The program is an initiative of the Technology Council of Maryland (TEDCO) created in 1998 to spur commercialization of scientific research in Maryland as part of the state’s efforts to foster economic development through academic research. Sowers is a global leader in environmental science and has pioneered a …</div>
]]>
</Body>
<Summary>Professor Kevin Sowers, Professor of Marine Biotechnology at the Institute of Marine and Environmental Technology (IMET), and Professor Upal Ghosh, at the University of Maryland Baltimore County,...</Summary>
<Website>https://news.umbc.edu/umbc-scientists-receive-maryland-innovation-grant-from-tedco-to-advance-bioremediation-of-pcb-contaminated-sediments/</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/109726/guest@my.umbc.edu/2a38ab4da58af501ce0629413f27d963/api/pixel</TrackingUrl>
<Tag>cnms</Tag>
<Tag>science-and-technology</Tag>
<Group token="umbc-news">UMBC News</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/umbc-news</GroupUrl>
<AvatarUrl>https://assets2-my.umbc.edu/system/shared/avatars/groups/000/001/944/2c79aeea85b1abb37f8cf9fbcdc382b0/xsmall.png?1632921809</AvatarUrl>
<AvatarUrl size="original">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/001/944/2c79aeea85b1abb37f8cf9fbcdc382b0/original.png?1632921809</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/001/944/2c79aeea85b1abb37f8cf9fbcdc382b0/xxlarge.png?1632921809</AvatarUrl>
<AvatarUrl size="xlarge">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/001/944/2c79aeea85b1abb37f8cf9fbcdc382b0/xlarge.png?1632921809</AvatarUrl>
<AvatarUrl size="large">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/001/944/2c79aeea85b1abb37f8cf9fbcdc382b0/large.png?1632921809</AvatarUrl>
<AvatarUrl size="medium">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/001/944/2c79aeea85b1abb37f8cf9fbcdc382b0/medium.png?1632921809</AvatarUrl>
<AvatarUrl size="small">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/001/944/2c79aeea85b1abb37f8cf9fbcdc382b0/small.png?1632921809</AvatarUrl>
<AvatarUrl size="xsmall">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/001/944/2c79aeea85b1abb37f8cf9fbcdc382b0/xsmall.png?1632921809</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/001/944/2c79aeea85b1abb37f8cf9fbcdc382b0/xxsmall.png?1632921809</AvatarUrl>
<Sponsor>UMBC News</Sponsor>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>false</CommentsAllowed>
<PostedAt>Wed, 23 Apr 2014 10:52:20 -0400</PostedAt>
</NewsItem>

<NewsItem contentIssues="false" id="43839" important="false" status="posted" url="https://my3.my.umbc.edu/posts/43839">
<Title>Florika Macazo awarded prestigious Jessica Soto-Perez Award</Title>
<Body>
<![CDATA[
    <div class="html-content">The Jessica Soto-Perez Memorial Award honors a graduate student who not 
    only excels in his/her program, but also inspires and supports fellow graduate students. The 2014 recipient of the Jessica Soto-Perez Memorial Award is Florika Macazo, a doctoral candidate in chemistry who researches Micro- and Nano-scale electrochemical sensors with the White group.<br><br>Congratulations Florika on this prestigious honor.<br>
    </div>
]]>
</Body>
<Summary>The Jessica Soto-Perez Memorial Award honors a graduate student who not  only excels in his/her program, but also inspires and supports fellow graduate students. The 2014 recipient of the Jessica...</Summary>
<AttachmentKind>Document</AttachmentKind>
<AttachmentUrl>https://assets4-my.umbc.edu/system/shared/attachments/c5ead6915acb8a8c4043883bf442e84c/6aef2023/news/000/043/839/8954b3eebb94b46ddf1c1a09c48e9e67/Soto-Perez Award copy.jpg?1398267504</AttachmentUrl>
<Attachments>
<Attachment kind="Document" url="https://my3.my.umbc.edu/posts/43839/attachments/13273"></Attachment>
</Attachments>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/43839/guest@my.umbc.edu/6115f3e9c9f95681526ee637b80859c1/api/pixel</TrackingUrl>
<Group token="chem">Department of Chemistry &amp;amp; Biochemistry</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/chem</GroupUrl>
<AvatarUrl>https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/676/b0d3e132c23529b08ae2b24fba1f86f5/xsmall.png?1397743638</AvatarUrl>
<AvatarUrl size="original">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/676/b0d3e132c23529b08ae2b24fba1f86f5/original.jpg?1397743638</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/676/b0d3e132c23529b08ae2b24fba1f86f5/xxlarge.png?1397743638</AvatarUrl>
<AvatarUrl size="xlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/676/b0d3e132c23529b08ae2b24fba1f86f5/xlarge.png?1397743638</AvatarUrl>
<AvatarUrl size="large">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/676/b0d3e132c23529b08ae2b24fba1f86f5/large.png?1397743638</AvatarUrl>
<AvatarUrl size="medium">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/676/b0d3e132c23529b08ae2b24fba1f86f5/medium.png?1397743638</AvatarUrl>
<AvatarUrl size="small">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/676/b0d3e132c23529b08ae2b24fba1f86f5/small.png?1397743638</AvatarUrl>
<AvatarUrl size="xsmall">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/676/b0d3e132c23529b08ae2b24fba1f86f5/xsmall.png?1397743638</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/676/b0d3e132c23529b08ae2b24fba1f86f5/xxsmall.png?1397743638</AvatarUrl>
<Sponsor>Department of Chemistry &amp; Biochemistry</Sponsor>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>true</CommentsAllowed>
<PostedAt>Wed, 23 Apr 2014 10:25:45 -0400</PostedAt>
<EditAt>Wed, 23 Apr 2014 11:38:34 -0400</EditAt>
</NewsItem>

<NewsItem contentIssues="true" id="43841" important="false" status="posted" url="https://my3.my.umbc.edu/posts/43841">
<Title>Hearts and Minds: Lisa and Dwayne Price</Title>
<Body>
<![CDATA[
    <div class="html-content">From the start, Lisa (Dates) Price ’87, information systems and Dwayne Price ’87, information systems, ’87, seemed destined to become a couple. They met on the first day of freshman orientation. Later, they were assigned to the same orientation team. … <a href="http://umbcalumni.wordpress.com/2014/04/23/hearts-and-minds-lisa-and-dwayne-price/" rel="nofollow external" class="bo">Continue reading <span>→</span></a>
    </div>
]]>
</Body>
<Summary>From the start, Lisa (Dates) Price ’87, information systems and Dwayne Price ’87, information systems, ’87, seemed destined to become a couple. They met on the first day of freshman orientation....</Summary>
<Website>http://umbcalumni.wordpress.com/2014/04/23/hearts-and-minds-lisa-and-dwayne-price/</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/43841/guest@my.umbc.edu/e19644c96ad680ae73bff3b50989ad39/api/pixel</TrackingUrl>
<Tag>80s-alums</Tag>
<Tag>dwayne-price</Tag>
<Tag>information-systems</Tag>
<Tag>lisa-price</Tag>
<Tag>math-and-sciences</Tag>
<Tag>news-and-updates</Tag>
<Tag>patapsco-hall</Tag>
<Tag>susquehanna-hall</Tag>
<Tag>umbc</Tag>
<Tag>umbc-experience</Tag>
<Tag>umbc-news</Tag>
<Tag>university-of-maryland-baltimore-county</Tag>
<Tag>valentines-day</Tag>
<Group token="retired-20">UMBC Alumni</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/retired-20</GroupUrl>
<AvatarUrl>https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/020/08fe2621d8e716b02ec0da35256a998d/xsmall.png?1280681147</AvatarUrl>
<AvatarUrl size="original">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/020/08fe2621d8e716b02ec0da35256a998d/original.png?1280681147</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/020/08fe2621d8e716b02ec0da35256a998d/xxlarge.png?1280681147</AvatarUrl>
<AvatarUrl size="xlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/020/08fe2621d8e716b02ec0da35256a998d/xlarge.png?1280681147</AvatarUrl>
<AvatarUrl size="large">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/020/08fe2621d8e716b02ec0da35256a998d/large.png?1280681147</AvatarUrl>
<AvatarUrl size="medium">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/020/08fe2621d8e716b02ec0da35256a998d/medium.png?1280681147</AvatarUrl>
<AvatarUrl size="small">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/020/08fe2621d8e716b02ec0da35256a998d/small.png?1280681147</AvatarUrl>
<AvatarUrl size="xsmall">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/020/08fe2621d8e716b02ec0da35256a998d/xsmall.png?1280681147</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/020/08fe2621d8e716b02ec0da35256a998d/xxsmall.png?1280681147</AvatarUrl>
<Sponsor>UMBC Alumni</Sponsor>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>false</CommentsAllowed>
<PostedAt>Wed, 23 Apr 2014 10:16:42 -0400</PostedAt>
</NewsItem>

<NewsItem contentIssues="false" id="106817" important="false" status="posted" url="https://my3.my.umbc.edu/posts/106817">
<Title>Hearts and Minds: Lisa and Dwayne Price</Title>
<Body>
<![CDATA[
    <div class="html-content">From the start, Lisa (Dates) Price ’87, information systems and Dwayne Price ’87, information systems, ’87, seemed destined to become …</div>
]]>
</Body>
<Summary>From the start, Lisa (Dates) Price ’87, information systems and Dwayne Price ’87, information systems, ’87, seemed destined to become …</Summary>
<Website>https://magazine.umbc.edu/hearts-and-minds-lisa-and-dwayne-price/</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/106817/guest@my.umbc.edu/0512a87b831b3a065627056efd2bea5e/api/pixel</TrackingUrl>
<Tag>alumni</Tag>
<Tag>dwayne-price</Tag>
<Tag>information-systems</Tag>
<Tag>lisa-price</Tag>
<Tag>patapsco-hall</Tag>
<Tag>susquehanna-hall</Tag>
<Tag>umbc</Tag>
<Tag>umbc-experience</Tag>
<Tag>university-of-maryland-baltimore-county</Tag>
<Tag>valentines-day</Tag>
<Group token="retired-1945">UMBC Magazine</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/retired-1945</GroupUrl>
<AvatarUrl>https://assets2-my.umbc.edu/images/avatars/group/8/xsmall.png?1793799644</AvatarUrl>
<AvatarUrl size="original">https://assets4-my.umbc.edu/images/avatars/group/8/original.png?1793799644</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets3-my.umbc.edu/images/avatars/group/8/xxlarge.png?1793799644</AvatarUrl>
<AvatarUrl size="xlarge">https://assets4-my.umbc.edu/images/avatars/group/8/xlarge.png?1793799644</AvatarUrl>
<AvatarUrl size="large">https://assets1-my.umbc.edu/images/avatars/group/8/large.png?1793799644</AvatarUrl>
<AvatarUrl size="medium">https://assets2-my.umbc.edu/images/avatars/group/8/medium.png?1793799644</AvatarUrl>
<AvatarUrl size="small">https://assets1-my.umbc.edu/images/avatars/group/8/small.png?1793799644</AvatarUrl>
<AvatarUrl size="xsmall">https://assets2-my.umbc.edu/images/avatars/group/8/xsmall.png?1793799644</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets4-my.umbc.edu/images/avatars/group/8/xxsmall.png?1793799644</AvatarUrl>
<Sponsor>UMBC Magazine</Sponsor>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>false</CommentsAllowed>
<PostedAt>Wed, 23 Apr 2014 10:16:42 -0400</PostedAt>
</NewsItem>

<NewsItem contentIssues="true" id="43833" important="false" status="posted" url="https://my3.my.umbc.edu/posts/43833">
<Title>Honors College Students Doing Social Change Research!</Title>
<Body>
<![CDATA[
    <div class="html-content">A recent post in UMBC's Breaking Ground blog highlights the UMBC students presenting at today's URCAD event on their research that focuses on social change. Highlighted in that post are Honors College students Madison Bondoc, Hollie Adejumo, Katie Golden and Sami Hawkins! Read more about their research here: <a href="http://umbcbreakingground.wordpress.com/2014/04/22/research-for-social-change-at-urcad-2/">http://umbcbreakingground.wordpress.com/2014/04/22/research-for-social-change-at-urcad-2/</a><div><br></div>
    <div>Many more Honors College students are presenting at today's URCAD! Find a time to stop by today see the amazing poster sessions, paper presentations, film screenings, and more!</div>
    </div>
]]>
</Body>
<Summary>A recent post in UMBC's Breaking Ground blog highlights the UMBC students presenting at today's URCAD event on their research that focuses on social change. Highlighted in that post are Honors...</Summary>
<Website>http://umbcbreakingground.wordpress.com/2014/04/22/research-for-social-change-at-urcad-2/</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/43833/guest@my.umbc.edu/d2d5b6f78f9f187ee1de7f487b8c0564/api/pixel</TrackingUrl>
<Group token="honorscollege">Honors College</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/honorscollege</GroupUrl>
<AvatarUrl>https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/413/cd2018beeece5fb0a71a96308e567bde/xsmall.png?1339897259</AvatarUrl>
<AvatarUrl size="original">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/413/cd2018beeece5fb0a71a96308e567bde/original.jpg?1339897259</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/413/cd2018beeece5fb0a71a96308e567bde/xxlarge.png?1339897259</AvatarUrl>
<AvatarUrl size="xlarge">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/413/cd2018beeece5fb0a71a96308e567bde/xlarge.png?1339897259</AvatarUrl>
<AvatarUrl size="large">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/413/cd2018beeece5fb0a71a96308e567bde/large.png?1339897259</AvatarUrl>
<AvatarUrl size="medium">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/413/cd2018beeece5fb0a71a96308e567bde/medium.png?1339897259</AvatarUrl>
<AvatarUrl size="small">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/413/cd2018beeece5fb0a71a96308e567bde/small.png?1339897259</AvatarUrl>
<AvatarUrl size="xsmall">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/413/cd2018beeece5fb0a71a96308e567bde/xsmall.png?1339897259</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/413/cd2018beeece5fb0a71a96308e567bde/xxsmall.png?1339897259</AvatarUrl>
<Sponsor>Honors College</Sponsor>
<ThumbnailUrl size="xxlarge">https://assets1-my.umbc.edu/system/shared/thumbnails/news/000/043/833/92a763842faeaaa9e9fed136d596c597/xxlarge.jpg?1398251219</ThumbnailUrl>
<ThumbnailUrl size="xlarge">https://assets3-my.umbc.edu/system/shared/thumbnails/news/000/043/833/92a763842faeaaa9e9fed136d596c597/xlarge.jpg?1398251219</ThumbnailUrl>
<ThumbnailUrl size="large">https://assets4-my.umbc.edu/system/shared/thumbnails/news/000/043/833/92a763842faeaaa9e9fed136d596c597/large.jpg?1398251219</ThumbnailUrl>
<ThumbnailUrl size="medium">https://assets1-my.umbc.edu/system/shared/thumbnails/news/000/043/833/92a763842faeaaa9e9fed136d596c597/medium.jpg?1398251219</ThumbnailUrl>
<ThumbnailUrl size="small">https://assets4-my.umbc.edu/system/shared/thumbnails/news/000/043/833/92a763842faeaaa9e9fed136d596c597/small.jpg?1398251219</ThumbnailUrl>
<ThumbnailUrl size="xsmall">https://assets1-my.umbc.edu/system/shared/thumbnails/news/000/043/833/92a763842faeaaa9e9fed136d596c597/xsmall.jpg?1398251219</ThumbnailUrl>
<ThumbnailUrl size="xxsmall">https://assets3-my.umbc.edu/system/shared/thumbnails/news/000/043/833/92a763842faeaaa9e9fed136d596c597/xxsmall.jpg?1398251219</ThumbnailUrl>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>true</CommentsAllowed>
<PostedAt>Wed, 23 Apr 2014 07:07:39 -0400</PostedAt>
</NewsItem>

<NewsItem contentIssues="true" id="43832" important="false" status="posted" url="https://my3.my.umbc.edu/posts/43832">
<Title>Today ONLY 9:30 - 4 URCAD</Title>
<Tagline>Come to University Center third floor</Tagline>
<Body>
<![CDATA[
    <div class="html-content">9:30 a.m. opening with Dr. Hrabowski<br>10 - 12 Video, dance, posters, oral presentations from all disciplines. <br>(Be in Fine Arts 317 at 10:30 for original choreography!)<br>12 - 1 Corey Fleischer winner of Discovery Channel Big Brain Theory and UMBC alumnus<br>1 - 4 More great student presentations on research, scholarship, and creative work. <br><br>Be there. <br>
    </div>
]]>
</Body>
<Summary>9:30 a.m. opening with Dr. Hrabowski 10 - 12 Video, dance, posters, oral presentations from all disciplines.  (Be in Fine Arts 317 at 10:30 for original choreography!) 12 - 1 Corey Fleischer...</Summary>
<Website>http://umbc.edu/undergrad_ed/research/URCAD/</Website>
<AttachmentKind>Flyer</AttachmentKind>
<AttachmentUrl>https://assets2-my.umbc.edu/system/shared/attachments/2ce6268618404e03507af92dd6c29c5b/6aef2023/news/000/043/832/01f6211e00cc8f00a7b68e8e24b1b4d6/URCAD_handout_Final.pdf?1398249682</AttachmentUrl>
<Attachments>
<Attachment kind="Flyer" url="https://my3.my.umbc.edu/posts/43832/attachments/13269"></Attachment>
</Attachments>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/43832/guest@my.umbc.edu/41e04f85a7e73bb8c4450beaa82833a7/api/pixel</TrackingUrl>
<Group token="undergradresearch">Undergraduate Research</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/undergradresearch</GroupUrl>
<AvatarUrl>https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/006/875606ced2b629148af4caa1a4e8dd3c/xsmall.png?1600355057</AvatarUrl>
<AvatarUrl size="original">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/006/875606ced2b629148af4caa1a4e8dd3c/original.jpg?1600355057</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/006/875606ced2b629148af4caa1a4e8dd3c/xxlarge.png?1600355057</AvatarUrl>
<AvatarUrl size="xlarge">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/006/875606ced2b629148af4caa1a4e8dd3c/xlarge.png?1600355057</AvatarUrl>
<AvatarUrl size="large">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/006/875606ced2b629148af4caa1a4e8dd3c/large.png?1600355057</AvatarUrl>
<AvatarUrl size="medium">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/006/875606ced2b629148af4caa1a4e8dd3c/medium.png?1600355057</AvatarUrl>
<AvatarUrl size="small">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/006/875606ced2b629148af4caa1a4e8dd3c/small.png?1600355057</AvatarUrl>
<AvatarUrl size="xsmall">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/006/875606ced2b629148af4caa1a4e8dd3c/xsmall.png?1600355057</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/006/875606ced2b629148af4caa1a4e8dd3c/xxsmall.png?1600355057</AvatarUrl>
<Sponsor>Undergraduate Research</Sponsor>
<ThumbnailUrl size="xxlarge">https://assets3-my.umbc.edu/system/shared/thumbnails/news/000/043/832/27e5a42dc357dc9ec3ef7366ac382854/xxlarge.jpg?1398249719</ThumbnailUrl>
<ThumbnailUrl size="xlarge">https://assets1-my.umbc.edu/system/shared/thumbnails/news/000/043/832/27e5a42dc357dc9ec3ef7366ac382854/xlarge.jpg?1398249719</ThumbnailUrl>
<ThumbnailUrl size="large">https://assets4-my.umbc.edu/system/shared/thumbnails/news/000/043/832/27e5a42dc357dc9ec3ef7366ac382854/large.jpg?1398249719</ThumbnailUrl>
<ThumbnailUrl size="medium">https://assets1-my.umbc.edu/system/shared/thumbnails/news/000/043/832/27e5a42dc357dc9ec3ef7366ac382854/medium.jpg?1398249719</ThumbnailUrl>
<ThumbnailUrl size="small">https://assets3-my.umbc.edu/system/shared/thumbnails/news/000/043/832/27e5a42dc357dc9ec3ef7366ac382854/small.jpg?1398249719</ThumbnailUrl>
<ThumbnailUrl size="xsmall">https://assets4-my.umbc.edu/system/shared/thumbnails/news/000/043/832/27e5a42dc357dc9ec3ef7366ac382854/xsmall.jpg?1398249719</ThumbnailUrl>
<ThumbnailUrl size="xxsmall">https://assets1-my.umbc.edu/system/shared/thumbnails/news/000/043/832/27e5a42dc357dc9ec3ef7366ac382854/xxsmall.jpg?1398249719</ThumbnailUrl>
<PawCount>2</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>true</CommentsAllowed>
<PostedAt>Wed, 23 Apr 2014 06:42:14 -0400</PostedAt>
</NewsItem>

<NewsItem contentIssues="true" id="44121" important="false" status="posted" url="https://my3.my.umbc.edu/posts/44121">
<Title>Cache Invalidation Strategies With Varnish Cache</Title>
<Body>
<![CDATA[
    <div class="html-content">
    <p>Phil Karlton once said, “There are only two hard things in Computer Science: cache invalidation and naming things.” This article is about the harder of these two: <strong>cache invalidation</strong>. It’s directed at readers who already work with Varnish Cache. To learn more about it, you’ll find background information in “<a href="http://www.smashingmagazine.com/2013/12/04/speed-up-your-mobile-website-with-varnish/" rel="nofollow external" class="bo">Speed Up Your Mobile Website With Varnish</a>.”</p>
    <p><em>10 microseconds (or 250 milliseconds)</em>: That’s the difference between delivering a cache hit and delivering a cache miss. How often you get the latter will depend on the efficiency of the cache — this is known as the “hit rate.” A cache miss depends on two factors: the volume of traffic and the average time to live (TTL), which is a number indicating how long the cache is allowed to keep an object. As system administrators and developers, <strong>we can’t do much about the traffic, but we can influence the TTL</strong>.</p>
    <p>However, to have a high TTL, we need to be able to invalidate objects from the cache so that we avoid serving stale content. With Varnish Cache, there are myriad ways to do this. We’ll explore the most common ways and how to deploy them.</p>
    <p>Varnish does a whole lot of other stuff as well, but its caching services are most popular. <strong>Caches speed up Web services by serving cached static content</strong>. When Varnish Cache is delivering a cache hit, it usually just dumps a chunk of memory into a socket. Varnish Cache is so fast that, on modern hardware, we actually measure response time in microseconds!</p>
    <p><img src="http://www.smashingmagazine.com/wp-content/uploads/2014/04/varnish-cache-500px-opt.png" width="500" height="260" alt="" style="max-width: 100%; height: auto;"><br><em>Caching isn’t always as simple as we think; a few gotchas and problems may take quite some of our time to master. (<a href="https://twitter.com/varnishcache" rel="nofollow external" class="bo">Image credits</a>)</em></p>
    <p>When using a cache, you need to know when to evict content from the cache. If you have no way to evict content, then you would rely on the cache to time-out the object after a predetermined amount of time. This is one method, but hardly the most optimal solution. The best way would be to let Varnish Cache keep the object in memory forever (mostly) and then tell the object when to refresh. Let’s go into detail on how to achieve this.</p>
    <h3>HTTP Purging</h3>
    <p>HTTP Purging is the most straightforward of these methods. Instead of sending a <code>GET /url</code> to Varnish, you would send <code>PURGE /url</code>. Varnish would then discard that object from the cache. Add an access control list to Varnish so that not just anyone can purge objects from your cache; other than that, though, you’re home free.</p>
    <pre><code>acl purge {&#x000A;    	"localhost";&#x000A;    	"192.168.55.0"/24;&#x000A;    }&#x000A;    &#x000A;    sub vcl_recv {&#x000A;    	# allow PURGE from localhost and 192.168.55...&#x000A;    &#x000A;    	if (req.request == "PURGE") {&#x000A;    		if (!client.ip ~ purge) {&#x000A;    			error 405 "Not allowed.";&#x000A;    		}&#x000A;    		return (lookup);&#x000A;    	}&#x000A;    }&#x000A;    &#x000A;    sub vcl_hit {&#x000A;    	if (req.request == "PURGE") {&#x000A;    		purge;&#x000A;    		error 200 "Purged.";&#x000A;    	}&#x000A;    }&#x000A;    &#x000A;    sub vcl_miss {&#x000A;    	if (req.request == "PURGE") {&#x000A;    		purge;&#x000A;    		error 200 "Purged.";&#x000A;    	}&#x000A;    }&#x000A;    </code></pre>
    <h4>Shortcomings of Purging</h4>
    <p>HTTP purging falls short when a piece of content has a complex relationship to the URLs it appears on. A news article, for instance, might show up on a number of URLs. The article might have a desktop view and a mobile view, and it might show up on a section page and on the front page. Therefore, you would have to either get the content management system to keep track of all of these manifestations or let Varnish do it for you. To let Varnish do it, you would use bans, which we’ll get into now.</p>
    <h3>Bans</h3>
    <p>A ban is a feature specific to Varnish and one that is frequently misunderstood. It enables you to ban Varnish from serving certain content in memory, forcing Varnish to fetch new versions of these pages.</p>
    <p>An interesting aspect is <strong>how you specify which pages to ban</strong>. Varnish has a language that provides quite a bit of flexibility. You could tell Varnish to ban by giving the ban command in the command-line interface, typically connecting to it with <code>varnishadm</code>. You could also do it through the Varnish configuration language (VCL), which provides a simple way to implement HTTP-based banning.</p>
    <p>Let’s start with an example. Suppose we need to purge our website of all images.</p>
    <pre><code>&gt; ban obj.http.content-type ~ “^image/”&#x000A;    </code></pre>
    <p>The result of this is that, for all objects in memory, the HTTP response header <code>Content-Type</code> would match the regular expression <code>^image/</code>, which would invalidate immediately.</p>
    <p>Here’s what happens in Varnish. First, the ban command puts the ban on the “ban list.” When this command is on the ban list, every cache hit that serves an object older than the ban itself will start to look at the ban list and compare the object to the bans on the list. If the object matches, then Varnish kills it and fetches a newer one. If the object doesn’t match, then Varnish will make a note of it so that it does not check again.</p>
    <p>Let’s build on our example. Now, we’ll only ban images that are placed somewhere in the <code>/feature</code> URL. Note the logical “and” operator, <code>&amp;&amp;</code>.</p>
    <pre><code>&gt; ban obj.http.content-type ~ “^image/” &amp;&amp; req.url ~ “^/feature”&#x000A;    </code></pre>
    <p>You’ll notice that it says <code>obj.http.content-type</code> and <code>req.url</code>. In the first part of the ban, we refer to an attribute of an object stored in Varnish. In the latter, we refer to a part of a request for an object. This might be a bit unconventional, but you can actually use attributes on the request to invalidate objects in cache. Now, <code>req.url</code> isn’t normally stored in the object, so referring to the request is the only thing we can do here. <strong>You could use this to do crazy things</strong>, like ban everything being requested by a particular client’s IP address, or ban everything being requested by the Chromium browser. As these requests hit Varnish, objects are invalidated and refreshed from the originating server.</p>
    <p>Issuing bans that depend on the request opens up some interesting possibilities. However, there is one downside to the process: A very long list of bans could slow down content delivery.</p>
    <p>There is a worker thread assigned to the task of shortening the list of bans, “the ban lurker”. The ban lurker tries to match a ban against applicable objects. When a ban has been matched against all objects older than itself, it is discarded.</p>
    <p>As the ban lurker iterates through the bans, it doesn’t have an HTTP request that it is trying to serve. So, any bans that rely on data from the request cannot be tested by the ban lurker. To keep ban performance up, then, we would recommend not using request data in the bans. If you need to ban something that is typically in the request, like the URL, you can copy the data from the request to the object in <code>vcl_fetch</code>, like this:</p>
    <pre><code>set beresp.http.x-url = req.url;&#x000A;    </code></pre>
    <p>Now, you’ll be able to use bans on <code>obj.http.x-url</code>. Remember that the <code>beresp</code> objects turn into <code>obj</code> as it gets stored in cache.</p>
    <h3>Tagging Content For Bans</h3>
    <p>Bans are often a lot more effective when you give Varnish a bit of help. If the object has an <code>X-Article-id</code> header, then you don’t need to know all of the URLs that the object is presented as.</p>
    <p>For pages that depend on several objects, you could have the content management system add an <code>X-depends-on</code> header. Here, you’d list the objects that should trigger an update of the current document. To take our news website again, you might use this to list all articles mentioned on the front page:</p>
    <pre><code>X-depends-on: 3483 4376 32095 28372&#x000A;    </code></pre>
    <p>Naturally, then, if one of the articles changes, you would issue a ban, like this:</p>
    <pre><code>ban obj.http.x-depends-on ~ “\D4376\D”&#x000A;    </code></pre>
    <p>This is potentially very powerful. Imagine making the database issue these invalidation requests through triggers, thus eliminating the need to change the middleware layer. Neat, eh?</p>
    <h3>Graceful Cache Invalidations</h3>
    <p>Imagine purging something from Varnish and then the origin server that was supposed to replace the content suddenly crashes. You’ve just thrown away your only workable copy of the content. What have you done?! Turns out that quite a few content management systems crash on a regular basis.</p>
    <p>Ideally, we would want to put the object in a third state — to invalidate it on the condition that we’re able to get some new content. This third state exists in Varnish: It is called “grace,” and it is used with TTL-based invalidations. After an object expires, it is kept in memory in case the back-end server crashes. If Varnish can’t talk to the back end, then it checks to see whether any graced objects match, and it serves those instead.</p>
    <p>One Varnish module (or VMOD), named <code>softpurge</code>, allows you to invalidate an object by putting it into the grace state. Using it is simple. Just replace the <code>PURGE</code> VCL with the VCL that uses the <code>softpurge</code> VMOD.</p>
    <pre><code>import softpurge;&#x000A;    sub vcl_hit {&#x000A;    	if (req.method == "PURGE") {&#x000A;    		softpurge.softpurge();&#x000A;    		error 200 “Successful softpurge”;&#x000A;    	}&#x000A;    }&#x000A;    &#x000A;    sub vcl_miss {&#x000A;    	if (req.method == "PURGE) {&#x000A;    		softpurge.softpurge();&#x000A;    		error 200 "Successful softpurge";&#x000A;    	}&#x000A;    }&#x000A;    </code></pre>
    <h3>Distributing Cache Invalidations Events</h3>
    <p>All of the methods listed above describe the process of invalidating content on a single cache server. Most serious configurations would have more than one Varnish server. If you have two, which should give enough oomph for most websites, then you would want to issue one invalidation event for each server. However, if you have 20 or 30 Varnish servers, then you really wouldn’t want to bog down the application by having it loop through a huge list of servers.</p>
    <p>Instead, you would want <strong>a single API end point to which you can send your purges</strong>, having it distribute the invalidation event to all of your Varnish servers. For reference, here is a very simple invalidation service written in shell script. It will listen on port 2000 and invalidate URLs to three different servers (<code>alfa</code>, <code>beta</code> and <code>gamma</code>) using cURL.</p>
    <pre><code>nc -l 2000 | while true&#x000A;    	do read url&#x000A;    	for srv in “alfa” “beta” “gamma”&#x000A;    		do curl -m 2 -x $srv -X PURGE $url&#x000A;    	done&#x000A;    done&#x000A;    </code></pre>
    <p>It might not be suitable for production because the error handling leaves something to be desired!</p>
    <p><strong>Cache invalidation</strong> is almost as important as caching. Therefore, having a sound strategy for invalidating the content is crucial to maintaining high performance and having a high cache-hit ratio. If you maintain a high hit rate, then you’ll need fewer servers and will have happier users and probably less downtime. With this, you’re hopefully more comfortable using tools like these to get stale content out of your cache.</p>
    <p><em>(al, ml, il)</em></p>
    <p>The post <a href="http://www.smashingmagazine.com/2014/04/23/cache-invalidation-strategies-with-varnish-cache/" rel="nofollow external" class="bo">Cache Invalidation Strategies With Varnish Cache</a> appeared first on <a href="http://www.smashingmagazine.com" rel="nofollow external" class="bo">Smashing Magazine</a>.</p>
    </div>
]]>
</Body>
<Summary>Phil Karlton once said, “There are only two hard things in Computer Science: cache invalidation and naming things.” This article is about the harder of these two: cache invalidation. It’s directed...</Summary>
<Website>http://www.smashingmagazine.com/2014/04/23/cache-invalidation-strategies-with-varnish-cache/</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/44121/guest@my.umbc.edu/c247930dbbc51a1166634faa2805a7a2/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>optimization</Tag>
<Tag>performance</Tag>
<Tag>php</Tag>
<Tag>sql</Tag>
<Tag>techniques</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>Wed, 23 Apr 2014 06:00:07 -0400</PostedAt>
</NewsItem>

</News>
