"Live at the Borland Conference" Kylix Development Team Chat Transcript from July 10, 2000

By: Christine Ellis

Abstract: Complete transcript from the live chat held July 10, 2000 at the Borland Conference with members of the Kylix Development Team.

"Live at the Borland Conference" Web Chat on Monday, July 10, 2000

Subject: Project Kylix

Chat Formatting Conventions

chatter 1

This is a question asked by a chat participant

speaker 1

This is an answer or message posted by a speaker

chatter 2

This is another question asked by a chat participant

speaker 2

This is another answer or message posted by a speaker

editor

This is an editorial comment

Chat Transcript from Monday, July 10, 2000

Please note: Some of the text for this chat has been edited for clarity.

Chat User

Message

cellis

Welcome to the "Live at the Borland Conference" moderated live chat with the Kylix Development Team!

cellis

Forward-looking statements in this chat, including but not limited to, those concerning Inprise's future financial performance, product availability dates, results of the Company's strategic review, and the potential features of or benefits to be derived from the Company's products, involve a number of uncertainties and risks, and actual events or results may differ materially. Factors that could cause actual events or results to differ materially include, among others, the following: possible disruptive effects of organizational or personnel changes by the Company, shifts in customer demand, market acceptance of the Company's new or enhanced products, delays in scheduled product availability dates, actions or announcements by competitors, software errors, general business conditions and market growth rates in the client/server and Internet software markets, and other factors described in the Company's S.E.C. reports on Forms 10-K and 10-Q.

cellis

This auditorium is currently quiet. General chat has been disabled to keep the noise down. You will not be able to see other users also logged into this auditorium. To ask a question use the /ask command and type in your question.

aat

There are so many Linux vendors out there, will D6 applications be able to run on all of them?

RobertKozak

We are working on making Kylix (Delphi for Linux) work on all Linux distributions, but we are only going to certify a few. D6 compatibility will be through CLX.

fdweller

Will there be scholar pricing for Kylix as there is for Delphi?

chesik

We always offer scholar pricing for our products. There's no reason to believe that this will change for Kylix.

mikepence

When will you market against VB?

mswindell

Good idea! We started a few weeks ago when we began a massive campaign to recruit Visual Basic developers to Delphi. There are seminars, white papers, CDs in VB magazines, direct mail, and more.

brirtch

Do you know yet how much Kylix will cost?

mswindell

How much you got? Seriously though, we haven't yet announced pricing for Kylix.

jarle

When targeting cross-platform, do you recommend storing strings (in memory) encoded as UTF-8 or UTF-16?

dthorpe

Noooo!! (ahem)
UTF-8 is recommended for inter-process and cross-network data. To process internal data you should use AnsiStrings (in locale charset) or WideStrings (Unicode / UCS-16). UTF's multibyte nature is cumbersome to work with for normal data.

ecardenas

Will there be a proposed way in order to access MS-SQL Server and Access DB from Kylix?

rnadler

We are investigating MS-SQL and Access solutions for Kylix.

brirtch

In which ways is CLX different from the VCL?

cjazdzewski

CLX uses the Qt widget set to create visual controls instead of the Windows API directly. This allows applications the same source to compile and run on both Windows and Delphi. There are other, various differences, but this little edit box I am typing in is too small for all the details. CLX will be very similar to the visual part of VCL and will use the non-visual parts that have been ported to Linux.

aat

Microsoft and Borland have had good relationships recently. How has MS's attitude been with the direction of Borland's support for Linux?

mswindell

We are going to continue to support the latest Windows platforms and technologies in Delphi and C++Builder for Windows. Our relationship with MS hasn't changed in this respect. As for Linux, we don't have any relationship with Microsoft regarding Linux, so I couldn't comment on their view.

Samwise714

How are you thinking of implementing databases? Another BDE?

rnadler

We have new, high-performance, thin-layer database drivers that replace the BDE SQL Links. We have announced support for InterBase and MySQL, and other database drivers will follow. These drivers will run on both Windows and Linux.

ecardenas

The MySQL and PostgreSQL drivers will be included in D6/Kylix?

rnadler

We have announced a MySQL driver. We are publishing the new database driver API, and we will be producing more of our own drivers for other vendors as well.

dlouis

Will the Delphi compiler be released as a free download the same way the C++Builder compiler was released to create a wider user base?

