Tuesday, June 11, 2013

Report: our support for non-profit organizations and projects in 2012

We want to make world better and that is why we provide support for non-profit organizations by providing them with free licenses for our products since 2011 year.

Results for 2012 year:

  • Number of nonprofit organizations supported in 2012: 6;
  • Project and organization types: academic institutions, researching projects, educational institutions;

What is the workflow to get a free license?
  1. Submit a request our sales support 
  2. We provide a form to fill;
  3. Fill the request form we have provided with details about your project, sign, scan and send (or fax) back to us;
  4. Get a license key for the product once form is reviewed and approved;

Limitations:
  • The organization should be nonprofit type of organization;
  • Tech support is provided is limited (we would fix bugs if any but won't provide much support on using the toolkit component for particular application);
  • Renewals for full version subscription requires to be approved;

Conclusion: 

We feel great by supporting nonprofit organizations and will continue to support them in 2013 year

Dear independent software developers, stop developing new apps and services! Research the demand for your idea first.


Dear independent software developers!

If you have a brand new idea for new service or product please do not hurry to work on the implementation. Yes, technology side is very important but the customer development is important as well.

This tutorial will show a free and fast (this will take 10-15 minutes only) way to start researching the market and the demand for your new idea by creating an online survey.

3 Important Rules before you start:
- To get visitors to fill the survey you should offer something in exchange to those who submitted the survey. For example, this could be a free subscription or free copy of your future product!
- There should be no "required" fields as this could stop one from submitting the survey
- Do you like long and detailed questions? Be specific and ask 3-4 questions only! If you have more questions then you may create more specific survey later

Here are steps to create a free survey and start gathering results in 15 minutes

1) Write down the idea of new product service
For example: MyReminders - service to remind you of important tasks to do

2) Sign up into Google Drive (it is free!)
you may just login with your Google or GMail credentials if you already have one

3) Create a new survey:

- click on "Create" button at the left bar- select Spreadsheet and this will create and open a new spreadsheet:

Creating new spreadsheet in Google Drive

New spreadsheet you just created will appear

4) Create a form for your new survey

 - in the menu select Tools - Create A Form:

Creating a new survey form that will gather results into this parent spreadsheet


This will create new survey form, then create a new survey

Example survey:


Editing sample survey


 Important:  you should tell visitors what you would offer in exchange for their feedback! In most cases free license or free subscription offer will work, but you may experiment with this. Anyway there should be something as a reward!

Here is how this survey will appear (you may preview it by clicking on "View Live Form"):

Sample survey preview

5)  Google Drive based spreadsheet will automatically collect new submitted results from the survey:

New submitted results will automatically appear in this spreadsheet

6) Then you may post or send the link to the "live form" to your social network. If you have a website then you may just insert this survey into the web-site page:

Click on Form - Embed form in a webpage..
Getting the HTML code to embed the survey

The popup dialog with the code will apear, just copy and paste it into the target web-page:

Popup dialog with HTML code to embed into target web-page


7) The last step is to setup the notifications so you will be notified when new results were submitted!

Click on Tools - Notification Rules

Tools - Notification Rules...
Then put the checkmark at "a user submits a form" and "Email - right away"
So Google Drive will notify you about new results immediately!
Setting the notification rules

8) When some results were collected you may view the statistics:


Click Form - Show Summary of responses

And Google Drive will show nicely formatted stat for responses

Summary of responses
That's all!

Gather few dozens of results and this will give you invaluable insights to what your future customers really want and on what matters and what is not in your idea.

Monday, March 04, 2013

Getting images from scanner, web camera or from other still imaging devices using WIA

Lot of our customers asking us about a way to acquire images from scanner and other imaging devices.

There are 2 ways to acquire image in Windows:

  • via TWAIN interface (used since 1992);
  • via WIA (currently is recommended by Microsoft over TWAIN/STI because of better user experience)
To acquire images using TWAIN we have open-source SDK called Bytescout Scan SDK which is available for free download at http://bytescoutscansdk.codeplex.com/

Scan SDK is free for use in both commercial and non-commercial apps

What about WIA? In the latest version of BarCode Reader SDK we have implemented new WIAImageScanner class that allows to acquire images and works on Windows XP, Vista, 7, Windows 8 for both x86 and x64 platforms.

The latest evaluation version of BarCode Reader SDK is available for download here
Registered users should download using their "secret" link instead (to get full version)

How to use this new WIAImageScanner class:


C# code sample:

using System;
using System.IO;
using System.Text;
using System.Windows.Forms;
using Bytescout.BarCodeReader;

// This example demonstrates camera image acquiring using Windows Image Acquisition (WIA).
// using built-in WIAImageScanner class from barCode Reader SDK

namespace BarcodeFromWebCam
{
 static class Program
 {
  static void Main()
  {
            // create WIA scanner object
            WIAImageScanner wiaScanner = new WIAImageScanner();

            wiaScanner.OutputFileNameTemplate = "BarCodeReader-scanned";
            wiaScanner.OutputImageFormat = WiaImageFormatType.PNG;
            wiaScanner.ImageQuality = WiaImageBias.MaximizeQuality;
            wiaScanner.ImageIntent = WiaImageIntent.UnspecifiedIntent;
            wiaScanner.ShowDeviceSelectionDialog = true;

            try
            {
                // run acquire and exit if canceled or zero images
                if (!wiaScanner.Acquire())
                    return;

            }
            catch (Exception E)
            {
                string message = E.Message;
                if (E.InnerException != null)
                    message = message + "\r\n\r\n" + E.InnerException.Message;
                MessageBox.Show("Error while acquiring images:\r\n\r\n" + message);
                return;
            }

            // Read barcode:
            Reader barcodeReader = new Reader();
            FoundBarcode[] barcodes = barcodeReader.ReadFrom(wiaScanner.OutputFiles[0]);

            if (barcodes.Length > 0)
            {
                StringBuilder builder = new StringBuilder();

                foreach (FoundBarcode barcode in barcodes)
                    builder.AppendLine(String.Format("Found barcode with type '{0}' and value '{1}'", barcode.Type, barcode.Value));

                MessageBox.Show(builder.ToString());
            }
            else
            {
                MessageBox.Show(wiaScanner.OutputFiles[0] + "\r\n\r\nCould not find any barcode.");
            }


   }
 }
}


Visual Basic .NET sample code:

Imports System.IO
Imports System.Text
Imports System.Windows.Forms
Imports Bytescout.BarCodeReader

' This example demonstrates camera image acquiring using Windows Image Acquisition (WIA).
' using built-in WIAImageScanner class from barCode Reader SDK

NotInheritable Class Program
 Private Sub New()
 End Sub
    Friend Shared Sub Main()

        ' use WIA barcode reader scanner
        Dim wiaScanner As WIAImageScanner = New WIAImageScanner

        wiaScanner.OutputFileNameTemplate = "BarCodeReader-scanned"
        wiaScanner.OutputImageFormat = WiaImageFormatType.PNG
        wiaScanner.ImageQuality = WiaImageBias.MaximizeQuality
        wiaScanner.ImageIntent = WiaImageIntent.UnspecifiedIntent
        wiaScanner.ShowDeviceSelectionDialog = True

        Try
            ' run acquire and exit if canceled or zero images
            If Not wiaScanner.Acquire() Then
                Return
            End If

        Catch E As Exception
            Dim message As String = E.Message
            If E.InnerException IsNot Nothing Then
                message = message + "\r\n\r\n" + E.InnerException.Message
                MessageBox.Show("Error while acquiring images:\r\n\r\n" + message)
                Return
            End If
        End Try

        ' Read barcode:
        Dim barcodeReader As New Reader()
        Dim barcodes As FoundBarcode() = barcodeReader.ReadFrom(wiaScanner.OutputFiles(0))

        If barcodes.Length > 0 Then
            Dim builder As New StringBuilder()

            For Each barcode As FoundBarcode In barcodes
                builder.AppendLine([String].Format("Found barcode with type '{0}' and value '{1}'", barcode.Type, barcode.Value))
            Next

            MessageBox.Show(builder.ToString())
        Else
            MessageBox.Show(wiaScanner.OutputFiles(0) + "" & Chr(13) & "" & Chr(10) & "" & Chr(13) & "" & Chr(10) & "Could not find any barcode.")


        End If

    End Sub
End Class

Tuesday, February 26, 2013

New major version of BarCode Reader SDK

We are happy to announce that ByteScout BarCode Reader SDK 3 is available on our web-site

New version brings faster processing and less memory consumption and improved support for noisy images especially for two-dimensional barcodes like QR Code and others.

Evaluation version is available from this page
Registered users please use your special link to download the latest full version

And..check out a short  rap announcement from .NET Bear!

Monday, December 24, 2012

