Tuesday, November 19, 2024

Code Decisions Matter

I get a ton of questions on startups.  One of the questions is, “Do code decisions matter?” Typically, this is around language, so I tend to answer the question, “do languages matter?”  The answer is, “no, languages that you use do not matter to an end customer” on the surface.  Customers don’t care if you use JavaScript, python, c#, Java, etc.

However, there are some code decisions that do matter.

Algorithms matter.  Choosing to use algorithms that perform well matter.  Sorting is the classical example, so let’s look at it.  I’m not a sorting guru, but I do know that some sorting algorithms work better in some scenarios over others, it just depends on the scenario.  I’d look at the scenario and see if there was a better algorithm to use.  I once had to create an algorithm that on the surface looked to be order n cubed, yuck.  I started looking at my testing scenario and N would always be small, so I just said it was good enough and moved on.  It was good enough, so did it really matter?  No.  I was lucky as this isn’t typically the case, so be careful and know your scenario backwards and forwards before making a decision.  As I often say, sh*tty languages are sh*tty no matter what language you use.

Decisions matter.  Languages don’t matter, but decisions on direction do.  I’ve been helping some startups recently and I’ve come across a trend.  Let’s assume that you build a product that solves a customer problem.  As you develop this, you determine that there are other customers that could use this similar/same solution.  There are two general solutions to this

You can require that each customer have their own infrastructure to support a solution.  This is doable, but it basically requires that you create a solution to the customer showing up with a credit card where you create a silo’d system for each customer.  The customer gets their own complete copy of an infrastructure.  For this to be efficient, you either need to tie yourself to a cloud vendor and create databases as well as web interfaces, thin clients, fat clients, and the necessary infrastructure. While this works, I still view it as sloppy.  You can end up with solos of code and databases, which makes things hard to keep constant.

Another solution to this is to build up a Saas solution for this that falls into multi-tenant.  Tenants are sets of customers, think of them as a business and their customers.  In this scenario, you build up a solution from the database upwards where one solution handles multiple “tenants.”  This starts at the database level as well as in the application.  In this scenario, a customer comes to a solution, hands in a credit card, walks thru some setup options, and boom, the app is up and running in their world.  This is what you want.  Why do I know this is a problem?  I’ve had this problem in the past.  I’ve had this issue in the past at Marketlynx.  We realized the problem early on, and pivoted to produce a product that ran across multiple customers.  To make this work well, don’t think about putting specific code or reports in for a customer,  think about how to take a client request and turning it into a feature that solves multiple customer problems.  You will never have two customers that use the exact same code, but you can build code that solves the problems of two, or more, customers without having specific code that is only used by one customer.  I’ve done this in the past and it isn’t hard.  You have to break out of the idea of being a waiter trying to provide a diner what they want, you need to think about how to handle customer needs in the whole.  How can one request be used to solve multiple customer problems?  Think about this and how you can satisfy multiple customer problems in one scenario.  A user shows up, puts the credit card in, answers some questions, and poof, they are up and running.  You don't have to depend on magic to happen behind the scenes since the infrastructure is already setup.  This is the best way to scale since everything is already setup.  You just need to be smart regarding how to handle customer specific requests.

Good luck going forward with your startup idea!

Monday, March 18, 2024

Don’t start an introduction as comedy, you aren’t funny

Would you go to a job interview and be insulting? Not unless you didn't want the job, but then why would you go? Seriously, why go and be insulting?

i want to share the basics of an email that i got from the YCombinator cofounder matching service. For those that dont know, the YC cofounder matching service is a service for entrepreneurs to find each other. they can see about helping each other, finding a cofounder, see who is in their area(if their area is the world), etc. I've only met one person on there that i thought was remotely serious. most people don't know what they are doing on it, and it shows.

now, lets think about this. in a previous email, you want to start calling me Mac, amd this is from an email where we don't know each other.
Hey Mac, I thought it over, Mac and Cheese! If you would like to take this further, before we meet, check out my LinkedIn profile and please answer the question on this link: https://form.jotform.com/xxxxxxxxx/lets-get-to-know-you This will give you an idea of where I'm coming from. Easy!

i'm about customers, problems, and solutions, and then somehow getting moneymfrom the customer to solve their problem. what I'm not about are nicnames when you havent met, going and filling out some guy's form, or anything else.
i've made these mistakes nefore. don't do them. this is from an expert at making mistakes. be nice, be hospitable, focus on solving problems, not on being cute.

Saturday, March 2, 2024

Real Estate Broker Exam

One year ago today, I walked out of my real estate broker test. I had passed both fairly easily, but I was panicked all through out the process. It was about 2.5 hours of test taking. I was very happy to get the passing grades on the state and national tests. I had spent several weeks just continually taking the practice tests over and over.
This has allowed me to be the managing broker for my father’s real estate practice.
I still do many things in my life, including write software. The amount of ethics training in real estate is immense. I wish that software developers and startups had to go through this type of training.

