RSSAmplifier

Blog

Jon L. Aasenden

Embarcadero Delphi, JS, C++, embedded boards and retro gaming and technology

jonlennartaasenden.wordpress.comRSS feed ↗150 posts

Latest posts

Quartex Pascal available for download

It is with much joy that we finally release version 1.0 of Quartex Pascal! It represents three years of full time development, and over a 1,5 million lines of streamlined, hard-core coding.

Meshtastic: Why is it so popular?

For a while now I have come across reddit and X posts about this technology, and I honestly didnt understand what all the hoopla was about. People are using these tiny devices that looks a bit like a late 80s or early 90s pager, and they send text messages with them? But why? We already have SMS, what could possibly Meshtastic have to offer beyond that?

Hosting your own Ai models at home in 5 minutes

Using an Ai and building an ai model are two different things. Since you probably want to just host an ai model and play around with it first I have just the ticket for you. There are hundreds, if not thousands, of free ai models you can download and run on your own systems.

Why is ChatGPT scared of work?

As surreal as generative data models are, it's not really something that brings any benefit to my line of work. I wanted an Ai that can perform actual work, like converting a large and complex C/C++ project into Object Pascal. Or Pascal into Rust - stuff that for human beings would be time consuming and difficult.

Good bye VmWare, hello Virtualbox

What baffled me more was that, the journey from the old VMWare website to logging into Broadcom, would in fact open 7 (seven!) new browser tabs! I have never seen a website so hostile to customers.

Quartex Pascal: Dynamic JS structures

If you work closely with JavaScript, it's important to be able to approach JS in way that is both familiar to Object Pascal developers, yet compatible with the underlying reality of JavaScript. We want to do as much as possible in Object Pascal, but in order to achieve that - we first need to learn how to properly integrate with JavaScript without loss of fidelity and performance

Quartex Pascal: Status and progress

I have a couple of tickets left, but all in all the final 'big' ticket is to implement a Ragnarok (message framework) code generator for server-side code. Client side is already there and working. The other tickets are things like polishing, putting js frameworks in packages (so you can drag drop their components and use them on a form), and polishing minor mistakes and details I might have…

Curious VCL snippet brainfart

I was poking around the VCL system.math unit yesterday when I came across a curious function implementation. Not curious because of complexity, but rather baffling as to why they would implement it like this. While the performance gain in question is insignificant in the great scope of things, the backstory here is that the VCL is full of similarly written code. Code that, when you sum up the…

QuartexDeveloper.com is now active

It's taken a while but Quartex Pascal now has it's own website and forum. You can visit QuartexDeveveloper.com and check it out. The SSL certificates are being applied within 72hrs according to the host, so don't be alarmed that it shows up under HTTP rather than HTTPS right now - that is just temporary.

Playstation 5, total flop as a home media center

Sony have in their quest for sucking money out of their customers, effectively made their product irrelevant as a home media center by tightening the string too much. PlayStation 4 was a great buy for adults and teenagers, because you got a Blu-ray player, home media center and a gaming platform all rolled into one. So no. Sony has not gotten to their senses. In fact, they have lost whatever…

A refutation of Flint Dibble in defense of Graham Hancock

The only real difference between the mainstream and accepted archeological model and what Hancock is presenting, is purely in how the evidence is interpreted. Emphasis might be on different elements, but all in all this fight really is about interpretation rather than physical artifacts. This is also why archeologists find it difficult to refute him, because there really is very little to arrest…

Quartex Pascal: Public Alpha

