Thursday, November 20, 2014

Join ByteScout Community!

ByteScout now has a home for discussions related to our programs, learning programming, as well as general tech talk. Follow the link to join the live community of software developers and IT specialists.
The latest ByteScout Community topics:



Tuesday, November 18, 2014

What Language to Focus on? (New Progamming Languages Since 2000). Part 2

read the first part here

2. Scala was introduced in 2003 by Martin Odersky, and while it is not particularly new, interest in it is growing. Scala stands for “scalable language” and is designed to be just that: Scala can be used for small programs or applications at very large scale, where JavaScript falters. A key reason for this is that you can optimize the code to work with the audience. Another great advantage for companies considering Scala is interacting with Java, which they may be more comfortable with. Why learn Scala? It appeals to companies who have already invested in Java and do not want to put anything new into their production environments.

3. A programming language created by Apple known as Swift has been the most widely talked about language recently. Mainly due to the popularity of iOS, it is the third most used language in the world. Currently, there are a legion of developers and coders that uses it both inside and outside Apple. You might be wondering what’s so great about it. Is it really bringing something new to the virtual world? Yes, and no. Swift is accurately described as being Objective-C without the C. Objective-C has been evaluated by many programmers and has been proven to fall short against Java in almost every aspect. After years of this, Apple has finally released Swift which has been made to look like Objective-C in every possible way. While Swift does bring improvements to the table, it is important to understand that most of the excitement is due to the fact that Apple finally created something to get rid of the dinosaur they created long ago. 

Whichever languages you decided to learn, it’s important to understand that all will have their own unique flaws and positives. Take the time to see what the hype is really all about, if it will suit your needs, and go from there.

Thursday, November 13, 2014

What Language to Focus on? (New Progamming Languages Since 2000)

If you are a developer looking to increase their experience and professional appeal, then you know that learning a new language is always a good strategy. However, how does someone choose what language to focus on when the options are so plentiful? Here’s one piece of advice to consider: While there are new languages springing up all the time, most are derivatives of open source projects, thus disappear quickly. If you see a new programming language bubble up to the surface, don’t jump on it. Do your homework and find where it’s originated from and if it looks like it may stick around. To help you on your journey, here are 3 of the most promising new languages introduced since the 2000’s, in no particular order.

  1.  Dart is an open source language developed by Google in 2011, and is meant as a replacement for JavaScript.
    It is important because it is designed for building web applications that facilitate large-scale coding projects, something for which JavaScript is not all that suitable for. At this time, applications can run in the Dart VM built into Chrome, or other browsers through cross compile to JavaScript. Why learn Dart? If you’re someone who plans to work heavily with Chrome, Dart will enable you to execute your tasks more proficiently. Naturally, there’s another side of opinion. Microsoft for example stated that Dart was created upon the belief that JavaScript has fundamental flaws and needs to be replaced in regards to both syntax and runtime. Microsoft not only disagreed with this thought process, but went on to release a JavaScript superset language of their own, TypeScript. We won’t be getting into that here though since currently it’s just Microsoft’s way of combating Google

Tuesday, November 11, 2014

New: ByteScout PDF Generator SDK for JavaScript 1.12.125

ByteScout updated developer library PDF Generator SDK for JavaScript 1.12.125.

What's new PDF Generator SDK for JS 1.12.125:

  • German special characters (also known as Umlaut) supporting fixed;
  • improved checks against control characters in input text;
  • support for some Android PDF viewers improved: was incorrectly wrapping text lines which caused incorrect placement while viewed on some Android devices;
  • minor fixes.

Thursday, November 06, 2014

XLS File Format

XLS is a file extension used for spreadsheets created using Microsoft’s Excel application. XLS was the extension which was used for Microsoft Excel files created before MS Excel 2007 was released.  MS Excel 2007 introduced new file extension known as XSLS. This new file format utilized xml file formatting.
Data storage technique in XLS is based on traditional BIFF (Binary Interchange File Format). In BIFF, data is first converted into the binary format and then it is directly stored in file with extension .xls without any further processing. This is a very straight forward storage mechanism which does not involve any complex algorithm. This is due its simplicity, it lacked sophisticated features and was eventually replaced by more advanced and robust XLSX format in 2007.
Structure
In XLS file format data is organized into a series of binary streams and sub streams. Each individual work sheet in spread sheet is composed of one binary sub stream where as a spreadsheet consist of individual stream.
At the higher level, spread sheet contains tables where data is divided into several records, where each record contains several fields. A field is a type off attribute, for instance Age, Gender, Salary of a person. Each field contains data type, for example age can be integer. Record type is specified by a 2 byte unsigned integer that is appended at the beginning of every Record and is known as RT.
Individual data is stored in Cell which is actually container for the data. All the data is actually stored in a worksheet cell, with the exception of strings that are stored in a separate table where as actual data cell contains pointers or references to these strings.  
Versions
Although the first Microsoft version of XLS files was release in 1987 and was named version 2.0, complex and advanced features were added in version 7.0, released in 1995 with office 95. In 1990, 1992 and 1993, version 3.0, 4.0 and 5.0 were released respectively.
  • Version 7.0 (released with office 95)
This version of excel was the most robust and faster among all the versions and internal stream rewrites were updated to 32 bits.
  • Version 8 (released with office 97)
