Here is a list of White Papers written by Mindfire Solutions. Most include our original writing whereas some are to be read in accompaniment with deeper material..
With the ever increasing fragmentation in the Android device market, the developers and the QA personnel must take up to the challenge of ensuring that their apps provide an optimal and coherent user experience across a wide variety of handsets and tablets. This document explains the fragmentation in the Android ecosystem w.r.t. the variety of OS flavours, handsets, screen sizes, screen densities and carriers. It then offers a solution to help the developers/QA pick the best set of handsets for testing their app, based on one or more of these factors. We at Mindfire Solutions, have successfully applied these techniques to help our clients select the best pick of handsets to test their app. Read More...
In this paper Sambit shares knowledge he gained working on a real estate project. He explains how to integrate Google API,RETS API,ZILLLOW API and Education API Read the full article
This white paper demonstrates how to create a DotNetNuke Web Application Project Module using DNN version 5.4.1 and Microsoft Visual Web Developer 2008 Express. The module can be developed to two models, Web Application Project (WAP) or Web Site Project (WSP). Read the full article
How do you automatically convert MySQL character set to utf8 and database collation to utf8_general_ci using PHP ? Sujata explains the technique and demonstrates how to write a PHP script to acieve the objective. Read the full article
This article demonstrates how to run parallel processes/ fake forks to deal with large amount of data , using Command Line Interface while working on Kohana PHP Framework on Linux. Chittaranjan explains the technique in detail. Read the full article
This Microsoft Commerce Server article by Smruti provides a step by step explanation (along with screen shots) on how to export a Product Catalog to an XML file. Read the full article
This White Paper walks you through the installation process of a DotNetNuke Developer site for module development. The software configuration includes Windows XP, Microsoft Visual Web developer 2008 Express,Sql Server 2005 Express and IIS. Read the full article
DotNetNuke version 4.6.0 upwards provides support for Windows Live ID and OpenID authentication systems. This feature allows a visitor to navigate the site without providing username and password everytime, rather Windows Live ID and OpenID credentials can be used to gain access. Further, integrating them with DotNetNuke is fairly easy as the article demonstrates. Read the full article.
The Commerce Server deployment tool Site Packager is used to package your Site, its applications and its resources to a single file. Now this single PUP file can be moved to any other environment and unpacked there for fresh installation. The SitePackager is also used to unpack the package. Read the full article
There is no inbuilt discount type in Commerce Server Marketing System. To apply a customized discount campaign such as Buy Any Get First Item Free Offer, we have to create a discount of type Simple discount and modify this according to our needs.
Nirmal explains how to apply a customized discount in which, if the user buys 1 item then s/he gets it for free. But if s/he buys more than one then the first item will be free and s/he has to pay for the rest.. Read the full article
This Microsoft Commerce Server embeds some fields in the User Object by default so when we need additional fields we have to add them manually using Commerce Server manager. This article demonstrates how to add new field to User Object in Commerce Server Profile System. Read the full article
In this article Debendra explains explains how to upgrade installed DotNetNuke to version 5. It is highly recommended that the administrator take a back up of the whole website and database along with web.config. Read the full article
This article presents a simple way to interface electronic hardware with normal PCs. The algorithm stated will allow us to talk with the hardware via LPT port. Read the full article
Microsoft retail management system provides a wide variety of reports with Store operations manager and headquarters. The report shows details of items, sales transactions, suppliers etc. RMS provides its own specialized reports called Active Reports and also Crystal Reports. Read the full article
Source Code Management (SCM) is very important in Software Development. If two or more developers are working on the same project at the same time, then its very important that they should maintain one version control system to sync with each other to avoid some simple but irritable problems during the software development.
In this paper I am going to explain how to configure svnserve on server machine and how to create a repository for maintaining source code,configure SCM for a project and how to do check ins/checkouts ..etc on MAC OS 10.6 Snow Leopard. Read the full article
Microsoft RMS receipts can be customized easily according to the end user's need. The receipt templates are saved as XML files in “C:\Program Files\Microsoft Retail Management System\Store Operations\ReceiptTemplates” location. The content and design of receipts can be modified as per the need, by either modifying the existing XML file or creating new XML templates. Read the full article
SVG is a W3C (World Wide Web Consortium) reccomended XML based file format that is used to describe 2D vector graphics. SVG describes and defines the vector –based graphics in XML formats for the web. It is a feature rich two-dimensional graphic language which allows for the combination of vector graphic shapes and raster images (JPEG,BMP,PNG etc) and text. Read the full article
Microsoft Retail Management System offers numerous solutions to stores (single or multiple, small or large) in the retail industry. The various functionalities include store management, purchase order management, transaction processing, point-of-sale solutions, reports and receipts processing.Read the full article
BVH, Biovision Hierarchy, is an animation file format which is available in several 3D applications that do not support FBX. It stores the animation data in terms of ROOT, JOINTS and OFFSET. I have written the code in C++ for exporting the head animation data into bvh file. This article contains introduction into BVH file, detailed description of BVH file and source code for writing the bvh files. Read the full article
In Image Processing Development, camparsion of two bitmaps is quite common. Comparision of two bitmaps means how each pixel of image1 is different from corresponding pixel of image2 and vice-versa. This is called Stanard Deviation. Standard Deviation tells that how many pixels are differ in terms of its color in the given two images. To read more on this as well as view the source code an algorithm that calculates Standard Deviation between two 32-bit or 24-bit bitmaps.Read the full article.
ANT is Java based build tool which is used to automate software build processes. In this article we will see how to create a JAR file using ANT script. Read the full article
How does data reside in global memory?
How it is different for devices with different compute capability?
What should be the optimal access pattern for data with different size? Read the full article...
Refactoring is the process of optimizing and restructuring existing code without changing the external behaviour of the code. Visual Studio provides a number of options for refactoring code from within the IDE. This article will explain the different types of the refactoring commands available under the Refactoring option. It also descibe the options under each command and their pros and cons. Read the full article...
Interacting with the Servoy Application Server or any connected clients, such as shutting down/restarting the Application Server, alerting/shutting down/checking alive or not for any client connected to the Application Server or to the Application Server running remotely, from the Servoy solutions is not doable. The Servoy solution can not able to get the handle of the Servoy Application Server to the Developers. This article describes how we can do all those stuffs from your Servoy solution by using the Server Utility Plug-in for Servoy, mfServerUtils.Read the full article...
A very common task that a Windows Application Developer needs to do is save user preferences (window form size,location,color,font etc) when the user exits the application and load them when the same user loads the application next time. This paper discusses how to implement this functionality in .NET 2.0. Read the full article...
Software As A Service refers to the paradigm shift in software delivery model in which the vendors do not package the product for each customer, instead they deploy it as a web-based service that the customers can consume over the Internet. Debasish Das discusses the various pros and cons of SaaS. Read the full article...Testing Tips For Mobile Developers
This paper delves into various things that developers should consider while developing data transfer applications over the GPRS network using socket programming for Palm OS based devices.First Qtopia Application
Unit testing is essential for every development we developers do. When we talk about mobile and handheld platforms, it becomes more critical due to various constraints that development has to be done. Read this document compiled by our testing team which may help you figure out few known common issues that every mobile product must be safe guarded from at the development stage itself.Syncing External Memory Data on Pocket PC
It is not hard anymore to find an easy way to begin development with Qtopia sdk for Linux Mobile based devices. Our LinuxMobile developers have prepared this document to unravel the Linux Mobile development mystery using Qtopia sdk and other related technologies.Creating A Complete Pocket PC Installer
It is pretty straight forward to sync files kept on main memory on a Pocket PC device and have the conduit managed via Active Sync. But when it comes to files kept on an SD Card, things start becoming trickier. You have to write explicit code to sync and also do something extra to make it work with ActiveSync technology. Read the white paper which will help you understand the nitty gritties involved..
This paper elaborates the process of creating a windows based installer for Pocket PC & Smartphone applications with use of Astrum and NSIS installer packages. It takes care of various stages that an installer has to consider in practical usage.Palm PhoneLibrary GSM/GPRS API
This paper discusses some aspects of developing games for Windows Mobile/PocketPC devices using the .NET Compact Framework and C#.NET. Ten guidelines are presented for beginners in this area to learn and get going quickly!Writing portable J2ME Applications
The Palm Phone Library is an interface to phone hardware. Its usage is increasingly gaining importance as developers are developing many applications involving the use of Phone APIs. It is widely used in the organizations mainly responsible for developing applications involving phone feature's usage. Examples include Phone call recording, Black list (used to ignore a particular caller), Caller identification, Customized ringtones, Conferencing, etc.Introduction to gaming using J2ME
Handsets are numerous in the cellphones market, and new ones enter every day. These handsets vary on several parameters like screen size, heap size, maximum application size, apart from special-key layout and form factors. It is possible to design and write J2ME applications in a manner that reduces the effort in porting across handsets. This thought-provoking article discusses possible approaches.Hibernate vs JDBC
Game programming is exciting work, just as gaming is exciting play! This article discusses beginner steps in writing games using Sun's J2ME programming technologies. J2ME is a dedicated version of the normal J2SE, designed specifically for device/cell-phone platforms and their inherent constraints. Key small-device usage and performance considerations to be kept in mind and the first few steps into J2ME programming are discussed in this article.Struts Tiles vs JSP Include
Traditionally, JDBC has been the data access model of choice for most Java developers. The introduction of Hibernate brings Object-Relational Mapping (ORM) as a data storage/access solution. Hibernate is quite naturally suited to the Object-Oriented way of thinking, and to a pure Object-Oriented language such as Java. In this article we discuss the merits and demerits of each approach. Hibernate in general has advantages, but in specific situations the use of JDBC may be advisable.Macromedia Flash and VB: A potent combination
The separation of design and programming has been a priority for web application development environments. Designers and programmers are different sets of people, and each would like to make changes independently; this separation allows such workflows to exist. Second-generation Java web development achieved this using JSP and JSP Include files. The current generation of Struts MVC frameworks brings with it Struts Tiles, an advanced method of achieving UI-code or design-program separation. In this article, we discuss the advantages we see in the Struts Tiles approach, and list some demerits as well.Developing Web Services using JAX-RPC
This article focuses on an often-neglected but all-important aspect of any software application – the user interface. For years, desktop applications have had boring gray rectangular windows, buttons etc. Animation, multi-media, visual effects and custom elements were possible, but required large amount of custom programming. Even making a non-rectangular button would need good C++ skills. The web and its use of Flash change the equation. Web-based applications look far more attractive and user-friendly than comparable desktop application, but are easy to develop with Flash. In this article, we present ideas for using Flash inside VB applications, thus injecting new life into desktop software products.
Macromedia supports Mindfire's approach towards VB-Flash integration, and this article has been published by Macromedia here.Testing: Overview of Checklist-driven Testing (Checklists 101)
This paper discusses a RMI driven approach to building Web Services for an existing Java Application. We deal with the basics of JAX-RPC and steps in using Sun's Java Web Services Developer Pack (JWSDP). We describe the architecture and process used to implement a Web Services wrapper layer over an existing RMI-enabled Java application.Testing: Creating checklists (Checklists 201)
Checklist-driven testing can encapsulate the cumulative experience and knowledge of teams, raising productivity and coverage significantly in test efforts. This paper discusses about the various advantages and disadvantages related to checklist-driven testing. While identifying problem areas in checklists, it also intends to supply work-around to attack these problems.Testing: Organizing checklists (Checklists 301)
This paper propels the goodness of custom-made checklists and aims to help test organizations build their own checklists. Creation and selection of items for a checklist can be the make-or-break of a checklist strategy.Moving ASP to ASP .NET
When Test Organizations plan serious implementation of checklist driven testing, systematic approach to deal with these rapidly growing custom checklists becomes a critical factor. It is not only difficult to manage growing number of checklists, but also successful implementation becomes questionable. This document describes how checklists can be further classified according to their usage and hence be organized.
This paper discusses the techniques and methods in porting an existing ASP application to the ASP .NET technology. It also talks about issues faced in porting of existing ADO-to-ADO .NET technology and suggests appropriate steps that should be used to make the whole process simpler.
This paper discusses software-porting process in details highlighting the steps involved in the process. It also talks about significant issues faced in a typical porting process and suggests appropriate strategies that should be used to make the whole process simpler.
While justifying the need of a separate testing strategy for ported applications, this paper discusses testing methodology for porting projects. Portions of this document talk about the stage-wise testing approach and then elaborate each one to create a substantial and comprehensive process. Best practices gained from practical experiences make this paper a good guide for testing software ports.
Porting is a significant, if oft-neglected, strategy for software businesses. Multi-platform products have multiple benefits, while bringing with them possible headaches. The porting process itself carries a few risks. In this white paper, we discuss the pros and cons of porting. We also consider some pitfalls, and finally outline options available for porting.
This paper talks about hand on experiences of porting of applications, involving Mac and Windows, discussing in detail the issues faced and solutions/strategies adopted during the process.
It is required to design and implement a thread management application, to be integrated with the existing architecture of a telecommunications application for monitoring 96 telephone ports and responding to the messages received by firing corresponding application. The application's purpose is to manage the communication between these 96 threads, which are responsible for monitoring the telephone ports.
This paper discusses the temporary objects and the handle maps mechanism, which MFC uses to provide a uniform method for getting a C++ object from the corresponding handles, allocated in C. It also tries to explain the basic relationship between a Windows object handle allocated by an API call and the C++ MFC object wrapping it.
This paper discusses managing processes and takes in Macintosh operating system. This paper is a summarized form of "Inside Macintosh: Processes" and is directed towards developers who are new to Mac development but had previous development experience on other operating system. After going through this article you will be familiar with Process Manager, Time Manager, Vertical Retrace Manager, Notification Manager and several other process related services provided by the system.Carbonization: MacOS 8/9 - OS X
This paper discusses memory management in the Apple Macintosh operating system. This paper is a summarized form of "Inside Macintosh: Memory" and is directed towards developers who are new to Mac development but have previous development experience on other operating system. After going through this article you will be familiar with memory architecture in Mac, ways to allocate and deallocate memory, using temporary memory, A5 world, heap management, heap zones, heap fragmentation and several other features provided by the Mac Memory manager.VoIP: A programmer's tutorial
This paper talks about a hand on experience of carbonization of an application, discussing in details the actual steps involved and the issues faced during the process.
This paper discusses VoIP from developers' perspective and looks into the core issues like packetization, recording and playback of voice data in real time. Many other issues like implementation of H.323 or SIP protocols are not discussed here.