<?xml version="1.0"?>
<News hasArchived="true" page="7737" pageCount="10928" pageSize="10" timestamp="Fri, 06 Nov 2026 04:39:50 -0500" url="https://my3.my.umbc.edu/posts.xml?page=7737">
<NewsItem contentIssues="true" id="43787" important="false" status="posted" url="https://my3.my.umbc.edu/posts/43787">
<Title>Thank You for Helping Our Students!</Title>
<Body>
<![CDATA[
    <div class="html-content">After a very successful Career Week that included the Clothing Closet and Sweeten Up Your Network events, we wanted to thank you for helping our students. Whether you volunteered your time or donated clothes, your support helps UMBC students succeed. … <a href="http://umbcalumni.wordpress.com/2014/04/21/thank-you-for-helping-our-students/" rel="nofollow external" class="bo">Continue reading <span>→</span></a>
    </div>
]]>
</Body>
<Summary>After a very successful Career Week that included the Clothing Closet and Sweeten Up Your Network events, we wanted to thank you for helping our students. Whether you volunteered your time or...</Summary>
<Website>http://umbcalumni.wordpress.com/2014/04/21/thank-you-for-helping-our-students/</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/43787/guest@my.umbc.edu/74f2a8cd825feb8ae0f5e6e2692828ce/api/pixel</TrackingUrl>
<Tag>alumni-events</Tag>
<Tag>career-week</Tag>
<Tag>clothing-closet</Tag>
<Tag>clothing-drive</Tag>
<Tag>current-students</Tag>
<Tag>giving</Tag>
<Tag>networking</Tag>
<Tag>news-and-updates</Tag>
<Tag>saa</Tag>
<Tag>student-alumni-association</Tag>
<Tag>student-networking</Tag>
<Tag>umbc</Tag>
<Tag>university-of-maryland-baltimore-county</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>Mon, 21 Apr 2014 15:36:56 -0400</PostedAt>
</NewsItem>

<NewsItem contentIssues="false" id="43786" important="false" status="posted" url="https://my3.my.umbc.edu/posts/43786">
<Title>NEW! Internship &amp; Research Positions for CNMS Students</Title>
<Body>
<![CDATA[
    <div class="html-content">During the last week, multiple internship positions have been posted to UMBCworks. Check out these new positions today!<br><br>Lakota Technical Solutions, Inc.<br>Summer Engineering Intern<br>UMBCworks ID: 9263068<br>Application Deadline: 04/30/14<br> <br>United States Department of Agriculture (USDA) Agricultural Research Service (ARS)<br>Washington Internship for Native Students<br>UMBCworks ID: 9265233<br>Application Deadline: 05/16/14<br> <br>Deborah A. Wilson, DDS, PA<br>Summer 2014- Paid Dental Assistant/Receptionist<br>UMBCworks ID: 9260279<br>Application Deadline: 06/30/14<br> <br>Clean Green Chesapeake<br>Summer 2014 Intern- Algae Cultivation<br>UMBCworks ID: 9264546<br>Application Deadline: 06/30/14<br><br>To access these positions, login to your UMBCworks account (via the link in the Jobs &amp; Internships topic in myUMBC) and find details and application instructions as well as hundreds of other job postings!  <br><br>Please note you MUST have an approved resume to apply to positions. To schedule an appoint access our online system in UMBCworks or call 410-455-2216. <br><br>
    </div>
]]>
</Body>
<Summary>During the last week, multiple internship positions have been posted to UMBCworks. Check out these new positions today!  Lakota Technical Solutions, Inc. Summer Engineering Intern UMBCworks ID:...</Summary>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/43786/guest@my.umbc.edu/3ae798a0ef2ac25415f2771a0841ba9c/api/pixel</TrackingUrl>
<Group token="careers">Career Center</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/careers</GroupUrl>
<AvatarUrl>https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/018/729f2c7eeeab66f50f4ab3677539a585/xsmall.png?1411655278</AvatarUrl>
<AvatarUrl size="original">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/018/729f2c7eeeab66f50f4ab3677539a585/original.jpg?1411655278</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/018/729f2c7eeeab66f50f4ab3677539a585/xxlarge.png?1411655278</AvatarUrl>
<AvatarUrl size="xlarge">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/018/729f2c7eeeab66f50f4ab3677539a585/xlarge.png?1411655278</AvatarUrl>
<AvatarUrl size="large">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/018/729f2c7eeeab66f50f4ab3677539a585/large.png?1411655278</AvatarUrl>
<AvatarUrl size="medium">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/018/729f2c7eeeab66f50f4ab3677539a585/medium.png?1411655278</AvatarUrl>
<AvatarUrl size="small">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/018/729f2c7eeeab66f50f4ab3677539a585/small.png?1411655278</AvatarUrl>
<AvatarUrl size="xsmall">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/018/729f2c7eeeab66f50f4ab3677539a585/xsmall.png?1411655278</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/018/729f2c7eeeab66f50f4ab3677539a585/xxsmall.png?1411655278</AvatarUrl>
<Sponsor>Career Services Center</Sponsor>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>true</CommentsAllowed>
<PostedAt>Mon, 21 Apr 2014 15:17:25 -0400</PostedAt>
</NewsItem>

