Alternative Office Application Solutions

Let’s face it. Times are still tough and money is still tight, but your workload certainly isn’t. We all know the very popular Microsoft Office applications aren’t exactly cheap, but they’re still necessary. Well there are ways to get the job done at just the right price, free. Whether you’re using Windows, Linux, or Macintosh there is a free office suite alternative out there for you! Let’s check it out.

open-source-crave-1Apache OpenOffice has been available to the public since 2000. Now maintained by the popular web server software developer Apache, OpenOffice is one of the most popular free office alternatives today. One of the great benefits to this software, as well as other free office suite solutions is its compatibility to Microsoft Office file formats.

Here is what comes with Apache OpenOffice:

  • Writer – a word processor you can use for anything from writing a quick letter to producing an entire book.
  • Calc – a powerful spreadsheet with all the tools you need to calculate, analyze, and present your data in numerical reports or sizzling graphics.
  • Impress –  the fastest, most powerful way to create effective multimedia presentations.
  • Draw – lets you produce everything from simple diagrams to dynamic 3D illustrations.
  • Base – lets you manipulate databases seamlessly. Create and modify tables, forms, queries, and reports, all from within Apache OpenOffice.
  • Math – lets you create mathematical equations with a graphic user interface or by directly typing your formulas into the equation editor.

As mentioned earlier, Apache OpenOffice is compatible with Microsoft Office file formats. You can open, edit, and save into Microsoft Office formats. You can read from .doc, .docx, ,xls, .xlsx, .ppt and .pptx. You can save to .doc, .xls, and .ppt. Apache OpenOffice supports Windows, Macintosh and Linux environments. To check out more about them, visit their website at

There are certainly more free alternative office suits available to you. Check out LibreOffice (Windows / Mac / Linux),  Google Docs (web-based, works with modern web browsers), NeoOffice (Mac) and iLIfe / iWork (With purchases of new Macs or iOS devices, or you can upgrade if you had a previous version of iLIfe and iWork.).

OmniSpear, Inc is always looking at the new and innovative products that come from our wonderful industry! We embrace and utilize different software and hardware solutions to meet our customers needs and their budget. For more information, visit and

CSS Frameworks: a Developer’s Best Friend

Most contemporary web developers recognize the importance of using an application framework when developing for the web.  From Ruby on Rails to the litany of PHP frameworks available to up-and-coming Node.js offerings, application frameworks substantially reduce development time while improving code readability and standardizing development practices for the web.  Surprisingly, though, many developers continue to handcraft their CSS for each application, or copy-and-paste legacy layout styles to new projects.  CSS frameworks improve developer workflow for a few key reasons:

1. CSS frameworks standardize layout code.

Handcrafting layout code or maintaining your own company styles is a functional solution, but it reduces readability.  New developers, or developers working on new projects, must learn the terminology and intersectional usage of a number of styles before they can step in to make changes.  Custom stylesheets that have passed through a number of hands often accrue a number of outdated, conflicting, or repetitive styles that further worsen this problem.  Regular refactoring can solve this problem to an extent, but who wants to waste time rewriting old CSS?

CSS frameworks standardize layout code because each class in the framework has the same meaning across applications, in much the same way that each element of an application framework connotes the same functionality across projects.  This keeps stylesheets short and readable: each developer can learn the framework styles once, and only have to use custom styles for application-specific colors and layout elements.

2. CSS frameworks solve cross-browser compatibility issues.

A mature CSS framework, such as Bootstrap or Foundation, will have undergone an extended period of open-source development.  This means that layout issues with old browsers have often been sussed out already, eliminating most of that feeling of shock you get when you first open your site in IE7.  Cross-browser testing is a must for any project, but a good CSS framework will solve many problems for you before you even notice them.

3. CSS frameworks play well with mobile devices.

