Goal-Oriented Design

When building anything, keep the end goal in mind. Too often, businesses fail to consider the importance of big picture thinking when starting a new project, especially regarding an intentional design process. In designating specific tasks or planning out projects, most would focus on immediate results. However, in looking at a company like Amazon, there is such an emphasis on long-term growth that their team is looking seven years out and planning accordingly.

Jeff Bezos is noted for saying that when people compliment him on current growth, he can’t help but be amused, because the next few quarters of sales were already determined for the most part by the planning and processes designed years ago. Similarly, in looking at the long-term nature of building out a sustainable income on a platform like YouTube, very few businesses want to hop on board, knowing that they would barely make any money initially. The same goes for other Social Media platforms, though I’d contend that a lack of understanding of how to leverage these platforms is a contributing factor as well.

Ironically, the type of work that pays out well in the short term doesn’t scale very well. In addressing goal-oriented design, one of the biggest upsides comes from knowing that the growth ceiling is often much higher despite taking a bit longer to see returns. We’ve all heard it said that slow and steady wins the race, yet too many times businesses take an overly aggressive approach to increasing company revenue. We can’t really blame them, but what we can do is make better choices for ourselves to change the narrative of how success is achieved in business.

Invest in Yourself!

Most people with any type of investment account are concerned with the kind of growth their investment will achieve. News sources provide up-to-the-minute stock updates. Talking heads on cable news talk about the likelihood of a recession. All around us, people are concerned with investments. But what most people ignore is investments in themselves. Beyond college, few people pursue any further education or training to advance themself. People want to achieve more, but few will put in the effort to make it happen.

Businesses are often the same. Recently, I spoke with a potential customer about an app for their business. The customer indicated that they were very concerned about losing business to a big-name competitor. They wanted to be able to more effectively compete with the giant in the industry. When I asked what their budget was, they indicated that they had $250. I could tell similar stories about other businesses too.

Are you making investments in your future? Today we have more options than ever to better ourselves. Innumerable websites offer online training, books on any topic can be found to hone your skills, and online groups and forums abound for connecting with others. Are you exploiting those opportunities?

In the end, whether it is our personal life or our business, we must be willing to invest time and money if we wish to see growth. Otherwise, we will constantly be at the bottom of the totem pole wondering why we can never get ahead.

Hack Day

In December, I participated in the MLH Local Hack Day. Hack Day is an opportunity for tech nerds of various disciplines to get together and collaborate on projects or to simply attend lectures presented by various people and organizations.

During Hack Day, I was invited to speak to the students of our local tech school – South Hills School of Business and Technology – about my experiences as a programmer and an entrepreneur. One of the topics of my presentation was advice for aspiring developers.  Below is some of the advice I gave.

Never stop learning.  The people who get ahead in life are those who are educated. They read daily. They are always learning the skills needed for tomorrow’s workplace. Those who are left behind – particularly in tech – are those who have antiquated skills.

Shut the TV off. At the end of your life, you will never look back and say “I wish I had watched more television”. TV can provide entertainment, but it will never help us achieve our goals. In fact, TV will derail our goals and dreams by preventing us from acting to achieve them.

Learn Linux. It’s sad the number of techies out there that don’t know their way around a Linux server. Given the number of things that run Linux such as Android, Docker, AWS, and Google Cloud; knowledge of Linux is crucial to your tech career. If you’re stuck in a Windows-only world, it’s time to diversify!

Master JavaScript. Like it or not, JavaScript is becoming the dominant language of development. Not only is JavaScript the defacto language of the web, it is increasingly being used for server side development (Node), build automation (Grunt), robotics (Johnny5), and has become the standard language for passing data between systems (JSON).

Master Web Development. Along with the growth of JavaScript, web technologies are exploding too. Cordova and Ionic allow web technologies to be used to create mobile applications and Electron allows JavaScript to be used for cross-platform desktop applications.

Write Code Daily. A weight lifter gets stronger by lifting weights. A runner gets faster by running. A coder gets better by coding. Reading books is great, watching videos is cool too. But if you want to write better code, get in the habit of writing code every day.

This is just a short list of the advice I provided. Nonetheless, it’s a pretty solid checklist to start down the path to becoming an expert software engineer.

