Follow Your Heart

It’s been a while since the last poem I posted here – hope you enjoy ‘Follow Your Heart’, my latest:

Follow Your Heart (2015)

Sometimes you may crash and burn
Other times find lifelong friends
In some cases that special someone
But to find out, you must follow your heart

Despite distance or time apart
In spite of the challenges
In spite of the potential for heartbreak
Follow your heart

Treasure the memories and moments together
Treasure the friendships you make
Follow your heart

Journeys

As we reach the halfway point in November, I hope you enjoy my newest poem, “Journeys”.

Journeys (2013)

One of life’s most tragic moments
Balanced by one of the happiest

One journey just ended
The other just beginning

Seeing things once again
Through the eyes of a child

Oh, what wonders will we see?
Oh, the possibilities.

Reflections

As August rolls to a close, I hope you enjoy my newest poem, “Reflections”.

Reflections (2013)

Spreading outward like ripples on the pond
Reflections containing memories fond

As days turn to weeks, and weeks to months
The grief fades and brings great memories forth

Never thought the words would come this late
But knew that these words must come from the heart

As I reflect back to days gone by
I remember the good times and the wonderful pies
But times with you were more than the food
Grandfather and grandson – an important family bond

Times in Hilton Head Island, Gulfport, and Biloxi
Memories of Shuffleboard and conversations to last a lifetime

All I have now
Reflections of days gone by

Just Say No to Using Word for Web Publishing

One of the largest ways to significantly decrease the performance (and possibly the readability) of your website is to use a program such as Microsoft Word to create your web presence. While MS Word is useful for editing and creating documents that will be opened on the desktop, it generates horrific HTML code. But before we get into just how bad this stuff is, I would like to start off with just a very quick overview of what HTML is and why cleanly formatted HTML code is so important.

Before the internet and web pages came along, there was a standard way of creating formatting for documents called Standard Generalized Markup Language (SGML).  As the internet was in the process of being “born”, it became apparent that a standard markup language needed to be created so that documents could be exchanged between users.  You can thank CERN for the genesis of what would become HyperText Markup Language (HTML) and that allows you to use web sites such as Facebook, Twitter, Youtube, and Google.  Many of the tags in the very first draft of HTML still existed as of HTML v4.

HTML at it’s most basic is a standard way of creating content that web browsers (such as Internet Explorer, Chrome, etc) can understand. Over the years, we’ve gone from the HTML 1 specifications, to the current pre-release HTML5. In addition, you also have XHTML that is in use. Without going into a detailed discussion of the difference between SGML and XML document parsing, XHTML is a more strict version of HTML — you must close every tag, punctuation and certain characters have to use the ASCII numeric or symbolic representation, and tags are case-sensitive.

The reason that it is important to have well-formed and concise HTML is not only for performance, but also for readability and maintainability.  With regards to performance, every browser that reaches your page will have to “read” the document you create with Word and parse every line.  This may not seem like a big deal, but it will be as your website grows and generates more traffic – more on that later.

Secondly, you need to ensure that the document you create can not only be read by Internet Explorer, but other web browsers as well.  By using Microsoft Word, which generates HTML code with Microsoft specific extensions, you risk that the web page (or even content) you create may not be visible in non-IE browsers such as Firefox, Chrome, and Safari, thus limiting the audience of your content from the very start.

Finally, any content you create should be easy for you to maintain — if you can’t easily make a change (say by having to wade through several thousand lines of HTML code), it will cost you time and money to change even a single sentence.

Don’t believe me that Word is bad for HTML code?  Let’s get to an example, and provide proof of just how poorly Word works for this purpose.  I’m going to use the “Hello World” that most programmers use for their very first programming experience.

At the most basic, an HTML document for “Hello World” should look like:

<html>
<head>
<title>Hello World</title>
</head>
<body>
Hello World.
</body>
</html>

With Microsoft Word 2010 “unfiltered” (and I’m not going to paste the entire code here), it generates a 424 line, 21 K file. If you have Word 2010, you can see this for yourself pretty easily, but to give you an idea as to what it generates — and this is just the first 30 lines or so (“Hello World” doesn’t show up until line 421):