mswindell

Hey, why didn't we think of that! The C++Builder compiler downloads have been overwhelmingly successful - over half a million since March. We haven't announced anything but it's likely that we will continue with this model with other products. Kylix seems especially well suited to this.

brirtch

Have you changed the Object Pascal language in Kylix?

cjazdzewski

We are only doing limited changes to Object Pascal for Linux. We wanted to limit the amount of work we did to the compiler since porting the compiler was enough of a task for us for the Linux release.

brirtch

What is the conditional compilation "variable" called that tells whether or not the development tool is Kylix?

RobertKozak

{$IFDEF LINUX} for Linux and {$IFDEF WINDOWS} for Windows.

brirtch

How many people are working on Kylix (the programming part)?

chesik

Everyone! We all are!

inteq

Will TThread, TServerSocket, and TClientSocket be implemented in Kylix?

abauer

Yes. There are, however, a few semantic changes in the socket components are required since Linux does not support non-blocking sockets.

brirtch

Has development on the C++ version of Kylix started?

chesik

Yes. In fact, we demonstrated our C++ compiler running on Linux at last year's BorCon in Philadelphia.

doichin

Can I use the C++ compiler instead of GCC to build a Linux kernel?

cjazdzewski

The first release will not support compiling the kernel since the kernel sources use many GCC-specific feature extensions that we don't plan on supporting in the first release. We will look into adding the features necessary to the compiler to support kernel development in the future.

jose_t

Isn't there another way to access databases other than the DBExpress components in Delphi for Linux? Maybe the ClientDataSet component isn't the best way for the most developers.

rnadler

TClientDataSet will be the preferred way to access data when bi-directional navigation and DB controls are bound to the data. There will also be a TDataSet descendant for simpler access and the TDataSetProvider can be used to publish data as XML.

Luminus

How about a Kylix Linux distribution that is pre-setup for development?

mswindell

Hmm... Interesting. We're focusing on the popular Linux distributions that users will be running first.

crogers

How long will the C++ version lag behind the Delphi version?

chesik

You can probably use the past to predict the future in this case. Typically, the C++ version follows Delphi by about 6 months or less. It will be out as soon as it's ready.

phil1963

Is Kylix on schedule?

echurchill

Yes.

bcb_user

Will Delphi for Windows include both CLX and VCL, or just CLX?

echurchill

It will contain both VCL and CLX.

inteq

When do you expect to have a public beta or preview?

mswindell

There is currently no public beta scheduled. We will be opening the beta up to more applicants in August. However, the waiting list is pretty long even today.

Samwise714

How are you going to fit both Delphi and C++Builder in Kylix? Will C++ be preferred?

dthorpe

We'll get a bigger box. ;>
C++ and Object Pascal are not mutually exclusive. Different developers want different tools/languages. We cater to both camps.

brirtch

What was the most difficult part of Delphi to port to Linux?

abauer

The compiler. Things like Position Independent Code that is required for creating shared objects (.so) was a challenge.

rlove

Are you prepared to give a bit more details on the DB access architecture that will be found in Kylix? Is there a white paper for those who aren't attending the conference?

rnadler

We plan to publish the API and the source code for a sample driver on our Web site soon. Watch the community site for details.

brirtch

Will the VCL be phased out after D6?

echurchill

No, VCL will be with us forever.

sysrpl

How easy will it be to install and configure the Kylix development environment?

RobertKozak

Kylix will have a quality install. We are going to make it as easy as possible.

kim_friis

Will Kylix be able to compile both Pascal and C?

chesik

Not in the initial release. You'll see Pascal first, then C++, then a combined IDE for both languages (in the high-end Enterprise SKU).

Borlandophile

When will Kylix be available? How about Delphi 6?

echurchill

We have not announced a release date for either of those two products.

phil1963

What have you learned, if anything, from working on Kylix that will improve D6?

abauer

CLX. We will now have a cross-platform component library.

brirtch

Will the CLX classes have different names to the VCL ones. For example, will we have TCLXStringList and TStringList?

cjazdzewski

They will have the same names, but they will be in different units. We kept the names the same to allow easier $IFDEF'ing between a CLX and a VCL application.

dpalley