<NewsItem contentIssues="true" id="43785" important="false" status="posted" url="https://my3.my.umbc.edu/posts/43785">
<Title>NEW! Full-Time and Part-Time Postings for CNMS Students</Title>
<Body>
<![CDATA[
    <div class="html-content">During the last week, multiple full-time and part-time positions have been posted to UMBCworks. Check out these key positions today!<br><br>Technical Services/ Problem Solver<br>Epic<br>UMBCworks ID: 9254634<br>Application Deadline:06/17/14<br> <br>Century Engineering, Inc.<br>Environmental Scientist<br>UMBCworks ID: 9265436<br>Application Deadline: 7/16/14<br> <br>Schneider Electric<br>Bid and Proposal Executive<br>UMBCworks ID: 9265217<br>Application Deadline: 08/01/14<br> <br>TeachUSA<br>Stem Cell Manufacturing/ Lab Technician<br>UMBCworks ID: 9265403<br>Application Deadline: 08/13/14<br> <br>University of Rochester Department of Brain and Cognitive Sciences<br>Lab Manager/ Research Assistant<br>UMBCworks ID: 9265487<br>Application Deadline: 08/15/14<br><br>To access these positions, login to your UMBCworks account (via the link in the Jobs &amp; Internships topic in myUMBC) and find details and application instructions as well as hundreds of other job postings!  <br><br>Please note you MUST have an approved resume to apply to positions. To schedule an appoint access our online system in UMBCworks or call 410-455-2216.</div>
]]>
</Body>
<Summary>During the last week, multiple full-time and part-time positions have been posted to UMBCworks. Check out these key positions today!  Technical Services/ Problem Solver Epic UMBCworks ID: 9254634...</Summary>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/43785/guest@my.umbc.edu/df16040f14956fb139a20fa5d1366545/api/pixel</TrackingUrl>
<Group token="careers">Career Center</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/careers</GroupUrl>
<AvatarUrl>https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/018/729f2c7eeeab66f50f4ab3677539a585/xsmall.png?1411655278</AvatarUrl>
<AvatarUrl size="original">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/018/729f2c7eeeab66f50f4ab3677539a585/original.jpg?1411655278</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/018/729f2c7eeeab66f50f4ab3677539a585/xxlarge.png?1411655278</AvatarUrl>
<AvatarUrl size="xlarge">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/018/729f2c7eeeab66f50f4ab3677539a585/xlarge.png?1411655278</AvatarUrl>
<AvatarUrl size="large">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/018/729f2c7eeeab66f50f4ab3677539a585/large.png?1411655278</AvatarUrl>
<AvatarUrl size="medium">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/018/729f2c7eeeab66f50f4ab3677539a585/medium.png?1411655278</AvatarUrl>
<AvatarUrl size="small">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/018/729f2c7eeeab66f50f4ab3677539a585/small.png?1411655278</AvatarUrl>
<AvatarUrl size="xsmall">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/018/729f2c7eeeab66f50f4ab3677539a585/xsmall.png?1411655278</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/018/729f2c7eeeab66f50f4ab3677539a585/xxsmall.png?1411655278</AvatarUrl>
<Sponsor>Career Services Center</Sponsor>
<ThumbnailUrl size="xxlarge">https://assets2-my.umbc.edu/system/shared/thumbnails/news/000/043/785/c05225ad3adfb3f4b73a7d7d04d3c2d7/xxlarge.jpg?1398144055</ThumbnailUrl>
<ThumbnailUrl size="xlarge">https://assets4-my.umbc.edu/system/shared/thumbnails/news/000/043/785/c05225ad3adfb3f4b73a7d7d04d3c2d7/xlarge.jpg?1398144055</ThumbnailUrl>
<ThumbnailUrl size="large">https://assets4-my.umbc.edu/system/shared/thumbnails/news/000/043/785/c05225ad3adfb3f4b73a7d7d04d3c2d7/large.jpg?1398144055</ThumbnailUrl>
<ThumbnailUrl size="medium">https://assets1-my.umbc.edu/system/shared/thumbnails/news/000/043/785/c05225ad3adfb3f4b73a7d7d04d3c2d7/medium.jpg?1398144055</ThumbnailUrl>
<ThumbnailUrl size="small">https://assets1-my.umbc.edu/system/shared/thumbnails/news/000/043/785/c05225ad3adfb3f4b73a7d7d04d3c2d7/small.jpg?1398144055</ThumbnailUrl>
<ThumbnailUrl size="xsmall">https://assets4-my.umbc.edu/system/shared/thumbnails/news/000/043/785/c05225ad3adfb3f4b73a7d7d04d3c2d7/xsmall.jpg?1398144055</ThumbnailUrl>
<ThumbnailUrl size="xxsmall">https://assets2-my.umbc.edu/system/shared/thumbnails/news/000/043/785/c05225ad3adfb3f4b73a7d7d04d3c2d7/xxsmall.jpg?1398144055</ThumbnailUrl>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>true</CommentsAllowed>
<PostedAt>Mon, 21 Apr 2014 15:15:30 -0400</PostedAt>
<EditAt>Tue, 22 Apr 2014 17:13:33 -0400</EditAt>
</NewsItem>

<NewsItem contentIssues="true" id="43906" important="false" status="posted" url="https://my3.my.umbc.edu/posts/43906">
<Title>With our #webinar still fresh on our minds, we can took to see why leadership is...</Title>
<Body>
<![CDATA[
    <div class="html-content">With our #webinar still fresh on our minds, we can took to see why leadership is such an important tool for any success. Thank you again to those who participated Friday! (via <a href="/profile.php?id=10423517786" title="To tag someone, type @ and then the friend's name" rel="nofollow external" class="bo">Harvard Business Review</a>)<br><br><a href="http://l.facebook.com/l.php?u=http%3A%2F%2Fblogs.hbr.org%2F2014%2F04%2Fto-create-change-leadership-is-more-important-than-authority%2F%3Futm_source%3DSocialflow%26utm_medium%3DTweet%26utm_campaign%3DSocialflow&amp;h=RAQHfeAYH&amp;s=1" title="" rel="nofollow external" class="bo"><img src="https://fbexternal-a.akamaihd.net/safe_image.php?d=AQAIomHdq3zJK14e&amp;w=154&amp;h=154&amp;url=http%3A%2F%2Fhbrblogs.files.wordpress.com%2F2014%2F04%2F20140422_1.jpg" alt="" style="max-width: 100%; height: auto;"></a><br><a href="http://l.facebook.com/l.php?u=http%3A%2F%2Fblogs.hbr.org%2F2014%2F04%2Fto-create-change-leadership-is-more-important-than-authority%2F%3Futm_source%3DSocialflow%26utm_medium%3DTweet%26utm_campaign%3DSocialflow&amp;h=gAQF93wqv&amp;s=1" rel="nofollow external" class="bo">To Create Change, Leadership Is More Important Than Authority</a><br>blogs.hbr.org<br>And you can't rely on the facts to make your case, either.</div>
]]>
</Body>
<Summary>With our #webinar still fresh on our minds, we can took to see why leadership is such an important tool for any success. Thank you again to those who participated Friday! (via Harvard Business...</Summary>
<Website>http://www.facebook.com/umbctraining/posts/10151973688866076</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/43906/guest@my.umbc.edu/c6a9744bdc67ab983b4ffe8d3e567ed5/api/pixel</TrackingUrl>
<Tag>ccna</Tag>
<Tag>ceh</Tag>
<Tag>centers</Tag>
<Tag>cisco</Tag>
<Tag>cyber</Tag>
<Tag>cybersecurity</Tag>
<Tag>information</Tag>
<Tag>it</Tag>
<Tag>leadership</Tag>
<Tag>management</Tag>
<Tag>microsoft</Tag>
<Tag>project</Tag>
<Tag>security</Tag>
<Tag>technology</Tag>
<Tag>training</Tag>
<Tag>umbc</Tag>
<Group token="retired-575">UMBC Training Centers</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/retired-575</GroupUrl>
<AvatarUrl>https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/575/83756b985266168d0d29c6c9a146db50/xsmall.png?1361981335</AvatarUrl>
<AvatarUrl size="original">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/575/83756b985266168d0d29c6c9a146db50/original.jpg?1361981335</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/575/83756b985266168d0d29c6c9a146db50/xxlarge.png?1361981335</AvatarUrl>
<AvatarUrl size="xlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/575/83756b985266168d0d29c6c9a146db50/xlarge.png?1361981335</AvatarUrl>
<AvatarUrl size="large">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/575/83756b985266168d0d29c6c9a146db50/large.png?1361981335</AvatarUrl>
<AvatarUrl size="medium">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/575/83756b985266168d0d29c6c9a146db50/medium.png?1361981335</AvatarUrl>
<AvatarUrl size="small">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/575/83756b985266168d0d29c6c9a146db50/small.png?1361981335</AvatarUrl>
<AvatarUrl size="xsmall">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/575/83756b985266168d0d29c6c9a146db50/xsmall.png?1361981335</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/575/83756b985266168d0d29c6c9a146db50/xxsmall.png?1361981335</AvatarUrl>
<Sponsor>UMBC Training Centers</Sponsor>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>true</CommentsAllowed>
<PostedAt>Mon, 21 Apr 2014 14:18:59 -0400</PostedAt>
</NewsItem>

