TEDxGrandRapids 2012 Theme – Why ‘What Now?’

In August of 2011 the TEDxGrandRapids Leadership started to discuss the theme for the upcoming May 10th 2012 event.

It started over a beer (a common additive at TEDxGrandRapids Planning meetings).  The conversation ranged but we kept coming back to how it needed to be relevant – ‘recognizing these are tough times’ and yet still be an event designed to ‘inspire action’.

It is important to know that while this amazing team is made up of extreme optimists, everyone of us had a story to tell about overcoming challenges and adversity.   About perseverance and courage. About good things that happened ‘after’.

There banter about how over the last 5 years we all heard the sad-sacks media pundits compare our lives to the Great Depression.

(There was a collective groan.)

“Nice headlines but it does nothing to move us forward.”

So over the course of the next few week of August emails, phone calls and coffee shop meetings happened and we discussed the idea of theme and about how ‘good things following bad’ and  how ‘great things follow unexpected moments’.

One of the TEDx team said something very salient after one of the conversation. “I have chosen not to participate in this recession… I will be prudent and respectful of the reality of the day — but I will focus on what it will take to move to what is next.”

And guess what –we found it is an opinion with a proven track record. Not from economists or politicians but people who have earned the right to say so.   Because contrary to the sepia images  of the 1930s — life did not end when the stock market crashed, for some organizations and icons – it was just the beginning.

How about TimeWarner, who started its business in 1929.

Or IBM who was just 5 years old the day the stock market crashed.

Maybe the Allstate Insurance who began its life in 1931.

…Land O’Lakes who incorporated in1931

…Empire State Building opened their doors in 1931

…Bugatti’s firing is first spark in 1932

…Serta shipped the first manufactured mattress in 1931

So it begged  the question, are we focused so much on today that we will miss the opportunities that tomorrow will bring?

It came back to me when I was watching our own Mark Lardieri’s TEDxGrandRapids youtube video and it seems many of our successful business leaders agree.

Think about the worst time in your life. Now think about what came after.

The comparisons to the Great Depression may be appropriate but they cannot be decoupled from the unprecedented innovation, growth and optimism of the late 40’s and 50s.

Not enough to get you thinking about “what now?”   How about going back 700 years to the ‘impenetrable mindlessness’ of the Middle Ages.

Prior to the Renaissance, and the rebirth of human curiosity, the best minds were not exploring new lands or engaged in ways to innovate.…”they were focused on inane things like how many angels could fit on the end of a pin” (Michael J. Gelb, Think like Leonardo)

But in the late 1300, the black plague swept Europe. Nearly half of the entire European population was destroyed from the highest members of the Piteous hierarchy to the peasants and harlots of serfdom.    Everyone had to re-think everything.   The result? The renaissance. The greatest spark of creativity — Ever.

Arguably the most prolific, profitable and innovative period in our known history… Born out of one of the darkest times.

And so the theme of TEDxGrandRapids 2012 theme was born.

We all agreed that our goal would be to find world class speakers to help us think less about ‘What happened?’ and more about ‘What Now?’

I hope to see you on May 10th — At the Civic Theatre, TEDxLabs , online or at the Livestream for Education.

It may just be west Michigan’s  “What now?” moment.

Kurt Nahikian, Business Designer at  CQL, Director of Good Concepts LLC  and member of the TEDxGrandRapids Leadership team.

“How Software Nerds Make Ridiculous Tools to Visually Stimulate Themselves While They Watch Their $10 Vanish…”

Now that is what I call an interesting title. Like many individuals in the United States, March 30th is a captivating date for the sole purpose of Dreams and Wishes. Tonight, the Mega Millions Jackpot will be drawn – estimated to exceed $600 Million.

CQL, Inc., like many organizations around the nation, has a number of employees who have pooled their funds together in order to extend their chances of winning a share of the jackpot. Some in our midst call it foolish, while others just don’t want to be that one guy who shows up to work on Monday, alone (see associated picture)…

Original Artist www.cartoonstock.com

As CQL is a custom software development shop, we of course employ many highly intelligent software engineers. And what happens when the potential of fantastic riches collides with very smart people, you get multiple Excel spreadsheets circulated through the office indicating how we can confirm our winnings (shoot, by now, I’m sure one of them has written a mobile Android or iPhone application to support the same). What started with a simple note of “I was bored at home, last night, so I produced this way for us to tell if we won…,” has grown into complicated colorized and automated versions of the same computation method.

