Rollo62
Members-
Content Count
1812 -
Joined
-
Last visited
-
Days Won
23
Everything posted by Rollo62
-
Is asked ChatGPT: What is Internet Component Suite for Delphi?
Rollo62 replied to FPiette's topic in ICS - Internet Component Suite
I can only say that chatGPT can give really helpful answers and amazing "understanding" of facts, no matter if it really understands or not. Of course it can have its errors still, but it most of the time completely follows and understands your intentions, even if you ask not so well formed questions or try to trick it somehow by slang language. When you really ask well defined questions about very specific topics, like for example for craftsmen tasks at worksites, how to best solve their tasks in a given situation, it can give very good advices in 98% of the cases I would say. This is what I would also expect from a human assistant or teacher and to be honest not many of the shop assistants can help customers questions that adequate. I would rate chatGPT about 8 and the average, unmotivated human shop assistant 4-6, on a 0-10 scale. Please try chatGPT really out in practice, before you throw it into the "irrelevant" bin so fastly. I'm very sure that we all have to deal with this kind of AI in the near future, a few years from now. At least I have a lot of ideas howto use such AI things in the real world. -
Using ChatGPT from your Delphi program with ICS
Rollo62 replied to FPiette's topic in ICS - Internet Component Suite
Are you sure you talk to chatGPT, or is it GPT-3, its predecessor which is for quite some time out there ? https://en.delphipraxis.net/topic/8084-chatgpt-example/?tab=comments#comment-68216 Unfortunately OpenAI keeps the API a little unclear, you can check the results with the chatGPT Playground to be sure. The real link to chatGPT playground is here https://chat.openai.com/chat -
Is asked ChatGPT: What is Internet Component Suite for Delphi?
Rollo62 replied to FPiette's topic in ICS - Internet Component Suite
Thats a fair analysis and I completely agree. But if you see whats possible with those AI, like the LETA series from Dr. Alan Thompson, is really amazing. He has done a lot of work with various AI's, and knows how to optimize the parameters and prompts. And yes, its still only a text processor, like an advanced RegEx processor maybe ... 🙂 Since chatGPT is even more advanced than LETA, as it may remember older prompts, I expect even much better results. You will always have your point that its only a text processor and not a human, but the chats you can do with those machines are quite inspiring too. According to the Turing test, a computer can be said to possess artificial intelligence if it can mimic human responses under specific conditions. If you cannot really proof if its human or an AI in a normal chat, wouldn't it be fair to call the AI somewhat "intelligent" ? What would be your proposal for a proof of creative "intelligence" ? -
TDateTimeHelper from D11 that can be used in D10.4?
Rollo62 replied to David Schwartz's topic in RTL and Delphi Object Pascal
Oh yes, then better upgrade to D11, its worth it. -
TDateTimeHelper from D11 that can be used in D10.4?
Rollo62 replied to David Schwartz's topic in RTL and Delphi Object Pascal
I assume that he has the D11 code, so it should be legal to rework this unit to make his code-base backwards-compatible. If it would be true what you say, this would forbid to fix any buggy system unit for the same reason. -
TDateTimeHelper from D11 that can be used in D10.4?
Rollo62 replied to David Schwartz's topic in RTL and Delphi Object Pascal
You could try to copy the new helper from DateUtils.pas D11.2 into a separate unit, like DateUtils.Helper.pas type TDateTimeHelper = record helper for TDateTime /// <summary>Now returns the current date and time</summary> class function Now: TDateTime; static; inline; /// <summary>Now returns the current UTC date and time</summary> class function NowUTC: TDateTime; static; /// <summary>Strips the time portion from a TDateTime value</summary> function GetDate: TDate; inline; So that you can use it in D10.4.2 too. There should be only a few changes needed, if any, to make that run in D10.4.2 too. I would encapsule the content of this new helper unit with a Compiler directive, to ensure this is only used below version D11.2. -
Is asked ChatGPT: What is Internet Component Suite for Delphi?
Rollo62 replied to FPiette's topic in ICS - Internet Component Suite
That is very much true. So that is the reason I see chatGPT only as tool for generating clever answers, not as 100% precise encyclopedia. Understanding how it works, it's even more astonishing to see that this AI really evolves a human-like "consciousness", when it comes to philosophical or open questions. I have long time suspected that AI needs some critical mass before it can develop a kind of "consciousness". The current GPT-3 and ChatGPT clearly point into that direction for me and I think some AI had already passed some Turing tests. It is the "creativeness" that I find particularly interesting, not the "pedantically precision", because such a creative, inspiring tool is suitable for a whole range of tasks. I'm sure something like Dall-E will transform an entire profession of illustrators, just as DeepL has already done with the profession of translators. Of course, it's not so desirable to make all creative professions obsolete, but I don't think we'll be able to stop this development anyway. But I also believe that there may soon be robots in the household and for this the current "understanding" of facts is already more than sufficient. The only question is how to redefine these answers into actions. I have looked at a whole series of very well trained GPT-3 chats, which really follow a complete discussion with a kind of "awareness" that they themselves are AI and have limited possibilities. If it succeeds to cast the already very good answers of the AI into real understanding of facts, then the next step of the AI will be at the front door. For the reasons mentioned above I doubt that it is already so far. It is still not sure whether the AI can really understand at least something, or only generates very good text patterns randomly. Only the humans have the feeling that those answers were too good to be random. -
Is asked ChatGPT: What is Internet Component Suite for Delphi?
Rollo62 replied to FPiette's topic in ICS - Internet Component Suite
It seems to depend on what information from the internet you want to believe. https://www.swimcheck.com/en/city/1005/beaches-wilhelmshaven I'm not an expert on "Wilhelmshaven", but if I Google this I would came to similar insights. Maybe the problem is that too many false information is out there and an AI cannot easily separate truth from lie. I do not expect 100% correct data from an AI, but a good support in doing tasks. -
Thats true. As far as I could see from the chatGPT Playground, this is very well capable to remember earlier prompts in the conversation, while this GPT3 API only answers more or less to the current prompt. I think that is one of the main, important differences so far in chatGPT, among other algorithm details probably.
-
I would try with RestDebugger first, if that is successful it may generate the right code to access the API.
-
Delphi beta testing a "premium" privilege?
Rollo62 replied to Brandon Staggs's topic in Tips / Blogs / Tutorials / Videos
I think that is a very old and well known marketing principle: You can grow your business fast and easy by selling new products to existing customers, instead of trying to find new customers. This is why I can understand that well, although I find the mass of spamming quite annoying at the same time. -
Include External Text Files in Output Folder
Rollo62 replied to Jeff Steinkamp's topic in General Help
Not exactly clear what you are looking for, but you can also use Resources to include files Its possible to load them to ResourceStream like that. procedure TForm1.Button1Click(Sender: TObject); var List: TStringList; Stream: TResourceStream; begin Stream := TResourceStream.Create(HInstance, '<Resource identifier>', RT_RCDATA); try List := TStringList.Create; try List.LoadFromStream(Stream); Label1.Text := List.Text; finally List.Free; end; finally Stream.Free; end; end; But these were fixed files, not user-loadable via dialog in the app. -
Can anyone check their Hash against mine, please? certUtil -hashfile designide280.bpl SHA256 (Delphi 11)
Rollo62 replied to Al T's topic in Delphi IDE and APIs
d:\Prg\Embarcadero\Studio\22.0\bin>certUtil -hashfile designide280.bpl SHA256 SHA256-Hash von designide280.bpl: 0fc933dde785368de661ec031580b2ae10d316532fd2c8c1ec2b831dc2605dc8 CertUtil: -hashfile-Befehl wurde erfolgreich ausgeführt. -
What the Delphi 11 version number after november patch ?
Rollo62 replied to William23668's topic in Delphi IDE and APIs
Well, indeed. Changing the personality changes this Version, never realized that this makes a difference. Which leads me to the question if I use my RadStudio maybe in the wrong way ? Does it make a different using RadStudio with its Delphi personality, versus opening Delphi personality directly ? It seems somewhat different, so is this maybe the cause of somewhat alien errors we see ?! What is the recommended way to open and use RadStudio - Delphi then, for cross-platform, it seems I will make some experiments how it behaves different. -
What the Delphi 11 version number after november patch ?
Rollo62 replied to William23668's topic in Delphi IDE and APIs
Well it doesn't work for me, although I have tried re-install automatically, tried re-installed manually, re-booted PC. Even when I check the files in the patch they were 1:1 identical, compared to the ones under /bin / bin64, etc. This number comes maybe from somewhere else, or maybe differs between Delphi, RadStudio, Enterprise or Architect ? -
What the Delphi 11 version number after november patch ?
Rollo62 replied to William23668's topic in Delphi IDE and APIs
Well, I've got the same "Embarcadero® RAD Studio 11 Version 28.0.46141.0937 " It seems it was well installed before, now reinstalled the Patch, but still 28.0.46141.0937 after it restarted. What exactly did you re-install, not only the Patch, or the complete IDE ? Edit: I cleaned everything, re-booted PC, re-installed Patch manually. Again it looks very promising, the logs very fine, but its still 28.0.46141.0937. I dont' re-install my IDE right now, it works OK so far, but would be great to know what exactly goes wrong. -
Thanks for pointing me to that, I used the old VCL version some years ago. Didn't realize that this is now FMX ready too, at least a few platforms, that is great news. I could recommend the old VCL version, not sure yet about FMX, but I will look into that.
-
Time-Limited offer from Almediadev and DelphiStyles!
Rollo62 replied to Almediadev Support's topic in Delphi Third-Party
Tnanks for the interesting offer. Regarding the DelphiStyles, I always wonder if their underlying components were constructed based on the original FMX styles structure, or if they might use a completely different underlying structure. Technically I think it should be possible to rework the internal structure completey, since this is build on shape primitives mainly, should be easy to replace. I'm asking because the original FMX Styles components have some kind of lack in customizations, like background color, foreground color, accent colors, fonts, etc. Moreover the original FMX Styles internal representations differ a lot over the different platforms, so that on some OS the handling and behaviour will differ greatly. I think to have a 1:1 same internal structure would be best for all platforms, to have a unified interface, but I haven't looked too deep into the real reasons why its so different in the first place. If DelphiStyles may use a different internal structure and maybe offers easy accessible color objects, to customize the whole color scheme in one central place, that would make a lot of sense to me. A life-time license is a nice thing, how is your opinion about the "future-readiness" of the Styles, have you seen big, internal structural or conceptual changes over the past years since XE2-3 ? Currently I make no or very little use of FMX Styles, although I think the "Style" concept is a very good thing, only it makes way too much extra work, than it should, if you need small customizations. -
Howto handle Android BluetoothLE permissions that are compatible to API29,30,31 ?
Rollo62 posted a topic in Cross-platform
Hi there, I was experimenting with the Android.template.xml, to use different API-related selections, to searate old and new Bluetooth settings. Some recommendations in the web point to this nice and clean solution, so separate APIs in the manifest: <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="..."> <uses-permission android:name="android.permission.BLUETOOTH" android:maxSdkVersion="30" /> <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" android:maxSdkVersion="30" /> <uses-permission android:name="android.permission.BLUETOOTH_SCAN" android:usesPermissionFlags="neverForLocation" /> <uses-permission android:name="android.permission.BLUETOOTH_CONNECT" /> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" android:maxSdkVersion="30" /> <application ... /> </manifest> Using the android:maxSdkVersion and the android:usesPermissionFlags="neverForLocation" identifier would allow an easy control over different versions. Unfortunately this didn't work in my current setup, maybe I have to rry again with a clean project, but I see a failure "attribute neverForLocation is not available". This seems that targeting to API31 is needed, and I'm still under API30, in its D11 default setup. But I'm not sure why this message pops up, and is not simply ignored, if there is an unknown attribute. Probably this needs linked somehow to the API31, and API30 throws exception. To be rescued, maybe the android:maxSdkVersion might work under different versions in different configurations, to make Delphi compatible with several API's at the same time in one manifest ? To be clear, I'm not talking about the targetSdkVersion here, but if someone could make use of the android:maxSdkVersion attribute already. I'm curious if somebody has get this working as expected under Delphi. Beside that, what would be the best way to handle BluetoothLE under API30, to be compatible with old and new devices ? -
Howto handle Android BluetoothLE permissions that are compatible to API29,30,31 ?
Rollo62 replied to Rollo62's topic in Cross-platform
Yes iOS was more stable and Android needed to catch up, but also in older versions it was stable since quite some time. Remember Windows, also there BT was ( and is ) somewhat alien for a long time. The biggest problem is that all OS permanently make changes in the permission system around the hardware, mainly because of GDPR. This enforces still some sudden, hysteric implementations here and there, although I assumed this should be mature meanwile in the whole society for some time. It looks to me that still there are no "best practices" how to handle GDPR in general, no matter for a sales slip in the bakery, for Cookies, for login to EU database, for medical devices, banking or software apps. I'm looking forward for more creepy implementations to come in the future, its not all Android's or iOS's faults. -
Howto handle Android BluetoothLE permissions that are compatible to API29,30,31 ?
Rollo62 replied to Rollo62's topic in Cross-platform
Yes, that was the case for older Android versions. They considered that BLE can be tracked or used for tracking ( think of Beacons ) and therefor need a location permission. Unfortunately they never invented a nearby location permission, but re-used the GPS one for this. -
Howto handle Android BluetoothLE permissions that are compatible to API29,30,31 ?
Rollo62 replied to Rollo62's topic in Cross-platform
@pcplayer99 I'm afraid that alone won't do it for all versions of Android. You will need more runtime permissions or other combinations of them, depending on the current OS version. https://developer.android.com/guide/topics/connectivity/bluetooth/permissions#java Thats why I still look after the "perfect" permission combination ( manifest and runtime ), which make Android happy for most older and newer Android versions. -
Howto handle Android BluetoothLE permissions that are compatible to API29,30,31 ?
Rollo62 replied to Rollo62's topic in Cross-platform
@jcwhit Yes its working, but I always have a bad feeling that it's not perfect for all versions. I cannot really say, but I think it sometimes behaves odd on special devices. To use a customized template is the way to go, sometimes I think about using a 100% custom template instead of the generated one, to have a much better control about the features. Unfortunately the IDE has too many limits and causes hard-to-find errros, which could be easily fixes in a simple XML editor. The urge to add too many automation and "smartness" in the IDE is not a good thing IMHO, I would prefer the pure textual options management over the checkbox-style. I think Embarcadero should simply offer two ways for the options setting like this, maybe the UI way as-is, plus a textual way, maybe through one JSON or XML file, alternatively. This would be better integrate into CI and also easier to manage for humans and allow easier code reuse. Maybe one day Embarcadero will consider my wish list, either allow both side-by-side or control one of both ways per selection in the tools options. -
There was an old project MonkeyMixer, that was intended to do so, if that is what you need. But it is not recommended, since you will carry VCL and FMC resources in your project and make it unnecessary heavy.
-
You could simply use Google, prefixing your search like this "delphi docwiki fmx scrollbox". This gives mostly very accurate results to docwiki in the top 10.