<html xmlns:v=”urn:schemas-microsoft-com:vml”
xmlns:o=”urn:schemas-microsoft-com:office:office”
xmlns:w=”urn:schemas-microsoft-com:office:word”
xmlns:m=”http://schemas.microsoft.com/office/2004/12/omml&#8221;
xmlns=”http://www.w3.org/TR/REC-html40″&gt;
<head>
<meta http-equiv=Content-Type content=”text/html; charset=windows-1252″>
<meta name=ProgId content=Word.Document>
<meta name=Generator content=”Microsoft Word 14″>
<meta name=Originator content=”Microsoft Word 14″>
<link rel=File-List href=”Hello%20World%20(unfiltered)_files/filelist.xml”>
<!–[if gte mso 9]><xml>
<o:DocumentProperties>
<o:Author>Michael D. Viron</o:Author>
<o:LastAuthor>Michael D. Viron</o:LastAuthor>
<o:Revision>1</o:Revision>
<o:TotalTime>1</o:TotalTime>
<o:Created>2013-07-11T04:45:00Z</o:Created>
<o:LastSaved>2013-07-11T04:46:00Z</o:LastSaved>
<o:Pages>1</o:Pages>
<o:Words>1</o:Words>
<o:Characters>11</o:Characters>
<o:Lines>1</o:Lines>
<o:Paragraphs>1</o:Paragraphs>
<o:CharactersWithSpaces>11</o:CharactersWithSpaces>
<o:Version>14.00</o:Version>
</o:DocumentProperties>
<o:OfficeDocumentSettings>
<o:AllowPNG/>
</o:OfficeDocumentSettings>
</xml><![endif]–>

Word 2010 “filtered” does a better job, but it is still a 39 line / 860 byte file:

<html>
<head>
<meta http-equiv=Content-Type content=”text/html; charset=windows-1252″>
<meta name=Generator content=”Microsoft Word 14 (filtered)”>
<style>
<!–
/* Font Definitions */
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin-top:0in;
margin-right:0in;
margin-bottom:10.0pt;
margin-left:0in;
line-height:115%;
font-size:11.0pt;
font-family:”Calibri”,”sans-serif”;}
.MsoChpDefault
{font-family:”Calibri”,”sans-serif”;}
.MsoPapDefault
{margin-bottom:10.0pt;
line-height:115%;}
@page WordSection1
{size:8.5in 11.0in;
margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
{page:WordSection1;}
–>
</style>
</head>
<body lang=EN-US>
<div>
<p>Hello World</p>
</div>
</body>
</html>

Compare that to the 8 lines in the most basic format (saved as a file, it’s 80 bytes).  So now that we’ve established that Word generates poor HTML code, why should you care?  Imagine your website traffic grows to 1,000 hits per month (easily doable) – your visitors will use 20.5 MB of bandwidth for just a “Hello World” page (vs the .08 MB from the well formed code).  As your traffic gets higher, this will become a much larger problem as many web hosts include only so much bandwidth on their plans per month, which includes your uploads and downloads of files from your website.  Many plans also limit your available disk space — while this is less of a problem now, wouldn’t you rather not have to worry that your content is eating up valuable space that could be put to other uses?

While we’ll get to looking at better options to use for HTML writing in the next post, in the meantime, please don’t use Microsoft Word to post web pages.  Or if you do, please use the “filtered” option if available in your version of word.  You’ll save yourself and your staff a lot of headaches.

Memories

I had planned to publish a new poem back in April, but life had other plans. In an instant, I had to scramble to deal with a family emergency. In that instant, everything changed – and the “Memories” I had written no longer applied. It’s taken me time — time to be there for family; time to start the healing process; time to want to write again. In memory of the family member who never gave up all the way to the very end, enjoy my latest poem “Memories”.

Memories (2013)

Memories shared with friends and family
Memories to forever cherish
Memories of road trips, too numerous to count
Memories from coast to coast

Memories of good times and bad
Memories of challenges met and goals exceeded
Memories of moments that changed your life
Memories that cause heartache

Memories of grief
Memories of friends’ compassion
Memories remembered fondly
Memories

Dreams

As a followup to my post on “Moments”, one individual on twitter mentioned that it is never too late to pursue your dreams.  That got me to thinking about dreams and how they relate to moments in life.  I hope you enjoy “Dreams” below.

Dreams (2013)

Dreams abandoned or pushed aside
Dreams shattered into pieces
Dreams delayed or shelved
Dreams of what could have been
Dreams being pursued
Dreams realized
Dreams of love
Dreams of finding that special someone
Dreams that might yet come true
Dreams yet to be dreamed
Dreams

Moments

This month has brought its own challenges, but it helped me realize just how important moments in life are.  For one of the very few times, I’ve chosen to post one of my poems openly and publicly to this blog.  It is called “Moments”, and it is my most recent excursion into writing.

Moments (2013)

Moments of sadness, moments of grief
Moments that make us weep
Moments of happiness, moments of laughter
Moments that make us smile
Moments shared with family
Moments shared with friends
Moments spent all alone
Moments at home, moments on the road
Moments doing something new
Moments of your life
Moments to make count
Moments