<NewsItem contentIssues="false" id="43784" important="false" status="posted" url="https://my3.my.umbc.edu/posts/43784">
<Title>2012 Faculty Workload Survey Research Report</Title>
<Tagline>From the Federal Demonstration Partnership (FDP)</Tagline>
<Body>
<![CDATA[
    <div class="html-content">This report contains the results of an FDP survey that studied administrative workloads for PIs, the implications on the impact for research, and emergent themes. <br>
    </div>
]]>
</Body>
<Summary>This report contains the results of an FDP survey that studied administrative workloads for PIs, the implications on the impact for research, and emergent themes.</Summary>
<Website>http://sites.nationalacademies.org/xpedio/groups/pgasite/documents/webpage/pga_087667.pdf</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/43784/guest@my.umbc.edu/776935ff7597997394cb0b252f211632/api/pixel</TrackingUrl>
<Group token="osp">Office of Sponsored Programs (OSP)</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/osp</GroupUrl>
<AvatarUrl>https://assets1-my.umbc.edu/images/avatars/group/10/xsmall.png?1793799644</AvatarUrl>
<AvatarUrl size="original">https://assets2-my.umbc.edu/images/avatars/group/10/original.png?1793799644</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets4-my.umbc.edu/images/avatars/group/10/xxlarge.png?1793799644</AvatarUrl>
<AvatarUrl size="xlarge">https://assets3-my.umbc.edu/images/avatars/group/10/xlarge.png?1793799644</AvatarUrl>
<AvatarUrl size="large">https://assets3-my.umbc.edu/images/avatars/group/10/large.png?1793799644</AvatarUrl>
<AvatarUrl size="medium">https://assets2-my.umbc.edu/images/avatars/group/10/medium.png?1793799644</AvatarUrl>
<AvatarUrl size="small">https://assets3-my.umbc.edu/images/avatars/group/10/small.png?1793799644</AvatarUrl>
<AvatarUrl size="xsmall">https://assets1-my.umbc.edu/images/avatars/group/10/xsmall.png?1793799644</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets3-my.umbc.edu/images/avatars/group/10/xxsmall.png?1793799644</AvatarUrl>
<Sponsor>Office of Sponsored Programs (OSP)</Sponsor>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>false</CommentsAllowed>
<PostedAt>Mon, 21 Apr 2014 14:07:45 -0400</PostedAt>
</NewsItem>

<NewsItem contentIssues="true" id="43783" important="false" status="posted" url="https://my3.my.umbc.edu/posts/43783">
<Title>UMBC Community Garden wins SGA Prove-it grant funding</Title>
<Body>
<![CDATA[
    <div class="html-content">
    <p>Along with Team Drive-Less (a proposal to install a car counter at the Commons Garage to indiciate when it is full), the proposed project, 'The Garden@ UMBC' won the top number of Prove-it votes with 70% of the students voting for the community garden. The organizers have been building momentum and partnerships and seeking approval and space for over a year. <strong>They're now asking anyone interested in a garden plot to use their <a href="https://docs.google.com/forms/d/1oO_fT7T4xFvGVvbg6HgiPupXrKWfPXDwPQTA-lnQtJM/viewform" rel="nofollow external" class="bo">Food Plot Application</a>.</strong></p>
    <p>In their own words:</p>
    <blockquote>
    <p>"We're building a community food garden on UMBC's campus. We are growing food, and a lot of it! If a Master Gardener used the space we've been provided, we could grow over $39,000 worth of food a year--that's incredible.</p>
    
    <p>In addition to that we're trying to bring all of UMBC together: all majors, all interests, every kind of student to show that we all can contribute to something together. The actual space is a collaboration of Mechanical Engineering students and Linehan Visual Art Scholars, we've already had three classes from three different departments incorporate our project into their curriculum, and the Undergraduate Research Awards have already begun to be doled out.</p>
    
    <p>Above all, The Garden is a model for how students can change their university. Research doesn't just exist in the lab, and service doesn't have to be at an off campus service site. We don't have to go to someone else for those opportunities. As students we can create them on our campus on our terms. We've already established the pool of campus and community partners to support every kind of engagement possible, and now we need the students.</p>
    
    <p>Let's grow UMBC together."</p>
    </blockquote>
    
    Students, Faculty, and Staff can indicate their interest in a plot in the garden by registering with this form: <a href="https://docs.google.com/forms/d/1nwIsAgSvZ0wEJpgjoFQXIec_J3tTv3VUBUna2qHUQ-g/viewform" rel="nofollow external" class="bo">Food Plot Application</a>.<div><br></div>
    <div>Image: Members of The Garden celebrating <a href="http://my.umbc.edu/news/43898" rel="nofollow external" class="bo">EcoFest</a>
    </div>
    </div>
]]>
</Body>
<Summary>Along with Team Drive-Less (a proposal to install a car counter at the Commons Garage to indiciate when it is full), the proposed project, 'The Garden@ UMBC' won the top number of Prove-it votes...</Summary>
<Website>https://www.facebook.com/growumbc</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/43783/guest@my.umbc.edu/c60298e84267f6293840e55ae6de6d81/api/pixel</TrackingUrl>
<Tag>compost</Tag>
<Tag>earth</Tag>
<Tag>eco</Tag>
<Tag>environment</Tag>
<Tag>environmental</Tag>
<Tag>garden</Tag>
<Tag>green</Tag>
<Tag>improveit</Tag>
<Tag>proveit</Tag>
<Tag>sga</Tag>
<Tag>soil</Tag>
<Tag>sustainability</Tag>
<Tag>vegetables</Tag>
<Tag>vegges</Tag>
<Group token="sustainability">Sustainability Matters at UMBC</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/sustainability</GroupUrl>
<AvatarUrl>https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/086/91091ac32f525d88daa6d6b721420ac1/xsmall.png?1586269437</AvatarUrl>
<AvatarUrl size="original">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/086/91091ac32f525d88daa6d6b721420ac1/original.png?1586269437</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/086/91091ac32f525d88daa6d6b721420ac1/xxlarge.png?1586269437</AvatarUrl>
<AvatarUrl size="xlarge">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/086/91091ac32f525d88daa6d6b721420ac1/xlarge.png?1586269437</AvatarUrl>
<AvatarUrl size="large">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/086/91091ac32f525d88daa6d6b721420ac1/large.png?1586269437</AvatarUrl>
<AvatarUrl size="medium">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/086/91091ac32f525d88daa6d6b721420ac1/medium.png?1586269437</AvatarUrl>
<AvatarUrl size="small">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/086/91091ac32f525d88daa6d6b721420ac1/small.png?1586269437</AvatarUrl>
<AvatarUrl size="xsmall">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/086/91091ac32f525d88daa6d6b721420ac1/xsmall.png?1586269437</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/086/91091ac32f525d88daa6d6b721420ac1/xxsmall.png?1586269437</AvatarUrl>
<Sponsor>Sustainability Matters at UMBC</Sponsor>
<ThumbnailUrl size="xxlarge">https://assets3-my.umbc.edu/system/shared/thumbnails/news/000/043/783/8a0d997c88054bf6ac6646d9b3c0a020/xxlarge.jpg?1398370078</ThumbnailUrl>
<ThumbnailUrl size="xlarge">https://assets2-my.umbc.edu/system/shared/thumbnails/news/000/043/783/8a0d997c88054bf6ac6646d9b3c0a020/xlarge.jpg?1398370078</ThumbnailUrl>
<ThumbnailUrl size="large">https://assets4-my.umbc.edu/system/shared/thumbnails/news/000/043/783/8a0d997c88054bf6ac6646d9b3c0a020/large.jpg?1398370078</ThumbnailUrl>
<ThumbnailUrl size="medium">https://assets3-my.umbc.edu/system/shared/thumbnails/news/000/043/783/8a0d997c88054bf6ac6646d9b3c0a020/medium.jpg?1398370078</ThumbnailUrl>
<ThumbnailUrl size="small">https://assets2-my.umbc.edu/system/shared/thumbnails/news/000/043/783/8a0d997c88054bf6ac6646d9b3c0a020/small.jpg?1398370078</ThumbnailUrl>
<ThumbnailUrl size="xsmall">https://assets1-my.umbc.edu/system/shared/thumbnails/news/000/043/783/8a0d997c88054bf6ac6646d9b3c0a020/xsmall.jpg?1398370078</ThumbnailUrl>
<ThumbnailUrl size="xxsmall">https://assets3-my.umbc.edu/system/shared/thumbnails/news/000/043/783/8a0d997c88054bf6ac6646d9b3c0a020/xxsmall.jpg?1398370078</ThumbnailUrl>
<PawCount>82</PawCount>
<CommentCount>9</CommentCount>
<CommentsAllowed>true</CommentsAllowed>
<PostedAt>Mon, 21 Apr 2014 13:41:55 -0400</PostedAt>
<EditAt>Thu, 24 Apr 2014 16:15:45 -0400</EditAt>
</NewsItem>

