Sign in Join
Wiki copytemporary

Case Studies: what changed

Revision 1 to 2. Removed lines have a minus sign; added lines have a plus sign.

OldNewLine
11The following **case studies** provide the reader with examples, where Lazarus and Free Pascal have been used for successful development of professional applications for business, game development, science, health-care and other fields.
22
33## Business Case Studies
44
55### HCR Imaging, Inc.
66
77My day job is Director of IT for a document management company. We scan around 60,000 images of paper medical records on a daily basis. We use a mixture of Linux and Windows servers and workstations, and my network pushes around 30 GB of data around per work shift. We're a small business (14 employees), and providing solutions for our customers is our priority, not just selling a service or project. Read on for how we use Lazarus in our day to day operations.
88
99I'm a strong advocate of Linux, so I've attempted to switch as many machines in the office to Linux as possible. This has left me with a mixture of Windows and Linux machines, because the main application we use to produce our product is Win32 only.
1010
1111Generally what we do is scan medical records for large hospitals, and produce those on CD or DVD for archive purposes. The original paper is then shredded. Most of our customers access the information directly from the CD or DVD, but a few have special servers in place to act as repositories.
1212
1313In the healthcare field, there is no one standard for management software. This has left us the task of integrating data we produce with our software into various types of management packages. Due to the large volume of data we work with, we have special servers designed only for document and index conversion.
1414
1515Lazarus and Free Pascal have allowed me to write very quick and easy (RAD) utilities that allow us to convert the data and images over to the appropriate format, after being exported from our own server. Since I have some machines in Linux and some in Windows, in most cases I'm able to compile the same conversion utility for either environment, depending upon what server is available at the time. The ease of the Lazarus IDE and RAD design allow us to take a basic framework application that I've developed as a series of objects and modify it for use for new formats as they arise, in a very short period of time.
1616
1717We also acquired some tape backups from old AIX servers that have MS Word documents embedded within a proprietary database. Windows won't even recognize the tapes. Using a combination of Lazarus, OpenOffice and the standard Linux tape utilities, I'm able to extract the indexes and embedded documents from those tapes, convert them to TIFF images using OpenOffice and burn them in a format ready for import in a new system, completely unattended.
1818
1919Lazarus is the glue that helps us provide that "value add" to our customers that many companies lack. Its RAD design, similarity with previous Pascal IDE's that we were already familiar with and cross-platform nature have allowed us to provide services we never would have been able to before.
2020
2121Tony Maro
2222
2323Dir. Information Technology
2424
2525HCR Imaging, Inc.
2626
2727<http://www.hcrimaging.com>
2828
2929------------------------------------------------------------------------
3030
3131### OpenLab
3232
3333See [Case Study: Using Lazarus to demystify Linux](http://lxer.com/module/newswire/view/47883/index.html).
3434
3535------------------------------------------------------------------------
3636
3737### ssn.at / ssnDocCenter
3838
3939We were requested to write a solution for a VoIP-Provider to establish a Fax-Service for their customers. It had to accept faxes as a Windows-Printer-Driver and manage in- and outgoing faxes via a Windows application mainly residing in the Taskbar-Notification Area. Additionally all communication should go through HTML - Port 80.
4040
4141As the initial budget was really low and we have a lot of Pascal experience we decided to use Free Pascal / Lazarus for the entire project. We already did some minor jobs with this combination, but this should be the first written entirely with it.
4242
4343Now, as the application is up, running and deployed to some customers, we're quite happy with the decision towards FPC.
4444
4545The application consists of several parts:
4646
4747First there is a Linux daemon talking to a Firebird RDBMS, using sockets to talk to a Hylafax server and providing a proprietary sockets-based interface to some client process.
4848
4949Second, there is an Apache CGI module, providing the interface between the proprietary sockets-based interface of the daemon and HTTP.
5050
5151Third, there are some command-line utilities for user management, enabling the whole application to be embedded in a script-driven user management.
5252
5353And fourth there is a Windows client for the end user containing a user interface and a Windows printer monitor to catch printouts and deliver it to the server daemon either via the socket interface or via HTTP.
5454
5555Everything is coded in 100% Object Pascal using Lazarus as IDE and Lazarus for creating the user interface - even the DLLs providing the printer monitor!
5656
5757Lukas Gradl
5858
5959<http://www.ssn.at>
6060
6161## Game development
6262
6363### Game Maker
6464
6565[Game Maker](http://www.yoyogames.com/gamemaker) allows you to make computer games using easy to learn drag-and-drop actions. You can create professional looking games within very little time. You can make games with backgrounds, animated graphics, music and sound effects, and even 3D games! And when you've become more experienced, there is a built-in programming language, which gives you the full flexibility of creating games with Game Maker. What is best, is the fact that Game Maker can be used free of charge.
6666
6767Originally written in Delphi, Lazarus/Free Pascal was used to port it from Win32 to Mac OS X and could be used in future for Linux and other platforms.
6868
6969## Scientific and Medical Case Studies
7070
7171### CityCAT
7272
7373Urban flood risk modelling is a highly topical example of intensive computational processing. Such processing is increasingly required by a range of organisations including local government, engineering consultancies and the insurance industry to fulfil statutory requirements and provide professional services. [CityCAT](http://www.ncl.ac.uk/ceser/researchprogramme/integratedsystemsdemonstrationscities/citycaturbanfloodmodel/) (City Catchment Analysis Tool), developed at Newcastle University, is a unique software tool for modelling, analysis and visualisation of surface water flooding. It enables rapid assessment of combined pluvial and fluvial flood risk and effects of different flood alleviation measures. By using Lazarus and Free Pascal CityCAT could be successfully ported from Windows to additional platforms, thus supporting Cloud Computing. Parameter sweep work on an Infrastructure as a Service Cloud allowed for very large simulation runs (∼21 months of processing in a single calendar month).
7474
7575#### External links
7676
7777- [Information about CityCAT at Newcastle University](http://www.ncl.ac.uk/ceser/researchprogramme/integratedsystemsdemonstrationscities/citycaturbanfloodmodel/)
7878- Scientific paper describing the implementation of CityCAT: V. Glenis, A. S. McGough, V. Kutija, C. Kilsby and S. Woodman. [Flood modelling for cities using Cloud computing](http://www.journalofcloudcomputing.com/content/2/1/7) Journal of Cloud Computing: Advances, Systems and Applications 2013, 2:7. doi: [10.1186/2192-113X-2-7](http://dx.doi.org/10.1186/2192-113X-2-7)
7979
8080### SimThyr and SPINA Thyr: Two biomedical applications for investigation of thyroid homeostasis
8181
82-<figure>
83-<img src="thyrson.png" title="thyrson.png" />
84-<figcaption>thyrson.png</figcaption>
85-</figure>
82+![](/wiki-images/c/c4/Thyrson.png)
8683
8784Thyroid hormones play an essential role for the control of metabolism, growth and differentiation. Therefore, exact regulation of thyroid hormone levels is vital for most organisms, and its disorders lead to significant - and in extremities even life-threatening - diseases. This is the more important as at least 5 percent of adult persons in developed countries suffer from different forms of functional thyroid disease. This corresponds to more than 6 million affected people in Japan, 16 million individuals in the USA and 25 million persons in the European Union.
8885
8986Although the principles of thyrotropic feedback control have been described decades ago we still have not yet gained a comprehensive understanding of its dynamics. Additionally, diagnosis of thyroid disorders may be complex and ambiguous in certain situations. This was the initial point of an interdisciplinary research programme aiming at a better understanding and improved diagnosis of thyroid homeostasis from a cybernetic basis. It was conducted in international cooperation of three German universities and researchers in the United Kingdom, the Netherlands, Singapore and Australia. The programme resulted in a new mathematical theory of thyroid feedback control that helped to explain multiple previously poorly understood phenomena like partial central hypothyroidism and non-thyroidal illness syndrome. As a part of this scientific programme two software applications have been developed, **SimThyr**, a continuous numerical simulation program of thyroid homeostasis and **SPINA Thyr**, an application that helps to determine constant structure parameters of the feedback loop.
9087
9188Both applications have been developed in the end of the 20th century for classical Mac OS in [THINK Pascal](http://www.think-pascal.org) and CodeWarrior Pascal. Alternative versions of SPINA Thyr were subsequently made available for Windows and Linux with Delphi or Kylix, respectively, and for Palm OS with [winsoft PocketStudio](http://www.winsoft.sk/pstudio.htm). Fundamental changes in the landscape of operating systems, first of all the advent of Mac OS X and new Windows versions, required a redesign of these applications.
9289
9390In appreciation of the "Write Once - Compile Anywhere" priniciple Lazarus and Free Pascal were selected. This decision allowed for reuse of large portions of the old Pascal-based source-code while providing a modern common code base for all GUI parts on several operating systems. Porting to Lazarus and Free Pascal was done in a few weeks for both applications, although simultaneously multiple new features have been implemented, too.
9491
9592Today, both SPINA Thyr and SimThyr are available in mature versions for Mac OS X, Windows and Linux. Code maintenance is easy and straightforward due to the common code base.
9693
97-<table>
98-<tbody>
99-<tr>
100-<td><figure>
101-<img src="pr.simthyr_suse_linux_11.jpg" title="SimThyr for Linux" width="320" />
102-<figcaption>SimThyr for Linux</figcaption>
103-</figure></td>
104-<td><figure>
105-<img src="SPINA_Thyr_3.3_for_Mac_2.png" title="SPINA Thyr for Mac OS X" width="320" />
106-<figcaption>SPINA Thyr for Mac OS X</figcaption>
107-</figure></td>
108-</tr>
109-<tr>
110-<td><p>SimThyr for Linux</p></td>
111-<td><p>SPINA Thyr for Mac OS X</p></td>
112-</tr>
113-</tbody>
114-</table>
94+| | |
95+|----|----|
96+| <img src="pr.simthyr_suse_linux_11.jpg" title="SimThyr for Linux" width="320" /> | <img src="SPINA_Thyr_3.3_for_Mac_2.png" title="SPINA Thyr for Mac OS X" width="320" /> |
97+| SimThyr for Linux | SPINA Thyr for Mac OS X |
11598
11699Both software tools facilitated the publication of multiple [scientific papers](http://sourceforge.net/p/simthyr/home/References/) that helped to lift our understanding of thyroid homeostasis to a new level and that also demonstrated improved options for the diagnosis of thyroid disorders. SPINA Thyr and SimThyr are today employed by professional users in more than 100 countries for research, education and patient-care.
117100
118101#### Download links
119102
120103- [SPINA Thyr:](http://spina.sourceforge.net) Open source software for calculating thyroid' secretory capacity (GT or SPINA-GT) and total deiodinase activity (GD or SPINA-GD).
121104- [SimThyr:](http://simthyr.sourceforge.net) A continuous simulator of thyroid homeostasis.
122105
123106#### Academic citation
124107
125108- Dietrich JW et al. (1994-2016) SimThyr 3.3. Fairfax, VA: sourceforge, <http://simthyr.sf.net>. [RRID:SCR_014351](http://scicrunch.org/browse/resources/SCR_014351).
126109- Dietrich JW et al. (1994-2016) SPINA Thyr 4.0. Fairfax, VA: sourceforge, <http://spina.sf.net>. [RRID:SCR_014352](http://scicrunch.org/browse/resources/SCR_014352).
127110
128111## High-performance computing
129112
130113### Free Pascal on Mainframes
131114
132115Free Pascal is currently being ported to IBM zSeries mainframes. Current progress is documented in a series of [[ZSeries|articles]] in this wiki.
133116
134117---
135118*From the Free Pascal wiki, page "Case Studies", as it stood on 2020-08-23 after a change by Trev, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*

Back to history