Okay, so now we are going to have Q&A's session and I will ask you two or three questions to start and then we will take questions and comments from the audience. My first question is about could we go a little deeper in the internal domestic economic situation because there is a debate. Can you say yourself that the 6% growth rate is what would be necessary to keep the good social conditions without unrest and turmoil? But yesterday I think it was, now Kitanaka told us that the real growth rate might be closer to 2% and you told me half an hour ago that the reality is probably 3%, but 3% is half of the 6% which are needed. So is this a serious issue that could threaten the legitimacy of the party? Well, thank you, Deary. I mentioned that 3% figure to you on a Chatham House basis, but now the room knows that's good. But the bottom line is this, that if you speak to enough Chinese corporates who measure things like their export sales, imports, as well as electricity demand, these become different measures of where growth actually stands in an economy and therefore if you aggregate those unofficial, as it were, calculations of where substantive growth actually stands, it is some ways, a long ways less than 6 as the current Chinese government indicates. The second point I think is what's causing that. I mentioned part of it before, Xi Jinping because he is at heart a Leninist does not inherently trust markets and therefore if there's a defining characteristic of the last several years of Xi Jinping's economic reign, it has been the deleveraging campaign which has been designed for good macroeconomic reasons to reduce the overall level of corporate debt in the economy, but in the implementation of it, the deleveraging campaign has preference to state and enterprises and being, as it were, discriminatory against private firms. Secondly, you also see some language from the Chinese Communist Party leadership not wanting private companies in China to get too big so that they actually dominate the party. And there's something of that story I think alive in the Alibaba tale. And then finally, you have smaller things, but still significant, the enhanced role of the Communist Party secretaries within the individual firm hierarchy of a private firm. Put those together and you see really through 17 and 18, a radical decline in private business confidence in China and that's what's translated its way through to the overall Chinese growth numbers. Remember, the private sector now represents 60% of China's GDP, 6-0. So therefore, it's been the engine room for the growth of jobs, of technology, of exports, of the rest. And so when that sector is unhappy, it translates through into real numbers. The final point is what's the system done about it? From November last year, you begin to see Xi Jinping realizing he has a problem. And there have been a rapid series of measures involving levels of fiscal stimulus, level of monetary policy relaxation, a change in the administrative use of credit to put more of it in the direction of small and medium private enterprises. But so far the data is fairly thin about these private sector players bouncing back as quickly as China wanted. And the final piece in this jigsaw is the US-China trade war. It hasn't been the cause of China's slowing growth, but it is added to it, both objectively because the traders sector of the Chinese economy is about 36% of GDP. And if you look at the sheer volume of the US-China trade, it flows through to the real economy. But also it dovetails with the problem with declining business confidence caused by other factors which have been more domestic. Does it represent a legitimacy threat to the party? Xi Jinping would not have acted unless it represented a problem to him. And so it is the one issue domestically on which I think Xi Jinping remains politically vulnerable. Thank you very much. The second question is about Hong Kong. You said elegantly that it was the unfinished business for the revolution. So how can this business be finished? What is the worst case hypothesis? My reference before was to Taiwan being unfinished business for the Chinese revolution. I think it's important for us to understand how Beijing looks at developments in Hong Kong now. And when they look at Hong Kong, they see something which is troublesome, difficult, but of a vastly smaller order of magnitude compared with the US-China trade war. That is up here for China to resolve as a top priority. Managing Hong Kong is in the middle of the field. It doesn't mean it's unimportant, but I just wanted to give folks here a sense of proportional reality to it. I think we're on the question which we see often debated about whether our Chinese friends will resort to military force in Hong Kong. I do not believe that is probable at all. And the reason I say that is, one, logistically it is a massive task. Think about the military or paramilitary occupation of Hong Kong. Seven million people over a vast number of islands. This would make Tiananmen in 1989 look like a cakewalk. This is a very difficult logistical exercise. Number two, it would inevitably involve a lot of bloodshed. And because of that, because of the bloodshed, you're going to have therefore a huge international reaction, not just to the physicality of the occupation, but what will be very violent. You've seen the number of hardcore protesters now in Hong Kong who are now quite well trained on how to deal with things. And then finally, with Carrie Lam still in control, if you're Xi Jinping, as soon as you militarily intervene, Hong Kong becomes 100% Xi Jinping's problem. Right now, it's 90% Carrie Lam's problem. So for those basic political realities I regard as improbable. There's a separate question about how this thing can be managed appropriately over the next several months. We can go to that later if you'd like. But on the headline question of would they do that, I think on balance, no. Unless the protest movement became mega violent, which I mean blowing up public infrastructure, killing lots of people, all those sorts of things, that would cross some threshold. But under present circumstances and known behaviors, I do not see that happening. Just to end on this, a Hong Kong question, you don't know, we are 22 years after the retrocession and 28 years before the final integration with mainland China. How do you see the possibility of Hong Kong becoming a Chinese province like the others, even in 28 years, because it is one generation? Do you think the mentalities in Hong Kong will change so much in 28 years that it is possible to get to that point without major upheavals? I've lived in China quite a lot over the years, but I've also lived in Hong Kong. My kids were born in Hong Kong, have any friends there, and I know the place reasonably well. Although I don't speak a word of Cantonese, I only speak Mandarin, but it has about it quite a different political and social consciousness to anything you find on the mainland, even in the rest of Guangdong in the south of the country. There's quite a different psychology. So if the Brits were there for 150 years, they actually left or had an impact on the place of psychology in quite a profound way. So I am not sure how this will evolve, but in my own engagements with my friends in China, I've left a few radical ideas, which is if you wanted to calm things down with Hong Kong and whoever the future chief executive of Hong Kong might be once Carrie Lam does go, and I think she will sooner or later, because the Chinese and the Hong Kong administration will need a circuit breaker in this current cycle. But if a new chief executive, whoever she or he might be, was to throw out some conciliatory lines to the protest movement, conduct one or two of the public inquiries which the protest movement want, for example, into the proper deployment of the police, undertake a radical investment in social housing and the underlying difficulties in Hong Kong for poorer, lower middle class people to live comfortably in Hong Kong. Then there's an argument you can begin to present to our Chinese friends along these lines, which is unlike Taiwan, the PRC has already won in Hong Kong. You got sovereignty in 1997. That's what that agreement was all about. And guess what? On the economic measures of things, if you go to the future, if we look at Xinjiang's economy just across the border now, as of two years ago, Xinjiang as a municipal area had a bigger GDP than Hong Kong. Play that out to 2049. That is a very, very big gap which is going to open up. And that's before you look at this mega-development in the Greater Bay Area, which is linking Xinjiang with the rest of the Pearl River Delta in a massive project of development. As I say to our Chinese friends, by the time we get to mid-century, Hong Kong will be as important to China domestically in its size as Macau is today. So why worry about it in the scheme of things? And this is a radical thought for our Chinese friends. Once we get to the 25-year point of the 50 years of one country, two systems, why not roll it over again for another 50? When I've written this to my Chinese friends, there was as much silence in that room as there has been here. In other words, zero response.