I understand IBExpress will be ported to Kylix, and that DBDirect will also support InterBase. Will IBExpress be the preferred route if we're only talking to InterBase, or will DBDirect have the same functionality?

rnadler

DBDirect will be the preferred method if you have any plans to target different databases. It will surface features of InterBase that the BDE did not (like multiple transactions per connection). IBExpress is being developed outside the Kylix team and the developer responsible is not here now, so I'll defer comments on IBExpress to him. But, of course, it will run only against InterBase.

BorlandForEver

To MSwindell: The campaign to get VBers was only a couple of seminars. Was that just to test the water? Will there be a more consistent and aggressive campaign?

mswindell

I believe there are more seminars outside the U.S. and there are more facets to the campaign still to come. Speaking directly to Visual Basic developers is something that we are going to continue to do from now on.

Shiv

Can you please tell us more about ISAPI/CGI "cross-platform compatibility" using Kylix /Apache Web modules?

gmontiel

The CGI interface and the Apache API (shared objects) will be supported in Kylix WebBroker.

brirtch

Are the Borlandites taking part in this chat using Linux or Windows?

echurchill

Both are being used here in the lab at the conference.

fdweller

Why the big push to get VBers? There seem to be some really good reasons why they haven't switched (ADO, COM, DAO, ActiveX) that Kylix can't address - or will there be answers to all of these Microsoft-specific products?

dthorpe

There are VB developers out there whose customers want solutions on the Linux platform. VB will not take them there. For VB developers who need to deliver solutions on Linux, Delphi is their best option to get there.

sysrpl

Will graphical classes such as TCanvas, TPen, and TBitmap, etc. be present under Kylix? If so, how have they changed (if at all)?

cjazdzewski

They will be very similar. Some things, like obscure rasterops, will not be supported. But, most code written to TCanvas will port very easily.

aat

How do developers distribute their applications on D6 for Linux? Is there a setup program?

mswindell

There aren't many choices for installers on Linux yet. A lot of people are using the Loki installer. We expect that there will be some installers written in Kylix shortly after Kylix starts shipping.

sysrpl

How will interface data types be supported under Kylix? Will we be able to use interfaces internally and externally (in the Linux version of a DLL, whatever that is) under Kylix?

amarkowitz

The interface data type will have the same semantics as it currently does. They should be able to be used in executables or .so (.dll equivalents). They will be supported in-process.

dlouis

Will InterBase 6.0 be bundled with Delphi/Kylix and which version of the database engine will be included: Classic, Superserver, or both?

rnadler

We will likely bundle the InterBase version that is available when we ship, which should be IB 6.0. It is up to the InterBase open-source team to decide which engine will be included as the open-source project.

brirtch

Will Kylix be released before/after D6?

echurchill

The release dates for those products have not been announced, so it is impossible to say which will be first.

doichin

Are you going to support IA64 native compilers for Linux and Windows?

cjazdzewski

We announced today that we have an IA64 code generation project in progress. We plan to support it for both Linux and Windows.

Dossi

Will Kylix support Linux driver programming? There are things like mem[], port[], or Interrupt?

cjazdzewski

We allow that level of programming with our built-in assembler (we will not be supporting the mem, port, or interrupt from 16-bit days). However, we will not be supporting driver development until Linux supports a binary driver format.

brirtch

Will the VCL be updated, or will it just remain unchanged, while the CLX gets modernized?

RobertKozak

Absolutely! The VCL is being updated and will continue to be updated. Specifically, new Microsoft features will be added to the VCL. As you might expect, we will not be adding specific MS features to CLX (our new cross-platform library).

rlove

Besides CLX, what new features should we expect in D6?

echurchill

Lots of new stuff, but there is no official feature list that I can post up here. I assume (you know what that means) that as we get closer, our marketing department will release a feature list.

rlove

Is there any hint of system requirements yet for Kylix? (I apologize if you have seen this already, my browser crashed!)

mswindell

HW requirements and performance for Kylix and Kylix-generated applications should be very similar to the Windows version of Delphi.

tzvic

Can you use GCC in Kylix?

amarkowitz

It will not be integrated into the IDE, but you should be able to link in GCC .o files.

brirtch

What is considered the equivalent of COM under Linux?

abauer

There are several initiatives that are available from several places. One is XPCOM from the Mozilla project. There are also some commercial offerings. Kylix will fully support Delphi native interfaces since they are not tied specifically to COM.