VBA was introduced as a standard language and removed natural language labels were incorporated in this version for the first time. It also introduced paper clip office assistant for the first time.
  • Version 9 (Released with office 2000)
There were only minor changes in Version 9 where paper clip office assistant could simultaneously hold multiple objects that were not previously possible.
  • Version 10 (Released with office XP)
This version did not contain any noticeable improvement.
  • Version 11 (Released with office 2003)
Major update in the version 11, excel 2003 was the introduction of new tables.
From Office 2007 and onwards, XLS format was replaced by new XLSX format which is considered more secure, robust and portable.
Conclusion
XLS was designed to be used on older computers. It lacked compatibility and portability with most of the non-Microsoft systems. It had many dependencies on external libraries and therefore it was not easy to run XLS files on systems where these libraries were not installed. XLS was rightly updated to XLSX in office 2007 and onwards.

Tuesday, November 04, 2014

Popular DBMS Comparison

In our previous articles we provide detailed descriptions along with pros and cons of some of the most popular and widely used database management systems. We discussed, MYSQL, MS SQL Server, MongoDB and Postgres DB. In this article we are going to present comparison of these four famous database systems in tabular. Readers can view the comparison matrix and decide what type of Database Management System suffices their database application development needs.

Postgres
MySQL
MongoDB
MS SQL SERVER
Database Type
Object Relational Database Model
RDBS, widely used in LAMP suit.
JSON Type Database schema instead of traditional SQL based queries.
Microsoft’s proprietary DBMS
Developed By
Postgre SQL Global Development Group
Oracle
MongoDB Inc
Microsoft
License Type
Open source
Open source
Open source
Commercial
First Release
1989
1995
2009
1989
Programmed in
C
C and C++
C++
C++
Database Model
Relational
Relational
Document Store
Relational
Query Mechanism
SQL Based
JSON Type Query Mechanism (NoSQL)
SQL Based
SQL Based
Concurrent Processing
Allows Concurrent Processing
Allows Concurrent Processing
Allows Concurrent Processing
Allows Concurrent Processing
Server Side Scripting
User Defined Functionalities
Allows Server side scripting
JavaScript Scripting language
.NET Languages and Transact SQL
Replication Topologies
Master-Slave Topology
Master-Master,
Master-Slave,
MySQL Cluster Topology
Master-Slave Topology
Dependent on database edition
Language Support
Perl, Python, Tcl, .Net, C, C++
Java
Ada, C, C#, C++, D, Java
Objective-C,
OCaml, Perl, Eiffel, Erlang, Haskell
PowerShell, Prolog, Python, PHP, Perl, Ruby, Smattalk, Scala, Matlab, Lua, Lisp, JavaScript, Java, Go, Groovy, Heskell, C++, C#, ColdFusion, Clojure, Erlang, Dart, Delphi,  C, ActionScript  
.NET, Java, Python, PHP, Visual Basic, Ruby
Portioning Mechanism
Not Supported but Table Inheritance can be used to achieve the purpose.
MySQL Cluster based horizontal partitioning
Sharding Partitioning
Horizontal Partitioning with table spanning several files but no sharding

Comparison Matrix for popular DBMS
Conclusion
All the four major databases have been compared on the basis of several attributes in the comparison matrix. It is now up to the programmer to choose the database system that suits the application being developed.

Thursday, October 30, 2014

Windows Media Video Format

Windows Media Video is a type of audio and video format that is used to digitally store audio and video information in a file. WMV is basically a developed by Microsoft that is used to hold several audio video codecs developed by Microsoft and to run on Microsoft supported operating systems and machines. Society of motion pictures and television engineers (SMPTE) initially standardized WMV format. Currently several physical file formats such as HD DVD and Blue Ray Disc are using WMV format as default format for media information storage.
History and Purpose
In the year 2003, Microsoft developed a new video format which was supposed to be contained by WMV 9 codecs, developed by Microsoft. This format was submitted for standardization purposes to SMPTE and was eventually standardized in the year 2006 as SMPTE 421M. Basic purpose of developing WMV was to develop a media format which can be uniformly supported by all the Microsoft Supported devices and operating systems. Another major purpose was to devise a media format that could be used for streaming videos over the internet.
Advantages
There are several advantages of using WMV format over other formats.
  • WMV format contains large quantity of video and audio information in smaller storage spaces. This makes WMV an ideal format for streaming videos over the internet.
  • WMV format is designed specially to run on windows devices. Hence, it is compatible with all the windows powered devices. Even some devices use WMV as the default audio/video format.
  • Older applications such as older versions of MS Power point supported few formats. WMV is one of those formats.
  • According to Microsoft, WMV has 2x compression ratio as compared to MPEG-4.
Disadvantages and Cons
  • WMV is a Microsoft’s Proprietary which means that it is not compatible with most of the other operating systems. It is not easy to find a Linux or Apple based media player to run WMV files.
  • WMV files have digital rights management system associated with them which users do not appreciate because that makes it impossible to restore the licensing information attached with WMV files. This is the case with windows media player 11.
Conclusion
WMV format, with a very good compression rate is a very good format especially for windows platforms but where compatible and portability is the priority, WMV format is not a good choice.