|
My guess is that there are several IT departments where I work scrambling to find a replacement.
I can already hear a director asking, "Is there any way we can get a copy of the codebase to maintain our own internal version of ICQ?"
|
|
|
|
|
By the way, the phrase "can we get a copy of the codebase to maintain our own version" should be heard as "now is a good time to update your resume"
|
|
|
|
|
Last time someone tried this, it was for MS Money. With no luck, unfortunately -> How to bin dump an excellent piece of software ...
|
|
|
|
|
At least MS Money still works. Well, I've never used any of its online features, that is, so all offline functionality is still there and runs fine.
|
|
|
|
|
Sure. But I miss some modern features - like the filtersearch in comboboxes - and a few things I would have loved to implement. I actually see no point in keeping a source code sealed when it is not maintained anymore. I once started to reverse engineer, but that would be soooooo time consuming !
|
|
|
|
|
Rage wrote: I actually see no point in keeping a source code sealed when it is not maintained anymore.
Sometimes there are components that have been licensed that, themselves, are owned by third parties that are still very much under active development, and the licensing terms are such that it's an all-or-nothing type of deal.
Then there may by IP that they feel should be kept private.
Or there's a shared component that's re-used somewhere in another product that's still under support, and releasing the source would make it trivial to expose common vulnerabilities to anyone looking. Obviously security through obscurity should not be a thing, but the reality is, making the source public just lowers the bar.
I'm with you, there's plenty of abandoned closed source software I'd like to revive, even if only for my own use...but I just don't see that happening.
MS-DOS 4.x only got its source published a few weeks ago, and that was done, so they claim, "primarily for its historical importance". Don't get your hopes up for MS Money...
I've never used it myself, but HomeBank is free and has its source code available (I don't know however if it's open source according to the common terms), and claims to be able to open MS Money files. Depending on your goals, maybe you could take inspiration from that, even if only for the data import part...
|
|
|
|
|
MS Money still installs and works, even on Windows 11 v23H2.
|
|
|
|
|
At least with MS Money, Microsoft made a free non-connected version available. The only problem is there is one version of Windows 10 where it didn't work, but someone with really good binary debugging skills figured out the issue and published the solution - on a Microsoft support site.
|
|
|
|
|
Another small rant, two-for-one.
1) Debugging console applications with parameters is painful.
I need to test against all the possible combinations of arguments, can't do it properly though, need to pass through the debug options... which are persistent.
And the console does not stay open (yes the checkbox is unchecked, also ignored by VS).
And the breakpoint after the parsing moves the focus to the VS window hiding the Command prompt.
Every test is a clickity-clickity-typety-clickity-clickity-clickity-clickity-clak.
you Microsoft.
2) Structures in watch window do not stay expanded.
Add other clickity-clickity-claks to a simple test.
Basically the best way to test this behavior is inserting test code and debug prints, as we used to do when we had to chisel bits one by one onto EEPROMS with tiny hammers and a lot of patience.
Told you it was a rant.
GCS/GE d--(d) s-/+ a C+++ U+++ P-- L+@ E-- W+++ N+ o+ K- w+++ O? M-- V? PS+ PE Y+ PGP t+ 5? X R+++ tv-- b+(+++) DI+++ D++ G e++ h--- r+++ y+++* Weapons extension: ma- k++ F+2 X
The shortest horror story: On Error Resume Next
|
|
|
|
|
Sounds like a situation where unit tests would work well.
|
|
|
|
|
I like your thread subject
|
|
|
|
|
Rename Main(...) to Main2(...)
Insert a Main() routine and make it call Main2 with your test cases.
Check out my IoT graphics library here:
https://honeythecodewitch.com/gfx
And my IoT UI/User Experience library here:
https://honeythecodewitch.com/uix
|
|
|
|
|
|
den2k88 wrote: And the breakpoint after the parsing moves the focus to the VS window hiding the Command prompt.
Well at least that one's easy to fix, get another monitor and reshuffle your windows around so they don't overlap.
It's really nice to have an unobscured view of the IDE open on one monitor, then a browser / console / Explorer windows on another, alongside a bunch of debug windows (locals / watch windows / output window / etc).
I typically RDP into my dev VM using a 4K monitor and a 1080p one, and that's my sweet spot. Although sometimes I could use a third.
|
|
|
|
|
|
Probably because it was modelled on languages which do allow execution to fall-through, and without an explicit break / return , early adopters might have thought the C# code was falling through.
[Proposal] Case fall through should be allowed · dotnet/csharplang · Discussion #603 · GitHub[^]
See also Eric Lippert's comments on SO:
C# enforces the no-fall-through rule in every switch section, including the last one. This is so that switch sections can be re-ordered arbitrarily, possibly by mechanical tools, without introducing semantic changes in the program.
C# enforces the no-fall-through rule by requiring that the end point of every switch section be unreachable. It is not necessary for a switch section to end in a break. It can end in a break, return, goto, continue, throw, or a detectable infinite loop:
"These people looked deep within my soul and assigned me a number based on the order in which I joined."
- Homer
|
|
|
|
|
For the most common scenario it just adds a line of code that has to be written which has no meaning.
It just clutters the code with additional meaningless lines. Bah, or better, !
GCS/GE d--(d) s-/+ a C+++ U+++ P-- L+@ E-- W+++ N+ o+ K- w+++ O? M-- V? PS+ PE Y+ PGP t+ 5? X R+++ tv-- b+(+++) DI+++ D++ G e++ h--- r+++ y+++* Weapons extension: ma- k++ F+2 X
The shortest horror story: On Error Resume Next
|
|
|
|
|
I agree with a specific "end of case" being required - as Richard quoted, it allows the compiler to spot code faults instead of letting them cause runtime problems.
It may be "unnecessary", but it does trap some errors which could be difficult to diagnose at run time.
"I have no idea what I did, but I'm taking full credit for it." - ThisOldTony
"Common sense is so rare these days, it should be classified as a super power" - Random T-shirt
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
It does allow multiple "entry points", so
case 1:
case 2:
Some code
break;
So it can't just assume a break. Sure they can come up with rules for how it would be interpreted, but kind of glad they didn't.
|
|
|
|
|
I blame Ken Thompson.
switch should never have had fall-through, break should never have affected switch . That should have been their first clue.
|
|
|
|
|
I blame Ken Thompson for the vast majority of bugs in today's software. The entire concept of null terminated strings and buffers is simply asking for trouble. DEC and IBM both had descriptor-based buffers, which gives the OS calls that manipulate buffers a way to block buffer overflows.
|
|
|
|
|
Got an email from Dell that some of my data had been compromised. They don't think any financial data was stolen. Another one, sigh.
It seems to me that the people on the dark side have it much easier. I have to screw around with passwords, text messages, and some ugly Microsoft security application on my phone to get to my data.
They just click. Doesn't seem right.
Oh well, every hundred years, all new people.
>64
It’s weird being the same age as old people. Live every day like it is your last; one day, it will be.
|
|
|
|
|
The fact that the only thing you get from the companies is an email with vague excuses like "We f***ed up, and your data are compromised. We are sorry, but it will not happen gain. Well maybe, but honestly, we do not really care, as it has no influence on our business. Too bad you susbcribed !" when they are hacked is the worst part of all. They do poorly, your data is exposed, but the get away with a simple email. This is crazy.
|
|
|
|
|
I'm rather selective about what information it is I'm being asked for, and if I can get away with BS answers, that's what they'll get.
I'd rather feed the beast that is Amazon and let them have my details, rather than spread around my credit card data to a dozen mom and pop shops who invest basically nothing to secure the data they collect.
|
|
|
|
|
At this point in time I don't even pay attention to these notices. As far as I can tell my entire financial history is on the dark web.
|
|
|
|