Hi everyone,
Recently I’ve been getting questions regarding progress on certain projects, so I thought I’d make things clear for everyone and declare my intended development focus.
Lua4Delphi
Lua4Delphi remains at the top of the list as it is already available, in use by myself and others, and is closest to its final phase of development (the open source portion, I mean). The very next update is huge, and introduces the most impressive features such as the Wrapper Type support (which works in two directions: wrapping Delphi types for use from Lua, and wrapping Lua-defined “virtual classes” for easy use from Delphi).
A major refactoring took place over the last 48 hours, which bases every class on a corresponding set of Interfaces. This has been done to address some memory management considerations, as well as to make expansion and derivation substancially easier (without having to break the interface).
This update is going to be released next week, and I will be running multiple webinar sessions at that time to demonstrate all the new features (and changes). This update was originally scheduled for Sunday Feb 19th, but was postponed due to my having flu (pretty hard to spend a few hours, several times in a day, talking to an online audience when you literally cannot speak). The extra time afforded by the delay has actually been very good, since I’ve found and resolved bugs nobody has actually noticed thus far, but would be very problematic for those using Lua’s “Coroutines”!
The Professional suite is of particularly high priority as the final features are released!
GeNUI
Those not subscribed to the Blaise Pascal Magazine (thus unable to have read my article in this month’s issue) will be wondering what the GeNUI project is, but don’t worry it’s actually quite strait-forward.
You will know this project by its original (old) name, TKinect. With Microsoft’s recent utter betrayal of those of us whom created the PC demand for official Kinect support, myself and a few of the others whom have contributed to the development of the TKinect project began to look at other similar motion-based input devices available on the market. We quickly discovered the ASUS Xtion PRO Live, a controller using the pure PrimeSense technology and SDK, proving to be vastly superior to the Kinect in every single way (including price). As such, the focus of what was then known as the TKinect project shifted to support all motion-based input devices in this category. With that in mind, the name “TKinect” no longer makes sense, and so a new name was concieved.
GeNUI stands for “General Natural User Interface”
This project also expands its reach to Lazarus and FreePascal as well as Delphi, and targets Win32, Win64, Linux32, Linux64, and Mac OS X (awaiting support for the PrimeSense SDK on OS X).
GeNUI isn’t exactly going to happen over night! Unilaterally supporting different kinds of hardware with the same top-level components/controls is architecturally complex (though not impossible as I have done this before). I dare not speculate at this point when we can expect a production-ready release of the GeNUI suite… but the idea is to get this project moving forward very quickly.
If you own a Kinect for Windows controller (I don’t, and I refuse to pay for one given that it’s identical in every way to the Xbox controller, and twice the price… for absolutely no reason), your assistance in testing would be very helpful. It appears as though Microsoft have screwed us all by revoking support the original Xbox controller on the final release version of the SDK (certainly I have been unable to get it to work).
TTwitter
I’m going to stop using the name TTwitter, and instead start using the name of the Social Networking component suite Social Delphi, which incorporates more than just Twitter integration for Delphi and FreePascal/Lazarus…. including other Social Networks (such as LinkedIn and Google+), but also other web-based APIs of worth.
Having spent incalculable amounts of time trying to patch up the existing version to address certain known bugs with the OAuth library, only to continue having bugs reported… I’ve scrapped the entire existing codebase and started again! Everything, right down to the architecture is being rebuilt, including my own OAuth and OAuth 2.0 libraries (to replace the third-party one I’ve been having problems with).
The new design provides a series of pre-compiled DLLs you can use to avoid all issues between Delphi and Indy versions. This also means that each portion of the suite can be used from other programming languages provided a viable “Header” to import the methods from the various DLLs.
The DLLs provide support for ANSI and Unicode in the same way as the WinAPI (MethodNameA for ANSI Strings, MethodNameW for WideString), and the individual Delphi/Lazarus components (such as TTwitter) simply provide a Class Layer on top of the flat imported API.
This project is being consistently and aggressively developed… with a release very soon (sooner than you may think)!
Moving forward…
These projects (along with the LaKraven Studios Standard Library on which they’re built) constitute the last of my open source developments. Other small open source projects may be released over time, but nothing on the scale of these.
The following projects are on indefinite hold for the forseable future (due to time and financial constraints):
- ADL SDK for Delphi – Hit a major road-block with this long ago due to the complete lack of header units for any language from which to translate into Pascal. This project is scrapped!
- AGE (Another Game Engine) – As fun as it is to develop game engines, this project is far too time-consuming (particularly with my original co-developer having to pull out due to his new job in South Africa). This project isn’t scrapped, but is on indeifinite hold.
- Emotiv EPOC SDK for Delphi – Rolled in to the GeNUI project!
- LakRemotes – Very small project, with minimal growth expected. Given how easy it is to map remote controls, this project is not a problem at all.
- Link-Grammar Parser for Delphi – Minimal support and updates required, this project will be maintained passsively, and updated by request to support any changes in newer versions of the LGP DLL.
- RADPlates – Rolled into the RAD Power Pack project, which is not open source, and not entirely free (the base is free, as is the RADPlates module).
- TDockPanel – It works as intended, so no updates required. It’s basically just a composite component to make it quicker and easier to set up edge-aligned docking… consider it complete.
- TKinect – Rolled into the GeNUI project!
- TRttiIterator – Indefinite hold on future updates, but what’s already available works very well!
- TTwitter – Rolled into Social Delphi.
My LuaRAD project has now become a commercial project! Given the scope and scale of it, it’s the only way I’m going to raise enough investment to hire the necessary development and support staff.
All project pages will be updated this Sunday. Consider this a major downsizing of my active developments, in order to focus more heavily on the important ones.
It’s also important to remember that I make my money by doing contract development work. Clients take priority over personal projects, always!
Blog Housekeeping
Starting today, I’m going to start removing old blog articles, especially those serving as information leading towards a release. I’ve noticed that many people have been commenting on very old articles asking for download details which were provided in a later post. I’m tired of having to constantly point people in the direction of the actual release posts, so it’s just easier to remove the irrelevant.
February 24, 2012 at 10:31 am
I’ve jumped to luarad.org and one of your post on LuaRAD and learnt about two parts of it: LuaRAD Runtime Engine and LuaRAD Studio. But that was in May 2010, Has anything changed from http://www.luarad.org/faq/? What is the role of Lua4Delphi and its connection with LuaRAD?
Some graphic representation of architecture including OS and Lua layer (like this http://i.zdnet.com/blogs/archslide.png) would be helpful.
February 24, 2012 at 2:53 pm
LuaRAD and Lua4Delphi are entirely separate projects.
Lua4Delphi brings Lua integration support to Delphi applications.
LuaRAD enables everyone to develop complete applications using only the Lua language.
February 24, 2012 at 10:50 am
Great works!
February 24, 2012 at 1:56 pm
Thanks
March 4, 2012 at 7:04 am
GeNUI needs it’s own logo of some kind. I have nothing to use when I make my news announcements about it.
I think it’s a great project and I’d love to see a game project made with it.
March 12, 2012 at 10:39 am
Hi,
Where is the future of RADStore ? It is a very good idea and a new method for programing (respect of separation of concerns,..). And a plug-in like this is missing. e.g. if you want use ICS.
Cheers and thanks for your work,
Eddy
March 12, 2012 at 11:35 am
RADStore is very-much in development, but beyond that I’m not discussing it publicly until it’s ready for release.