Sonntag, 30. September 2007

some hidden (?) Rave-features....

in the other post I said, that I'll publish a "Rave-Book" in the next few weeks on lulu.com....
I finish at the moment the german version (I think more then 250 pages!) and get on the EKON11 some feedbacks and some interesting questions about Rave.

Here is one, that every Rave-developer should know:

Rave-Icons

Have you ever noticed the differences on the icons in the RAVE-IDE ?

dark background -> this is a visual component
green background -> in-visual component, will not print
red point -> dataview-connection

of course, there are some inconsequent things, e.g. the bmp-component is only available without the red-dot, but works for both things....

all the green-background-components will triggered on the order in the project-tree, very important, especially when you work with report calculation....

I'll insert here in the next weeks some other features / informations about Rave....

The next feature is the intuitive use of DataFields.


stay tuned...

Freitag, 28. September 2007

EKON / CodeRage II face-to-face or virtuell...

Today I noticed from Anders Ohlssen in the borland-newsgroups that everyone can submit abstracts for the next CodeRage from CodeGear.
There are no new informations about a BorCon or with new word "CodeGearConf"... I hope CodeGear will plan a conference like in the past with BorCon..... but I don't know and haven't find any public information about a timefrime or location for an US-BorCon.

And Marco Cantu have in his "News #3 - September 21, 2007" the same informationstatus:
* No CodeGear US conference planned so far. I'm toying with the idea
of setting up a small Delphi event myself. Maybe I'll give it a go in Europe first, though.

There are only informations about a brasilian BorCon in October this year.

As posted in my blog from yesterday, I spoke on the EKON11 this year again and my feeling about THE face-to-face-conference in Europe for CodeGear-Tools is only two days old .....

What is the better way to transfer the know-how or new features of the new version of Delphi from speaker to attendees .....

I have looked into some sessions from the CodeRage in spring this year and visited on the EKON some sessions.....

I think you can't say "face-to-face" or "virtuell" is better then the other....
We're all int the IT and know the decision tables.... well, I will start with some advantage and disadvantage of both possibilities of making a conference. Feel free and add your ideas here.

CodeRage-Way:

+ every developer of the world can visit this conference
+ every "attendee" can better choose the tracks which are interesting (after download of the replays)
+ speakers from all over the world can make sessions, thanks to the internet and the connectivity over them!
+ speaker who don't love the publicity, meaning talking about stuff in a room with xxx attendes, will prefer this way and submit sessions and transfer their know-how!
+ cheaper for the organisation / sales departmnet of the company
+ cheaper for the attendes
+ indepent from the count of attendees
+ you can organize the time for the sessions better, just-in-time-presence is possible


--- you haven't social contact to other developers
-- you don't expand your "developers"-network and offers sometimes an ideal plattform to expand your business with other (programming, training, consulting) .
-- loosing of the feeling and wishes in the (delphi-)community for the developers in Scotts Valley (how will they get the wishes from us, the customers ??)
- there are different timezones in the world, somewhere in the world you must visit the session at 03:00 am and work on the next day @work
- you don't see the speaker / trainer and loose some non-verbal informations...
- IMO there are more ppt/pps-related sessions and not "live coding"


BorCon/EKON- Way

++ sessions are more for the people in the room because everyone can ask everytime and "interrupt" the session and the speaker can explain the way to solve; especially in the advanced sessions interesting...
++ in-deepth-sessions or advanced session with experts on both sides are possible, e.g.
+ workshops and codecamps available, I haven't any idea how this could be realize in the virtuell way ?!
+ discussion on the end of every session and after the session in the lobby
+++ talks, discussion in the lobby, at restaurant with speakers, attendees;
+++ talk with employees of CodeGear in the lobby (face-to-face talk with DavidI and NickHogdes) and they get a good feedback and wishes of the customers.... It's great that on the EKON or BorCon (I remember interesting talks, e.g. with BlakeS about C++, with Charlie Caro about InterBase, Steve Shauhgnessy about databases in San Jose on BorCon03, DavidI in US or Europe, NickHodges, and a lot of other CodeGear-guys on conferences, book-writers (e.g. Marco Cantu, Dr.Bob...) and guys from 3rd-party-companies, like DevExpress, Gnostice, Nevrona, AToZed, )
+ see other areas and countries, like California