Monday, February 26, 2024

Never be "Too Proud"

One of the things that I've had to do in my life is "a lot of things." I've never been too proud to get dirty. In fact, I just retold a story last night showing this. At one time, my father owned Western Plaza Bowling Lanes. Probably 30 years ago, we had a major snow storm in Knoxville with intense cold. A pipe burst at Western Plaza and was leaking into the bowling alley. The bowling lanes had a lot of wood, and wood with water means a disaster. My father and I went up there as quickly as we could and got the water cut off. I had to get the water out. I took a shopvac, which sucked up the water, and poured it out of the side door. While I was doing that, people walked in and asked if we were open. My father ran the front and the grill while I worked on getting rid of the water. And we did all of this in the frozen cold.

I share the above to show that I'm not too proud to work. I've also been at a startup until 3 am on a New Years Eve, getting home at 3:45 am. So, while you crazy people were out partying, I was working, and I have done this more than once. I've worked Friday nights, Saturday nights, and all weekends. Writing books and magazine articles on software is another thing. You don't get paid much for it, but it is a good excuse to learn new things, get paid, crete marketing material, and move forward. I've dealt with people that are "too proud" to do work, and they are not good to work with. You want to work with people that say "yes." not "no."

I've also been involved with real estate. I've had to take over the family's real estate business, and I have my broker's license. I write plenty of software today and help startups. I also know and do real estate. As I often say, "work is just part of the gig of life." I write code, I handle real estate, I handle land development, and I do a bunch of startup stuff.

McClure Realty

PS. Not many people know that my family owned Western Plaza Shopping Center at one time.

Thursday, February 22, 2024

Bad Startup Ideas - MVPs should never cost more than some small amount

i love reading about startups. I love reading people's opinions. i love reading from people that have been through them because I love reading about how people solved problems. I also love reading from people that have never been through them because it gives me a bunch of laughs. I've read some interesting advice that I've previously talked about
The most recent thing that i read is that "MVPs should never cost more than (insert some small number here)." This is another laughable statement. on the surface, the statement makes a lot of sense. however, there is a problem. What is the development on the MVP and what should be assigned to the development? Clearly, that should be any payment to a developer? Really? Most founders don't understand development, so they dont know what they should be doing to help developers. first off, let's start with what the problem is. Founders don't know how to translate an idea into something that customers can use. Founders don't know how to document what things should look right, or the business rules, or the database schema, or customer expectations, or testing, or talking to users, or much else that will help developers. trust me, founders think that they can do all of this. the problem is that founders haven't done development before, so they can't be of much help. Founders think that they are helpful, but they aren't so, all of this will fall to the developer. when you factor in that developers only spend 20% of their time writing code, you start to see that estimates don't really provide much value beyond something to beat over the heads of developers.
"Oh I'll just outsource this and it will be cheap and i'll hit that magic number." No that doesn't tend to work. Why? Because Outsourcing is about cheap. Startups are about adding value. There is a big difference between the two. When you look at companies like IBM, GE, Kmart, and Sears, you see the results of concentrating on customer value vs. cost.
My suggestion as always is to find people that you can trust. That means asking your network of comtacts. that means making some calls and seeing how people work. What is the background of a person? That doesn't mean just looking for cheap. That doesn't mean beating someone over the head about money. did someone work all night? did someone work all weekend? Did someone produce a product that worked? i do get it, founders can't afford to spend a gazzilion on an mvp. this is where the sales and negotiaon skillsets of people come up. what can you do? how much money vs the featureset? Hint, it is better to cut features and make products better than to have more features that dont work right.
anways, these are my thoughts and how i operate. If you want a "yes" man developer, i'm not it. If you want someone that can make your startup sucessful and a cofounder, contact me and let me know about your startup idea.

Saturday, February 3, 2024

What’s the best MVP? Is a perfect UI the best?

A shipping product is 1000x better than a non shipping product. Let’s start there. Next, I don’t release my MVPs to the world. I have a set of users that can understand what I am talking about and will give me feedback. The problem with an mvp and “releasing” it to the world is that fact that it takes marketing to get to users. Marketing tends to be a solid rocket powered icbm with no self destruction, once fired, you can’t stop it. ICBMs and marketing share this one crucial feature, the inability to recall. you rarely get a second bite at the apple. Put something out and get feedback from those trusted users. Iterate on the feedback. that is the lesson of time. Good luck on your startup. if i can be of assistance, let me know. https://www.linkedin.com/in/wallymcclure/

Tuesday, December 5, 2023

Bad Ideas In The Startup World - Part II - Startup "Experts" Strike Back

No more do I post the previous video, and I run across several more bad ideas. In this video, I'll talk about the MVP and an NDA. Good luck!