Our History

ShofarNexus was seeded from a project started in the late 1990s to manage the projection of song lyrics for a congregation at a church. Over the following years technology was developed to deliver the lyrics on screen and simultaneously live on the web. The product expanded to include audio and video delivered both live and on demand.

The project proved to be too early for the technology of the day, and more importantly it did not produce sufficient revenue to fund development.

Over the following years the design went under a significant review. Refinement of the various component parts of the system resulted elegant solutions that can be applied in many arenas.

The Screen

Circa 1998 technology was seeded to manage the projection of lyrics on a screen for a worship service. The first goal was to allow the operator to view the entire song and be able to follow the planed order of verses by simply hitting enter or be able to click on a verse for impromptu situations. The first implantation used VBScript with DHTML.

Just as we can focus on the content of the book and not be distracted by the technology of the book, it was important to deliver lyrics in a natural way and not dazzle with technology. Simple operation was required to allow a first-time operator to deliver a crisp error-free presentation. Responsiveness of the application was important to allow an operator to quickly respond to impromptu events. The design allow for numerous occasions where the lyrics for an impromptu song were on screen within moments and sometimes before the first word.

Live and on-demand

Additional goals were added to allow for live and on-demand presentation of the lyrics with the audio and later video of the service. This seeded the need for storage and distribution technology.

The design moved to a full web application written in C# with a SQL Server database. Data correctness issues were addressed by developing techniques using immutable data within the database. Immutable data proved to be the ideal solution for archiving and distribution.

SQL to XML

Over time the weight and distribution requirements of SQL Server became too much of a burden and the XML based ShofarFile was born. The ShofarFile had immediate advantages over the SQL based implementation in the areas of code size, performance, immutability, archiving and distribution.

Initially the ShofarFile was encoded using Microsoft’s .Net Framework’s XML serialization. Although Microsoft’s XML implementation is very good, it only gives limited control of what the XML looks like which hinders readability. It also imposed a significant startup time for the application which grew to over 18 seconds. New serialization code was written from scratch that reduced the startup time to zero, improved performance and provided complete control of the layout of the XML file.

Performance

After experimenting in many directions, two new goals were introduced. It is clear that less code allows for a more complete understanding of the entire application by an individual and gives a smaller surface area to optimize and secure. A goal was set to keep the application under one megabyte in size.

Response time was also important, so a one millisecond goal was set from the time the request is in place to the time the response is complete and ready for return.

In 2008, with most of the desired functionality in place, both of these goals were accomplished.

Embedded Systems

Starting in 2009 we are returning to our roots in embedded systems. The ShofarNexus core is being moved to C++ to allow for implementation on embedded systems.

Since ShofarNexus is fundamentally built on the ShofarFile, a small amount of code has to be updated and all of the data can now reach the smallest of systems.

ShofarDomain™ShofarDomain.Com
Help Library

Core

Dev

Kind

Kit

Leaf

Map

Message

Net

Overview

Packet

Primitives

Run

Secure

Session

Site

Socket

Sprint

Stack

Tool

The Tree

ShofarNexus Help

Acc

Aide

Cart

Coin

Core

Domain

Download

Email

Helm

Identity

Journal

Kind

Kit

Main

Message

Multipurpose Internet Mail Extensions (MIME)

Net

ShofarNexus Overview

Pair

Password

Portfolio Help

Price

Program

Render

Run

Secure

Session

Site

Socket

Sprint

Start

System

Task

The Tree ● The heart of ShofarNexus

Unicode

URL

Win

XML

Core

Banner

Menu

Topic

Flyer

Widget

Page Layout

Time

Wide Layout

Icons

Logos

Primitives

Belt

Bond

Branch

Build

Fact

File

Glob

ID

Image

Leaf

Log

Markup

Money

Object

Package

Parse

Phrase

Render

Sprint

Stack

String

Sum

SVG

Time

Tray

Unit

Verb

Site

About

Domain

Firewall

HTML

Live

Message

Pair

Robots

Share

Status

Template

Site Type

UI

User

Welcome