Hello, I'm Kevin Pouget, I'm a Senior Software Engineer in Red Hat Performance and Scale Department in the team in charge of accommodating performance and latency-sensible applications on the OpenShift platform. Hi, I'm David Gray, an Associate Software Engineer at Red Hat in the same team as Kevin. In this presentation titled Benchmarking HPC Workloads on OpenShift, we will discuss using OpenShift Container Platform for deploying high-performance computing applications. In particular, we will discuss the Kubernetes operators and tools we used to set up a proof-of-concept of running and benchmarking two scientific applications on OpenShift. And then we'll go into the performance results we collected. So, first of all, let me introduce why we want to run HPC applications on OpenShift. One aspect I'd like to highlight is the flexibility of Kubernetes, in particular with public clouds. With one simple command, you can deploy a full cluster on AWS or Google Cloud. And then, with one click, you can get new machines to join the cluster. And depending on the machine type you will specify, you will get a powerful GPU, a Manicor CPU, a lot of memory, or, in the opposite, a cheap CPU, depending of your requirements. Then, Kubernetes facilitates the deployment of the payload and their reproducibility. Indeed, in Kubernetes, you don't deploy manually your modification. Instead, you describe the resources you want to have in the cluster and Kubernetes operators will take care to prepare them. These guarantees that you have the same execution environment in your development workstation and in the production clusters. And the usage of containers also improves the reproducibility and these containers, they are used more and more often to package and distribute scientific applications. And the last aspect of HPC is, of course, performance. And presenting the performance of OpenShift is the topic of this presentation. Now, let me present the scientific application we use for this benchmark study. The first one is PegFam 3D Glob, which simulates seismic wave propagation in the EarthQuest. It's a reference application for supercomputer benchmarking, thanks to its good scaling capabilities. And the second one is Gromax that performs molecular dynamic simulation and we use the water data set. Both of these applications support GPU acceleration, OpenMP multithreading and MPI communication for internal parallelism. And in this study, we focused on the MPI communication aspect. Now, I will let David continue with the presentation of the proof-of-concept platform. In this section, I will first introduce the test environment we used for the proof-of-concept and then introduce a couple of the operators we used to deploy Gromax and PegFam. The OpenShift cluster was composed of 37 nodes, three masters, two for infrastructure services like telemetry, routing or storage operators and 32 worker nodes. And forgetting the bare-metal reference performance results, we converted these 32 worker nodes to run row. Each of the nodes has 62 gigabytes of RAM and four physical cores. Hyper threads were not used. Each node has two high-speed Ethernet NICs, one used by OpenShift for the cluster communication and one which we used for some of the MPI traffic. The cluster was running on OpenShift container platform version 4.5.7 based on Kubernetes 1.18. For the bare-metal comparisons, we used row 8.2. For this POC, we used CephFS and OpenShift container storage for a shared file system. OpenShift container storage, or OCS, is software defense storage integrated with and optimized for OpenShift container platform. It is built on Red Hat Ceph storage and can be deployed on-premise or in the public cloud. In our tests, we ran OCS in external mode so that we could use the same Ceph cluster for both the bare-metal results and the OpenShift results to compare apples to apples. Alternatively, OCS can run on an OpenShift cluster. The Ceph cluster was running on four Dell servers with 48 cores, 512 gigabytes of RAM, 1 800 gig NVMe and several 300 gig disks. I'll note here that the performance of the workloads we are running, ProMax and specfam3dGlobe, is not dependent on the file system performance and benchmarking the file system itself was not a part of this effort. Ceph offers a scalable, flexible, and reliable storage solution, which is easy to use on OpenShift thanks to OCS. The message-passing interface, or MPI, is a specification for message-passing libraries and MPI libraries are the de facto standard for writing parallel message-passing programs. Many HPC applications, including Gromax and specfam, are written so that they can be compiled to run across multiple nodes using MPI. The MPI operator enables the easy deployment of MPI programs on Kubernetes and OpenShift. This operator came out of the Kubeflow project and it was originally created for running distributed training for ML models. The operator defines the MPI job custom resource. MPI jobs specify the MPI run command, the hardware resources required for the worker pods, and the number of worker pods. Once an MPI job is created, the operator creates the worker and launcher pods and configures them to communicate using the MPI library installed in the containers. One of the things we'll discuss as we go through the performance results is using Maltis. Maltis is an open-source project that enables Kubernetes pods to attach to multiple networks. It is a container networking interface plugin that calls other CNI plugins. By default in OpenShift, pods use the OpenShift SDN plugin. For running MPI applications, we use Maltis to attach a second network interface to the pods using the Macvlan CNI plugin. This allows us to bypass the SDN and even use a separate physical network for the MPI traffic. For certain types of network traffic, the SDN can have some performance overhead due to encapsulation and open flow rules. In general, throughput is not diminished much, but latency can be affected. Another way to bypass the SDN is to give the worker pods access to the host's network namespace. However, this has security implications as it could be used to snoop on network activity of other pods on the same node if the pod were somehow compromised. Because of this, using Maltis is preferred, and then our tests gave the same performance improvement as using host network. Now I'll hand it over to Kevin for the next part of the talk. Thank you David. So in this section, I'm going to present how we run SpecFam on OpenShift and then how we perform the extensive benchmarking. So one naive way to get SpecFam to run in Kubernetes is to prepare a pod and clone the repository, build it and execute SpecFam. That's nice, but how can we run on multiple machines? Then we can try with the MPI operator using an MPI job. Here we specify the number of replicas of the pod we want to have with currently one worker per node. And again, we clone the repo, build it and ask MPI run to fork and forks of SpecFam. Okay, but what about SpecFam configuration? And how about avoiding to clone and build a one gigabyte repository in every node? And how can we retrieve the files generated by SpecFam? SpecFam run in two stages. First a measure, then the solver. How can we coordinate these two executions? So when we've got so many questions to answer, the Kubernetes solution is to build an operator instead of doing it manually. So this is what I'm going to present in this animation. So it's not exactly an operator that I built, but a go client that will run on the workstation instead of directly in the cluster. But the behavior is the same. So the first step of this work is to prepare a custom resource definition and a custom resource that will specify the properties of SpecFam execution. And then we start the execution of the operator. First step is to build the base image using an OS and cloning SpecFam repository. And then with the configuration from the custom resource, we build the measure and save the measure image, and we're ready to trigger the first parallel execution. This measure job will be connected with a shared volume where we'll be able to share the artifact of the measure execution. And then we can build the solver using the header file generated by the measure and save the solver image. And now we can get the benchmark to actually run using the shared volume and the mesh that is stored there. And this solver will also generate an output log that we will retrieve to the workstation for the benchmarking. So for this benchmarking, we've seen that with this YAML file, we can describe one execution of SpecFam where we provide the problem size, the number of processes to fork, the number of processes per node, and the network type. But we want to run many different problems on different machine counts and with different kind of network configuration. So if we look at the combination, we see that it grows very quickly and even more if we want to have the same result with bare metal. So again, the answer is that we need to automate it, this time not with an OpenShift operator, but with a Python script. From this tool I designed, I call it Matrix Benchmarking because it will benchmark all the different combinations of settings that I provide. So in the first execution, we'll get OpenShift with the software defined network, small problem size, two nodes. And then step by step, we will run all the possible combinations until we've benchmarked the full space. So the tool is split in two parts. First part is performing the benchmarking, running all the possible combinations and capturing the relevant output. So here the execution time. The benchmark ignores the result if they have already been recorded. That allows to stop and restart the complete benchmark at will. And the second part of the tool is a visualization interface based with the Python framework dash and plotly that allows interacting with the recorded data. And the framework allows the developers to focus on the coding of the custom visualization and the parsing and code selection will be reduced. In the following section, we'll see an example of this benchmark where we collected more than 180 measurements only for specfm. So before going in depth in the result, let me summarize where we are now. So we've got an OpenShift cluster with 32 worker nodes that can be converted to bare metal to reuse the same hardware. And we have three different network configuration. The default software defined network which is shared with the rest of OpenShift but secured. We've got the host network flag which also uses the shared network but without any security. And we've got multus that allows us to use the dedicated network. And then we've got the two scientific applications specfm and gromax that can run on the OpenShift and bare metal clusters. So let me present the benchmarking results and I'll start with some micro benchmark figures. So we wanted to understand the different performance of the three networks. So we run OpenMPI micro benchmark that measures the latency and bandwidth of MPI peer-to-peer operations. And in the graph, we see that the software defined network has poor performance in terms of latency and bandwidth whereas multus, bare metal and host network are exactly the same results. And the software defined network poor performance are expected because of the different encapsulation layers for security and routing. Then we looked at MPI collective operations and again we see SDN that is clearly above the rest but for small message sizes we see that the network don't really matter. The collective primitives were executed with 20 nodes involved. Now let me present specfm results and first we'll look at a fixed problem size, 128 necks. In the time graph we see that the benchmark took between 1 hour and a bit less than 10 minutes to execute. And if we look at the time comparison between bare metal and OpenShift we see that the overhead is very limited up to 16 nodes less than 6% and then for 32 nodes OpenShift overhead takes over because the problem to solve is not big enough for the 32 node cluster. And we can also observe that the network type has almost no effect for specfm results and this is thanks to its good computation over communication overlap that is quite advanced. Now if we take a growing problem sizes we see that the time was between a few minutes to more than 3 hours. And if we look at the time comparison we see that for all the problem sizes we are below 4% of overhead. Looking at the efficiency graph we see that we are always very close from bare metal and we're even able to obtain the super linear scale up capabilities of specfm. And I will let David continue with Gromax performance and results. Now I will go over some of the benchmarking results we collected from Gromax. The graph on the left shows the average and standard deviation of 5 or more runs of Gromax at different node counts with various network settings and also bare metal in blue. The performance measured for the hours of computation to simulate 1 nanosecond so lower is better. As we can see the result using the SDN for all of the network communications is the outlier here. To get good performance on more than 2 nodes bypassing the SDN appears to be crucial and using Maltis to do this gives performance similar to bare metal or host network without the security implications of host network. In the graph on the right we compare the benchmark time as a percent compared to bare metal of two configurations. The green line here reflects the performance of Gromax when some cluster infrastructure pods are running on the same nodes as Gromax. This includes pods such as monitoring, the cluster ingress controller and logging. The red line shows the performance of Gromax while isolating these infrastructure pods to two specific infrastructure nodes to prevent these pods from using any CPU cycles during the benchmark run which improves performance and reduces variability. In both of these cases Maltis is being used for the networking. Lastly we show a graph of strong scaling of Gromax. Using Maltis or host network we get strong scaling nearly on par with bare metal. So in conclusion these results show that HPC applications and OpenShift are two great things that can go well together. For some workloads like Gromax it's critical for performance that we take into account the SDN overhead. Fortunately Maltis can be used to bypass the SDN and even use a separate high-speed network for the MPI traffic. Additionally isolating some of the cluster infrastructure pods can help to improve and stabilize the performance further. In our work on the PSAP team at Red Hat we intend to continually improve OpenShift and Kubernetes for efficiently deploying HPC and AIML workloads. Our team is working on maintaining and improving several operators to this end including the NVIDIA GPU operator and the special resource operator. If you're interested in seeing more information about this HPC POC please check out our blogs on blog.openshift.com


