Develpreneur: Become a Better Developer and Entrepreneur

Rob Broadhead
undefined
Aug 24, 2018 • 26min

Planning For Fun and Recreation - The Meaningful Life

I think that we all strive for a meaningful life.  We do not want to breathe our last breath and look at missed opportunities.  That concern goes beyond something as narrow as a focus on professional success.  We all have an inner child that occasionally needs to come out and play.  It is just the case that our inner child plays in different ways for each of us and as we age. A Meaningful Life Requires Intention All work and no play not only makes Jack a dull boy, but it also reduces our productivity and joy in life.  This is a challenge for everyone.  However, those of us that love our job and have found our calling are more susceptible to this than those that hate their daily grind.  Therefore, our default approach to "fun" is often to skip it and instead dive deeper into our calling.  There is a time for this, but there is also a time for enjoying life and things that exist outside of our career.  That means we need to think about having fun and plan for it.  We are not likely to just stumble into a fun time. Planning To The Rescue Our lives are busy.  That is just how we are.  Thus, everything that matters is most likely to get proper attention when we schedule it.  Yes, it is almost sad that we are discussing planning our fun, but that is how we roll.  I have seen schedules (and made them) that include things like working out, eating, quiet time, and other activities that "normal" just do as part of their daily life.  We are squeezing every minute out of life possible, so the common gaps and "free" time are luxuries we tend to eschew. It is easy to look at a schedule for a week or month ahead and focus on all the goals that the plan accomplishes.  However, there is a downside to a full and busy schedule.  It can be exhausting.  Even worse, we can get to the end and find that those goals we achieved were great, but feel that we could have done something better.  Maybe we could have lived life in a fuller manner. I know this is a difficult concept to grasp and a hard one to adopt.  However, give it a shot and see how it works for you.  Who knows, you might even have a more meaningful life and enjoy it more than you already do.
undefined
Aug 22, 2018 • 25min

Cord-Cutting - Easier Than Ever

Cord-cutting is one of the trends of the last decade or so that the Internet has led to.  This is the situation where someone cuts the "cord" of cable or satellite television through a provider and manages their entertainment options. Better Than Ever Cord-cutting used to mean that you were mostly giving up visual entertainment other than movies.  This option almost guaranteed that you would always be behind the curve in keeping up with the latest releases.  Although this option was not a hard one to choose for those that are not fans of network TV, there was a challenge in keeping up with news and world events. You might have noticed that this is far from the case in the modern world.  The ability to stream content from studio-quality sites like Netflix or Amazon or even independent creations like YouTube has made "legacy" TV almost dull.  Yes, the major networks still put out some good shows.  On the other hand, there is more good content than you can keep up with that is produced by places like Netflix, HBO, and dozens of others. The speed and cost of an Internet connection have contributed to the quality of streaming even as some providers look for ways to cap data transfer each month.  This change does have the effect of shifting your entertainment costs from cable companies to Internet providers.  However, you still have more control over whether you are a heavy or light user. Legacy Networks Even with all of the new options for entertainment the networks of yesterday are still running strong.  It is almost better to go to the website of these networks to check out their web-only shows along with the ones you see on "normal" TV.  There are several options to view these shows, but signing up on the network site can often keep your viewing free or at least very inexpensive. The bottom line is that the ways to find content of all sorts have exploded in recent years.  The way your parents viewed entertainment and kept up with the world is a thing of the past.  Thus, cord-cutting should become the norm instead of a niche approach in the years ahead.  You might as well embrace it now and make your entertainment something you control.  If you do, then channel surfing may become something utterly foreign to you.
undefined
Aug 20, 2018 • 25min

Side-hustle Arguments - Pros and Cons

