Blockchain & Cryptocurrencies

Liberty Fox has maintained an R&D focus on the Cryptocurrencies market, working on the changing landscape / value proposition of Bitcoin and Blockchain. We share this knowledge in the education of early-adopters as well groups sessions via meetups and events in this space. In many industries, sharing of trusted information can be a difficult proposition – Blockchain technology can be the platform to solve this blockade to entry. We are driven to be expert consultants in the various applications of the technology as well as the intentions, initiatives and projections of the alt-coin markets.
top

Grammarly

Effective communication is a key to success in any walk of life. Here at Liberty Fox, all of our team members interact with clients on a daily basis, making it vital to have clear, concise, and cogent communications. Grammarly is a tool that makes cleaning up emails, documentation, work logs, and notes, a simple and streamlined process. Far more than a standard spell checker, Grammarly evaluates every aspect of what we write to provide suggestions and corrections. From checking grammar and punctuation to sentence structure and contextual spelling, using this tool is like having an editor review and correct your writing in real time. This makes it an essential tool in the fast-paced world of agile development, where communication is important but communicating efficiently and effectively is imperative.

Grammarly can be used in a variety of ways to meet every possible need. A free extension for Google Chrome, Safari, Microsft Edge, and Firefox is available that will evaluate just about anything written within an input box on the browser. There is a plugin for use with the Microsoft Office suite of products, which assists with the writing of formal documentation and the preparation of presentations slightly less stressful. For everything else, there is Grammarly’s Editor, allowing anyone to paste in any text and receive the same editorial feedback. No matter what the situation, Grammarly is available to assist.

Grammarly offers many free services, which is sufficient for most users, as well as premium features that evaluates for more advanced and complex issues.

(Premium) Online Editor – https://www.grammarly.com/grammar-check

MS Office – https://www.grammarly.com/office-addin/windows

Chrome – https://chrome.google.com/webstore/detail/grammarly-for-chrome/kbfnbcaeplbcioakkpcpgfkobkghlhen?hl=en

Safari – https://safari-extensions.apple.com/details/?id=com.grammarly.spellchecker.extension-W8F64X92K3

Firefox – https://addons.mozilla.org/en-US/firefox/addon/grammarly-1/

Edge – https://www.microsoft.com/en-us/p/grammarly-for-microsoft-edge/9p59wxtbhzzm?rtc=1

 

Microsoft Word:

 

Grammarly Editor:

 

Browser Extension:

 

top

Google Analytics

One of the fundamental aspects of running a website is understanding your user base. A solid understanding of who comes to your website, what they look at and for how long, when they come back and in what intervals is crucial to understanding your users. Google Analytics is a free web service that makes all of this streamlined and efficient and offers site administrators tools to review the data collected by Google.  Capturing data for your website is as simple as inserting a standard chunk of JavaScript code with altered parameters specific to your Google Analytics account and website. With this code in place, analytical data will be sent to the Google server whenever a user interacts with or visits your website.

Once data is being collected, that data can be accessed and reviewed in the Google Analytics dashboard. This allows you to see exactly how users are engaged with your site, broken down into dimensions and metrics. Dimensions are data points such as how users are finding your site and from where, and which page the data is coming from. Metrics are the quantitative data points associated with each dimension, such as how many new users visited and how many overall sessions were recorded for the given dimension. With all of this data collated into one central location, informed decisions on advertising and content production can be confidently made.

Google Analytics divides the data it captures into three primary categories: Behavior, Acquisition, and Conversions. Behavior covers how users interact and behave with your website, enabling you to see if users are using your website how you intended. This is where things like page views, session time, and average time on a given page can be seen.  In this area, the Behavior Flow tab can also be found. This will give you a breakdown of the common path (enter, exit, and pages in between) users take. Acquisition covers how users come to your site. This can be in the form of search engine traffic, referral traffic, and social referrals. Conversions cover how users take a desired action on your website. This is done by setting up conversion goals. These goals can be custom tailored to what the intention of your website ultimately is, and will give you a good metric to determine how often users are doing something you want, whether that is buying something, or visiting a page, or clicking a link.

 

Using Google Analytics will allow you to tailor and tweak your website to meet the behaviors and interaction of your user base. It is a great tool to boost SEO and up conversion rates and the effectiveness of adverting throughout the site. In order to get the most out of your website, a fundamental understanding of Google Analytics is crucial.

top

Confluence

