Technical FAQs

Question

After searching a document, an error icon appears in the search results panel. Clicking on it displays the following error message: “x page(s) cannot be searched.” Why does this occur and how can I find out which specific pages couldn’t be searched?

Answer

When the PrizmDoc Viewer text-service cannot find any text for a given page in the document, it provides an array of all the pages without text in the response from searchTask results.

In short, the document is fine and simply contains pages without text. If you look at the pagesWithoutText array contained within the response data from searchTasks, you’ll see something like this:

[0, 1, 7, 17, 43, 45, 65, 67, 77, 79,…]

The values reported are pages that do not contain any text but instead are either blank or contain an image. This data can then be used to inform the user of how many pages are not searchable.

Today’s applications need tremendous versatility when it comes to document management. Developers are expected to deliver tools that can handle multiple file types and have the ability to share them securely with internal users and people outside the organization. As more companies transition to remote-first work environments, online (and secure) collaboration tools are becoming a must-have feature. One of the major challenges facing developers is how to adapt existing document technologies and practices to an increasingly interconnected environment without creating additional risks.

Rendering and Conversion Challenges of Microsoft Office

Microsoft Office (MSO) files have long presented problems for organizations looking for greater flexibility when it comes to viewing and marking up documents. This stems in part from the widespread reliance on the Office software itself, which held a staggering 87.5 percent share of the productivity software market according to a 2019 Gartner estimate. Companies of all sizes across multiple industries rely on programs like Word, Excel, and PowerPoint, but there are many instances where they would like to be able to share those documents without also surrendering control of the source files.

The challenge here is twofold. On the one hand, if an organization shares an MSO file with a client or vendor, there’s no guarantee that the recipient will be able to view it properly. They may not have access to Office, in which case they can’t open the file at all, or they may be using an outdated version of the software. While they may still be able to open and view the file, it may not display as originally intended if it uses features not included in previous editions of Office.

On the other hand, however, sharing files outside a secure application environment always creates additional risk. Microsoft Office documents are notoriously attractive targets for hackers seeking to embed malicious code into files, and older, unpatched versions of the software contain numerous known vulnerabilities. Sharing MSO files with an outside party could quickly result in the file being exposed to a compromised machine or network. There’s also a question of version control and privacy, as a downloaded file could easily be copied, edited, or even distributed without authorization.

Unfortunately, it has proved quite difficult to natively render MSO documents in another application. Anyone who has had the misfortune of trying to view or edit a DOCX file in Google Docs will understand the challenges involved. While it’s certainly possible to render MSO files in a different application, the end result is often a little off the mark. Fonts may be rendered incorrectly, formatting could be slightly (or drastically) off, and entire document elements (such as tables, text fields, or images) could be lost if the application doesn’t know how to render them properly.

Rendering MSO Files Natively with PrizmDoc Viewer

As a fully-featured HTML5 viewing integration, Accusoft’s PrizmDoc Viewer can be deployed as an MSO file viewer that renders them like any other document type. However, this doesn’t provide a true native viewing experience, which many businesses require for various compliance reasons. Fortunately, the PrizmDoc Server’s Content Conversion Service (CCS) allows applications to natively render MSO documents with a simple API call.

The MSO rendering feature allows PrizmDoc to communicate directly with an installed version of Microsoft Office, which ensures that every element of the file is rendered accurately within the HTML5 viewer. For example, a DOCX file opened in Microsoft Word should look identical to the same document rendered within an application by PrizmDoc Viewer. Once the document is accurately rendered, it can be shared with other users inside or outside an organization. This allows people to view and even markup MSO files without the original source file ever having to leave the secure application environment. It’s an ideal solution for reducing security risks and eliminating the possibility of version confusion.

Converting Additional MSO File Elements

In many instances, organizations need to share MSO files that have already been marked up or commented upon. This could include Word documents with multiple tracked changes or PowerPoint slides with extensive speaker notes. Those additional markups could be important elements that need to be shared or reviewed, so it’s critical to include them during the conversion and rendering process.