Organizational Aspirations

Throughout my life, I have observed that there are two types of people out there – those who aspire to excellence and those who are content to get by. This extends to businesses as well. For example, consider Chick-fil-a. Just like McDonald’s or Burger King, Chick-fil-a is a fast food joint.  But unlike their competitors, it’s apparent that Chick-fil-a aspires to be something more. You see it in the quality of their staff and the quality of their food. As far as fast food goes, Chick-fil-a is the gold standard of excellence in all that they do.

Unfortunately, there are too few businesses out there striving for excellence. Companies try to cut corners, find the cheapest bidder, outsource their call centers to people who struggle to speak English, or engage in other practices that show anything but excellence. These companies try to gain our confidence but they never will. We may use their products and services, but only when we’re looking for a cheap solution. Indeed, these companies have turned their products and services into commodities differentiated by nothing but cost.

When people look at the goods and services your company offers, what do they see? Are you an organization demonstrating excellence in all you do, or a another in a long list of organizations content to push the mediocre?

Making Money

We all want to make money. While we know that “money can’t buy happiness”, it’s a whole lot harder to be happy when you are struggling to get by. So, how do we make money? As a business owner, I have been forced to think about how money is earned – not only by me but by those in my organization. I concluded these are current three ways that money is generated within my small business.

Perform Billable Work. The first and simplest way to make money is simply to perform work that will be paid for by someone else. In the software industry, this means writing code. In other businesses, it means performing the work that defines the function of the organization. This is the most visible way to generate revenue. These are also the easiest to consider hiring as their efforts directly generate revenue.

Bring In New Customers. Organizations can only grow and thrive if new customers are coming onboard. The best software staff in the world can’t work if there’s no work to be done. While bringing in new customers doesn’t necessarily generate revenue, it fills the pipeline of billable work that is needed to keep a business moving forward. As these staff members don’t directly generate revenue, they are more appropriate to hire based on commission.

Free Up Time of Others. The third way to generate revenue within an organization is to enable others to accomplish their mission unimpeded. Secretaries, assistants, human resources, accounting, are examples of this. They perform work that frees others do to billable work. This is even more apparent in a small business. My personal assistant does all the little things that need done so I can focus on billable work. These staff members are the hardest to hire as they must be paid from the money generated by other staff. However, the time they free for billable staff can make them easily worth well beyond the salary they receive.

As an employee, where do you fit in within your organization? How much revenue do you generate for your organization? Is it directly or indirectly generated? If you know the answers to those questions, you can better understand your value within an organization.

Goals Not Resolutions!

As the new year begins, many of us will be making resolutions. “I’m quitting smoking” or “I’m going to the gym every day”. Typically, these resolutions don’t last into February. Why is that? Maybe it’s because we believe that, magically, just because the year changed our behaviors will change too. This year, instead of focusing on a resolution, why not set measurable goals for the year. For example, instead of a resolution that says “I’ll quit smoking”, you instead set a measurable goal such as “I am going to smoke two less cigarettes each month until I have quit this fall”.

Resolutions frustrate us because we see ourselves as failures when we mess up. When we want to quit smoking, after we’ve messed up once or twice, we abandon the resolution and continue with the old behavior. When we set goals instead, we innately recognize that we have a road to travel to reach our destination. We also acknowledge that there will be bumps along the way on the road to success. A setback today does not end our journey – it merely means we need to keep trying and working harder to reach our goals.

Where you find yourself next January will be determined by what you do this year. If you focus on resolutions, you’ll be in the same place next year with similar resolutions. If, instead, you focus on goals; you’ll start to see your life progress in the direction you want.

Exponential Growth

For entrepreneurs and business owners, trying to build something bigger than the individual poses one of the most challenging initial struggles a company can face. A brand is often represented by a figurehead, whether that be the owner, CEO, or majority shareholder. When the growth of the company is contingent on the amount of time an individual in this capacity can offer at an hourly rate, growth will by nature follow a specific linear pattern, before ultimately reaching a plateau.

In an effort to scale beyond this point, businesses can plan ahead to position and prepare themselves for the anticipated changes and challenges. Structuring the business model in such a way that money naturally flows into the business through multiple streams can create an ecosystem where each specific element supports other elements in different ways. In doing so, the business network can expand well beyond the individual, and the company can scale up to meet the goals necessary to attain sustainable growth and success.