One of the recent endeavors here at Liberty Fox was to create a knowledge base and wiki with the goal of creating a single, well-maintained, and central location for everything Liberty Fox does. Confluence, an Atlassian product, provides the tools necessary to accomplish this goal. At its core, Confluence is software that allows anyone to build and maintain a wiki, whether for internal uses, for customers, or for a mixture of both.

In the fast-paced world of agile development, thorough documentation is essential. Whether the need is to spin-up a new developer on a project or to re-visit a previously on-hold project, having resources to reference makes the familiarization process much simpler. Previously, these documents and resources have been stored in Google Drive. While Google Drive is an excellent tool for storing vast amounts of data and information, it could only accomplish so much. Confluence allows for the storage of the same data and information, with the added benefit of full customization.

One of the biggest attractions that made the decision to build a Liberty Fox Wiki through Confluence, is the level of adaptability and customization Confluence allows. PDF, Excel, and Word files can be directly embedded into a page, bringing along full formatting and the ability to edit the document without needing to download and re-upload the file. Creating content is as simple as adding a new page, adjusting the layout to the desired style, and adding the content. There is also an option to create a page template, so creating multiple pages that have a similar layout becomes streamlined and simple. As with most Atlassian products, plugins and add-ons are widely available for Confluence, making the possibilities nearly limitless for what can be created. While Google Drive is still an exceptional file sharing tool, Confluence handles file sharing but at the same time allows for so much more. For this reason, it has become the preferred collaborative tool for Liberty Fox.

 

top

Revenue Cycle Management

Liberty Fox is intent on dramatically transforming healthcare revenue cycle management by empowering our customers with innovative end-to-end workflow automated solutions and operational consulting services. Our goal is to streamline workflow and create extraordinary proficiencies for our clients through automation. This leads to decreases in bad debt, improved employee and patient satisfaction, and a healthier business.
top

Philly 100 Ranked #38

Thank you to our team, family and friends for the kind wishes of luck and success. To our great surprise, our company ranked #38 of the fastest growing, privately held companies in the Greater Philadelphia Area. We have been in the Top 50 for four consecutive years now! We are so proud that words cannot describe our feelings about this esteemed accomplishment. To be surrounded with CEOs of other companies as motivated to succeed as us is surreal. Congratulations to all the winners! Thank you everyone for your support and we hope to be inducted into the hall of fame next year!
top

Entity Framework and Jenkins working together

While working on <PROJECT_NAME_HERE>, I began to run into an issue on the UAT server. Several test cases were failing while running under Jenkins, all with the same cryptic error message. You may have seen this error in your own tests as well. It states:
System.InvalidOperationException:

The Entity Framework provider type ‘System.Data.Entity.SqlServer.SqlProviderServices,EntityFramework.SqlServer, Version=6.0.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089’ for the ‘System.Data.SqlClient’ ADO.NET provider could not be loaded.

Make sure the provider assembly is available to the running application.

This is rather confusing because the app was clearly using SQL Server and making database connections correctly, indicating that it should work correctly. Yet these tests failed consistently, 100% of the time. I started my investigation into debugging it.

  1. Check the unit test project as well as the rest of the projects to ensure that the assembly is actually present. Yes, it’s there, so that’s not it.
  2. Check that the ‘Copy Local’ attribute for this reference is set to true. Yes, annoyingly, it was set to true and the file was in fact on UAT.
  1. Check the unit test app configuration file to ensure that the SQL provider is specified…Argh, yes, it’s there!
  1. Ensure all tests locally are identical to what’s on UAT…YES %@#*&#*&#$!
    (In my frustration I neglected to take a file compare screenshot, but everything on UAT was identical to SVN which was identical to my local build.)

 

At this point I figured someone else must have had this problem and did some digging around online, which brought me to this block of code:

var type = typeof(System.Data.Entity.SqlServer.SqlProviderServices);
if (type == null)
     throw new Exception("Do not remove, ensures static reference to System.Data.Entity.SqlServer");

Including that block into the test case instantiation module fixes the problem completely. This appears to be a known issue for Entity Framework 6+; unless you have a code-level reference to the SQL provider service, the Entity Framework assembly won’t be copied to the output folder where the unit tests are actually run. The compiler is overzealous in trying to remove assemblies that it doesn’t need, and accidentally tosses out the SQL Server assembly; that is, if you don’t add a block of code deliberately instantiating it to ensure it’s there.
We don’t do anything with that type variable except to null check it and move on. It isn’t used anywhere else, but without it, the tests keep failing. So our final code looks like this:

public static void InitializeTestRun(TestContext testContext) {
     InjectionModule.RegisterContextBinding<IPOREntity, PORContext>()
     InjectionModule.RegisterContextBinding<IConnectRXEntity, ConnectRXContext>();
     Resolver.SetModule(new TestModule(1));
     var type = typeof(System.Data.Entity.SqlServer.SqlProviderServices);

     if (type == null)
          throw new Exception("Do not remove, ensures static reference to System.Data.Entity.SqlServer");
}

All we’re doing here is setting up the binding for our contexts, setting the ID we want to use for the tests (in this case, 1), and then telling the compiler that we do in fact actually need SQL server.
That’s it!

Hope this helps!

 

top

Stop annoying gmail calendar alerts without disabling them.

Have you ever been deeply involved writing an email or replying to comments and then all of a sudden everything stops working? Or worse, have you ever looked up after writing a long chunk of code and see that none of your code was recorded?  Do you have a moment of instant rage trying to figure out what happened?

Then you realize that Gmail Calendar alerted you about an upcoming event and chrome has taken over because of this alert!
You’re not alone!  Luckily there is a very easy way to prevent an alert pop up from taking over your browser without disabling notifications about calendar events!  HTML5 introduced desktop notifications, which unlike browser alerts, occur outside of browser. So with desktop notifications, you can be on another program and get notifications without interfering with what you’re doing!

STEPS TO SET UP DESKTOP NOTIFICATIONS

  1. 1. Click the gear icon on the top right of Gmail, and then click settings.
  2. 2. Click the option “User browser notifications instead of interruptive alerts”, then save.
  3. 3. Once you hit save you may get another popup asking you to allow desktop notifications.  Go ahead and click allow.

Now you’re all set!

If you found this post helpful please share it!

top

Making the Case for Custom Development

Making the Case for Custom Development

  • “I could get this done so much faster if I had an export tool.”
  • “Whenever I need to do an update my timesheet, I have to get an Admin to correct it because the webportal is difficult to use.”
  • “I can’t find anything on our poorly-organized document manager.”
  • “Our website looks terrible on a mobile device.”

At some point every company runs into issues like these – internal issues that reduce productivity, negatively impact client relationships, or hamstring employees from landing the next project.  These issues can often be resolved with a custom development solution, but the challenge is in convincing stakeholders to prioritize this need.  Often, customized development for internal use is viewed as “optional” or less important than customer-facing projects.  The effort required to build and implement a new or improved solution can even be written off as a needless drain on time and resources.  However, when more carefully analyzed and given a measurable value, there can be great worth – both for your employees and your customers – in investing in customized development for your company.

 

Monetizing Custom Development

One of the greatest challenges in convincing stakeholders to prioritize custom development intended for internal use is the idea that it isn’t as important as customer work.  It is easy to point to a contract with a dollar amount attached and understand how it will impact the company’s bottom line.  You can plainly see the balance of resources and the revenue gained.

But how can you outline the return on development created for use by your own company?  How can you attach a value to this effort that an owner, board, or shareholder can understand?

Like any other project, you can start by breaking it down by the numbers — weigh the cost and the benefits and express them clearly.  Don’t play down the fact that the biggest benefactor of the work may be your company’s own employees.  Your time and that of your colleagues has a cost for the company.  By investing in internal tools to create, update, and streamline processes — especially manual, tedious, or oft-repeated work — you are saving resource time.  Does the Accounting Department have to manually run reports?  Do your engineers have to deploy the same process scripts over and over to upload to a database?  Do managers copy and paste the same document formats for each project?

Start by calculating your current baseline cost.  How much time is your company spending on a particular task or process?  How many people would be affected by the change?  What are the resource costs for that time?

Next, break down the proposed change or changes.  What sort of tools or process updates would reduce this effort?  Most often, you want to start with incremental changes.  A smaller effort with a larger impact is easier to work with that a sweeping change that will take more time and resources to implement.  Working at the smallest viable level, what would be the difference in time spent between the current process and an improved process – over a day, week, month, or year?

As an example, your Accounting Department spends 10 hours every week running and compiling manual reports.  The cost of those 10 hours spent by the Accounting Team, when compared to their salary cost is roughly $1,500 every week or $78,000/year.  If the team had a tool that exported the reports needed at the push of a button, hundreds of hours could be saved.

Next, you need to determine the plan and plot the costs to develop this process and implement it.

Continuing our Accounting team example, you are able to determine it would take approximately a $50K effort to create the tools needed to generate the reports in minutes instead of hours.

