Want to learn about the newest Delphi language features? Then this book is for you. If not and still using a Delphi XE* version, then you should consider a new job.
Danny Thorpe: Delphi Component Design (paperback; no eBook)
Despite its age, it is still current: it shows you how and why many designs in the RTL are they way they are. More importantly it shows how to use these designs in your code. Even the most advanced Delphi programmers can learn a thing or two here. Many of the new RTL/VCL/FMX developers can learn far more from it.
Even though it is relatively young, it is a classic example of a good how-to book with many inspiring examples on how to get a variety of things done in both regular and mobile applications.
Although ClientDataSet is rapidly becoming obsolete in newer Delphi versions, old Delphi code benefits from ClientDataSets a lot: definitely recommended if you have to maintain an existing codebase.
Recently I needed to do some calculations on series where getting close to zero could become a problem.
Math seems to have an Epsilon of 1E-12.
Sytem.Types has Epsilon of 1E-30 and Epsilon2 of 1E-40.
XE4+ FMX has IsEssentiallyZero and IsNotEssentiallyZero for Single values.
In practice it depends a lot on what you are doing. Sometimes absolute Epsilons are best, but at other times relative difference is much more applicable.
Then there is also a Machine Epsilon: a way to derive an Epsilon from a data type that works in all languages and platforms.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Note that 15.0 (in VS2017) no longer registers itself at this registry key location, so this trick won’t simply work. vswhere is now recommended to locate MSBuild 15,
I’ve two fiber connections, one cable connection and one ADSL connection at home.
This is a traceroute from one fiber connection to the other over the outside network:
traceroute to snip.xs4all.nl (80.100.143.119), 64 hops max, 52 byte packets
1 tomatortn66u (172.23.71.1) 0.951 ms 0.708 ms 0.638 ms
2 fiber24315337241.heldenvannu.net (37.153.243.241) 1.135 ms 0.988 ms 0.974 ms
3 rt121bb121-212-183.routit.net (212.121.121.183) 1.973 ms 1.976 ms 1.919 ms
4 0-7-0-4-core2-a-tc1.routit.net (84.246.25.133) 2.711 ms 2.498 ms 2.517 ms
5 0-7-0-4-core2-a-tc1.routit.net (84.246.25.133) 2.725 ms 2.674 ms 2.535 ms
6 0-7-0-7-core4-a-tc2.routit.net (37.0.80.7) 3.048 ms 2.883 ms 2.712 ms
7 1-2-inet1-tc2.routit.net (84.246.25.46) 2.767 ms 2.633 ms 2.514 ms
8 ams-ix.tc2.xs4all.net (80.249.208.166) 2.676 ms 4.177 ms 2.775 ms
9 0.ae5.xr3.3d12.xs4all.net (194.109.5.13) 2.987 ms 3.114 ms 11.387 ms
10 xe-8-1-0.dr11.xs4all.net (194.109.7.14) 6.188 ms
xe-7-0-1.dr11.d12.xs4all.net (194.109.7.58) 3.320 ms
xe-8-0-1.dr11.d12.xs4all.net (194.109.7.38) 3.206 ms
11 snip.xs4all.nl (80.100.143.119) 4.079 ms !X 3.960 ms !X 3.946 ms !X
This is the same but from my third connection (that will go away sooner than later): Cable.
traceroute to snip.xs4all.nl (80.100.143.119), 64 hops max, 52 byte packets
1 www.asusnetwork.net (192.168.171.1) 1.016 ms 0.983 ms 0.938 ms
2 * * *
3 212.142.62.69 (212.142.62.69) 11.427 ms 8.361 ms 8.459 ms
4 84.116.244.97 (84.116.244.97) 8.080 ms 10.405 ms 7.340 ms
5 nl-ams09b-ri1-xe-10-2-0.aorta.net (84.116.130.22) 7.625 ms
nl-ams09b-ri1-xe-8-0-0.aorta.net (84.116.130.2) 10.392 ms
84.116.136.81 (84.116.136.81) 9.534 ms
6 0.xe-1-2-0.xr1.tc2.xs4all.net (194.109.7.209) 8.315 ms 9.505 ms 9.684 ms
7 0.ae5.xr3.3d12.xs4all.net (194.109.5.13) 9.508 ms
0.ae4.xr4.1d12.xs4all.net (194.109.5.9) 9.565 ms
0.ae5.xr3.3d12.xs4all.net (194.109.5.13) 9.459 ms
8 xe-7-0-1.dr11.d12.xs4all.net (194.109.7.58) 8.547 ms 13.159 ms 9.893 ms
9 snip.xs4all.nl (80.100.143.119) 9.710 ms !X 10.079 ms !X 8.121 ms !X
Finally there is ADSL (which will go even sooner):
snap:~ # traceroute snip.xs4all.nl
traceroute to snip.xs4all.nl (80.100.143.119), 30 hops max, 40 byte packets using UDP
1 192.168.71.1 (192.168.71.1) 1.052 ms 0.554 ms 0.520 ms
2 lo0.dr13.d12.xs4all.net (194.109.5.212) 17.767 ms 17.368 ms 17.123 ms
3 1423.ae3.xr4.1d12.xs4all.net (194.109.7.137) 16.901 ms 1418.ae3.xr4.1d12.xs4all.net (194.109.7.17) 16.628 ms 1323.ae3.xr3.3d12.xs4all.net (194.109.7.141) 16.354 ms
4 xe-8-1-0.dr11.xs4all.net (194.109.7.14) 15.961 ms xe7-0-0.dr11.d12.xs4all.net (194.109.7.170) 15.762 ms xe-8-1-0.dr11.xs4all.net (194.109.7.14) 15.283 ms
5 snip.xs4all.nl (80.100.143.119)(N!) 15.914 ms (N!) 16.171 ms (N!) 15.710 ms
If you have that second Nano, the one that is 1 3/4 inches, perfectly square, and your song is playing over and over, you need to put your finger on the double arrows that move to next song and swipe left. You’ll get the screen with the repeat loop, the genius icon and the shuffle icon and you’ll see that the repeat loop has a 1 showing. Just touch it and the one will disappear. It took me an hour to figure this out and I even got it twice and couldn’t figure out what I did. It isn’t in the current Nano instructions as the newer ones have easier access to these icons.
To verify if such XML is indeed compliant to the NUnit standard, there is an XML Schema for it which – at the time of writing – the latest version was here:
Many CI tools map the resulting XML into some form of output. To get HTML output, XSLT is a logical choice, but there are other means too. Here are a few links to get started converting the output:
Ctrl + Shift + . to zoom in and Ctrl + Shift + , to zoom out.
They don’t keep an alternative for Zoom Out, and unlike most tools I know that allow for zooming, there is no keyboard accessible menu entry for Zoom Out in Visual Studio.
So you have to use your mouse to go in the lower left of your editor window in order to Zoom Out (thanks ashteele for putting that in an SO question):
lextm commented on Mar 9, 2017 •
vswhereis now recommended to locate MSBuild 15,https://github.com/Microsoft/vswhere
n9 commented on May 17, 2017
vswhere -products *to get standalone installation of BuildTools. (See Microsoft/vswhere#61.)