So, do we feel foolish parting with our $10? Heck no, for less than the price of going to a movie, we’ve received a ton of opportunities to laugh at work, today, and 170 chances at becoming a millionaire, tonight.

Expanding Our Social Network

This past week, CQL hosted a party for some students (and professors) from Calvin College. The purpose of this party was to allow some software development students an opportunity to network and interact (in a casual environment) with peers who are already in the ‘working world.’ CQL takes the responsibility of developing interns, seriously, and Calvin has been a good partner in helping match their students with our team. The activity started with a tour and overview of CQL’s business fundamentals, and then moved to the mixer. Overall, the students mingled to learn about our backgrounds, how we got into this business, we talked career path and why we love software development.

Thanks to all for coming out!  We enjoyed the opportunity to meet you! Let’s make great software together!

Soup’s On For All

The team at CQL would like to congratulate Catholic Charities West Michigan on their achievement of raising nearly $115,000 for God’s Kitchen at the 2012 Soup’s On For All event.  

For the past 9 years, CQL has been proud to be a Gold Sponsor supporter of Catholic Charities in helping them accomplish their mission of helping individuals and families that come to God’s Kitchen looking for care and food assistance. Their food and pantry programs provide vital services such as food delivered to the homebound, drop in lunch and dinner sites, food pantries, and meal outreach in many communities.

The annual Soup’s On event is definitely a staff favorite for us. For years, our employees, and their significant others, have attended this event, which features various local restaurants serving soup as a way to demonstrate ‘soup lines’ from years past. It is a special evening.

Personally, I love picking a custom made soup bowl to take home.  Hundreds of volunteers, including schools, church groups, aspiring artists, etc. hand paint bowls that are given away to attendees at the event.  Picking just the right one is an art form all in itself as I have a display in my home that reminds me all year of the great work Catholic Charities is doing.   To get an idea of the fun, whimsical pieces I’m talking about, click here:

Soup’s On Bowls!

We’re already looking forward to next year’s event and hope to see you there!

CodeMash Blog 3 of 10

In our continuing series on observations made at the 2012 Codemash Conference, following is our Codemash Installment #3 of 10. As a reminder, Grand Rapids based, CQL sent seven of its developers to a large software development conference called Codemash. CodeMash is a unique event that educates software developers on current practices, methodologies, and technology trends in a variety of platforms and development languages such as Java, .NET, Ruby, Python and PHP. Different than most conferences, this three-day event ‘mashes’ together ideologies and individual developer experiences to discuss, learn and even attack certain problems.

Building Social Games Using HTML5, Window 8, Azure, .NET

Using HTML5 paves the way for creating social games that run across a variety of platforms, without the pain of developing unique code for each device. Using Azure enables a potentially inexpensive way to scale big for very low cost (I’m more sold on the cloud after seeing some of it in action.) For a social game like Tankster (Scorched Earth on HTML5), Azure Compute is used to host an ASP.Net MVC 3 application in an Web Role which uses WCF to communicate to the gaming client before game startup. As players gather before a gaming session starts, the app server offloads incoming requests to be handled by a combination of an Azure Queue and another Azure Worker Role. The Worker Role process (similar in concept to a Win32 Service) creates a specially named JSON-formatted file on Azure Blob Storage (think Amazon s3) for download among connected clients awaiting the game to start (files contain game info, names, weapons). Clients poll the file frequently looking for the game start signal similar in construct to a command query pattern. According to the team’s tests, this is actually quite cost effective since it avoids costly CPU hours polling the “heavier” web app running on ASP Web Role.

Once started, the gaming clients communicate to a Node.js server running on an Azure Web Role to communicate among the gaming clients near instantaneously. Node.js is an open source single threaded, event-driven, non-blocking i/o, very fast, lightweight, perfect for data intensive real time application that run across distributed devices (hence great for games requiring real time communications online).  It’s the current “hot thing” in web socket communications (built into HTML5). Microsoft has a program manager responsible for ensuring this works in the Azure cloud.

Using Azure allows a conceptual project to scale up to support increased incoming requests by spinning up more Web and Worker roles. Surprisingly, there is no autoscaling (adding more CPU etc as load increases) built in to Azure, but 3rd-party modules can be used to implement this functionality.