- you must spend the complete conference time and have only 4-6 interesting sessions for your work (but if you use the time you can look into other "uninteresting sessions" and, heh, I haven't know the things I can solve this or this and I'll use it in my developers-work in the future ).
- expensive for the attendes, costs of hotel, flight,
- not easy to calculate the costs on the side of the organisation team, will be there 50, 500 or 5.000 attendes and 5,50,100 speakers on the conference.

Attention: this list isn't complete and in the correct (what is here correct?) order......just writing in on step!

Overall I'll prefer the EKON-way and see all the other developers and talk with them (not only about programming, yeah there are other things in the world to talk about, @Matthias I haven't forgot the D1 thing and the pictures!!) . The CodeRage-way is in my opinion a good addition to a real conference and great for developers to get knowledge about basics of new techniques and see trends and hypes in the programming world, but not an alternative to the face-to-face-conference.


What do you think about this two ways ??????


-take care

:-) thomas

Donnerstag, 27. September 2007

EKON11 / EuroDevCon

I'm back from my 10th EKON (I missed only the EKON 2001) and it was a great conference for me. The number of attendes was smaller then the last conferences. Talking with a lot of friends and attendes is everytime interest. I made my two sessions and both are with 40-50 attendes.
Nick Hodges from CodeGear have made a great job on the keynote and have made good explanations about the public roadmap and the news in the next versions, but all without any promises, of course.
He talked about Delphi, no surprise and about BlackfishSQL, the new database from CodeGear, ready for both frameworks: .net and .java.

