Skip to content

Commit

Permalink
Christmas 2024 post
Browse files Browse the repository at this point in the history
  • Loading branch information
darianmiller committed Dec 25, 2024
1 parent d2b3797 commit bea43ee
Show file tree
Hide file tree
Showing 5 changed files with 156 additions and 4 deletions.
8 changes: 4 additions & 4 deletions _includes/iacustom-postfooter.html
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,13 @@
<h6 data-toc-skip id="DelphiCommunities">Connect with other Delphi Developers online!</h6>
<div>
<p>Come join our <a href="https://t.me/delphidevelopers"><strong>Delphi Developer Group on Telegram</strong></a> which has
grown to over 1,300 members and is a great place to ask/answer Delphi related questions in a live-chat style interface.
grown to over 1,400 members and is a great place to ask/answer Delphi related questions in a live-chat style interface.
If you prefer Slack, join us on the <a href="https://join.slack.com/t/delphiprogrammers/shared_invite/zt-plo1a2jr-xaLr7nuzakcgBTi2Ex5Thg"><strong>Delphi Programmers Slack Channel</strong></a>
which has grown to over 540 members and is mostly used for private member-to-member messaging.
which has grown to over 550 members and is mostly used for private member-to-member messaging.
And because we believe in choice, you even join us on the <a href="https://discord.gg/jYDhhcaAyx"><strong>Delphi Programmers Discord Server</strong></a>
where we have over 900 members.</p>
where we have over 1,000 members.</p>
<p>You can also reach me directly on <a href="https://twitter.com/ideasawakened"><strong>Twitter</strong></a> (600+ followers)
or <a href="https://www.linkedin.com/in/darianm/"><strong>LinkedIn</strong></a> (5,300+ connections.)
or <a href="https://www.linkedin.com/in/darianm/"><strong>LinkedIn</strong></a> (5,600+ connections.)
For an old-school message board, one of the best is the <a href="https://en.delphipraxis.net/"><strong>Delphi-PRAXiS international forum</strong></a></p>
</div>
</div>
Original file line number Diff line number Diff line change
Expand Up @@ -578,3 +578,60 @@ Some examples were provided to show some obvious and not-so-obvious reasons to a
Now look at Pascal-3 (Oberon) and what did he do? He removed the WITH, LOOP, and EXIT statements. Which Niklaus Wirth will you argue with?


### Some Comments From Linked In

