-
Content Count
593 -
Joined
-
Last visited
-
Days Won
11
Everything posted by corneliusdavid
-
There is 0.01% chance of that happening. There are still many parts of today's IDE similar to Delphi 1 from 30 years ago and even Borland Pascal before that. Some of the same hot keys and many of the sub-windows in the IDE. There are often additions and incremental changes and subtle (and not so subtle) ways of interacting but there's just too much that would need to be re-tested if they made a huge interface change. The Welcome Page has been where the bulk of the "pull the rug out from under you" changes have taken place and that's not a critical part of the daily programming task.
-
There's a key phrase in the explanatory text for this problem: "The asteroids are much smaller than they appear on the map, and every asteroid is exactly in the center of its marked position." So if we assume a scale like a baseball field is the square area and a golf ball in the very middle is the asteroid, then the only time an asteroid would block the view from another asteroid is if there is a DIRECT line through it; in other words, only vertical, horizontal or diagonal lines crossing another asteroid. Therefore, any asteroid whose view angle to another asteroid does not fit that is assumed to be visible. And therefore, yes, I believe this is correct.
-
Even if some tricky function were called to return the number of characters in a string, at some lowest point, there would still need to be an iterator to check each character. The only thing I'd say about your code is you have an unnecessary variable (ch) and character assignment (ch := s[c]). I suppose one "trick" to make your code shorter would be to replace all periods with blanks leaving a line with just hashtags; then you could simply get the Length of the line to get the count of asteroids in that line, something like this (not tested): s := StringReplace(m1.Lines.Strings[r], '.', '', [rfReplaceAll]); Inc(ac, s.Length);
-
LOL! No worries. Now it makes sense. I found Day 10 of 2024 to be fairly simple. It's one of the few I actually completed both parts 1 and 2. I haven't had time to finish 2024 nor look at any prior years.
-
Day 10 (of AoC 2024) is about trailheads, not asteroids. Are you looking at a different day or year?
-
New Book Delphi Quality-Driven Development
corneliusdavid replied to Dalija Prasnikar's topic in Tips / Blogs / Tutorials / Videos
comment removed. -
New Book Delphi Quality-Driven Development
corneliusdavid replied to Dalija Prasnikar's topic in Tips / Blogs / Tutorials / Videos
Got it! Can't wait to dive into it and trust it'll be as good as your other books. Some of the chapter titles look like they'll provide good arguments to support the best practices I'm trying to promote to my team. Thanks, Dalija! -
LOL! That's a great new use for AI coding--use the generated code as a challenge for others to figure out what's wrong!
-
I used ChatGPT a year ago. Then I heard about Claude and started using that with much better success so signed up for a web account. Then Delphi 12.2 added AI, so I added that but mostly for testing and demo purposes. I haven't used it very much yet but it does work and is kinda slick to highlight some code and have it explain it to you. I plan to use the integrated Claude with a few projects I inherited in the near future. So far, the web version is easier to use, partly because the interface in Delphi is brand new and doesn't dock well or remember it's position. You can drag-and-drop units to the web version and copy generated code so it's not difficult to use. I'm sure improvements are coming for AI integration in future versions of Delphi so my opinions may change.
-
DevEx VCL Components & VCL Styles??
corneliusdavid replied to Ian Branch's topic in Delphi Third-Party
I'll second both previous comments. I'm helping my team upgrade a suite of old programs that used a mix of grids and controls; the new version is DevExpress Quantum grids to the mix. We wanted to support a "dark" mode and it took a lot of research to get everything to look decent together--or at least close. We had to pick both a VCL style and a DevEx skin that (mostly) work together. They're saved and applied in completely different ways. -
properties Is it possible to copy all properties from one TMemo to a dynamically created TMemo?
corneliusdavid replied to JohnLM's topic in VCL
RTTI- 15 replies
-
- delphi xe7
- copy
-
(and 1 more)
Tagged with:
-
I taught myself a new language a couple of years ago, so I think I understand where you're coming from. When I learn a new language, I want to focus only on the language and what it can do, control loops, data structures, functions, parameters, etc. Having to learn event-driving programming and why you should use a TActionList hooked to a button instead of a button click, or which comes first, FormShow or FormActivate, ... all that stuff will become important down the road but how do you just declare a variable and assign a value? And what data types are there? Getting stuck with a tutorial that jumps immediately into GUI programming can be frustrating. I don't have a good book selection for you but I recently wrote a bunch of console programs to solve programming puzzles for Advent of Code. You could look through those as examples if you want. They use a variety of constructs; I learn best by example so these may (or may not) be useful.
-
When was that? I have a book written by Bill Gates in 1995 called "The Road Ahead" where he talks a lot about the Internet being the next revolution in communication and technology. He clearly saw it's benefit 30 years ago
-
What new features would you like to see in Delphi 13?
corneliusdavid replied to PeterPanettone's topic in Delphi IDE and APIs
Delphi 12.3 has not yet been released. The AI integration in 12.2 was the first version and will certainly be improved as this new frontier is explored further and they receive feedback. I build plug-ins and integrations for an old 32-bit retail POS system. There's still a LOT of 32-bit apps out there--and they work just fine. Delphi turns 30 next month. VCL is (mostly) a wrap-around for Windows API functions. Someone with more in-depth knowledge than I may chime in but my understanding is that there are so many apps out there already that rely on the VCL the way it is that changing anything would break a lot of stuff. Instead, people can create new apps using FireMonkey or use any of the several third-party GUI component sets that take advantage of new capabilities. -
I haven't had time to get past #11, which I rewrote using a recursive function for part 2 but then found out that was foolish--I killed it after letting it run for 24 hours! My favorite (so far) was #3; if you know regular expressions, it was snap. I hope to have some time over the holidays to tackle a few more.
-
Yeah, that helped me not feel so bad! I'm not in this for a gold medal, I'm happy if I can figure it out on my own given the time constraints of job, family, etc.
-
Delphi 12.2 Toolbars strange behavior
corneliusdavid replied to Fudley's topic in Delphi IDE and APIs
I hardly ever use the toolbars in Delphi. The only one I usually have up there is the Debug one--and even then, I use the hotkeys. One of the first things I do after installing Delphi, is removing all (or most) of the toolbars as they just take up space (been doing that over a decade). I can't remember what all those icons mean anyway and most all the functions I need are either a right+click or hot-key away. -
That's what I think--I just don't see how that can be. After initially looking at the leaderboards and trying a couple of puzzles with some faint hopes of my abilities, I quickly realized I would never make it anywhere close to a leaderboard and stopped looking at them! LOL! Now I'm just happy if I can SOLVE a puzzle; and especially happy if I also solve part 2! I have come to believe that Delphi is not the best language for solving puzzles like this--at least in a contest of speed. The Pascal language is very type-strict and I find myself many times having to convert numbers to string or vice-versa. I get boxed in thinking only in terms of strings (then having to extract or convert a number) or thinking only in terms of number (then having to concatenate a string or something). Several additions to the RTL over the years have helped but I look at some of these 1- or 2-line Python or Go solutions and just shake my head, partially to try and understand them but also because you just can't always do stuff that succinctly in Delphi. Either that or I'm just so used to laying out variables and record structures and doing things in a "proper" way for code readability and maintainability that it's hard for me to get in the mind-set of being super terse and brief to solve a very specific problem where there's no need to do any checking of the input data.
-
Interesting. Thanks for letting us all know what happened.
-
TFDConnection cannot find FDConnectionDefs.ini
corneliusdavid replied to Carl Efird's topic in General Help
I was going to say, look in your "public documents" folder under Embarcadero\Studio\FireDAC (e.g. C:\Users\Public\Documents\Embarcadero\Studio\FireDAC) to see if there are backups of the connection definitions. But then I re-read your question and you said the .ini file is unchanged. I guess I'd look in the Windows registry under HKEY_CURRENT_USER\Software\Embarcadero\FireDAC and make sure those paths and filenames look proper. -
@JohnLM Cool website--interesting graphs!
-
Many people post their code solutions on Github to share and discuss with others; some include everything, even the input files and the instructions for the puzzle. This was a reminder on the Reddit site (where a lot of solutions are posted) not to include the instructions and input data. There are several different sets of input files and they generate different numbers; you're not supposed to share the input file generated for your unique login to AoC. When you submit a correct answer to the first puzzle for a particular day, you get revealed a second puzzle for that day (there are only two per day). You don't see it until you correctly answer the first part--and the second one is always some twist to the first puzzle and uses the same input file. If you don't see any of them, then you haven't submitted any correct answers. You don't have to be at the website at a particular time but they aren't revealed ahead of the day for the puzzle.
-
I've been going slow, too (busy). I was stuck on Day 04 for quite awhile, thought I had it late last night and submitted an answer--but it was too low. I finally decided to look at some of the other answers on Reddit and found I had been making it way too hard on myself--nearly every other answer (no matter the language) approached it in a similar way and much simpler than my attempt. I haven't had time yet to redo my program (nor the heart to throw away all that work--even though it's wrong). One thing I read on Reddit was a big note that reminded people that if you post your answer anywhere online, DO NOT post your input file! There are different input files for different users on Advent of Code and your input should not be shared with anyone else--solutions should work regardless of the input file and will have different answers. Also, don't post the puzzle text input (I need to go remove the texts from my repositories).
-
Oh, yeah, you mentioned this in the first post and I just skipped right over that--you're right, it'll be something specific about these two datasource components. So, then what is different about these datasources from all the rest? Are they hooked to a different type of dataset or have any other properties set uniquely? Does changing the creation order in the DFM have any effect?
-
delphi is any Better Offline Help File Format Alternative to CHM for Delphi application ?
corneliusdavid replied to himadree's topic in General Help
Another one is HelpScribble, a tool I've used for over a decade.