In one of my current projects, I am using a serverless setup in AWS for the API. The project uses API Gateway and Lambda functions. For deployment to AWS, I’m using the serverless framework, which helps to streamline the process.
One of the issues I ran into was verifying the client authorization tokens generated by Firebase in the serverless environment. The brute force approach would have been to verify the token in the Lambda function for each API microservice I created, but this seemed inefficient. I also found that adding the Firebase Admin SDK added a lot of heft to the lambda function. It seemed like there should be a better way, and there is.
I’ve written about this before, but I’m always amazed at how deep you can go into any one genre or subject when reading. Here’s a case in point. I like to read personal improvement books, especially those that help me set priorities, get things done, and, on the whole, manage myself better. I’d have to go pretty far back to find the first book I read on the topic, but the genre only seems to get deeper and wider the more books I read in it. Whether it’s exploring other books by the same author, references to other books embedded in the ones I’m reading, recommendations by friends, families, or blogs I follow, or my ultimate nemesis, the Amazon recommendation engine, the quantity of books that I can read on the subject never ends.
It should be no surprise then that I happened upon The 80/20 Principle: The Secret to Achieving More with Less by Richard Koch. I added the book to my reading list after I saw it referenced in Ninja Selling by Larry Kendall. I’ve found that when a book you really like makes reference to other books, you generally can’t go wrong reading them.
One of my reading genres is leadership and management books. I like to pick up one of these books occasionally to stay current. There’s a good chance I’ll also learn a thing or two along the way.
There are a lot of generic books on management out there, but not a lot focused on technical management. And when it comes to software engineering, the number get even smaller. Therefore, when Managing Humans: Biting and Humorous Tales of a Software Engineering Manager by Michael Lopp showed up in an Amazon email, I had to add it to my reading list. I was looking forward to the insight given the amount of experience Lopp has leading technical teams at Silicon Valley companies such as Borland, Apple, Pinterest, Netscape, and Slack.
There aren’t a lot of books available that apply to small business owners. Most business books focus on theoretical concepts that apply to bigger businesses and corporations. The techniques and principles are complex, require large teams and specialized resources, and may even require complex tools or software to implement. They don’t take into account the limited time and budget a small business owner has.
When you’re running a small business or just starting out, it’s the simple things that are important. As the business owner or CEO, you need to stay focused on the marketing of your product(s) and service(s) in order to generate the sales to maintain and grow it. Usually, you don’t need a lot of time, money, or resources to effectively market your business. What you need is discipline, perseverance, and a well thought out plan. Fortunately, I was introduced to a book recently that fits these requirements perfectly, the The 1-Page Marketing Plan by Allan Dib.
I started my career working in the semiconductor industry back in the early 90’s. By that time, Intel had firmly established itself as the leader in the microprocessor space. They were in the process of moving their 486 to mainstream production. In fact, the first personal computer I purchased had a 486 processor that operated at a blazing 20MHz.
Being inside the industry, I was generally in awe of Intel. They were on the cutting edge of semiconductor development. They were the creator and keeper of Moore’s Law, which stated the number of transistors on a computer chip would double every two years. It was a law which drove Intel for over 50 years.
Given my history in the industry, and on the recommendation of a good friend and a trusted recommendation source (Brad Feld’s blog), The Intel Trinity: How Robert Noyce, Gordon Moore, and Andy Grove Built the World’s Most Important Company by Michael S. Malone felt like an interesting book to read. I’ve read quite a few biographical business books, but never one that was directly related to industry I was involved in. That reason alone had me eager to learn more about how the most influential company in the semiconductor industry came to be.
One of the better habits I’ve developed over the last couple of years is setting aside 10-20 minutes in the morning to read. The books I read during this time are geared toward personal development. They are about business, leadership, personal growth, and related topics. As someone told me a few years ago, if you’re able to read 10-15 pages a day, you end up completing a book every month. Over the last two years, I’ve read over 25 books this way.
It shouldn’t be much of a surprise that Start With Why by Simon Sinek ended up as one of my morning reads. It was recommended through Sean Murphy’s blog that I follow, SKMurphy. The book’s also highly rated and has received plenty of positive press since it’s release in 2009. Given the short shelf life of most business books, part of my curiosity was to see if the ideas in the book were still relevant almost 10 years later.
For a recent project, I decided to make the leap and go serverless. For smaller or new projects, the benefits had become too attractive to pass up – low startup and lower overall costs, on demand scaling, no servers to maintain or manage. What’s not to love?
For the APIs, going serverless is a no-brainer. Lots of people have done it, there are plenty of examples, and the cloud providers have extensively documented the process. When it comes to running a serverless database, not so much. I really liked the idea of using Amazon’s Aurora Serverless MySQL for the back-end, but my biggest stumbling block was connecting to it in case I needed to do database administration tasks.
After some online research, piecing together a few articles, and a bit of experimentation, here’s how I setup a serverless MySQL database using Amazon Aurora and then connected to it with HeidiSQL to manage it in a Windows environment.
Running a technology business, I’m always on the lookout for ways to tweak or improve processes, particularly around new product development. As a smaller company, resources are valuable and precious. Chasing a new product that doesn’t pan out can have dire consequences for the business. You want every advantage you can get screening product ideas and determining product-market fit.
We’d implemented agile methodologies in our development workflows, but these concepts have more of an impact on scheduling and getting product releases completed. They have minimal, if any impact on what product or features should be built. If what is getting put into the top of the development funnel isn’t a viable product, it doesn’t matter how fast or how good the product is that comes out the other side. You need to have a good methodology in place for building the right stuff.
For suggestions in this area, I turned to Sprint – How to Solve Big Problems and Test New Ideas in Just Five Days by Jake Knapp. I wanted to get ideas and gather insight into evaluating and fine-tuning new product ideas.
As part of my day job running a web/application development company, I regularly think about the web versus native app debate, especially when it comes to mobile. A recent article on one of the (few) websites I follow these days titled ‘Better Than Native’ on CSS-Tricks got me thinking again about the web vs native debate. It made me consider the current state of affairs and whether the web can and will win, and what it might take for that to happen.
Autobiographical business narratives are generally not my thing. I’ve read enough of them to know the general format. The beginning of the book is a recount of how the narrator built their business, the middle tells how the narrator overcame various trials and tribulations to achieve the pinnacle of success, and the remainder of the book is either a defense of their character, an explanation of why their company is not evil, or a lecture on how to grow and run a business. I find the beginning of the books interesting, and then tend to zone out through the rest.
Therefore, it was with a bit of trepidation that I picked up Shoe Dog by Phil Knight. I wasn’t excited about reading it, but it was very highly recommended by a close friend and had also received a good review on Brad Feld’s blog, where I’ve gotten many, many good book recommendations.