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.
|
|
Coming soon...
- Strategic Off-shore QA
- Maintain Increasing Returns
- Mindfire's Remote Methodology
- An introduction to Palm programming
- Estimation of Porting projects
|
Data Transfer Over GPRS: Palm OS
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.
Testing Tips For Mobile Developers
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.
First Qtopia Application
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.
Syncing External Memory Data on Pocket PC
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.
Creating A Complete Pocket PC Installer
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.
Game Programming in C#.NET
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!
Palm PhoneLibrary GSM/GPRS API
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.
Writing portable J2ME Applications
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.
Introduction to gaming using J2ME
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.
Hibernate vs JDBC
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.
Struts Tiles vs JSP Include
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.
Macromedia Flash and VB: A potent combination
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.
Developing Web Services using JAX-RPC
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: Overview of Checklist-driven testing (Checklists 101)
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: Creating checklists (Checklists 201)
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.
Testing: Organizing checklists (Checklists 301)
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.
Moving ASP to ASP .NET
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.
Porting: Development Techniques
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.
Porting: Test Techniques
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: A Business Decision
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.
Porting: Win - Mac Issues
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.
Porting: An Unix - NT Experience
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.
Windows: Temporary pointers in MFC
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.
MacOS: Processes
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.
MacOS: Memory
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.
Carbonization: MacOS 8/9 - OS X
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.
VoIP: A programmer's tutorial
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.