<NewsItem contentIssues="false" id="43781" important="false" status="posted" url="https://my3.my.umbc.edu/posts/43781">
<Title>Congratulations to MCS's Dr. Adelman!</Title>
<Body>
<![CDATA[
    <div class="html-content">Dr. Adelman's new book, "Beyond the Checkpoint: Visual Practices in America's Global War on Terror" is now available for pre-order on Amazon: <a href="http://goo.gl/MjjmdU">http://goo.gl/MjjmdU</a>.  Congratulations Dr. Adelman!<br>
    </div>
]]>
</Body>
<Summary>Dr. Adelman's new book, "Beyond the Checkpoint: Visual Practices in America's Global War on Terror" is now available for pre-order on Amazon: http://goo.gl/MjjmdU.  Congratulations Dr. Adelman!</Summary>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/43781/guest@my.umbc.edu/cc5cc15ae1bd034686845fa2acfcb941/api/pixel</TrackingUrl>
<Group token="mcs">Media &amp;amp; Communication Studies</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/mcs</GroupUrl>
<AvatarUrl>https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/491/e2e495edc31bdc4fe9517af2ddcb3202/xsmall.png?1639004057</AvatarUrl>
<AvatarUrl size="original">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/491/e2e495edc31bdc4fe9517af2ddcb3202/original.png?1639004057</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/491/e2e495edc31bdc4fe9517af2ddcb3202/xxlarge.png?1639004057</AvatarUrl>
<AvatarUrl size="xlarge">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/491/e2e495edc31bdc4fe9517af2ddcb3202/xlarge.png?1639004057</AvatarUrl>
<AvatarUrl size="large">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/491/e2e495edc31bdc4fe9517af2ddcb3202/large.png?1639004057</AvatarUrl>
<AvatarUrl size="medium">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/491/e2e495edc31bdc4fe9517af2ddcb3202/medium.png?1639004057</AvatarUrl>
<AvatarUrl size="small">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/491/e2e495edc31bdc4fe9517af2ddcb3202/small.png?1639004057</AvatarUrl>
<AvatarUrl size="xsmall">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/491/e2e495edc31bdc4fe9517af2ddcb3202/xsmall.png?1639004057</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/491/e2e495edc31bdc4fe9517af2ddcb3202/xxsmall.png?1639004057</AvatarUrl>
<Sponsor>Media &amp; Communication Studies</Sponsor>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>true</CommentsAllowed>
<PostedAt>Mon, 21 Apr 2014 13:18:23 -0400</PostedAt>
<EditAt>Thu, 01 May 2014 13:49:24 -0400</EditAt>
</NewsItem>

<NewsItem contentIssues="false" id="43780" important="false" status="posted" url="https://my3.my.umbc.edu/posts/43780">
<Title>Celebrate Earth Day: hike, tree-planting &amp; more (on campus)!</Title>
<Tagline>Join us for free, fun, green events all week!</Tagline>
<Body>
<![CDATA[
    <div class="html-content">Spring is blossoming at UMBC and we're ready to celebrate with Earth Day events.  Come out to enjoy an environmental festival on the quad, a tree planting, a nature hike, a green campus tour, and more!<br><br><strong>Monday April 21st </strong><br><ul><li>7PM: Watch Dr Suess's 'The Lorax' and TED talks, and enjoy free popcorn in the Commons Sports Zone</li></ul>
    <br><strong>Tuesday April 22nd</strong><br><ul>
    <li>11AM-2PM: Make buttons, planters, mason jars, reusable bags, and more on Commons Terrace</li>
    <li>3- 4:30PM: Campus Sustainability Tour, meet at the entrance to the new Performing Arts building</li>
    </ul>    <br><strong>Wednesday April 23rd </strong><br><ul>
    <li>10AM -2PM: Celebrate at the main festival, with music, games, speakers, performances, food, crafts, giveaways, and many organizations.</li>
    <li>3PM: Volunteer to help us plant trees by Walker Garage. Tree planting training included.</li>
    </ul>
    <br><strong>Thursday April 24th</strong><br><ul><li>6PM: Tour the trails of UMBC's Conservation and Environmental Research Area (CERA), departing from Commons Loop</li></ul>
    <br><strong>More related events this week:</strong><br><ul>
    <li><a href="http://umbcinsights.wordpress.com/2014/04/16/earth-day-5k-run-423/" rel="nofollow external" class="bo">4/23: Earth Day 5k Run</a></li>
    <li><a href="http://umbcinsights.wordpress.com/2014/04/16/ges-seminar-sediment-withdrawals-and-deposits-chesapeake-bay-watershed-its-not-just-banks-423/" rel="nofollow external" class="bo">4/23: Sediment withdrawals and deposits, Chesapeake Bay Watershed: It’s not just banks!</a></li>
    <li><a href="http://umbcinsights.wordpress.com/2014/04/16/cuere-seminar-combined-sewer-overflows-425/" rel="nofollow external" class="bo">4/25: Combined Sewer Overflows are an Important Source of Wastewater Contaminants in the Urban Environment”.</a></li>
    </ul>
    <br>
    </div>
]]>
</Body>
<Summary>Spring is blossoming at UMBC and we're ready to celebrate with Earth Day events.  Come out to enjoy an environmental festival on the quad, a tree planting, a nature hike, a green campus tour, and...</Summary>
<Website>http://ecofest.umbc.edu</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/43780/guest@my.umbc.edu/f6bc318169ff85cb583164dea22faec9/api/pixel</TrackingUrl>
<Tag>art</Tag>
<Tag>cera</Tag>
<Tag>day</Tag>
<Tag>earth</Tag>
<Tag>eco</Tag>
<Tag>green</Tag>
<Tag>hike</Tag>
<Tag>sustainability</Tag>
<Tag>tree</Tag>
<Group token="sustainability">Sustainability Matters at UMBC</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/sustainability</GroupUrl>
<AvatarUrl>https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/086/91091ac32f525d88daa6d6b721420ac1/xsmall.png?1586269437</AvatarUrl>
<AvatarUrl size="original">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/086/91091ac32f525d88daa6d6b721420ac1/original.png?1586269437</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/086/91091ac32f525d88daa6d6b721420ac1/xxlarge.png?1586269437</AvatarUrl>
<AvatarUrl size="xlarge">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/086/91091ac32f525d88daa6d6b721420ac1/xlarge.png?1586269437</AvatarUrl>
<AvatarUrl size="large">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/086/91091ac32f525d88daa6d6b721420ac1/large.png?1586269437</AvatarUrl>
<AvatarUrl size="medium">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/086/91091ac32f525d88daa6d6b721420ac1/medium.png?1586269437</AvatarUrl>
<AvatarUrl size="small">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/086/91091ac32f525d88daa6d6b721420ac1/small.png?1586269437</AvatarUrl>
<AvatarUrl size="xsmall">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/086/91091ac32f525d88daa6d6b721420ac1/xsmall.png?1586269437</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/086/91091ac32f525d88daa6d6b721420ac1/xxsmall.png?1586269437</AvatarUrl>
<Sponsor>Sustainability Matters at UMBC</Sponsor>
<PawCount>3</PawCount>
<CommentCount>1</CommentCount>
<CommentsAllowed>true</CommentsAllowed>
<PostedAt>Mon, 21 Apr 2014 13:15:20 -0400</PostedAt>
<EditAt>Mon, 21 Apr 2014 13:22:41 -0400</EditAt>
</NewsItem>