All right, let's get started. So I'd like to start off with a question for the room. First, how many people here are solo developers? Fair amount. How many people either work in a firm or run a firm that has five, six, 10, 15? Okay, and how many people are in-house? Okay, a couple of in-house people, all right. Okay, cool. So especially for the solo people, but also the firms, this one applied to in-house people. How many leads, business leads did you get last week for your business? Did you get one last week? One or more? Okay, a couple of people. Did anybody get 10 or more? A couple of people. Okay, anybody get more than 100 last week? You should be getting more than 100 every week, at least on a good week. But you should be able to get more than 100 leads. Think about what it would do for your business if you were getting 100 leads a week. What would that allow you to do? You'd probably have to create a file maker database to keep track of them, right? It would allow you to say no to bad customers. It would allow you to not worry about cash flow issues or you'd be able to predict when a cash flow issue was coming. It would give you a gas pedal to step on if you needed to increase your revenue for some reason. It would allow you to get rid of those clients that you would really like to scrape off your shoe that have been around for a long time. It would allow you to do a lot of really powerful things for your business that people tend to not even consider because they laugh at the idea of getting 100 leads a week. It is pretty rare, I'll grant you that. And the way that you can do that is a marketing technique called positioning that we're going to talk about today. So what is positioning? Positioning really is just a way to make your business or product or service more memorable. That's all it is. It's nothing really fundamentally different about your business if you're using positioning. It's really just how you talk about your business on your website, in your emails, in your content marketing, that kind of thing. It doesn't really have to be a big deal. And the exercise that I like to have people use to get started with this is this kind of mad libs format. So if you guys wouldn't mind, everybody's got tables here, this shouldn't be too hard. I love it if you could actually take out a piece of paper and a pencil and fill this out for yourself or for your business, or if you really can't do that for a product or service that you offer. But try and do it for your business. I'll give you about a minute to do that, which is nowhere near enough time, but just to get the exercise going. And while you're doing that, I'll tell you a couple of things about it. You, this isn't a marketing thing. This isn't, you don't need to be have flashy copy or make it sound sexy or anything. This is the kind of thing you'd write on a sticky note and have next to your bathroom mirror. This is a, this becomes like a lighthouse or guiding principle or guiding statement for how you're going to talk about your business that day or every day.  But who do you help? Who's your ideal client? I know you can help anyone. I know everybody needs file maker. But who's the ideal? And what's the most expensive problem that that person has that that specific target market has? What is the most painful problem in their mind? Not yours. You know how dysfunctional they all are. But what problem do they think is the biggest one? What opportunity do they think is the biggest opportunity? And then finally, how are you different from the people sitting next to you? Why hire one person versus another? What's unique about you that makes you a compelling option? And if you can complete this, I will be impressed because most people completely melt down when they're trying to do this. I've had people cry because it gets, cuts right to the core of your identity because we're all creative people. And to do something like this, to pigeonhole yourself like this feels like prison. It feels like I wouldn't even do this anymore if I had to fill that out. But remember, this is how you talk about your business. This isn't what your business does. It doesn't change the way you build solutions. It might turn into that. You might find that, wow, now that I've got all these leads, I can really focus in on a particular area that I love. But it doesn't necessitate that.  You see versions of this. I'm a software consultant who helps businesses with elegant solutions to complex problems. I have a passion for building high quality systems. Well, no kidding, who doesn't? We're all in this because we like solving problems. This is meaningless. This is you trying to be generic enough to turn no one off, but you're turning no one on. That's the problem. If this isn't patently absurd to you as you read this, and it's probably not because we're all, because as software developers, we all know the benefits of robust systems or high quality systems. We can connect those dots, but the people that we need to connect with cannot connect those dots on their own. They are not going to. You're putting the work on them to understand what you can do for them that's beneficial. I created an example that's outside of our industry where I just changed a couple of words. It still makes sense. It's still pretty. You could imagine a committee or a board of directors coming up with this steamer, but if you ran into this guy at a barbecue and he communicated this information to you in a more conversational way, but with no more specificity, would it immediately occur to you that you should hire him to put an addition on your house? Or would it immediately occur to you to have him subdivide your office? Would you immediately think of anybody that you should introduce this person to? Or would you just sort of say, oh, that sounds nice. I'm glad you're passionate about your job. This is basically saying, I'm really into my thing. That's basically what it says. I'm really into my thing. And that's great, but it's not memorable. Everyone's into their thing. Here's a better example. A Rails developer who helps dentists with patients who don't show up and then a differentiator. Most important thing is if you meet me at a barbecue and you say, oh, nice to meet you. What do you do? And you say, oh, I help dentists with no shows. No way. My brother's a dentist. He's always complaining about no shows. See the difference? Yeah, he says every time somebody doesn't show up, he loses like 100 bucks. Happens to 50% of his appointments. It's mostly older people scheduling way in advance. Oh, that's interesting because I use SMS for the reminders so it doesn't require a smartphone since that generation typically is more likely or less likely to have a smartphone. Oh, I should really put you guys in touch. You see the difference between that and the previous ones? I'm positioning myself as a specialist at a particular thing for a particular group. Here's another example. Web designer helps online retailers with high card abandonment rates.  Conversion rates are horrible on mobile. Oh, what do you know? I know just how to fix that. I could have said, oh, I'm a web developer. I'm a geek. I'm a file maker developer. The conversation kind of ends there. It's like saying I'm a teacher or a lawyer. Everyone either knows what that is or you put it in a way that they don't know what it is and they just don't know what to ask you next. So what is that? I used to say, oh, I'm a mobile consultant. So you make apps? You make apps? No, I don't make apps. How many people here, when asked the question, what do you do, which is a common question when you meet someone, you go, oh, what do you do? How many people change what they say depending on who they're talking to? Show of hands. That's a problem. That's not good. That's a missed opportunity. You should say what your discipline is. You should say what you are. And if they don't understand what that is, they'll ask. And now you have a conversation going and you can talk about these other things that are farther down the positioning statement. So here's the pattern. Here are the blanks plugged in, the prototype if you will. So I'm a discipline who helps target market with expensive problem. Unlike my competitors, I have some unique difference. And the longer I do this, the more I think the only part that really matters is this. Because what you call yourself is not that relevant. It doesn't need to be that relevant. And what's super cool about this, especially for file maker, for file maker people, is that if you just focus on dentists who have no shows, they don't care if you use FileMaker or iOS or whatever. So what does this do? This opens up your market outside of people who already have FileMaker installed. So if you're advertising yourself as a FileMaker developer, odds are high that if you're on the FileMaker site, if you're listed on there, if you're advertising yourself as a FileMaker developer, you are limiting yourself to buyers who know they have FileMaker. You guys are kinda lucky because most buyers know they have FileMaker. So your clients know they have FileMaker. But if you are a MySQL developer, buyers don't know they have MySQL running in 15 places in the enterprise. So it's really hard.  It's similar to something like Shopify or Salesforce. People know they're using these things. So that's pretty good. But still, you can branch out of that. You can go outside of that world and actually infect the rest of the world with FileMaker. That's what we all want. Okay, so probably you're already feeling this. You're probably, there's a positioning guru, good friend of mine named Philip Morgan, and he calls the reaction that some of you are having right now, the positioning fear reflex. Where you're saying to yourself, oh, this makes sense, but I'm different. I'm a special snowflake and this doesn't apply to me. I don't have to do this. But if you didn't get a lead last week, you need to do this. You don't need to. You can do whatever you want. But this is something that you can do to change that relatively quickly. Okay, so there's three fears, three specific reflex fears that you get from this. So I'm gonna try and address them one by one so people can hopefully drink the Kool-Aid a little bit. The first one is I won't be able to find enough clients. And so this doesn't even pass the SNF test, but I've noticed that the lizard brain throws this one up first. And it's kind of, I think the rationale kind of goes like this. It's like in all of 2015, I got 10 leads. And I was advertising through the whole wide world on my website. And if I focused down on just dentists, or one tenth or 100th of a percentage of the whole world, then I'll get 100th of the percentage of leads as if those things are directly correlated. But in fact, they're inversely correlated. If your audience is everyone, you're selling to no one.  Like this is definitely going to put me out of business if I do this. And it is the exact opposite. What happens is the exact opposite. So just out of curiosity, earlier I did a, I just did a Google search for dentists near me. And within walking distance of this stage, there are 10 dentists. Then I searched my hometown, which is a small city called Providence, Rhode Island, and there were 10 pages of search results just for Providence of dentists. In the United States, there are 100,000 dentists. If you captured a 10th of a point of market share, you would be slammed for the rest of your life. You would just be so busy you wouldn't know what to do with yourself. You probably have to focus down on like orthodontists because dentists would be too big or general dentistry. So this is not an argument. I'm curious, when I was doing a lot of development, if I had five clients in a year, no employees, just me, if I had five clients in a year, that was a busy year. So if I can get a teeny slice of the dentist market and you figure you get recurring, these people always come back a couple years later, something changes, new version of server comes out and needs, whatever. And you get five, 10 new customers a year, you can be throwing away the bottom 20% of them every year and never have a problem. Okay, so next few years, I'll get bored. I'm creative, I like solving different kinds of problems. If I focus down on just no shows for dentists, I'll go insane. It'll be so boring, I won't know what to do with myself. So I'm gonna go back to the positioning, it's how you talk about your business, it's not how you do your business, it's not how your work happens. This is what gets leads. Once you have the leads, you can broaden out into other problems for your dentist clients. You can find other things once the no show thing is solved. I'm like, this guy solved my problem, what else can you do for me? Now that we've got FileMaker installed, what can we do next? Well, I noticed that, et cetera, et cetera. So you can keep doing other things, but if you use the most expensive problem as you're positioning, it's gonna pull people to you very quickly, new people who've never met you before. Another thing is that going deep in a specialty, for a target market, special expensive problem, has the same surface area as going wide or broad. But going broad is shallow. So you get this, so that feeling of things being different all the time, always being on the learning curve, always leveling up, it's a sugar rush kind of thing. So one week you get a plastics manufacturer and then the next week your print company comes back and then your dentist needs some work and now you get an animal hospital needs you to build something. And every time it's kind of fun because you've got new kind of people and they've got new things and there's dogs at this one and you get free braces for your kid at the other one and it's kind of fun, but you never get good at it. You never get good at really helping one of those people. You can do the generic stuff, the jack of all trades stuff. You might get, you're probably getting great at your techniques. Back when I, last time I did FileMaker was version nine. So back then it was like portal tricks. We just wanna learn portal tricks all day long or template, we'll fight about how we're gonna organize the relationship graph. That's probably all old news to you guys, but you're probably great at your tool, at what you do, but you never get great at helping a particular kind of client. You can go really deep there and it's weird because it seems like this, you're just looking at this little opening, like a rabbit hole, but you get in there and it's like this giant underground cavern. There's so much fun stuff down there, I promise you.  When you watch like Ted talks, there's like never a generalist up there. There are almost all specialists, like world-class specialists in a very particular thing and they don't look bored to me. They look like they're having a pretty good time. Okay, so third and final complaint or fear, I should say. Third and final fear is that you might pick the wrong thing and this one is actually rational. This could happen, you could pick the wrong thing. I see people do it all the time. The beauty of that is that you can just change it. There's no, there's not a tattoo that you're getting on your forehead.  And even if you don't, you know, ah, I don't really wanna touch my website yet. We've got like just a little bit of SEO juice happening and we don't wanna mess that up or we don't want our existing customers who are not dentists to come to our site and be like, oh, he's only focusing on dentists now. Are we in trouble? Should we call? You don't need to change your website today. There's a bunch of things you can do to test a new positioning statement. You can do outreach to people in the market. You can just call them on the phone and say, hey, I'm thinking about refocusing my business on just helping you guys, your kind of business. You know, we spend five minutes talking about the things that are driving you crazy. Or maybe if you look back over your long history of clients that you've had over the years, maybe you just loved a particular slice of them. You know, like printing companies, for example, or ski resorts, or plastics manufacturer, whatever your thing is. Maybe there was one that you just, the kind of people in the industry were your type of people. You really got along with them. You've been social with them, had dinner with them. Like maybe that's an indication. What if all of your clients were like that? Or what if most of your clients were like that? You know, I'm painting with a broad brush because people are gonna be different in every industry, of course.  You know, I'm sure you're gonna have a different kind of social interaction with those two kinds of people. Regardless, you can test your hypothesis without, you know, betting the farm on the hypothesis. So you don't have to redo your entire website day one. You don't have to go cold turkey. You can just say, hey, thinking about doing this, bounce the idea of a few people through your network. Doesn't have to be public, public. And see how it goes. Probably what will happen, what happens to most of my coaching students is they immediately find out the expensive problem that they think dentists have is not. The dentist's like, yeah, we do have that, but we don't care, we'll just hire an extra person. What's really driving me crazy is this. Almost always happens that your hypothesis is wrong. So it's okay to pick the wrong thing is the answer to this one because you can just change it. So if you can get past the fears and actually do some positioning and start to work that into whether it's your website, whether it's your content marketing, maybe you break off, you buy a different domain for a specific thing. You're buying the dentists-no-shows-be-gone.com. And you say, okay, I'm gonna create a solution for this because I called a few of my dentist friends and they said, yeah, that's a huge problem and if you could solve that, it would be amazing. So you go, all right, I'm gonna test this. And you do a sales page over there on some, you don't even put your name on it. It's just this thing, here's the contact information and just maybe do some pay-per-click ads, maybe put on some webinars and email people directly and say, hey, I'm doing this free webinar about this problem, got a solution for it, I'd love to have you there. So you can do things like that and just do sort of like a test case on a particular product or service instead of kind of trying to rebrand your whole firm or your whole, whether it's solo or whatever. And I've seen this work on a number of occasions and typically what happens is immediately it starts to work and it ends up being the whole business and they sort of spin down the old business and the new one just becomes the whole thing and so it kind of just, a new tree grows in the old one. Shrinks, I guess, trees don't really shrink, do they? Bad analogy. So once you have created something memorable like saying I help dentists with no shows, it gives tools to your friends and family and colleagues to help you. Cause right now, I mean think about it. How many, I don't wanna keep asking for show of hands but just think, how many people's parents or spouse or friends don't really understand what you do. They can't really describe it. They're not sure what it is. Yeah, so yeah, a lot of people. So if you, if they could, outside Salesforce, like all of a sudden, like of course your spouse and parents and friends and colleagues, they all wanna help you but they don't know how to help you. So it's not uncommon for me to get an email from someone who says, hey, you know, I'm in-house. We've worked together before.  I'm in-house, we've worked together before. You know my work, I'm going solo. If anybody needs web design, let me know. And I'm like, you gotta give me more than that.  What is your specialty? What are you good at? Because I don't, as soon as, if I don't have that, I can't scroll through the list of 20,000 people I'm connected with online and just like click. Oh, you know who I should interview, introduce Rob to? I just can't, you can't do it. It's overwhelming. You don't even, it doesn't trigger that response. I call it a Rolodex moment. But if you say, hey, do you know any dentist? I'm gonna do web design for dentists. I'm like, well, everybody knows a dentist, right? So that's a good one. But yeah, yeah, I know a dentist and I know you're awesome. So I can introduce you to a dentist. I've got my dentist, I've got my son's dentist.  I'd be happy to introduce you to all of them. Like I immediately think that, like you'll immediately think that, right? Because you know the person, you trust them, you know, they know good work and you've got this connection, like ready and waiting for them. So of course it doesn't always have to be, you know, I say word of mouth. Of course that can be social media, it can be over the phone, over email, whatever. Or in person, of course, but. And there's one particular story that I like to tell. I had a student who wanted to specialize in something I'd never heard of, which is private college counseling. He wanted to do marketing support for private college counselors. Never heard of that? I said, I don't know, do you know any? And he's like, yeah, I had one get me into Brown. I'm like, what is it? I was like, it's basically a consultant who gets you into a good school for less money than you would have. So you get into a better school and you pay less than you would have. So really obvious value proposition. Turns out they make quite a bit of money. It's a good job to have. But they have a tendency, they have a hard time, it's very labor intensive for them to get new students. So he was gonna help them get new students. And I said to him, and one of the things I said was, okay, so he came up with a name for it. And he's like, yeah, I just said, I help private college counselors. And so he's out of the woodwork. He's like, his roommate's mom.  I should introduce you guys.  And he said, oh, I help private college counselors. Oh, no way. Like the cab driver introduced him to someone. And I've had more than one person say to me, it's like magic. Like when you finally settle on one of these that works, it's just magical. People just start introducing you to people because we're all hyper connected now. And if you give them the tools, they will help you. You just gotta give them a little bit of help there. The next thing is that if you pick a really focused target market, it's obvious where they hang out. If you were gonna pick dentists, you'd be like, well, it's easy for me to look and see where dentists hang out online, what they read, what blogs they follow, what mailing lists they're signed up to, what podcasts they listen to. All of a sudden it becomes obvious how to put yourself in front of your ideal buyers. It's different for every industry. Like I've got some people working in medical and doctors pretty much don't hang out for business reasons online. They'll hang out on Facebook or whatever, but they're not in a business mindset when they're online. Just doesn't seem to happen. It's more like medical journals and things like that. But if you have some kind of service for, I don't know, like marketing professionals, they're online all the time. So if you were gonna make a database so that marketing professionals could organize their campaigns more easily or integrate with drip or whatever, it would be so easy to put yourself in front of them. It would be so easy if you were gonna pay to actually advertise somewhere, which I think is, unless it's just small, small investments, I think is not even worth it. You can just go do it. You know right where they are. You could make a list of 20 people, ideal clients of yours, and just stalk those people and email them and send your value proposition to them. And not companies. I mean actual people. Like recently I've been focused on credit unions. My main business, I do mobile strategy and I'm focusing on credit unions right now. I've been doing credit union work for about the last year. That's like three Google searches and I had the contact information for the president or CEO of the top 100 credit unions. So I just started emailing them. It's so easy. And in the email, it's very specific. I can say I've been working with these other credit unions, these are the results that I provided. I don't know if it's a good fit, but would you wanna spend five minutes on the phone to find out? It's unreal. It's so different than the sort of, just casting that global net for, oh I can make a turkey timer with FileMaker, so maybe I should call William Sonoma. So the last benefit is that as you're generating content, so probably most people are blogging or at least tweeting or something. As you do this over time and you do engage in marketing activities after you've settled on a positioning statement that you're reasonably comfortable with, you're gonna stick with it for six months or a year and see how it goes. When you're doing marketing you're gonna be writing ads, you're gonna be perhaps writing ads, you're perhaps writing emails, email campaigns, you might be blogging, writing articles, writing articles for physical magazines, you might be doing all those things. Before I was, when I was sitting in those chairs, I was just a FileMaker developer. I was like, I just did FileMaker development, it didn't occur to me to specialize in any of these ways. And so when I would write stuff, it would be whatever interested me that day that caused me to write. So on one day I'd have an article about this, another day I'd have an article about that just like random articles all over the place. And if I look back on it, it makes no sense whatsoever. There's no cohesive thread whatsoever. But once you have a defined positioning and you're disciplined in not doing those sort of spazzy post about anything that I'm interested in kind of thing and you keep posting things that are interesting to your buyer, the people you're meant to serve, the people who you're trying to help, if you keep writing articles for them about how they can make their lives better, whatever it is with FileMaker, whatever, all of a sudden in a surprisingly short time, six months or even three months, you're gonna have a mast, a sizable body of work that is cohesive, that you could easily turn into a course or a book. But all of a sudden it has this like, it creates its own sort of gravitational pull. And so you just, it's like wash, rinse, repeat.  You keep going deeper, you keep going deeper, you keep going deeper. All of a sudden you're actually an expert. Like before you know it, you're actually an expert. So this is, and the content, I suppose it depends, some technical content has a short shelf life, but if you keep it focused on solving business problems, even if you're using a technical tool, if you're focused on solving business problems, content is gonna remain relevant for a very long time and not go out of date every time a new version of a piece of software comes out. So that's a huge marketing asset, that's a very big deal. So I feel like most people that I talk to, I know most people that I talk to are just moving one inch in every direction and they're just not making any progress. And maybe you don't feel like that.  Like I feel like I'm doing a lot of work and I know my clients are happy and I know I'm getting better at development the way that I create my solutions, but is my business getting better? Is my business making progress? So that's the question. All right, so I have to make an announcement for FileMaker once we make a couple of announcements and I'm gonna take questions too. Before I do that, I wanted to let you know that for more information I created this big long landing page of things that will be of interest to you at expensiveproblem.com slash devcon. So you can check that out. There's probably like 25 hours of video and audio on there that you can check out. And I have to switch over to do some announcements before we go. There's plenty of time for questions. I can see that. Sorry, I can't read my notes here. All right, so FileMaker asks everybody to announce that if you filled out more than one survey before 5.30 yesterday, you probably deleted the first one by filling out the second one. Everybody already hear this? Yeah, some people already heard this. So if you did fill out multiple surveys before 5.30 yesterday, they wanted me to ask you to fill them out again, apologies. And also, they wanted me to point out that they're going to be publishing a list of blogs about DevCon at some really long URL that I tweeted about so I wouldn't have to read it to you. But it's on the community site and you can go into my Twitter feed or whatever. The last link I posted is the link to the blog post. All right, so I hope people have questions. I would love to take questions. Sure, yeah, absolutely. That's a book I've recently published. It's about, okay, so the thread is once you start doing this, once you start having a lot of leads and you're comfortable, your pipeline is relatively full, you don't have this feast famine cycle where the summer's kind of slow and then you're slammed in the fall and then everybody goes away over the holidays and like the winter's dead and you're like on this up and down of cash flow roller coaster, once that's gone and you don't feel the need to say yes to every single lead that falls into your inbox, you're gonna have to start saying no to a lot of people and you can actually say no or you can just start pricing your services higher and higher. And this is a really tricky thing to do. So once you've positioned yourself well and you have a dense pipeline of leads, it's difficult to capture that value when you're billing by the hour because there's this weird psychology that seems universal in the US at least that after a certain point, a person's hour is not worth more money. I don't care if you're, I don't care what you're doing. If you bill yourself by the hour and you're charging like 400 bucks, that's gonna really raise eyebrows.  You can't do it with hourly billing. It's impossible. You'd either have to work twice as much which would almost immediately lead to diminishing returns because you would like flip out. You can charge twice as much which for all of your existing clients they'll just flatly refuse that because you've trained them that your time is worth 150 bucks an hour and now suddenly it's 300 bucks an hour for the same thing. Like what changed? I mean, I'm sure everybody hits common thing. Like clients, they might not freak out but I know that most people fear that their clients will freak out and only raise their hourly rates like 10 bucks a year at the most. Basically keep pace with inflation and they feel really uncomfortable sending out the email and will grandfather in you guys it's okay? The fact that everybody's organizing there, it just makes it really hard. At a certain point people are gonna be like $2,000 an hour. I don't think so. And you just get flatly rejected before anybody has a chance to find out but it's only gonna take me one hour. Like they don't care because they wanna compare apples to apples and other people don't charge that. Other people don't charge $2,000 an hour. And so they don't care. You just never get to that point. It's like a bizarre reaction. So you can't just say to these people like oh it's $2,000 an hour for file maker work or even 500 I don't think anybody's charging 500 bucks an hour for file maker work. So what do you do? So when I was at the Moira Group we had a conversation, a situation like it was like I can't understand why this is so weird. Like I can't understand why like our best employees are our least profitable. Doesn't make sense, right? And then I was like oh it's because we're charging by the hour. Like if we were charging in a different way our best employees would be killing it in terms of profit margin and our junior employees who are still getting educated would be expensive to educate but still they would be useful and eventually graduate into senior developers. And if you take away the hourly billing thing it's all of a sudden you can say this instead of saying to someone in answer to the first question they always ask which is what's your rate? Instead of saying oh 300 bucks an hour and hearing them freak out you can say I don't have an hourly rate. Is that okay? Can we just talk about the project first and then I'll just give you a flat price and you don't have to worry. I'll just tell you how much it's gonna be. So as the project goes on if it takes longer it's not gonna cost you anymore. And they'll be like yeah let's talk about that. They love it. Because you're taking on all the risk. But it disconnects, it gets around that sort of subconscious reaction to a really high hourly rate and it allows you to charge a very fair price and end up with an effective hourly rate that's 500, 1,000, $2,000 an hour. So that's kind of a high level there. Happy to talk about really any of that. Do you have a follow-up question? Yeah it's a big topic. It's a whole talk unto itself. Yes, okay, yeah. That's, I know what you mean. So I bought, my main website is my name. It's kind of hard to reposition that. You've got all these links pointing to it for a particular thing and there's really no one doing that. So when I have a new thing I started a new website and there wasn't, it was different enough that I didn't really care about the, there's a very slight overlap in the addressable market. So in other words, my buyers were mostly not the same. So I didn't really feel like I was giving all that much up by starting a new site from scratch, like out of nowhere. So I mean that's one approach. But you know, and I purposely minimized the use of my personal name on the new website for that exact reason because I didn't wanna confuse people. Because once, like I'm already in people's heads for a bunch of things. And to then try to become known for another thing is gonna mess people up over here. It's gonna blur it over there. It doesn't sound like exactly the same thing you're talking about because it sounds like the original thing is kind of like not viable anymore. Yeah, okay. Gotcha. I think Flash developers know how you feel. So it happens. It happens. I mean, start from scratch. It's start new domain name, new name.  I just started a new website and just started attracting new, to completely different kind of customer from dead scratch, totally from scratch. And now in, I started doing it in May of last year and by May of the, you know, in the first one year I was already, it was already obvious to me that it was gonna become my main business probably by the end of the next year. So it'll totally eclipse a very successful business from scratch.  I wrote a book at the perfect time. I wrote an iPhone book like right after the iPhone came out and it was just like magic. Just, it just, and from mobile web too. So it was like a mobile web book for the iPhone in like 2009. So it was like the first one, it was for O'Reilly and I just, just fell in a pile of money. I was just like, whoops, I'm known for this thing just totally by accident.  Like if you go to my main website, JonathanStark.com, the positioning's not that great because it doesn't need to be because I get tons of leads. You know what I mean? I have plenty of business from that site.  Their positioning's horrible. Like in terms of their headlines and all that stuff but it doesn't matter because they already did it. Like they're already well known. So this position, I should have said this, I'm glad it came up in the, when you're doing positioning, I guess it's implied, if you're not getting enough leads to really be picky about who you work with, it's kind of like you're at the start. You might have been in business for 10 years but it's kind of like you're still at the start. Once you're past that, you can go way up and blur your focus way, way, way more because all of a sudden you're gonna have your client list and other clients that are, if you get Coke and Nike and Apple on your client list, then it's gonna start to attract other people who do those things and you don't have to be focused just on sneaker companies, you know what I mean? So like the positioning thing is like an initial focus to start a fire and if you keep adding fuel to the fire, it gets really big and you don't have to mess with it anymore.  So it's like a magnifying glass at the very beginning. If I had like kindling here, I don't care how hot it is outside, it's never gonna catch on fire unless I add some focus to it and then poof, now I have a flame and I can do other stuff. So this is kind of like the magnifying glass stage. Did I answer your question or did I just talk about myself? Yeah, start fresh, I could have just said that. Yeah, there's another hand. Oh, sorry, Google ads, what? Do I have an opinion about Google ads? Paper click in general, you mean? Yeah. Yeah, I think they are beneficial, yeah. So I use them for a number of things. So if I'm testing a product title, for example, I will, here's an exact example. So I was thinking about writing this book, wasn't sure I was gonna call it. So I did a bunch of webinars that were around the topics and I advertised the webinars on Facebook. And I used inside of Facebook for each different webinar, it was like one a month for four months. I did like eight or 10 versions of each ad. Same exact ads, same exact pictures, same exact everything, different headline. And I saw how each one performed and from that eventually was a, it actually wasn't for this book, it was for something else. But through that I could see which thing clicked. Like I didn't really care which headline it was. I came up with 10 headlines that made sense to me and in every case, every one of those four cases, there was one clear winner, there was a distant second and then a bunch of garbage that got no nothing. And usually the one that I thought was the coolest one was in the garbage. Because you don't really care what it says on your website, right? You just want your website to work. You just want people, you just want to connect with the people that you can help the most. So sometimes you have to use different language that maybe makes sense to you because they use the wrong word for your stuff. So use their word, not yours. So I'm a big fan of them used in sort of a surgical way. So I use them for research. I'll use them to drive traffic to a product launch or something. But I don't do it for consulting services at all. I'll do it to get somebody to like join a webinar or jump on my mailing list or something. But I don't try and sell, sell in ads. It's too much to ask, I think. Any other questions? Anything about hourly billing, value-based fees? No, yes, sir. Sorry, sorry. Say more about getting rid of the bottom 20%? Yeah, okay. So, ethically? Okay. Be nice about it. I mean, think about it. Sure, sure. Well, I mean, I think, yeah. So, man, so many stories. If you are at capacity and you've got, you know who your bad customers are. They're the ones that make your customer service people cry or they just call you on Thanksgiving. I don't mean bad in the sense that they're outside of your new focus. I mean, they're bad. Like you shouldn't have taken them on. They're bad payers. They're just terrible. Unrealistic, demanding, cranky, right? And when you need, when mortgage is coming or payroll is coming, you took them on. So if you wanted to get into an ethical thing, that's where the problem is. Problem isn't firing them later, I don't think. Probably shouldn't use the word firing. It probably sounds too harsh. But you just say, look, you know, this is, I found someone to, this isn't working out for me anymore. I can't make a business case for continuing on this project. I've got a list of three people that I can recommend to take it over. I think they're all great. They're all comparably priced or less expensive. Getting ready to raise my fees. Or there's another way to do it is just raise your fees and they'll leave. But, you know, if you really want to be proactive about it. I mean, yeah, I mean, if I was gonna say there was an ethical issue, it's taking them on in the first place. But hey, sometimes things just don't work out. But thanks for the question. Yes? Yeah. Right, yeah.    And if the project isn't working out for them anymore, they're not gonna have an ethical problem saying, hey, it's not working out for us anymore. So, is it uncomfortable a little bit? Yeah, it's a little uncomfortable. But if you continue with that, it's just, stress is a cost. Like in the kind of business we do, the number one cost is time, which a lot of people don't even think about as a cost. It's just like, they think, oh, well, that's my product, but no, it's a cost. And stress is a major cost. So like, if I'm pricing something, if I'm doing a value price for a project, somebody says, hey, I wanna do this project, we've got these problems that we need solved. Here you're the guy that can help with that. So I'll go in, I'll be like, cool, cool, tell me all about it. And they'll brain-dump all of this self-prescribed diagnosis that we want you to come in and do exactly this and this and this and these are the deliverables and we've got an RFP we're working on. And it'll be like, awesome, thank you for all that information, but let's back up for a second and see why you even wanna do this. Like why is this something you wanna do? And they'll say, well, because if we don't do this, our competitors are gonna eat our lunch. Well, why do you say that? Well, because we're trying this thing and I'm like, well, why don't you just use something off the shelf?  Or why don't you outsource this?  And then they're like, okay, those won't work for these reasons. We picked you, we called you specifically for these reasons. So now they're convincing themselves to hire me, which is nice. And when you get to the end of it, I'm like, okay, I've got all the information I need to have a rough idea of how much of a benefit this is for them. So what's the rough value in their mind of this thing? And it doesn't have to be directly financial. It could be stress on their side too. It could be removing stress from their organization or risk or some other morale. It could be improving morale.  And how much of a pain are these guys gonna be?   Because if they're awful, that has, you know, the kind of work we do that has repercussions throughout your entire life, not just work stuff. So I would say, oh, okay, I'm gonna set my price somewhere in between my cost, so time plus stress, plus any actual air travel or something like that, actual costs. And they've got this value over here that's gonna be a million dollars a year for sure. Then I'll price it somewhere in the middle. So if you are, yes? Meaning, yep. I'm confused in their words. Okay. Oh. Right, yeah. Yeah, that's terrible. Don't do it. I usually set it at 10%. 10% of the annualized value. 20 grand. Yeah. I'll send you an invoice. No, I would, as a rule of thumb, I say 10th of, especially when it's really, when it was actually them saying a dollar amount, you could probably go to a fifth. Usually it's not that clear. So you could say, no, but you've been working for them hourly though. Yeah, so that's gonna be tricky. So here's what you do in that case. So in that case, do your normal way that you do an estimate and say it'll be, would you say 10,000 maybe? Okay, so it'd be 10,000 bucks. That's an estimate. We're gonna track our hours as we have been doing yada yada yada. But we've been getting to know each other a little bit better and I feel comfortable taking the risk of the sort of elasticity of the estimate. And I don't wanna put the estimation risk on you anymore. I feel comfortable enough now to give you a fixed price for this. That's 18,000. So it'll be 10,000 maybe, or it'll be 18,000 for sure. And you put those, there's just two options on the thing and see which one they pick. And if the upside is so high for them, they'd be crazy not to spend eight grand for the insurance policy that the project actually takes twice as long. Which half of all software projects take twice as long as they're supposed to? Almost half. So it would be smart for them to buy an insurance policy that puts the risk on you. And now all of a sudden you're working in a way that's like, guys, we gotta get this done. Because you don't have the safety net anymore. But you said they were a good client and good enough. We'll see, they might be better. But that's what I would do. Yeah, just add a fixed price to the proposal as an option and see if they go for it. Yes. I can't answer that very well. So the question is if you create a vertical solution for somebody who can't really afford it but you retain the rights and license it to them and resell it later. That's not my gig. I know of people who have done okay with that. So it's just not my thing. So when I think of a product, it's more of like something that doesn't need to be debugged. Like a video or a PDF or a book or a product I service, which is a very interesting thing where you do a sort of high touch delivery. But what you're selling is a very fixed scope, fixed price thing that could be applicable to lots of different bakeries. But the typically the artifact or the physical deliverable wouldn't be like a software solution. It would be more like, I'll do a website audit, performance audit or I'll do a mobile retro, excuse me, mobile retrofit tear down where I would go through people's websites and I would say I'm not gonna do the work, but for a grand I'll come in and go through your website and tell your developers the 10 things that they can do in probably one day to make this site twice as good on mobile. So if you imagine, that's an interesting area that we didn't really get into but it's been my experience that most people who are experienced software developers actually have some skills that they give away for free now that they could be selling that are way higher profit than development. So like when you're doing development, it's very good revenue because it takes a long time but your costs are extremely high. So anybody that farms out all of their development work knows what I mean because you're only getting like 10% or 15 or maybe even 20% on a good day, you're getting that over the cost of the actual development. But you did this thing for free at the beginning probably where you scoped out the whole project. That's worth a couple grand just for that, that you're not even charging for and you're trying to make it back on the implementation. The implementation is good for cash flow, it's good for stability, but it's not that profitable. The really profitable stuff is at the beginning of the relationship and people usually don't charge for it but you could start charging for it and use that would be a repeatable sort of scale. It sounds like you're looking for scale. So if you're looking for scale, you can do that with more like access to your expertise, road mapping, implement, not implementation but like a, if you're a designer you could do a style guide for a website but not build the website. You could do an architecture diagram for somebody who's trying to create a distributed system but not build it, maybe build it but that's a separate thing but you can charge for those first things and that allows you to scale it, not be reinventing the wheel every time with custom development work but you're not actually selling a shrink wrap solution either. Cool, question? Curious if, oh, it's not on. It is on, it is. It is? Oh, it is, all right. Curious if you have any suggestions for the client that you've successfully sold to and then when it gets down to sign the agreement and start the project they suddenly are too busy to start the project. Make them pay 100% upfront. You won't care anymore. Well, and, but this is like, they don't want to pay you because they're too busy to start the project. Okay, so I was being glib but well, I wasn't kidding though. I get that, yeah. Okay, so one thing you can do and I do, do, do is charge 100% upfront and you can't really do that with hourly because you don't know what the price is. Like everybody's making this huge financial decision about their business but no one knows what the price is. It's crazy. So if you give them a fixed price it gives you this advantage of not having to bill but at the end you can say it's gonna be $20,000. You can send the check here and once I receive it I'll put you on my calendar and some people will push back on that in the last for 50, 50 or whatever but it works a lot. 75, 80% of the time, here you go, where do we send the check? If you aren't quite at that point and they all of a sudden they get cold feet if you believe that they actually do want to do the project this has happened to me exactly once and it's only happened to me once because I've only felt like exploring what the possibility was, it was an experiment but someone contacted me say it was last May, early 2015, said we've got a project going on as soon as it's done we want you to come in and we're gonna do this mobile response of redesign of our website. Ground up, rebuild, yada yada, soup to nuts. And I said great, here's a quote, this is a fixed price for the quote, it was actually a retainer thing so they're gonna pay me monthly. And, you know, the expiration date of the proposal was coming up so I emailed the guy I'm like have you had time to go through it? Do you have any questions? Can I help, can I unblock you? Ah, the other project is taking longer than we thought. Fast forward, a year. Other project finally finishes and I had been emailing him, I just put it in my calendar, repeating event, email Mike about the project. So every month, Mike status update on that project, it got so bad that after it was nine months late, I was like this is awesome for me because first of all I was like do you wanna hire me to finish this thing? Because they obviously had no clue what they were doing. So I was like do you want me to hire me to just finish this and then we can start the next thing? No reply. Couple months go by. So now they've gone through a really painful, poorly managed, self-managed project. So now when my proposal comes back around, I'm like well everything, I mean it's been a year, things have changed, my schedule's changed, everything's changed, I gotta re-quote this. So I re-quoted it a lot higher because it was clear to me that they were a complete mess. So the two answers are, you can kind of, when clients go dark on you, if you've already been paid, you don't really care that much. So that's one thing and the other thing is just persistently follow up because it could be that they're, sometimes they're brushing off, it doesn't sound like this in this case it doesn't sound like that. But still you wanna be professional, stay top of mind like wow, this guy's on his thing, he's keeping in touch with us, keeping the conversation going, kind of nurture the relationship. And maybe they'll say you know what, we went in a different direction and then you can at least forget about it. At least take it off your radar. Sure. Cool, thanks. Trigger any others. We actually are getting a little close to calling it. But we do have like 10 more minutes. Not cool, yep. What's that? I do, that's right. There isn't one. It's a PDF, so. But if you use the code DEVCON get 30% off. What, the book? The book is mostly about, the book is a series of essays that I've written over time, so body of work, right? So I email my mailing list on a daily basis. I've gotten, I've been writing articles about this, about hourly billing and value pricing since 2006. And I collected a bunch of the ones that were the most popular and put them into a book of essays. So it's about 100 pages of essays and there's like a glossary of definitions and that sort of thing. And it's all like walking you through, the sort of subtitle is, hopefully this will convince your partners or your clients or maybe even yourself that hourly billing is completely crazy and that all of us are focusing on the wrong thing and it's actually having a negative impact on the wealth creation or the value that we could be creating because everybody's focused on this silly thing. So going through this gives you the language to say to yourself or to say to your customers or your partners of why it's crazy in kind of a funny way so that they get it and are a little bit more open to a different kind of doing business. Right, there are three ways, oh not that small, no. Yeah, they're, sorry? Yeah, the question is how do you transition existing clients from hourly to value pricing or fixed bids? And there are three ways that can start you there. I'll tell you it's hard to do with existing clients because you've trained them in a way that it needs to be untrained. The three ways to do it, the first one is one I already said which is just add a fixed price to the proposal, the hourly estimate. But it can't be more than like, you know, 85%, it can't be double. So, because if it is then it's, if you feel uncomfortable with 85% premium, you probably didn't do a good job on the estimate because you're nervous. So you want the hourly estimate, you want to be right of course and then you wanna, you know, charge an 85% premium to do the extra work, not two or 300% because then they'll just raise question more than the whole project really. So the one way is to add a fixed price. The second way is to when you get a lead and they describe the project and it's a multi month thing, you know, it's an ongoing collaboration. Instead of going around and around on defining a scope before the project and trying to come up with an estimate, you say something along the lines of, look, I can give you an estimate for this but it's gonna be really, really wrong. It's gonna be wrong. So, what I would suggest is what we do first is a discovery phase, a paid discovery phase where we go through and essentially for maybe a week, weeks, go through everything we need to know, we'll find out exactly who all the stakeholders are, we'll interview them all, do the whole thing, all the stuff that you would have had to do for free in the other project or for by the hour. And then at the end of that, we'll give you the whatever you call it. So it's either a design document, an architecture document, a roadmap plan, whatever you call it and say, in that document you can then take out and bid it out to, I mean, we wanna do the work but it's portable, it's not lock in. So you can take that to somebody else, try and get a better price for the implementation if you want. So it's, you know, and it usually will be, like if you think the project's around 100 grand, you're gonna estimate about 100 grand in hours. You can charge 500,000. You can charge 5,000 for this sort of preliminary phase. So you get this fixed price sort of thing. And then as you work through that, now what you've done is you've trained the customer a little bit in what it feels like to work with you when they're not watching the, and you've trained yourself or your staff or both, what it feels like to work when you're not on the clock because it's different, it's scary, but it's awesome. But you wanna do it, you wanna transition to it. You don't wanna go cold turkey, you wanna do little, little bets because it's risky, you could completely lose, like you could just do it horribly, horribly underprivileged yourself. So say, oh, this can be 5,000 bucks, it could probably only take us 10 hours, 50 hours, whatever it would be. And then it turns out it takes you like 300 hours. And you're like, whoops. And then you think value pricing is bad, but really you're just, you either didn't manage the scope or you're not that great at estimating. So I had one project go an extra year, so it happens. No change orders, no, no change orders. No, so instead of change orders, this is what you do. So, okay, it's a whole process. This, I don't know, yeah, this is in the book. Okay, so I'll do it, I'll do it quickly. When somebody first comes to you, and I said some of this before, so I'll say it quick.  And if they can talk you into working with them, then they've sold themselves and they've sold you. So in the process of doing that, you will, if you, how come you don't just outsource, how come you don't use off the shelf? You're gonna end up with a rough calculation of how important this is to them and you're gonna be able to associate an order of magnitude number to that. So you'll get the value, you'll understand roughly what the value is. Once you have had that conversation and you land the gig, go forward, stuff always comes up. Some competitor does something and it's totally, it sets everybody's hair on fire and the marketing director has to have this part of the new project. If we're gonna be doing this, we should, but we all know it's probably, it's just the fire of the day and you need to say to them, well, it's an interesting idea. You should really probably put it on for version two, though, because if we let the goals, the fundamental goals that we discussed originally, which are to decrease the bounce rate on your website or whatever the thing is, to increase the amount of time that it takes your data entry people to enter these contracts, whatever the goal is. If we do this thing that the marketing, the CMO wants, that's gonna, we'd have to stop this project, go do that one. No, no, we want it to be part of this one. How does that achieve the goal? This has nothing to do with the goal and the thing that you can hold them to, if you've set them at the beginning with the desired outcome and how you're gonna measure progress toward reaching that outcome, if they can make a case for this new thing being part of the project because it's gonna help with that goal, that's in your best interest. Cause then you can just do that instead and reach the goal quicker. But never, it's never though, it's never. You just be like, how does this reach the goal we agreed to? And they'll talk themselves out of it and you'll say, okay, here's what we'll do. We would love to do that for you, it's interesting. So once this project is over, we'll open up Discovery on that one and we can do that one. But by that, it's never happened to me that somebody comes back to it. It's just like flavor of the day, panic. So no change orders, that's a no-no. But you have to be good at managing the client. We're just about there. Time for one last one, anybody? Yes. Okay. When you're estimating, for example, rather than by hourly rate, you're doing it as a fixed quote or what have you. What level of detail do you go down into because you might be competing against somebody else doing a quote and often trying to give them the value for money in their head compared to the other. How do you, what level of detail do you get to? Yep, good question. So my proposals, I don't think I've ever written a proposal that was longer than five pages and that includes, well, you know, in this value proposal for, they're short. The level of detail is, I don't know if it would say high or low, it's very specific about what the goals are and how we're gonna measure progress. I don't get into what color the lines are gonna be around the logo, you know, that's not relevant. So everything, once we set those goals and we've agreed on what the metrics are gonna be to measure progress, all of that stuff works itself out. I've had some cases where I was doing an actual, like a web build, a front end web build, which included the design where I told the client that they weren't allowed to tell me what it was gonna look like. I was like, you can make suggestions if you want and I'll listen to them, but it's kind of a waste of everybody's time because I'm gonna retain because our goal here is to decrease the bounce rate and the bounce rate is from the design they already created, which was horrible. And it's not really in anybody's best interest for me to educate them about why I'm making all these design decisions. It's not their job, they sell car parts. It's a waste of everyone's time. Like when I hear people say educating the client, I get nervous. It's like, the client is great. They're probably great at their business and how to, the things that they need and the indicators in their business that if they move this lever, they're gonna make more money or they're gonna increase labor or they're gonna decrease churn in their customer base or they're gonna employ retention. They know all that stuff and there might be a way that I can solve some of that stuff with a web project or with FileMaker but we don't talk about how I'm gonna do it. You don't talk about how I'm gonna cut the shingles for the roof with your roofer. They do that, they're the expert. You don't tell your doctor how to do your heart transplant. Sorry? Right, yeah, if they could do it internally, they would. I said recently, if you let customers push you around in the sales process, it should come as no surprise when they push you around during the project. So it should be, you should be pushing back on customers that are, not yet customers, but prospects or leads when you're talking to them. If they're raising a red flag or they've got an idea about how to solve the underlying problem. They always have a way to solve the problem and sometimes it's right and sometimes it's not right but I wanna know what the problem is. So they might say, we need, they come to me, we need their site rebuilt from scratch, responsive web design. Why? If they can't give me a good why, then I won't do it. It'll just be like, because you don't like the way it looks, do you think it's gonna have any business impact doing this? Cause it's gonna cost, I can't really say, it's gonna cost a ton of money to hire me. So you need to be getting some kind of ROI back and I'm not hearing it so I can't make a business case for you to hire me. And then they'll be like, well, and they'll either have a reason or they won't. And when they give you that reason, that's the thing, that's the thing that keeps the scope where it gives you the power to keep the scope where it needs to be and it gives you the power to write a quick, relatively quick, an hour, you can do a five page thing that's, these are the goals, here are the three options, here are the prices, 100% up front and we can start in two weeks. Which by the way, I have examples of in my new book. So we should probably wrap. Thank you very much for listening. Thank you for all the questions and thanks. Happy to hang around and talk more after.


