My first IDE when I started to be excited about programming! I vividly remember a book that was about teaching C++ to kids; I devoured it and spent a glorious summer just fiddling with what I thought was very complex code at the time. How time flies...
Borland C++ Builder (2015)
41–50 of 55 posts
Re: Borland C++ Builder (2015)
#42Looks like C++ Builder is still available. Its way expensive and the licensing for community edition is very prohibitive...if you make more than 5k or you have more than 5 people on your team you need to pay up. And you practically need to sell a kidney to afford it. That sucks because this IDE looks really neat, but its def not worth the money in my opinion unless you are a larger company already Community edition:…
Good tools come with a price, and that applies to all industries, not just programming. The most comparable offering would be Microsoft Visual Studio: free up to 5 users for smaller companies. If you have more than 5 users, it’s $45/user/month (for the cheaper Professional edition, but it would be good enough for most). And if you’ve got >250 PCs or >$1M in annual revenue, the 5 free users do not apply. https://visua…
Re: Borland C++ Builder (2015)
#43I have to repost https://news.ycombinator.com/item?id=28491963 again: My main problem with delphi: it is "too proprietary". It was a very productive IDE in the 90's or early 2000's but lost their path and never recovered. Some new versions broke compatibility with previous version's components. There was the case where you paid a good amount of money on some proprietary components and they simply wouldn't work in the…
Did anyone see it as “not native” in its native environment, Windows? Weird. It was a straight continuation of Turbo Pascal and Borland C++, both as native as anything could be since DOS and Windows 3. I think you're just plain wrong there. I don't know anyone who saw Delphi and C++ Builder as “not native”.
Re: Borland C++ Builder (2015)
#44There are many posters that complain about Borland Builder´s price tag, but what they may not realize is what Microsoft charged back then for Visual Studio C/C++ (plus the MSDN subscription fees) was likewise a lot. You got piles of books and piles of floppy disks (later piles of CDROMs) for that. Only recently, free development tools have become available that rival commercial offerings. But most serious developers…
Delphi also had similar prices.
In comparison Microsoft's prices for Visual C++ 97 were much higher, at least according to this old post[2]. The cheapest might have been $99 like Borland's but that was for the learning edition which could only be used by students for non-commercial purposes (Borland's $99 versions of Delphi and BCB did not have that restriction) and the next cheapest was $499 - practically five times more expensive.
[0] http://web.archive.org/web/19970605053133/http://www.borland...
[1] http://web.archive.org/web/20230220010556/https://www.embarc...
[2] https://www.itprotoday.com/windows-78/microsoft-sets-pricing...
Re: Borland C++ Builder (2015)
#45Some minor updates since then:
Since then i also tried Qt Creator and while it feels more clunky than even the original Borland C++ Builder, especially with the form designer (which i think is basically the standardalone Qt Designer embedded in it) and how it doesn't feel like a coherent product but a mashup of different bits and pieces, it is probably the closest you can find in open source for a RAD(-ish) C++ IDE (big caveat that i have only used it sparingly, never made anything more than a few toy apps with it). I am a bit worried that you're still relying on the Qt company which has shown hostility towards the open source community several times but i think that between Embarcadero and Qt company, relying on the latter is better and it is popular enough for external developers to pick it up in case it gets abandoned (the benefit of it being FLOSS).
But at the end i still think Lazarus is better when it comes to a RAD IDE and framework (i am taking all three of these combined, not separated) for desktop applications, assuming you do not mind using Free Pascal as the language. Of course that is with my big bias since i learned programming on Turbo Pascal, used Delphi in the 90s, use Lazarus since the 2000s and in recent years even contribute to its development. Someone starting nowadays will most likely have a harder time getting used to it and the documentation could certainly be better.
Re: Borland C++ Builder (2015)
#46Earlier quoted context omitted.
But wouldn't careful usage of margins, anchoring and aligning - if it is possible - take care of this?
In the dfm(the UI declaration file) the positions of elements are always absolute with relation to the forms top left point, they are just recalculated on the fly when a change in the form causes them to resize. Using alignment is great but it doesn't solve the problem. Not really that big of an issue in the big picture, just makes diffing forms annoying.
What you write about sounds very much like you could solve easily changing the default behaviours. There was some "autoalign" property, or something similar, that you can disable.
I won't install a demo to check, I'm afraid, but knowing that there's a solution could help?
Re: Borland C++ Builder (2015)
#47I have to repost https://news.ycombinator.com/item?id=28491963 again: My main problem with delphi: it is "too proprietary". It was a very productive IDE in the 90's or early 2000's but lost their path and never recovered. Some new versions broke compatibility with previous version's components. There was the case where you paid a good amount of money on some proprietary components and they simply wouldn't work in the…
> Then it had to compete with "native tools". Did anyone see it as “not native” in its native environment, Windows? Weird. It was a straight continuation of Turbo Pascal and Borland C++, both as native as anything could be since DOS and Windows 3. I think you're just plain wrong there. I don't know anyone who saw Delphi and C++ Builder as “not native”.
Other toolkits added this sort of functionality so it doesn't look as out of place nowadays, but especially icons on buttons was kind of a Borland sign.
In Win3.1 times it was even more apparent since Borland OWL had its own sort of "theme" for dialogs that had a textured and chiseled look with large 3D controls, so these apps stood out more. This was toned down in 32bit versions of OWL though it still used custom controls (check the button shape here[0] and how it looks a bit off compared to other buttons).
Also Borland had a tendency to make their own icons for stuff that other programs used standardized icons for, often with very different symbols which also made them stand out and look weird. For example in the screenshot i linked at the first two icons are for open and save and the bolt icon is for running - those are from OWL. In Delphi the save was different (but still not a floppy) and the new and open icons were identical, a shining page of paper, except the open had words on it. Their "undo" icon was a red circle with a crossed line that in other apps would be something like "delete".
Also FWIW i noticed that Neverwinter Nights' editor was made in Borland C++ Builder (i wrote the linked post) because the arrow icons used in it (visible in the screenshot in the post below the 3d viewport) are straight out of Borland C++ Builder. Though Bioware did make their own icons for other stuff.
Again, nowadays these things do not stand out much, but back in the 90s/early 2000s when the Windows world was more uniform and developers did care about making applications that had the "Win9x" look they did.
Re: Borland C++ Builder (2015)
#48Earlier quoted context omitted.
In the dfm(the UI declaration file) the positions of elements are always absolute with relation to the forms top left point, they are just recalculated on the fly when a change in the form causes them to resize. Using alignment is great but it doesn't solve the problem. Not really that big of an issue in the big picture, just makes diffing forms annoying.
It's been a long time, so things might have changed... I doubt it anyway. What you write about sounds very much like you could solve easily changing the default behaviours. There was some "autoalign" property, or something similar, that you can disable. I won't install a demo to check, I'm afraid, but knowing that there's a solution could help?
There are tools for automatic alignment, Lazarus has both an align property (align to the parent's left, right, top or bottom edge or to the remaining area in the center, which is good enough for many layouts) and an anchor system (allowing to either "anchor" an control's edge in place so it gets resized with the parent or to place an edge relative to another control's edge or center point) as well properties for margins, min/max size and a bunch of special-case containers that layout their children like page/flow, etc.
However the controls still have their left/top/width/height properties, the layout functionality just updates those. And since forms are just serialized objects that store a property's value if it is different from the default value, the left/top/width/height properties are always stored in the form even if they'd be overridden later by the automatic layout mechanisms (object serialization exists at a lower level than that, it doesn't "know" about forms or anything like that - in Lazarus it isn't even part of the LCL framework but instead part of Free Pascal's FCL framework on top of which LCL was written and technically these are two separate projects).
The end result is that if you open a project and for some reason the controls get resized (e.g. you have a different theme than the last time you opened it which would cause some buttons to be smaller/larger and in turn cause other layout changes), when you save the project the files in which the forms are serialized in will have different values than previously for their left/top/width/height properties - and that will show up in a diff when you have the project in version control.
This is can be a bit annoying since when you want to see what changed in a form you have to mentally ignore all the position and size changes. Though TBH in practice personally i never thought much about it.
Re: Borland C++ Builder (2015)
#49I have to repost https://news.ycombinator.com/item?id=28491963 again: My main problem with delphi: it is "too proprietary". It was a very productive IDE in the 90's or early 2000's but lost their path and never recovered. Some new versions broke compatibility with previous version's components. There was the case where you paid a good amount of money on some proprietary components and they simply wouldn't work in the…
I worked with Delphi for several years, and it was the first IDE I used professionally. It was truly brilliant for developing Win32 and WinForms applications. I can honestly say that Delphi 5 was a better tool for building Windows apps than the latest versions Visual Studio, at least in terms of usability, responsiveness, and debugging. But man are you ever right about the compatibility issues! Upgrading from Delphi…
Re: Borland C++ Builder (2015)
#50Earlier quoted context omitted.
> Then it had to compete with "native tools". Did anyone see it as “not native” in its native environment, Windows? Weird. It was a straight continuation of Turbo Pascal and Borland C++, both as native as anything could be since DOS and Windows 3. I think you're just plain wrong there. I don't know anyone who saw Delphi and C++ Builder as “not native”.
There are a couple of telltale signs for Delphi in older apps: one is the use of TBitBtn control which adds an image to the buttons, the other is the use of icons in menus. While both can be done via "raw" Win32 (or MFC), they are much more cumbersome whereas with Delphi it is done by simply picking an icon from the visual designer - especially for the button one since Windows does not have a control like that (it is…