As an interesting note, Azure Storage Services (Blob, Table) maintains 6 copies of data spread across two geographically separate data centers.

Why Our Customers Should Care:              Many clients are seeking cost-effective recommendations for how to scale their larger, data intensive solutions. As a software solutions provider, CQL continuously investigates available options including “cloud offerings.” Gaming solutions are large consumers of data-intensive processes, and provide opportunities to test the scalable support options that will house your next critical business application.

TDD in .NET vs. BDD in .NET

Test Driven Development (‘TDD’) gives you courage to improve the code base without breaking existing functionality.

  • Typically your unit tests should not be ordered and run independently returning the system to its former state.
  • Adhere to the “Highlander” principle….”there can be only one” thing the test is testing.
  • TDD zealots would have you believe that you write less code…I agree that certainly you write twice the code when you do TED (test eventually development…writing tests after the fact).
  • Certainly many more tenents, all Googleable.

Behavior Driven Development (‘BDD’) helps create test specifications that are easy to read even for non-programmers and allows the design of the software to be driven by its purpose. BDD enables a non-programmer to write stories (“As a admin when I enter Joe as the UserName and ‘I wish I could be at Codemash’ and press ‘add post’ I should see a page that shows ‘thanks Mr. Non-programmer, sorry you couldn’t come”) using an English-like language called Gherkin (e.g., what you just read).

In the context of a MVC web application, a Visual Studio plugin compiles it down to C-Sharp code which calls various tests you write. Running the complete test fires off a browser which increments through the steps, validating the test. Previously, only crummy tools on .Net were available. SpecFlow and Selenium are now more fully featured, compelling way to make this happen. The English-like language tests help ensure that clients get what’s expected and what works…not just what works.

BDD allows more non-technical people (e.g., project manager or project sponsor at client) to more fully participate in the software development process.

Why Our Customers Should Care:              Testing is critical in the software development process. There are different ways in which developers engage clients to perform these tests, but ultimately any testing process that makes it easier for a non-technical client to participate in the software development process is good for everyone – better outcomes for the developer (faster confirmation/feedback is provided by the client) as well as for the client (more cost effective solutions in a shorter amount of time).

Dynamics In C#

There is room for the ‘dark magic’ of dynamics in a statically typed language like C#. MVC3 is already using it with the concept of a ViewBag (replacement for ViewData["somevalue"] in older versions of MVC). Though typically we are using a more strongly typed ViewModel which I think is better anyway.

