Technology - We can provide the expertise you need

If its important that you know something about the technologies we work with every day, then this page will provide you with the detail you need.

One important point about so called legacy technologies: Companies like Microsoft and Google and the myriad third party / open source toolkit suppliers move forward at a swift pace nowadays, frequently outpacing the development cycle or even the simple needs of the average business or government department. This can lead to a lot of painful discussions about whether to rebuild an otherwise perfectly working system simply because the current crop of graduates don't know anything about it. The fact remains that the average life of a commercial or government system can be 10-20 years, even if your customer facing systems undergo frequent updates.

We make a point to retain the knowledge and skills, the development/test environments and licenses to work with a wide variety of older languages, toolkits, databases and software. If you are getting the runaround from other consultants, give us a call.

Generic placeholder image

Visual Studio and C#

The Microsoft stack remains our primary toolkit of choice. We can build and deploy with .NET Runtime from 2.0 onwards, including the latest .NET Core releases. We test first on the current Windows release using HD screens, and then cross check on older Windows versions still commonly used, and several different browsers.

We use a variety of add-ins and toolkits to enhance the development experience as required, including Entity Framework, CodeSmith, and third party libraries from GrapeCity, ComponentOne, Infragistics, Active Reports and MSXML. If you require other toolkits let us know.

We also use a number of Open Source toolkits when required, especially for browser based solutions. Once we have established your requirements and the type of application that will be produced, we start to look at the tools that offer the best fit to your needs.


ASP.NET MVC
(and ASP.NET CORE)

The MVC (Model/View/Controller) approach to web development continues to be the most powerful method of building end-to-end web applications. It offers a sophisticated backend, ways of partitioning and scaling a project, and the ability to use the latest frontend HTML5 and javascript/typescript libraries.

If you need a Web Application we will probably start with an ASP.NET MVC framework, and customise the technology on the backend and front end according to your needs. The main decision point will be whether you are able to use commercial libraries, or if you prefer to use open source toolkits for the (browser) user interfaces.


SQL Server

Ok, its nothing special to say that we can build a database system for you using SQL Server.

But we can offer expertise in all versions of SQL back to 2000 - so if you are still running or porting from a legacy system, we can work with it. We can also offer expertise in moving data to and from other data sources to SQL Server, moving data from server to server, including from a server on the internet to a local one and visa versa. We can automate operations for you, or leave them simply as scripts for your IT dept to run manually as required.

Do you have a lot of data in some old legacy format that you need to migrate into the new system? We can help, both in working out the how, what, where and when, but also ensuring that the migration works correctly, first time and provide complete feedback on what data can’t be migrated because it fails integrity tests in the new system.

Do you need to routinely move data between the old and new systems? We can work with that as well.

Is your data in an old proprietary format, or maybe an Access database protected using passwords you no longer have? We can assist. Similarly if the data is in locked XLS files or other formats.

Do you want your application to work as a standalone (single PC) system, but automatically scale to handle a shared server when required?

Do you need a secure solution that is protected from attacks, and optimised to scale efficiently? Talk to us.


Microsoft Access and other Royalty-free Databases

If the application has to be deployed commercially to the public (and not hosted online), then you will want a royalty-free database engine, and preferably one that does not have the installation/maintainance problems of SQL Server Express.

The Access (JET) database engine has been downplayed a lot over the years, especially now as younger network admins don't understand the requirements for deploying system built on the older COM architectures. But if you need to build and deploy an application with minimal or zero per-user licensing costs there are options available, either with Access (JET) or using other products.


Angular, Typescript, Bootstrap

The latest and greatest: Angular, Boostrap, and Typescript (a Microsoft technology thats been embraced by the open source community) are the current best practice tools for client side (Browser) development.

New Systems commissioned since 2018 will most likely use these technologies as a starting point. We can work with you to decide the technology stack that best suits your needs here, including strategies for keeping your system uptodate (or at least stable) given the constant flow of releases from the myriad dependencies of these open source systems.

Castle Software maintains commercial (runtime) licenses for several different development environments as well as expertise in the major open source toolkits. We can work through the above decision points & issues with you to find the best fit for your project.


AngularJS, Javascript, Bootstrap, jQuery, jQueryUI, Knockout

Angular (1.x), Bootstrap (< 4.x) and jQuery led the way in web based development for many years. Some versions are considered very dated now, but they remain powerful tools - so if your system was built using these you can still provide sophisticated user interfaces without having to completely rebuild them.

There are still some commercial and in-house government systems that require IE support, and for these the older toolkits can frequently produce the best results - but finding expertise in them can be hard unless you talk to us.


Reporting

Most reports built for databases tend to be boring things created using SQL Server Reporting Services. If your needs are straightforward we can do that, but if you want something fancy, if you need to reproduce an existing complex layout exactly, highlight data in an ad-hoc manner, or just have the report completely reformat itself on-the-fly based on the data and user requirements then we can build it.

We aren’t limited to just plain rows and columns of data either. Pre-printed Forms, Charts and graphs, drawing flowcharts, mixing up symbols, images and graphics are all possible.

Its also possible to use Microsoft Office as the reporting tool, even for a web system. Want your report to be printed out using Word, perhaps as a flow chart or data diagram in Visio, maybe a Powerpoint slide show, or a spreadsheet complete with formulae & charts? PowerBI is also a powerful alternative now.

Bottom line: If you can sketch what you want on a piece of paper, or show us an existing Word, Excel, Visio file, we can write a report that reproduces it.


Exporting to Excel or Word, and then Importing it back in

