The Wiert Corner – irregular stream of stuff

Jeroen W. Pluimers on .NET, C#, Delphi, databases, and personal interests

  • My badges

  • Twitter Updates

  • My Flickr Stream

  • Pages

  • All categories

  • Enter your email address to subscribe to this blog and receive notifications of new posts by email.

    Join 1,862 other subscribers

Archive for 2016

TCP and the lower bound of web performance… is a must watch talk on plumbing,…

Posted by jpluimers on 2016/10/13

Thanks Ilya Grigorik for sharing this a long while ago:

TCP and the lower bound of web performance… is a must watch talk on plumbing, history, and people behind TCP. Awesome.

–jeroen

via: TCP and the lower bound of web performance… is a must watch talk on plumbing,….

Posted in Communications Development, Development, Internet protocol suite, Power User, TCP | Leave a Comment »

Delphi – unmangle names in BPL’s – Stack Overflow

Posted by jpluimers on 2016/10/12

Check out $(BDS)\source\cpprtl\Source\misc\unmangle.c – it contains the source code for the unmangling mechanism used by TDUMP, the debugger and the linker. (C++Builder and Delphi use the same mangling scheme.)

This has been around as long as BCC itself. However the file was called um.c instead of unmangle.c in older versions

Source: [WayBackDelphi – unmangle names in BPL’s – Stack Overflow both by User Moritz Beutel.

It’s the same mangling used in the TD32/TDS and MAP symbols.

And neede to improve https://github.com/jpluimers/map2dbg (which is my fork of https://github.com/andremussche/map2dbg) which contrary to it’s name also supports TDS/TD32 conversions in tds2pdb. The code is C# and works in virtually any Visual Studio version of 2012 and younger.

–jeroen

 

Posted in Debugging, Delphi, Development, MAP Symbol Information, Software Development, TD32/TDS Symbol information | Leave a Comment »

A great way to interactively browse xml/xhtml/html on the console: xmllint –shell

Posted by jpluimers on 2016/10/12

A while ago, I heard about xmllint, a program that can parse and query xml from the command-line.

Later, I discovered it can also parse html, can recover from xml/html errors and has an interactive shell that has a lot of commands (see table below) to navigate through the loaded command.

The relevant command-line options:

--recover
--html
--shell

Note that --recover will output failing input to stderr. You can ignore that using 2> /dev/null

Some good examples of usage are here:

The table of shell commands:

Shell

xmllint offers an interactive shell mode invoked with the –shell command. Available commands in shell mode include:
Command Parameter Description
base display XML base of the node
bye leave shell
cat node Display node if given or current node.
cd path Change the current node to path (if given and unique) or root if no argument given.
dir path Dumps information about the node (namespace, attributes, content).
du path Show the structure of the subtree under path or the current node.
exit Leave the shell.
help Show this help.
free Display memory usage.
load name Load a new document with the given name.
ls path List contents of path (if given) or the current directory.
pwd Display the path to the current node.
quit Leave the shell.
save name Saves the current document to name if given or to the original name.
validate Check the document for error.
write name Write the current node to the given filename.

–jeroen

via xmllint.

Posted in Development, HTML, HTML5, Software Development, Web Development, XML, XML/XSD, XPath | Leave a Comment »

belluzj/fantasque-sans: A font family with a great monospaced variant for programmers.

Posted by jpluimers on 2016/10/11

On my list of mono-spaced programmer fonts to try (and see how it compares to my beloved [WaybackLucida Console):

[Wayback] fantasque-sans – A font family with a great monospaced variant for programmers (yes I know it was called Comic Sans Neue Mono, but don’t extend your Comic Sans hatred there).

Source: [WaybackFantasque Sans Mono:

Fantasque Sans Mono: A programming font, designed with functionality in mind, and with some wibbly-wobbly handwriting-like fuzziness that makes it unassumingly cool. Development hosted on Github: [Waybackhttps://github.com/belluzj/fantasque-sans OFL (SIL Open Font License). Category: Monospaced

Via: Ein Font für Ruby on Rails-Entwickler: Comic Sans Neue Mono – Kristian Köhntopp – Google+

Another font on that list is [Wayback/Archive.is] Hack where I have to do a bit work on fiddling with line spacing.

These are for my TODO:

–jeroen

Posted in Development, Fantasque Sans Mono, Font, Hack Font, Lucida Console, Power User, Programmers Font, Software Development | Leave a Comment »

Installing Python on Mac OS X — The Hitchhiker’s Guide to Python

Posted by jpluimers on 2016/10/11

Interesting, as I thought Mac OS X Yosemite and up – having Python installed – would also keep Python up-to-date, but they don’t.

Hence:

Installing Python on Mac OS X

The latest version of Mac OS X, Yosemite, comes with Python 2.7 out of the box.

The version of Python that ships with OS X is great for learning but it’s not good for development. The version shipped with OS X may be out of date from the official current Python release, which is considered the stable production version.

–jeroen

via:

Posted in Development, Python, Scripting, Software Development, xCode/Mac/iPad/iPhone/iOS/cocoa | Leave a Comment »

Continua CI v1.8.1.118 released

Posted by jpluimers on 2016/10/11

Source: Version 1.8.1 History | Continua CI – v1.8.1.118

v1.8.1.118

October 10th, 2016

Changes

  • Update: Reduced CPU usage on server when using a large number of time triggers.
  • Update: Reduced wait time between time triggers running simultaneously.
  • Update: Reduced CPU usage and throughput of stage queue.
  • Update: The >> operator is now implemented in repository rules. This is used to clean the destination folder before copying files. It is useful when a stage can run on the same agent as a previous stage as the agent workspace is not automatically cleared between stages.
    Note: We have also changed the default workspace and repository rules so that the >> operator is used for any server to agent rules in new stages. This is to ensure that the workspace is always cleared and are no surprises dependent on the agent the stage runs on. This can be changed to a single > to use the previous behaviour.
  • Update: Environment variables now expanded in all path type property collectors. This will for example allow you to use %HOME% to define the path to check when using a Path Access PlugIn property collector.
  • Update: Added descriptions and help information to property collector dialog fields.
  • Update: Queued stages are now prevented from starting in the few seconds after an agent has gone offline.
  • Fix: Issue where changes to user group membership were not picked up for several minutes unless the service was restarted.
  • Fix: Triggers were not being monitored after a disabled configuration was re-enabled.
  • Fix: Issue where agents with unlimited concurrent stages would not be selected to run stage.

–jeroen

Posted in Continua CI, Continuous Integration, Development, Software Development | Leave a Comment »

Yet another refresh of KB3172605 to (again) fix Windows 7 SP1 Windows Update stuck checking for updates – via Super User

Posted by jpluimers on 2016/10/10

Checking for Updates until the first of never...

Checking for Updates until the first of never…

I already re-installed a few of the VMs from scratch (re-licensing and such) but to no avail.

So I’m wondering: does Microsoft hate Windows 7 users this much?

Microsoft keeps refreshing KB3172605 (July 2016 update rollup for Windows 7 SP1 and Windows Server 2008 R2 SP1).

I’ve seen at least 3 different versions that I needed in the same number of occasions of updating Windows 7 x64 VMs that usually are off-line (I use them every few weeks to do some testing).

Each and every time the situation is the same:

  1. Windows Update will be stuck in “Checking for Updates” for hours (even overnight)
  2. When stuck, Windows Update still uses 1 CPU core at 100%
  3. Warm reboot won’t help
  4. Shutdown and cold boot won’t help

The only thing that consistently solves this is reliably:

  1. Reboot and logon
  2. Stop Windows Update service (wuauserv in Task Manager)
  3. Wait until CPU usage drops
  4. Install the latest Windows Update client
    1. currently this is KB3172605 which – though named July 2016 – has been refreshed quite a few times as late as September 2016
    2. older versions (including KB3102810KB3138612 and KB3161647) are described at Windows 7 SP1 Windows Update stuck checking for updates – Super User
    3. the installation of the .MSU file with the Windows Update client usually seems to “hang” on "checking for installed updates" for like 30 minutes, but if you forget to stop the Windows Update service, the .MSU install will be stuck on "checking for installed updates" forever
  5. Reboot
  6. Try Windows Update again and wait for at least 30 minutes

You need to re-apply to a more recent Windows Update client each and every time this happens taking a few hours of your time.

Windows 8

After a fresh boot, I tried https://download.microsoft.com/download/A/A/8/AA842D3A-D5B0-4307-89F1-3485D88A1853/Windows8-RT-KB2937636-x64.msu via How to update the Windows Update Agent to the latest version but it shows [WayBack] “The update is not applicable to your computer

–jeroen

via: Windows 7 SP1 Windows Update stuck checking for updates – Super User [WayBack]

See also:

 

Posted in Power User, Windows, Windows 7 | 1 Comment »

Wish ttystudio was available for OpenSuSE and Mac OS X…

Posted by jpluimers on 2016/10/10

Really interesting stuff: ttystudio. It allows to record an apng or gif of a terminal session (so it should work on headless systems).

Anyone knowing alternatives for OpenSuSE and Mac OS X?

(Cockos Incorporated | LICEcap might cut it on Mac OS X, but not on headless systems so GNOME/byzanz doesn’t cut it either)

Sources:

Handy as well:

–jeroen

Posted in *nix, *nix-tools, Apple, Linux, Mac, Mac OS X / OS X / MacOS, MacBook, MacBook Retina, MacBook-Air, MacBook-Pro, MacMini, openSuSE, Power User, SuSE Linux, Tumbleweed | Leave a Comment »

How to group by date in excel? – Super User

Posted by jpluimers on 2016/10/10

Sometimes you don’t recognize how easy it is until you see it:

Add a column that is of type date with value =FLOOR(A2,1) .Then Insert -> Pivot Table. Then drag the date column on the right into the Rows box, and also drag it into values box. Done.

Thanks David d C e Freitas!

via How to group by date in excel? – Super User.

Posted in Excel, Office, Power User | Leave a Comment »

SDelete hangs at 100% – Sysinternals Forums – revert back to v.1.61

Posted by jpluimers on 2016/10/07

I’m a fan of sdelete, but the most recent v2.0 update seems – released alongside SysInternals support for nano server – to be a lot slower than the v1.61 version:

I have the same problem with Sdelete on my SSD.The resource monitor showed v.2 writing the disk at approx 40Mb p/swhile v.1.61 at 1,300 Mb p/s SDelete v.2.0 is faulty (shows 100% all the time) and dead slow, don’t use it.Google v.1.61 , it works just fine.

Source: SDelete hangs at 100% – Sysinternals Forums [WayBack]

–jeroen

Posted in Power User, sdelete, SysInternals, Windows | Leave a Comment »