great course on working with data for a journalist, a data-nerd or working in human-rights abuses

Great open courses were started online: School Of Data Courses

Anyone who is interested in introduction and tutorials on working with data. School Of Data in their own words: "Whether you are a journalist, a data-nerd or working in human-rights abuses – we’ll show you how to utilize data to deliver your message."

Current version of these School Of Data provides the following modules:
Main page is here: http://schoolofdata.org/

The course mentions difficulties of scrapping data from PDF documents and if you are on Windows, ByteScout can help you with it! We have solutions for regular users and for software developers:

First tool is PDF Viewer desktop utility for Windows that is able to detect and extract tables from PDF as text, as XML, as CSV, as XLS spreadsheets (with adjustable options). 

You can get PDF Viewer utility from this page
This desktop utility is free both commercial and non commercial use

If you are a software developer and looking for a API (programming interface) then please check PDF Extractor SDK, read more information about it here 

PDF Extractor SDK is commercial library but if you are working on non-for-profit or for-charity project, please contact us and we will provide you with a free license.

Thursday, August 23, 2012

Why iPhone Purchased in Russia Won't Work

This used iPhone has been purchased in Russia for about $700 USD. New  iPhone 4S price starts from $1000 USD so at least $300 has been saved.

The battery claimed to be low and all one need to do is to charge it again.

But it was not working anyway so this phone has been delivered to a service center to check and repair:



Tuesday, August 14, 2012

It's Javascript time!

Lot of things in the world moving to Javascript (both client side and server side).

Why? Javascript performance is getting better and better and it is nice to have one single language on both server and client side.

Our new javascript products:

  1. Code128 BarCode Generator For Javascript - 100% completely client side Code 128 barcode generation.

    See live demo (works in your browser)

    Licensing: is free for both commercial and non-commercial purposes.
  2. PDF Generator SDK for Javascript (bytescoutpdf.js) - client-side PDF generation that works (and tested) in all modern browsers, including Safari on iPhone, iPad, Android default browser. This script provides all tools you need to generate PDF reports and invoices
    • rich text with font style and color settings;
    • html formatting for text styles;
    • lines to draw tables;
    • images (from url or canvas);
    • outlines (bookmarks tree);
    • internal and external links inside text;
    • layers support;

      See live demo (works in browser)

      Licensing: free for non-commercial usage, commercial usage requires purchasing a license


P.S.: What is the fastest way to debug javascript without Visual Studio? You may be surprised to find that Google Chrome includes full featured javascript debuger

Sunday, April 01, 2012

ByteScout Socks Reader Beta - Technology Preview


With years of image analysis expertise with our BarCode Reader SDK (the library for Windows software developers to find and read barcodes from images and PDF documents) we decided to concentrate our efforts help to avoid the headache almost every man on Earth faces: finding a matching pair of socks

And today I'm very proud to show you our new project (still in beta): ByteScout Socks Reader Beta Technology Preview for Apple iPhone!

Before the demonstration we just dropped a bunch of socks after washing into the floor and took a photo of them with our iPhone and opened this photo in ByteScout Socks Reader app:



Clicking Analyze Socks button will start the process by initializing our patent pending Socks Reader engine:



Then Socks Reader app runs photo image preprocessing (to remove unwanted noise and prepare image for socks identification)



Next step is to identify every single sock on the image as a separate object:



Then the application performs color analysis for every single sock object and stores information about each single sock in the internal database:



Then Socks Reader uses this information to finally identify and match pairs:



Bingo! The app paired all socks and marked them with numbers:



Now just click OK button and use the map to match socks and sort them into pairs:



Next Steps (before the publiс release):

1) Integrate with Siri (so you could ask Siri: “Oh, how can I find at least one pair of socks?” and this will launch Socks Reader app automatically);
2) Discuss possible licensing of our technology to washing machines vendors to provide built-in socks pairing right into washing machines (through a built-in camera);
3) Manufacturing mechanical hands with iPhone compatible interface to work together with Socks Reader to automate socks sorting as well (so you just plug a mechanical hand into your iPhone, run Socks Reader and the hand and the app will do the rest sorting your socks!);

Public Release Date: 
We plan to release public 1.00 version for iPhone on 01 April 2013 as a free app.

Licensing Model:
Matching first 20 pairs of socks will be free. Next matches will be available as in-app purchases with “socks” credits (you will be able to purchase 10 socks, 20 socks, 100 socks, 1 million socks credits)