There are not a lot of articles that include side-hustle arguments.  All of the ones I come across start from the position of any side-hustle being a good thing.  Then, the story shows us how to embrace and succeed in that area.  We are easily lured into seeing only positive side-hustle arguments as the end is examined without much regard for the journey.  I think this sells us short on deciding how to live our life.  Therefore, let's step back and determine whether all this extra work makes sense for us. Focus related side-hustle arguments The obvious potential for success or failure is whether a focused approach or multi-tasking is better in the long run.  Many factors come into play when we consider these two opposite approaches to getting things done.  More importantly, these factors can contribute to our longevity, our ability to persevere, and even the quality of our life. Burning the Candle at Both Ends Energy levels are a significant factor in our ability to add no a side-hustle in our daily life.  Thus, this area of side-hustle arguments is very personal.  In fact, this area points to a side-hustle as something you are far better to pursue in your youth.  At least from a physical stamina point-of-view.  On the other hand, we can utilize tips and tricks experience taught us to be more economical in our efforts as way age and learn. That brings us back to energy being a personal examination.  You may be young at heart or energized by the work you are doing.  This can completely negate the fact that you are in your 30's, 40's, 50's, or beyond.  I want to add a warning about this particular factor.  It is easy to start strong and be energized early on in a pursuit.  This "honeymoon period" often fades.  That makes it worthwhile to re-examine your energy levels and desire on a regular basis.  A better approach than that is to build in constraints to your side-hustle that force periodic sanity checks.  This approach helps you step back and decide if you want to continue.  It is a form of computing risk vs. reward on a regular basis. A Greater Experience Although we started by considering focus vs. multi-tasking, there is also a related area of learning.  Is your goal to be broad or deep in your knowledge and skills?  This is a crucial question.  One approach is well-suited to a side-hustle while the other is not.  Of course, this leads us to our favorite subject to consider in any endeavor.  That is for us to remember the "why" of our career, calling, or even hobbies.  When you keep that in mind the side-hustle arguments are easy to see, review, and measure.  Thus, we can make the correct choice for ourselves.
undefined
Aug 17, 2018 • 27min

The Product Launch - Shipping Your Software Product

We wrap up the season on building a small software product with tasks and recommendations for getting the product to a market.  This is also called the product launch.  Of course, what the market is can vary broadly for modern products.  You might aim for getting a shrink-wrapped version of the product on a store shelf.  However, that seems an almost pointless goal these days.  Digital delivery and the related catalogs or stores are less expensive and easier goals to achieve. The Product Page Whether you are using a store, a catalog, or some other way to sell your product, a web page for it is almost always needed.  This is your one-stop-shop for all things related to your product.  This page is almost required for any software product launch and will be where people come when they search for it. It is best to think of this page as your one shot to sell a customer on the usefulness of the application.  thus, any time spent on designing this page is well worth it.  You will want to grab the reader's attention, educate them on your product, and then provide a call to action.  In our case, the call to action will almost always be either to register or purchase the solution. The Fine Print Do not neglect the legal documentation for your product.  This includes a license agreement in almost every case as well as usage restrictions if needed.  You can find a lot of good templates and examples on the web.  Find one you like, change the text to customize it to your company and application, then make it a part of purchasing your product.  This is for your own protection as well as helping customers feel warm and fuzzy about purchasing your application. Getting Paid A key part of getting paid for an application is that transfer of money for the product.  There are many ways to perform this transaction.  However, you need to be clear if you will take credit cards, checks, invoices, etc.  The method of delivery also needs to be specified and note whether shipping will be charged, included, or not applicable. Shout Outs Once all of the above pieces are in place, you are ready for customers.  Now it is time to get the word out.  The Internet has provided access to a wealth of advertising platforms.  Unfortunately, a review of those platforms is outside of the scope of this episode and season.  In starting out, try to find options that you can scale your way into.  This is an excellent way to find what works best for your product launch without breaking your marketing budget. Thank You Get out there and launch your product.  We will gladly provide a free advertisement for your product on this site.  Just send us a link and a paragraph describing the product.  If you want to send a banner image, we will be glad to work with that as well.  See you next season.
undefined
Aug 15, 2018 • 25min

Completing Your Consulting Project

This is the last episode in our consulting project side hustle series.  We wrap up the season with a look at how to end our project and wrap it up (for now at least).  As implied, we also look at moving on to the next project and making use of our success with a customer to grow to more work in the future. Final Delivery There should always be some sort of final release as part of completing a consulting project.  This can be the form of releasing the source code to a customer or something much more involved.  No matter the way you deliver the final product there are some things you should always ensure as part of that. Thoroughly test the work you have done Review all documentation for content as well as grammar and spelling checks Clean up any temporary files Virus scan all files Deliver what you promised, no more and no less Your work along the way is a huge part of making the project a success.  However, the way you end it can make as much impact.  Think of this as your final exam for the customer.  Just as a final exam in school always counted for a significant portion of your grade, the last work you deliver counts profoundly towards the level of success in a project. Moving On To Your Next Consulting Project As you wrap this project up, you should remember to end it well.  Thank the customer for allowing you to work with them and on their project.  After a short time (a week or two) has passed, follow up with your customer.  This step is to ensure that your final delivery was successfully implemented or used by the customer.  When you follow up, you are offering support of your work and taking a step to keep the relationship you have built current. After some period, that you will have to judge as appropriate, reach back out to your customer.  You should have a list of possible enhancements and improvements to suggest.  This might include new features or extensions to the application you worked on.  At this point, you should have a good idea of the considerations that go into a project for that customer.  This insight will often include critical factors like budget, timing, standard processes, and the expected quality of work.  There is no guarantee this will lead to more work.  However, your odds of success are better than a cold call for more work. That wraps up this season.  Send an email to info@develpreneur.com if you have any questions or if you just want to share some war stories.  Good luck!
undefined
Aug 13, 2018 • 21min

