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,839 other subscribers

Archive for the ‘Software Development’ Category

17 years ago, C:\nul\nul crashed/BSOD Windows; now $MFT does for Windows < 10

Posted by jpluimers on 2017/05/26

Source:

History repeating itself: [Archive.is31607 – C:\nul\nul crashes/BSOD then, now it’s this:

Via:

All versions prior to Windows 10 and Windows Server 2016 seem vulnerable.

So add $MFT to this list:

The following device names have been known to render a system unstable: CON,
NUL, AUX, PRN, CLOCK$, COMx, LPT1, and CONFIG$.

Oh BTW: history repeated itself this year too. With NUL

In short, Steven Sheldon created a rust package named nul which broke the complete package manager on Windows:

BTW: one of my gripes on learning new languages is that they come with a whole new idiom of their ecosystem: rust, cargo, crates, all sound like being a truck mechanic to me.

–jeroen

Read the rest of this entry »

Posted in Development, Microsoft Surface on Windows 7, NTFS, Power User, Security, Software Development, The Old New Thing, Windows, Windows 10, Windows 7, Windows 8, Windows 8.1, Windows 9, Windows 95, Windows 98, Windows Defender, Windows Development, Windows ME, Windows NT, Windows Server 2000, Windows Server 2003, Windows Server 2003 R2, Windows Server 2008, Windows Server 2008 R2, Windows Server 2012, Windows Server 2012 R2, Windows Server 2016, Windows Vista, Windows XP | Leave a Comment »

Github reStructuredText parser got less strict so it now does display parts it cannot fully render

Posted by jpluimers on 2017/05/25

As the pull request had been in the pipeline for almost 2 years, I missed it went through:

Before that, Github would not render parts of reStructuredText files at all it could not fully render them. Now it renders them as raw reStructuredText so at least you can see the content.

Examples:

.. function:: code_to_ast(codeobj)

–jeroen

Posted in Development, Lightweight markup language, reStructuredText, Software Development | Leave a Comment »

UsesHelperSetup.zip by Stefan Glienke for Delphi 10.0/1/2

Posted by jpluimers on 2017/05/25

[WayBack] Some while ago I started a plugin to easily add units to the uses clause just like you can do via quickfix in VisualStudio.I never actually polished it… – Stefan Glienke – Google+

UsesHelperSetup.zip download: https://1drv.ms/u/s!ArjIoB43KhwDg3Ju1tkHlJniN2WS (for now Delphi 10, 10.1 and 10.2: Seattle/Atlanta, Berlin/Big-Ben, Tokyo/Godzilla)

jeroen

 

Posted in Delphi, Delphi 10 Seattle, Delphi 10.1 Berlin (BigBen), Delphi 10.2 Tokyo (Godzilla), Development, Software Development | Leave a Comment »

Happy Geek Pride Day – Nerdious geekius computerus

Posted by jpluimers on 2017/05/25

Wishing you all a happy Geek Pride Day. Please hug your local Nerdious geekius computerus.

Big image [WayBack] of the PDF map based on this world image [WayBack]. Older Google Drawing.

–jeroen

via:

Facebook office images

Read the rest of this entry »

Posted in Development, Fun, Geeky, Software Development | Leave a Comment »

Delphi 10.2 Tokyo Godzilla ISO and other download links including hashes

Posted by jpluimers on 2017/05/24

I thought I already posted this, but since hashes were mentioned at [WayBack] Still can’t get Rad Studio 10.2 to install on my laptop. It’ll install now, but then it can’t load several BPLs and then it crashes before the IDE gets … – Phillip Woon – Google+

From [WayBackcc.embarcadero.com/reg/delphi and [WayBackRad Studio Tokyo 10.2 | Board4All:

Read the rest of this entry »

Posted in Delphi, Delphi 10.2 Tokyo (Godzilla), Development, Software Development | 4 Comments »

No, no, no, noooooo! – A Modern Hungarian Notation – Pixplicity

Posted by jpluimers on 2017/05/24

Some people still don’t get it:

We like to keep our code organized for readability, and use Hungarian Notation as prefixes where they clarify the purpose of a variable.

Source: A Modern Hungarian Notation – Pixplicity

My opinion on this:

  • Don’t abbreviate. There is code completion for a reason.
  • Put technical meanings at the end and functional meanings at the start of identifiers: software development is about functional stuff, not about technical stuff as the latter changes way faster than the former.
  • You might consider using prefixes for arguments, local variables, instance variables and such, but often that works against you while refactoring stuff.

Been there, done that (;

Source: Boy, there sure is a lot of discussion about Hungarian Notation!

–jeroen

Posted in Conventions, Development, Naming Conventions, Software Development | Leave a Comment »

Some interesting Delphi posts by Stefan Glienke – Spring4D maintainer

Posted by jpluimers on 2017/05/23

One of the Delphi programmers I keep an eye on is [WayBackStefan Glienke, the maintainer of the great Spring4D Delphi framework at spring4d.org.

His blog posts come in bursts, though his G+ posts are spreaded a bit more evenly.

Some of his recent posts and references:

–jeroen

Read the rest of this entry »

Posted in Delphi, Development, Software Development | Leave a Comment »

What to change after a fresh Delphi (RAD Studio) installation…

Posted by jpluimers on 2017/05/23

Reminder to self: document what I change, and borrow some from this interesting thread:

Just curious, what do you change after installing Studio? During all these (21!) years, the only thing I change is the editor keyboard settings to… – David Berneda – Google+

–jeroen

Posted in Delphi, Development, Keyboards and Keyboard Shortcuts, Power User, Software Development | Leave a Comment »

Wow, this parses in Delphi: `property Foo: string index 0 string read GetFoo;`

Posted by jpluimers on 2017/05/18

Quite a few interesting entries got posted after I published this compiler glitch:

Wow, this parses:

property Foo: string index 0 string read GetFoo;

Note the extra “string”.

Found this in an old piece of code so it must have been uncaught by the compiler for quite a while.

– Jeroen Wiert Pluimers – Google+

Some:

property DepartmentName: string index 0 program library uses unit interface string class read GetCustomDataX;

property Foo: string index 0 unit if library uses unit do not inline file else raise object if is nil read GetFoo;

–jeroen

Posted in Delphi, Development, Fun, Software Development | 2 Comments »

Anders Hejlsberg on Modern Compiler Construction | Seth Juarez | Channel 9

Posted by jpluimers on 2017/05/18

One of those “must watch” videos if you are remotely or more interested in how compilers influence our day to day coding activities.

The Red Dragon Book, first edition: Compilers. Principles, Techniques and Tools.

The Red Dragon Book, first edition: Compilers. Principles, Techniques and Tools.

It starts out with referring to the Dragon Book (well, actually the first edition of the Red Dragon Book, as there are three) describing the compilers as having front-ends consisting of a Lexer, Parser and Type Checker and back-ends consisting of Code Generator and Emitter. A full compilation is going through all five stages and there is an increasing cost using these traditional stages when going from syntax highlighting via collapsible regions to red squiggles and code completion will need to go further along those stages taking an increasing time – like seconds or even longer – whereas the user experience requires responses in ~ 100 milliseconds where his code might not even compile in the first place.

Then Anders goes on describing Roslyn, TypeScript and Compiler API JSON interfaces to them so you can run them as a service and keep compiler state, rebuilding just enough of the state on source code changes. He goes on talking about how Visual Studio, Visual Studio Code, Command-Line Compiler, Sublime Text and other tools (can) use these APIs to interact with the compiler so it keeps state of slowly evolving code of which the tools than can emit what they need.

Anders explains this much better and much more visually than I do: so it’s a highly recommended video.

Read the rest of this entry »

Posted in .NET, C#, Delphi, Development, Software Development | 2 Comments »