While all of this sounds fantastic generally speaking, the task of specifically applying these principles to a business could seem daunting. Often, small business owners can fairly easily grasp the linear aspects of business growth. However, the road block often comes when the businesses are forced to think differently and realign their goals and focus. Sometimes the solution is both simple and effective. If your business has been struggling through a similar situation, I would strongly encourage you to take a look at your people. The people who are passionate about the work and mission of your company are the strongest agent of change for scalability. Take some time and consider their interests and skills, and invest in helping them find their best work!

Multilingual Programmers

One of the biggest difficulties in the computer programming world today is the sheer number of languages out there to use for application development. Which language should you learn? The reality is, that’s the wrong question. I recently spoke with a developer who indicated that he only knew C# – he was not comfortable with Python or any other language. For the professional developer, this it not an acceptable answer. In today’s world of programming, you can no longer get by knowing only a single language. For example, while the bulk of the code in a Java web application will be in Java, the front-end will require JavaScript and HTML. Build scripts may be written in Groovy or XML, and Shell scripts may be required for build automation. This is not unique to Java applications – just about any application will require some knowledge of other languages.

How do you pick which languages to learn? At a minimum, every professional engineer should know at least one compiled language such as Java, C, C++, or C# in addition to JavaScript, Python, and SQL. Additionally, he or she should be comfortable with another language such as Ruby, PHP, Go or Rust.

If you’re an application developer, do you only know one language? If so, I would strongly urge you to learn additional languages. Mastery of every language isn’t necessary, but any decent developer should feel capable of writing code in several languages.

Life’s Not Fair

When my daughter was young, she once complained to me about how one of my decisions wasn’t fair. I don’t remember what she asked for anymore, but I do remember my response. I told my daughter she should be thankful that life isn’t fair. Look around the world today and you see children starving in underdeveloped parts of the world, people being oppressed by cruel leaders, people suffering from lifelong disabilities, and all kinds of other suffering. Yet here, in America, we enjoy an incredibly high standard of living. Few of us die of starvation, we have a democratically elected system of government, and we have some of the best healthcare services in the world. I am thankful every single day that I have been blessed so greatly.

How does this apply to technology and business? As I run my business, I see how fortunate I am. I see that I am well paid, that I have freedom to enjoy life, and that I am the master of my own destiny. As I look around, I see that few others have that freedom. Even among the greatest nation on earth, I am among the most fortunate of people. As such, I have a moral obligation to make the world around me a better place. I am compelled to improve the community I live in, to better the lives of those around me, and to work to empower those I work with. I’m thankful life isn’t fair because it gives me an opportunity to make the world a better place. It gives my life purpose and meaning.

Making the world a better place should be part of the mission of every company out there. Is your business empowering employees? Are you making your community a better place to live? Are you serving more than your own pecuniary interest? Can you sleep at night with the decisions that you and your business make on a daily basis?

When we all work together, we can make the world a fairer place for all. We can work to ameliorate suffering and starvation. We can improve healthcare around the globe. Maybe, someday, the world will be a fairer place. Until then, each one of us – business and individual alike – has work to do.

Great Minds

It’s often said that “great minds think alike.” It sounds great, in theory. But is it really true? Just because I’m thinking the same thing someone else is, does that really mean we’re both great minds? I hardly think so. It’s not the employee who thinks the same as everyone else that brings value to the team, it’s the free thinker who has a different perspective. In the boardroom, when everyone thinks the same, we call it groupthink. Psychology Today says “In a groupthink situation, group members refrain from expressing doubts, judgments or disagreement with the consensus and ignore any ethical or moral consequences of any group decision that furthers their cause.” This hardly seems beneficial to the team. When I think of great minds, I think of the men and women who engaged in thought well outside the mainstream – brilliant men like Isaac Newton, Albert Einstein, Stephen Hawking, and Benjamin Franklin. If you want to be a great mind, think for yourself! Don’t let the people around you define your thought. Be willing to take risks and think outside the box. It’s those people who history remembers – not the people who think like everyone else.