<?xml version="1.0"?>
<News hasArchived="true" page="8039" pageCount="10894" pageSize="10" timestamp="Wed, 21 Oct 2026 10:08:21 -0400" url="https://my3.my.umbc.edu/posts.xml?page=8039">
<NewsItem contentIssues="false" id="40264" important="false" status="posted" url="https://my3.my.umbc.edu/posts/40264">
<Title>When to use target=&#8221;_blank&#8221;</Title>
<Body>
<![CDATA[
    <div class="html-content">
    <p>Anchor links<sup>1</sup> may have a <code>target</code> attribute which controls what happens when that link is clicked. One of the possible values of that attribute is <code>_blank</code>, which tells the browser to open a new window (or tab, if that's the user's preference) when that link is clicked.</p>
    <p>This used to be "invalid" in HTML (maybe only XHTML?) but people used it anyway since it worked. It's now perfectly valid in HTML5. But are there good reasons to do so?</p>
    <p></p>
    <h3>A Bad Reason: Because you like it that way.</h3>
    <p>Like it or not, <code>target="_blank"</code> is a change in default behavior. Links opening within the same page is the default behavior (as if the link had <code>target="_self"</code> on it). </p>
    <p>Perhaps you've developed a personal taste for opening all links in new windows/tabs. That's wonderful for you, but it is safe to assume most users are most comfortable with the default behavior. And thus less comfortable with your forcing of a different behavior. </p>
    <p>If it's an internal tool just for you, do whatever you want. If other people use the site, leave it be.</p>
    <p>It is also worth noting that users can force a link to open in a new window/tab by [Meta Key]-clicking a link. That means both behaviors are available to them for links. That also means that if <strong>you</strong> like opening new tabs, <strong>you</strong> can, and you don't have to impart that behavior on anyone else.</p>
    <p>By using <code>target="_blank"</code>, only that behavior is available. </p>
    <h3>A Bad Reason: Just because you want users to never leave your page.</h3>
    <p>Branding branding branding! Eyeballs baby. Metrics. ENGAGEMENT. </p>
    <p>Other sites should have normal-style links, but <em>our</em> site is special. Our site is more important and should never be left behind.</p>
    <h3>A Bad Reason: "Internal" links and "External" links are different.</h3>
    <p>We'll have "internal" links (links that point to our own site) behave normally, but "external" links (links that point to other sites) open in a new window/tab.</p>
    <p>This is related to the above two reasons, only perhaps worse. You understand that normal style links are ideal, but if that means a user leaves your site, you're willing to break that ideal.</p>
    <p>I've heard from <em>a lot</em> of people that this is "a convention." As in <em>the way it's supposed to be done</em>. It's not.</p>
    <h3>A Bad Reason: The link is to a PDF</h3>
    <p>Or any other type of non-web resource. Why should that be so different? You can still use the back button to come back from it. If you want to help users download it without actually opening it, that's a worthy UX goal but can be approached differently. For starters, using the <code>download</code> attribute.</p>
    <h3>A Bad Reason: My client wants it that way</h3>
    <p>I get the "I don't want to pick this fight" thing, since we only have so much energy. But it's weird this has to be a fight at all. If they don't trust you with this, what do they trust you about? </p>
    <p>I might approach it like this:</p>
    <blockquote><p>The default behavior is for links to open normally. There are some reasons why we might want to break that behavior, and we can go over those, but for most links we don't. We don't want to force our desires on users and potentially frustrate them for such a small thing. We want our users to feel good about us.</p></blockquote>
    <p>And hopefully your calm and educated approach will help your client feel good about <em>you</em>.</p>
    <h3>A Bad Reason: It's on an infinite-scroll page</h3>
    <p>Infinite scrolling is tricky. It can be good UX in one sense because it can deliver content without interruption. It can be bad UX if not handled well. Coming "back" to an infinite scroll page should take you to where you left off in most cases. Handling that tricky problem is your job. Just forcing links to open in new tabs so that problem never comes up is avoiding your job. </p>
    <h3>A Good Reason: There is user-initiated media playing</h3>
    <p>For instance: music, video, a podcast... </p>
    <p>The user started it. Moving pages would stop it. At that point, either have links open in new tabs or ask them if they are sure they want to leave the page. At that point you are trying to do right by them and have them not leave their place. </p>
    <p><a href="http://css-tricks.com/dont-stop-the-audio/" rel="nofollow external" class="bo">We've covered this idea before here.</a> If the media is playing, handle links in a special way. When the media isn't playing, links are in their normal state.</p>
    <p>Although as I say that, I check YouTube, and they don't bug you about it<sup>2</sup> when changing videos.</p>
    <h3>A Good Reason: The user is working on something on the page, that might be lost if the current page changed.</h3>
    <p>Perhaps a user is writing something. Or arranging something. Doing any kind of work. Clicking a link and changing pages can be a heart-pounding, awful moment on the web. <em>Did I just lose everything I was doing?</em></p>
    <p>Even if you do something to ensure they don't lose that work, putting someone through that panic may as well be avoided.</p>
    <p>I think of CodePen where users are often writing code. We do several things to help:</p>
    <ul>
    <li>Links that go to other pages that are explicitly "learn more" style links (e.g. [?]), that you only see while interacting with the editor, open in a new tab.</li>
    <li>Normal links (e.g. links in the footer) have normal behavior, but we detect if you have unsaved changes in the editor and prompt you to save them before you leave.</li>
    <li>If you do leave to another site (or your browser crashes), we save the state of the editors in localStorage so you don't lose work.</li>
    </ul>
    <p>Checkout is another case here. Of course you don't want to lose customers during their checkout process. A link to something like "shipping information" should be openable without them losing their place in checkout.</p>
    <p>"Reading an article", in my opinion, doesn't qualify here. Since it's (generally) so easy to get back to (most browsers even scroll down to where you were), there is no risk of real loss, and readers are really skimmers anyway.</p>
    <h3>A Good Reason: Some technologically obscure point</h3>
    <p>I'm building an email where people in Outlook Kangaroo 2009 Enterprise Edition need to open it but links need to have <code>target="blank"</code> on them otherwise they open in the sidebar viewing panel and ...</p>
    <p>Fine.</p>
    <h3>Tech</h3>
    <p>In case you have to...</p>
    <ul>
    <li><a href="http://css-tricks.com/snippets/jquery/find-all-internal-links/" rel="nofollow external" class="bo">Finding internal links</a></li>
    <li><a href="http://css-tricks.com/snippets/jquery/target-only-external-links/" rel="nofollow external" class="bo">Finding external links</a></li>
    <li><a href="http://css-tricks.com/snippets/htaccess/force-files-to-download-not-open-in-browser/" rel="nofollow external" class="bo">HTAccess to help with auto-downloading</a></li>
    </ul>
    <p>Forcing user to verify they want to leave page:</p>
    <pre><code>window.onbeforeunload = function() {&#x000A;      return "Two buttons will be below this message asking if user wants to stay on this page or leave.";&#x000A;    }</code></pre>
    <h3>Drama</h3>
    <p>I realize I've been pretty opinionated here. This is one of those topics where everyone has an opinion. Feel free to share those opinions of course but lets keep things cool and focus on situations, solutions, and data if we can.</p>
    <hr>
    <p><sup>1</sup> <small><code>&lt;form&gt;</code>s can have <code>target="_blank"</code> too. I would think it's a more uncommon use case, but the same type of thinking in this article would hold true.</small></p>
    <p><sup>2</sup> <small>If you choose another video you go right to it. But in that case I wonder if that was a UX choice or an advertising choice. If you're half-way through a video, click to another video (say by accident) then click the back button right away, your place is lost. Perhaps having as little friction transitioning from video to video is important for them, but it would be nice if they offered a bit of help there. Perhaps a small arrow beneath the timeline that was like a "You've watched this video this far before" link.</small></p>
    <hr>
    
    <p><small><a href="http://css-tricks.com/use-target_blank/" rel="nofollow external" class="bo">When to use target=”_blank”</a> is a post from <a href="http://css-tricks.com" rel="nofollow external" class="bo">CSS-Tricks</a></small></p>
    </div>
]]>
</Body>
<Summary>Anchor links1 may have a target attribute which controls what happens when that link is clicked. One of the possible values of that attribute is _blank, which tells the browser to open a new...</Summary>
<Website>http://css-tricks.com/use-target_blank/</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/40264/guest@my.umbc.edu/bb40bcd5665c1d7b7c7814311f771179/api/pixel</TrackingUrl>
<Tag>article</Tag>
<Tag>css</Tag>
<Tag>html</Tag>
<Tag>javascript</Tag>
<Tag>mysql</Tag>
<Tag>php</Tag>
<Tag>sql</Tag>
<Tag>tricks</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, 15 Jan 2014 11:12:03 -0500</PostedAt>
</NewsItem>

<NewsItem contentIssues="true" id="40262" important="false" status="posted" url="https://my3.my.umbc.edu/posts/40262">
<Title>Payne International Development Graduate Fellowship</Title>
<Tagline>Howard University; DEADLINE JANUARY 27!</Tagline>
<Body>
<![CDATA[
    <div class="html-content"><span>The Payne Program is designed to attract outstanding young people to careers in international development as USAID Foreign Service Officers.  The Payne Fellowship Program provides benefits valued at up to $90,000 over two years toward a two-year master's degree, arranges internships on Capitol Hill and at USAID missions overseas, and provides professional development and support activities.  Those who successfully complete the program become USAID Foreign Service Officers.  Participants may use the fellowship to attend a two-year master's program in a U.S. institution to study an area of relevance to the USAID Foreign Service, including international development, international relations, public policy, business administration, foreign languages, economics, agriculture, environmental sciences, health, or urban planning at a graduate or professional school approved by the Payne Program.  At the end of the two-year fellowship, fellows enter the USAID Foreign Service.  Applicants must be college seniors or graduates looking to start graduate school in the fall of the year they apply, have GPAs of at least 3.2 and be U.S. citizens.  The program welcomes applications from those with any undergraduate major and encourages applications from members of minority groups historically underrepresented in the USAID Foreign Service and those with financial need.  </span></div>
]]>
</Body>
<Summary>The Payne Program is designed to attract outstanding young people to careers in international development as USAID Foreign Service Officers.  The Payne Fellowship Program provides benefits valued...</Summary>
<Website>http://www.paynefellows.org/?areaid=2&amp;contentid=941&amp;CFID=238&amp;CFTOKEN=7925127A-B48A-4D37-91DCBD525DDFC8AB</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/40262/guest@my.umbc.edu/eb5ca2199dd6b702ca2b3f586929c999/api/pixel</TrackingUrl>
<Tag>research</Tag>
<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://assets2-my.umbc.edu/system/shared/thumbnails/news/000/040/262/2ebf0711a9530f81674979d19b89f179/xxlarge.jpg?1389801812</ThumbnailUrl>
<ThumbnailUrl size="xlarge">https://assets4-my.umbc.edu/system/shared/thumbnails/news/000/040/262/2ebf0711a9530f81674979d19b89f179/xlarge.jpg?1389801812</ThumbnailUrl>
<ThumbnailUrl size="large">https://assets2-my.umbc.edu/system/shared/thumbnails/news/000/040/262/2ebf0711a9530f81674979d19b89f179/large.jpg?1389801812</ThumbnailUrl>
<ThumbnailUrl size="medium">https://assets2-my.umbc.edu/system/shared/thumbnails/news/000/040/262/2ebf0711a9530f81674979d19b89f179/medium.jpg?1389801812</ThumbnailUrl>
<ThumbnailUrl size="small">https://assets2-my.umbc.edu/system/shared/thumbnails/news/000/040/262/2ebf0711a9530f81674979d19b89f179/small.jpg?1389801812</ThumbnailUrl>
<ThumbnailUrl size="xsmall">https://assets1-my.umbc.edu/system/shared/thumbnails/news/000/040/262/2ebf0711a9530f81674979d19b89f179/xsmall.jpg?1389801812</ThumbnailUrl>
<ThumbnailUrl size="xxsmall">https://assets2-my.umbc.edu/system/shared/thumbnails/news/000/040/262/2ebf0711a9530f81674979d19b89f179/xxsmall.jpg?1389801812</ThumbnailUrl>
<PawCount>9</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>true</CommentsAllowed>
<PostedAt>Wed, 15 Jan 2014 11:03:48 -0500</PostedAt>
</NewsItem>

<NewsItem contentIssues="true" id="40259" important="false" status="posted" url="https://my3.my.umbc.edu/posts/40259">
<Title>Black Egypt in the World Imagination - Anthony T. Browder</Title>
<Tagline>AFST 340 MONDAY 4:30PM - 7:00PM (NEW COURSE)</Tagline>
<Body>
<![CDATA[
    <div class="html-content">
    <h6>
    
    </h6>
    <p><span>Anthony T. Browder  is  an author, publisher, cultural
    historian, artist, and an educational consultant. He is a graduate of Howard
    University’s College of Fine Arts and has lectured extensively throughout the
    United States, Africa, Caribbean, Mexico, Japan and Europe, on issues related
    to African and African American History and Culture.</span><span></span></p>
    <p><span> </span><span> 
       Mr. Browder is the founder and director of IKG Cultural
    Resources and has devoted 33 years researching ancient Egyptian history,
    science, philosophy and culture.</span></p>
    <p><span>    
    He has traveled to Egypt 49 times since 1980 and is currently director of the ASA
    Restoration Projectwhich is funding the excavation and restoration
    of the 25<sup>th</sup> dynasty tomb of Karakhamun in Luxor, Egypt.  </span><span></span></p>
    <p><span>     Browder is the
    first African American to fund and coordinate an archeological dig in Egypt and
    has lead five archeological missions to Egypt since 2009. His archeological
    work in Egypt has been acknowledged by former President Mohamed Morsi, the
    Minister of Tourism and various Ministers of the Supreme Council of Antiquities.</span></p>
    <p><span>    Mr. Browder’s
    three decades of study have lead him to the conclusion that ancient Africans
    were the architects of civilization and developed the rudiments of what has
    become the scientific, religious, and philosophical backbone of mankind. It is
    from this framework that IKG has concentrated its research and disseminated its
    findings.</span></p>
    <p><span> </span><span> 
       Through IKG, Mr. Browder sponsors lectures, seminars, cultural
    field trips of Washington, D.C., publishes his research, and has conducted
    study tours to Egypt, West Africa, South Africa and Mexico since 1987. He has
    been featured in 5 documentaries and has produced dozens of DVD’s of his
    numerous lectures.</span></p>
    <p><span> </span><span> 
       He is the author of six publications (including the best sellers, <em>From
    the Browder File</em> and <em>Nile Valley Contributions to Civilization</em>) and
    the co-author of four publications, including two written with his daughter,
    Atlantis Tye. </span></p>
    <p><span> </span><span>All
    of Mr. Browder’s publications, DVD’s and documentaries are currently being used
    in classrooms around the world.</span></p>
    <p><span> </span><span>“Tony”
    describes himself as a chronicler of facts and information relative to the
    positive portrayal of the worldwide African experience.</span></p>
    </div>
]]>
</Body>
<Summary>Anthony T. Browder  is  an author, publisher, cultural historian, artist, and an educational consultant. He is a graduate of Howard University’s College of Fine Arts and has lectured extensively...</Summary>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/40259/guest@my.umbc.edu/802a4ed6104c48474f585c6e726a4467/api/pixel</TrackingUrl>
<Tag>anthony</Tag>
<Tag>browder</Tag>
<Tag>t</Tag>
<Group token="degree-in-africana-studies">Africana Studies</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/degree-in-africana-studies</GroupUrl>
<AvatarUrl>https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/629/8bf9e40efcdb369a498342e2bb0ae9f2/xsmall.png?1389301374</AvatarUrl>
<AvatarUrl size="original">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/629/8bf9e40efcdb369a498342e2bb0ae9f2/original.gif?1389301374</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/629/8bf9e40efcdb369a498342e2bb0ae9f2/xxlarge.png?1389301374</AvatarUrl>
<AvatarUrl size="xlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/629/8bf9e40efcdb369a498342e2bb0ae9f2/xlarge.png?1389301374</AvatarUrl>
<AvatarUrl size="large">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/629/8bf9e40efcdb369a498342e2bb0ae9f2/large.png?1389301374</AvatarUrl>
<AvatarUrl size="medium">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/629/8bf9e40efcdb369a498342e2bb0ae9f2/medium.png?1389301374</AvatarUrl>
<AvatarUrl size="small">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/629/8bf9e40efcdb369a498342e2bb0ae9f2/small.png?1389301374</AvatarUrl>
<AvatarUrl size="xsmall">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/629/8bf9e40efcdb369a498342e2bb0ae9f2/xsmall.png?1389301374</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/629/8bf9e40efcdb369a498342e2bb0ae9f2/xxsmall.png?1389301374</AvatarUrl>
<Sponsor>Africana Studies</Sponsor>
<ThumbnailUrl size="xxlarge">https://assets2-my.umbc.edu/system/shared/thumbnails/news/000/040/259/deb345324aad1d7652eabe05d0c3e1bb/xxlarge.jpg?1389799590</ThumbnailUrl>
<ThumbnailUrl size="xlarge">https://assets4-my.umbc.edu/system/shared/thumbnails/news/000/040/259/deb345324aad1d7652eabe05d0c3e1bb/xlarge.jpg?1389799590</ThumbnailUrl>
<ThumbnailUrl size="large">https://assets2-my.umbc.edu/system/shared/thumbnails/news/000/040/259/deb345324aad1d7652eabe05d0c3e1bb/large.jpg?1389799590</ThumbnailUrl>
<ThumbnailUrl size="medium">https://assets4-my.umbc.edu/system/shared/thumbnails/news/000/040/259/deb345324aad1d7652eabe05d0c3e1bb/medium.jpg?1389799590</ThumbnailUrl>
<ThumbnailUrl size="small">https://assets3-my.umbc.edu/system/shared/thumbnails/news/000/040/259/deb345324aad1d7652eabe05d0c3e1bb/small.jpg?1389799590</ThumbnailUrl>
<ThumbnailUrl size="xsmall">https://assets4-my.umbc.edu/system/shared/thumbnails/news/000/040/259/deb345324aad1d7652eabe05d0c3e1bb/xsmall.jpg?1389799590</ThumbnailUrl>
<ThumbnailUrl size="xxsmall">https://assets4-my.umbc.edu/system/shared/thumbnails/news/000/040/259/deb345324aad1d7652eabe05d0c3e1bb/xxsmall.jpg?1389799590</ThumbnailUrl>
<PawCount>16</PawCount>
<CommentCount>7</CommentCount>
<CommentsAllowed>true</CommentsAllowed>
<PostedAt>Wed, 15 Jan 2014 10:30:29 -0500</PostedAt>
<EditAt>Thu, 16 Jan 2014 11:21:03 -0500</EditAt>
</NewsItem>

<NewsItem contentIssues="false" id="40260" important="false" status="posted" url="https://my3.my.umbc.edu/posts/40260">
<Title>Welcome to The Helix!</Title>
<Tagline>The newest way to communicate about science on campus</Tagline>
<Body>
<![CDATA[
    <div class="html-content">
    <p>From phages to phylogenies, bacteria to the biosphere, molecules to mice, and everything in between, The Helix covers current happenings in the Department of Biological Sciences at UMBC.  Initially, a new spotlight on a project in our research labs will be posted biweekly. Reports on department-sponsored seminars given by outside scientists will be posted periodically.  </p>
    <p><span>Science works best when results are shared, supported, and critiqued in a community.  The goal of The Helix is to promote communication across labs, perhaps facilitating heretofore unconsidered collaborations.  A second goal is to inform those outside the department about all the amazing things happening here.  Questions and comments are strongly encouraged.  Perhaps all a research project needs is the perspective of an outsider to make its next leap forward.  </span></p>
    <p><span>By communicating up-to-date information about projects online, there is no excuse for not knowing what's going on in the department.  Students and faculty can peruse the posts on their own time and follow up with in-house researchers and/or outside speakers if a topic sparks their interest.  </span></p>
    <p><span>If you would like your project to be featured in The Helix, please contact me at <a href="mailto:sarah54@umbc.edu">sarah54@umbc.edu</a>.  I will visit your lab to conduct an interview, and you will have the chance to review my report before it is posted.  I created The Helix to help the department communicate better about current research, and it will also help me reach my career goal of becoming a science writer/journalist.</span></p>
    <p><span>Please enjoy, share with others, and contribute to the conversation!  The first reporting post should be up soon!    </span></p>
    <p><br></p>
    <p>--Sarah Hansen, Biological Sciences graduate student</p>
    </div>
]]>
</Body>
<Summary>From phages to phylogenies, bacteria to the biosphere, molecules to mice, and everything in between, The Helix covers current happenings in the Department of Biological Sciences at UMBC....</Summary>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/40260/guest@my.umbc.edu/1c88b8ae20bdb2ac9feeb5f94d472b2f/api/pixel</TrackingUrl>
<Group token="retired-801">The Helix</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/retired-801</GroupUrl>
<AvatarUrl>https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/801/e22ce4d908a59a1903c9c815ef4bfb03/xsmall.png?1389798224</AvatarUrl>
<AvatarUrl size="original">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/801/e22ce4d908a59a1903c9c815ef4bfb03/original.png?1389798224</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/801/e22ce4d908a59a1903c9c815ef4bfb03/xxlarge.png?1389798224</AvatarUrl>
<AvatarUrl size="xlarge">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/801/e22ce4d908a59a1903c9c815ef4bfb03/xlarge.png?1389798224</AvatarUrl>
<AvatarUrl size="large">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/801/e22ce4d908a59a1903c9c815ef4bfb03/large.png?1389798224</AvatarUrl>
<AvatarUrl size="medium">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/801/e22ce4d908a59a1903c9c815ef4bfb03/medium.png?1389798224</AvatarUrl>
<AvatarUrl size="small">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/801/e22ce4d908a59a1903c9c815ef4bfb03/small.png?1389798224</AvatarUrl>
<AvatarUrl size="xsmall">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/801/e22ce4d908a59a1903c9c815ef4bfb03/xsmall.png?1389798224</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/801/e22ce4d908a59a1903c9c815ef4bfb03/xxsmall.png?1389798224</AvatarUrl>
<Sponsor>The Helix</Sponsor>
<PawCount>4</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>true</CommentsAllowed>
<PostedAt>Wed, 15 Jan 2014 10:27:20 -0500</PostedAt>
<EditAt>Mon, 24 Feb 2014 17:25:57 -0500</EditAt>
</NewsItem>

<NewsItem contentIssues="false" id="109867" important="false" status="posted" url="https://my3.my.umbc.edu/posts/109867">
<Title>Tim Finin appointed co-editor of CACM Viewpoints</Title>
<Body>
<![CDATA[
    <div class="html-content">Tim Finin, Computer Science and Electrical Engineering, has been appointed as a co-editor of the Viewpoints section of the Communications of the ACM, the monthly magazine of the Association for Computing Machinery. Established in 1957, CACM is sent to all ACM members (currently over 100,000) and is considered “the leading print and online publication for the computing and information technology fields”. CACM’s Viewpoints section is publishes short articles expressing opinions and views that pertain to issues of broad interest to the computing community, covering a wide range of topics, including scientific, technical, educational and social. Each month a handful of …</div>
]]>
</Body>
<Summary>Tim Finin, Computer Science and Electrical Engineering, has been appointed as a co-editor of the Viewpoints section of the Communications of the ACM, the monthly magazine of the Association for...</Summary>
<Website>https://news.umbc.edu/tim-finin-appointed-co-editor-of-cacm-viewpoints/</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/109867/guest@my.umbc.edu/53675d25a5102f1ac79378f1495de914/api/pixel</TrackingUrl>
<Tag>policy-and-society</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, 15 Jan 2014 10:12:30 -0500</PostedAt>
</NewsItem>

<NewsItem contentIssues="true" id="40258" important="false" status="posted" url="https://my3.my.umbc.edu/posts/40258">
<Title>DealBook: Riverbed Rejects Elliott&#8217;s $3.2 Billion Takeover Bid</Title>
<Body>
<![CDATA[
    <div class="html-content">Riverbed Technology described the offer as inadequate, but didn’t say whether it would take the activist hedge fund up on its other demand: setting up a process to sell itself.<br><div><table border="0"><tbody><tr><td>
    <a href="http://share.feedsportal.com/share/twitter/?u=http%3A%2F%2Fdealbook.nytimes.com%2F2014%2F01%2F15%2Friverbed-rejects-elliotts-3-2-billion-takeover-bid%2F%3Fpartner%3Drss%26emc%3Drss&amp;t=DealBook%3A+Riverbed+Rejects+Elliott%E2%80%99s+%243.2+Billion+Takeover+Bid" rel="nofollow external" class="bo"><img src="http://res3.feedsportal.com/social/twitter.png" style="max-width: 100%; height: auto;"></a> <a href="http://share.feedsportal.com/share/facebook/?u=http%3A%2F%2Fdealbook.nytimes.com%2F2014%2F01%2F15%2Friverbed-rejects-elliotts-3-2-billion-takeover-bid%2F%3Fpartner%3Drss%26emc%3Drss&amp;t=DealBook%3A+Riverbed+Rejects+Elliott%E2%80%99s+%243.2+Billion+Takeover+Bid" rel="nofollow external" class="bo"><img src="http://res3.feedsportal.com/social/facebook.png" style="max-width: 100%; height: auto;"></a> <a href="http://share.feedsportal.com/share/linkedin/?u=http%3A%2F%2Fdealbook.nytimes.com%2F2014%2F01%2F15%2Friverbed-rejects-elliotts-3-2-billion-takeover-bid%2F%3Fpartner%3Drss%26emc%3Drss&amp;t=DealBook%3A+Riverbed+Rejects+Elliott%E2%80%99s+%243.2+Billion+Takeover+Bid" rel="nofollow external" class="bo"><img src="http://res3.feedsportal.com/social/linkedin.png" style="max-width: 100%; height: auto;"></a> <a href="http://share.feedsportal.com/share/gplus/?u=http%3A%2F%2Fdealbook.nytimes.com%2F2014%2F01%2F15%2Friverbed-rejects-elliotts-3-2-billion-takeover-bid%2F%3Fpartner%3Drss%26emc%3Drss&amp;t=DealBook%3A+Riverbed+Rejects+Elliott%E2%80%99s+%243.2+Billion+Takeover+Bid" rel="nofollow external" class="bo"><img src="http://res3.feedsportal.com/social/googleplus.png" style="max-width: 100%; height: auto;"></a> <a href="http://share.feedsportal.com/share/email/?u=http%3A%2F%2Fdealbook.nytimes.com%2F2014%2F01%2F15%2Friverbed-rejects-elliotts-3-2-billion-takeover-bid%2F%3Fpartner%3Drss%26emc%3Drss&amp;t=DealBook%3A+Riverbed+Rejects+Elliott%E2%80%99s+%243.2+Billion+Takeover+Bid" rel="nofollow external" class="bo"><img src="http://res3.feedsportal.com/social/email.png" style="max-width: 100%; height: auto;"></a>
    </td></tr></tbody></table></div>
    <br><br><a href="http://da.feedsportal.com/r/186528924936/u/0/f/640387/c/34625/s/35f00c1b/sc/25/rc/1/rc.htm" rel="nofollow external" class="bo"><img src="http://da.feedsportal.com/r/186528924936/u/0/f/640387/c/34625/s/35f00c1b/sc/25/rc/1/rc.img" style="max-width: 100%; height: auto;"></a><br><a href="http://da.feedsportal.com/r/186528924936/u/0/f/640387/c/34625/s/35f00c1b/sc/25/rc/2/rc.htm" rel="nofollow external" class="bo"><img src="http://da.feedsportal.com/r/186528924936/u/0/f/640387/c/34625/s/35f00c1b/sc/25/rc/2/rc.img" style="max-width: 100%; height: auto;"></a><br><a href="http://da.feedsportal.com/r/186528924936/u/0/f/640387/c/34625/s/35f00c1b/sc/25/rc/3/rc.htm" rel="nofollow external" class="bo"><img src="http://da.feedsportal.com/r/186528924936/u/0/f/640387/c/34625/s/35f00c1b/sc/25/rc/3/rc.img" style="max-width: 100%; height: auto;"></a><br><br><a href="http://da.feedsportal.com/r/186528924936/u/0/f/640387/c/34625/s/35f00c1b/a2.htm" rel="nofollow external" class="bo"><img src="http://da.feedsportal.com/r/186528924936/u/0/f/640387/c/34625/s/35f00c1b/a2.img" style="max-width: 100%; height: auto;"></a>
    </div>
]]>
</Body>
<Summary>Riverbed Technology described the offer as inadequate, but didn’t say whether it would take the activist hedge fund up on its other demand: setting up a process to sell itself.      </Summary>
<Website>http://dealbook.nytimes.com/2014/01/15/riverbed-rejects-elliotts-3-2-billion-takeover-bid/?partner=rss&amp;emc=rss</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/40258/guest@my.umbc.edu/3bc6437e09a0acd2c83909665e84ea84/api/pixel</TrackingUrl>
<Tag>elliott-management-corp</Tag>
<Tag>hedge-funds</Tag>
<Tag>mergers-acquisitions-and-divestitures</Tag>
<Tag>mergers-and-acquisitions</Tag>
<Tag>new</Tag>
<Tag>riverbed-technology-inc</Tag>
<Tag>riverbed-technology-inc-rvbd-nasdaq</Tag>
<Tag>shareholder-rights-and-activism</Tag>
<Tag>technology</Tag>
<Tag>york</Tag>
<Group token="retired-583">Web Developer - Build Group</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/retired-583</GroupUrl>
<AvatarUrl>https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xsmall.png?1363101197</AvatarUrl>
<AvatarUrl size="original">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/original.jpg?1363101197</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xxlarge.png?1363101197</AvatarUrl>
<AvatarUrl size="xlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xlarge.png?1363101197</AvatarUrl>
<AvatarUrl size="large">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/large.png?1363101197</AvatarUrl>
<AvatarUrl size="medium">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/medium.png?1363101197</AvatarUrl>
<AvatarUrl size="small">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/small.png?1363101197</AvatarUrl>
<AvatarUrl size="xsmall">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xsmall.png?1363101197</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xxsmall.png?1363101197</AvatarUrl>
<Sponsor>Web Developer - Build Group</Sponsor>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>true</CommentsAllowed>
<PostedAt>Wed, 15 Jan 2014 09:33:42 -0500</PostedAt>
<EditAt>Wed, 15 Jan 2014 10:13:18 -0500</EditAt>
</NewsItem>

<NewsItem contentIssues="false" id="40257" important="false" status="posted" url="https://my3.my.umbc.edu/posts/40257">
<Title>Best Online Graduate Computer Information Technology Program</Title>
<Tagline>Online Information Systems Programs Makes Top 20 List</Tagline>
<Body>
<![CDATA[
    <div class="html-content"><p><span>[1-8-2014] UMBC has earned the distinction of being named as one of the Top 20 best online programs for the master’s degree in Information Systems, according to U.S. News &amp; World Report.<br>
    <br>
    </span><span>For the 2014 edition of the <a href="http://www.usnews.com/education/online-education/computer-information-technology" rel="nofollow external" class="bo">Best Online Graduate Computer Information Technology Programs</a> rankings, U.S. News incorporated program ratings by peer institutions. </span><span>Only regionally accredited schools that met the federal standard of 100 percent online course delivery were evaluated.<br>
    <br>
    For a list of admission requirements, visit <a href="http://www.usnews.com/education/online-education/northern-illinois-university-OEDU0503/education/applying" rel="nofollow external" class="bo">U.S. News &amp; World Report</a>. To learn more about applying to graduate programs at UMBC, visit the <a href="http://www.umbc.edu/gradschool" rel="nofollow external" class="bo">UMBC Graduate School webpage</a> or the <a href="http://onlinems.umbc.edu/" rel="nofollow external" class="bo">Information Systems webpage</a>, or e-mail <a href="mailto:onlinems@umbc.edu" rel="nofollow external" class="bo">onlinems@umbc.edu</a>.</span></p></div>
]]>
</Body>
<Summary>[1-8-2014] UMBC has earned the distinction of being named as one of the Top 20 best online programs for the master’s degree in Information Systems, according to U.S. News &amp; World Report....</Summary>
<Website>http://www.usnews.com/education/online-education/articles/2014/01/08/us-news-releases-2014-best-online-programs-rankings</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/40257/guest@my.umbc.edu/22553cad3c3449273b646a91710bf4da/api/pixel</TrackingUrl>
<Tag>is</Tag>
<Tag>online</Tag>
<Tag>usnews</Tag>
<Group token="retired-95">College of Engineering and Information Technology</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/retired-95</GroupUrl>
<AvatarUrl>https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/095/c2a784a6cda726ef5f845e9192adb64b/xsmall.png?1496851664</AvatarUrl>
<AvatarUrl size="original">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/095/c2a784a6cda726ef5f845e9192adb64b/original.jpg?1496851664</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/095/c2a784a6cda726ef5f845e9192adb64b/xxlarge.png?1496851664</AvatarUrl>
<AvatarUrl size="xlarge">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/095/c2a784a6cda726ef5f845e9192adb64b/xlarge.png?1496851664</AvatarUrl>
<AvatarUrl size="large">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/095/c2a784a6cda726ef5f845e9192adb64b/large.png?1496851664</AvatarUrl>
<AvatarUrl size="medium">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/095/c2a784a6cda726ef5f845e9192adb64b/medium.png?1496851664</AvatarUrl>
<AvatarUrl size="small">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/095/c2a784a6cda726ef5f845e9192adb64b/small.png?1496851664</AvatarUrl>
<AvatarUrl size="xsmall">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/095/c2a784a6cda726ef5f845e9192adb64b/xsmall.png?1496851664</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/095/c2a784a6cda726ef5f845e9192adb64b/xxsmall.png?1496851664</AvatarUrl>
<Sponsor>College of Engineering and Information Technology</Sponsor>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>false</CommentsAllowed>
<PostedAt>Wed, 15 Jan 2014 09:27:10 -0500</PostedAt>
<EditAt>Fri, 17 Jan 2014 14:25:34 -0500</EditAt>
</NewsItem>

<NewsItem contentIssues="true" id="40255" important="false" status="posted" url="https://my3.my.umbc.edu/posts/40255">
<Title>Bits Blog: The Nuts and Bolts of Network Neutrality</Title>
<Body>
<![CDATA[
    <div class="html-content">A federal appeals court threw out F.C.C. rules requiring that all information be treated equally on the Internet; we explain what the decision means.<br><div><table border="0"><tbody><tr><td>
    <a href="http://share.feedsportal.com/share/twitter/?u=http%3A%2F%2Fbits.blogs.nytimes.com%2F2014%2F01%2F14%2Fthe-nuts-and-bolts-of-network-neutrality%2F%3Fpartner%3Drss%26emc%3Drss&amp;t=Bits+Blog%3A+The+Nuts+and+Bolts+of+Network+Neutrality" rel="nofollow external" class="bo"><img src="http://res3.feedsportal.com/social/twitter.png" style="max-width: 100%; height: auto;"></a> <a href="http://share.feedsportal.com/share/facebook/?u=http%3A%2F%2Fbits.blogs.nytimes.com%2F2014%2F01%2F14%2Fthe-nuts-and-bolts-of-network-neutrality%2F%3Fpartner%3Drss%26emc%3Drss&amp;t=Bits+Blog%3A+The+Nuts+and+Bolts+of+Network+Neutrality" rel="nofollow external" class="bo"><img src="http://res3.feedsportal.com/social/facebook.png" style="max-width: 100%; height: auto;"></a> <a href="http://share.feedsportal.com/share/linkedin/?u=http%3A%2F%2Fbits.blogs.nytimes.com%2F2014%2F01%2F14%2Fthe-nuts-and-bolts-of-network-neutrality%2F%3Fpartner%3Drss%26emc%3Drss&amp;t=Bits+Blog%3A+The+Nuts+and+Bolts+of+Network+Neutrality" rel="nofollow external" class="bo"><img src="http://res3.feedsportal.com/social/linkedin.png" style="max-width: 100%; height: auto;"></a> <a href="http://share.feedsportal.com/share/gplus/?u=http%3A%2F%2Fbits.blogs.nytimes.com%2F2014%2F01%2F14%2Fthe-nuts-and-bolts-of-network-neutrality%2F%3Fpartner%3Drss%26emc%3Drss&amp;t=Bits+Blog%3A+The+Nuts+and+Bolts+of+Network+Neutrality" rel="nofollow external" class="bo"><img src="http://res3.feedsportal.com/social/googleplus.png" style="max-width: 100%; height: auto;"></a> <a href="http://share.feedsportal.com/share/email/?u=http%3A%2F%2Fbits.blogs.nytimes.com%2F2014%2F01%2F14%2Fthe-nuts-and-bolts-of-network-neutrality%2F%3Fpartner%3Drss%26emc%3Drss&amp;t=Bits+Blog%3A+The+Nuts+and+Bolts+of+Network+Neutrality" rel="nofollow external" class="bo"><img src="http://res3.feedsportal.com/social/email.png" style="max-width: 100%; height: auto;"></a>
    </td></tr></tbody></table></div>
    <br><br><a href="http://da.feedsportal.com/r/186528878132/u/0/f/640387/c/34625/s/35ef0e7f/sc/1/rc/1/rc.htm" rel="nofollow external" class="bo"><img src="http://da.feedsportal.com/r/186528878132/u/0/f/640387/c/34625/s/35ef0e7f/sc/1/rc/1/rc.img" style="max-width: 100%; height: auto;"></a><br><a href="http://da.feedsportal.com/r/186528878132/u/0/f/640387/c/34625/s/35ef0e7f/sc/1/rc/2/rc.htm" rel="nofollow external" class="bo"><img src="http://da.feedsportal.com/r/186528878132/u/0/f/640387/c/34625/s/35ef0e7f/sc/1/rc/2/rc.img" style="max-width: 100%; height: auto;"></a><br><a href="http://da.feedsportal.com/r/186528878132/u/0/f/640387/c/34625/s/35ef0e7f/sc/1/rc/3/rc.htm" rel="nofollow external" class="bo"><img src="http://da.feedsportal.com/r/186528878132/u/0/f/640387/c/34625/s/35ef0e7f/sc/1/rc/3/rc.img" style="max-width: 100%; height: auto;"></a><br><br><a href="http://da.feedsportal.com/r/186528878132/u/0/f/640387/c/34625/s/35ef0e7f/a2.htm" rel="nofollow external" class="bo"><img src="http://da.feedsportal.com/r/186528878132/u/0/f/640387/c/34625/s/35ef0e7f/a2.img" style="max-width: 100%; height: auto;"></a>
    </div>
]]>
</Body>
<Summary>A federal appeals court threw out F.C.C. rules requiring that all information be treated equally on the Internet; we explain what the decision means.      </Summary>
<Website>http://bits.blogs.nytimes.com/2014/01/14/the-nuts-and-bolts-of-network-neutrality/?partner=rss&amp;emc=rss</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/40255/guest@my.umbc.edu/f6ab227d1bd4ebf92c26714ea3474d92/api/pixel</TrackingUrl>
<Tag>federal-communications-commission</Tag>
<Tag>genachowski-julius</Tag>
<Tag>internet</Tag>
<Tag>net-neutrality</Tag>
<Tag>new</Tag>
<Tag>policy</Tag>
<Tag>powell-michael-k</Tag>
<Tag>technology</Tag>
<Tag>verizon-communications-inc</Tag>
<Tag>verizon-communications-inc-vz-nyse</Tag>
<Tag>wheeler-thomas-e</Tag>
<Tag>york</Tag>
<Group token="retired-583">Web Developer - Build Group</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/retired-583</GroupUrl>
<AvatarUrl>https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xsmall.png?1363101197</AvatarUrl>
<AvatarUrl size="original">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/original.jpg?1363101197</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xxlarge.png?1363101197</AvatarUrl>
<AvatarUrl size="xlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xlarge.png?1363101197</AvatarUrl>
<AvatarUrl size="large">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/large.png?1363101197</AvatarUrl>
<AvatarUrl size="medium">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/medium.png?1363101197</AvatarUrl>
<AvatarUrl size="small">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/small.png?1363101197</AvatarUrl>
<AvatarUrl size="xsmall">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xsmall.png?1363101197</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xxsmall.png?1363101197</AvatarUrl>
<Sponsor>Web Developer - Build Group</Sponsor>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>true</CommentsAllowed>
<PostedAt>Wed, 15 Jan 2014 08:18:58 -0500</PostedAt>
<EditAt>Wed, 15 Jan 2014 13:32:07 -0500</EditAt>
</NewsItem>

<NewsItem contentIssues="false" id="40252" important="false" status="posted" url="https://my3.my.umbc.edu/posts/40252">
<Title>2013 Idea Competition Winners Announced</Title>
<Tagline>Kyran Richardson Percy Addo win it with InSource #GotIdeas</Tagline>
<Body>
<![CDATA[
    <div class="html-content">
    <p>[1-2-2014] Congratulations to the latest winners of the UMBC Idea Competition! </p>
    <p>As part of the Alex. Brown Center for Entrepreneurship's Fall 2013 Idea Competition, student entrepreneurs pitched their ideas to a panel of seasoned entrepreneurs, all UMBC Alum, and a full house at the Sportzone on November 11, 2013. Many of the ideas were developed by students in the College of Engineering and Information Tecnology.</p>
    <p>There were two first place winners:</p>
    <p><strong>Best Idea:</strong> Kryan Richardson (Financial Economics) &amp; <strong>Percy Addo (Information Systems)</strong> with InSOURCE<br>Best Presentation: Perry Ogwuche (Computer Science), <a href="http://my.umbc.edu/events/21049" rel="nofollow external" class="bo">HACKaTHON</a></p>
    <p><strong>2nd Place:</strong> Titus Jones (Graduate Non-Degree), <a href="http://www.chatseats.org/" rel="nofollow external" class="bo">Chatseats<br></a><strong>3rd Place:</strong> Jennifer Lasbury (Biological Sciences), Speakedu</p>
    <p>Other ideas included:<br>• <strong>Markus Proctor (Mechanical Engineering)</strong> with <a href="http://www.globatum.com/braincad/#" rel="nofollow external" class="bo">BrainCAD</a>, a thought driven CAD program<br>• <strong>Emily Schultheis (Chemical Engineering)</strong> trying to make 3D printing available to students<br>• Mohammed Danish Akbar (Biochemistry and Molecular Biology) with Instaride, a carpooling alternative for students<br>• Abdulhadi Al Ruwaithi (Emergency Health Services) with the SJ Helmet, an airbag motorcycle helmet<br>• <strong>Cody Kenlak (Information Systems)</strong> with Dynamik Beats, a mood &amp; activity driven music player</p>
    <p>Stay up-to-date with where these ideas are headed by joining the UMBC Entrepreneurs <a href="https://www.facebook.com/UMBCentrepreneurs" rel="nofollow external" class="bo">Facebook</a> and <a href="https://twitter.com/UMBCEntrs" rel="nofollow external" class="bo">Twitter pages</a>. </p>
    </div>
]]>
</Body>
<Summary>[1-2-2014] Congratulations to the latest winners of the UMBC Idea Competition!   As part of the Alex. Brown Center for Entrepreneurship's Fall 2013 Idea Competition, student entrepreneurs pitched...</Summary>
<Website>http://my.umbc.edu/groups/entrepreneurship/news/39011</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/40252/guest@my.umbc.edu/5b03936d7d42f2a0c996a1f41d608eab/api/pixel</TrackingUrl>
<Tag>addo</Tag>
<Tag>akbar</Tag>
<Tag>alruwaithi</Tag>
<Tag>idea</Tag>
<Tag>jones</Tag>
<Tag>kenlak</Tag>
<Tag>lasbury</Tag>
<Tag>ogwuche</Tag>
<Tag>proctor</Tag>
<Tag>richardson</Tag>
<Tag>schulteis</Tag>
<Tag>umbc</Tag>
<Group token="retired-95">College of Engineering and Information Technology</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/retired-95</GroupUrl>
<AvatarUrl>https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/095/c2a784a6cda726ef5f845e9192adb64b/xsmall.png?1496851664</AvatarUrl>
<AvatarUrl size="original">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/095/c2a784a6cda726ef5f845e9192adb64b/original.jpg?1496851664</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/095/c2a784a6cda726ef5f845e9192adb64b/xxlarge.png?1496851664</AvatarUrl>
<AvatarUrl size="xlarge">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/095/c2a784a6cda726ef5f845e9192adb64b/xlarge.png?1496851664</AvatarUrl>
<AvatarUrl size="large">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/095/c2a784a6cda726ef5f845e9192adb64b/large.png?1496851664</AvatarUrl>
<AvatarUrl size="medium">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/095/c2a784a6cda726ef5f845e9192adb64b/medium.png?1496851664</AvatarUrl>
<AvatarUrl size="small">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/095/c2a784a6cda726ef5f845e9192adb64b/small.png?1496851664</AvatarUrl>
<AvatarUrl size="xsmall">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/095/c2a784a6cda726ef5f845e9192adb64b/xsmall.png?1496851664</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/095/c2a784a6cda726ef5f845e9192adb64b/xxsmall.png?1496851664</AvatarUrl>
<Sponsor>College of Engineering and Information Technology</Sponsor>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>false</CommentsAllowed>
<PostedAt>Wed, 15 Jan 2014 07:26:50 -0500</PostedAt>
<EditAt>Wed, 15 Jan 2014 10:20:10 -0500</EditAt>
</NewsItem>

<NewsItem contentIssues="true" id="40253" important="false" status="posted" url="https://my3.my.umbc.edu/posts/40253">
<Title>Creating Custom Shipping Methods In Magento</Title>
<Body>
<![CDATA[
    <div class="html-content">
    <table width="650">
    <tbody>
    <tr>
    <td>
    <div>
    <img src="http://statisches.auslieferung.commindo-media-ressourcen.de/advertisement.gif" alt="" style="max-width: 100%; height: auto;"><br><a href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=1" rel="nofollow external" class="bo"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=1" alt="" style="max-width: 100%; height: auto;"></a> <a href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=2" rel="nofollow external" class="bo"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=2" alt="" style="max-width: 100%; height: auto;"></a> <a href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=3" rel="nofollow external" class="bo"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=3" alt="" style="max-width: 100%; height: auto;"></a>
    </div>
    </td>
    </tr>
    </tbody>
    </table>
    <p>In this tutorial, we will use Magento’s powerful shipping-method code abstraction to create a shipping carrier. We will create two shipping methods that provide a fixed shipping price, allow for free shipping promotions, define logic based on an item’s weight and, finally, make it all configurable in the admin panel.</p>
    <p>We will cover the following:</p>
    <ul>
    <li>Extend the abstract shipping class and implement the required methods.</li>
    <li>Make the shipping method configurable in Magento’s admin panel.</li>
    <li>Work with promotions to allow for free shipping.</li>
    <li>Allow tracking codes to be set against an order.</li>
    </ul>
    <h3>Before We Start</h3>
    <p>This tutorial assumes that <strong>you are familiar with how to create a Magento module</strong>. If you are not, please first refer to an earlier tutorial in this series, “<a href="http://coding.smashingmagazine.com/2012/03/01/basics-creating-magento-module/" rel="nofollow external" class="bo">The Basics of Creating a Magento Module</a>.” To begin, you will need a Community or Enterprise  installation of Magento, either locally or on a server that you are able to access.</p>
    <p>The logic we will implement in this tutorial could be client-specific, so we will implement our module as a “local module” and, therefore, create it in <code>app/code/local</code>. Let’s start by creating the following file structure:</p>
    <pre><code>&#x000A;    app&#x000A;      - code&#x000A;        - local&#x000A;          - SmashingMagazine&#x000A;            - MyCarrier&#x000A;              - Model&#x000A;                - Carrier.php&#x000A;              - etc&#x000A;                - config.xml&#x000A;                - system.xml&#x000A;      - etc&#x000A;        - modules&#x000A;          - SmashingMagazine_MyCarrier.xml</code></pre>
    <p>Now we can create <code>SmashingMagazine_MyCarrier.xml</code>:</p>
    <pre><code>&#x000A;    &lt;?xml version="1.0"?&gt;&#x000A;    &lt;config&gt;&#x000A;        &lt;modules&gt;&#x000A;            &lt;SmashingMagazine_MyCarrier&gt;&#x000A;                &lt;active&gt;true&lt;/active&gt;&#x000A;                &lt;codePool&gt;local&lt;/codePool&gt;&#x000A;                &lt;depends&gt;&#x000A;                    &lt;Mage_Shipping /&gt;&#x000A;                &lt;/depends&gt;&#x000A;            &lt;/SmashingMagazine_MyCarrier&gt;&#x000A;        &lt;/modules&gt;&#x000A;    &lt;/config&gt;&#x000A;    </code></pre>
    <p>Notice the dependency on the shipping module. This ensures that our SmashingMagazine MyCarrier module will load after the Mage Shipping module, and it will throw an error if the Mage Shipping module has been disabled.</p>
    <h3>Carriers, Methods, Requests And Results</h3>
    <p>Before continuing, we should understand the terminology that Magento uses throughout its shipping abstraction. A “carrier” represents a shipping carrier in the sense you would expect (DPD, FedEx, etc.). Each carrier has one or many shipping methods, which contain the carrier code, the carrier title, the method code, the method title, a price to be paid by the customer and a cost of shipping to the retailer (optional).</p>
    <p>During the checkout process, <strong>Magento creates a shipping-rate “request” object that contains all of the shipping information</strong>. The request can be used to determine which rates apply. For example, an “express” shipping method might not apply to orders under $10. All applicable rates are then “appended” to a shipping-rate “result” object, which generates a list of methods for the customer to choose from.</p>
    <p>The following list names these concepts defined above, along with their representation as Magento classes:</p>
    <ul>
    <li>Request<br>
    <code>Mage_Shipping_Model_Rate_Request</code>
    </li>
    <li>Result<br>
    <code>Mage_Shipping_Model_Rate_Result</code>
    </li>
    <li>Method<br>
    <code>Mage_Shipping_Model_Rate_Result_Method</code>
    </li>
    <li>Carrier<br>
    Any class that extends the abstract class <code>Mage_Shipping_Model_Carrier_Abstract</code> and implements the interface <code>Mage_Shipping_Model_Carrier_Interface</code>
    </li>
    </ul>
    <h3>Extending The Shipping Abstract</h3>
    <p>To create our shipping carrier, we need to extend <code>Mage_Shipping_Model_Carrier_Abstract</code>, implement <code>Mage_Shipping_Model_Carrier_Interface</code> and add the required abstract methods.</p>
    <p>The <strong>most important method</strong> is <code>collectRates</code>. This is the method that receives a shipping request, appends applicable shipping methods and returns a shipping result.</p>
    <p>Copy the following code into <code>app/code/local/SmashingMagazine/MyCarrier/Model/Carrier.php</code>:</p>
    <pre><code>&#x000A;    &lt;?php&#x000A;    class SmashingMagazine_MyCarrier_Model_Carrier&#x000A;        extends Mage_Shipping_Model_Carrier_Abstract&#x000A;        implements Mage_Shipping_Model_Carrier_Interface&#x000A;    {&#x000A;        protected $_code = 'smashingmagazine_mycarrier';&#x000A;    &#x000A;        public function collectRates(&#x000A;            Mage_Shipping_Model_Rate_Request $request&#x000A;        )&#x000A;        {&#x000A;            return Mage::getModel('shipping/rate_result');&#x000A;        }&#x000A;    &#x000A;        public function getAllowedMethods()&#x000A;        {&#x000A;            return array();&#x000A;        }&#x000A;    }&#x000A;    </code></pre>
    <p>This is <strong>the skeleton for a shipping method class</strong>, but it is pretty useless because we have no shipping methods.</p>
    <p>Let’s start by hardcoding a method. This method will be called “standard” and have a price of $9.99. For now, we will assume there is no cost to the retailer.</p>
    <pre><code>&#x000A;    &lt;?php&#x000A;    class SmashingMagazine_MyCarrier_Model_Carrier&#x000A;        extends Mage_Shipping_Model_Carrier_Abstract&#x000A;        implements Mage_Shipping_Model_Carrier_Interface&#x000A;    {&#x000A;        protected $_code = 'smashingmagazine_mycarrier';&#x000A;       &#x000A;        public function collectRates(&#x000A;            Mage_Shipping_Model_Rate_Request $request&#x000A;        )&#x000A;        {&#x000A;            $result = Mage::getModel('shipping/rate_result');&#x000A;            /* @var $result Mage_Shipping_Model_Rate_Result */&#x000A;           &#x000A;            $result-&gt;append($this-&gt;_getStandardShippingRate());&#x000A;           &#x000A;            return $result;&#x000A;        }&#x000A;    &#x000A;        protected function _getStandardShippingRate()&#x000A;        {&#x000A;            $rate = Mage::getModel('shipping/rate_result_method');&#x000A;            /* @var $rate Mage_Shipping_Model_Rate_Result_Method */&#x000A;           &#x000A;            $rate-&gt;setCarrier($this-&gt;_code);&#x000A;            /**&#x000A;             * getConfigData(config_key) returns the configuration value for the&#x000A;             * carriers/[carrier_code]/[config_key]&#x000A;             */&#x000A;            $rate-&gt;setCarrierTitle($this-&gt;getConfigData('title'));&#x000A;           &#x000A;            $rate-&gt;setMethod('standand');&#x000A;            $rate-&gt;setMethodTitle('Standard');&#x000A;           &#x000A;            $rate-&gt;setPrice(4.99);&#x000A;            $rate-&gt;setCost(0);&#x000A;           &#x000A;            return $rate;&#x000A;        }&#x000A;       &#x000A;        public function getAllowedMethods()&#x000A;        {&#x000A;            return array(&#x000A;                'standard' =&gt; 'Standard',&#x000A;            );&#x000A;        }&#x000A;    }&#x000A;    </code></pre>
    <p>Now we are just one step away from a working shipping method — the module configuration file.</p>
    <h4>Module Configuration</h4>
    <p>The module configuration has the standard structure (as detailed in “<a href="http://coding.smashingmagazine.com/2012/03/01/basics-creating-magento-module/" title="The Basics Of Creating A Magento Module" rel="nofollow external" class="bo">The Basics of Creating a Magento Module</a>”). Copy the following into <code>app/code/local/SmashingMagazine/MyCarrier/etc/config.xml</code>:</p>
    <pre><code>&#x000A;    &lt;?xml version="1.0" encoding="UTF-8"?&gt;&#x000A;    &lt;config&gt;&#x000A;        &lt;modules&gt;&#x000A;            &lt;SmashingMagazine_MyCarrier&gt;&#x000A;                &lt;module&gt;0.0.1&lt;/module&gt;&#x000A;            &lt;/SmashingMagazine_MyCarrier&gt;&#x000A;        &lt;/modules&gt;&#x000A;        &lt;global&gt;&#x000A;            &lt;models&gt;&#x000A;                &lt;smashingmagazine_mycarrier&gt;&#x000A;                    &lt;class&gt;SmashingMagazine_MyCarrier_Model&lt;/class&gt;&#x000A;                &lt;/smashingmagazine_mycarrier&gt;&#x000A;            &lt;/models&gt;&#x000A;        &lt;/global&gt;&#x000A;        &lt;!-- Default configuration --&gt;&#x000A;        &lt;default&gt;&#x000A;            &lt;carriers&gt;&#x000A;                &lt;smashingmagazine_mycarrier&gt;&#x000A;                    &lt;active&gt;1&lt;/active&gt;&#x000A;                    &lt;!--&#x000A;                         This configuration should not be made visible&#x000A;                         to the administrator, because it specifies&#x000A;                         the model to be used for this carrier.&#x000A;                    --&gt;&#x000A;                    &lt;model&gt;smashingmagazine_mycarrier/carrier&lt;/model&gt;&#x000A;                    &lt;!--&#x000A;                        The title as referenced in the carrier class&#x000A;                    --&gt;&#x000A;                    &lt;title&gt;Smashing Magazine Carrier&lt;/title&gt;&#x000A;                    &lt;!--&#x000A;                        The sort order specifies the position that&#x000A;                        this carrier appears relative to the other&#x000A;                        carriers available in checkout.&#x000A;                    --&gt;&#x000A;                    &lt;sort_order&gt;10&lt;/sort_order&gt;&#x000A;                    &lt;!--&#x000A;                        Out of the box, Magento offers shipping&#x000A;                        carriers the ability to restrict themselves&#x000A;                        to specific countries. For this configuration&#x000A;                        option, 0 means allow all countries available,&#x000A;                        and 1 means allow all countries specified&#x000A;                        in the country list that we will add later&#x000A;                        in system.xml&#x000A;                    --&gt;&#x000A;                    &lt;sallowspecific&gt;0&lt;/sallowspecific&gt;&#x000A;                &lt;/smashingmagazine_mycarrier&gt;&#x000A;            &lt;/carriers&gt;&#x000A;        &lt;/default&gt;&#x000A;    &lt;/config&gt;&#x000A;    </code></pre>
    <p>This default configuration “registers” the model we have just created as a shipping carrier. As you may know, <strong>Magento merges all of its configuration XML together</strong> and caches the result (if the cache is enabled). When a customer loads the shipping-method list, Magento loops through all of the carriers in the carriers node of the configuration and loads the shipping methods from the models determined by the “active” carriers.</p>
    <p>We should now be able to see our shipping method in the checkout.</p>
    <h3>Making It Configurable</h3>
    <p>We have already specified the default configuration for this module. So, let’s make our module configurable in the admin panel by copying the following into <code>app/code/local/SmashingMagazine/etc/system.xml</code>:</p>
    <pre><code>&#x000A;    &lt;?xml version="1.0" encoding="UTF-8"?&gt;&#x000A;    &lt;config&gt;&#x000A;        &lt;sections&gt;&#x000A;            &lt;carriers translate="label" module="shipping"&gt;&#x000A;                &lt;groups&gt;&#x000A;                    &lt;smashingmagazine_mycarrier translate="label"&gt;&#x000A;                        &lt;label&gt;Smashing Magazine Carrier&lt;/label&gt;&#x000A;                        &lt;frontend_type&gt;text&lt;/frontend_type&gt;&#x000A;                        &lt;sort_order&gt;2&lt;/sort_order&gt;&#x000A;                        &lt;show_in_default&gt;1&lt;/show_in_default&gt;&#x000A;                        &lt;show_in_website&gt;1&lt;/show_in_website&gt;&#x000A;                        &lt;show_in_store&gt;1&lt;/show_in_store&gt;&#x000A;                        &lt;fields&gt;&#x000A;                            &lt;!--&#x000A;                                The following fields are available&#x000A;                                to modify in the admin panel.&#x000A;                                The values are saved in the&#x000A;                                database.&#x000A;    &#x000A;                                This shipping carrier abstract checks&#x000A;                                this value to determine whether&#x000A;                                the carrier should be shown.&#x000A;                            --&gt;&#x000A;                            &lt;active translate="label"&gt;&#x000A;                                &lt;label&gt;Enabled&lt;/label&gt;&#x000A;                                &lt;frontend_type&gt;select&lt;/frontend_type&gt;&#x000A;                                &lt;source_model&gt;adminhtml/system_config_source_yesno&lt;/source_model&gt;&#x000A;                                &lt;sort_order&gt;1&lt;/sort_order&gt;&#x000A;                                &lt;show_in_default&gt;1&lt;/show_in_default&gt;&#x000A;                                &lt;show_in_website&gt;1&lt;/show_in_website&gt;&#x000A;                                &lt;show_in_store&gt;0&lt;/show_in_store&gt;&#x000A;                            &lt;/active&gt;&#x000A;                            &lt;!--&#x000A;                                This value can be used to specify a&#x000A;                                custom title for our method.&#x000A;                            --&gt;&#x000A;                            &lt;title translate="label"&gt;&#x000A;                                &lt;label&gt;Title&lt;/label&gt;&#x000A;                                &lt;frontend_type&gt;text&lt;/frontend_type&gt;&#x000A;                                &lt;sort_order&gt;2&lt;/sort_order&gt;&#x000A;                                &lt;show_in_default&gt;1&lt;/show_in_default&gt;&#x000A;                                &lt;show_in_website&gt;1&lt;/show_in_website&gt;&#x000A;                                &lt;show_in_store&gt;1&lt;/show_in_store&gt;&#x000A;                            &lt;/title&gt;&#x000A;                            &lt;!--&#x000A;                                The sort order is used in Magento&#x000A;                                to determine what order the carrier&#x000A;                                will appear in relative to the&#x000A;                                other carriers available.&#x000A;                            --&gt;&#x000A;                            &lt;sort_order translate="label"&gt;&#x000A;                                &lt;label&gt;Sort Order&lt;/label&gt;&#x000A;                                &lt;frontend_type&gt;text&lt;/frontend_type&gt;&#x000A;                                &lt;sort_order&gt;100&lt;/sort_order&gt;&#x000A;                                &lt;show_in_default&gt;1&lt;/show_in_default&gt;&#x000A;                                &lt;show_in_website&gt;1&lt;/show_in_website&gt;&#x000A;                                &lt;show_in_store&gt;0&lt;/show_in_store&gt;&#x000A;                            &lt;/sort_order&gt;&#x000A;                            &lt;!--&#x000A;                                This value is used to specify whether&#x000A;                                the carrier is available only for&#x000A;                                specific countries or all countries&#x000A;                                available in the current Magento&#x000A;                                installation.&#x000A;                            --&gt;&#x000A;                            &lt;sallowspecific translate="label"&gt;&#x000A;                                &lt;label&gt;Ship to Applicable Countries&lt;/label&gt;&#x000A;                                &lt;frontend_type&gt;select&lt;/frontend_type&gt;&#x000A;                                &lt;sort_order&gt;90&lt;/sort_order&gt;&#x000A;                                &lt;frontend_class&gt;shipping-applicable-country&lt;/frontend_class&gt;&#x000A;                                &lt;source_model&gt;adminhtml/system_config_source_shipping_allspecificcountries&lt;/source_model&gt;&#x000A;                                &lt;show_in_default&gt;1&lt;/show_in_default&gt;&#x000A;                                &lt;show_in_website&gt;1&lt;/show_in_website&gt;&#x000A;                                &lt;show_in_store&gt;0&lt;/show_in_store&gt;&#x000A;                            &lt;/sallowspecific&gt;&#x000A;                            &lt;!--&#x000A;                                If 'specific countries' is chosen&#x000A;                                in the previous option, then this field&#x000A;                                allows the administrator to specify&#x000A;                                which specific countries this carrier&#x000A;                                should be available for.&#x000A;                            --&gt;                   &#x000A;                            &lt;specificcountry translate="label"&gt;&#x000A;                                &lt;label&gt;Ship to Specific Countries&lt;/label&gt;&#x000A;                                &lt;frontend_type&gt;multiselect&lt;/frontend_type&gt;&#x000A;                                &lt;sort_order&gt;91&lt;/sort_order&gt;&#x000A;                                &lt;source_model&gt;adminhtml/system_config_source_country&lt;/source_model&gt;&#x000A;                                &lt;show_in_default&gt;1&lt;/show_in_default&gt;&#x000A;                                &lt;show_in_website&gt;1&lt;/show_in_website&gt;&#x000A;                                &lt;show_in_store&gt;0&lt;/show_in_store&gt;&#x000A;                                &lt;can_be_empty&gt;1&lt;/can_be_empty&gt;&#x000A;                            &lt;/specificcountry&gt;&#x000A;                        &lt;/fields&gt;&#x000A;                    &lt;/smashingmagazine_mycarrier&gt;&#x000A;                &lt;/groups&gt;&#x000A;            &lt;/carriers&gt;&#x000A;        &lt;/sections&gt;&#x000A;    &lt;/config&gt;&#x000A;    </code></pre>
    <p>These fields are visible in the admin panel by navigating to <code>System → Configuration → Shipping Method → Smashing Magazine Carrier</code>.</p>
    <h3>Using Multiple Shipping Methods</h3>
    <h4>Express Shipping</h4>
    <p>So far, we have added a standard shipping method for the price of $9.99. However, the customer may wish to pay more to receive their order faster. The following code creates a shipping rate with a higher price and different shipping code:</p>
    <pre><code>&#x000A;    protected function _getExpressShippingRate()&#x000A;    {&#x000A;        $rate = Mage::getModel('shipping/rate_result_method');&#x000A;        /* @var $rate Mage_Shipping_Model_Rate_Result_Method */&#x000A;        $rate-&gt;setCarrier($this-&gt;_code);&#x000A;        $rate-&gt;setCarrierTitle($this-&gt;getConfigData('title'));&#x000A;        $rate-&gt;setMethod('express');&#x000A;        $rate-&gt;setMethodTitle('Express (Next day)');&#x000A;        $rate-&gt;setPrice(12.99);&#x000A;        $rate-&gt;setCost(0);&#x000A;        return $rate;&#x000A;    }&#x000A;    </code></pre>
    <p>To make this shipping rate appear next to the standard rate that we created earlier, we will need to modify the code in the <code>collectRates</code> method to append the new rate. Add the following before the return statement:</p>
    <pre><code>&#x000A;    $result-&gt;append($this-&gt;_getExpressShippingRate());&#x000A;    </code></pre>
    <p>Finally, add the shipping method to the allowed methods array in <code>getAllowedMethods</code>:</p>
    <pre><code>&#x000A;    public function getAllowedMethods()&#x000A;    {&#x000A;        return array(&#x000A;            'standard' =&gt; 'Standard',&#x000A;            'express' =&gt; 'Express',&#x000A;        );&#x000A;    }&#x000A;    </code></pre>
    <h4>Free Shipping</h4>
    <p>Many websites offer free shipping when a customer spends over a certain amount or satisfies certain conditions. We need to be able to do the same here. In Magento, you can set up a “Shopping Cart Rule.” With it, you can <strong>specify a set of conditions and define actions if those conditions are met</strong>; one of those actions is free shipping.</p>
    <p>If free shipping is available for a customer, then the <code>request</code> object will populated with <code>is_free_shipping</code> set to <code>1</code>. We need to check for and handle this possibility in our shipping method. Add the following before the return statement in the <code>collectRates</code> method:</p>
    <pre><code>&#x000A;    if ($request-&gt;getFreeShipping()) {&#x000A;        /**&#x000A;         *  If the request has the free shipping flag,&#x000A;         *  append a free shipping rate to the result.&#x000A;         */&#x000A;        $freeShippingRate = $this-&gt;_getFreeShippingRate();&#x000A;        $result-&gt;append($freeShippingRate);&#x000A;    }&#x000A;    </code></pre>
    <p>Add the following code to <code>app/code/local/SmashingMagazine/MyCarrier/Model/Carrier.php</code>:</p>
    <pre><code>&#x000A;    protected function _getFreeShippingRate()&#x000A;    {&#x000A;        $rate = Mage::getModel('shipping/rate_result_method');&#x000A;        /* @var $rate Mage_Shipping_Model_Rate_Result_Method */&#x000A;        $rate-&gt;setCarrier($this-&gt;_code);&#x000A;        $rate-&gt;setCarrierTitle($this-&gt;getConfigData('title'));&#x000A;        $rate-&gt;setMethod('free_shipping');&#x000A;        $rate-&gt;setMethodTitle('Free Shipping (3 - 5 days)');      &#x000A;        $rate-&gt;setPrice(0);&#x000A;        $rate-&gt;setCost(0);&#x000A;        return $rate;       &#x000A;    }&#x000A;    </code></pre>
    <p>Remember to add the method to the allowed methods array:</p>
    <pre><code>&#x000A;    public function getAllowedMethods()&#x000A;    {&#x000A;        return array(&#x000A;            'standard' =&gt; 'Standard',&#x000A;            'express' =&gt; 'Express',&#x000A;            'free_shipping' =&gt; 'Free Shipping',&#x000A;        );&#x000A;    }&#x000A;    </code></pre>
    <h3>Taking It A Bit Further</h3>
    <h4>Tracking Deliveries</h4>
    <p>Tracking numbers may be added to shipments through either the admin panel or an API. But to make our shipping methods visible in the admin panel, we will have to overwrite the <code>isTrackingAvailable</code> method in the abstract to return <code>true</code>.</p>
    <p>Add the following method to the end of <code>SmashingMagazine_MyCarrier_Model_Carrier</code>.</p>
    <pre><code>&#x000A;    public function isTrackingAvailable()&#x000A;    {&#x000A;        return true;&#x000A;    }&#x000A;    </code></pre>
    <p>You should now see the shipping carriers and methods available in the delivery courier drop-down menu when you try to place a shipment in the admin panel.</p>
    <h4>Using the Weight</h4>
    <p>Earlier, we added a more expensive express shipping method. But heavier items that require complex shipping arrangements might not be available for next-day delivery. We can check for this using the weight attribute of the request object by wrapping the code that appends the shipping method to the shipping result:</p>
    <pre><code>&#x000A;    // ...&#x000A;    $expressWeightThreshold =&#x000A;        $this-&gt;_getConfigData('express_weight_threshold');&#x000A;    &#x000A;    $eligibleForExpressDelivery = true;&#x000A;    foreach ($request-&gt;getAllItems() as $_item) {&#x000A;        if ($_item-&gt;getWeight() &gt; $expressWeightThreshold) {&#x000A;            $eligibleForExpressDelivery = false;&#x000A;        }&#x000A;    }         &#x000A;    &#x000A;    if ($eligibleForExpressDelivery) {&#x000A;        $result-&gt;append($this-&gt;_getExpressShippingRate());&#x000A;    }&#x000A;    // ...&#x000A;    </code></pre>
    <p>Notice that we have added a reference to the configuration. To make this appear in the admin panel, we need to add the following XML to the <code>app/code/local/SmashingMagazine/MyCarrier/etc/system.xml</code> file in the <code>fields</code> node:</p>
    <pre><code>&#x000A;    &lt;express_weight_threshold translate="label"&gt;&#x000A;        &lt;label&gt;Express Weight Threshold&lt;/label&gt;&#x000A;        &lt;frontend_type&gt;text&lt;/frontend_type&gt;&#x000A;        &lt;sort_order&gt;100&lt;/sort_order&gt;&#x000A;        &lt;show_in_default&gt;1&lt;/show_in_default&gt;&#x000A;        &lt;show_in_website&gt;1&lt;/show_in_website&gt;&#x000A;        &lt;show_in_store&gt;0&lt;/show_in_store&gt;&#x000A;    &lt;/express_weight_threshold&gt;&#x000A;    </code></pre>
    <h3>Summary</h3>
    <p>With a relatively small amount of code, we have been able to define our own shipping logic that integrates with checkout, the admin panel and even the shopping-cart promotions. You can learn much more about creating shipping modules in Magento by looking at the examples in the core files — namely, <code>Mage_Usa</code> and <code>Mage_Shipping</code>.</p>
    <p>I welcome any questions and would love to hear your feedback in the comments area below.</p>
    <p><em>(al, ea)</em></p>
    <hr>
    <p><small>© Matthew Haworth for <a href="http://www.smashingmagazine.com" rel="nofollow external" class="bo">Smashing Magazine</a>, 2014.</small></p>
    </div>
]]>
</Body>
<Summary>        In this tutorial, we will use Magento’s powerful shipping-method code abstraction to create a shipping carrier. We will create two shipping methods that provide a fixed shipping price,...</Summary>
<Website>http://www.smashingmagazine.com/2014/01/15/creating-custom-shipping-methods-in-magento/</Website>
<TrackingUrl>https://my3.my.umbc.edu/api/v0/pixel/news/40253/guest@my.umbc.edu/e6b55da875628234739bbae54d3b36e7/api/pixel</TrackingUrl>
<Tag>coding</Tag>
<Tag>css</Tag>
<Tag>design</Tag>
<Tag>development</Tag>
<Tag>html</Tag>
<Tag>javascript</Tag>
<Tag>mysql</Tag>
<Tag>php</Tag>
<Tag>sql</Tag>
<Tag>web</Tag>
<Group token="retired-583">Web Developer - Build Group</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/retired-583</GroupUrl>
<AvatarUrl>https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xsmall.png?1363101197</AvatarUrl>
<AvatarUrl size="original">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/original.jpg?1363101197</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xxlarge.png?1363101197</AvatarUrl>
<AvatarUrl size="xlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xlarge.png?1363101197</AvatarUrl>
<AvatarUrl size="large">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/large.png?1363101197</AvatarUrl>
<AvatarUrl size="medium">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/medium.png?1363101197</AvatarUrl>
<AvatarUrl size="small">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/small.png?1363101197</AvatarUrl>
<AvatarUrl size="xsmall">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xsmall.png?1363101197</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/583/fc60f5d7abc2e080599bb6dc465db54d/xxsmall.png?1363101197</AvatarUrl>
<Sponsor>Web Developer - Build Group</Sponsor>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>true</CommentsAllowed>
<PostedAt>Wed, 15 Jan 2014 07:03:35 -0500</PostedAt>
</NewsItem>

</News>