In this area there was one very interesting message: CodeGear haven't forget the set-based databases, meaning the good old and still alive BDE is alive. Okay, if I have understand Nick correct, there isn't a BDE V 6.0 in the lab, but update based on BlackFish SQL: The result could be some compatible TTable/TQuery-component which allow the the table" browsing like a long time ago with Paradox and dBase.
I showed the dbx4-framework and hope to transfer the bascis of the new architecture of dbx4 from the database-team in Scotts Valley with possibilites like Delegate dbxTrace and dbxPooling;
I visited Olaf Moniens session about IntraWeb ehm "VCL for the web". IW is an interesting Tool, and if I have understood Olaf correct, especially for creating web-applications and not web-sites like content-mangement-system.
I think I'll look with my RAD Studio in the next few month more into this tool and especially into reporting with IW.
On the 2nd day I made my "Reporting with Delphi2007" session and showed the Rave 7.5.2 BE version in the RAD Studio 2007. There was a lot of QR-users and I think some of them think now about a move to Rave because it's with more features and with complete support of vcl and vcl.net.
-> with the word vcl.net I remember my "private Rave session" with Holger Flick in the afternoon. Holger have prepared a session about ECO and Blackfish and we optimized the report and included the covers on the report, changed the MemoryMode of the RvSystem because the report consume a lot of memory to create the NDR-file and using the power of GlobalPages.
Perhaps Holger is a new fan of Rave Reporting ?
After some interesting talks with attendes about Rave and documenation and tips&tricks like a cookbook I announce here my plan:
I started a long time ago with writing of a Rave-Book. Started with Rave 4 and over Rave 5 (with a chapter of Rave for Kylix, installed and used on a linux-system on my old workstation "HP Kayak XW Pro" with a Pentium Pro 200 )) to the latest release Rave 7. Beside Rave there all the other 3rd-party-stuff, like Gnostice, esbconsult and other described. Rave Server 5 and 7 is included and the mystery of Rave Scripting (not yet finished (80% complete in this area). And a chapter about IntraWeb and Rave will go into the project, too. I'll go over the lulu.com-Way and hope some Rave-developers will get knowledge of my Rave-experience of the last 9 years.
There is only one small print info: the 1st edtion is available in German-language only.

Neal and Ray made a great session about Polyglot programming and effective user design on the 2nd day of the conference. The session was very, very interesting; funny and attractive talking of both speakers and I took some great ideas home.

Thanks to all where I met and talked about Rave, Delphi and a lot of other stuff and Masoud an this team for the good organisation of the conference.
See you all on the next EKON - 12 in Frankfurt again!

Sonntag, 2. September 2007

The new Delphi is around the corner…

Thanks to Nick Hodges that he released me from an NDA to blog about the upcoming new Delphi version – codename “Highlander”.

There are some interesting things in and some not in the package of the RAD Studio 2007 (instead of BDS2007).


The new Delphi version supports .net 2.0 and 3.0 because this isn’t a new version of the .net-framework, the core is 2.0 but some assemblies are updated or added to the framework.

But Codegear have minimized the C#-part of the developer studio. I think this decision is a good decision because the C#-part is always one step behind the C#-part of the competitor (I forgot the name, sorry). But it isn’t dropped completely. You can use C# assemblies like in the older BDS in your Delphi-project and this is the important thing.
If you’ll write a big application in C# then you must move to another IDE with less power (IDE-related) compared with the Developer Studio (IMO…). But don’t forget the Microsoft have WinForm deprecated….


The IDE is in my opinion very fast, and stable. Delphi 8 was version 0.9 of an IDE, Delphi 2005 the Version 1.0 and Delphi 2006 the Version 1.1 and the new version is like 1.5 (if I’ve written 2.0 then mean this a zero again, and this could make a wrong impression about the RAD Studio). On all of my working with this version I haven’t big problems or crashes of the IDE.

But every developer should have enough memory and a fast harddrive in the year 2007.... I recommend 2 GB and fast harddrives (I have 4 GB RAM and an U-320SCSI-subsystem on my Intellistation with two Xeon and I haven’t any speedproblems in the VMWare-area).


BlackfishSQL-database

Really new is a database called “BlackfishSQL” from Codegear. A long time ago Borland have written a database in and for Java, called JDataStore. On the BorCon 2004 have Borland showed a version for the .net-framework, called NDataStore but they haven’t finish this work. However, three years later the database is ready. It’s written in C# and use the same datafile like JDataStore. Now you have the chance to support with one database the .net-world and the java-world, meaning your database works on both areas. And these databases have a very small footprint, the administration is less and the database works very stable. BlackfishSQL supports transaction, the SQL-92 and Unicode storage of character data. You can start the server in application or service-mode, like InterBase.
Codegear have here a lot of experience with the JDataStore-database in the last years and included this in the
BlackfishSQL-database. Meaning: this database is not complete new, it works now not only in the java-framework it works in the .net-framework, too.

If you think, nice info about a new database but not excited because I work with the xyz-database:

This database can use Trigger and other db-stuff written in Delphi.net (or other .net-language)… There is a “Borland.Data.DataStore” namespace and for the .net-area you can write in the future your trigger inside your Delphi. If you'll support the Java-side of the database, use the com.borland.datastore package and create for this plattform the sp and trigger in java.

In the Screenshot you see the Database. You can connect over the DBX4-framework (available since Delphi 2007) or ADO.net2. JDBC is possible, too.

This database is fast, I've test with some sample data (400 MB) and the response and fetch of the result was great. I wonder about a compare between BlackfishSQL on a Windows Server and BlackfishSQL on a Sparc-Machine. Interesting idea for the cold winter here in Bavaria .
Blackfish supports incremental backup and failover.

DBX4

The new (in Delphi2007 published) database framework DBX4 is with this version of Delphi for managed and unmanaged application available. Steve Shaughnessy and his team have made a great job in the last year and build a complete new dbExpress-version. It’s more then a new version of dbExpress, it’s a complete framework. The developer can use this framework and expand it very easy because it has included a lot of interfaces and layers. It’s single sourced and create with a high skill of programming. I’ve read in the source and it’s amazing to learn from this framework-source (and I work with Pascal since 1982).

If you need a other datatypes, no problem write your own custom command type and use it in your applications. And with the option of Delegation, e.g. Trace and Pooling in this version you have more control of the database-connection then in the last dbExpress-versions or other database-connections. And you can use the framework in vcl.32 and vcl.net. This is IMO a big advantage of the next version. Delphi is IMO the best IDE for database-application because you have the choice of the best way to your database(s). No special support for the company-database, they support the most used databases. And with the stop of the BDP-development Codegear must only maintain one database-layer, and here we can expect in the future fast support of new database-versions with new features. In the past they must realize the support on more then one database-connection component. Congrat to Scotts Valley for this decision!

Generics

Generics complete new in the next Delphi version. The use of generics is normally to define a class that has generic type parameters and you can consume and create generic types inside your Delphi. Now every Delphi Developer must learn this new feature (I think in the next few month there will be enough information about this area on the dn.codegear.com-page or in lulu.com-area from Marco Cantu, Bob Swart and other) and after this the developer must make the decision “I need it or not for my type of application”. It’s like a lot of other features in the language and compiler-area of Delphi.

But this feature is at the moment only in vcl.net-applications available, the win32-support will included in the next release of Delphi (see the Roadmap here http://dn.codegear.com/article/36620)

Reporting

The upcoming Delphi version has Rave Reports, of course .

Since Delphi 7 is Rave the standard report engines and supports VCL.32 for Pascal and C++ and VCL.net for Pascal. And the last mean you can use ADO.net2-provider over DBX4 for your reports in Rave. The version will be RAVE BE 7.5.2 (7.5.0 was Delphi 2007, 7.5.1 was BCB 2007). The differences between RAVE BE and RAVE BEX you’ll find here.

You can create simple to complex reports, render the reports into HTML and PDF and have the possibility to use scripting inside your report. And besides this feature you have with Rave a really high-speed optimized report engine.

I think at the moment about "Generics and reporting with Rave and the custom connection" .

The RAD Studio 2007 is a consistent step in the correct direction and you'll get a stable product for developing applications for Win32 and the .net-Framework.

In the winter can Codegear make a facelift with the VCL and integration of Unicode. Last week I've made the experience that the Microsoft Fax service write the log-file in Unicode and I have a win32-application.. after some minutes I've written a .net-application in BDS2006 (.net 1.1) and this application (called with parameter from my Win32-application) convert the unicode-log-file into a vcl.32-readable log2-file and it works, but not very elegantly.

Freitag, 31. August 2007

The Power of Rave

the headline remembers me on Huey Lewis and the news hit "the power of love" a long time ago .... but back to Rave.
I'm sometimes read and answer Rave-questions in the nevrona-newsgroups and yesterday I found an interesting thread from a Rave-User:

nevrona.public.rave.reports.general
Re: Order is important!!

".... Lastly, I've used both Crystal and Rave, and I gotta say, I wish more people
could see just how awesome a product Rave is. And how much more power you
have with Rave.

--
Christian Wilkerson"

thanks Christian for this!

I'm a TeamNevrona-member and when we say "Rave have power and is a phantastic product for reporting" is this not the same like other developers who works with Rave because the people think we must only talk positive about a product...
I work with Rave round about 10 years and I've realized all my reporting-issues with Rave.. and on my consulting-work on many companies (from small to really big companies) in europe (with Delphi, Rave and databases like Oracle) I can't remember any report-issue that the reporting - engine from Nevrona don't create with success.
Yeah, I haven't wrote "Rave" because Nevrona have two report engines, one is visual: Rave and the other one is code-based: Report Printer Pro, available since April 1995, two month later then the first Delphi Release!
And if the report design is too complex for a visual report then you can do it all in Pascal-code inside your Delphi-Application. You'll find a good demo in the Rave-folder.
On the nevrona.com/rave-page are good information about this report-solution and on CodeGear-Network page is another good introduction from Leonel about code-based reporting...

Dienstag, 14. August 2007

Rave and unicode

I read very often in the newsgroups or in email about supporting unicode in Rave ....

The status is at the moment:
  • Rave for Win32-developement doesn't support unicode
  • Rave for the .net-Framewok support unicode
Rave for Win32

Rave is based on the VCL, no surprise. and the VCL isn't unicode-ready at the moment.
There is an interesting article in the blog from Hallvard about "unicode and VCL" with Danny Thorpe. It's not new but unchanged in the year 2007....
In the Delphi-Roadmap from CodeGear is the support of Unicode for the Win32-plattform for the first half of 2008 announced:

Delphi "Tiburón"
Time Frame: First Half 2008
Theme: Delphi and VCL development with Unicode and Generics

Delphi Win32 Unicode This means that the IDE, the VCL, and all types of development should be made fully Unicode-compatible. The standard string in the Delphi language will become a Unicode string, meaning that the IDE, the VCL – that is, the entire product – will be Unicode-based. Developers around the world will be able to develop applications for use in any language using the Unicode standard.

meaning: when the VCL inside Delphi supports unicode Rave should support unicode as well .... but this need a lot of patience.
But Nevrona have done good work in the past, since Rave is working with unicode strings and such in .NET, the conversion to the unicode for Win32 will be a lot simpler (i.e. Nevrona already have code to handle strings of different character length).



Rave for the .net-Framework

that's easy
Rave for the .net-Framework supports unicode because .net framework supports unicode ...

But don't forget that you need the right font with unicode-support... I recommend that you work inside Rave with the FontMaster. Insert a GlobalPage and name the Page into GPFonts and here you can insert FontMaster for every Font / Size / Style (I called the components in my Rave-projects FMArial12bold, FMArial10, FMArial10bold ....) and define the FontMirror of the (Data)Text and (Data)Memo to this FontMaster. Now you can define very easy on one place (!) the correct font with unicode-support. And this is the only way at the moment to change the font of (Data)Text/Memo-component inside the Rave Scripting. And you have in all your reports of the application a good corporate design-feature included.
You see, a lot of advantages for using the FontMaster-component in the Rave-Project!

Samstag, 11. August 2007

RAVE 7 BEX and Delphi 2007

I read in many newsgroups in the last few months threads with the subject "Rave 7 BEX and Delphi 2007".

Rave 7 BEX is binary compatible with Delphi 2007 for Win32. However, the current installer from Nevrona Designs does not automatically install into Delphi 2007. You'll need to install the package dclRave.bpl from the BDS2006 files included with Rave 7 BEX within the Delphi 2007 IDE.

But please make first the following : modify the RpDefine.pas (remember, you have the source with BEX!) like the following

in the RpDefine simply change the last statement to be a >= instead of just the equal

{$IF CompilerVersion >= 18.0} { Delphi 10.0 }
CompVer = '10';
{$IFEND}


CodeGear haven't created a MajorRelease in the compiler-area with Delphi 2007; the version have only changed from 18.0 to 18.5 and all (*) the BDS2006-files working without any changes in Delphi 2007.


that's all!

I admit that my production environment is BDS2006Arch and not Delphi2007 but I have test the installation of Rave BEX 7.05 in a VMWare-machine with Delphi 2007 Enterprise without any problems! I created an application with dbx4, Rave7 and an oracle connection and it works fast, as expected from the Win32-Compiler Delphi


keep hacking and coding with CodeGear Delphi
(some years ago a friend of mine have a great signature: "Delphi or notepad"


:-)


(*)
In theory, there is no difference between theory and practice.
But, in practice, there is.