<NewsItem contentIssues="true" id="43779" important="false" status="posted" url="https://my3.my.umbc.edu/posts/43779">
<Title>Need An On-Campus Job?</Title>
<Tagline>The Campus Information Center is Hiring!</Tagline>
<Body>
<![CDATA[
    <div class="html-content">
    <p>The Campus Information Center (CIC) is currently hiring for the Fall 2014 semester. We are looking for underclassmen that are highly motivated and energetic with a general knowledge of the campus. Cash handling and prior customer service experience is preferred but not necessary. Weekend availability is a must. All applicants must also have at least a 2.5 GPA. </p>
    <p><br></p>
    <p>If you would like to work at the CIC and meet these requirements please send your availability, resume, and unofficial transcript via email to Cody Sizemore at <a href="mailto:csize@umbc.edu">csize@umbc.edu</a>. </p>
    <div><br></div>
    </div>
]]>
</Body>
<Summary>The Campus Information Center (CIC) is currently hiring for the Fall 2014 semester. We are looking for underclassmen that are highly motivated and energetic with a general knowledge of the campus....</Summary>
<Website>https://www.facebook.com/UMBC.CIC</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/43779/guest@my.umbc.edu/1d5ba056dfd084dc7b9ade76a2aa5a2c/api/pixel</TrackingUrl>
<Group token="cic">Campus Information Center (CIC)</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/cic</GroupUrl>
<AvatarUrl>https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/311/7180ee78abc8c4401d89f708582062e4/xsmall.png?1318518699</AvatarUrl>
<AvatarUrl size="original">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/311/7180ee78abc8c4401d89f708582062e4/original.png?1318518699</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/311/7180ee78abc8c4401d89f708582062e4/xxlarge.png?1318518699</AvatarUrl>
<AvatarUrl size="xlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/311/7180ee78abc8c4401d89f708582062e4/xlarge.png?1318518699</AvatarUrl>
<AvatarUrl size="large">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/311/7180ee78abc8c4401d89f708582062e4/large.png?1318518699</AvatarUrl>
<AvatarUrl size="medium">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/311/7180ee78abc8c4401d89f708582062e4/medium.png?1318518699</AvatarUrl>
<AvatarUrl size="small">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/311/7180ee78abc8c4401d89f708582062e4/small.png?1318518699</AvatarUrl>
<AvatarUrl size="xsmall">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/311/7180ee78abc8c4401d89f708582062e4/xsmall.png?1318518699</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/311/7180ee78abc8c4401d89f708582062e4/xxsmall.png?1318518699</AvatarUrl>
<Sponsor>Campus Information Center (CIC)</Sponsor>
<ThumbnailUrl size="xxlarge">https://assets4-my.umbc.edu/system/shared/thumbnails/news/000/043/779/064a232d4a0baf6bf0ab4dd7eec30ed9/xxlarge.jpg?1398098179</ThumbnailUrl>
<ThumbnailUrl size="xlarge">https://assets1-my.umbc.edu/system/shared/thumbnails/news/000/043/779/064a232d4a0baf6bf0ab4dd7eec30ed9/xlarge.jpg?1398098179</ThumbnailUrl>
<ThumbnailUrl size="large">https://assets1-my.umbc.edu/system/shared/thumbnails/news/000/043/779/064a232d4a0baf6bf0ab4dd7eec30ed9/large.jpg?1398098179</ThumbnailUrl>
<ThumbnailUrl size="medium">https://assets3-my.umbc.edu/system/shared/thumbnails/news/000/043/779/064a232d4a0baf6bf0ab4dd7eec30ed9/medium.jpg?1398098179</ThumbnailUrl>
<ThumbnailUrl size="small">https://assets1-my.umbc.edu/system/shared/thumbnails/news/000/043/779/064a232d4a0baf6bf0ab4dd7eec30ed9/small.jpg?1398098179</ThumbnailUrl>
<ThumbnailUrl size="xsmall">https://assets4-my.umbc.edu/system/shared/thumbnails/news/000/043/779/064a232d4a0baf6bf0ab4dd7eec30ed9/xsmall.jpg?1398098179</ThumbnailUrl>
<ThumbnailUrl size="xxsmall">https://assets2-my.umbc.edu/system/shared/thumbnails/news/000/043/779/064a232d4a0baf6bf0ab4dd7eec30ed9/xxsmall.jpg?1398098179</ThumbnailUrl>
<PawCount>43</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>true</CommentsAllowed>
<PostedAt>Mon, 21 Apr 2014 13:03:21 -0400</PostedAt>
</NewsItem>

