<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Writing on Major Hayden</title><link>https://major.io/tags/writing/</link><description>Recent content in Writing on Major Hayden</description><generator>Hugo</generator><language>en</language><managingEditor>major@mhtx.net (Major Hayden)</managingEditor><webMaster>major@mhtx.net (Major Hayden)</webMaster><copyright>All content licensed [CC BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/)</copyright><lastBuildDate>Thu, 09 Jul 2026 20:41:49 +0000</lastBuildDate><atom:link href="https://major.io/tags/writing/index.xml" rel="self" type="application/rss+xml"/><item><title>How I write blog posts</title><link>https://major.io/p/how-i-write-blog-posts/</link><pubDate>Wed, 17 Aug 2022 00:00:00 +0000</pubDate><author>major@mhtx.net (Major Hayden)</author><guid>https://major.io/p/how-i-write-blog-posts/</guid><description>&lt;p&gt;During a mentoring meeting today at work, my mentee asked me how I make time to write blog posts.
I hadn&amp;rsquo;t really thought about it before, so I joked that I needed to write a blog post on that.
&lt;a href="https://www.dictionary.com/e/pop-culture/meta/"&gt;That&amp;rsquo;s so meta.&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;After thinking about it more, a blog post felt like a good idea.
Let&amp;rsquo;s get right to it.&lt;/p&gt;
&lt;h1 id="why-write-blog-posts-anyway"&gt;Why write blog posts anyway?&lt;/h1&gt;
&lt;p&gt;I&amp;rsquo;ve written about writing&lt;sup id="fnref:1"&gt;&lt;a href="#fn:1" class="footnote-ref" role="doc-noteref"&gt;1&lt;/a&gt;&lt;/sup&gt; before, especially about why &lt;a href="https://major.io/2012/03/30/why-technical-people-should-blog-but-dont/"&gt;technical people should write more often&lt;/a&gt;.
Writing about things you know, things you love, and things you want other people to know has plenty of benefits:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;It helps you structure your own thoughts about a topic&lt;/li&gt;
&lt;li&gt;Talking about a topic makes the knowledge more solid in your brain&lt;/li&gt;
&lt;li&gt;You can link posts to people who want to know more about the topic&lt;/li&gt;
&lt;li&gt;Eventually people come along, read your posts, and they let you know about it&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If there&amp;rsquo;s one thing that you should take away from this post, it&amp;rsquo;s this:
&lt;strong&gt;Write for you &amp;ndash; not for anyone else.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Here&amp;rsquo;s what I mean by that.
Write because it benefits you.
Write because it makes you happy.
Write because it helps you organize your thoughts.
Write because you want to leave a small mark on the world when you&amp;rsquo;re gone.&lt;sup id="fnref:2"&gt;&lt;a href="#fn:2" class="footnote-ref" role="doc-noteref"&gt;2&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;
&lt;p&gt;Sometimes I write a post and think &lt;em&gt;&amp;ldquo;Nobody will ever read this.&amp;rdquo;&lt;/em&gt;
I write it anyway.&lt;/p&gt;
&lt;p&gt;However, there are those times where you write something and a reader gains something from it.
A tiny portion of those readers will send you something about the post.
I use this as my fuel to keep going and it serves as a reminder that I&amp;rsquo;m doing something for myself that other people enjoy.&lt;/p&gt;
&lt;h1 id="structure-is-everything"&gt;Structure is everything&lt;/h1&gt;
&lt;p&gt;I try to follow a formula for most of my posts and it helps me organize my thoughts efficiently.
Here&amp;rsquo;s what I do:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Introduction:&lt;/strong&gt; Start with something brief that helps people determine whether they want to read the post or not.
The last thing I want to do is waste someone&amp;rsquo;s time.
If the topic applies to them or seems interesting, great!
If not, they get some time back and they can skip the post.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Why:&lt;/strong&gt; A reader that was hooked on the introduction might be interested in the topic but unsure why it&amp;rsquo;s needed.
Explain how you arrived at your decision point.
This could uncover a use case the reader never considered, or it might highlight a blind spot in their thought process.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;What:&lt;/strong&gt; Explain how to do something!
Walk through each step and take a pause to explain why each step is needed.
Highlight optional steps or areas where extra attention and consideration might be required.
Diagrams, command line output, and screenshots deliver tons of value here, so don&amp;rsquo;t hold back.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Extras:&lt;/strong&gt; You might carry a topic to a certain point, but a reader might want to go farther.
Provide links to documentation or point to areas where a reader might want to keep exploring to do more on the topic.
Avoid leaving the reader with a dead end.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h1 id="eye-of-the-beholder"&gt;Eye of the beholder&lt;/h1&gt;
&lt;p&gt;You may pass up a blog post opportunity because you think everyone knows enough on the topic already.
You might do the same if a topic seems to complex.&lt;/p&gt;
&lt;p&gt;My advice: write it anyway.&lt;/p&gt;
&lt;p&gt;I&amp;rsquo;ve written incredibly detailed posts about kerberos setups and silly simple posts about deleting a single iptables rule.
They both get decent web traffic.
They were both fun to write.&lt;/p&gt;
&lt;h1 id="learn-from-other-writers"&gt;Learn from other writers&lt;/h1&gt;
&lt;p&gt;I read a lot of blogs regularly.
Here are some I bloggers I really enjoy reading:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://calebschoepp.com/blog/"&gt;Caleb Schoepp&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://xahteiwi.eu/"&gt;Florian Haas&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://jacobian.org/"&gt;Jacob Kaplan-Moss&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://langui.sh/"&gt;Paul Kehrer&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;When I read posts, I think about the topic in the post itself, but I also think about &lt;strong&gt;how the author writes&lt;/strong&gt;.
I pick out one or two things I really enjoy from their writing and I begin adding those things to my writing habits.&lt;/p&gt;
&lt;p&gt;Some of these habits are complex.
Others aren&amp;rsquo;t.&lt;/p&gt;
&lt;p&gt;For example, Derek Sivers&amp;rsquo; &lt;a href="https://sive.rs/1s"&gt;Writing One Sentence Per Line&lt;/a&gt; post was incredibly helpful and simple.
I&amp;rsquo;ve implemented it in my writing and it makes a huge difference.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;(Try writing one sentence per line.
Trust me.
It works.)&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Over time, just like everything else, you will find ways to make your writing better while writing more efficiently.
Avoid getting discouraged and always keep it fun.
&lt;strong&gt;Write for you.&lt;/strong&gt;&lt;/p&gt;
&lt;div class="footnotes" role="doc-endnotes"&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id="fn:1"&gt;
&lt;p&gt;Sorry for going meta again.&amp;#160;&lt;a href="#fnref:1" class="footnote-backref" role="doc-backlink"&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id="fn:2"&gt;
&lt;p&gt;I turned 40 today, so please forgive me for thinking about death. 🎂 😂&amp;#160;&lt;a href="#fnref:2" class="footnote-backref" role="doc-backlink"&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;</description></item><item><title>Raise the bar with an SBAR</title><link>https://major.io/p/raise-the-bar-with-an-sbar/</link><pubDate>Tue, 02 Aug 2022 00:00:00 +0000</pubDate><author>major@mhtx.net (Major Hayden)</author><guid>https://major.io/p/raise-the-bar-with-an-sbar/</guid><description>&lt;p&gt;You discovered a problem at work.
If left unchecked, the problem could affect customers and impact revenue.
You cannot ignore it.&lt;/p&gt;
&lt;p&gt;What now?
Who do you tell?
Will they &lt;em&gt;listen?&lt;/em&gt;
Better yet, will they &lt;em&gt;understand?&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;I find myself in situations like these constantly.
My roles over the years involved problems that demanded discussion, thought, and solutions.
Some problems were simple but others required complicated fixes that took months or years.&lt;/p&gt;
&lt;p&gt;Communicating with other people about complex problems remains a challenge for me, but I learned a new tool that helps me kick off these discussions and share my recommended solutions as efficiently as possible.
The &lt;a href="https://en.wikipedia.org/wiki/SBAR"&gt;SBAR&lt;/a&gt; technique shows up frequently in medical settings but it also works well in IT.&lt;/p&gt;
&lt;p&gt;This post covers the nuts and bolts of the SBAR format, how to use it to your advantage, and how to communicate clearly with it.&lt;/p&gt;
&lt;h1 id="components"&gt;Components&lt;/h1&gt;
&lt;p&gt;Every SBAR contains four components. Let&amp;rsquo;s go through each one.&lt;/p&gt;
&lt;h2 id="situation"&gt;Situation&lt;/h2&gt;
&lt;p&gt;Hook the reader with an explanation of the events happening &lt;em&gt;right now&lt;/em&gt;.
Save the backstory for later and focus on the shortest possible list of current events.&lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s use a favorite example that every system administrator can relate to: a server is down.
Your situation section might look something like this:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Situation&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Web01 stopped responding at 3PM today and disrupted web traffic to our website at example.com.
We cannot process orders online and customers cannot browse our list of products.
The marketing team must update the website by the end of the day with information about next week&amp;rsquo;s trade show.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;The situation section includes several critical pieces of information:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;What is happening &lt;em&gt;right now?&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;Who is affected by the problem &lt;em&gt;right now?&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;How does the problem affect people &lt;em&gt;right now?&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Do you see a pattern?
Do you see it &lt;em&gt;right now?&lt;/em&gt;
This section demands short sentences, active language &lt;em&gt;(more on that later)&lt;/em&gt;, and a focus on &lt;em&gt;right now.&lt;/em&gt;
Your efforts here charge up the reader to continue into the next section which is often the longest.&lt;/p&gt;
&lt;h2 id="background"&gt;Background&lt;/h2&gt;
&lt;p&gt;Now that you won your reader&amp;rsquo;s attention, start giving some backstory.
Let&amp;rsquo;s continue our example above about our unresponsive server:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Background&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Our datacenter technicians replaced the power supply on web01 last week following a power surge.
They found a broken case fan after replacing the power supply and they replaced that as well.
Fred called the server vendor about the failures and they warned us that we may have a damaged motherboard following the power surge.
Jennifer ordered a replacement motherboard which arrives this Friday.&lt;/p&gt;
&lt;p&gt;The server crashed abruptly and rebooted two more times since the maintenance.
Normally the server rebooted without any problems, but it did not come back online after today&amp;rsquo;s crash.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;This section adds color and detail about the events that led up to the current situation.
It answers that question that executives enjoy asking: &lt;em&gt;&amp;ldquo;How did we get here?&amp;rdquo;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Avoid two main pitfalls here:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Stick to facts, not opinions or your intepretation. &lt;em&gt;(That&amp;rsquo;s the next section!)&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;Keep the facts pertinent and relevant.
If the fact doesn&amp;rsquo;t help directly explain the current situation at hand, leave it out.
Toss extra details into an appendix if needed.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The reader now understands the events happening right now and they know how we got here.
Now your experience and expertise comes into play as you bring all of the data together.&lt;/p&gt;
&lt;h2 id="assessment"&gt;Assessment&lt;/h2&gt;
&lt;p&gt;This remains the toughest section for me with any SBAR.
You must thread the needle of tying all the facts together without making a recommendation to the reader.&lt;/p&gt;
&lt;p&gt;Imagine the last action movie you saw where the villain has the ability to do something terrible.
After the main character explains what the villian has, how dangerous it is, and how vulnerable the good guys are, everyone looks at them and asks: &lt;em&gt;&amp;ldquo;Okay, give it to me straight: How bad is this?&amp;rdquo;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Going back to our server down example:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Assessment&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;We have very low confidence that web01 can host our website reliably at this critical time for our company.
The power surge likely damaged the motherboard, but the replacement does not arrive for three more days.
While we hoped to have web02 ready for production this week, it still needs more work.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Take all the facts you have and share your thoughts on where they stand.
Readers without your experience or level of familiarity with the situation appreciate this section since it ties the first two sections together.
Clearly state the root cause of the current situation, the severity, and the impact if left unresolved.
Your goal here is to get the reader to ask the right question for the next section: &lt;em&gt;&amp;ldquo;What do we do now?&amp;rdquo;&lt;/em&gt;&lt;/p&gt;
&lt;h2 id="recommendation"&gt;Recommendation&lt;/h2&gt;
&lt;p&gt;Now it&amp;rsquo;s time to plot a course forward out of the situation and back to happier times.
Make clear recommendations that include a &lt;em&gt;what&lt;/em&gt;, &lt;em&gt;why&lt;/em&gt;, and &lt;em&gt;how&lt;/em&gt;.
Assume that every recommendation must survive cross-examination from other engineers and executives.&lt;/p&gt;
&lt;p&gt;Our recommendations for fixing our server could include:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Recommendation&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Deploy a temporary web server at our public cloud provider to bridge the gap while web01 is awaiting a hardware replacement.
Our deployment scripts already work in cloud instances and the our cost for the temporary instance is within our IT budget.&lt;/li&gt;
&lt;li&gt;Finish provisioning web02 and configure high availability services so that it can run in active-active mode with web01 as soon as the replacement motherboard arrives.&lt;/li&gt;
&lt;li&gt;Repair web01 on Friday and run burn-in tests during the week of the trade show to ensure it operates reliably under load.&lt;/li&gt;
&lt;li&gt;Schedule a maintenance after the trade show to tie web01 and web02 together as an H/A pair and move the website traffic back from the cloud provider.&lt;/li&gt;
&lt;li&gt;Order a spare parts package from the server vendor to have on hand for future issues with either server.&lt;/li&gt;
&lt;/ol&gt;
&lt;/blockquote&gt;
&lt;p&gt;Be specific and detailed here.
Keep the following things in mind:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Think about potential objections (time, cost, etc) and address those in the recommendation itself.&lt;/li&gt;
&lt;li&gt;Consider work items beyond the current situation to prevent it from happening again later.&lt;/li&gt;
&lt;li&gt;If you have a team working on it, consider multiple simultaneous workstreams and what you could accomplish with each.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Your reader wants to know what to do, so don&amp;rsquo;t be bashful here.
You are an expert and you know the situation well.
Tell the reader what must be done, why it must be done, and how to do it (at a high level).&lt;/p&gt;
&lt;h1 id="extra-credit"&gt;Extra credit&lt;/h1&gt;
&lt;p&gt;Now that you know all the sections of an SBAR, you&amp;rsquo;re ready to write one!
I learned plenty of tips along the way&lt;sup id="fnref:1"&gt;&lt;a href="#fn:1" class="footnote-ref" role="doc-noteref"&gt;1&lt;/a&gt;&lt;/sup&gt; and these should help you improve your SBAR skills.&lt;/p&gt;
&lt;h2 id="use-active-language"&gt;Use active language&lt;/h2&gt;
&lt;p&gt;The SBAR format provides an efficient method for communicating complex problems and recommendations with other people.
Using active language keeps the readers attention and allows you to speak more directly and forcefully.&lt;/p&gt;
&lt;p&gt;Take the following example:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;The server is down because a cart was rolling down the hallway and it hit the server after a datacenter technician forgot to set the brake.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Ugh. That&amp;rsquo;s a mouthful.
How about this instead:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;A datacenter technician left a cart unattended on the ramp without setting the brake. The cart rolled down and knocked the server off the rack, taking it offline.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Active language keeps the reader&amp;rsquo;s attention by keeping the subject followed by a verb.
There&amp;rsquo;s no question of who did what and how that caused a problem.
Remove any &lt;a href="https://en.wikipedia.org/wiki/Passive_voice"&gt;passive voice&lt;/a&gt; that you find and look for sentences without a subject followed by a verb.&lt;/p&gt;
&lt;h2 id="use-an-appendix"&gt;Use an appendix&lt;/h2&gt;
&lt;p&gt;Sometimes an assessment leads to multiple options for a solution.
Add these potential solutions to an appendix and allow readers to review those if they need more detail.
This reduces clutter in the main part of the SBAR but allows detail-oriented readers to pull out more context without bothering you.&lt;/p&gt;
&lt;p&gt;Appendixes are great places for charts, diagrams, and command line output that reinforce your recommendations.&lt;/p&gt;
&lt;h2 id="keep-it-collaborative"&gt;Keep it collaborative&lt;/h2&gt;
&lt;p&gt;As you write the SBAR, invite others to collaborate with you.
My company uses Google Docs heavily and it allows me to bring in more contributors to improve various parts of the document.&lt;/p&gt;
&lt;p&gt;This also helps when you&amp;rsquo;re ready to present your work.
Readers can comment and ask questions right in the document.
You can add extra details or answer the questions right in the SBAR document.&lt;/p&gt;
&lt;h1 id="wrapping-up"&gt;Wrapping up&lt;/h1&gt;
&lt;p&gt;The SBAR process offers you a great opportunity to improve your communication skills as an engineer, especially when you communicate with less technical people.
You can learn what motivates different people within your organization and tailor your communication so that it matches the things they care about.&lt;/p&gt;
&lt;p&gt;These soft skills can also take your career to the next level.
Highly technical people who communicate well about complex topics are always in demand.&lt;/p&gt;
&lt;div class="footnotes" role="doc-endnotes"&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id="fn:1"&gt;
&lt;p&gt;I learned tips from making mistakes. 🤭&amp;#160;&lt;a href="#fnref:1" class="footnote-backref" role="doc-backlink"&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;</description></item><item><title>Reprint: Stop Disabling SELinux!</title><link>https://major.io/p/reprint-stop-disabling-selinux/</link><pubDate>Fri, 19 Apr 2013 05:52:23 +0000</pubDate><author>major@mhtx.net (Major Hayden)</author><guid>https://major.io/p/reprint-stop-disabling-selinux/</guid><description>&lt;p&gt;&lt;em&gt;This article appeared in &lt;a href="http://www.scmagazine.com.au/News/340475,stop-disabling-selinux.aspx"&gt;SC Magazine&lt;/a&gt; and I&amp;rsquo;ve posted it here as well. For those of you who were left wanting more from my &lt;a href="https://major.io/2013/04/15/seriously-stop-disabling-selinux/"&gt;previous SELinux post&lt;/a&gt;, this should help. If it doesn&amp;rsquo;t help, leave a comment. ;)&lt;/em&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;The push to cloud transforms the way we apply information security principles to systems and applications. Perimeters of the past, secured heavily with traditional network devices in the outermost ring, lose effectiveness day by day. Shifting the focus to &amp;ldquo;defense in depth&amp;rdquo; brings the perimeter down to the individual cloud instances running your application. Security-Enhanced Linux, or SELinux, forms an effective part of that perimeter.&lt;/p&gt;
&lt;p&gt;SELinux operates in the realm of mandatory access control, or MAC. The design of MAC involves placing constraints on what a user (a &lt;em&gt;subject&lt;/em&gt;) can do to a particular object (a &lt;em&gt;target&lt;/em&gt;) on the system. In contrast, discretionary access control, or DAC, allows a user with certain access to use discretion to limit or allow access to certain files, directories, or devices. You can set any file system permissions that you want but SELinux can override them with ease at the operating system level.&lt;/p&gt;
&lt;p&gt;Consider a typical server running a web application. An attacker compromises the web application and executes malicious code via the web server daemon itself. SELinux has default policies that prevent the daemon from initiating communication on the network. That limits the attacker’s options to attack other services or servers.&lt;/p&gt;
&lt;p&gt;In addition, SELinux sets policies on which files and directories the web server can access, regardless of any file system permissions. This protection limits the attacker’s access to other sensitive parts of the file system even if the administrator set the files to be readable to the world.&lt;/p&gt;
&lt;p&gt;This is where SELinux shines. Oddly enough, this is the point where many system administrators actually &lt;em&gt;disable SELinux&lt;/em&gt; on their systems.&lt;/p&gt;
&lt;p&gt;Troubleshooting these events, called AVC denials, without some helpful tools is challenging and frustrating. Each denial flows into to your audit log as a cryptic message. Most administrators will check the usual suspects, like firewall rules and file system permissions. As frustration builds, they disable SELinux and notice that their application begins working as expected. SELinux remains disabled and hundreds of helpful policies lie dormant solely because one policy caused a problem.&lt;/p&gt;
&lt;p&gt;Disabling SELinux without investigation frustrated me to the point where I started a site at &lt;a href="http://stopdisablingselinux.com"&gt;stopdisablingselinux.com&lt;/a&gt;. The site is a snarky response to Linux administrators who reach for the disable switch as soon as SELinux gets in their way.&lt;/p&gt;
&lt;p&gt;All jokes aside, here are some helpful tips to use SELinux effectively:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Use the &lt;em&gt;setroubleshoot&lt;/em&gt; helpers to understand denials&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Working through denials is easy with the &lt;em&gt;setroubleshoot-server&lt;/em&gt; package. When a denial occurs, you still receive a cryptic log message in your audit logs. However, you also receive a message via syslog that is very easy to read. Your server can email you these messages as well. The message contains guidance about adjusting SELinux booleans, setting contexts, or generating new SELinux policies to work around a really unusual problem. When I say guidance, I mean that the tools give you commands to copy and paste to adjust your policies, booleans and contexts.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Review SELinux booleans for quick adjustments&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Although the myriad of SELinux user-space tools isn’t within the scope of this article, &lt;em&gt;getsebool&lt;/em&gt; and &lt;em&gt;togglesebool&lt;/em&gt; deserve a mention. Frequently adjusted policies are controlled by booleans that are toggled on and off with &lt;em&gt;togglesebool&lt;/em&gt;. Start with &lt;em&gt;getsebool –a&lt;/em&gt; for a full list of booleans and then use &lt;em&gt;togglesebool&lt;/em&gt; to enable or disable the policy.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Quickly restore file or directory contexts&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Shuffling files or directories around a server can cause SELinux denials due to contexts not matching their original values. This happens to me frequently if I move a configuration file from one system to another. Correcting the context problem involves one of two simple commands. The &lt;em&gt;restorecon&lt;/em&gt; command applies the default contexts specific to the file or directory. If you have a file in the directory with the correct context, use &lt;em&gt;chcon&lt;/em&gt; to fix the context on the wrong file by giving it the path to the file with the correct context.&lt;/p&gt;
&lt;p&gt;Here are some additional links with helpful SELinux documentation:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://selinuxproject.org/page/Main_Page"&gt;SELinux Project Wiki&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Security-Enhanced_Linux/"&gt;Red Hat Enterprise Linux 6 SELinux Guide&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://danwalsh.livejournal.com/"&gt;Dan Walsh&amp;rsquo;s Blog&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Why technical people should blog (but don’t)</title><link>https://major.io/p/why-technical-people-should-blog-but-dont/</link><pubDate>Fri, 30 Mar 2012 14:30:45 +0000</pubDate><author>major@mhtx.net (Major Hayden)</author><guid>https://major.io/p/why-technical-people-should-blog-but-dont/</guid><description>&lt;p&gt;&lt;em style="color: grey;"&gt;I originally wrote this post for the &lt;a href="http://www.rackspace.com/blog/why-technical-people-should-blog-but-dont/"&gt;Rackspace Blog&lt;/a&gt; but I decided to post it here in case some of my readers might have missed it. Please feel free to leave your comments at the end of the post.&lt;/em&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;Sometimes people talk to me about posts I&amp;rsquo;ve written on my blog, or posts they wish I would write. At some point during the discussion, I&amp;rsquo;ll almost always ask the person why they don&amp;rsquo;t start up their own blog or contribute to someone else&amp;rsquo;s. Very few people actually seem interested when I probe them about writing posts on technical topics.&lt;/p&gt;&lt;/p&gt;
&lt;p&gt;My mother was always the one who told me (and her students) that everyone has a story. She said that writing could be therapeutic in ways you probably won&amp;rsquo;t consider until you&amp;rsquo;ve written something that someone else enjoys. Just as software developers exist to write software for their users, writers exist to write stories for their readers. There&amp;rsquo;s nothing that says technical people can&amp;rsquo;t become excellent writers who inspire others to learn and share their knowledge with others.&lt;/p&gt;
&lt;p&gt;The goal of this post is to encourage technical people to enjoy writing, write efficiently and feel comfortable doing it. I&amp;rsquo;ll roll through some of the most common responses I&amp;rsquo;ve received about why technical people don&amp;rsquo;t blog about what they know.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;I don&amp;rsquo;t think I&amp;rsquo;m really an expert on anything. I&amp;rsquo;m not an authority on any topic I can think of.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;I&amp;rsquo;m leading off with this response because it&amp;rsquo;s the most critical to refute. If you don&amp;rsquo;t take away anything else from this post, let it be this: you don&amp;rsquo;t need to be an expert on a topic to write about it.&lt;/p&gt;
&lt;p&gt;You can find examples of this by rolling through some of the posts on my blog. I&amp;rsquo;d consider myself to be an expert on one, maybe two topics, but I&amp;rsquo;ve written over 450 posts in the span of just over five years. I certainly didn&amp;rsquo;t write all of those about the one or two topics I know best.&lt;/p&gt;
&lt;p&gt;Write about what you know and don&amp;rsquo;t be afraid to do a little research to become an authority on something. A great example of this was my post, entitled &amp;ldquo;&lt;a href="https://major.io/2012/02/02/kerberos-for-haters/"&gt;Kerberos for haters&lt;/a&gt;.&amp;rdquo; I had almost no expertise in Kerberos. In fact, I couldn&amp;rsquo;t even configure it properly for my RHCA exam! However, I did a ton of research and began to understand how most of the pieces fit together. Many other people were just as confused and I decided to pack all of the knowledge I had about Kerberos into a blog post. Positive and negative feedback rolled in and it was obvious that my post taught some readers, inspired some others and angered a few.&lt;/p&gt;
&lt;p&gt;What a great way to lead into the next response:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;What if I say something that isn&amp;rsquo;t correct? I&amp;rsquo;ll look like an idiot in front of the whole internet!&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Been there, done that. Every writer makes errors and comes up with bad assumptions at least once. Readers will call you out on your mistakes (some do it delicately while others don&amp;rsquo;t) and it&amp;rsquo;s your duty to correct your post or correct the reader. I&amp;rsquo;ve written posts with errors, and I&amp;rsquo;ve gotten a little lazy on my fact-checking from time to time. As my middle school journalism teacher always reminded me, the most important part of a mistake is what you do to clean it up and learn from it.&lt;/p&gt;
&lt;p&gt;In short: you&amp;rsquo;ll make mistakes. As long as you&amp;rsquo;ve done your due diligence to minimize them and respond to them promptly, your readers should forgive you.&lt;/p&gt;
&lt;p&gt;Speaking of errors:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;I&amp;rsquo;m great at a command prompt but my spelling and grammar are awful. I write terribly.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;This is easily fixed. If you&amp;rsquo;re one of those folks who live the do-it-yourself type of lifestyle, pick up a copy of &lt;a href="http://en.wikipedia.org/wiki/The_Elements_of_Style"&gt;&lt;em&gt;The Elements of Style&lt;/em&gt;&lt;/a&gt; by Strunk &amp;amp; White. There are free PDF versions online or you can borrow one from your nearest journalist. No matter the situation you&amp;rsquo;re in, this book has details about where punctuation should and shouldn&amp;rsquo;t be, how to structure sentences and paragraphs, and how to properly cite your sources (really vital for research posts).&lt;/p&gt;
&lt;p&gt;Hauling around a copy of an ultra-dry reference book may not be your thing. If that&amp;rsquo;s the case, find someone you know who has a knack for writing. You can usually find helpful folks in marketing or corporate communications in most big companies who will take your post and return it covered in red ink ready for corrections (thanks, Garrett!). I&amp;rsquo;ve even &lt;a href="http://fiverr.com/categories/all/tags/proofreading/order/latest/pages/1"&gt;spotted some folks on Fiverr&lt;/a&gt; who will do this for as low as $5.&lt;/p&gt;
&lt;p&gt;I&amp;rsquo;ll wrap up with the second most common response:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;I don&amp;rsquo;t know who I&amp;rsquo;m writing for? What if I write about something simple and the really technical folks think I&amp;rsquo;m a noob? What if I write something crazy complex and it goes over most people&amp;rsquo;s heads?&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;I&amp;rsquo;ve done both of these. Most Linux system administrators worth their salt know how to add and remove iptables rules, and they&amp;rsquo;d consider it to be pretty trivial work. Would it surprise you to know that out of over 450 posts, my post about &lt;a href="https://major.io/2007/02/09/delete-single-iptables-rules/"&gt;deleting a single iptables rule&lt;/a&gt; is in the top five most accessed posts per month? I receive just over 11 percent of my monthly hits to this post. People are either learning from it or they can&amp;rsquo;t remember how to delete the rule and they want to use the post as a quick reference. Either way, the post is valuable to many people even if I think it&amp;rsquo;s the simplest topic possible.&lt;/p&gt;
&lt;p&gt;On the flip side, I went nuts and wrote up a complete how-to for a redundant cloud hosting configuration complete with LVS, glusterfs, MySQL on DRBD, memcached, haproxy and ldirectord. I thought it would be valuable knowledge to a few folks but that it might sail over the heads of most of my readers. Again, I was wrong. The post is constantly in the top 10 most visited posts on the blog and I&amp;rsquo;ve probably received more feedback via comments, email and IRC about that post than any other. Once again, a post I thought would be mostly useless turned into a real conversation starter.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Let&amp;rsquo;s conclude and wrap up.&lt;/strong&gt; Keep these things in mind if you feel discouraged about writing:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Write about what interests you whether you&amp;rsquo;re an expert on it or not&lt;/li&gt;
&lt;li&gt;Don&amp;rsquo;t be afraid to fail&lt;/li&gt;
&lt;li&gt;Be responsive to your readers&lt;/li&gt;
&lt;li&gt;Even if you think nobody will read your post, write it&lt;/li&gt;
&lt;li&gt;Always ensure your voice shines through in your writing — this is what makes it special and appealing&lt;/li&gt;
&lt;/ul&gt;</description></item></channel></rss>