Exporting to Excel no longer has to mean producing a plain CSV file. We can create a complete XLSX/XLSM file using any Excel Template as a starting point and populate it with just about anything you could otherwise create by hand. Similarly with Word.

The Microsoft OpenXML format and matching libraries means that these files can be easily produced by your application or website for most any occasion. Even better, we can read the data...etc in those files and thus use those tools for data entry. Govt, military and many commercial sites may need to operate off the NET for security or other reasons. But virtually all of them will be able to find and use a copy of Word or Excel - so your ability to get staff at those locations to perform necessary data entry cannot be underestimated.

This also allows customers or staff at remote locations to use Excel to enter data, upload it, have it validated, and then download the results in seconds. And since almost any office typist can use these tools - bulk data entry can happen very quickly, without having to train them in using the custom system. In fact you could limit bulk update options to such tools, and leave the main system to handle one-at-a-time customer orders and enquires...etc.

Because the answer to the question "What can I do with this?" is essentially "well, what can you do with Excel or Word?" - the possibilites are endless.

The popularity of Office 365, Sharepoint online storage, OneDrive, GDrive, Amazon S3 storage and other services means that any manipulation of Office documents will also beg the question of where to find, or save the files requested. Using such services is now quite easy, and the access of any application or website can be controlled just like any other user account for those services.

XML/XSLT

XML technology doesn't get much press nowadays, but it remains the most powerful way of transporting data between systems. Whether via WCF web services (SOAP) or just as files being copied from one system to another, it has the ability to encode extremely complex data and pass it between completely different architectures.

Why do you think Microsoft selected XML as the basis for the OpenXML file formats now used across the Office suite?

XML and related technologies such as XSLT, XSD are powerful methods for storing, verifying, copying, parsing and transforming complex data. If you need to pass data (pipeline) between two completely different systems it is still the data format of choice, and many industries/professions have standards governing these operations involving XML. XSLT transforms also allow you to export a single XML data file from our system, and parse it into any text based data format or layout.

If your system has to export data for some external party/company/department to use, then XML is the format of choice. Other export formats such as CSV and JSON are also useful, but have limitations.


VBA & OpenXML (MS Office Add-ins, Wizards, Templates)

Tell us what you currently do manually in Microsoft Office or Visio and we can help you automate it.

Writing templates, dedicated add-ins, and wizards for Office is a specialty of ours. We can produce and deploy these while retaining full security within your Office SOE (using code certificates) and support Office releases for the last 20 years.

The Access reporting engine is second to none, especially if you need your reports to be highly customised. Or would you like your Windows or Web Application application to output (report) data into Word, Excel, or Powerpoint?

Its also possible to produce Word (DOCX) or Excel (XLSX) files without Office being present (say on a web server) using the OpenXML libraries. We can also produce output in other Office formats like Visio, Powerpoint and Project, or the older DOC/XLS file formats if required using third party toolkits.

If you have systems that need to produce highlighly graphical output, especially large format output that programs like Word or Excel might baulk at printing - writing a template in Visio is a powerful alternative solution.


Legacy systems: ASP.NET Webforms

Microsoft continues to work on the webforms architecture in .NET CORE, but it is largely a dated technology that is used on older web systems, and only rarely used for new developments

The main limitation was that to create a user experience of any real sophistication you had to employ a commercial (server) control library which locked you into a framework that could not be extended easily. It was possible to build large systems using WebForms - but the maturing of the MVC platform several years back meant that most development shifted away from Webforms.

We still maintain client systems built using webforms, and can offer the same service to you.


Legacy systems: Visual Basic (6)

Visual Basic was a leader in Windows application development for years, starting with Version 3.0 in Windows 3.1. Castle Software Australia constructed several large commercial applications using VB over the years, and one remains in service even now.

We retain licenses and development toolkits (including several third party libraries) to maintain, enhance and deploy Visual Basic 6 applications. We can also assist with porting these legacy systems to modern (C#) Windows or Web solutions.


Legacy systems: Silverlight

Note: Silverlight is a platform that is no longer supported (Microsoft ceased support in 2021, and has made using it difficult as it requires the Internet Explorer compatibility layer inside Edge), but it delivered a rich UI on IE 6 and up, when HTML5 support wasn't practical.

We have extensive experience maintaining Silverlight applications (including the Visual Studio versions required to build them, and licenses for the older toolkits), and more importantly we can assist you in converting them to newer HTML 5/Angular based technologies.


Legacy Browsers: Internet Explorer

While increasingly rare, do you still have an old in-house system that was written for an older SOE (typically Internet Explorer) that you need to support and maintain while working on a greenfields project?

We can provide services by staff who understand how the older HTML/CSS or ASP/VBScript designs worked, and won't accidentally break it. We have our own test environments for the older versions of Internet Explorer to ensure that essential changes work exactly as required on your SOE, while we work on the greenfields solution separately.


Legacy systems: Classic ASP

Its rare to come across a classic ASP system now, written using VBscript + ADO and typically using Access/JET databases behind the scenes, but if you have one, and have questions about it - ask us!


Legacy Systems: MS-DOS Software

Clipper/dBase systems were considered top-of-the-class in their day in the late 80s and through the 90s. They remain hidden in old Point-of-Sale (POS) systems and other custom PC hardware that uses an 80*25 character text screen.

Support for the dBase (.DBF) file format has all but vanished, so your most likely problem is simply reading the data in these old files, and perhaps trying to decypher and recreate the business logic elsewhere. Contact us - we can help.