Using the server’s CCS, PrizmDoc Viewer can convert Word documents with accepted or rejected markup changes when converting the file into a different format (such as converting an MSO file to PDF) or rendering it for viewing in the application itself. The same capabilities extend to PowerPoint presentations with speaker notes. When converting these MSO files, the outputted version can consist of slides only or include the speaker notes along with them.

These conversion and rendering capabilities provide developers tremendous flexibility when they’re integrating viewing features into their applications. They can easily deploy them to help their customers collaborate and share MSO files without having to remove them from a secure environment. It’s also a winning feature for end users, who don’t need to worry about downloading files or having access to the latest version of Microsoft Office.

Improve Your Document Capabilities with PrizmDoc Viewer

With its extensive file conversion, redaction, and annotation capabilities, Accusoft’s PrizmDoc Viewer is an essential integration for any document management platform that requires an MSO file viewer. It provides support for dozens of file types to give applications the flexibility needed to meet the demands of today’s complex workflows and improve efficiency. As an HTML5 viewer, it can be integrated into any web-based solution with minimal development effort, which frees up valuable resources developers need to focus on the innovative features that will help set their applications apart in a competitive market.

To learn more about PrizmDoc Viewer’s robust feature set, have a look at our detailed fact sheet. If you’re ready to see what our HTML5 viewer will look like within your application environment, download a free trial and start integrating features right away.

OCR vs ICR

The days of manually transcribing scanned documents into an editable, digital document are thankfully long behind most organizations. Error-prone manual processes have largely given way to automated document and forms processing technology that can turn scanned documents into a more manageable form with a much higher degree of accuracy. 

Much of transition was made possible by the proliferation of optical character recognition (OCR) and intelligent character recognition (ICR). While they perform very similar tasks, there are some key differences between them that developers need to keep in mind as they build their document and form processing applications.

How Does Character Recognition Technology Work?

Character recognition technology allows computer software to read and recognize text contained in an image and then convert it into a document that can be searched or edited. Since the process involves something that humans can do quite easily (namely, reading text), it’s easy to assume that this would be a rather trivial task for a computer to accomplish.

In reality, getting a computer program to correctly identify text and convert it into editable format is an incredibly complex challenge complicated by a wide range of variables. The problem is that when a computer examines an image, it doesn’t see people, backgrounds, or text as distinct images, but rather as a pattern of pixels. Character recognition technology helps computers distinguish text by telling them what patterns to look for.

Unfortunately, even this isn’t as straightforward as it sounds. That’s because there are so many different text fonts that depict the same characters in different ways. For example, a computer must be able to recognize that each of the following characters is an “a”:

When humans read text, they have a mental concept of what the letter “a” looks like, but that concept is incredibly flexible and can easily accommodate a broad range of variations. Computers, however, require precision. Programmers must provide them with clear parameters that help them to navigate unexpected variations and identify characters accurately.

Pattern Recognition

The earliest versions of character recognition developed in the 1960s relied on pattern recognition techniques, which scanned images and searched for pixel patterns that matched a backlog of font characters stored in memory. Once those patterns were located, the software could translate the characters into searchable, editable text in a document format. Unfortunately, the patterns had to be an exact pixel match, which severely limited how broadly the technology could be applied.

One of the first specialized fonts developed to facilitate pattern recognition was OCR-A. A simple monospace font (meaning that each character has the same width), OCR-A was used on bank checks to help banks quickly scan them electronically. Although pattern recognition libraries expanded over the years to incorporate common print fonts like Times New Roman and Arial, this still presented serious limitations, especially as the variety of fonts continued to grow. With one popular font finding website indexing more than 775,000 available fonts in 2021, pattern recognition needed to be supplemented by another approach to character recognition.

Feature Detection