<NewsItem contentIssues="true" id="43782" important="false" status="posted" url="https://my3.my.umbc.edu/posts/43782">
<Title>PhpStorm: When the IDE Really Matters</Title>
<Body>
<![CDATA[
    <div class="html-content">
    <p>Oh, I love fast and simple text editors. Being a Linux user, I lived years in the company of Kate and KWrite. With some tweaks and plugins I could make them really smart. I wrote whole projects in Perl, Bash, and even some PHP and Java in those editors. I can appreciate all the enthusiasm going around Sublime Text or TextMate, but I could not live without a full blown IDE today.<br></p>
    <h2>The Culture</h2>
    
    <p>I observed that there are two kind of programmers. The first kind has a tendency to use applications that can offer greater and greater code manipulation productivity but at the cost of the abrupt learning curve and difficulty in use. These programmers are the ones who prefer Vi(m) or Emacs.</p>
    
    <p>The second category of programmers tend to migrate from simple editors to IDEs. This is as natural of an evolution as the first category. However, it leads to a different mindset and different view of the project and the code. I am a programmer from this category so in this article we will talk about the IDE I use at the moment: <a href="http://www.jetbrains.com/phpstorm/" rel="nofollow external" class="bo">PhpStorm</a>.</p>
    
    <p>Tools and user preferences for applications are so volatile that I rarely write about a specific framework or application. However, if you use an application 10-14 hours each day, it becomes part of you, part of how you see your code, your projects. It becomes the highway for your day to day workflow. So it deserves to be mentioned and presented.</p>
    
    <hr>
    <h2>So, What's the Difference?</h2>
    
    <p>I used to bring up a fast text editor when I needed to code only a short script or program. But I don't anymore. Today's computers and IDEs are so fast that there is little difference between starting PhpStorm and writing the code or starting KWrite and writing the code. The application itself is almost as fast as an editor, and creating a project, even for one or two actual files is nothing slower that doing the same file creations in your editor.</p>
    
    <p>OK, OK... These are all similarities. But what is this IDE thing all about? IDE comes from Integrated Development Environment. This expression has two key parts: <em>integrated</em> and <em>development environment</em>. The development environment part can be seen as the editor and the specific features for source code manipulation: code writing features, highlighting, auto-complete, complex editing features like multi-select and multi-edit, refactoring tools, and so on. The integration part can be seen as integration between the development environment described above and various external tools, testing frameworks, document versioning system, debuggers, and UI builder tools.</p>
    
    <p>The key feature of an IDE is its understanding of the code you write. An IDE doesn't just have a list of command you can use in your favorite language, like PHP. It has complex algorithms to understand your code. PhpStorm will not suggest you a command or expression that would be syntactically incorrect. It knows, for example, that you can't write "<code>print('Hello World');</code>" directly inside a class, without putting it into a function. So it won't suggest the "<code>print()</code>" command when it can not be used. But this is just the tip of the iceberg. Let's see some more concrete examples.</p>
    
    <hr>
    <h2>Using PhpStorm for the Refactoring Legacy Code Tutorial Series</h2>
    
    <p>Yes. If you've read the first two parts of the Refactoring Legacy Code series, <a href="http://code.tutsplus.com/tutorials/refactoring-legacy-code-part-1-the-golden-master--cms-20331" rel="nofollow external" class="bo">The Golden Master</a> and <a href="http://code.tutsplus.com/tutorials/refactoring-legacy-code-part-2-magic-strings-constants--cms-20527" rel="nofollow external" class="bo">Magic Strings &amp; Constants</a>, you may have observed that there are screenshots shown in the tutorial with an IDE. That is how my PhpStorm looks like. And the following is how PhpStorm helps me, when teaching you to program.</p>
    
    <h3>Code Highlighting</h3>
    
    <p>This is essential. Most simple editors can also do basic code highlighting, but an IDE is a different story. Here you can have different highlighting setups for different languages like PHP, HTML, CSS, and so on. Each with it's own rules. For example, I like to have strings green in CSS and orange in PHP and HTML.</p>
    <img src="https://s3.amazonaws.com/cms-assets.tutsplus.com/uploads/users/45/posts/20787/image/highlighting-options.png" alt="" style="max-width: 100%; height: auto;"><p>On the left, you can see all the supported file types and languages (some may be added by plugins), in the center you can see the various PHP language elements that can be configured separately, in the top-right are the options each element can have, and at the bottom there is a preview.</p>
    
    <p>When we were hunting for magic strings in our refactoring session, we were able to easily spot these strings by just finding orange stuff on the screen. The same is true for magic constants and numbers. When those were sought for, the blue color was our friend.</p>
    
    <p>Structure and layout is essential when we need to understand source code, and proper coloring and highlighting is essential in this matter.</p>
    
    <h3>Refactoring Tools Overview</h3>
    
    <p>I've used many IDEs and editors throughout my career. The one that I really liked and appreciated was NetBeans. But after about five years of exclusive NetBeans usage, I had to give up on it. There is something PhpStorm can offer, that no other editor or IDE for PHP can do. This is a set of refactoring tools that are so needed in our day-to-day work.</p>
    
    <p>Highlighting, indenting, project management, templates, macros are all features found in most editors. Integrations with testing environments and debuggers are by definition part of any IDE. However, smart and complex refactoring tools are a totally different story.</p>
    
    <p>As programmers, we spend half of our time reading code, about 40% modifying and refactoring existing code, and, if we are lucky, really lucky, 10% writing totally new code. So having good, fast and reliable refactoring features will help us concentrate our efforts more on what to refactor and less on how to do it. We will save time also, but I consider the gain in less-effort to be much more important. When you can discard the thought about the process into your IDE, and only think about the logic, algorithm, dependencies, SOLID principles, it is a gain in productivity that must be considered.</p>
    
    <p>This is why I left the free and open source NetBeans for the payed PhpStorm. There is, in PhpStorm, a set of refactoring tools that makes it special, makes it worth paying for.</p>
    
    <h3>Introduce Local Variable</h3>
    
    <p>One of the simplest refactorings we've already worked with in <a href="http://code.tutsplus.com/tutorials/refactoring-legacy-code-part-2-magic-strings-constants--cms-20527" rel="nofollow external" class="bo">Magic Strings &amp; Constants</a> was Introduce Local Variable, also known as "Extract Variable". Here is a reminder with the steps we need to take to use this refactoring: </p>
    
    <ul>
    	<li>Add a variable with the desired value.</li>
    	<li>Find all usages of the value.</li>
    	<li>Replace all usages with the variable.</li>
    </ul>
    
    <p>These steps are easy to follow if we have a single value to be transformed into a variable, but what about step two? How do you reliably find all occurrences of that value? You need to analyze your code and take conscious decisions of what to replace and what, not. Here is an example.</p>
    <pre>class SomeClass {&#x000A;    &#x000A;        function printAPairOfPlayers() {&#x000A;    		echo "Players are:";&#x000A;    &#x000A;    		echo "Player name: " . $this-&gt;getRandomPlayerName();&#x000A;    		echo "Player name: " . $this-&gt;getRandomPlayerName();&#x000A;    	}&#x000A;    &#x000A;    	function printOnePlayer() {&#x000A;    		echo "Player name: " . $this-&gt;getRandomPlayerName();&#x000A;    	}&#x000A;    &#x000A;    	function getRandomPlayerName() {&#x000A;    		// Some logic to find player names //&#x000A;    		return $playerName;&#x000A;    	}&#x000A;    &#x000A;    }</pre>
    <p>In <code>printAPairOfPlayers()</code> we can observe that the string "<code>Player name: </code>" repeats twice. If we want to extract that string into a local variable, a variable inside the function, we will need to replace both occurrences in <code>printAPairOfPlayers()</code> but not the one in <code>printOnePlayer()</code>. If <code>printOnePlayer()</code> would be 100 lines below, we may not even realize that there is another duplication of the string in another method.</p>
    
    <p>So we want a local variable. We first create the variable, run the tests, then look for the string and find it in the second <code>echo</code> statements. We replace it, run the tests, we look again, we find it in the last <code>echo</code> statement, we replace it, we run the tests. We look again, we reach the end of the method. We decide we are done with our extract local variable refactoring. This is quite a demanding cognitive process, especially with ugly and not well understood code.</p>
    
    <p>Wouldn't it be useful to press a single shortcut, or select an option in a context menu and have all this done by the IDE? It would be awesome, and PhpStorm is quite capable of doing it for you.</p>
    
    <p>In the code above, just position your cursor inside the "<strong>Player name: </strong>" string anywhere and <strong>Right click</strong>.</p>
    <img src="https://s3.amazonaws.com/cms-assets.tutsplus.com/uploads/users/45/posts/20787/image/extract-variable-menu.png" alt="" style="max-width: 100%; height: auto;"><p>After selecting "<strong>Extract Variable...</strong>", PhpStorm will analyze your code and search for various pieces of code you may want to extract. It will propose two possiblities for our case.</p>
    <img src="https://s3.amazonaws.com/cms-assets.tutsplus.com/uploads/users/45/posts/20787/image/extract-variable-expression.png" alt="" style="max-width: 100%; height: auto;">This is not only a cool feature, but one very useful. There are so many cases when duplication can occur outside of your field of view. When an extraction is proposed, the analysis is made by PhpStorm throughout the entire code, not just the few lines you can see on the screen. In this case, the options are obvious. For our exercise, let's select just the string part, without concatenation.<img src="https://s3.amazonaws.com/cms-assets.tutsplus.com/uploads/users/45/posts/20787/image/extract-variable-specify-name.png" alt="" style="max-width: 100%; height: auto;"><p>Now that the piece of code we want to extract was identified, the next step is to name it. "<code>playerHeadersString</code>" seems a sensible variable name. You do not have to put "<code>$</code>" in front of the name in the input field. PhpStorm will put it in the code for you automatically. Another important aspect is that there is a checkbox. PhpStorm found all the occurrences for our variable. We selected to extract a local variable, so PhpStorm knew to search only in the current method and it found only two occurrences. The same string in the method <code>printOnePlayer(),</code> was not counted, nor proposed, and it will not be replaced. That would lead to incorrect code, and PhpStorm is smart enough to not write invalid code for you.</p>
    <img src="https://s3.amazonaws.com/cms-assets.tutsplus.com/uploads/users/45/posts/20787/image/extract-variable-refactored-local-variable.png" alt="" style="max-width: 100%; height: auto;"><h4>Less Tests</h4>
    <p>Another advantage of PhpStorm is that you don't have to run your tests often. When we did a manual refactoring we run our tests after each step. If we did a typo or replaced something that we thought was the same but in reality was not, we needed a safety net to quickly tell us so. However, PhpStorm will not replace something that is not logically correct in the context. You may be surprised that a piece of code you also expected to be extracted will not be, but at least you can be sure the resulting code will be correct. Plus, we have less steps. Manually, we do only a single step. After that single step we need to run our tests a single time.</p>
    
    <p>It doesn't matter how you look at it, it is easier, faster, and much less error prone than any other way to do the refactoring.</p>
    
    <h3>Extracting Class Variable</h3>
    
    <p>To extract our string into a class variable - also known as class field - we can use the "<strong>Extract Field</strong>" refactoring option from the same menu as above. We will be asked to identify the piece of code we need to extract, and we will be presented with a slightly different form.</p>
    <img src="https://s3.amazonaws.com/cms-assets.tutsplus.com/uploads/users/45/posts/20787/image/extract-field.png" alt="" style="max-width: 100%; height: auto;"><p>Besides its name, we now have three found occurrences. PhpStorm knew we wanted a class variable and it was capable of identifying the same string where needed. We also have options to initialize the variable in various places and set its visibility. By selecting the options as in the image, the resulting code will be as below.</p>
    <img src="https://s3.amazonaws.com/cms-assets.tutsplus.com/uploads/users/45/posts/20787/image/extract-field-refactored.png" alt="" style="max-width: 100%; height: auto;"><p>Of course, if you want it to be public, or initialized in the constructor, all you need to do is just select the appropriate options and let PhpStorm do the work for you.</p>
    
    <h3>Context Dependent Variable Initialization</h3>
    
    <p>When you extract a variable, you want to initialize it to as close to its first usage as possible. In most cases, this is simple, especially if there is a single use of the variable. But what about more complex cases? Let's revisit one of our variable extractions from <a href="http://code.tutsplus.com/tutorials/refactoring-legacy-code-part-2-magic-strings-constants--cms-20527" rel="nofollow external" class="bo">Magic Strings &amp; Constants</a>.</p>
    <img src="https://s3.amazonaws.com/cms-assets.tutsplus.com/uploads/users/45/posts/20787/image/roll-method.png" alt="" style="max-width: 100%; height: auto;"><p>In the <code>roll()</code> method, on line 73 - the one selected - there is a number "<code>11</code>". It is a magic number we just identified and we want to extract it.</p>
    
    <p>If we do our extract method by hand, we need to follow these steps:</p>
    
    <ul>
    	<li>Define a variable just above that line with the value 11.</li>
    	<li>Run the tests.</li>
    	<li>Exchange the value with the variable.</li>
    	<li>Run the tests.</li>
    	<li>Search for another occurrence of the number 11.</li>
    	<li>Identify it at line 90.</li>
    	<li>Replace the value with our variable.</li>
    	<li>Rung the tests. They will <em>fail</em>.</li>
    	<li>Ask yourself where to put the initialization of the variable so that it is working and still as close as possible to its usage.</li>
    	<li>Move the variable initialization one level up.</li>
    	<li>Run the tests. They are still failing.</li>
    	<li>Move the variable initialization one more level up, outside of all the if statements. </li>
    	<li>Run the tests. They are finally passing.</li>
    	<li>You search for other occurrences.</li>
    	<li>Find no more. You are done.</li>
    </ul>
    
    <p>Now, that is complicated for a human to do. And it is error prone. We presumed you have tests that can help you out, but what if you are working on some obscure untestable code? PhpStorm will understand the context of your code. It will correctly extract the variable for all occurrences and put it exactly where it should be.</p>
    <img src="https://s3.amazonaws.com/cms-assets.tutsplus.com/uploads/users/45/posts/20787/image/roll-method-refactored.png" alt="" style="max-width: 100%; height: auto;"><h3>The Iceberg Under the Tip</h3>
    
    <p>What we presented above about refactoring tools, is just the tip of the iceberg. Extracting variables is probably the simplest and easiest refactoring you can do. We did not yet use extract method or extract subclass or even some more complex renamings in our refactoring lessons, but we will. We'll learn how to do them by hand, but I will encourage you to use a smart IDE to do the job for you.</p>
    <h4>Renaming</h4>
    
    <p>PhpStorm is very good at renaming variables or methods even across hundreds of classes. Imagine how difficult it would be to change the name of a public method used in 100 different classes in your project. PhpStorm can make that a five minute job instead of a two hour job. It can find and change the name of all the methods and you will only need to check for miss-matches before you tell it to act. </p>
    <p>Yes, yes... You will need to verify some found occurrences because PHP is a dynamically typed language and in some cases, there is just no way PhpStorm, or any other IDE's algorithm, or program for that matter, can know what type of object is used for that specific method call. Imagine, you have two totally different classes. On each of them, you have a public method called "<code>findAll()</code>". This is very common and correct. </p>
    <h4>Why Do We Need to Evaluate the Changes?</h4>
    <p>Now, there are 50 classes using your first class and another 50 using the second one. If you used proper interfaces and type hinting where possible, PhpStorm will propose the correct classes to change. But if you did not specify the type you use, or you did not use any interface implemented by your class with the <code>findAll()</code> method, there is no way to tell automatically, which of your two classes, both having a <code>findAll()</code> method, will be used. That is the essence of PHP's dynamic typing. But while this is an advantage in some cases, it is a disadvantage when we need to do refactoring like this. When this happens, the only thing that can be done is for a human to evaluate the need of the change.</p>
    
    <p>With all these, even though there are other refactorings present in PhpStorm, it is already the best IDE just with refactorings. Renaming, extracting and inlining variables, extracting and inlining methods are the most frequently used refactorings we do each day. If these are working great, we have a winning IDE.</p>
    
    <p>But PhpStorm doesn't stop here. It has a lot of other refactoring tools which make you feel good in difficult situations. It truly has that "<em>cherry on the top</em>" feeling.</p>
    
    <hr>
    <h2>Testing and Code Coverage</h2>
    
    <p>You do TDD, right? If you don't, you should. Testing is as essential for programming as writing the production code itself. I could not imagine my life without TDD. I've got so used to it in the past few years, that even thinking about code without thinking about the tests feels unnatural and difficult.</p>
    <h3>Testing &amp; IDEs</h3>
    
    <p>With testing, your process and tools need to be just as good as the production code itself. PhpStorm has great integration with PHPUnit. It is the only PHP IDE I know of that actually links directly to the PHPUnit framework, extends it and uses it to gather all the information that needs to be presented. This gives it a much more intimate connection with PHPUnit, a better output for the user and much higher test running speeds.</p>
    
    <p>Other IDEs tend to just use the PHPUnit executable, write the output into an XML file and interpret the results to show it to you. This is how NetBeans works. This approach offers higher flexibility for you, the user, if you want to hack the system and convince it to run your tests in unusual ways (for example over telnet or SSH). But this also has a huge disadvantage. Things become slow. First of all, a shell process needs to be forked. "<code>exec()</code>" is always an important time consumer. Then the result needs to be written to a file, possibly on a remote machine. </p>
    <p>We all know that the file system is slow, very slow. SSDs are making it a little better, but they are still light-years away from the speed of RAM. Then, if we run our tests remotely, we need to copy that file over to our machine. So not only do we need to hit the file system once, we also need to add to that time, the cost of network communication plus writing it to a local file. Then the file needs to be read back, so that it can be finally shown to the user.</p>
    
    <p>While that is a super customizable and flexible solution, it just takes time. Too much time when we think about unit tests and millisecond tests. And unit tests that take longer than five milliseconds to run are not unit tests any more.</p>
    <h3>PhpStorm Uses PHPUnit Internally</h3>
    
    <p>PhpStorm solves, or at least reduces, the overhead by using PHPUnit internally and telling it to output the result in the way preferred by PhpStorm. This reduces flexibility. You can't hack it to test outside its limits. But, it increases speed a lot. No more <code>exec</code>, no more files written to slow file systems. Remote execution may add the price of network communication, but we can't eliminate that anyway. Another nice advantage is that directly using PHPUnit allows more detailed information about failed tests to be presented in a more organized way. So we gain on speed, details, and clearness at the cost of flexibility.</p>
    
    <p>Being used to NetBeans, I found it hard at first, to accept this inflexibility, but at the end of the day, even if sometimes I have to run an external script to test my code on remote machines, the gains from the better PHPUnit integration are prevailing.</p>
    
    <hr>
    <h2>Organizing &amp; Searching for Files</h2>
    
    <p>Like most IDEs, Phpstorm is also project oriented. Usually in a project you can have source files and tests. As PhpStorm works, it requires you to specify one single folder as the folder for tests. I find it quite useful to have the same directory structure between source code and test code. This also helps PhpStorm to find your tests more easily and allows you to switch between production code and tests with a single shortcut.</p>
    <img src="https://s3.amazonaws.com/cms-assets.tutsplus.com/uploads/users/45/posts/20787/image/goto-everything.png" alt="" style="max-width: 100%; height: auto;"><p>But that's not everything. When it comes to finding and opening files there is a unique feature in PhpStorm: Go to <strong>Everything</strong> (or <strong>Search Everything</strong>) - I absolutely love this one. First of all, its default keyboard shortcut of <strong>Shift+Shift </strong>(double shift) is so natural to use, secondly, it is the most useful navigation feature. It was only recently introduced, and before it, we had separate navigation boxes and shortcuts for <strong>open file by name</strong>, <strong>open file by class name</strong>, <strong>open file</strong> containing the symbol (variable or method name) and so on. Now I can just double shift and start typing. It's amazing and fast.</p>
    
    <hr>
    <h2>Final Thoughts</h2>
    
    <p>There are so many cool features in today's IDEs that we could continue with this story for another three tutorials and still not tell all of it. But we need to stop at some point. So as a great finisher for our mini-marathon of PHPUnit features within PhpStorm, here are a few last ones that my colleagues and I at Syneto appreciate:</p>
    
    <ul>
    	<li>
    <em>Live Templates</em> - they are great for writing boilerplate for you. For example, when I write these tutorials in HTML I need to respect a specific set of tags and formatting. I have nice little templates that can write that for me, so the time spent adding an image to the tutorial, for example, is reduced to about the time it takes to hit the keys, instead of writing the whole image syntax and styling.</li>
    	<li>
    <em>Project Management</em> - this is quite common in IDEs. All your files are organized in projects. But the programmers at JetBrains did something very amazing. Their indexing engine is fast as hell. No other IDE could load our huge project at Syneto so fast and then search in it so fast. In fact, IDEs like NetBeans or Eclipse and its derivatives mostly failed to index the whole project. That made searching very slow. PhpStorm does this right and things are fast compared to any other IDE.</li>
    	<li>
    <em>Document Versioning Integration</em> - is another gem in the bag. Mercurial, Git, CVS, Subversion, you name it. PhpStorm feels at home with all of them. From selective commit and push through advanced merging, with a great diff and merge tool, to branch graphing, you have all you need. Since I use PhpStorm, I used the CLI to issue an "<code>hg</code>" command probably twice or so. It <em>just</em> works.</li>
    	<li>
    <em>Macros</em> - are useful for those tiny annoying repetitive tasks that you have to do. In PHP, each line must end with a semicolon. How often is your cursor at the end of the line when you finish writing all the code in it? Very rarely. Most of the time, you are inside some parentheses filling in parameters or similar. You have to go to the end of line and hit "<strong>;</strong>". Well, that is easily automatable by macros. </li>
    </ul>
    <p>OK, enough talk. I will now let you go, <a href="http://www.jetbrains.com/phpstorm/download/" rel="nofollow external" class="bo">download and try PhpStorm</a> yourself. Have fun.</p>
    </div>
]]>
</Body>
<Summary>Oh, I love fast and simple text editors. Being a Linux user, I lived years in the company of Kate and KWrite. With some tweaks and plugins I could make them really smart. I wrote whole projects in...</Summary>
<Website>http://code.tutsplus.com/tutorials/phpstorm-when-the-ide-really-matters--cms-20787</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/43782/guest@my.umbc.edu/faffa210ffe64e44333550ddea5de632/api/pixel</TrackingUrl>
<Tag>css</Tag>
<Tag>development</Tag>
<Tag>html</Tag>
<Tag>javascript</Tag>
<Tag>mysql</Tag>
<Tag>php</Tag>
<Tag>sql</Tag>
<Tag>wed</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 Apr 2014 13:00:08 -0400</PostedAt>
<EditAt>Mon, 21 Apr 2014 13:00:08 -0400</EditAt>
</NewsItem>

</News>