CSS frameworks are generally built around responsive principles, automatically optimizing content and even menus for the mobile web.  While application-specific tweaks will need to be made, frameworks drastically reduce the time necessary to create a great user experience on mobile platforms.  Additionally, some frameworks, such as Foundation, include layout elements that allow you to control the flow and order of layout elements as they are resized downwards.

Which framework?

The two most common CSS frameworks being used today are Twitter’s Bootstrap and Zurb’s Foundation.  Both offer the advantages mentioned above and neither is a poor choice; however, they have different focal areas that make each one a better choice for different types of projects.  Bootstrap has traditionally been focused more around desktop than mobile, although this has changed to an extend with its most recent release; if battle-tested responsive behavior is important to your project, Foundation is the better choice.  Additionally, a number of developers tend to adhere too closely to stock Bootstrap in their implementations, creating a “Bootstrappy feel” that plagues a number of websites.  Foundation doesn’t tend to create this effect, but that may be just because it’s currently the less popular of the two.  Finally, if your application is in Ruby on Rails, Foundation is the far superior choice; it is implemented with SCSS classes that allow you to easily create mixins and adjust variables to easily access powerful customizability.   Whichever option you select, though, use of a CSS framework will go a long way towards building a powerful, beautiful application with readable, well-maintained styles.

Standard Development Methodology Improves the Odds: Meeting Clients’ Expectations and Delivering Great Custom Web Applications

Delivering great software applications is imperative to the success of a custom software development shop. Clients turn to a custom shop when off-the-shelf, prepackaged one-size-fits-all solutions can’t meet their business need. They require a unique solution. Delivering a great custom solution means merging the benefits of a standard solution – value, predictability, tried and tested – into a custom software application tailored to the Client’s own business requirements.

A great development team can more successfully deliver great software applications – applications that delight the Client, are delivered on time and on budget and are defect free – with the benefit of our Standard Development Methodology. Even though no two custom software projects will ever have the same spec, the building blocks are generally very similar. Whether you’re building an elegant glass atrium or a solid cinder block warehouse, you need to know the building’s use, put in a foundation, build a solid infrastructure and add exterior finishing touches to realize the architect’s vision and ultimately meet the client’s expectation.

Adhering to a Standard Development Methodology enables our team to more successfully engage the Client resulting in an agreed upon project scope, an effective build plan, realistic due dates and aligned expectations. Our Development Methodology allocates appropriate time to Discovery – gaining insight about the Client and its requirements – and Design – establishing a clear vision for the application. These upfront, pre-coding phases result in the most value for the development dollar.

development process

The truth is, it’s expensive to code. The greatest value in custom development is achieved when code is written to meet the project requirements the first time through. Many might view planning and documenting as time wasted. We believe time spent planning avoids wasted time during Development.

Can Data Mining Be Used For Disease Tracking?

Data mining has become a topic of heavy debate over the years, as many find it intrusive of their personal habits and information.  While many arguments are made on either side of the debate, an interesting new spin on the use of data mining has come to the table.  Epidemiologist Caroline Buckee of the Harvard School of Public Health in Boston, has uniquely forecasted data mining trends to track the spread of malaria across regions near Lake Victoria in Africa.  From her research of data towers, Caroline has been able to interpret cell phone usage information to track the spread of the life-threatening disease.

How was she able to do this simply by studying these cell data figures?  The first step was tracking the largest data tower in the region to study the travel patterns of people to and from areas near Lake Victoria.  What Caroline discovered, is that those people making calls or sending texts from the main tower were traveling 16 times more than others in the region.  Additionally, this same group of individuals were 3 times as likely to travel to Lake Victoria.   With higher exposure to the area of water and surrounding tea plantation, these travelers were prone to getting bites from nearby mosquitos and inadvertently spreading the disease at an increased rate.