There everybody, Dr. O here. In this video I want to talk about excitation and contraction coupling. Muscle fiber contraction, muscle contraction is a complicated business and you're going to hear cross bridge formation and lots of troponin and tropomyosin, lots of tricky terminology. So I kind of want to just do a high level overview and then we'll have to mine in deeper on some of these parts as we move forward. But excitation contraction coupling says that a muscle contraction is coupled with excitation from the nervous system. So for a muscle fiber to contract, its membrane has to be excited. And what excites the membrane of a muscle cell or muscle fiber is going to be the nervous system. So you see here at the top, an action potential arrives at a neuromuscular junction.  It's going to branch and branch until it reaches an individual neuromuscular junction.  So here you see the neuromuscular junction. So what happens here at the end or axon terminal, the end of the axon, it's going to release a chemical messenger, a neurotransmitter. In this case, and with muscle contraction, it's always acetylcholine, which you see here as ACH. So it actually takes calcium, it requires calcium for neurotransmitters to be released. So we need calcium here and you'll see we need a lot of calcium moving forward as well. So acetylcholine, let's just read, this acetylcholine or ACH is released. It binds to acetylcholine receptors. So acetylcholine is released from the axon of the motor nerve. It's going to bind to receptors that's on the sarcolemma or the plasma membrane of a muscle fiber. So it's released, binds to receptors, and it opens sodium ion channels. So as we're learning, or as you learn with the nervous system, sodium depolarizes and sodium is going to turn signals on. So calcium is needed to release the neurotransmitter acetylcholine. Acetylcholine is used to open up sodium channels leading to an action potential in the sarcolemma, which is the cell membrane or plasma membrane of a muscle fiber. So this action potential is going to travel. So it's the acetylcholine travel through the synapse and it triggered this response. And this action potential is going to travel down in through your muscle fibers. And that's going to be here. So this sodium is being released. Here's a picture of the T-tubule. So the T-tubule we was talking about is just it's a way to get this action potential deep into muscles. So what happens here, so this sodium depolarization causes a wave through this muscle fiber. And that's going to lead to the release of calcium. And that's the really, really important thing. So you see the T-tubules are how this wave gets deep into muscle fibers and muscles. The sarcoplasmic reticulum is going to be the fancy terminology for the endoplasmic reticulum of a muscle cell. And it's going to release the calcium. So what do we need this calcium for? We had the action potential traveled down the T-tubules. Now you see all this calcium being released. So the reason that's so important is the calcium is actually what's going to make it possible for muscle fibers to contract. So calcium is going to bind, as you see there in the middle, to something called troponin, which is one of the shielding proteins that usually shields the binding sites. So act in your thin filament and myosin your thick filament cannot actually connect and contract. So as long as there's no calcium, these shielding proteins stay in the way and it doesn't work. So calcium is going to initiate the contraction of a muscle fiber at this level here by binding the troponin and moving it. And when it changes its shape and moves it, that's going to allow the myosin heads on the thick filament to actually bind to act in and lead to muscle contraction. So as long as we have calcium, as long as this signal is still being sent from the nervous system, and as long as we have calcium, then your muscles can contract. And that's what all this has led to at this point. So as you see there, troponin and now has calcium on it, thick and thin filaments can now interact and that leads to a muscle contraction. And as long as we have that calcium and that signal, muscles will continue to shorten and contract. The technical terminology here, troponin, the shielding protein moves what's called tropomyosin out of the way and that's what exposes the myosin binding sites on actin. So I think we've covered that well. Now what happens at the end? How does this muscle fight? How does a muscle stop contracting? How does muscle relaxation occur? Well, the signal from the nervous system will disappear and that's gonna start this process. And then the acetylcholine that's in the synapse will either be reabsorbed by the neuron or an enzyme called acetylcholinesterase will come in and break it down. So the motor neuron signal has stopped, the acetylcholine's been destroyed or resorbed so it's now gone and that's gonna lead the muscle fiber to repolarize or it's going to turn off. And then as you can see here, calcium's gonna be resorbed, it's gonna be reabsorbed and that's gonna start this relaxation process. Without calcium, the calcium comes off of that troponin. Troponin and tropomyosin will actually go back and cover the myosin binding site on actin. They're gonna do their job as shielding protein so they'll reshield this. Now myosin can no longer grab onto actin, they'll have to separate and that's gonna cause your muscles to relax and lengthen. Okay, so that's the 10,000 foot view of what's called excitation contraction coupling, how the nervous system tells your muscle fibers what to do and then also just as a bonus at the end, how muscle fibers, muscle cells relax. I hope this helps, have a wonderful day, be blessed.


What we are supposed to have is Nigerian police, fidel police, that police will not have us force because we are suggesting here, users, nix will haveoren g predominant in is is with the inside these