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,380 other followers

The Spilled Juice Analogy for Technical Debt | Disciplined Agile 2.X

Posted by jpluimers on 2018/06/21

Interesting take on Technical Debt: [WayBackThe Spilled Juice Analogy for Technical Debt | Disciplined Agile 2.X

Not just because of the analogy, but also because of this comment by Ramu Iyer:

Conway’s Law states that software (or the structure of an IT system) mimics and is isomorphic to the organizational-social structure around it. In layman’s terms, a poorly designed software system is a vivid indicator of the underlying pattern of team communication, coordination and cooperation in the software team. Oftentimes, strained social and organizational interactions get in the way of smooth software development and operation. This results in social liabilities during intergroup coordination and accumulates “social debt” within or across one or more communities in a (software) organization. Any suboptimal socio-technical decisions also impact the technical debt of a software system in tandem. Digging one’s “way out of the technical debt pit” also requires the proactive mitigation of social debt around a system.

Reference:
D. A. Tamburi, et al. Social debt in software engineering: Insights from the industry. Journal of Internet Services & Applications, 2015.

–jeroen

via: [WayBack] Vivid and better analogy than interest payments.The Spilled Juice Analogy for Technical Debt http://buff.ly/2nax1Ng #technicaldebt – Marjan Venema – Google+

 

Posted in Development, Software Development, Technical Debt | Leave a Comment »

Two cool features of the TestInsight treeview – navigate and copy

Posted by jpluimers on 2018/06/20

TestInsight is a great tool for automatically running your unit tests and seeing the results to make you more productive.

Two of the results treeview features you might not know make you even more productive:

  • After selecting a node, pressing Ctrl-C will copy the content as text to the clipboard
  • Double clicking will bring you to the unit test in your source code

You can get TestInsight at sglienke / TestInsight — Bitbucket

–jeroen

Posted in Delphi, Development, Software Development | 1 Comment »

Class helpers and virtual methods – E2003 Undeclared identifier: ‘QueryInterface’/ ‘_AddRef’/’_Release’

Posted by jpluimers on 2018/06/20

Reminder to self: if you want to stay compatible with old (Pre Delphi XE) source code, then do not use virtual methods in class helpers.

Technically you can, as class helpers can inherit from other class helpers, but this is only supported as of Delphi XE.

In lower versions you get these errors as apparently the Delphi compiler tags an IInterface to the class helper compiler result:

[Error] Project1.dpr(14): E2003 Undeclared identifier: 'QueryInterface'
[Error] Project1.dpr(14): E2003 Undeclared identifier: '_AddRef'
[Error] Project1.dpr(14): E2003 Undeclared identifier: '_Release'

Source: [WayBackQualityCentral 9782

–jeroen

Posted in Delphi, Development, QC, Software Development | 1 Comment »

Amazon Alexa on a Raspberry Pi (add a USB microphone and a speaker with a 3.5mm plug)

Posted by jpluimers on 2018/06/19

I never realised that Amazon Alexa has an open source account on GitHub: https://github.com/alexa

There are full instructions on getting a Java based Alexa Voice Service (AVS) – also used by Amazon Echo – to run on a Raspberri Pi (3 or better recommended, works on 2 as well) with this extra hardware:

  • USB microphone
  • Speaker with a 3.5mm audio plug
  • USB WiFi (essential for Raspberry Pi 2, optional if you want to boost your WiFi signal on a Raspberry Pi 3)

Full instructions are at Raspberry Pi · alexa/alexa-avs-sample-app Wiki and a video is below: https://www.youtube.com/watch?v=baec1CbV6A0

I should find some time to try this out (:

–jeroen

Read the rest of this entry »

Posted in Development, Hardware, Hardware Development, Hardware Interfacing, Software Development | Leave a Comment »

PowerShell – query reboot/shutdown events

Posted by jpluimers on 2018/06/19

Thanks [WayBackgbabu for the below PowerShell ide

As PowerShell command:

Get-EventLog System | Where-Object {$_.EventID -eq "1074" -or $_.EventID -eq "6008" -or $_.EventID -eq "1076"} | ft Machinename, TimeWritten, UserName, EventID, Message -AutoSize -Wrap

Based on it and my own experience, thse Event IDs can be interesting:

  • 41 – The system has rebooted without cleanly shutting down first
  • 109 – The kernel power manager has initiated a shutdown transition.
  • 1073 – The attempt by user [domain]\[username] to restart/shutdown computer [computername] failed.
  • 1074 – The process [filename].[extension] has initiated the restart of computer [computername] on behalf of user [domain]\[username\ for the
  • 1076 – ???
  • 6008 – The previous system shutdown at [time-in-local-format] on [date-in-local-format] was unexpected.

You can also run this as a batch file, but not you need to escape the pipe | into ^| like this:

PowerShell Get-EventLog System ^| Where-Object {$_.EventID -eq "1074" -or $_.EventID -eq "6008" -or $_.EventID -eq "1076"} ^| ft Machinename, TimeWritten, UserName, EventID, Message -AutoSize -Wrap

If you have PowerShell 3.0 or greater, then you can use the [Archive.is-In operator:

PowerShell Get-EventLog System ^| Where-Object {$_.EventID -in "41", "109", "1074", "6008", "1076"} ^| ft Machinename, TimeWritten, UserName, EventID, Message -AutoSize -Wrap

–jeroen

Posted in Batch-Files, CommandLine, Development, Power User, PowerShell, PowerShell, Scripting, Software Development, Windows | Leave a Comment »

 
%d bloggers like this: