<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>centresource blog &#187; Michael Calhoun</title>
	<atom:link href="http://blog.centresource.com/author/mcalhoun/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.centresource.com</link>
	<description>the thoughts and ramblings of centresource</description>
	<lastBuildDate>Tue, 18 Jun 2013 15:07:17 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>CSSOff</title>
		<link>http://blog.centresource.com/2011/12/13/cssoff/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=cssoff</link>
		<comments>http://blog.centresource.com/2011/12/13/cssoff/#comments</comments>
		<pubDate>Tue, 13 Dec 2011 16:57:22 +0000</pubDate>
		<dc:creator>Michael Calhoun</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[HTML5]]></category>

		<guid isPermaLink="false">http://blog.centresource.com/?p=3885</guid>
		<description><![CDATA[Recently, Unmatched Style sponsored some &#8220;Friendly Markup Fisticuffs&#8221; where they issued design files to whoever wanted to compete, and the competitors would have two weeks to create a website using only their brains and their computers.  The rules were pretty straightforward: one page only necessary, all external libraries (jQuery, et al.) had to be included,...]]></description>
				<content:encoded><![CDATA[<p><a href="http://blog.centresource.com/content/uploads/2011/12/CSSOFF2011-Design_small.png"><img class="alignright size-full wp-image-3962" title="CSSOff Design" src="http://blog.centresource.com/content/uploads/2011/12/CSSOFF2011-Design_small.png" alt="" width="250" height="706" /></a>Recently, <a title="Unmatched Style" href="http://unmatchedstyle.com/" target="_blank">Unmatched Style</a> sponsored some &#8220;Friendly Markup Fisticuffs&#8221; where they issued design files to whoever wanted to compete, and the competitors would have two weeks to create a website using only their brains and their computers.  The rules were pretty straightforward: one page only necessary, all external libraries (jQuery, et al.) had to be included, and your submission had to run locally. Otherwise, go nuts.</p>
<p>The <a title="CSSOff Judges" href="http://www.unmatchedstyle.com/cssoff/judges.php" target="_blank">judges</a> would then review your work and score it based on code (cleanliness, semantics, and validation); user experience (respect for design, good choice points, interactions); and support (modern browsers, legacy browsers, size of project, resource optimization).  In the judges hands rests the responsibility of deciding one grand prize winner, 2 second place winners, 2 third place winners, and 20 runners-up.</p>
<p>A few Centresourcers were up to the challenge, here is what they had to say about the experience:</p>
<h3>Mike Calhoun</h3>
<p>The big thing that jumped out at me with this design was how EVERYTHING had a textured background associated with it. After that initial shock, my attention turned to points that seemed like they could have some kind of user interaction. There were none specified by the designer and the rules had specified that it was left to the coder to decide what (if any) they would like.  The obstacles section was an obvious choice for some kind of hover/transition.  The count down clock and form area also seemed like something that would have an room to explore with whatever I came up with while creating the markup. After a closer look, a few other smaller nuances caught my eye such as the small transparent border at the end and beginning of each section, the text shadows and many of the headings, or (again) the textured background.  In the end, I made a conscious decision to try and keep this as small as possible in terms of the file size and sacrifice complete compatibility for items like the above nuances in legacy browsers.  Although this probably hurt me in terms of scoring, I thought it would be more beneficial to learn newer practices for HTML5 and CSS3 versus supporting Internet Explorer 6 (which honestly has not been something I’ve thought about for a few years).  The trade off worked out well for modern browsers as everything looked pretty close to the design and I was able to use lots of CSS3 properties to accomplish the gradient background effects (rgba transparent backgrounds with a gradient image), font face properties for all the non standard fonts (allowed for the ticking clock), and extensive use of the jQuery animate property for my transition effect on the prizes section. In all, this was a  great experience that should pay off in the long run for applying new process to future work.</p>
<h3>Travis Roberts</h3>
<p>Mike went over the different sections/elements of the design, so I&#8217;ll talk about some of the tricks I used to accomplish the design while still keeping file sizes nice and small.</p>
<p>First, I exported all of my images as transparent GIFs instead of PNGs. The judging gives points for compatibility with older browsers, and everyone&#8217;s favorite browser to hate, Internet Explorer 6, doesn&#8217;t support transparent PNGs. The image quality of the exported assets were comparable as GIFs, the file sizes were much smaller, and they work with IE6 without having to do any weird hacks. By using GIFs, the total size for all image assets clocked in around 868KB.</p>
<p>Second, I used a CSS3 library (<a href="http://daneden.me/animate" target="_blank">Animate</a> by <a href="http://daneden.me/" target="_blank">Daniel Eden</a>) to accomplish all of the effects/transitions. This may seem counterintuitive to my previous paragraph about older browser compatibility. My thought was that effects/transitions are progressive enhancements. The site will still work fine without them, but they add a little polish to browsers that understand them. Because I used the CSS3 library for my effects, the only external javascript file I included was jQuery. This allowed my total project size to be relatively small (~1.1MB zipped).</p>
<p>My entry: <a href="http://cssoff.csclientsite.com/troberts/">http://cssoff.csclientsite.com/troberts/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.centresource.com/2011/12/13/cssoff/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Technology Agnosticism and its Significance to Me</title>
		<link>http://blog.centresource.com/2011/11/07/technology-agnosticism-and-its-significance-to-me/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=technology-agnosticism-and-its-significance-to-me</link>
		<comments>http://blog.centresource.com/2011/11/07/technology-agnosticism-and-its-significance-to-me/#comments</comments>
		<pubDate>Mon, 07 Nov 2011 18:27:57 +0000</pubDate>
		<dc:creator>Michael Calhoun</dc:creator>
				<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://blog.centresource.com/?p=3747</guid>
		<description><![CDATA[Starting out in web development, one fundamental truth that was difficult for me to understand is that there is no silver bullet for all client challenges. It was initially very easy to get comfortable building one kind of website with one tool; however, when a new challenge came along that tool wasn’t always the right...]]></description>
				<content:encoded><![CDATA[<p>Starting out in web development, one fundamental truth that was difficult for me to understand is that there is no silver bullet for all client challenges.  It was initially very easy to get comfortable building one kind of website with one tool; however, when a new challenge came along that tool wasn’t always the right one for the job.  As a nascent programmer, I fell into the “when all you have is a hammer, then everything looks like a nail” mindset for one reason: I was pretty unsure of my skills. If I was able to do something well, fast, and it made clients happy then I did not want to stray from that comfort zone.  But that model was unsustainable in a constantly changing field.  Fundamentally, after a few years of development work, if all you have is a hammer then it may be time to consider a job besides carpentry.  To move beyond this hammer mindset, a sense of aloofness and open mindedness are necessary.</p>
<p>I started out programming Drupal which endeared it to me because it was my first job, I understood it, and my employer thought highly enough of my skills to pay me.  What I needed to better understand was that Drupal was not the only game in town.  When presented with a new problem one must always consider what the problem looks to solve and what best accomplishes that solution.  For me, I was confronted with a project that needed a pretty extensive custom database that, as hard as I tried, I could not get to work well with Drupal.  After extensive research I (begrudgingly) decided that Ruby on Rails was my best option.  This reflects another fact of life in web development: things advance very quickly (and usually for the better).  When I started my first job, Rails was still in version 1.x with syntax that was not immediately understandable to me and was lacking in the documentation or as big a community as PHP and Drupal.  By the time I came back to Rails, much had changed.  Rails was older, the documentation was great, and it made complete sense for this problem. In the end, the only hurdle to overcome were my preconceived notions about frameworks and how I understood them to work.  I had to  consider that something had gotten better, and realize the goal wasn’t to build a site in Drupal, but to build a site that thoughtfully considered the clients&#8217; needs and best addressed the goal of the project.</p>
<p>Much has been said about what technology agnosticism means or if it is even something at all.  For me, it means rationally and carefully thinking of the problem and how to best solve it, where best does not mean “something with which I’m most comfortable”. This is true in all facets, be it language, framework, Drupal module, Ruby gem, or Rails plugin.  We can use that with which we are most comfortable to start with, but from that point find other tools which improve our skills and improve our process.  As Marshal McLuhan, said in his book <em>The Medium is The Message</em>, “we shape our tools and thereafter our tools shape us.”</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.centresource.com/2011/11/07/technology-agnosticism-and-its-significance-to-me/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A Developer&#8217;s Arsenal: Mike Calhoun</title>
		<link>http://blog.centresource.com/2011/09/26/a-developers-arsenal-mike-calhoun/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=a-developers-arsenal-mike-calhoun</link>
		<comments>http://blog.centresource.com/2011/09/26/a-developers-arsenal-mike-calhoun/#comments</comments>
		<pubDate>Mon, 26 Sep 2011 17:25:29 +0000</pubDate>
		<dc:creator>Michael Calhoun</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Miscellaneous]]></category>

		<guid isPermaLink="false">http://blog.centresource.com/?p=3577</guid>
		<description><![CDATA[What tools do you use daily in the course of your development, and why those tools in particular? Textmate. Q: How do you start an argument in a room of developers? Ask them &#8220;what texteditor is better and why?&#8221; I’ve always subscribed to the classic “if it isn’t broken don’t fix it” train of thought...]]></description>
				<content:encoded><![CDATA[<ol>
<li><strong>What tools do you use daily in the course of your development, and why those tools in particular?</strong>
<ol>
<li><strong>Textmate</strong>. Q: How do you start an argume<a href="http://blog.centresource.com/content/uploads/2011/09/textmate-logo1.png"><img class="alignright size-full wp-image-3674" title="Textmate" src="http://blog.centresource.com/content/uploads/2011/09/textmate-logo1.png" alt="" width="148" height="142" /></a>nt in a room of developers? Ask them &#8220;what texteditor is better and why?&#8221; I’ve always subscribed to the classic “if it isn’t broken don’t fix it” train of thought on this. Before I used Textmate, I couldn’t stand the editor I was using (possibly JEdit or Aptana or something else equally horrible&#8230;I was on a PC at the time). Changing over to a mac opened the world of Textmate up to me, and I’ve had no reason to really look for something better since then.</li>
<li><strong>iTunes &amp; a good pair of headphones</strong>. Honestly, I just can’t imagine working anymore without these two items that they’ve become a part of my required tools. Whether in the office or out in public it can be way to easy to get distracted by things happening around me, especially when I’m trying to get to the bottom of something complicated.</li>
<li><strong>Stackoverflow.com</strong>. This is definitely more of a resource than a tool, but I still make use of it on a daily basis and it is often an invaluable tool in getting a task accomplished. One of the biggest things that I love about programming is the community. When I have a problem, I can usually count on two things: 1: somebody else has has the same problem and 2: There is a thoughtful discussion about approaches and solutions to this problem. Beyond that, its not a one way street as you can help out your fellow programmer with something you’ve worked through that he/she may be losing sleep over.</li>
<li><strong>Google Chrome</strong>. More specifically, the Google Chrome developer tools. Having been a Firebug person for so long, this was kind of a weird changeover initially. But, once I got the hang of what was happening, going back and using Firebug seems kind of old and busted now.</li>
</ol>
</li>
<li><strong>How did you get into development/programming/engineering, and what keeps you in it?</strong><br />
I’d been “living with computers” since the 80’s when my parents got an Apple IIC. After that it just kind of seemed like it was a forgone conclusion that I would wind up working in a tech field. For a brief stint in college it seemed like the tech world and me may part ways; however, I found my way back in grad school while working on a Master’s of Information Science. One week before I graduated, I interviewed for and was offered my first full time, non freelance job working with Internet technology and the rest was history.</li>
<li><strong>Who is another programmer or developer you admire, and why?</strong><br />
Alan Turing. In<a href="http://blog.centresource.com/content/uploads/2011/09/Alan_Turing_photo.jpg"><img class="alignright size-medium wp-image-3675" title="Alan_Turing_photo" src="http://blog.centresource.com/content/uploads/2011/09/Alan_Turing_photo-239x300.jpg" alt="" width="239" height="300" /></a> college, I was a dual major in computer science and history and his name kept popping up in both arenas all 4 years. Whether it was first year CS101 and a term paper I wrote on “<a href="http://en.wikipedia.org/wiki/Turing_test" target="_blank">Turing Tests</a>” or my third year history seminar on WWII with the work he did on “<a href="http://en.wikipedia.org/wiki/Bombe" target="_blank">The Bombe</a>” at Bletchey Park he was a present and fascinating figure. Granted he isn’t a developer or programmer in the sense of those terms that I work in today, but he is one of the first innovators and definitely a figure worthy of admiration for his brilliance and impact.</li>
<li><strong>How do you keep yourself up-to-date with the latest technologies and what new or upcoming tech are you excited about?</strong><br />
It is hard to answer this question because being in the tech field new developments seem to come at you from every which way. Probably the biggest ones I’ve looked at are meetings and conferences. Seems as though if you are in a city with a tech community, there will always be a designated get together to talk shop. Its great to attend conferences, but also just following them on any number mediums (twitter, blogs, etc. ) is great to learn about what new developments are popping up.</li>
<li><strong>What’s your favorite language of the moment? Why?</strong><br />
Working in a Ruby on Rails shop, it would be hard for me to answer this question with anything besides Ruby. But as to why it actually is my favorite presently, not so easy. Compared to other languages with which I’ve had experience, rails almost defies you to not like it. Writing apps it always come across as effortless and elegant because you are excited to work with it and proud of what you accomplish. Additionally, I’ve never come across a community that is so invested in advancing their interests that my job almost seems like a labor of love (with benefits).</li>
<li><strong>Do you have any advice for nascent developers?</strong><br />
Work! I remember first starting out one my ongoing complaints was that I couldn’t get a job because I didn’t have experience, and I couldn’t get experience because nobody would give me a job. But, I wish I had known then what I know now because working (albeit for free) is so easy to do in this industry. Find something you want to make (in my case it was a budget application to rein in my poor spending habits) and build it, and then share it on github or wherever. Do this with lots of things. Build yourself a website. Build your friend a website. Those are the best avenues to gain experience and some of the best things I’ve worked on since they’re for yourself and you can do/learn whatever you think would be cool.</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://blog.centresource.com/2011/09/26/a-developers-arsenal-mike-calhoun/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
