The Wiert Corner – irregular stream of stuff

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

  • My badges

  • Twitter Updates

  • Pages

  • All categories

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

    Join 1,854 other subscribers

IBM 1980 Pascal manuals

Posted by jpluimers on 2019/10/15

Just found back an old note with Pascal manuals for the IBM 370 machines: the Reference Manual and Programmers Guide.

–jeroen

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

Design Patterns aren’t the goal, especially if you can cover the pattern with a language feature

Posted by jpluimers on 2019/10/15

Interesting read: [Archive.is] Are Design Patterns Missing Language Features.

On various places, it has been claimed that use of DesignPatterns, especially complex ones like VisitorPattern, are actually indicators that the language being used isn’t powerful enough. Many DesignPatterns are by convention rather than encapsulable in a library or component, and as such contain repetition and thus violate OnceAndOnlyOnce. If it didn’t contain at least some repetition, or something that could be Refactored out, then it wouldn’t be a pattern.

When applying design pattern, always remember that back then the Gang of Four wrote their book, languages were less powerful than now.

So always check if a design pattern cannot be applied by using a feature of the language you are using.

Examples from that page:

A list of DesignPatterns and a language feature that (largely) replaces them:

 VisitorPattern  .............. GenericFunctions (MultipleDispatch)
 FactoryPattern  .............. MetaClasses, closures
 SingletonPattern ............. MetaClasses
 IteratorPattern............... AnonymousFunctions 
              (used with HigherOrderFunctions, 
               MapFunction, FilterFunction, etc.)
 InterpreterPattern............ Macros (extending the language)
               EvalFunction, MetaCircularInterpreter
               Support for parser generation (for differing syntax)
 CommandPattern ............... Closures, LexicalScope, 
               AnonymousFunctions, FirstClassFunctions
 HandleBodyPattern............. Delegation, Macros, MetaClasses
 RunAndReturnSuccessor......... TailCallOptimization
 Abstract-Factory,
 Flyweight,
 Factory-Method,
 State, Proxy,
 Chain-of-Responsibility....... FirstClass types (Norvig)
 Mediator, Observer............ Method combination (Norvig)
 BuilderPattern................ Multi Methods (Norvig)
 FacadePattern................. Modules (Norvig)
 StrategyPattern............... higher order functions (Gene Michael Stover?), ControlTable
 AssociationList................Dictionaries, maps, HashTables
                    (these go by numerous names in different languages)

Food for thought…

–jeroen

Posted in Design Patterns, Development, Software Development | Leave a Comment »

heise online tech Quizes

Posted by jpluimers on 2019/10/14

heise has (German) tech quizes almost every week: [WayBack] News und Hintergründe zum Thema Quiz bei heise online

–jeroen

Posted in Fun, Power User | Leave a Comment »

Bill Scannell on Twitter: Locked-out of a medical record after 60 seconds, becausesecurity?

Posted by jpluimers on 2019/10/14

When security prohibits getting work done, people will work around it.

Source: [WayBackBill Scannell‏ @scannell Locked-out of a medical record after 60 seconds, becausesecurity? This is an actual workaround spotted today in the wild.

via:

–jeroen

Posted in Power User, Security | Leave a Comment »

Run a batch file when a user connects to a session

Posted by jpluimers on 2019/10/11

Some links:

This is different from Windows: running a batch file during logon of a single or all users, as these do not run when RDP re-connecting to a session that is already logged on.

Related:

–jeroen

Posted in Power User, Windows | Leave a Comment »

List of Android Secret Codes – I’m programmer

Posted by jpluimers on 2019/10/11

[WayBackList of Android Secret Codes – I’m programmer

Lots of *# codes for stuff like IMEI, firmware version, etc.

Via:

–jeroen

Posted in Android Devices, Power User | Leave a Comment »

Shortcut to old WordPress.com blog administration tools

Posted by jpluimers on 2019/10/11

For my link archive: https://dashboard.wordpress.com/wp-admin/index.php?page=my-blogs

Via:

–jeroen

Posted in Power User, WordPress | Leave a Comment »

.NET Core 2.0 reaches end of life, no longer supported by Microsoft | Packt Hub

Posted by jpluimers on 2019/10/11

Just in case you were using .NET Core 2.0: it is EOL now, so you should have switched to the .NET Core 2.1 which is LTS (Long Time Stable).

[WayBack] .NET Core 2.0 reaches end of life, no longer supported by Microsoft | Packt Hub

.NET Core 2.1 was released towards the end of May 2018 and .NET Core 2.1 reached EOL on October 1. This was supposed to happen on September 1 but was pushed by a month since users experienced issues in upgrading to the newer version.

.NET Core 2.1 is a long-term support (LTS) release and should be supported till at least August 2021. It is recommended to upgrade to and use .NET Core 2.1 for your projects. There are no major changes in the newer version.

.NET Core 2.0 is no longer supported and updates won’t be provided. The installers, zips and Docker images of .NET Core 2.0 will still remain available, but they won’t be unsupported. Downloads for 2.0 will still be accessible via the Download Archives. However, .NET Core 2.0 is removed from the microsoft/dotnet repository README file. All the existing images will still be available in that repository.

via [WayBack] https://hub.packtpub.com/net-core-2-0-reaches-end-of-life-no-longer-supported-by-microsoft/ – Lars Fosdal – Google+

–jeroen

Posted in .NET, .NET Core, Development, Software Development | Leave a Comment »

Some links on SQL parsing

Posted by jpluimers on 2019/10/10

Sometimes you want the opposite of SQL generation (which most, if not all, ORMs do behind the scenes): SQL parsing.

Some links that should get me started:

–jeroen

Posted in Database Development, Development, Software Development, SQL | 2 Comments »

Great video “Why Functional Programming Matters”, by Ted Neward on getting started with Functional Programming

Posted by jpluimers on 2019/10/10

Great introduction into functional programming by a step by step: “Why Functional Programming Matters”, by Ted Neward on Devoxx Poland 2016.

It uses Java, but translates very well into C#, C++, Delphi and many other programming languages because the underlying support structures are very easy (a ~50 line Lists class, a few Function# prototypes, etc).

Two great observations here:

  • most variables don’t vary
  • collections are the gateway drug to becoming functional programmers

Summary

Coding Tech

In the latter half of the 2000s, a new kind of programming language seemed poised to take the steam out of the dominancen of object-oriented programming languages and their hold over “mainstream” development. But these new languages, collectively referred to as “functional” languages, were nothing new. In fact, they’ve been a part of the language landscape since the late 80s, and arguably even longer than that. What makes a functional language, and what makes a functional language interesting? Most importantly, why do we care now, thirty years after their introduction?

https://www.youtube.com/watch?v=oB8jN68KGcU

–jeroen

Read the rest of this entry »

Posted in Conference Topics, Conferences, Development, Event, Functional Programming, Software Development | Leave a Comment »