Also known as feature extraction, feature detection focuses on the component elements of printed characters rather than looking at the character as a whole. Where pattern recognition tries to match characters to known libraries, this approach looks for very specific features that distinguish one character from another. A character that features two angular lines that come to a point and are crossed by a horizontal line in the middle, for instance, is almost always an “A,” regardless of the font used. Feature detection focuses on these qualities, which allows it to identify a character even the program has never encountered a particular font before. As the printed examples above demonstrate, however, this approach needs to take several ways of rendering the character “A” into consideration when setting parameters.

Most character recognition software tools utilize feature detection because it offers far more flexibility than pattern recognition. This is especially valuable for reading document images with faded ink or some degradation that could prevent an exact pattern match. Feature detection provides enough flexibility for a program to be able to identify characters under less than ideal circumstances, which is important for any application that has to deal with scanned images.

OCR vs ICR: What’s the Difference?

Optical character recognition (OCR) is typically understood to apply to any recognition technology that reads machine printed text. A classic OCR use case would involve reading the image of a printed document, such as a book page, newspaper clipping, or a legal contract, and then translating the characters into a separate file that could be searched and edited with a document viewer or word processor. It’s also incredibly useful for automating forms processing. By zonally applying the OCR engine to form fields, information can be quickly extracted and entered elsewhere, such as a spreadsheet or database.

When it comes to form fields, however, information is frequently entered by hand rather than typed. Reading hand-printed text adds another layer of complexity to character recognition. The range of more than 700,000 printed font types is insignificant compared to the near infinite variations in hand-printed characters. Not only must the recognition software account for stylistic variations, but also the type of writing implement used, the quality of the paper, mistakes, steadiness of hand, and smudges or running ink.

Intelligent character recognition (ICR) utilizes constantly updating algorithms to gather more data about variations in hand-printed characters to identify them more accurately. Developed in the early 1990s to help automate forms processing, ICR makes it possible to translate manually entered information into text that can be easily read, searched, and edited. It is most effective when used to read characters that are clearly separated into individual areas or zones, such as fixed fields used on many structured forms.

Both OCR and ICR can be set up to read multiple languages, although limiting the range of expected characters to fewer languages will result in more optimal recognition results. Critically, ICR does not read cursive handwriting because it must still be able to evaluate each individual character. With cursive handwriting, it’s not always clear where one character ends and another begins, and the individual variations from one sample to another are even greater than with hand-printed text. Intelligent word recognition (IWR) is a newer technology that focuses on reading an entire word in context rather than identifying individual characters.

To learn more about how OCR vs ICR technology and how they can transform your application when it comes to managing documents and automated forms processing, download our whitepaper on the topic today.

Banks and financial technology (fintech) companies commonly use document life-cycle management solutions to make their back-office functions run more smoothly. To take full advantage of these systems, organizations must be able to transform documents into a format they can work with.

Question

Can PrizmDoc handle password-protected files, such as PDFs or Excel files?
How would a user specify a password for a particular document?

Answer

It is possible to specify the password for a password-protected document when creating a viewing session in PrizmDoc. When sending a request to create a viewing session, you’ll use the password field in the request body to specify the password. For example…

POST http://localhost:3000/ViewingSession
Content-Type: application/json
{
    "source": {
        "type": "url",
        "url": "https://www.usability.gov/sites/default/files/creating-wireframes.pdf"
    },
    "password": "hunter2"
}

(Replace "hunter2" with the actual password)

Please note that even if a file needs a password and is not provided one (or is provided one that’s incorrect), the viewing session should still be created successfully. The easiest method to determine whether the password is needed/correct is to make a call to get the page. You can do this by making a GET request to the GetPage route using the viewingSessionId created earlier, like so…

GET pas_base_url/Page/q/0?DocumentID=u{viewingSessionId}

