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

Archive for the ‘Software Development’ Category

Multi-parameter FreeAndNil plus InitialiseNil methods – interesting code ceremony reduction by David Heffernan

Posted by jpluimers on 2020/03/05

I’m probably getting a truckload of anti-FreeAndNil folks over me, but there are cases this comes in useful, so having an overloaded version cutting down code ceremony makes sense: [WayBack] interface – Avoiding nested try…finally blocks in Delphi – Stack Overflow

Which means I need to update my type safe FreeAndNil one day.

This should be relatively straightforward, given that David published a python generator for his Delphi code [WayBack].

–jeroen

Via: [WayBack] Interesting approach by David Heffernan (*1) to the nested try..finally blocks because of multiple object creations: Overloaded InitializeNil and FreeA… – Thomas Mueller (dummzeuch) – Google+

Read the rest of this entry »

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

Abilities that makes you a better developer – Hacker Noon

Posted by jpluimers on 2020/03/05

If we have passion for what we do, why not try to be a better professional every day?

Source: [WayBackAbilities that makes you a better developer – Hacker Noon

That is an interesting, but very hard question which very few people around me are afraid of trying to answer.

I think the hardest part for most developer isn’t the tech/science bits as usually they have a natural feel for natural science and formal science related topics (which I’d rather not call STEM).

I’ve a hard time to remember the STEM acronym because it means “vote” or “voice” to since I’m Dutch, and equally hard the . Also I really dislike the term “hard science” as “soft sciences” are very hard for me. So lets stick with natural science and formal science.

So if you are a developer and trouble motivating yourself to learn new things in the mathematics, algorithms & data structures, databases, computer architecture, operating systems and networks, then you will have a really really hard time.

I can understand it is tougher to motivate learning about English (and other languages), paradigms & design patterns, teamwork, or to put it in a broader perspective the human side of affairs. Those however are the areas that do not come “natural” for most developers and are in effect the ones most developers need to work on most to improve.

Doing that will make it a lot easier to work with people around you.

For myself, I still have to grow a lot in those areas even though I already have. Having originated as nerd/geek/introvert or however you want to call that direction, my natural habitat is still a silent place with little distraction with some relatively quiet people around me that help me keep focus and force me in the rhythms that are good for me. But I’ve learned to speak for large groups, write (not just posts) and have many other nice social interactions.

That growth brings so much joy and makes work so much nicer, that the effort and persistence keeps being worth every minute I put in.

Via: [WayBack] Cesar Romero (@cesarliws) on Twitter: “Abilities that makes you a better developerhttps://t.co/svwn4CueNe”

–jeroen

 

Posted in About, Agile, Development, Personal, Software Development | Leave a Comment »

SMS Backup+ – Apps on Google Play

Posted by jpluimers on 2020/03/04

Simple but cool app: [Archive.isSMS Backup+ – Apps on Google Play:

Automatically backup your SMS, MMS and call history with a separate label in Gmail and Google Calendar.

Later you can restore the saved data (except MMS) back to the phone, especially useful when switching to a new device.

IMAP access needs to be manually enabled in Gmail, see the website and FAQ for more information. You can of course use your own IMAP server for backups, giving you full control over your data.

SMS Backup+ is a free open-source project which has been in active development since the early days of Android, completely ad and tracking-free, supported through voluntary donations.

Sourcecode: [WayBack] GitHub – jberkel/sms-backup-plus: Backup Android SMS, MMS and call log to Gmail / Gcal / IMAP

Via: [WayBack] Wirre Telefongespräche für 500. Ich kriege ja nicht mehr oft Anrufe auf der deutschen Telefonnummer, und so liegt das Telefon jetzt daheim und hängt am… – Kristian Köhntopp – Google+

–jeroen

Posted in Android, Development, Mobile Development, Software Development | Leave a Comment »

Entwicklertag 2016: How Agile and OO have lost their way together – James Coplien – YouTube

Posted by jpluimers on 2020/03/04

Still an interesting video, though I wish James Coplien would have a less shouting voice: that would be much easier on the ears.

–jeroen

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

Use SetString if your source memory reagion with characters is not null-terminated…

Posted by jpluimers on 2020/03/03

Too many people forget this (including myself) every now and then) so here is a reminder to use the [WayBackSetString method when assigning strings from memory regions having characters but no null terminator:

Anyway, assuming that you use a Unicode Delphi you want to use SetString in its place:

SetString(password, PWideChar(Credential.CredentialBlob), Credential.CredentialBlobSize div 2);

It was by David Heffernan commenting on [WayBack] I have this code sample on StackOverflow using a function WideCharToWideString… I can’t seem to find anything on this function… – Nils Guillermin – Google+.

Note that like the above Delphi 2009 link (where it is a WideChar function to Unicode string conversion function), it was also available in Delphi 2007 and earlier as [WayBack] SetString.

–jeroen

 

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

Very nice “Appendix A. Introduction to TCP/IP security” on digests, hashing, encryption, asymetric/symmetric, VPN and much more

Posted by jpluimers on 2020/03/03

For me this is still a primary starting point in case I need to know something about security which has clear pictures: [WayBack] Appendix A. Introduction to TCP/IP security (sg245383.pdf/ftp://ftp.www.ibm.com/…/sg245383.pdf, thanks to Jac Las) all on one web page.

The links are to the “Digital signatures” portion, as that’s what I needed at the time, but they are just anchors in the page.

These were the diagrams I was after:

If you want much more in-depth slide then, then go for [WayBackCryptography, from Theory to Practice which you can find back searching for IBM “Cryptography, from Theory to Practice” or “sign then hash” or “hash then sign”.

It is very different from the equally interesting presentation

–jeroen

Posted in Development, Encryption, Power User, Security, Software Development | 2 Comments »

R Notes for Professionals book

Posted by jpluimers on 2020/02/28

One day I will likely need R, so here is the [WayBackR Notes for Professionals book.

The R Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow. Text content is released under Creative Commons BY-SA.

It is a [WayBack] PDF download.

Via: [WayBack] R Notes for Professionals: a free 400+ pages book compiled from Stack Overflow Documentation released under Creative Commons BY-SA… – ThisIsWhyICode – Google+

–jeroen

Posted in Development, Software Development | Leave a Comment »

GitHub – mgedmin/check-manifest: Tool to check the completeness of MANIFEST.in for Python packages

Posted by jpluimers on 2020/02/27

I will need thi sone day: [WayBack] GitHub – mgedmin/check-manifest: Tool to check the completeness of MANIFEST.in for Python packages

Are you a Python developer? Have you uploaded packages to the Python Package Index? Have you accidentally uploaded broken packages with some files missing? If so, check-manifest is for you.

Via: [WayBack] check-manifest: a tool to check the completeness of MANIFEST.in for Python packages  – ThisIsWhyICode – Google+

–jeroen

Posted in Development, Python, Scripting, Software Development | Leave a Comment »

What are the size restrictions for the VCL controls like TPanel and TPaintBox…

Posted by jpluimers on 2020/02/27

Via [WayBack] What are the size restrictions for the VCL controls like TPanel and TPaintBox.? Are they documented anywhere? I’m talking about placing these on a TScro… – Thomas Mueller (dummzeuch) – Google+:

Some Windows messages use the LPARAM to carry width and height, which allows only 16 bit for each.

So 32k-1 (or decimal 32767) is the maximum size of a GDI based visual element in Windows.

–jeroen

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

emulation – How to safely remove/uninstall Android Virtual Device .img files added by Visual Studio Emulator for Android – Stack Overflow

Posted by jpluimers on 2020/02/26

Me at [WayBack] emulation – How to safely remove/uninstall Android Virtual Device .img files added by Visual Studio Emulator for Android – Stack Overflow:

Since after uninstalling the “Visual Studio Emulator for Android” component, you cannot get to the “AVD Manager” any more, you have to manually delete this directory:

%LocalAppData%\Microsoft\VisualStudioEmulator

This works for both Visual Studio 2017 and Visual Studio 2015.

In addition, you might want to run “AppWiz.cpl“, then remove “Android SDK Tools”, which is also not automatically removed by the Visual Studio installer (at least not in Visual Studio 2015).

This will get rid of the multi-gigabyte folder %ProgramFiles(x86)%\Android\android-sdk\

If you still need Android emulation, read these:

–jeroen

Posted in .NET, Development, Software Development, Visual Studio 2015, Visual Studio 2017, Visual Studio and tools | Leave a Comment »