ecardenas

How long will be the BDE be with us? Will we have to forget it in order to develop portable applications?

rnadler

We intend to support the BDE as long as our customers need it. We will continue to upgrade the SQL Links as new vendor libraries come out. The new DBDirect drivers are the solution for cross-platform applications.

Samwise714

How are you going to join both Delphi and C++Builder in Kylix? Won't C be preferred, since running on Linux?

dthorpe

C is preferred by C programmers, not by Delphi programmers. Delphi and C++Builder intermingling will initially be the same as in the current Window products. A dual language suite is planned later.

brirtch

Why aren't there typed lists for various common types (e.g., TIntegerList, TRealList)? Any plans to add them to CLX?

abauer

We are investigating support for generic programming in Delphi that would cover these cases.

BorlandForEver

To ChuckJ: I read where you described the exciting time you had working on Delphi. How's the Kylix experience compared to the early days of Delphi?

cjazdzewski

It is different, but just as fun. Obviously, some days I am pulling my hair out -- I lost a lot of hair on Delphi 1.0, as well. I love learning new things and Linux is providing me with ample opportunity.

brirtch

Are there any plans to package Delphi and C++Builder (and JBuilder?) as one product (e.g., Borland Studio)?

dthorpe

The long term plan in the Kylix project is to produce a dual-language suite. There might be some other bundling things brewing...

bcb_user

How difficult would it be for someone who has never used Linux to start developing under this platform?

mswindell

The idea is that if you are a Delphi (or C++Builder later) developer, you will be able to sit down in front of Kylix with little or no Linux development experience and will be able to build applications from day one.

brirtch

Are any authors writing books for Kylix?

mswindell

There are LOTS of authors writing Kylix books. The interest in writing for Kylix has been great.

dlouis

How low-level, in terms of API calls and Assembler, will developers be able to go in the initial release of Kylix. Or, are we restricted to what Qt provides?

RobertKozak

You are not restricted to Qt. You can make direct calls to X if you want. Though I would suggest you do use CLX as much as possible so that your applications can run in both Linux and Windows.

Samwise714

How do I get to work at Borland (not even janitor vacancies)? OK, really sorry, won't do this again.

echurchill

Go to http://www.borland.com/about/hr/.

ecardenas

Will there be international language support in Kylix as in D5? How about help/documentation in Spanish for D6/Kylix?

gmontiel

Yes, there will be international language support in Kylix. Contact your local dealer regarding help/documentation availability.

brirtch

Are there any major IDE changes over D5?

chesik

Not really, except the fact that it runs on Linux.

brirtch

Will the CLX be compilable with D5, and will we be allowed to do this?

echurchill

No.

Shiv

How do you plan version issues with new releases of Qt effecting CLX or applications written in Kylix ?

cjazdzewski

It is always possible for a new version of Qt to affect CLX, but that was always true with Windows as well. We will be working with Troll Tech to ensure that any new release of Qt doesn't break CLX. Also, you can bind directly to a particular version of Qt, such as 2.1.1, and ignore anything else that gets installed on the system. Linux gives you flexibility in this regard.

Shiv

What are the limitations of CLX in version 1.0 versus VCL?

RobertKozak

This is a hard question to answer at this time, because it is still in development. Actually, I lied, it isn't hard to answer, it is impossible. :-)

Shiv

Would you say applications planned for cross-platform will have a lot of $IFDEF'ing?

abauer

That depends on how much platform-specific code you have. We are working to reduce the number of these as much as possible.

ecardenas

What is DBDirect?

rnadler

It used to be called DBExpress, it is our new, low-level, high-performance set of database drivers for cross-platform DB development. It essentially replaces the BDE SQL Links, but contains no complex configuration, no data caching, no TTable concept, etc.

brirtch

Will Kylix have a File|New Unit menu item?

chesik

A dedicated menu item? No. You'll still have to go through the File|New dialog as in Delphi 5.

doichin

Will there be support for Paradox on Linux?

echurchill

Not in the initial release of Kylix.

Arnim

Can we compiles resources (icons, bitmaps, etc.) in Kylix applications?

dthorpe