Creating Commercial Software - Finishing Touches

Our goal has been to create a small commercial software product, and we are rapidly getting to the end of our journey.  Creating commercial software does require us to do some additional work over something we build for personal use or even internal to our company.  We are going to ask people to pay money for our application, and they will have a set of expectations we need to meet. A Fresh Install One of the easy to forget tasks we need to perform is a fresh install of our software.  We have probably been coding and testing our application for a while, but that can leave a bit of a mess.  We may have some old files or development libraries on our machines that a fresh install will not.  This situation can create a problem where everything installs and runs fine on our (and even a test) machine but not for any customers. It is worth the extra effort to avoid a situation where the application install fails miserably.  Also, this is maybe even more of a problem with a web application.  It is easy to copy files out to a deployment folder without deleting all of the files in that folder beforehand.  Not only can this break an install, but it can also be a security risk as well. Follow Best Practices When you do that fresh install, you should start with a clean build from version control.  There should also be a tag, branch, or similar marker to make it easy to reproduce this effort at will.  When you go through this process, there should be some form of documentation or scripts that allow you to return to it years from now and still know exactly what to do. Of course, when you script out this process that makes the whole thing easier to produce the same way, every time.  These scripts and any helper tools should be accessible from version control as well.  You do not want to go digging on multiple machines to find those great build tools you created for your product. Clean Up and Smoke Test Once you have your clean install, make sure it works.  Run through a smoke test of the commonly used functions.  While you are doing these tests, make sure that you have removed any hard-coded values from your code.  This search should include configuration and setup files.  When you take this extra review step, it can help you avoid deploying a security id or password to the world. The Challenge The homework for this episode is to run through your application and make it production-ready.  Follow the recommendations here and in the episode to add those finishing touches to your work.  We are almost done with your commercial software and ready to "ship" our product so do not cut corners this close to the end.  Good luck!
undefined
Aug 10, 2018 • 21min

Implementation Details - Wrapping up Our Software Product Creation

In this episode, we look at the final pieces we need to code as part of building our product.  Many of these steps have already been taken partially, if not completely.  However, it is always worthwhile to walk down a checklist of the details as we move towards code freeze. What is Code Freeze? The idea of freezing product development is one that provides a hard completion of the implementation phase.  It is a way to avoid an endless cycle of enhancements and tweaks to "perfect" a product.  Once implementation is frozen, the requirements and specification should all be included in the application.  At that point, we theoretically have created what we set out to build. One would think that it is only important to have a code freeze in a large development group.  That is not what I have seen in my experience.  The closer we are to product creation, the more we want to pour features or bells and whistles into it.  Thus, we will thank ourselves for drawing a well-defined finish line for implementation. Pieces That Are Easily Overlooked The entire process we have been following is intended to keep us from skipping over details.  Nevertheless, there are some implementation details that seem to be skipped over on a regular basis.  They are just not the details that developers experience in their use of the application as part of the implementation phase.  This neglect typically comes from the developers testing features as an admin or other "power user" and features that are secondary to the solution like reporting.  We explore these commonly overlooked items. Navigation options such as hide/show based on user or status Instant vs queued responses and status or progress displays Multiple "uses" of the application (multiple cycles of log out and then immediately login) Reports with empty records and useful controls for entering parameters Your Challenge - Complete The Implementation Details It is time to bring this thing home.  You have been working on this product for weeks and it is time to get the last pieces implemented.  We will not be ready to ship this off to customers.  However, we will have a useful product as we finish these implementation details.  Look at your requirements and make sure you can check off every item you started out to create.  This is a big step but one that you will find very rewarding.
undefined
Aug 8, 2018 • 26min

Working The Project - Consulting Success

