We have written the vast majority of our software (DiffEngineX, Selection Diff Tool for Office 2013/365 and the diff text algorithm used on www.diff-text.com) on Dell Dimension desktops and Inspiron laptops. As such we looked at Dell for our next generation of computers.
Earlier this year we purchased a Dell Precision M3800 15.6 inch laptop along with a USB docking station and an external DVD/CD reader/writer. The Precision line is thought of as being superior to other Dell models such as the Inspiron and Latitude. The M3800 has an aluminum top and a carbon fiber base. Unlike previous Precision models, the M3800 is thin and probably meant to compete with the MacBooks. At the time of our purchase, it was the only Precision model to come bundled, by default, with Microsoft Windows 8.1 rather than Windows 8. Its built-in display is a touchscreen with a QHD+ resolution of 3200 x 1880. It has 16Gb of RAM memory.
We were attracted to the Precision line as they have twin fans and dual drives. Our model came with a 256Gb solid state drive full mini card and a 512Gb 5400 rpm hard drive. A solid state drive (SSD) is the best way to speed up a computer. The responsiveness of the Precision compared to our earlier Dells is amazing. Our previous Dell Inspiron suffered from overheating when we left it working continually one day and so twin fans was a plus point for us. Just a few weeks after our purchase, Dell released a higher-spec Precision model with a 512Gb SSD.
The text rendering and display is superb, partly due to Windows 8. Its built-in monitor is excellent. Applications start up immediately. The secondary 5400 rpm hard drive is fast as well, probably due to it being a hybrid drive with in-built memory caching.
One thing to watch out for is that it has a Noble Security Slot, which I found was not compatible with Kensington laptop locks.
Overall we think it is a good purchase. The machine is fast, light and thin.
Occasionally the display will blank out for a second, especially when right-clicking on the desktop.
For the specifications on offer, Dell is slightly more expensive than other manufacturers, but we did specifically want a laptop with twin fans and space for two drives. If you order through one of Dell's representatives it is sometimes possible to ask for a deal and get more than you would otherwise.
The laptop does not have an easy access battery hatch, so in case of a very bad operating system crash taking the battery out for a hard reset is not a ready option. We did learn however pressing the power button for something like ten seconds will perform a hard reset and get out of a bad operating system crash.
From our experience so far, we think this is a good purchase. The laptop has an excellent display, is fast, elegant and light. It is perfectly quiet in normal operation. Having a laptop with twin fans and both a SSD and a higher capacity magnetic hard drive were plus points for us.
Dell do not produce Windows 8 and so any criticisms of it do not reflect on them. We have found that Microsoft Virtual PC (important for running legacy operating systems as a guest on your current one and hence testing) does not run on Windows 8, although it does run on Windows 7, Vista and Windows XP. There are alternatives, although, as software developers, we did find this annoying.
This is going outside the scope of the review, but Visual Studio 2012 and 2013 no longer include a Microsoft setup project, as they did in Visual Studio 2010. You can download the InstallShield Limited Edition for free, which pretty much covers most things the Microsoft setup project did. We managed to convert over our setup project in one morning. We were disappointed that the size of our installer increased from 44.4 Mb to 59.2 Mb, when Microsoft dot net 4 installation files are included. Some of the less vital parts of our setup project could not be converted over. We don't know whether this is because the InstallShield Limited Edition doesn't have the functionality or that we didn't look hard enough to find it.
If the transition to Windows 8 had been a little smoother, we would not feel the need to go back to Windows 7 occasionally.
Before our purchase of the Dell Precision, we did install Windows 8 on a Sony Vaio laptop we purchased in 2008. We were quite amazed at the speed up in boot up times as compared to Windows 7.
Most commentators on Windows 8 concentrate on the loss of the Start Button and its hierarchical list of applications. This ignores the performance boost of Windows 8 as clearly seen when we installed Windows 8 on old our Sony Vaio. It is quite possible to partially replace the lost functionality by moving application shortcuts to the taskbar. Right-clicking an application shortcut on the taskbar reveals the list of recent documents opened by it.
Version 3 of DiffEngineX (the compare Excel xlsx workbooks software utility) has been released and is available for download.
This is a paid upgrade. If you have purchased within the past two years, you are eligible for a discounted upgrade price. Click here to purchase an upgrade license.
If you have purchased over two years ago or are upgrading from version 1, click here to purchase at the regular upgrade price.
By paying for an upgrade you are helping us produce the next generation of our software products.
Version 2.29 of DiffEngineX was released today. It has better error handling when the two Microsoft Excel spreadsheets being compared contain cells with problematic text containing invalid characters. The problem this release fixes only occurred when Microsoft Excel 2007 (rather than Excel 2003, 2010 or 2013) was installed.
We have recently released a new style Office app for Excel 2013 and Word 2013. It will not work with Office 2010 or earlier.
In Excel 2013, it will find the differences between the text in two selected cells. It fetches the cell value. The formula can be manually copied and pasted into the app if desired. It is potentially useful in reporting the differences between two long formulae or simply lengthy blocks of cell text.
In Word 2013, it reports the plain text differences between two different document selections.
Although it runs inside Office, it can act as a simple clipboard diff tool.
Please note it uses new Microsoft technology and only works in the desktop versions Excel 2013 and Word 2013. Potentially it could be rather useful in Word Web App when Microsoft update it to support Office apps.
It can be found in the Microsoft Store.
Of course if you want a full featured Excel diff tool that compares all the formulae, values, comments, names and VBA macros for practically all versions of Excel, there is always DiffEngineX.
In the screenshot above we can see that the text of the paragraph has been colored blue as it has been moved up in the document. Additionally the sentences have been reordered. Indicating this, the background color has been changed to alternately light blue and yellow. Not many compare utilities are capable of this. At some point we may release this as a stand-alone utility running outside of Microsoft Office.
DiffEngineX is an executable (*.exe) file that compares Excel workbooks. It is usually run from its user-interface, but it can also be invoked with command line arguments. As such multiple Excel file comparisons can be automated in a *.bat or *.cmd file. Alternatively DiffEngineX can be simply called from the Windows Command Prompt.
The simplest invocation of DiffEngineX is given below.
"C:\Program Files\Florencesoft\DiffEngineX\DiffEngineX" /inbook1:"a.xlsx" /inbook2:"b.xlsx" /report:r.xlsx
If you are using Excel 2003 or earlier, please replace .xlsx with .xls.
It is also possible to call DiffEngineX from Microsoft .NET code using Microsoft's Process class.
A full list of DiffEngineX exit codes and command line arguments is found in our detailed help file.
The following links give more information.
Finding out how your document has changed from one version to another is an important topic, especially if it has modifications made to it by several different authors. This is especially the case for Microsoft Excel documents, which are used for financial planning, complex calculations and often contain Visual Basic for Applications macros. You may want to change one value between otherwise identical Microsoft Excel workbooks and see if there are any significant numeric differences. DiffEngineX is ideal for this as it can ignore differences below a user specified value or percentage change.
If you want to compare a plain text file, you have at your disposal a vast array of tools, including Microsoft WinDiff, which is included as part of Visual Studio. Microsoft Word has a built-in facility to compare an original with a revised document. However from Office '95 to Office 2010, Excel has no intrinsic functionality to find out how one spreadsheet differs from another one.
Excel documents are not straightforward to compare. The spreadsheet cells can either contain a formula (which performs a calculation based on the value of other cells) or a constant (text, number, date...). If it contains a formula, there is a choice of whether the formula itself should be compared or its calculated value (i.e. =6*7 or 42). Not only do the visible cells have to be compared, but also defined names, cell comments and the Visual Basic for Applications (VBA) macros.
Some spreadsheets contain data, Visual Basic macros and formulae. Other people use Excel to import and visualize imported database data. If using a difference algorithm to compare the latter, it is important to realize the data needs to be in sorted order first. (Excel's built-in sort functionality is under its Data tab.) Diff algorithms will not reorder rows to find similarities, but are limited to the insertion of blanks to line up the similarities.
What is a difference algorithm?
There isn't just one difference algorithm, but rather a family of them. They all have the aim of finding the longest, in-order run of similarities between two strings of letters, lines of source code or rows. The aim is always to report the minimum number of differences.
Difference algorithms are used in the field of biology to compare protein and DNA sequences for similarities. Often different life processes will use very similar protein sequences with the only differences between them being small insertions and deletions. A difference algorithm will describe the changes necessary to convert one sequence into another.
Standard difference algorithms do have drawbacks. If a run of characters is moved out-of-sequence it won't be recognized as being shared between two documents. Consider the case below in which the string of characters "two three" is compared against "three two". The algorithm matches the longest, in-order run of characters and so correctly spots "three" is common between the two strings, but fails to realize "two" has only been moved back.
If you are comparing database rows imported into Excel, pre-sorting them first will ensure that no similar row between two sets of data is missed. If you have to carry out this step, make sure you save your changes to the file system (File->Save) before opening the workbooks in DiffEngineX.
Microsoft Excel Workbooks
DiffEngineX uses a standard diff algorithm to align the similar rows and columns of worksheets before comparing the cells (and any attached comments). A more sophisticated algorithm is used to compare the Visual Basic macros embedded in the spreadsheets, in so much as lines of code moved up or down (but not changed) will be recognized.
Names have their definitions simply compared against each other for equality. A diff algorithm is not needed here.
DiffEngineX can optionally highlight in red the precise characters that differ between two spreadsheet cells.
Row Alignment by DiffEngineX Alters Cell References of Differences in Workbook Copies
One of the principles of DiffEngineX is not to alter the workbooks being compared. It does however need to insert blank rows in order to align similar rows. Similar rows need to be aligned as they won't be recognized as identical if they have different Excel row numbers. This is why DiffEngineX automatically creates copies of your workbooks and compares those instead.
However the process of row alignment alters the workbook copies. Rows are shifted down and so each difference will have a different cell reference as compared to the original workbook. The difference report produced by DiffEngineX lists each pair of cell differences against their Excel cell reference.
It seems hardly fair to give a cell reference for a difference that refers to a temporary workbook (altered by blank row insertion) produced during the process of comparison instead of the real, unaltered originals.
The solution is that DiffEngineX gives cell references with respect to both the altered workbook copies and the unaltered originals. DiffEngineX provides an option to hyperlink each reported difference back to its corresponding spreadsheet cell.
A free 30 day trial of our software to find the differences between Excel spreadsheets is available.