The public alpha is, as the name implies, a pre-release version meant purely to be played around with. There are bound to be hiccups and bugs, but the point is just to get you familiar with the ecosystem (which is very different from Delphi, so don't think you can just magically compile some old Delphi application).

Auto register classes

of having to write an initialization section on unit level, you can just attach a [ClassRegister] attribute, and it's automatically registered for you when the unit is loaded into memory.

Quartex Pascal: Nearing completion

The only reasonable way forward was to implement a separate IDE, one that dealt with web technology exclusively. And what better language to write such a system in than Delphi itself? I was actually thinking that Embarcadero might want to rekindle their HTML5 Builder, and let me do my magic on it. Quartex Pascal is in many ways what HTML5 Builder should have been, and it's just getting started.

When Nicola Tesla slaps you over the head

And here I thought I was super clever, only to discover that Nicola Tesla scribbled a similar system on a napkin back in the late 1800s (figuratively speaking). Turns out that the basis of my system is more or less identical to Tesla's numbers and ultimately bound by their relationships, where you operate with a growth factor that is a multiple of 12, modulated and held in check by Fibonacci,…

HTMLComponents for Delphi, a closer look

I have to give HTMLComponents 9 out of 10 stars. It would have scored a perfect 10 with JS support. But this is the highest score I have ever given on my blog, so that's astronomical. Well done Alexander!

Quartex Pascal Build 13b ships

The IDE has a very clean internal architecture, where the actual work is isolated in a set of easy to understand classes. One of these classes is called a TIDEAstProvider class. This is a class whose job it is to parse and otherwise work with whatever content an editor has, and deliver symbolic information that can be displayed in the file-structure treeview.

Quartex Pascal, status

Quite a bit has happened since my last blog post. The IDE is coming together piece by piece, and at the moment i'm focusing on helper functionality for the AST (abstract symbol tree).

Quartex Pascal, Build 10b is out for backers

This is where the full might of the QTX Framework begins to dawn. As i wrote before we started on the Quartex Media Desktop (Which this IDE and RTL is a part of), in the future developers wont just drag drop components on a form; they will drag drop entire ecosystems ..

Quartex Pascal, convergence is near

I only have the weekends to work on Quartex Pascal, but I got a lot of work in on sunday, so i'm just going to leave some pictures here for you. Cant wait to see jaws drop when they realize what I've made.

Delphi and the absolute keyword

There is a lot of hidden gems in the Delphi environment and compiler, and while some might regard the "absolute" keyword as obsolete, I could not disagree more; in fact I find it to be one of the most useful, flexible aspects of Delphi (and object pascal in general).

Freedom of speech vs A.I, where does this end?

And this is the problem with corporate rulings based on artificial intelligence. To be honest I doubt Facebook have an actual A.I involved at all. Based on this ruling, it is painfully obvious that they operate with basic keyword filtering

Ponderings of an old coder

We need to teach our kids how to digest information. Developers are used to consuming vast amounts of information, but kids these days grow up in a torrent of data they cannot possibly digest without guidance. The subtle but important difference between knowledge and wisdom. A fact is a status report, a description; wisdom is a recognition of somethings innate nature. As a society we need both,…

Using Delphi to fight the Corona Pandemic

My focus this time is on DIPS AS, a Norwegian medical corporation. They were amoung the first companies in Norway to provide a Covid-19 module through their FastTrak application, which is completely written in Delphi.

QTX Framework for Delphi and FPC is available on BitBucket

The support for TBit in views is really neat, since you can then access any buffer as an array of bits (which bypasses the problem in C++ containers where TVector caused some headaches). Heck, the TStorage based classes alone is 3 times faster than TStream, and supports insert and remove functionality (literally scaling the file or memory with truncating if needed), so for binary formats, this…

Vector Containers For Delphi and FPC

Vector containers, unified storage model and typed views are just some of the highlights of my vector-library. I did an article on the subject at the Embarcadero community website, so head over and read up on how you can enjoy these features in your Delphi application!

Coders and health in dire times

I have experienced two life threatening situations in my life. The first was back in 2008 when I almost died of blood poisoning (overworked, immune system flat- and pneumonia was enough to get the better of me), and the second was when I slipped and fell down a flight of stairs, severely injuring my spine in 2013.

C/C++ porting, QTX and general status

C is a language that I used to play around with a lot back in the Amiga days. I think the last time I used a C compiler to write a library must have been in 1992 or something like that? I held on to my Amiga 1200 for as long as i could [ ]

Delphi Dying? Think again, Tiobe

I have to be honest. I have never taken Tiobe that serious, because they have made to many mistakes in the past to have any form of credibility when it comes to Delphi and Object Pascal as a language. And when I say mistakes, I mean monumental blunders that just annihilate all possibility that they treat languages on equal footing.

Delphi 25th Webinar signup

Delphi is turning 25 and in connection with that, Jim Mckeeth is preparing a webinar! So make sure you register for the webinar in time! You can register here

Five unique features in Delphi for Windows 10

Im following up with a second article about five features of Delphi that are intimately connected to Windows 10. I know that a lot of people are still clinging to Windows 7, but Microsoft phased that out last week, which means it's now officially a legacy OS. So if you haven't bothered updating, have a peek and think it over.

Turkish ministry of education secures free access to Delphi for an estimated one million students

The ministry of education in Turkey recently announced that they will be offering Delphi free of charge to students of computer sciences. An estimated one million students will thus have access to Delphi through this impressive initiative.

Interbase for 2020 and beyond

I just published an article about InterBase on the Embarcadero community pages! Interbase is a much loved database that has seen some radical improvements. Check out my top 5 reasons to use InterBase with your Delphi, C++Builder or Sencha applications here

In memory of Rudy Velthuis

Besides being a superb developer Rudy also had a great sense of humor, and a charm and wit that made him fun to talk with and easy learn from. He would go out of his way to help others and share his insight and wisdom whenever he could.

Nodebuilder, QTX and the release of my brand new social platform

While I dont have time to evolve this software beyond that of a simple service designer (well, I kinda did already), I have no problem seeing this system as a beginning of a wonderful, universal service authoring system. One that includes coding, libraries and the full scope of the QTX runtime-library.

NVidia Jetson Nano: Part 2

However, two days after I posted said review, NVidia issued several updates. The graphics drivers were updated, followed by a custom Chrome browser build. Naturally I was eager to see if this would affect my initial experience, and to say it did would be an understatement.

NVidia Jetson Nano

It is an excellent SoC for gaming though. It's probably the only IoT board that delivers 35-50 fps when emulating Playstation and Sega Saturn games (which are very demanding). I also got 54 fps running Quake 3 compiled to JavaScript, which is pretty cool.

Quartex “Cloud Ripper” hardware

For close to a year now I have been busy on a very exciting project, namely my own cloud system. While I have written about this project quite a bit these past months, mostly focusing on the software aspect, not much has been said about that hardware. So let s have a look at Cloud Ripper, [ ]

Hydra, what’s the big deal anyway?

As a Delphi or Freepascal developer, perhaps you have seen some of the fancy grids C# and Java coders enjoy? Developer Express have some of the coolest components available for any platform, but they sadly stopped developing new components for Delphi years ago. With Hydra you can tap into the .Net side of things and use the latest components and libraries in your Delphi applications.

ARM Linux Services with Oxygene and Elements

There is a ton of things you can tweak and change in the service-manifest file. For example, do you want Linux to restart your service if it crashes? How many times should Linux attempt to bring the service back up? Should it only bring it back up if the exit-code is zero?

.NetRocks, you made my day!

I mean, it's such obvious low-hanging fruit for a show their size to pick. You have this massive show that takes on a single, albeit ranting (and probably a bit of a lunatic) coder's satire blog. They kinda just underlined my point :D

Quartex Media Desktop, new compiler and general progress

The CloudForge IDE for developers is set for 2020. With that in place you can write applications for iOS, Android, Windows, OS X and Linux directly from Quartex Media Desktop. Nothing to install, you just need a modern browser and a QTX account.

Why move to Windows 10?

Microsoft is still offering a free upgrade plan for Windows 7 users. In other words there is no financial loss in updating your development machines, be they physical or virtual.

Using multiple languages is the same project

Most compilers can only handle a single syntax for any project, but the Elements compiler from RemObjects deals with can 5 different languages -even within the same project. That's pretty awesome and opens up for some considerable savings.

RemObjects Elements + ODroid N2 = true

ODroid is very popular at RemObjects, and when we added 64-bit ARM Linux support a couple of weeks back, it was the ODroid N2 board we used for testing. It has been a smooth ride all the way.

Check out RemObjects Remoting SDK

The challenge for Delphi is that writing large composite systems, where you have more than a single service doing work in concert, is not even factored into the RTL and project types. Delphi provides a bare-bone project type for system services, and that's it. Depending on how you look at it, it's either a blessing or a curse.

Augmented reality, I don’t think so

I must admit it's really tricky to hammer down a verdict. On one hand they are really fun, you can install NetFlix, browse the web and watch movies if you copy them over to an sd-card (the glasses come with a 16Gb sd-card). You have mouse control, BT and i have no problem seeing myself on a flight to hong-kong enjoying a movie marathon wearing these.

30% discount on all RemObjects products!

RemObjects is giving a whopping 30% discount on all products! This means you can now pick up RemObjects Remoting Framework, Data Abstract, Hydra or the Elements compiler toolchain - with a massive 30% saving! These are battle-hardened, enterprise level solutions that have been polished over years - and they are in constant development.

A Delphi propertybag

Im mostly porting code from Delphi to Oxygene these days, but here is my Delphi implementation of the propertybag object. Please note that I haven't bothered to implement the propertybag available in .Net. The Delphi version below is based on the Visual Basic 6 version, with some dependency injection thrown in for good measure.

BTree for Delphi

A few weeks back I posted an article on RemObjects blog regarding universal code, and how you with a little bit of care can write code that easily compiled with both Oxygene, Delphi and Freepascal. With emphasis on Oxygene.