Winning a project is only half the battle.  For true consulting success, you must follow through with your plan and exceed expectations where possible.  There is not a single approach that works for every project.  However, there are some things you should touch on whether a job is a few hours or many years of work. Kick It Off An important piece of consulting success is setting expectations.  These should be addressed at the very beginning of the project.  Ideally, you set expectations with the proposal, and all you need to do now is reiterate what everyone already knows.  Every project should have some sort of kickoff.  This is when you have enough information and tools to start work as well as when you start putting in billable hours. Communicate Early and Often Communication is the number one factor I can point to in consulting success.  When I failed to over-communicate to customers, there were struggles.  On the other hand, when I provided clear and regular communication about status and asked questions, the project went as well as could be expected.  A relationship of some sort and trust won the project.  Build on those first steps during the plan to keep it on track and improve the chances for total success. Follow Best Practices You are getting paid for the work you are doing.  That makes you a professional.  Act like one.  Be aware of best practices in the customer's industry as well as those in IT.  Then make sure you adopt those practices in your work.  Yes, it will take a little more time to get your tasks complete.  On the other hand, they are more likely to be done right the first time.  Therefore, your customer will be saved time, money, and stress when you add that professional polish. Templates and Standards As you progress through your projects, there should be a standard way that you communicate and complete tasks.  You can make it easy on yourself by using templates for communication and following some standards or best practices.  This approach will help provide a "voice" to the customer that is consistent and provides a level of comfort to them that everything is under control. In general, treat your customers as you would like to be treated.  Remember that the hard earned money you are being paid is coming out of their hard earned money.  When you focus on the service part of a business like consulting, you will find success in even the most challenging projects.
undefined
Aug 6, 2018 • 18min

Building Out Your Application From a Demo

It is time for building out your application.  You have a core engine for solving the main problem and a clickable demo to show off the user experience.  Those provide the skeletal structure of our product.  However, there is a lot of meat we need to add to those bones. Help Yourself Administration is a requirement for most applications.  It may not be a requirement users will ever experience.  However, you will likely make use of some sort of administrative activities as you implement and test the product.  Thus, when you build your admin tools early in implementation, it provides a more significant return on investment.  Go ahead and crank out those tools first and do not worry about the look and feel at this time.  You are likely the only user at this time. Connect to the Organs Hook up the pages to the database or data store as well as the inputs for the core engine.  These critical areas of functionality should be connected early to help provide you more time to test and run the features through their paces.  Yes, you want to be in a position where the core engine is a stable and reliable chunk of code already.  Nevertheless, linking to that and making it available during testing can only help. Be Happy The first full path through the application should be the happy path.  That becomes sort of a baseline for you to ensure the application functions to some extent.  Once you have all of the steps in your happy path implemented and hooked up, start branching off from that.  Implement based on the most used features.  This approach helps with testing and provides a useful tool sooner in the implementation phase. Your Homework Time to make your vision come to life.  The homework this time will advance you to an actual product.  There will be plenty of work ahead.  However, you will be able to start using bits and pieces of your solution as part of completing the homework this time.  A clickable demo has a little bit of satisfaction it brings.  Building on functionality as we do in this step should bring a substantial amount more happiness to you.
undefined
Aug 3, 2018 • 23min

Create The User Experience - Building a Software Product

We have worked on functionality in our application to this point.  Now we can start to create a user experience, so those functions are accessible and intuitive.  We will begin with a clickable demo that makes it easy to see how to navigate through the features. No Place Like Home Every application has a "home" or "start" page.  This type of page is the one users see first in most cases.  Accordingly, they tend to spend more time on it than any other screen.  That makes this a critical page to "get right" and provide the needed information to start using the application.  This is a page you should start with for your demo.  The users will see it a lot, so you want it in front of customers for feedback as early in the implementation process as possible.  That holds for when you are just creating an application for yourself.  It will help you test the heavily used screens early and often. Copy And Paste Template pages are not merely a copy and paste exercise.  However, it is highly valuable to create some templates that you can use throughout your application.  These will be a way to speed development as well as a way to stick to a well-defined look-and-feel.  Focus on the first page that uses a template to make sure you get it exactly as you want.  Then you should be able to reproduce that style over and over as you build the application. Communication Your communication framework and related user experience should be started on early in the process.  This goes well with developing your templates.  When you have messages or user communication implemented on a template page, then it should provide the kind of experience a user can expect.  The actual content of the messages is not yet significant.  Focus on the look-and-feel.  You can leave the details for later. Reports In a fashion similar to page templates, take a stab at how your reports will look.  When you have this formatting challenge handled and expected early on, the end product will seem that much more comfortable to the user.  There will be plenty of time to make adjustments and craft a robust format for reporting the application data or output. Your Homework - Create The User Experience It is time to build a clickable demo.  Create a framework of the pages and navigation detailed in the requirements.  You can hook up some of the functionality you implemented in prior steps.  However, this is where you want to focus on the presentation.  You can marry the display to the features in future phases. A sample of my on-going project source is linked below.  This is pretty far along the way on the user experience and tying in functionality.  The testing is still a bit thin, and usability still has work to do. implement3.tar.gz

The AI-powered Podcast Player

Save insights by tapping your headphones, chat with episodes, discover the best highlights - and more!
App store bannerPlay store banner
Get the app