Already! more good news!
New Delphi hot fix rollup:
Here!
It fixes the following issues (long):
Version 10.0.2558.35231
===============================================================================
BDS2006 Update 2 Hotfix 10a
This Hotfix applies to:
Product: Borland Developer Studio
Version: 2006
Update level: Update 2
Editions: Professional, Enterprise, Architect, Turbo
Languages: English, German, French, Japanese
Description of updates that are included in this hotfix:
This hotfix contains a fix for the source code editor. If the source
code contained
accented or international characters, viewing the code as text and then
returning to
the file format would erroneously reset the source code to default ANSI,
thereby losing
the accented or international characters.
The source code (.pas) might become corrupt, especially if the source
code was
larger than 64K and if the accented or international characters occurred
only after
the intial 64K.
Quality Central Tracking Number(s): 32936, 32844
Internal Tracking Number(s): 241502, 241552
Copyright 2006, Borland Software Corporation. All rights reserved.
===============================================================================
BDS2006 Update 2 Hotfix 10b
This Hotfix applies to:
Product: Borland Developer Studio
Version: 2006
Update level: Update 2
Editions: Professional, Enterprise, Architect, Turbo
Languages: English, German, French, Japanese
Description of updates that are included in this hotfix:
This fix incorporates the following enhancements and fixes:
- The enhancement suggested in QC Report # 26063 to improve the SOAP
deserialization of multiref objects and arrays.
- The WSDL importer now exposes elements with 'maxOccurs="unbounded"'
as arrays and the SOAP runtime handles the conversion to and from XML.
(QC #35512)
- TXSDateTime (and other TXSxxxx types) can now be serialized as XML
attributes (QC #10969)
- The WSDL importer now handles schemas included or imported by the
schema
embedded within a WSDL.
- An uninitialized TXSDateTime will default to the value of
"0001-01-01T00:00:00" instead of
"1899-12-30T00:00:00.000".
- The WSDL published by Delphi applications was updated to be more
compliant with
the style expected by WSDL2Java importers.
- The SOAP runtime properly restores enumerated identifiers that were
renamed
because of conflicts with Delphi keywords or directives.
Quality Central Tracking Number(s): QC #26063, QC #33512, QC #10969
Internal Tracking Number(s): RAID #241798, #241801, #242796
Copyright 2006, Borland Software Corporation. All rights reserved.
===============================================================================
BDS2006 Update 2 Hotfix 10c
This Hotfix applies to:
Product: Borland Developer Studio
Version: 2006
Update level: Update 2
Editions: Professional, Enterprise, Architect, Turbo
Languages: English, German, French, Japanese
Description of updates that are included in this hotfix:
Removes the length limitation on search paths. Specifying a large
number of deeply
nested directories could exceed an internal limit.
Internal Tracking Number(s): RAID #242012
Copyright 2006, Borland Software Corporation. All rights reserved.
===============================================================================
BDS2006 Update 2 Hotfix 10d
This Hotfix applies to:
Product: Borland Developer Studio
Version: 2006
Update level: Update 2
Editions: Professional, Enterprise, Architect, Turbo
Languages: English, German, French, Japanese
Description of updates that are included in this hotfix:
This hotfix addresses the issue of Korean characters in the code editor
initiating
unwanted cold folding and causing access violations.
Quality Central Tracking Number(s): 35357
Internal Tracking Number(s): 242562
Copyright 2006, Borland Software Corporation. All rights reserved.
===============================================================================
BDS2006 Update 2 Hotfix 10e
This Hotfix applies to:
Product: Borland Developer Studio
Version: 2006
Update level: Update 2
Editions: Professional, Enterprise, Architect, Turbo
Languages: English, German, French, Japanese
Description of updates that are included in this hotfix:
This hotfix contains a fix for the VCL form designer to allow the F1
help key
to query the help system for the selected component.
Copyright 2006, Borland Software Corporation. All rights reserved.
===============================================================================
BDS2006 Update 2 Hotfix 10f
This Hotfix applies to:
Product: Borland Developer Studio
Version: 2006
Update level: Update 2
Editions: Professional, Enterprise, Architect, Turbo
Languages: English, German, French, Japanese
Description of updates that are included in this hotfix:
This fix enables all COM\ActiveX menu items and wizards that are in the
Pro version of Delphi.
Copyright 2006, Borland Software Corporation. All rights reserved.
Wednesday, February 14, 2007
Happy Birthday Delphi!! woo hoo
Today is a big day! Delphi's bday.
Yup, 12 years ago Delphi came up to the market, the coolest and greatest development language on earth came to our lives.
You will see lots of posts on the newgroups and on popular blogs about this, you can read about Delphi Spacely and Delphi Astro, Delphi expansions into Vista and Ajax :).
I will be adding links that talk about the celebration on this post during the day, so there ya go:
Marco CantĂș
Yup, 12 years ago Delphi came up to the market, the coolest and greatest development language on earth came to our lives.
You will see lots of posts on the newgroups and on popular blogs about this, you can read about Delphi Spacely and Delphi Astro, Delphi expansions into Vista and Ajax :).
I will be adding links that talk about the celebration on this post during the day, so there ya go:
Marco CantĂș
Saturday, February 10, 2007
A new jmission!!
Well, lots of changes lately, so I haven't being able to blog for a bit.
So, let me fix that.
First, I am now living in Vancouver, yup, work takes you everywhere so now I'm on a mission to make a successful company even more successful.
I'm working again with the mighty Java during the day and during the night as usual on the super powerful Delphi. I'm working lately a lot with 3 different middle tier framework architectures, on the java side, JBoss, on the Delphi side with KbmMW and RemObjects SDK.
It is extremely interesting to see how the concepts of each of those frameworks just repeat themselves on each platform. I still cant understand why things are so not friendly on the Java side, all the functionality is there but there is a huge gap to present things in an easy way to the user.
I like Delphi cause it allows you to easily jump into something and slowly depending on your needs you can look under the hood and get into the complexity of it. Java (Eclipse, even with lots of plug ins) stills presents a very aggressive learning curve. I'm pretty sure the results at the end are fantastic, but still always seems like things are being done the hard way.
There is a big standardization thanks to Sun, XML is everywhere, but is because of those that presenting all these standards to the eye of the developer is still as plain as a text file.
Today I asked a couple of java guys what were the plug ins or they use to develop their methods and other interfaces on JBoss remote services, the answer: we don't, we go into plain code.
No service builder, no nice drop and use components.
I think that is ok, but, I'm aware their are plug ins that make your life easier (Lamboz-JBoss), but at the end of the day the java guys remain like their Linux counterparts, completely old schoolers. They produce great pieces of software but the productivity level is in my opinion low. Two companies and large teams behind their products had showed me this.
My goal is to become good in Java and try to find all the required tools to get as close as I can to the speed of development of Delphi, will I be able to achieve this, maybe not, but it will certainly be interesting to try.
Anyway, I am using a great mix of RemObjects and KbMmW.
I am behind a new idea that I want to implement on the kind of platforms I develop. RemObjects is very easy to use, and provides a great DataSnap integration pack, it is completely object oriented and their plug in system to attach different channels and message packages formats is done in the RAD way, meaning its as visual as it can be. Now, KbMmw presents the fastest memory table in town, plus it shows a great maturity in their framework (Kim has years behind this baby, so, experience talks).
Having licenses for both and using their high points is helping me to build a super scalable beast. I hope to see and post the results soon.
In the meanwhile see ya all later.
So, let me fix that.
First, I am now living in Vancouver, yup, work takes you everywhere so now I'm on a mission to make a successful company even more successful.
I'm working again with the mighty Java during the day and during the night as usual on the super powerful Delphi. I'm working lately a lot with 3 different middle tier framework architectures, on the java side, JBoss, on the Delphi side with KbmMW and RemObjects SDK.
It is extremely interesting to see how the concepts of each of those frameworks just repeat themselves on each platform. I still cant understand why things are so not friendly on the Java side, all the functionality is there but there is a huge gap to present things in an easy way to the user.
I like Delphi cause it allows you to easily jump into something and slowly depending on your needs you can look under the hood and get into the complexity of it. Java (Eclipse, even with lots of plug ins) stills presents a very aggressive learning curve. I'm pretty sure the results at the end are fantastic, but still always seems like things are being done the hard way.
There is a big standardization thanks to Sun, XML is everywhere, but is because of those that presenting all these standards to the eye of the developer is still as plain as a text file.
Today I asked a couple of java guys what were the plug ins or they use to develop their methods and other interfaces on JBoss remote services, the answer: we don't, we go into plain code.
No service builder, no nice drop and use components.
I think that is ok, but, I'm aware their are plug ins that make your life easier (Lamboz-JBoss), but at the end of the day the java guys remain like their Linux counterparts, completely old schoolers. They produce great pieces of software but the productivity level is in my opinion low. Two companies and large teams behind their products had showed me this.
My goal is to become good in Java and try to find all the required tools to get as close as I can to the speed of development of Delphi, will I be able to achieve this, maybe not, but it will certainly be interesting to try.
Anyway, I am using a great mix of RemObjects and KbMmW.
I am behind a new idea that I want to implement on the kind of platforms I develop. RemObjects is very easy to use, and provides a great DataSnap integration pack, it is completely object oriented and their plug in system to attach different channels and message packages formats is done in the RAD way, meaning its as visual as it can be. Now, KbMmw presents the fastest memory table in town, plus it shows a great maturity in their framework (Kim has years behind this baby, so, experience talks).
Having licenses for both and using their high points is helping me to build a super scalable beast. I hope to see and post the results soon.
In the meanwhile see ya all later.
Friday, December 08, 2006
Javing my way....
Again, I'm working on the interesting world of Java. Last time i play on the gray side of the moon was 1.3 years ago. On that opportunity Java -> WebLogic -> Oracle was the recipe for sucess (after Delphi obviously ;)).
Now, it is Java -> JBoss -> DB2, ja! nice combo, that could bring up some fatality moves and maybe even a famous friendship key combo. My experience with DB2 is close to zero, but should be similar to Oracle, and JBoss, so far it looks too similar to WebLogic, too soon to tell but we will see.
So back to the topic, lately I've being programming on Javita, and really, it is a nice language, sometimes gets into the same cryptic style as C but in general is acceptable. I have one basic complain so far.
The "switch" statement, requires a "break" line, that sounds to me like a forced move, close to a "goto" kind of move, if we are analyzing different cases, as soon as you found the matching one, you should just continue the execution out of the switch statement, but nope. The guy just goes all the way down if it is not stopped by a nice break. Easy to fix, great, but it caught my attention.
Well, thats it, on a lighter note, we had nice encouraging numbers on TIOBE, increased D popularity up one rank, but not enough to take over the crown of Ruby as the language of the year.
Oh lots of promotions on Turbo Delphis and components all over the world, some of them as down as $200USD for TPro.
Oh, I am still missing a nice post with my experiences with Subversion, it simply rox, really guys, want to use a source control software!, use Subversion. :)
Back to work!.
Now, it is Java -> JBoss -> DB2, ja! nice combo, that could bring up some fatality moves and maybe even a famous friendship key combo. My experience with DB2 is close to zero, but should be similar to Oracle, and JBoss, so far it looks too similar to WebLogic, too soon to tell but we will see.
So back to the topic, lately I've being programming on Javita, and really, it is a nice language, sometimes gets into the same cryptic style as C but in general is acceptable. I have one basic complain so far.
The "switch" statement, requires a "break" line, that sounds to me like a forced move, close to a "goto" kind of move, if we are analyzing different cases, as soon as you found the matching one, you should just continue the execution out of the switch statement, but nope. The guy just goes all the way down if it is not stopped by a nice break. Easy to fix, great, but it caught my attention.
Well, thats it, on a lighter note, we had nice encouraging numbers on TIOBE, increased D popularity up one rank, but not enough to take over the crown of Ruby as the language of the year.
Oh lots of promotions on Turbo Delphis and components all over the world, some of them as down as $200USD for TPro.
Oh, I am still missing a nice post with my experiences with Subversion, it simply rox, really guys, want to use a source control software!, use Subversion. :)
Back to work!.
Thursday, November 30, 2006
I did it again!
I must admit that it was on my plans, really, I was going to buy those components sooner or later, but while browsing on the CodeGear general third party components newsgroup I found an offer i couldn't resist. What was it? well, go into the website or in to the newsgroups and find out, it will be easy to just provide the link eh?
So on the mighty Christmas spirit I bought another fine set of tools for my ongoing home project.
The lucky ones are a set of tools to provide remote assistance to your clients, for example, lets say that your client has a problem with its machine or with the software itself and he is getting a weird error message that doesn't matter how many times he describes it on an email, or through the phone yo simply can't understand what he means or how the error is happening.
Well, the solution is simple, ask him to go to the About option on his menu, click Help and click on the button request Remote Assistance...
On that moment a request will be send to my servers up in T.O. and I will be able to jump in into his desktop after his authorization to view live and under his supervision what is going on with his system. This is in my opinion the ULTIMATE technical support :).
My kudos to the Real Thin Client for such an outstanding job.
So on the mighty Christmas spirit I bought another fine set of tools for my ongoing home project.
The lucky ones are a set of tools to provide remote assistance to your clients, for example, lets say that your client has a problem with its machine or with the software itself and he is getting a weird error message that doesn't matter how many times he describes it on an email, or through the phone yo simply can't understand what he means or how the error is happening.
Well, the solution is simple, ask him to go to the About option on his menu, click Help and click on the button request Remote Assistance...
On that moment a request will be send to my servers up in T.O. and I will be able to jump in into his desktop after his authorization to view live and under his supervision what is going on with his system. This is in my opinion the ULTIMATE technical support :).
My kudos to the Real Thin Client for such an outstanding job.
Saturday, September 30, 2006
Access to the path "C:\WINNT\Microsoft.NET\Framework\v1.1.4322\Temporary ASP.NET Files..." is denied.
Well, this weekend i spent several hours (lots) setting up our new bug tracking software (Axosoft if you wanted to ask) and out of nowhere we start getting the message :
Access to the path "C:\WINNT\Microsoft.NET\Framework\v1.1.4322\Temporary ASP.NET Files\bugtrack\5607edd7\fc4d1071\hash.web" is denied.
everytime we try to access their web version of the product. I tried everything i could, and I asked my dear friend google many times. My problem was that lots of people described the problem, but their solutions didnt work for me.
Finally, this mighty article from the msdn saved the day. Interesting to know is that the problem came up as a combination of us installing asp.net, IIS 6.0 and then promoting the computer to be an additional domain controller. That series of events cause ASP to lost control over their temporary directories.
Who figures eh?
Access to the path "C:\WINNT\Microsoft.NET\Framework\v1.1.4322\Temporary ASP.NET Files\bugtrack\5607edd7\fc4d1071\hash.web" is denied.
everytime we try to access their web version of the product. I tried everything i could, and I asked my dear friend google many times. My problem was that lots of people described the problem, but their solutions didnt work for me.
Finally, this mighty article from the msdn saved the day. Interesting to know is that the problem came up as a combination of us installing asp.net, IIS 6.0 and then promoting the computer to be an additional domain controller. That series of events cause ASP to lost control over their temporary directories.
Who figures eh?
Friday, September 29, 2006
How to determine what version of .Net you have installed.
Well, I ran into this situation. After a quick search i found this simple but effective article in the MSDN network.
That only reminds me of the importance to keep a proper versioning system, on days when using years to determine the version of your program (at least for marketing purposes) is the way to go, we cant forget the importance to keep the traditional x.x.x.x version system going and BUILT into each of the files of your system.
That only reminds me of the importance to keep a proper versioning system, on days when using years to determine the version of your program (at least for marketing purposes) is the way to go, we cant forget the importance to keep the traditional x.x.x.x version system going and BUILT into each of the files of your system.
Wednesday, September 27, 2006
Tuesday, September 12, 2006
Turbo Delphi en Latino America.
This one goes in spanish!
Amigos!
Para aquellos hispanoparlantes en Latino America que quieran comprar sus versiones de Turbo Delphi o tengan preguntas de como obtener soporte de Borland en sus paises, adjunto los comentarios de dos empleados de Borland al respecto de este tema:
"
Hello,
My name is Lisa Flores (lflores@borland.com) and I work in the
Developer Tools Group for Latin America and wanted to let all of our
Latin America and Caribbean customers know that you can indeed purchase
Turbo locally in many countries and in others, directly from the Latin
America/Caribbean sales department. This page will give you your local
purchasing options:
Brazil: http://www.borland.com/br/company/where_to_buy.html
Spanish-speaking Latin America:
http://www.borland.com/latam/company/where_to_buy.html
Caribbean: http://www.borland.com/latam/company/where_to_buy.html
Saludos,
Lisa Flores
Account Manager - Latin America & Caribbean
Borland Software Corporation
831-431-1434"
Amigos!
Para aquellos hispanoparlantes en Latino America que quieran comprar sus versiones de Turbo Delphi o tengan preguntas de como obtener soporte de Borland en sus paises, adjunto los comentarios de dos empleados de Borland al respecto de este tema:
"
Hello,
My name is Lisa Flores (lflores@borland.com) and I work in the
Developer Tools Group for Latin America and wanted to let all of our
Latin America and Caribbean customers know that you can indeed purchase
Turbo locally in many countries and in others, directly from the Latin
America/Caribbean sales department. This page will give you your local
purchasing options:
Brazil: http://www.borland.com/br/company/where_to_buy.html
Spanish-speaking Latin America:
http://www.borland.com/latam/company/where_to_buy.html
Caribbean: http://www.borland.com/latam/company/where_to_buy.html
Saludos,
Lisa Flores
Account Manager - Latin America & Caribbean
Borland Software Corporation
831-431-1434"
Saturday, September 02, 2006
A success story of ISAPI, Datasnap and D2006.
A while ago I was hired to extend and complete a very complex ISAPI Delphi web application.
This application was intended to manage high volumes of web requests and responses, with peaks of 55,000 logins per day and around 35,000 transactions per day.
The system is power up by a nice 3-tier architecture using all the DataSnap gadgets available, including a nice implementation of the out-of-thebox load balance and redundancy components included on DataSnap.
Years and several jobs later, a big problem started to show up on moments of high load/volume, a terrible "No more available connections" message start affecting the webservers, the worst part was that the asp wrappers of the ISAPI were fine, so everything pointed to a problem with the dll.
I was contacted to work on this problem, so that is how my adventure started.
Initially the solution was to increased the amount of instances of the DLL that could be loaded in memory. I also tried increasing the IIS back log settings for pending http requests, all this helped but the problem persisted.
The next solution was to increase the number of webservers, this off course helped, brute force did its magic but the volume of requests increased and after some months and the problem showed up again.
After some research, I decided to go the dramatic way, so I ended up upgrading the application to the all mighty Delphi 2006 and its new FastMM memory manager, a new Midas, and the addition of the ISAPI Thread Pool unit.
In order to test if the solution was effective enough without putting at risk the live production system, I setup a nice test environment using the well known opensta testing framework.
The test consisted of 30 virtual users, each user accessing 20 different player accounts, browsing the website, checking their balances and logging out of each account. I ran twice each test against the old and the improved dll.
The results were very good, the response time per request when from an average of a 100ms per request to 25ms per request. (THAT DRAMATIC!)
On the dark side, I got only 6, "500 errors" on the test runs. So on one side I was happy because performance just jumped up, and in the other side I was concerned because I wasn't sure if I was properly addressing the main reason of all this mess.
So I decided to ramp up the test by going up to 100 virtual users and push to the extreme those 60 maximum active modules. The result, simply impressive...
The test ended up doing 12830 http requests to the dll, in the old DLL out of those 12830, 1850 were "500 errors". What "500 error"?, well the famous "not enough available connections". BINGO!
I switched dlls and tried again... GOSH, DELPHI ROX. Out of 12830, only 10 "500 errors". The dll was able to answer most of the requests properly and still in a good time.
Do I have to say more? I can't hide the fact that some nice architectural changes helped a bit, but, FastMM, ISAPI thread pooling and DataSnap, are the perfect combination for web dlls.
This application was intended to manage high volumes of web requests and responses, with peaks of 55,000 logins per day and around 35,000 transactions per day.
The system is power up by a nice 3-tier architecture using all the DataSnap gadgets available, including a nice implementation of the out-of-thebox load balance and redundancy components included on DataSnap.
Years and several jobs later, a big problem started to show up on moments of high load/volume, a terrible "No more available connections" message start affecting the webservers, the worst part was that the asp wrappers of the ISAPI were fine, so everything pointed to a problem with the dll.
I was contacted to work on this problem, so that is how my adventure started.
Initially the solution was to increased the amount of instances of the DLL that could be loaded in memory. I also tried increasing the IIS back log settings for pending http requests, all this helped but the problem persisted.
The next solution was to increase the number of webservers, this off course helped, brute force did its magic but the volume of requests increased and after some months and the problem showed up again.
After some research, I decided to go the dramatic way, so I ended up upgrading the application to the all mighty Delphi 2006 and its new FastMM memory manager, a new Midas, and the addition of the ISAPI Thread Pool unit.
In order to test if the solution was effective enough without putting at risk the live production system, I setup a nice test environment using the well known opensta testing framework.
The test consisted of 30 virtual users, each user accessing 20 different player accounts, browsing the website, checking their balances and logging out of each account. I ran twice each test against the old and the improved dll.
The results were very good, the response time per request when from an average of a 100ms per request to 25ms per request. (THAT DRAMATIC!)
On the dark side, I got only 6, "500 errors" on the test runs. So on one side I was happy because performance just jumped up, and in the other side I was concerned because I wasn't sure if I was properly addressing the main reason of all this mess.
So I decided to ramp up the test by going up to 100 virtual users and push to the extreme those 60 maximum active modules. The result, simply impressive...
The test ended up doing 12830 http requests to the dll, in the old DLL out of those 12830, 1850 were "500 errors". What "500 error"?, well the famous "not enough available connections". BINGO!
I switched dlls and tried again... GOSH, DELPHI ROX. Out of 12830, only 10 "500 errors". The dll was able to answer most of the requests properly and still in a good time.
Do I have to say more? I can't hide the fact that some nice architectural changes helped a bit, but, FastMM, ISAPI thread pooling and DataSnap, are the perfect combination for web dlls.
Friday, September 01, 2006
Delphi Small Team Pack!
Hey guys,
The DTG is going all the way, in a couple of days www.turboexplorer.com will put their products available for download (including the free Delphi version) and right now you can buy the Delphi Small Team pack, 2 licences with a 20% discount in the Pro, Enterprise, and Architect editions.
Great opportunity for those small high productivity factories out there. :)
Check it out here
The DTG is going all the way, in a couple of days www.turboexplorer.com will put their products available for download (including the free Delphi version) and right now you can buy the Delphi Small Team pack, 2 licences with a 20% discount in the Pro, Enterprise, and Architect editions.
Great opportunity for those small high productivity factories out there. :)
Check it out here
Subscribe to:
Posts (Atom)
A painless self-hosted Git service
Remember how a part of my NAS setup was to host my own Git server? Well that forced me to review options and I stumble into Gitea . A extr...
-
Remember how a part of my NAS setup was to host my own Git server? Well that forced me to review options and I stumble into Gitea . A extr...
-
It is a matter of "simply" finding them. If there is a need, there is an opportunity. Native cross platform? for me opportunity! ...