Calculate the net benefit by comparing the improvement costs to the cost savings.  Determine what (if any) immediate savings there would be by implementing the improvement.  Then determine the rollover savings from period to period.  How long would it take for the company to recoup their investment?

Back to our Accountant example, the cost of the new reporting solution would save the company $28,000 in the first year and the cost of the development would be recouped in roughly 8 months.  For each subsequent year, the cost savings would be $78,000!

 

Leveraging Commercial Software

Another option to consider if your costs are running high is starting with an off-the-shelf solution and then asking a development company to further customize it for you.  Did you find an application that does 80% of what you need?  Is it only that last 20% holding you back?  What would it take to fill in that gap?  Most commercial software has the ability to overlay additional functionality on top, knowing that users will install their own Apps and Plug-ins.  If you can reduce the amount of base development needed, does that close enough of the cost gap?

 

Priority Based on Quality

But what if it is more than just a time issue?  What if the quality of the current process is the problem?

How can you make a case for custom development work when the monetary costs are higher than the expected returns?

Consider:

  • Are there other quantifiable areas that would be impacted by the improvement that could make your case?
    • Would implementing an improvement result in reduced customer issues?
    • Could a change in the process free up business resources such as bandwidth, server space, resource time, etc?
  • Are employees capable of completing the work required of them with the current process?
    • Are your employees overwhelmed because your current process isn’t scalable?
    • Is the current process error-prone?
  • Who is impacted by the inefficiency of the current process? Does it impact more than one person or department?

Using these considerations, you can create an Impact Analysis.  An Impact Analysis will allow you to capture and structure all the likely consequences of a decision and more accurately understand if there would be value in investing in your internal-use development.

First, clearly define what you want to achieve by implementing the development work.  For example, you wish to add more self-service options to your customer care portal.

Then break down the potential impacts of the change.  You can do this by evaluating the impacts from an organizational perspective or determine the importance the changes would have on your company values using the McKiney 7Ss (Strategy, Structure, Systems, Shared Values, Skills, Styles, Staff).

Next, evaluate the people and organizations affected in detail.  Then go down this list, identifying both the positive and negative impacts of implementing the changes.  This detailed outline will give you a balanced view to weigh whether if it makes sense for your company to invest in the effort or not.

 

Changing the Use Case from Internal to External

If selling the desired development as something for internal use isn’t something you can get any traction on, is there a way to change the expectations for the work into an external benefit?

  • Could an enhancement created for internal use be turned into a customer-facing product?
  • Is the work you are championing something that a partner company could use?
  • Is there a way to leverage the development to make it easier for your company to connect with potential clients?
    • Would doing the development make it easier to convey the services your company can provide?
    • Could this effort be used to streamline how potential clients can reach the right people?
  • Would producing this application be something that could be recognized in a trade journal to provide name recognition?

 

As an example, would an update to the forms on your databases open the door to give customers more self-service form options?  Would an update to your company’s email client allow customers to reach out for additional support?

Changing to an external focus may give you a very different result when you run your cost and impact analyses again.

 

Closing

Understanding how to articulate a good case for investing in custom development is a key step in getting the idea off your wish list and into your hands.  By arming yourself with measurable criteria and clearly defined impacts as justification, you can sway stakeholders to see the value in investing in custom development for your company.

top

Software Tools Your Small Business Needs

Technology continues to change the way we conduct business today. If you are running a small business, there are efficient, innovative software tools that can simplify your processes and save you time, money, and frustration. Many of the tools offer free or basic subscriptions with the option to upgrade to a premium version as your business grows.

Grasshopper

This virtual phone system allows you to forward calls from your business line straight to your cellphone so employees and important clients can reach you wherever you are. You can add multiple extensions, transcribe voicemails to your email, and even send business texts without replacing your existing phones.

Wave Accounting

Keep your books balanced with this program that is easy to use and offers most of its features for free, including receipt and invoice scanning, report generation, and more. If you need extras like direct deposit payroll or payments, the $19 a month subscription fee won’t break the bank.

SCORE

This nonprofit organization offers business templates and tools to help small businesses with finance, planning, marketing, sales, and more… And almost everything is free to the user. They also provide valuable resources and advice on their website.

15Five

This communication tool gives owners and managers valuable feedback from their own staff. The concept is simple: employees spend 15 minutes a week answering important questions, which offer critical insight to employers. Managers are then able to read and respond directly, opening communication in an innovative way.

top
Page 1 of 9 12345...»