big.data_.cheap_.phone_.2x299In hopes of alleviating future epidemics, Caroline plans to not only map out additional affected zones with this knowledge, but to also help prevent the spread by informing the population of nearby danger zones.  The goal is to be able to use  data extracted from cell towers to send preventive messages to travelers in compromised areas via their devices. These alerts can inform people of areas to avoid and safety measures to help contain diseases, such as areas where mosquito netting is a necessity.   We are curious to see what other ways technology can be used in fields and even countries we didn’t think about before.  In a topic that angers most consumers, this is a new spin that is definitely going to change the field.

Manually add depth of field to an image – Photoshop Tutorial

Depth of field or DOF is a photography term that refers to the distance and focus of an object as it relates to the camera. Good use of DOF will isolate an object drawing attention or focus which naturally occurs to the human eye. For instance, if you hold up an object close to your face, your eyes will focus on it while things in the background will become “blurry”. This tutorial will show you how to apply this technique to a photo that does not have good DOF to begin with making it more “artistic”.

We will start with an image that has even focus throughout the frame. Our end result will have the OmniSpear Go-Kart in perfect focus while the track, barriers, and fans gradually lose focus and become blurry. This will replicate good DOF technique.
Image with even focus throughout the frame

Our first step is to isolate our focus object. This is achieved by cutting out a shape of the object using the pen tool. Our kart is a complex object so precision is required. If you had a picture of a peach or a soccer ball you could just use your lasso or marquee tool. Once the shape is cut out we fill it with solid white.
Isolated object masked

As we determine our focus objects for the image we will fill each of them from light to dark. Lightest will be in-focus while the darkest will become blurred or out of focus. This photo will have five distinct focus objects:  go-kart, barrier with tires, barrier with a fence, fans, and the track.
Focus map objects

Each object is created, shaded and then layered to create a blur-map which we will use to pin-point our focus. This is done by selecting all of the visible layers and copying them to a new channel which we create. This new channel is called “Alpha 1” by default in Photoshop.
Channels window

We now return to layers and de-select our blur-map items. At this point you should only see the original photo. Next is how we make the magic happen!
Lens Blur settings photoshop

Select your photo layer. Go to the top menu and select Filter -> Blur -> Lens Blur… The controls and preview should show your photo as completely blurred at this point. Look at the Depth Map source and select: “Alpha 1”. This will apply your DOF to the photo. If your blur is opposite of what you expected just click the “invert” checkbox. You may need to tweak the radius to keep the image from becoming too blurry, in this example it is set to 9. Feel free to tweak the other iris settings which may create a more desired effect for what you are attempting to achieve.
Image with depth of field manually applied

Once the blur meets your satisfaction, just click the OK to see the processed results. You should end up with a modified image that has a simulated depth of field applied to it!

Mobile Application Development Frameworks

Here at OmniSpear, the development team is about to ramp up on creating a mobile application for the iOS and Android platform (Windows Phone support to follow). Evaluating the many frameworks out in the wild, we’ve become attracted to one specific contender. Our initial requirements out of the gate are as follows:

  1. Rapid development & deployment without steep learning curve.
  2. The ability to test the application on multiple physical devices without publishing the application to the market store (Google Play & Apple Store).
  3. Mobile application should have a native look and feel aspect to it.

Following options were assessed:

PhoneGap Build, Steroids, and Icenium all support the PhoneGap framework (or the open source version Cordova). Since Javascript is a common knowledge among our team, utilizing PhoneGap fits quite well in our development environment. All three has a solid build system allowing us to make changes and viewing the application on our own physical device with ease. However Icenium really shines when it comes to providing a rich user interface library, that’s where Kendo UI comes in (among other attractive integration features like MVVM).

Build, test, fix, test, and deploy. We could take the route of either creating or bringing in external open source work to create the bells and whistles and the lean underlying code that does the real work. However if the project schedule is too sensitive to bringing in some “cool” library from Github what naturally makes sense? In our case, a whole solution provider to keep development cycle tight and all integrated along with a dedicated customer support.

For those interested in the difference between the popular jQuery Mobile and Kendo UI: JQUERY MOBILE VS KENDO UI