Dynamics are much better for dealing with an undetermined API (JSON from the browser, or RavenDB, or Couch, Mongo) or metaprogramming (programs writing programs. A practical example would include https://github.com/markrendle/Simple.Data a dynamically generate data access library.

Nonetheless, the drawbacks are fairly significant so care must be used. Code is much less self-documenting (no contextual documentation), no intellisense (argh!). Really to use it extensively, you better be using a solid TDD approach as a team as it requires quite a bit of discipline.

Why Our Customers Should Care:              Data is ‘king.’ Technology that makes it easier to for developers to create solutions for manipulating and exposing this data is extremely important. Customers must be aware that there are definite concerns regarding how this data is treated, and the importance of providing enough time/opportunity for developers to ‘test’ their solutions.

Check back for Codemash Installment #4 of 10.

CodeMash Blog 1 of 10

As a custom software development firm, CQL must constantly put our developers in a position to be exposed to the latest technology trends, not only within in the .Net development framework, but across multiple development platforms. Recently, CQL sent seven of its software developers to a large software development conference called Codemash. CodeMash is a unique event that educates software developers on current practices, methodologies, and technology trends in a variety of platforms and software development languages such as Java, .Net, Ruby, Python and PHP. Different than most conferences, this three-day event ‘mashes’ together ideologies and individual developer experiences to discuss, learn and even attack certain problems.

Having our developers attend this type of conference provides tremendous benefit to our customers. Even though CQL has the largest collection of .Net Developers in Grand Rapids, Michigan, we understand our approach with clients must be technology agnostic, and be willing to recommend the best platform and development language to meet the needs of our customers. Codemash offers excellent opportunities to tie together those areas of most interest to our clients, including Ecommerce, Business Intelligence, Content Management and custom web development.

In the next ten blog entries, we will provide some insights from our technologists who attended this conference on software development concepts that should be important to our customers (even if they don’t understand the underlying technology topic). Following is Codemash Installment 1 of 10:

Heroku (http://www.heroku.com/)

This was informative in a “here’s how an awesome deployment system could work” kind of way, perhaps made a bit sweeter because the presenter is a Heroku employee.  Heroku is a cloud environment that has lately been adding more languages/platforms that they can host.  Deployment is done using a git push, which then forces the system to recompile, test, and deploy the application.  Very interesting system, and I just read a blog post about someone getting a .Net app onto Heroku using Mono and a bunch of duct tape, but it wouldn’t surprise me if .Net were added in the near future.  Something to watch.

Why Our Customers Should Care:            Recently named the 2012 Technology of the Year, by InfoWorld, Heroku provides a platform as a service (PAAS) for building, deploying, and running cloud apps using Ruby. The platform includes tools for deployment and management, a runtime for scalability, fault tolerance, and an add-on system for extending the capabilities of our platform. In essence, it allows your software developer to more quickly develop and expand your software solution.

PhoneGap (http://phonegap.com/)

This was a pretty cool session.  PhoneGap lets you build an HTML + JS application that can then be packaged up and put on the various mobile app stores.  A few alternatives were mentioned (but not discussed in depth) – rhomobile, MoSync, SenchaTouch, Appcelerator.  The presenter also pointed out JQTouch as a way to make the app look and feel a bit more like a native application.  Also mentioned (very briefly) was Mulberry, which is apparently kind of like Rails for PhoneGap development.  Something to check out for sure.

Why Our Customers Should Care:            PhoneGap is an open source solution for building cross-platform mobile apps with standards-based Web technologies like HTML, JavaScript, and Cascading Style Sheets (CSS). Based on HTML5, PhoneGap leverages web technologies developers already know best… HTML and JavaScript, and provides access to native APIs. PhoneGap uses standards-based web technologies to bridge web applications and mobile devices. Something all of our clients should be considering.

CI++

This session was a bit disappointing for a few reasons totally unrelated to the content.  The presenter started out by discussing various bits of automation and testing going from standard practice up through “this-doesn’t-really-exist-but-who-knows (for example: Unit Tests for your Unit Tests and a Semantic code analysis tool that can find bugs to an impossible degree).”  He lost a few audience members while talking about some of the non-existent tools, probably still 5 minutes before he said “oh, and by the way I made up a bunch of those things.”  He discussed automating DB artifact deployment (by writing the scripts exactly like we do at CQL), and a few other parts of deployment, but then ran out of time before he could get into the stuff that I was looking forward to (although I have a feeling that his presentation was largely meant to lead into a sales pitch). Overall, it is an important topic, but the presentation simply missed the mark.

Why Our Customers Should Care:            In software development, continuous integration (CI) implements continuous processes of applying quality control — small pieces of effort, applied frequently. Continuous integration aims to improve the quality of software, and to reduce the time taken to deliver it, by replacing the traditional practice of applying quality control after completing all development. Obviously, at CQL we take this topic very seriously, as we want our customers to experience the best results with the custom software applications we develop.

Check back for Codemash Installment 2 of 10.

We’re off and rolling!

“We want ‘a Rock!” (Twisted Sister clip  Here)

Lots of exciting stuff going on here at CQL for 2012, so check it out:

The best news is that we have a new employee, Matt, who came to us from another development firm.  There, he worked mostly on a legacy e-commerce site in VB.NET Web Forms.  He also had the opportunity to develop a C# .NET MVC and that’s when he started to love working with .NET MVC.  In his free time, Matt enjoys learning Ruby on Rails and fiddling with some personal .NET projects.  Other than technology, he’s a big fan of science fiction and has been working his way through Battlestar Galactica.  CQL is thrilled to have Matt on our team.

Any good software development company must keep on top of the latest and greatest technology trends (our clients expect it, plus, we just flat out love it). We started 2012 with a bang by sending seven of our technologists to CodeMash 2012. This unique three-day event brings together a select number of developers who practice on a variety of platforms and development languages such as Java, .Net, Ruby, Python and PHP. The purpose of this event is to “mash together” all these different thought leaders into one conference where ideas can be shared, and new technologies can be explored. Check back to this blog, as we will be posting many of their notes and observations. Cool stuff.

Also, we sent another two of our team to CES (Consumer Electronic Show) in Las Vegas, last week.   This is another great way to check out what’s up and coming in the Tech World.  They did see some pretty cool stuff and their wheels are definitely turning.  I expect to see some big things rolling out of here this year.

Back at the office, it was pretty quiet around here all week.  But that doesn’t mean we weren’t busy.

The Sales team got new Dell Latitude 5520s, running with an Intel Core i5. They’re ready to roll. Our Resource Manager and PMs are now running on some very fast Solid State Drives. Some of our developers got new Dell Latitude 6520s, running on an Intel Core i7, all of which are using SSDs. We also upgraded them to 24in 1080p monitors from their old 22in monitors. Kevin decided to deck out his desktop with three 512 GB Solid State Drives in a RAID 5 configuration and now it’s screaming fast. Why should this matter to you? Simple, faster machines and better systems = more code being developed in a shorter amount of time, for you.

Last but not least, in jumping on the New Year’s resolution bandwagon, we hooked up our existing workout area downstairs.  We have new padded mats, a bunch of exercise balls and lots of new weights/bands.  The guys are also kicking it up a notch from P90X to P90X2.  This stuff isn’t for sissies.  Between doing P90X2 and training for the GR Triathlon this year, I’m willing to bet we’re one of the healthiest software shops in Grand Rapids.

A Year In Reflection

Every year at our company Christmas Party, our staff presents thank you gifts to our owners.  This year, I was in charge of giving that speech so I really got to thinking about what’s so special at CQL.  Of course, the obvious things jumped out first:

  1. Employee massages.  Yeah, we get ½ hour massages every other week and it’s definitely something that I think differentiates us from other companies.  At a time when so many companies are cutting back, we’re still getting hooked up.  As the HR person, I love seeing new employee’s faces when massage day comes and they can hardly believe it’s actually true.  I guess when we tell them initially, they think we’re kidding??
  2. Free coffee.  GOOD coffee.  No generic distributor beans for us.  Ferris Coffee is the only way to go.
  3. Pizza, pizza and more pizza.  Yes, we eat a ton of pizza in these parts.  Some actually grumble that we order it for every meeting.  WTH?

My next thought was about the great work-life balance we have here. How many companies do you know of where (almost) the entire staff participates in P90X?  We have 2 “shifts” that go downstairs each day and get their fitness on.  Yes, while at work.  We also have a bunch of bikers and runners.  In fact, I was out for a run this past summer around 3:00 in the afternoon and was thinking to myself how nice it is to be able to do this without having to worry about whether or not I’m in my designated seat at all times; aside from the hour between noon and 1:00p.

Oh, and I just happen to be the only female here at CQL.  I also have a 3 year old son, who’s always been plagued with ear infections, so I probably appreciate the work-life balance around here more than the average.  When family duty calls, I’m all over it and there’s none of the famous Mommy Guilt.  I can take care of what I need to, and have a real sense of calm about not being in the office.  Talk to any working Mom and they’ll tell you there’s always a twinge of apprehension about being at home with their kid instead of sitting at their desk.   Not me, because I KNOW how important family is to everyone here; it’s not just something was say to make us look good.

But even after all the things mentioned above, I just didn’t feel like the main reason this place is so great is because we get massaged, fed and worked out.   The thing that sticks out the most is the everyday comradery and light-hearted atmosphere of the office.  We actually LIKE each other’s company.   Everyone here is very approachable and the general air is that you can be comfortable in your own skin and your own ideas.  Practical jokes are an everyday occurrence, and actually, our President is the main culprit of most of the jokes.  I start to wonder if everything’s ok with him if he doesn’t come up with something off the wall every day.  If you’re a fan of Founder’s Brewing Company, you’re likely to run in to our guys and you’ll see first-hand what I’m talking about.  No Steve Jobs types here.  You won’t find anyone pounding desks or throwing out threats.

As I go back and read through this, I’m well aware that so far I’ve painted the perfect picture and I sure don’t want to sugar coat anything.  So, do we have our tiffs?  Of course we do.  When you’re working this hard and dealing with this much passion, there’s bound to be some blow outs, and trust me, there are.  We absolutely have our breakdowns in communication, our bottlenecks in process and situations where the right hand doesn’t know what the left is doing.  But the great thing is that we can get it out, get over it and move on.

So this year I want to just say thank you to my bosses, my co-workers and most importantly, my friends.  It’s a pleasure to come to work every day.  For real.  Our ideas, passion, patience and support is what I’ve come to expect and love about this place.

Merry Christmas and Happy Holidays from CQL!

For the second year in a row, Michigan based software development company, CQL, was a drop off location for LinkedUp Grand Rapid’s Christmas Project.  This year the non-profit they chose to support was the Grand Rapids Home for Veterans.  A large list of items was collected including new batteries, clothes, socks, and new and used books.   We were very happy that so many of our clients, coworkers, and other LinkedUp Grand Rapids members dropped off items for support.

For year two, we doubled the gifts that were received.  It was exciting to see other non-profits get in this giving opportunity.  One local church near CQL received extra supplies, and dropped off two boxes full of magazines, deodorant, lotion, and chap-stick at our giving location.

At this this time of year, most of us are able to enjoy fellowship with friends and family. We are blessed to be able to help others who are less fortunate.  So, as we wrap up another year, CQL would like to thank all of our clients, vendors, partners, and team for an excellent year.

Merry Christmas and Happy Holidays from CQL!

We’re Lucky We Can Be Thankful

One definition of the word, “thankful,” found in Webster’s dictionary is being ‘conscious of the benefit received.’ Today, is Veterans’ Day, a holiday set aside for people in the United States of America to remember and give thanks to our fellow citizens who have made the sacrifice of service to our country. The celebration of Veterans’ Day coincides with other holidays observed around the world such as Armistice Day and Remembrance Day that have their origins with the end of World War I. The significance of this holiday being observed on November 11 relates to the fact that major conflicts surrounding World War I ended at the 11th hour of the 11th day of the 11th month of 1918 with the German signing of the Armistice. In proclaiming the holiday, on November 11, 1918, President Woodrow Wilson stated, “to us in America, the reflections of Armistice Day will be filled with solemn pride in the heroism of those who died in the country’s service and with gratitude for the victory, both because of the thing from which it has freed us and because of the opportunity it has given America to show her sympathy with peace and justice in the councils of the nations.”

At CQL, we are lucky to count one of our team members as someone deserving special recognition on this day. Staff Sergeant James VanderZouwen joined the Army in 2004 and set off to be trained at Fort Benning, GA.  His initial goals were simple: stay fit, get schooling paid, and do amazing things.  Almost eight years later, he finds his goals accomplished and new goals made.  James has a degree that was paid for by the Montgomery GI Bill.

In 2006, James volunteered to be deployed to Iraq.  He arrived in Al Qayyarah (‘Q-West’) where he drove armored semi-trucks and fuel tankers.  Moving to Balad (‘Anaconda’) to drive gun trucks was a major goal of his group. As James describes, “there is a certain level of adrenaline that came with being a combat driver and my company (the 454th Transportation Company) was ready for this challenge.  We joined up with Task Force 106 of the 101st Airborne and trained to conduct convoy security by way of really awesome tactical trucks with really big guns.”  On July 7 (7-7-7), a ‘Scout’crew (lead vehicle) with a truck commander that knew how to proficiently use the radios, GPS, and Jammers, was needed. James’ crew volunteered for this mission. They drove to their destination and the convoy cargo was unloaded.  On the way back, at 2:14am, the bridge they were driving over exploded.  His team was very fortunate to sustain only minor injuries and that a recovery team was quick to assist them.  James mentioned, “I didn’t even realize I was hurt until the action was over and we were again headed back to our base.  Sitting in the back of the new scout vehicle, I began to realize my back was in pain.  When we got back to the base, I was told that my tailbone and sacrum were broken.”

James stayed in Iraq for the last two months of his tour to continue helping his company with communications equipment installations and maintenance for their continuing convoys. A Purple Heart was conferred on James for his the actions surrounding the bombing on July 7, 2007.

When he returned home, the VA took care of him through their healthcare system and by financing his schooling, as promised.  James earned his degree in computer science, bought a house and began working “my dream job” as a developer for CQL.  “The Army has done much for me in my life.  It taught me about Leadership – Loyalty, Duty, Respect, Selfless service, Honor, Integrity, and Personal courage.  I am proud to
have served.”

We could not have said it better. Thank you, James, for your service to our country, and to the multitude of others who have donned this country’s uniforms in service to protect our liberties.