Yes and no. Yes, you can link resource files into Kylix executable files (We're inventing a lot of technology to fill that void in Linux). However, X Windows doesn't know what to do with Win32 .ico resources, so you may need to "reprocess" some of your resource files to convert them into appropriate formats.

Samwise714

Will there be a preferred release of Linux? Since the Corel/Inprise "break-up"...

cjazdzewski

We don't have one. We didn't even before the merger was cancelled. We want to support every release of Linux, but we will only be able to ensure it works on a limited number of distributions and will be focusing on the major distributions. We will not have a recommended distribution.

kim_friis

Will the Delphi-Jedi knights also have some work to do on converting some Linux headers?

abauer

The Delphi-Jedi group is not led by Borland and can pursue any path they choose. If they, as a group, decide to support Linux header translations, we will, of course, look at what they've got.

dlouis

How does the team think C# (or D-flat as I call it) will affect developers' uptake of D6/Kylix?

mswindell

C# is certainly an interesting move by Microsoft. It appears to have a lot of similarities to Java features, Delphi's tight integration with COM, and C++Builder's simplification of C++ development. So far, there doesn't appear to be a cross-platform path with C#. If this is the case, compared to Kylix/D6, it won't compare.

bcb_user

Have you decided yet the name of the final product?

gmontiel

We have not officially announced the product name.

Samwise714

Is it possible to access other processes memory space? Any COM alternative for Linux?

dthorpe

Yes, Linux process can set up shared memory spaces using mmap.

aat

As a lifelong Windows developer, what are some areas that I should study to be ready for D6? Got any good books to suggest?

RobertKozak

I am assuming you meant Kylix, because as a lifelong Windows developer D6 should not be a difficult transition. :-) That said. I would look at Qt. Troll Tech's site at http://www.TrollTech.com has good online documentation. I would also get a good Linux book.

Rolf Frei

Does DBDirect support all databases as the BDE does, especially Informix?

rnadler

We have announced support for MySQL and InterBase. Other database drivers will follow, but we have no exact list yet.

crun

Will applications run stand-alone or require KDE? Is MaxOSX likely to be able to run applications?

mswindell

Kylix-generated applications will run fine in KDE, Gnome, or standalone. In the first release, we do expect to recognize KDE themes, however. I hope for Apple's sake that MacOSX runs applications. Oh! You mean Kylix applications. Technically, Kylix is being developed to allow us to go to other software platforms and we are re-engineering our code generators to enable other hardware platforms. So, the answer is, technically, 'yes', but we have not announced any plans for a Kylix on OSX.

brirtch

In Delphi for Windows, the library keyword produces DLLs. What does it do in Kylix?

abauer

It produces shared objects, (.so) files, which are essentially the equivalent of a Windows DLL.

phil1963

Danny, are you planning a follow up book for Kylix?

dthorpe

Yes.

brirtch

What has the response been from the VB marketing campaign?

mswindell

It's been great. The VB campaign combined with all the Kylix news has brought a whole new crowd of Visual Basic developers to Delphi 5. Make room for the 'option explicit' guys!

wind

Why not throw Java in, too, for a third language so there is a single IDE?

cjazdzewski

JBuilder is committed to an all-Java IDE and we are committed to a native IDE. They have two different agendas, so, for now, merging the IDEs would be difficult.

Joseph Gordon

If the BDE is not going to move forward, why not include the source code for it?

rnadler

We do have plans to evolve the BDE SQL Links as new vendor libraries become available.

kim_friis

Will there be OpenGL support in Kylix (for game programming)?

gmontiel

We don't have plans to port the OpenGL headers at this time.

inteq

When can we expect to see the first commercial version of Kylix?

mswindell

The official word is "when it's ready", but we are targeting the second half of 2000.

BorlandForEver

Is there any goal to make Delphi/Kylix to be the tools of choice for writing server applications? Perhaps geared toward Apache?

gmontiel

Yes! We have already announced Apache support on both Kylix and Delphi 6.

BorlandForEver

How does it feel to be close to the OS again via Linux? Borland has been shut out of the OS for the last ten years, on the outside ring so to speak.

dthorpe

