|
I was feeling sorry for you, until you said "everything just worked" (that's where the envy kicked in)
|
|
|
|
|
The codebase as a whole was lots of 'fun' ("our training will make sure the user never tries doing any steps out of order or stop a procedure halfway through in favor of something else", "I fixed all the graphics glitches by stuffing some extra calls to repaint the control, it's all good now") in ways that kept me and a coworker busy fixing stuff for a while; it was just the library upgrade that went smoothly.
Did you ever see history portrayed as an old man with a wise brow and pulseless heart, waging all things in the balance of reason?
Is not rather the genius of history like an eternal, imploring maiden, full of fire, with a burning heart and flaming soul, humanly warm and humanly beautiful?
--Zachris Topelius
Training a telescope on one’s own belly button will only reveal lint. You like that? You go right on staring at it. I prefer looking at galaxies.
-- Sarah Hoyt
|
|
|
|
|
The legacy project I am working on right now is in Core PHP/jquery. No Framework, Just Core PHP.
|
|
|
|
|
Member 10854216 wrote: Just Core PHP. Sorry man, PHP is awful in all of its forms
|
|
|
|
|
I know
|
|
|
|
|
Sander Rossel wrote: the 80's database
I remember a few back then, only one relational db though. That was Uniplex. Late 80's. The big ISAM db I saw many places was BTrieve. Then there was the Borland project called Paradox. You know, I'm glad I've stuck with relational databases.
|
|
|
|
|
I think it was some version of dBase. Only once did I actually have to change anything in it, I asked a coworker
Relational is cool, certainly something I know. Not without perks though. I'd like to work with some NoSQL databases sometimes too. Unfortunately, my coworkers are pretty traditional when it comes to databases, Oracle or SQL Server (and preferably Oracle). Nothing is ever better for the job at hand
|
|
|
|
|
The question what other Options do we have? I think we do not have an other Option. Develope each and everting by ourselves... it takes to much time.
I think we have to live with some dependecies, like we depend on MS, Borland and in worst case (from my Point of view) on some open source source.
Bruno
modified 19-Jan-21 21:04pm.
|
|
|
|
|
0x01AA wrote: I think we do not have an other Option.
Agreed. I wish I all the pieces properly working in my VM!
Marc
|
|
|
|
|
At my second professional development job, my boss said that if we can't get the source and compile it, we don't use it. Since then, I've warned colleagues and companies about this. Most agreed. Some didn't and are now in the same situation.
|
|
|
|
|
Very reasonable. We do just that, but in some cases (specifically the expensive libs, think 5 or 6 digit price tags) we go a slightly different route: we set up a contract that would guarantee us the right to access their source code in the case the third party devs are no longer available, able or willing to maintain their lib. We don't expect this to happen anytime soon, but our application is already 25+ years old, and it might last for another 10+ years easily. So better be safe than sorry.
Of course for versioning it's also a challenge to make sure each version is checked in in such a way that it uses the correct versions of the third party libraries. For those with source code it's easy, for those without, we have a mixed approach of either versioning the binaries (for those that change a lot) or keeping all versions available in separate paths (for those that are mostly stable).
GOTOs are a bit like wire coat hangers: they tend to breed in the darkness, such that where there once were few, eventually there are many, and the program's architecture collapses beneath them. (Fran Poretto)
|
|
|
|
|
How much effort do you put into monitoring the vendors to make sure if they go under that that provision of the contract is actually executed? I could easily see a scenario where:
0) several years pass from when you sign the contract with that extra provision and everyone involved in it leaves the vendor.
1) the vendor goes out of business.
2) the liquidator can't find anyone willing to buy ownership of the library and just formats the source control server obliterating the code.
3) a few more years pass.
4) you have a problem, try to contact the vendor, and discover you're elephanted.
Did you ever see history portrayed as an old man with a wise brow and pulseless heart, waging all things in the balance of reason?
Is not rather the genius of history like an eternal, imploring maiden, full of fire, with a burning heart and flaming soul, humanly warm and humanly beautiful?
--Zachris Topelius
Training a telescope on one’s own belly button will only reveal lint. You like that? You go right on staring at it. I prefer looking at galaxies.
-- Sarah Hoyt
|
|
|
|
|
In our most recent contract that's been taken care of by an escrow who will make sure we get the code when push comes to shove. Sell-outs and liquidation won't change that - whoever buys the company or their assets will have to accept that we will get the code no matter what. (and probably most of the other clients as well).
GOTOs are a bit like wire coat hangers: they tend to breed in the darkness, such that where there once were few, eventually there are many, and the program's architecture collapses beneath them. (Fran Poretto)
|
|
|
|
|
You remembered me back old days when a .NET version changed and I was getting so many assembly errors in Visual Studio that was really annoying. I love Microsoft and backwards compatibility in all their products.
|
|
|
|
|
Try doing Mac development sometime. Even a three-year-old project would have been built with an older version of Xcode that won't run on any new Mac that comes with the latest version of OS X. Older projects are even more fun, with things like Carbon, HFS paths, and even dependencies on CodeWarrior. Backward compatibility isn't even a concept at Apple.
|
|
|
|
|
The one mistake you made was not actually working from the VM you built!
Nowadays, we do all of our development from our VMs.
We save copies of them in folders dated to the major releases, by customer, and clean them up after a final release. Plus SVN/Git for the source.
We USUALLY buy source with 3rd party components.
I wish you luck!
|
|
|
|
|
You're lucky. Our IT doesn't want us to use VMs becuase then they'd need to obtain additional Windows licenses
No, I have no idea why that would be a problem either - still waiting for an explanation...
GOTOs are a bit like wire coat hangers: they tend to breed in the darkness, such that where there once were few, eventually there are many, and the program's architecture collapses beneath them. (Fran Poretto)
|
|
|
|
|
Kirk 10389821 wrote: The one mistake you made was not actually working from the VM you built!
Yes, exactly. In those days, on a dual core 1Ghz (or so) machine, it was a painful experience as compared to working natively.
When I fired up the VM on an 8 core, 16GB, 3.5Ghz machine six years later, it was freaking fast. And that was before I changed the VM configuration to use 8GB and 4 cores!
Kirk 10389821 wrote: We save copies of them in folders dated to the major releases, by customer, and clean them up after a final release. Plus SVN/Git for the source.
Ah, easily done now on terabyte drives. My poor little 256GB drive, at that time, would not handle it. Of course, it really wasn't my responsibility to keep these things around, but ironically, as the other person posted in reply, the company I was working for didn't let people set up VM's. To get the VM I had prepared to them, I gave them a thumb drive of it when I went out to visit them (3000 mile flight.)
Nowadays, I'd even consider setting up a free EC2 instance simply to RDP into!
Marc
|
|
|
|
|
This state of extreme anger will soon pass; it is only a temporary state; you shall persevere Marc, you shall persevere!!
|
|
|
|
|
JoeSox wrote: This state of extreme anger will soon pass; it is only a temporary state; you shall persevere Marc, you shall persevere!!
I'm a typical male -- I tend to forget what I was angry about after a couple hours. Fortunately, I found a wonderful woman that is the same!
The only thing that typically lingers is my annoyance at the stupidity of others, and that lingers only because I'm constantly reminded of it when I have to work with other people, particularly management!
Marc
|
|
|
|
|
Hmm, yes; DevExpress controls.
Control behavior changes, for no apparent reason, from one release to the next.
Crossing fingers will not work.
|
|
|
|
|
|
|
When I work on legacy stuff, I often call myself a "software mechanic" instead of software engineer.
|
|
|
|
|
You must be close to declaring a code base obsolete and redeveloping a replacement?
I suppose, now that I think of it every live project should be reviewed every six months to ensure it is viable.
Next you'll be saying you have to install your application to your development system so that you can build it.
|
|
|
|