…be sure to replace pas_base_url with the root of your Prizm Application Services (PAS) instance (usually this is http://localhost:3000) and replace {viewingSessionId} with the actual value for viewingSessionId created in the previous step.

The above call will return 200 OK if the page load is successful. If a password is required/incorrect, you should see a return status code 480. There will be additional response headers called accusoft-status-number and accusoft-status-message, which should be 4001 and "Document requires a password", respectively.

You can see the above in greater detail in the product documentation here.

You can use this information to re-create a viewing session with the correct password.

Currently, there is a feature request planned for a potential future release of PrizmDoc to prompt the user for a password if one is required.

Question

After searching a document, an error icon appears in the search results panel. Clicking on it displays the following error message: “x page(s) cannot be searched.” Why does this occur and how can I find out which specific pages couldn’t be searched?

Answer

When the PrizmDoc Viewer text-service cannot find any text for a given page in the document, it provides an array of all the pages without text in the response from searchTask results.

In short, the document is fine and simply contains pages without text. If you look at the pagesWithoutText array contained within the response data from searchTasks, you’ll see something like this:

[0, 1, 7, 17, 43, 45, 65, 67, 77, 79,…]

The values reported are pages that do not contain any text but instead are either blank or contain an image. This data can then be used to inform the user of how many pages are not searchable.

PDF viewers

Few file formats are as widely recognized and used as PDF. In fact, PDFs have become so commonplace that it’s hard to imagine a time when they didn’t exist. Most users don’t even give them much thought, knowing that all they need to do is click on the file and trust that their PDF file viewer will be able to open and render it accurately. But things weren’t always quite so simple before PDF viewers.

Origins of PDF

It’s easy to take document viewing and printing for granted today, but to understand the development of the PDF format, it’s important to look back at the document challenges facing organizations in the early 1990s. Businesses, government agencies, and universities were already using local area networks to share digital documents, but there was no guarantee that a document would display the same way on every machine. In addition to multiple competing word processor formats (such as Microsoft Word and Corel WordPerfect), there was no reliable way of viewing files containing images or other layout elements across different software and operating systems.

Around that time, Adobe co-founder John Warnock became focused on the idea of creating a standardized document format that would work across all operating systems and effectively function like digital paper. The primary goal was to ensure that the document contents would look the same no matter where they were viewed. That meant solving complex challenges like replacing unsupported fonts without distorting the document’s layout and distilling graphic parameters to flatten the file so it would load within seconds instead of minutes.

Adobe released the first version of the Portable Document Format (PDF) in 1993, but it would take some time for the format to catch on. “The world didn’t get it,” Warnock recalled in a 2010 interview. “They didn’t understand how important sending documents around electronically was going to be.”

The early years were rocky, largely because PDF was just slightly ahead of its time. Early PDFs had limited functionality and were slightly too large to be sent quickly over the early internet connections. That began to change in 1996, however, when the Internal Revenue Service (IRS) used PDFs to provide downloadable tax return forms and instructions online. The IRS also started using PDF files to digitize their internal document processes, largely phasing out their reliance upon paper documents for auditing. This adoption convinced many hesitant organizations that if the format was good enough for the IRS, then it was good enough for them as well.

The Growth of PDF File Viewers

In the years following the introduction of PDF as an open format, a unique “freemium” model emerged that helped to promote its use across a variety of industries. While developers sold software that could be used to create, convert, edit, and secure PDFs, they also offered more streamlined PDF file viewers for free. This ensured that anyone could easily open and view PDF files no matter what kind of computer or operating system they were using. 

Although early readers were offered as separate software applications, they quickly became available as libraries that could be integrated into an existing application. By integrating a PDF file viewer directly into an application, developers could provide secure PDF support without having to rely upon any external software.

Today, there are multiple PDF file viewers available, which often makes it difficult to identify the one that provides the right combination of rendering performance and security for a particular industry’s needs.

The Rendering Challenge

Rendering a PDF file accurately is a deceptively complex task because not every file is constructed in the same way. In fact, prior to the PDF standard being taken over by the International Standards Organization (ISO) in 2007, Adobe’s documentation surrounding the format was rather infamously vague, resulting in the creation of poorly optimized PDFs that third party readers had difficulty viewing properly. Some PDF file viewers address this challenge by adding new code to accommodate known issues, but this has the unpleasant side effect of giving the reader a larger footprint and potentially impacting performance.

This challenge has become even more complex in recent years given the popularity of mobile devices. Effective PDF file viewers must be able to deliver a responsive viewing experience that can adjust their user interface (UI) to different sizes and types of screens.

The Security Challenge

Security has always been an important consideration for PDF file viewers, but it has become a much more prominent concern since the first virus capable of embedding itself in PDF files was uncovered in 2001. Unfortunately, security vulnerabilities continue to be a problem with third party PDF readers, as evidenced by the multiple vulnerabilities discovered in Adobe’s PDF products in 2020. While developers have more PDF file viewers to choose from than ever before, finding a solution that doesn’t introduce security risks has become a high priority when building a new application.

One of the best solutions for resolving security challenges is to build PDF capabilities directly into their already secure applications. Viewing or creating a PDF file in an external program, such as third party software or even within a web browser, introduces a potential functionality and control gap. It’s difficult to control what can be done with a PDF once it travels outside the confines of a secure application environment, allowing it to be downloaded, viewed, and potentially altered. With PDFs set to continue as the de facto standard for digital documents, it makes more sense than ever for developers to give their applications the ability to manage those files natively, without having to interface with external software dependencies.

Find the PDF File Viewer That’s Best for You

Developers have many choices when it comes to integrating PDF viewing capabilities, which is why Accusoft has developed a broad range of PDF integrations to address every potential use case. Our Accusoft PDF Viewer delivers a high-speed, lightweight JavaScript library that offers out-of-the-box mobile support and requires only a few lines of code to install. Available as a free-to-use integration, it’s the fastest way to add dynamic PDF viewing capabilities to your application without any configuration headaches. 

If your application needs more than just support for PDF viewing, PrizmDoc Viewer provides production-scale annotation, redaction, and conversion for multiple file types. As an HTML5 viewer, PrizmDoc Viewer easily integrates into applications to create a secure environment for documents and images. Try it today using an online demo or download a free trial to see how PrizmDoc Viewer can transform the way your application handles and views documents. 

Question

With a fully-running PrizmDoc environment (version prior to v10.5), I’m noticing times where the system becomes unresponsive. That is, at some point, it no longer processes requests being made to the backend and I have to restart PrizmDoc in order to alleviate it. What could be causing this?

Answer

Prior to version 10.5, PrizmDoc used ProxyServer as its image processing system. Our Development Team eventually began seeing that the ProxyServer exhibited architectural problems that lead to a multitude of issues, such as unresponsiveness.

Starting in version 10.5, the Development Team created the Prizm Content Connect Imaging Service (PCCIS), which is far more stable.

To resolve this issue we suggest upgrading to the latest revision of PrizmDoc. Please see the product page for more information found here: https://www.accusoft.com/products/prizmdoc/overview/

Question

With a fully-running PrizmDoc environment (version prior to v10.5), I’m noticing times where the system becomes unresponsive. That is, at some point, it no longer processes requests being made to the backend and I have to restart PrizmDoc in order to alleviate it. What could be causing this?

Answer

Prior to version 10.5, PrizmDoc used ProxyServer as its image processing system. Our Development Team eventually began seeing that the ProxyServer exhibited architectural problems that lead to a multitude of issues, such as unresponsiveness.

Starting in version 10.5, the Development Team created the Prizm Content Connect Imaging Service (PCCIS), which is far more stable.

To resolve this issue we suggest upgrading to the latest revision of PrizmDoc. Please see the product page for more information found here: https://www.accusoft.com/products/prizmdoc/overview/

The COVID-19 pandemic may not be the first pandemic to impact global supply chains, but its impact has been orders of magnitude greater than previous public health crises. Businesses around the world have been forced to contend with the twin challenges of transitioning to a remote workforce and overcoming severe supply chain disruption. As 2020 winds down to a close, it’s becoming clear that the pandemic may well represent a “new normal” for logistics strategy rather than a temporary situation.

3 Critical Supply Chain Challenges 

From implementing new technology to establishing relationships with alternative vendors, organizations across multiple industries are taking steps to meet the challenges confronting their supply chains in both the immediate and long-term future. One of the biggest areas of focus is barcode integration. Although they may not seem like they belong at the forefront of innovation, barcodes are scanned more than six billion times every day and serve an incredibly important role in modern supply chain management.

Here are a few of the biggest challenges organizations are facing:

1. Supply Chain Visibility

Speed and flexibility are competitive advantages in today’s on-demand marketplace. Customers want products delivered faster and will quickly lose faith in brands that fail to meet their expectations. According to a 2019 survey of online consumers, 72.7% of respondents were unlikely to order from a company again after a poor delivery experience. Given those high stakes, it’s incredibly important for organizations to maintain high levels of visibility into their supply chains.

Barcode technology makes it possible to track products and materials throughout the entire production and distribution process. A quick scan is all that’s needed to update an item’s status every time it’s processed at a location. That information feeds into inventory tracking software that allows businesses to get a more accurate picture of how shipments move through their supply chain. This visibility makes it easier to identify potential problems and enhance overall logistics efficiency. 

2. Digital Transformation

Despite the growing emphasis on digital transformation across the economy, the average supply chain is still held back with inefficient, legacy infrastructure. Small and medium-size businesses face the greatest challenges, with only 21% of them using digital tools to integrate their supply chain operations with other departments. In the retail industry alone, bad processes and data disconnects cost companies over $500 billion annually. As the holiday season draws nearer and promises to bring with it a massive increase in online shopping, having a fully digital supply chain in place with enough speed to handle that demand is essential.

Implementing the right digital technology tools can help organizations to streamline their supply chains and gather the data they need to make better decisions. Barcode integration software is a foundational component of this transformation because it forms a bridge between the physical and digital elements of logistics management. Shipments can be instantly scanned into tracking systems to provide a wealth of data points across the supply chain, making it easier to adapt to disruptions and develop better processes. Barcode libraries also need to be able to scan and decode both traditional 1D codes and newer 2D codes quickly and accurately to keep products moving swiftly and smoothly to consumers.

3. Automation

As many organizations have put social distancing protocols in place during the pandemic to protect the health of both employees and customers, automation has become more important to supply chain performance than ever before. These COVID-19 pressures are sure to accelerate what was already a growing push toward implementing automated software and systems. Gartner even projected in 2019 that 30% of warehouse workers will be replaced by collaborative robots by 2023, which will further drive the demand for automated scanning and inventory management tools to accompany them.

For these automated systems to work effectively, they will need robust software that can withstand the difficult working conditions of warehouses, assembly lines, and distribution centers. A barcode integration that struggles to accurately read damaged or broken barcode images, for instance, won’t last very long in such an environment. The software powering automated systems must be able to function under a variety of conditions and be adaptable enough to overcome obstacles without constant oversight from on-site workers.

Unleash Your Supply Chain With Barcode Xpress

Building software capable of meeting the needs of a truly digital supply chain is no easy task. That’s especially true when it comes to integrating barcode reading capabilities into supply chain applications. With so many barcode formats in use, developers need an SDK with the ability to accurately detect, read, and write both common and uncommon barcode types used across all industries.

Accusoft’s Barcode Xpress is a multi-language barcode integration capable of reading and writing more than 30 different barcode types quickly and accurately. A truly robust SDK solution, Barcode Xpress leverages the imaging functionalities of ImagXpress to repair damaged orbroken barcodes that other readers are unable to read.

Speed

Barcode Xpress is capable of detecting and decoding multiple barcodes on a page at speeds of up to 1,000 pages per minute. It doesn’t matter where the barcode is located, what type of code it is, or how many are present. The control is able to read them regardless of orientation within milliseconds.

Accuracy

Every time Barcode Xpress detects a barcode, it not only provides the information encoded within the image, but also reports a confidence value to ensure high levels of accuracy. Damaged, broken, or poorly printed barcodes can also be scanned thanks to the SDK’s image processing capabilities. Black noise, white noise, erasures, low resolution, white line streaks, and other common barcode problems are reconstructed and scanned automatically to keep the supply chain moving.

Versatility

With the ability to detect, read, and write over 30 different barcode types, Barcode Xpress is available in multiple configurations for Windows and Linux-based operating systems. The SDK library supports 24-bit color images, 8-bit grayscale images, and 1-bit black and white images, as well as providing more than 80 additional image processing and editing functions thanks to its ImagXpress integration.

Experience Barcode Xpress Today

Easy to deploy and utilize, Barcode Xpress is a true all-in-one solution for desktop and web applications seeking barcode recognition capabilities. Just a few lines of code is all it takes to unlock the full potential of your supply chain technology.

Find out just how simple barcode integration can be with Barcode Xpress. Sign up today to download a free trial or talk to one of our SDK specialists today to learn more.

development team
It doesn’t matter if you are a small startup or an enterprise giant, or if you have in-house development teams or contractors. The effectiveness of your tech teams is an integral part of your business success and strategic growth.

We live in a world driven by technology, and technology is changing fast. Companies can’t escape this reality. It’s either evolve with technology or become extinct. Don’t take my word for it. Think about the evolution of technology in industries like transportation (Uber), retail (Amazon), and video (Netflix). You can try to escape reality, but you will probably fail.

One of the first things that comes to mind when talking about software development teams is to ask if teams are absolutely necessary. Can’t we rely on individual tech professionals instead of teams working for our companies? Maybe the whole is not more than the sum of its parts?

The fact is that, in general, teams outperform individuals. When people work in a team toward a common goal, they combine their skills. In a team, individual performance increases, and people are able to solve more complex problems, efficiently and effectively.

My name is Joshua Candamo. I’m a technology leader with a PhD in computer science. My background is pretty diverse, and includes considerable experience programming as well as over 14 years of technology leadership.

I am currently a Director of Development for Accusoft, a software development company specializing in content processing, conversion, and automation solutions. My engineering group collaborates with about 40 people including in-house software developers, offshore contractors, technical writers, product management, quality, marketing, and sales professionals.

I want to share what I’ve learned from my personal experience of building development teams over the last 14 years, and a few useful tips to doing so successfully.

Without further ado, let’s talk about the three simple things that I found can make or break development teams.

To get started, let’s point out the obvious. Don’t fight nature; embrace it.

If you try to plant a rose in the middle of the desert, it will most certainly die.

You can’t fight nature. However, if you understand nature, you can embrace it and make decisions that align with it.

You can simply build a greenhouse in a harsh environment and succeed at growing a rose pretty much anywhere. Using the same logic, there are some foundational pieces that you have to anticipate in order to build a successful team. Avoiding basic considerations of team building will likely make your development team fail or underperform.

Team building is a broad and complex topic. And, it’s also a topic that I’m passionate about. Not everything around team building is complicated. However, most initiatives require a methodical approach to correctly execute them.

I’ll go over three ideas that are straightforward to implement, and don’t require major capital investment. Learn more in the rest of my article here.

 


 

Josh Candamo, Director of SDKs

Josh Candamo, Director of SDKs

Joshua Candamo, PhD, Development Director for the SDK product group, oversees the development and maintenance of 22 of Accusoft SDK imaging products. He believes that your most valuable intellectual property has nothing to do with patents or technology, but everything to do with your people. He is passionate about team building and creating the right corporate culture to develop amazing software products. Josh joined Accusoft in 2015 after a career in software development that included technology leadership, entrepreneurship, consulting, and both back-end and front-end development. He holds a PhD degree in Computer Science from the University of South Florida, specializing in pattern recognition and image processing.