- **Tilen Kordis** [posted](https://www.linkedin.com/feed/update/urn:li:activity:7234866143469981697/)
````
What is one of Delphi statements that makes perfect sense the first time you use it and absolutely NO SENSE the first time you need to debug it?
WITH Statement!
with LongNamedDelphiVisualControl do
begin
Top := 1;
Left := 1;
Caption := 'In Top Left corner.';
end;
The Delphi documentation is full of examples using WITH and as a new Delphi developer it makes sense to use it, it shortens some code examples and makes some code easier to read.
Well, that ends the first time you need to debug or refactor it. Then you quickly notice the shortened and readable code could be full of mysteries and it makes sense to try to avoid it in your code.
The headache that comes with using WITH is not worth it!
````

** Michalis Kamburelis** responded to Tilen's post:
> We have a section in "Coding Conventions" of Castle Game Engine that explicitly says "Do not use with" for this reason:) https://castle-engine.io/coding_conventions#no_with
From his documentation:
> Never use with keyword. Using with makes the code very difficult to read, as some of the symbols inside the "with A do begin …​ end" clause are bound to A, and some are not, and it’s completely invisible to the human reader which symbols are which. And it’s impossible to determine it, without intimately knowing the complete API of class/record A.
** Eugene Kasnerik** [responded](https://www.linkedin.com/feed/update/urn:li:groupPost:1290947-7233568690158329856?commentUrn=urn%3Ali%3Acomment%3A%28groupPost%3A1290947-7233568690158329856%2C7233708262624313344%29&dashCommentUrn=urn%3Ali%3Afsd_comment%3A%287233708262624313344%2Curn%3Ali%3AgroupPost%3A1290947-7233568690158329856%29) to one of my posts:
> I thought this point was obvious for decades. But after reading comments I'm not sure about the planet :)
** Gordan Paunovic** [responded](https://www.linkedin.com/feed/update/urn:li:groupPost:101829-7233568711738015746?commentUrn=urn%3Ali%3Acomment%3A%28groupPost%3A101829-7233568711738015746%2C7233755585156907011%29&dashCommentUrn=urn%3Ali%3Afsd_comment%3A%287233755585156907011%2Curn%3Ali%3AgroupPost%3A101829-7233568711738015746%29)
> One of the few things which should be removed from Delphi is WITH. Thanks for sharing.

### Some Comments From Facebook

**Brian Muegge**:
> No matter how many times you warn them, there's always somebody who has to touch the stove to see if it's still hot.
**Phillip Woon**:
> You're preaching to the choir
**Bruce McGee**:
> It will never not trigger me
And Bruce's response to someone that defended using **with**
> I've made a good living fixing code written by people who say things like this.
**Marco Eberhardt**:
> if you heavy use WITH then you will get unexpected errors in your code its just a matter if time
**Rick Wheeler**:
> you can use inline “var” declaration to solve this issue. Get rid of nasty with statements.
**Sergio González**:
> No need to read any blog... I stopped using 'with' after struggling with a bug for days, only to find out it was caused by that kind of evil thing! I don't remember now what the bug was, but I do remember swearing by my life never to use 'with' again!
95 changes: 95 additions & 0 deletions _posts/2024-12-25-Merry-Christmas-Delphi-Developers-2024.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
---
layout: post
title: "Merry Christmas Delphi Developers 2024"
date: 2024-12-25 12:00:00 +0000
last_modified_at: 2024-12-25 12:00:00 +0000
categories: [Delphi Programming, Community]
tags: [Delphi]
permalink: post/Merry-Christmas-Delphi-Developers-2024
published: true
image: /assets/blog/Delphi-Programming/Christmas_spartan_thumbnail_250x250.png
description: 'The blog post provide links to a few profilers available to Delphi and demonstrates a new simple to use open source profiling class.'
---
🎄🎅 Merry Christmas, Delphi Warriors! 🎅🎄

This holiday season, let the Spartan spirit of resilience and precision guide your coding battles! Whether you are conquering TObject hierarchies or defending against runtime exceptions, may your code be as robust as a Spartan shield!


![Delphi Christmas 2024](/assets/blog/Delphi-Programming/Delphi-Christmas-Wallpaper-2024.png)


Wishing you a Merry Christmas and a prosperous New Year filled with inspiration, growth, and, of course, bug-free code!


# 🎵 "O Delphi Night" 🎵
(To the tune of "O Holy Night")

## Verse 1

O Delphi night, the code is finely running,

It’s bug-free now, the build has been deployed!

Lines of Pascal, with clarity and meaning,

Our apps take flight, and users are overjoyed.

The IDE, with lights of festive glory,

Hints and insights guide our merry way!


## Chorus
Code in delight! O joyful, festive season!

Write, debug, and dream of what will be.

O Delphi night, the season of creation!

Let’s build, let’s build, with passion and with glee!


## Verse 2
A blinking star atop our Christmas project,

Points to the path where creativity flows.

With each compile, the errors we correct,

And in our hearts, the holiday spirit grows.

The VCL, it shines in splendid wonder,

Forms and classes, working hand in hand!


## Chorus
Code in delight! O joyful, festive season!

Write, debug, and dream of what will be.

O Delphi night, the season of creation!

Let’s build, let’s build, with passion and with glee!


## Bridge
Let every loop run true, let every thread stay safe,

Our memories of coding fill this sacred space!

With TButton and TStringList, our tools become our art,

And in this joyous season, we program from the heart!


## Final Chorus
Code in delight! O joyful, festive season!

Write, debug, and dream of what will be.

O Delphi night, the season of creation!

Let’s build, let’s build, with passion and with glee!


Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit bea43ee

Please sign in to comment.