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

Archive for the ‘Agile’ Category

Watch “Felienne Hermans: How patterns in variable names can make code easier to read” on YouTube

Posted by jpluimers on 2024/05/21

A while ago, various sources pointed me to the great video below by [Wayback/Archive] Felienne Hermans: How patterns in variable names can make code easier to read – YouTube.

I responded to the first Tweet with a series of tweets describing my two pet-peeves that I see going wrong when teaching new programmers how to name things (the examples are in Delphi, but I have seen similar shortcuts being taken in C#, VB.NET, and JavaScript being taught in both courses and conference sessions).

The two pet-peeves are:

  • avoid abbreviations as those are context sensitive; given software development already mixes technical context (it’s software development!) and domain/semantic context it makes it extra hard to decipher abbreviations
  • if you want/need to mix technology and semantics in names (most often you do), start with the most meaningful semantics and end with the least meaningful technology
    • if you don’t need technology in your names, at least put the most meaningful semantics and end with the least meaningful technology

Both very well amend what Felienne – a university professor – states in her research backed video:

“Their results show that ‘linguistic code smells’ actually increase cognitive loads,” she said. “Your brain has to work harder to process code that has these type of code smells. So that’s not what we want.”

I saved the [Wayback/Archive] tweets in the [Wayback/Archive] ThreadReader as this text (slightly edited for formatting):

Read the rest of this entry »

Posted in Agile, Code Quality, Conference Topics, Conferences, Development, Event, Software Development, Systems Architecture | Leave a Comment »

Daniel Feldman.yaml on Twitter: “What does JIRA stand for? Wrong answers only” / Twitter

Posted by jpluimers on 2023/12/08

The response to [Wayback/Archive] Daniel Feldman.yaml on Twitter: “What does JIRA stand for? Wrong answers only” were so great!

Just a few that I liked very much:

  • It’s a recursive acronym for “Jira isn’t really agile”
  • Just Issues Rarely Addressed
  • jumbled information, reported arbitrarily
  • Jumping
    Into
    Real
    Agony
  • Just Individual Redtape Actions

–jeroen

 

Posted in Agile, Conference Topics, Conferences, Development, Event, Fun, Software Development | Leave a Comment »

Avoid a software rewrite: it usually brings more trouble and puts you at a distance to competitors

Posted by jpluimers on 2023/11/22

[Wayback/Archive] lisacrispin on Twitter: “👇 This. If you want a new architecture, use the strangler fig pattern, and as he says in the thread, do it in prod. If you spend all your time rewriting, and your competitors spend that time adding new features for customers, your product will be in trouble.” / Twitter pointed me to the below thread.

The urge of rewrite often comes from a feeling of too much technical debt to carry. Preventing that technical debt in the first place would make this feeling go away in the first place so please strive for bringing down and limiting technical debt in the first place.

More about the above tweet further on in this blog post, but now back to the “rewrite everything” pit many fall into.

I saved the whole thread in [Wayback/Archive] Thread by @andrestaltz on Thread Reader App – Thread Reader App of which this are a few highlights:

Read the rest of this entry »

Posted in Agile, Code Quality, Design Patterns, Development, Software Development, Systems Architecture, Technical Debt | Leave a Comment »

Maarten van Smeden on Twitter: “Peer review proces explained (video)”

Posted by jpluimers on 2023/09/26

[Wayback/Archive] Maarten van Smeden on Twitter: “Peer review proces explained …” / Twitter

–jeroen

Posted in Agile, Code Quality, Code Review, Development, Power User, Software Development | Leave a Comment »

XPath based bookmarklets for Archive.is: more JavaScript fiddling!

Posted by jpluimers on 2023/09/20

As I promised a few months back in Bookmarklets for Archive.is and the WayBack Machine to go to the original page, moar JavaScript fiddling, this time with XPath based bookmarklets to navigate from Archive.is pages to Saved From, Redirected from, Via and Original pages.

An alternative would be using XPath as the additional fields are always structured in a table like the html below (taking complex pages like https://archive.ph/5iVVH and https://archive.ph/2015.11.14-044109/http://www.example.org/ as an example).

I got triggered to using XPath from this answer from [Wayback/Archive] gdyrrahitis at [Wayback/Archive] Javascript .querySelector find by innerTEXT – Stack Overflow (thanks [Wayback/Archive] passwd for asking):

Read the rest of this entry »

Posted in Agile, Bookmarklet, Code Quality, Code Review, Development, HTML, JavaScript/ECMAScript, Power User, Scripting, Software Development, Web Browsers, Web Development, XML/XSD, XPath | Leave a Comment »

Two Ways of Solo Programming – Seaside Testing

Posted by jpluimers on 2023/09/05

Food for thought from Stephan Kämper: [Wayback/Archive] Two Ways of Solo Programming – Seaside Testing

TL;DR:

  • it is about the time in between paid projects
  • mode 1: learning; each day ends with a working state (compiling source, passing tests)
  • mode 2: personal projects (libraries, tools); each day ends with a failing test as a guidance what to keep working on

The last one refers to [Wayback/Archive] Try ending today with a failing test for a great start tomorrow – DEV Community by [Archive] Nick Holden (@NickyHolden) / Twitter.

Via: [Wayback/Archive] Stephan Kämper on Twitter: “A new short-ish blog post about two slightly different ways of programming, when work ‘solo’ ➙ …” / Twitter

–jeroen

Posted in Agile, Awareness, Development, Software Development, TDD, Testing | Leave a Comment »

xahteiwi.eu – Meaningless Metrics, Treacherous Targets

Posted by jpluimers on 2022/12/15

Food for thought:

[Wayback] xahteiwi.eu – Meaningless Metrics, Treacherous Targets

A common feature of organizations in the software technology industry (but certainly not only in that industry) is their fixation on metrics, measurements, and quantifiers. I understand that this is frequently done and advocated for in the spirit of making management more objective, less arbitrary, more scientific, and perhaps fairer. But since they say that the road to hell is often paved with good intentions, here’s a quick summary of what we know about about the undesirable side effects of such an approach.

Basically, when the metric becomes the goal, it will not reliably measure the underlying figures any more.

By [Archive] Florian Haas on Twitter: “I wrote something long-ish on metrics over the weekend. I’m pretty certain this won’t go unchallenged, as people tend to have strong opinions on this. 🙂 “.

Via [Archive] Kristian Köhntopp on Twitter: “In writing this, @xahteiwi had probably done more for the advancement of SRE as a practice than one hundred conference talks could do. Thanks for that.… “.

–jeroen

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

In life, including working life “slow is smooth, and smooth is fast.”

Posted by jpluimers on 2022/01/26

I’ve been agile all my (not just programming) life, and only figured out this century that there is a vocabulary for that, containing the words agile, extreme programming, feature-driven and many more.

Now with the passing of the years, I also realise I have been trying to do “slow and smooth” all my life, and that with age (and less adrenaline) this becomes easier and easier.

I think “slow and smooth” goes well with “agile”, specially when you keep the focus on “doing things right” (and trying to do them right the first time, and keeping it right in incremental steps).

It often reminds me of the Dutch phrase “heeft u haast, gaat dan zitten” which often is attributed to be part of the many Chinese proverbs. It roughly translates to “when in a hurry, take a seat”, and suggests to take a step back and think when under pressure. Maybe this English version of a Chinese proverb comes close: “When you are in a hurry, the horse holds back”.

For is it is intriguing that mainly Chinese, but in a broader sense Asian, proverbs play such an important role, whereas Western proverbs get less and less important. Informal knowledge seems to diminish in Western culture, which I think is a pity.

Maybe all these vocabulary things that started  to make sense way after my puberty also have to do with being diagnosed autistic at 50. That too started a lot of puzzle-pieces to suddenly make sense.

Below the links that inspired me to make this blog post in the first place:

–jeroen

Read the rest of this entry »

Posted in Agile, Conference Topics, Conferences, Development, Event, LifeHacker, Power User, Software Development | Leave a Comment »

media.ccc.de – No, we won’t have a video call for that! (Communications in distributed teams by Florian Haas)

Posted by jpluimers on 2021/12/29

Not just for during the Covid times: the helpful examples and thorough explanation by Florian makes this a must-watch video for anyone wanting to participate in distributed teams.

[Wayback] media.ccc.de – No, we won’t have a video call for that!

The above link has downloads for both Video (mp4 and WebM formats) and audio (mp3 and opus formats). I found the video easier to digest.

If you want to watch it on-line, there is the YouTube video (below the signature) which has closed captions as well.

Kristian Köhntopp made a [Wayback/Archive.is] short intro and abstract on Twitter:

https://xahteiwi.eu/resources/presentations/no-we-wont-have-a-video-call-for-that/

Exactly one year ago, the office building I was working from every work day caught fire, and was closed for a month for renovation.

On the day of the planned reopening, my employer declared Covid emergency and asked everybody to work from home.

So that is how we work since then, and we will continue to do so until at least October.

Not too much has changed, though. When the new https://oosterdokseiland.nl/en/ opens, there will be probably a lot of pain between the people who go to the office to work and those who don’t.

The talk above by @xahteiwi explains in a nice way how to work properly remote first:

  • Writing over speaking.
  • Asynchronous over synchronous.
  • Structured communication over free form.

Some things require a free form video chat, but even then, set an agenda and write minutes.

Florian also explains when to use what, and what situations would require a synchronous wide-band channel, but most of them are exceptional, and most of the time you could execute better using structured, written, async mode comms.

Having said that, if you want his talk as a briefing, here is a Youtube: https://www.youtube.com/watch?v=NVnci3tyDa4

First watch the video, then read the full speaker notes at [Wayback] No, We Won’t Have a Video Call for That! – xahteiwi.eu “My talk from FrOSCon 2020, Cloud Edition.”

More on-line:

–jeroen

Read the rest of this entry »

Posted in Agile, Conference Topics, Conferences, Development, Event, LifeHacker, Power User, Software Development | 1 Comment »

13 Tips for Writing Useful Unit Tests | by Nick Hodges | Better Programming

Posted by jpluimers on 2021/12/21

[Wayback/Archive.is] 13 Tips for Writing Useful Unit Tests | by Nick Hodges | Better Programming (I made direct links to the topics in the below quote):

How you write your tests is as important as writing them

1. Test One Thing at a Time in Isolation
2. Follow the AAA Rule: Arrange, Act, Assert
3. Write Simple “Fastball-Down-the-Middle” Tests First
4. Test Across Boundaries
5. If You Can, Test the Entire Spectrum
6. If Possible, Cover Every Code Path
7. Write Tests That Reveal a Bug, Then Fix It
8. Make Each Test Independent
9. Name Your Tests Clearly and Don’t Be Afraid of Long Names
10. Test That Every Raised Exception Is Raised
11. Avoid the Use of Assert.IsTrue
12. Constantly Run Your Tests
13. Run Your Tests as Part of Every Automated Build

–jeroen

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