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

DevOps Is Bullshit: Why One Programmer Doesn’t Do It Anymore | jjmojojjmojo: In Effect

Posted by jpluimers on 2015/12/17

Interesting take to which I agree, as DevOps needs to be in your blood and needs to come from bottom up, just like being agile.

Read the full blog post at DevOps Is Bullshit: Why One Programmer Doesn’t Do It Anymore | jjmojojjmojo: In Effect.

A small quote:

… some of the common mistakes:

  • DevOps doesn’t make specialists obsolete.
  • Developers can learn systems and operations, but nothing beats experience.
  • Operations people can learn development too, but again, nothing beats experience.
  • Operations and development have historically be separated for a reason – there are compromises you must make if you integrate the two.
  • Tools and automation are not enough.
  • Developers have to want DevOps. Operations have to want DevOps. At the same time.
  • Using “DevOps” to save money by reducing staff will blow up in your face.
  • You can’t have DevOps and still have separate operations and development teams. Period.

–jeroen

via: DevOps Is Bullshit: Why One Programmer Doesn’t Do It Anymore | jjmojojjmojo: In Effect.

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

c++ – In which order should floats be added to get the most precise result? – Stack Overflow

Posted by jpluimers on 2015/12/16

Interesting:

sorting in ascending order (of magnitude) usually improves things

–jeroen

via c++ – In which order should floats be added to get the most precise result? – Stack Overflow.

Posted in Algorithms, Development, Floating point handling, Software Development | Leave a Comment »

delphi – RAD Studio 2009 Persistent Selection Issue: Bug or Feature? – Stack Overflow

Posted by jpluimers on 2015/12/15

Bug, also in Delphi 2007:

Just hit Insert twice (which changes the text entry mode between Insert and Overwrite and then back) and your text selection will be back to working normally.

Source: delphi – RAD Studio 2009 Persistent Selection Issue: Bug or Feature? – Stack Overflow

–jeroen

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

.NET/C#: PasteText command line tool as reverse of Clip.exe

Posted by jpluimers on 2015/12/15

Quite a while ago I learned about the clip.exe tool.

clip.exe is a nifty tool that allows you to copy console text output to the clipboard. Though shipping with Windows Server 2003, it wasn’t part of Windows XP, but as of Windows Vista it shipped on desktop versions of Windows.

Digging a bit deeper, I found out it was already part of the Windows NT 4 Resource Kit.

So I wrote PasteText:

PasteText: the reverse of clip.exe; pastes Clipboard.GetText() or Clipboard.GetFileDropList() to the standard output.

The full source code is below and in my repository.

There are many examples on the internet about Clipboard.GetText, but there is very little about Clipboard.GetFileDropList. Read the rest of this entry »

Posted in .NET, .NET 3.0, .NET 3.5, .NET 4.0, .NET 4.5, C#, C# 3.0, C# 4.0, C# 5.0, Development, Software Development, The Old New Thing, Windows Development | Leave a Comment »

Continua CI: viewing events (errors) for a certain repository #continuaci @FinalBuilder

Posted by jpluimers on 2015/12/09

Somehow this isn’t linked logically from the UI, so here are two sets of steps to get there:

From the “Event log”

  1. Go to the “Event Log” page on your Continua CI server; for my server that is https://continuaci.pluimers.com/administration/events.
  2. Click on any repository name (in my case DUnitX) and note the GUID at the end of the URL: https://continuaci.pluimers.com/administration/ci/repositories/index/94c6f27d-20a4-4f53-a81c-94f863db248d
  3. Append index and that GUID to the first URL: https://continuaci.pluimers.com/administration/events/index/94c6f27d-20a4-4f53-a81c-94f863db248d

From the “Source Repositories”

  1. Go to the “Source Repositories” URL on your Continua CI server; for my server that is https://continuaci.pluimers.com/administration/ci/repositories
  2. Click on the word “Error” or red cross (sometimes you can click only one of them) in front of any failing repository: https://continuaci.pluimers.com/administration/events/index/94c6f27d-20a4-4f53-a81c-94f863db248d

The second has the drawback that you can only see events for repositories that are currently in error, not any repository that has ever been in error.

So maybe I was doing something stupid and maybe there is a far easier way, but these work (:

–jeroen

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

The coding love – When I read and refactor code of another developer

Posted by jpluimers on 2015/12/09

Thanks Stefan Glienke for this picture:

When I read and refactor code of another developer

When I read and refactor code of another developer

–jeroen

via: The coding love – When I read and refactor code of another developer.

Posted in .NET, About, Delphi, Development, Software Development | 1 Comment »

DUnit with a twist: Delphi: GUI-testing. Table of contents

Posted by jpluimers on 2015/12/08

Interesting reads despite the level of English:

GUI-testing. Table of contents

GUI-testing 1. About tests and specially fitted “checkpoints”
GUI-testing 2. Thinking of testing
GUI-testing 3. Thinking of testing №2
GUI-testing 4. Thinking of testing №3
GUI-testing 5. Thinking of testing №4
GUI-testing 6. Thinking of testing №5
GUI-testing 7. Briefly. About GUI-testing “in the spoken style”
GUI-testing 8. About GUI-testing “in spoken style”. The follow-up
GUI-testing 9. GUI-testing “in spoken style”. Introducing of the alphanumeric characters to the current control
GUI-testing 10. GUI-testing “in the spoken style”. Note about “how this thing is organized”
GUI-testing 11. GUI-testing “in the spoken style”. How this thing is organised №2
GUI-testing 12. GUI-testing “in the spoken style”. Back to the basics
GUI-testing 13. GUI-testing “in spoken style”. Back to the basics. Example of pressing the button of the form through the script
GUI-testing 14. GUI-testing “in the Russian style”. Adding DUnit to our “scripts”
–jeroen

via: 18-ть лет с Delphi: GUI-testing. Table of contents

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

Why Developers hate being interrupted. CodeProject – Google+

Posted by jpluimers on 2015/12/08

via: CodeProject – Google+.

b2a4b1c7-2467-463a-a5e6-5723a18c03c6

 

Posted in Development, Software Development | Leave a Comment »

BashPitfalls: common errors that Bash programmers make – Greg’s Wiki

Posted by jpluimers on 2015/12/03

I wish I had seen this years ago, as I’ve always had a hate-hate relationship with many shells on many OS-es.

I’ve included the ToC; read the rest of BashPitfalls: common errors that Bash programmers make – Greg’s Wiki back-to-back. It’s worth it, really.

Bash Pitfalls

This page shows common errors that Bash programmers make. These examples are all flawed in some way.

You will save yourself from many of these pitfalls if you simply always use quotes and never use WordSplitting for any reason! Word splitting is a broken legacy misfeature inherited from the Bourne shell that’s stuck on by default if you don’t quote expansions. The vast majority of pitfalls are in some way related to unquoted expansions, and the ensuing word splitting and globbing that result.

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

The curse of nested DataSet fields in ClientDataSets: naming conventions

Posted by jpluimers on 2015/12/03

Nested DataSet fields assume identical naming of fields and parameters as Richard Stevens did comment in   So I’m in total n00b mode here. I’m trying to set up a master/detail….

Of course the documentation for that is easy to find. Not.

Even this article by Cary Jensen doesn’t reveal the issue: Nesting DataSets in ClientDataSets.

So thanks Richard for clearing that up!

–jeroen

Posted in Delphi, Delphi 10 Seattle, Delphi 2007, Delphi XE, Delphi XE2, Delphi XE3, Delphi XE4, Delphi XE5, Delphi XE6, Delphi XE7, Delphi XE8, Development, Software Development | Leave a Comment »