<?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>Brokenhaze</title>
	<atom:link href="http://brokenhaze.com/blog/feed/" rel="self" type="application/rss+xml" />
	<link>http://brokenhaze.com/blog</link>
	<description>The thoughts of a SysAdmin</description>
	<lastBuildDate>Wed, 15 Feb 2012 02:34:54 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Where are all the SysAdmins?</title>
		<link>http://brokenhaze.com/blog/2012/02/14/where-are-all-the-sysadmins/</link>
		<comments>http://brokenhaze.com/blog/2012/02/14/where-are-all-the-sysadmins/#comments</comments>
		<pubDate>Wed, 15 Feb 2012 00:47:00 +0000</pubDate>
		<dc:creator>George Beech</dc:creator>
				<category><![CDATA[SysAdmin]]></category>
		<category><![CDATA[Thoughts and Rants]]></category>

		<guid isPermaLink="false">http://brokenhaze.com/blog/?p=92</guid>
		<description><![CDATA[I had a great &#8211; albeit brief &#8211; conversation with Matt Simmons while he was in town on his world tour in NYC recently that got me thinking about bringing the SysAdmin community together. This isn&#8217;t the first time that I&#8217;ve thought about how bring the SysAdmin community together in a stronger way. And, since [...]]]></description>
			<content:encoded><![CDATA[<p>I had a great &#8211; albeit brief &#8211; conversation with Matt Simmons while he was in town on his <a href="http://www.standalone-sysadmin.com/blog/2012/01/manhattan-world-tour-1-night-only-wednesday-212012/" title="world tour">world tour in NYC </a> recently that got me thinking about bringing the SysAdmin community together. This isn&#8217;t the first time that I&#8217;ve thought about how bring the SysAdmin community together in a stronger way. And, since I&#8217;ve joined <a href="http://stackexchange.com">Stack Exchange</a> I&#8217;ve thought about it more and more since community building is a big part of what we do here.</p>

<p>The working theories are that there are a large portion of our community in the small business sector &#8211; places like regional ISPs that have a large need for administrators, but aren&#8217;t that big in the grand scheme of things.  But it <em>seems</em> that a good deal of system administrators aren&#8217;t involved in the community at all &#8211; or at least not in a visible way. There are a few questions that come to mind when you start to think about how to grow and solidify a community:</p>

<ul>
<li>How do I reach these people</li>
<li>How do I get them involved</li>
</ul>

<p>The problem I&#8217;m having now, is simply I don&#8217;t really have any ideas on how to accomplish these goals, how to reach out and bring people into the wonderful community that is being built.</p>

<p>I shall keep mulling this over, but if you have any ideas &#8211; leave them in the comments below.</p>
]]></content:encoded>
			<wfw:commentRss>http://brokenhaze.com/blog/2012/02/14/where-are-all-the-sysadmins/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>*Shudder* DevOps</title>
		<link>http://brokenhaze.com/blog/2012/02/06/shudder-devops/</link>
		<comments>http://brokenhaze.com/blog/2012/02/06/shudder-devops/#comments</comments>
		<pubDate>Tue, 07 Feb 2012 05:32:37 +0000</pubDate>
		<dc:creator>George Beech</dc:creator>
				<category><![CDATA[SysAdmin]]></category>
		<category><![CDATA[Thoughts and Rants]]></category>

		<guid isPermaLink="false">http://brokenhaze.com/blog/?p=73</guid>
		<description><![CDATA[I think the first time I heard the term DevOps I didn&#8217;t think all that much about it, in fact I vaguely remember thinking &#8220;oh great another group of developers that think they don&#8217;t need sysadmins and they can just code themselves out of any systems problem.&#8221; Of course, at the time I was working [...]]]></description>
			<content:encoded><![CDATA[<p>I think the first time I heard the term DevOps I didn&#8217;t think all that much about it, in fact I vaguely remember thinking &#8220;oh great another group of developers that think they don&#8217;t need sysadmins and they can just code themselves out of any systems problem.&#8221; Of course, at the time I was working in a soul crushing job, with incompetent programmers who thought their job was to push out code and as long as it ran on their laptop everything was just fine. So, I may have had a slightly &#8230; jaded view of things. At that point I just put my head back down and got back to work.</p>

<p>It&#8217;s been about two years now since I first heard the term DevOps, and you know what &#8211; i <em>still</em> don&#8217;t like it. However, now I don&#8217;t like it for completely new reasons.</p>

<p>The first, and I think biggest problem I have with the term DevOps is simply this &#8211; it shouldn&#8217;t exist. Simply, what people are calling DevOps should be shortened to &#8220;SysAdmin.&#8221; That&#8217;s right every SysAdmin should be working this way &#8211; there shouldn&#8217;t need to be a new term. Every SysAdmin should have a basic set of skills, a common ground we are first and foremost IT workers &#8211; that means we craft raw computing power into usable and complex systems. Those systems are not built by hand after the first time. They are built by automation, automation lets you not have to worry about the details of a solved problem. Automation lets you know that your complex system will be built correctly the second, third, Nth time.</p>

<p>In my opinion every sysadmin should at a minimum say yes to all of these things:</p>

<ul>
<li>You should be able to script in at least two languages</li>
<li>You should have a passable command of one compiled language</li>
<li>You should be able to look at a piece of code in any language and have an understanding of basically what is going on</li>
<li>Why? So you can talk with your devs, that&#8217;s why</li>
</ul>

<p>There are many people that will wave their hands, and shout &#8220;But, But that&#8217;s not what DevOps is about &#8211; DevOps is about bringing your Developers and SysAdmins closer and getting them to work together for a common good.&#8221; Ok, that&#8217;s a fair point and brings me to the second problem I have with DevOps. That problem is that the real word you are looking for is <strong>TEAMWORK</strong>. You shouldn&#8217;t need to coin a new term that says the IT department should work together &#8211; that should already be the goal.</p>

<p style="text-align: center;"><a href="http://brokenhaze.com/blog/wp-content/uploads/2012/02/teamwork-demotiv.jpg"><img class="size-medium wp-image-85 aligncenter" title="Team Work" src="http://brokenhaze.com/blog/wp-content/uploads/2012/02/teamwork-demotiv-300x239.jpg" alt="" width="300" height="239" /></a></p>

<p>My boss at my last job but it very well:</p>

<blockquote>
  <p>The guys in charge don&#8217;t care about how things get done. They only care that they do get done. All they see when the Dev and SysAdmin teams argue about anything is &#8220;The Geeks are fighting again &#8211; I don&#8217;t know about what and I don&#8217;t care, they just need to figure it out and get it done.&#8221;</p>
</blockquote>

<p>Everyone outside of IT sees us as a collective but, we still bicker between each other like children a lot. We need to start seeing everyone as part of the <em>same team</em>. We should take the ideals of the DevOps movement and repackage them as how things are done every day in the IT department. No need for special labels, no need to make a huge fuss about it. We just need to drop the label and get to work.</p>

<p><em>For any dev that reads this and goes &#8220;what about me&#8221; you can just s/SysAdmin/Dev/g and it still applies &#8211; for the most part. I&#8217;m a SysAdmin so some things may be slanted that way.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://brokenhaze.com/blog/2012/02/06/shudder-devops/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>There is No Such Thing as Too Complex</title>
		<link>http://brokenhaze.com/blog/2011/08/12/there-is-no-such-thing-as-too-complex/</link>
		<comments>http://brokenhaze.com/blog/2011/08/12/there-is-no-such-thing-as-too-complex/#comments</comments>
		<pubDate>Fri, 12 Aug 2011 23:07:54 +0000</pubDate>
		<dc:creator>George Beech</dc:creator>
				<category><![CDATA[SysAdmin]]></category>
		<category><![CDATA[Thoughts and Rants]]></category>

		<guid isPermaLink="false">http://brokenhaze.com/blog/?p=61</guid>
		<description><![CDATA[This is a crazy idea, but it&#8217;s true there really is no such thing as too complex in an IT environment. If you take a moment to think about it, everything we do is incredibly complex. Really, just take a moment to think about it. There is not one thing that you do as a [...]]]></description>
			<content:encoded><![CDATA[<p>This is a crazy idea, but it&#8217;s true there really is no such thing as too complex in an IT environment. If you take a moment to think about it, everything we do is incredibly complex. Really, just take a moment to think about it. There is not one thing that you do as a Systems  Administrator that isn&#8217;t complex.</p>

<p>You still don&#8217;t believe me do you? Fine. Lets take a look at a very simple operation. We are going to monitor a single box via SNMP. We are going to assume that you already have a central monitoring box already setup.</p>

<ol>
<li>You configure your box-to-be-monitored with SNMP, configuring the proper access controls </li>
<li>You add any extra scripts that you need to call via SNMP</li>
<li>You open the firewall on the box to allow SNMP traffic</li>
<li>You configure your monitoring server to query the box-to-b-monitored via SNMP</li>
<li>You check the results</li>
</ol>

<p>And, THAT is the simplified version of events. In reality there is a lot more that goes into just the simple process of monitoring ONE machine. That really is complex, and it&#8217;s not a bad thing.</p>

<p><a href="http://brokenhaze.com/blog/wp-content/uploads/2011/08/complexity.jpg"><img src="http://brokenhaze.com/blog/wp-content/uploads/2011/08/complexity-300x225.jpg" alt="" title="complexity" width="300" height="225" class="alignnone size-medium wp-image-64" /></a></p>

<p>Now having said this:</p>

<blockquote>
  <p>There <em>is</em> such a thing as <strong>BAD</strong> complexity.</p>
</blockquote>

<p>Bad complexity is complexity for the sake of making something more complex, or the inverse: making something less complex for the sake of being <em>not</em> complex. What you want to do is create a system that is of the <strong>correct</strong> complexity. That is you want to create a system that is neither too simple, nor too complex.</p>

<p>The problem that you run into with either end of the complexity spectrum is this: either you have a system that is too basic and cannot be scaled properly as the need arises <em>or</em> you have a system that is unmaintainable, and cannot scale because there are too many pieces meshed together.</p>

<p>When you are designing a system, you really will never achieve the perfect amount of complexity. There will always be trade-offs you have to make, based on past design decisions, future configuration considerations, and application constraints. However what you can do is make every decision in a thoughtful way that tries to strike a balance between the two extremes of complexity. And that, is one of the true zen things when you are a sysadmin. You achieve this beautify nearly perfect level of complexity system, and you sit back and smile. Then you go run to put out the next fire.</p>
]]></content:encoded>
			<wfw:commentRss>http://brokenhaze.com/blog/2011/08/12/there-is-no-such-thing-as-too-complex/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SysAdminTools &#8211; Making Our Lives Easier</title>
		<link>http://brokenhaze.com/blog/2011/07/29/sysadmintools-making-our-lives-easier/</link>
		<comments>http://brokenhaze.com/blog/2011/07/29/sysadmintools-making-our-lives-easier/#comments</comments>
		<pubDate>Fri, 29 Jul 2011 20:01:02 +0000</pubDate>
		<dc:creator>George Beech</dc:creator>
				<category><![CDATA[Open Source]]></category>
		<category><![CDATA[SysAdmin]]></category>
		<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://brokenhaze.com/blog/?p=48</guid>
		<description><![CDATA[First, it is SysAdmin Day! So happy sysadmin day to all of those hardworking sysadmins out there. I&#8217;ve had a project that I wanted to get off the ground for a while now. In fact, I think of it every time I move jobs, or start working on a project and think &#8220;wow this could [...]]]></description>
			<content:encoded><![CDATA[<p>First, it is SysAdmin Day! So happy sysadmin day to all of those hardworking sysadmins out there. I&#8217;ve had a project that I wanted to get off the ground for a while now. In fact, I think of it every time I move jobs, or start working on a project and think &#8220;wow this could be really useful to the other sysadmins out there.&#8221;</p>

<p>So in the spirit of sysadmin day, I&#8217;m announcing a new open source project that I&#8217;ve put up on github today. I&#8217;m calling the project &#8220;SysAdminTools&#8221; my vision is that it is a place where we can put all of those tools that we create out there and help our fellow admins by stopping the constant re-inventing of the wheel at all of the different places out there.</p>

<p><img alt="" src="http://www.sysadminday.com/images/thumbsup-180x150.gif" title="SysAdmin Day" class="alignnone" width="180" height="150" /></p>

<p>Honestly I&#8217;ve never seen a place that is a central collection of scripts and utilities that are useful to the brotherhood of the sysadmin and that is something I have always wanted to see out there. There have been many a long night hacking together some code where I&#8217;ve spent a few hours thinking to myself: surely someone has done this before! And yet, if they have it&#8217;s locked up in the bowels of some private RVS or on some random file share somewhere.</p>

<p>I think today is a great day to say enough is enough, and put this out there. I&#8217;ve seeded it with some of the utilities that we have put together at Stack Exchange some of them need work most of them have TODO&#8217;s but I promise to keep working on them and I call on you the great sysadmin community to help add to, grow and improve the scripts in this repository. My dream is that this grows to be <em>THE</em> repository for sysadmin tools and scripts.</p>

<p>The repo can be found at: <a href=https://github.com/GABeech/SysAdminTools>https://github.com/GABeech/SysAdminTools</a></p>
]]></content:encoded>
			<wfw:commentRss>http://brokenhaze.com/blog/2011/07/29/sysadmintools-making-our-lives-easier/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>The End of A Long Commute</title>
		<link>http://brokenhaze.com/blog/2011/03/31/the-end-of-a-long-commute/</link>
		<comments>http://brokenhaze.com/blog/2011/03/31/the-end-of-a-long-commute/#comments</comments>
		<pubDate>Thu, 31 Mar 2011 13:08:05 +0000</pubDate>
		<dc:creator>George Beech</dc:creator>
				<category><![CDATA[Life]]></category>

		<guid isPermaLink="false">http://brokenhaze.com/blog/?p=30</guid>
		<description><![CDATA[I am nearing the end of my long daily commute from Philadelphia to New York City. The end result hasn&#8217;t been too bad, although over the past six months the daily hour and a half commute has worn on me at times. My journey started when I took my current position at Stack Exchange as [...]]]></description>
			<content:encoded><![CDATA[<p>I am nearing the end of my long daily commute from Philadelphia to New York City. The end result hasn&#8217;t been too bad, although over the past six months the daily hour and a half commute has worn on me at times. My journey started when I took my current position at Stack Exchange as a Systems Administrator in their New York offices.</p>

<p>My first inclination was to move up there ASAP which, looking back would probably have been the better idea even if I was losing sleep over the stress finding a place in NYC in about a week was causing me.  The journey for me began when I accepted the position, I gave my notice at $evil_corporation excited to start in on an adventure at a hot VC funded startup. Of course I started looking for a place, hit up my sister for advice (since she has lived in NYC since she went away to college). I thought I had everything set, spent the week lining up apartments to look at during the week between knowledge dump session. I then intrepidly headed up to NYC for the weekend to look at these places. I had 13 apartments lined up to look at over the course of a weekend.</p>

<p>I figured I would surely find a place that would work during that time. The first rude awakening that told me the NYC real estate market was nothing like what I was used to was when I woke up Saturday morning to find that 8 of the places where no longer available. Wow.</p>

<p>The second realization was that Manhattan apartments where &#8230; small, very very small. Although, oddly I was OK with this. I figured if I was going to move to NYC I wanted to be in the center of it all &#8211; at least for a year or two &#8211; while I&#8217;m still young enough to appreciate it.   So, feeling a little bit depressed at not having found a place, and stressed out that I only had one week between my last day at my old job, and my first day at my new job I sat down and decided that it would be best to commute for a little while. I was thinking that this would only last a few months at first but that has transformed into six months at this point!</p>

<p>I have survived the commute now with the help of a few gadgets &#8211; and being a geek would you expect anything less?</p>

<ul>
<li>Laptop with cellular modem </li>
<li>iPod </li>
<li>Noise Supressing headphones </li>
<li>Kindle</li>
</ul>

<p>Being able to listen to music, read, serf the internet &#8211; and occationall do some work on the train was a great help in me keeping my sanity during these long commutes to and from New York.</p>

<p>Now that I have gotten a place in NYC, and will be moving up in the next few weeks I&#8217;ll miss my life in Philly but i&#8217;m looking forward to starting anew in NYC.</p>
]]></content:encoded>
			<wfw:commentRss>http://brokenhaze.com/blog/2011/03/31/the-end-of-a-long-commute/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Full Featured Email using powershell</title>
		<link>http://brokenhaze.com/blog/2011/03/25/full-featured-email-using-powershell/</link>
		<comments>http://brokenhaze.com/blog/2011/03/25/full-featured-email-using-powershell/#comments</comments>
		<pubDate>Fri, 25 Mar 2011 19:22:51 +0000</pubDate>
		<dc:creator>George Beech</dc:creator>
				<category><![CDATA[Powershell]]></category>

		<guid isPermaLink="false">http://brokenhaze.com/blog/?p=22</guid>
		<description><![CDATA[Note: This is copied (thank you wayback machine) from a previous incarnation of my blog. I was very sad when I realized this post was gone, then very happy when wayback machine had it A little while ago i spent a lot of time trying to figure out how to send an email that fulfilled [...]]]></description>
			<content:encoded><![CDATA[<p><b><sub> Note: This is copied (thank you wayback machine) from a previous incarnation of my blog. I was very sad when I realized this post was gone, then very happy when wayback machine had it </sub></b></p>

<p>A little while ago i spent a lot of time trying to figure out how to send an email that fulfilled the following requirements:
Multiple Recipients
Attached File
Meaningful Subject
Sent without an external executable
Thanks to powershell&#8217;s ability to access .Net libraries, this is a fairly simple, however not quite so well explained &#8211; at least that i could find &#8211; process.
Let us start simply, with the basic SMTPClient Object, and setting the Server Variables, settings, etc. The most basic way to configure your server is to simple create a.Net System.Net.Mail.smtpClient object, and set the email server hostname, taking the defaults.</p>

<p><pre>
$SMTPClient = new-object System.Net.Mail.smtpClient
$SMTPClient.host = "<Your Email Server>"
</pre></p>

<p>Simple, right? Then lets get a little bit more complicated. Lets send an email to a host that requires authentication. To do this, we are going to need another .Net object: The NetworkCredential Object from there we can set the domain, user, and password, set these values on our SMTPClient.</p>

<p><pre>
$Credentials = new-object System.Net.networkCredential
$Credentials.domain = "<Your Domain>"
$Credentials.UserName = "<Your User Name>"
$Credentials.Password = "<Your Password>"
$SMTPClient.Credentials = $Credentials
</pre></p>

<p>The above code is fairly self explainitory, if you were to display $SMTPClient (Just type $SMTPClient on the console) before and after when you set the Credentials property you can see that is has been set. There are a few other options that you can set on the SMTPClient object, including Port, and SSL to see all that you can do issue</p>

<p><pre>
$SMTPClient | gm
</pre></p>

<p>Now, we have the Client setup, we want to configure message that we want to send. This will include setting up the Subject, To, From, and Body. What I do to send mail is use an overload of the SMTPClient object that lets us use System.Net.Mail.MailMessage to send the mail, it gives you ALOT more control over your message. First lets get ourselves another .Net Object, the MailMessage Object.</p>

<p><pre>
$MailMessage = new-object System.Net.Mail.MailMessage
</pre></p>

<p>The next thing I want to do is Setup my addresses The To: and From: addresses are yet another .Net object System.Net.Mail.MailAddress. Here is how you set those up, it is very simple and all you really need is the constructor which is overloaded. You can setup your address in the following two ways.</p>

<p><pre>
$Address = new-object System.Net.Mail.MailAddress("user@domain.com")
$Address = new-object System.Net.Mail.MailAddress("user@domain.com", "Display Name")
</pre></p>

<p>Either was you want, you need to create at least two one for your sender, one for your recipient. After we get those options out of the way, we just need to do the final setup on our message. That will include setting up the Subject, Body, and feeding it the To: and From: Addresses we already created.</p>

<p><pre>
$MailMessage.Subject = "Hello World!"
$MailMessage.Body = "String Body"
$MailMessage.Sender = $Sender
$MailMessage.From = $Sender
$MailMessage.To.add($Recipient)
</pre></p>

<p>Why, you ask, am I setting the $Senter twice, the Sender property is the Displayed From Address, while the From property is the repy-to address. You can send an email with an html body just put the code in your Body string, all you have to do is specify the boolean IsHtmlBody property.</p>

<p><pre>
$MailMessage.IsHtmlBody = $true
</pre></p>

<p>Now, how about adding an attachment. This is done very simply with another MailMessage property set to the .Net Attachements object</p>

<p><pre>
$Attachment = new-object System.Net.Mail.Attachment("<Path To File>")
$MailMessage.Attachements.Add($Attachment)
</pre></p>

<p>That is all there is to that. There is one last thing we have to do to get this mail off and on it&#8217;s way. Simply. Send It!</p>

<p><pre>
$SMTPClient.Send($MailMessage)
</pre></p>
]]></content:encoded>
			<wfw:commentRss>http://brokenhaze.com/blog/2011/03/25/full-featured-email-using-powershell/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>And we are back</title>
		<link>http://brokenhaze.com/blog/2011/02/28/and-we-are-back/</link>
		<comments>http://brokenhaze.com/blog/2011/02/28/and-we-are-back/#comments</comments>
		<pubDate>Tue, 01 Mar 2011 04:24:31 +0000</pubDate>
		<dc:creator>George Beech</dc:creator>
				<category><![CDATA[Random Ramblings]]></category>

		<guid isPermaLink="false">http://brokenhaze.com/?p=4</guid>
		<description><![CDATA[After about a year off from writing on a personal blog, i&#8217;ve decided that I should really do this things again &#8211; for reals this time.  Being inspired by the writing I&#8217;m doing for my job, and the fact I&#8217;m actually missing doing this &#8211; along with about 30,000 things i&#8217;ve been thinking about and [...]]]></description>
			<content:encoded><![CDATA[<p>After about a year off from writing on a personal blog, i&#8217;ve decided that I should really do this things again &#8211; for reals this time.  Being inspired by the writing I&#8217;m doing for my job, and the fact I&#8217;m actually missing doing this &#8211; along with about 30,000 things i&#8217;ve been thinking about and keep saying &#8220;I need to write this down somewhere.&#8221; I&#8217;ve finally decided to jump back into the fray.</p>

<p>This is probably my third or fourth time i&#8217;ve gone around this loop, writing, not writing. And amazingly through everything my domain has always been available to me.</p>

<p>I&#8217;ll be taking the next few days/weeks to get the blog to a state that makes me happy, as well as to start to just write.</p>

<p>&nbsp;</p>

<p>And really this is placeholder text so there isn&#8217;t a 404 on the front page.</p>
]]></content:encoded>
			<wfw:commentRss>http://brokenhaze.com/blog/2011/02/28/and-we-are-back/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