The fact that Linux is different from Win32 is refreshing in some ways, and very frustrating in other ways. Both OSs have their warts and their strengths. Also, having access to the source code of the OS beneath you isn't the panacea some would have you think it is. Debugging to figure out why an OS routine doesn't work as documented (if documented) is just as time consuming in Linux as in Win32. Trying to figure out what OS functions are available (and appropriate) to solve a specific problem is just as daunting under Linux as under Win32. We're not on the inside of Linux any more than we are on the inside or Win32 or MS-DOS.

Shiv

When one develops under Delphi (6 and above) how do we manage VCL/CLX issues? Is there an environment setting or just VCL tabs?

cjazdzewski

When you are editing a CLX form, you will only see components that can be dropped on a CLX form, and the same for VCL. For those familiar with the designer API, we extended the custom modules to allow them to filter what is seen on the component palette.

phil1963

Are packages going to be supported in Kylix?

cjazdzewski

Yes, that is the current plan.

Arnim

InstallShield is shipped with Delphi now. Will install-software be shipped with Kylix?

mswindell

So far there isn't an InstallShield for Linux, unless you count their Java version. We will certainly have an installer, but at this time we don't have plans to include an installer tool. Loki installer is working out for quite a few people. It also supports RPMs which makes it nice, too.

aat

Who is the youngest on the Kylix team and what age?

amarkowitz

I am. :) I just turned 24 a few weeks ago. I started as an intern in support (2 yrs), then was a full time engineer in support (1 yr). I started in development about a month before last years' conference.

doichin

Can I use winelib with the Pascal compiler on Linux?

chesik

There won't be any "in the box" support for winelib, but we know of no reason that would prevent you from using it.

jose_t

Will D6 be released in Spanish?

RobertKozak

No se.

jose_t

Will D6 have MDI support?

echurchill

I assume you mean will the IDE use MDI. If so, then no, we do not plan to shift over to a desktop style of IDE for D6. We continue to investigate that along with other ideas to enhance the IDE. If you have any suggestions, feel free to send them our way. We are always interested in customer feedback.

crun

Will it be practical to write command line applications? Is there a chance of some support for parsing command line parameters?

chesik

Yes, command line applications will work. Parsing the command line will work the same as under Windows (ParamCount/ParamStr).

Joseph Gordon

Are QuickReports going to be included in Kylix? Will they ever work right?

dthorpe

No. At this time, there are no plans to include QuickReports in Kylix.

inteq

Will there be a Delphi IDE compiler for the Linux environment, or will we need to switch back and forth between operating systems to get cross-platforms applications?

mswindell

Perhaps we will cross-compile someday, but for now there will be a Linux IDE for building Linux applications and a Windows IDE for building Windows applications.

Shiv

Can you comment on the speed and weight of cross-platform applications? I understand the differences in the OS, but would a cross-platform application run slower on the same OS and will it be fatter?

dthorpe

Performance and code size of Linux executables produced by Kylix should be on par with current D5 code generation. Cross-platform abstraction does introduce some indirections that direct native access doesn't require, but we don't anticipate significant performance or size costs.

brirtch

Have you considered translating the CLX into C++? I think many people are reluctant to go for C++Builder because they don't know Object Pascal. What about a OP2CPP to automate this, and also to be sold as a separate product?

abauer

This has been requested before, but the practicality of duplicating all this effort is not there. We have tried to make the VCL (and CLX) more of a "black-box" library. Knowing Object Pascal is not an absolute requirement in order to use C++Builder.

gmontiel

I gotta go ...

gmontiel

Thanks. Bye.

dthorpe

hears a dinner bell...

amarkowitz

It's past my curfew... The shackles are coming back on... TTFN... Bye, -Sparky

mswindell

Thanks for participating! I've got to get going - there is a meal with my name on it somewhere.

chesik

Got to go -- more Kylix work to do!!!

mswindell

Kylix ROCKS!!!

chesik

fixes a Kylix bug

RobertKozak

Okay, guys and gals. Time to get back to the conference. See ya. I'll post my session in a few weeks on the community site. Also, see the latest Delphi Informant for some more Kylix info. Thanks for coming!

echurchill

Catch ya later dudes!!!

chesik

builds a Linux app in 10 seconds with Kylix

abauer

Gotta go guys... the conference is calling.

cellis

Thank you for joining us today!
The next chat is scheduled for tomorrow morning at 8:00am (1500 GMT) Pacific with the winners of the "Spirit of Delphi" award (past and present). Please join us then!


Server Response from: ETNASC03