dcsimg
Results 1 to 28 of 28

Thread: Last 5% of the project takes 50% of the time to complete...

  1. #1

    Thread Starter
    Hyperactive Member
    Join Date
    Feb 2014
    Location
    Norfolk UK (inbred)
    Posts
    370

    Last 5% of the project takes 50% of the time to complete...

    They say that this is true, that the last 5% of the project takes 50% of the time to complete... I have just found that is true.

    I was working on my mini-project:



    http://www.vbforums.com/showthread.p...gs-Enhancement

    - and I had one bit of functionality that I had planned to add, a bug fix regarding embedded icons in DLLs and a blocking horizontal slider problem I couldn't get my head around. On top of that a code trim was required to remove redundant code, tidy up variable declarations and scoping, add comments, credits and test for quality using rubberduck. Then test on other o/s, Windows 10 and XP.

    The project was basically done and working and all I had to do is the tidying up. So I took a backup and started. I transferred to another faster system and that took half a day in itself to get all the tools installed and ready. The work was then 90% complete but instead of a few hours it took days, rubberduck told me of all my code faults and I tediously went through each and every one, fixing and fixing - then it was done and I was ready to do the final testing. Then the mouse froze...

    The system crashed. It took the hard drive with it. I recovered the project but it is corrupt and the program crashes with no error taking down the IDE and giving no clue as to what is wrong.

    I am now recovering the partition, the o/s, the data and my project and that has taken the machine all night, then it will be an o/s reinstall, reinstall VB6 and ALL my tools, all the programs that were on that drive, all the data. Then it will be in a state when I can probably begin that final 5% again from scratch...

    I've lost those days... and now I have even more tasks to achieve. It feels like I approached the finish line on a marathon and they've just told me to run back and collect my entry form.

    All I had to do was take another backup part the way through and I'd have been alright. I still have the initial backup of course and I have the previous set of code on the development system so all is not lost, but - yes, it just proves to me that the last 5% can take the majority of the time.

    Why is that?

  2. #2
    Frenzied Member wqweto's Avatar
    Join Date
    May 2011
    Posts
    1,578

    Re: Last 5% of the project takes 50% of the time to complete...

    Quote Originally Posted by yereverluvinuncleber View Post
    Why is that?


    Do you see the captions of these frames? For 95% of the users it's ok to have the top pixels missing but still you have to take care of the other 5% I guess :-))

    Polish is optional but I've noticed that all these application inconsistencies add up in the long run. If your users are going to see/use your forms all day long these minor idiosyncrasies will bug them unconsiously and at some point they start hating the whole app for no apparent (to them) reason.

    cheers,
    </wqw>

  3. #3
    Fanatic Member 2kaud's Avatar
    Join Date
    May 2014
    Location
    England
    Posts
    635

    Re: Last 5% of the project takes 50% of the time to complete...

    This is a variation of the Cargill rule that states that 'The first 90 percent of the code accounts for the first 90 percent of the development time. The remaining 10 percent of the code accounts for the other 90 percent of the development time.' This, of course, adds up to 180% of the original development time! See https://en.wikipedia.org/wiki/Ninety-ninety_rule
    All advice is offered in good faith only. You are ultimately responsible for the effects of your programs and the integrity of the machines they run on. Anything I post, code snippets, advice, etc is licensed as Public Domain https://creativecommons.org/publicdomain/zero/1.0/

    C++17 Compiler: Microsoft VS2019 (16.3.8)

  4. #4

    Thread Starter
    Hyperactive Member
    Join Date
    Feb 2014
    Location
    Norfolk UK (inbred)
    Posts
    370

    Re: Last 5% of the project takes 50% of the time to complete...

    Quote Originally Posted by wqweto View Post


    Do you see the captions of these frames? For 95% of the users it's ok to have the top pixels missing but still you have to take care of the other 5% I guess :-))
    </wqw>
    That was an old image of a previous version, all the visuals are now taken care of (minus any bugs yet to be discovered)

    The Cargill rule is currently being obeyed to the letter.

  5. #5
    PowerPoster Elroy's Avatar
    Join Date
    Jun 2014
    Location
    Near Nashville TN
    Posts
    5,799

    Re: Last 5% of the project takes 50% of the time to complete...

    I've got two comments here.

    1) I certainly agree with wqweto's observation. I think we should all take the time to be meticulous in our code and interface design. To me, this means well commented code, well indented code, attention to detail with respect to form design, and just an overall neurosis about getting things perfect. It's amazing but many of my users are the same way.

    This reminds me of when I still used the MS Sans Serif font. At some point, I started running into machines that didn't have this installed, and Windows would do a substitution. In some cases, these substitutions caused labels to overrun. Even though it didn't hurt function, several of my users complained.

    2) I just don't agree with this 5% to 50% rule. If it's just some idea, and we pop the IDE open and start coding, and then it turns into something worthwhile ... sure, the 5% to 50% rule may apply. However, if we're talking about a planned project, I often find the opposite is true. But let me outline how I go about these planned projects.

    These days, I often walk into a situation where my user has an "idea" of some enhancement they want. My first order of business is to have discussions with them about what they actually want, attempting to identify all the "got'cha's" and issues they didn't consider. Next, using Word, I type up a set of specifications for the work, mocking up any user-interface forms that will be included in the project. Any mathematical calculations or algorithmic pipelines (as well as any new databases, tables, and fields) will also be outlined in this document.

    This act of creating written specifications often identifies additional considerations, which I hammer out with the user. After this is all agreed upon, the first thing I almost always start on is the development of the forms (with little or no code behind them). This is sometimes tedious, taking a couple of days. Once these are developed (with tab orders and control positioning all worked out), I'll show them to the user. And this is sometimes an iterative process where little tweaks are made to get things just like the user wants.

    And then lastly, I code it all up. This is never trivial, but it's often a part where I just crawl into my own world to get it done. Actually, I might splash around in these forums during this phase. For one, sometimes the other programmers here can give me ideas on how to solve some programming problem. And for another, it sometimes just serves as a distraction to clear my head from intensive coding.

    But, as this coding proceeds and nears completion, I'm sometimes amazed when I come to the end. I do take notes so I don't forget to go back and clean-up various loose ends; but often, I write the last line of code and then think, "wait, am I done? There isn't more?". Sure, there's alpha-testing to be done, but I tend to do as much of that as I can while I'm coding (in other words, I incrementally do my alpha-testing). And yeah, there's sometimes a bit of clean-up in the beta-testing (rollouts to user). But that last 5% is nowhere near 50% of the time nor work.

    ----------

    So, to recap and to be somewhat judgmental, I think this 5% to 50% ratio is possibly indicative of a poorly planned project, or maybe some "idea" we're just toying around with. Sure, an idea takes little time to come up with, and to actually implement that idea takes a great deal more time.

    Y'all Take Care,
    Elroy
    Any software I post in these forums written by me is provided “AS IS” without warranty of any kind, expressed or implied, and permission is hereby granted, free of charge and without restriction, to any person obtaining a copy. Please understand that I’ve been programming since the mid-1970s and still have some of that code. My contemporary VB6 project is approaching 1,000 modules. In addition, I have a “VB6 random code folder” that is overflowing. I’ve been at this long enough to truly not know with absolute certainty from whence every single line of my code has come, with much of it coming from programmers under my employ who signed intellectual property transfers. I have not deliberately attempted to remove any licenses and/or attributions from any software. If someone finds that I have inadvertently done so, I sincerely apologize, and, upon notice and reasonable proof, will re-attach those licenses and/or attributions. To all, peace and happiness.

  6. #6

    Thread Starter
    Hyperactive Member
    Join Date
    Feb 2014
    Location
    Norfolk UK (inbred)
    Posts
    370

    Re: Last 5% of the project takes 50% of the time to complete...

    Well, I'm a Project Manager by trade and I'd never let overrun or scope creep happen in one of my projects but this is different, this is one of MY creations and I'm the developer and client. Scope creep is part of the design... as I'm using the development process to pick up skills as I go.

    Actually, I wasn't genuinely looking for an answer I was just complaining about another law coming into play at the last stages of my project, Murphy's law.

  7. #7
    PowerPoster Elroy's Avatar
    Join Date
    Jun 2014
    Location
    Near Nashville TN
    Posts
    5,799

    Re: Last 5% of the project takes 50% of the time to complete...

    Ahhh, yes. I know about scope creep quite well, in both my own "play" projects as well as "contract" projects. Regarding my contract projects, that's why I do my best to nail down the specifications before any coding (or any form design) work begins. It's still often the case that the users' gears start turning after specifications are signed-off. And that's fine. But I don't really see that as the same project. Yeah, sure, we'll have discussions, and I might put accommodations in the back of my mind, but I always argue to have them allow me to finish the project as-outlined before we start enhancing it.

    And, the same is true of my play projects. A perfect example is my little PNG/TGA editor tool. I really just wrote that tool to learn a little something about the GDI+. However, once I got it up and running, I kept adding more bells-and-whistles to it, with some of those bells-and-whistles taking as much time (if not more) than the original project. Also, that entire project was written without outlining a single word of specifications. But IDK, that was just one of those "having fun" things, honing some skills that may come in useful down the road (which happens amazingly often).

    Take Care,
    Elroy
    Any software I post in these forums written by me is provided “AS IS” without warranty of any kind, expressed or implied, and permission is hereby granted, free of charge and without restriction, to any person obtaining a copy. Please understand that I’ve been programming since the mid-1970s and still have some of that code. My contemporary VB6 project is approaching 1,000 modules. In addition, I have a “VB6 random code folder” that is overflowing. I’ve been at this long enough to truly not know with absolute certainty from whence every single line of my code has come, with much of it coming from programmers under my employ who signed intellectual property transfers. I have not deliberately attempted to remove any licenses and/or attributions from any software. If someone finds that I have inadvertently done so, I sincerely apologize, and, upon notice and reasonable proof, will re-attach those licenses and/or attributions. To all, peace and happiness.

  8. #8
    Super Moderator Shaggy Hiker's Avatar
    Join Date
    Aug 2002
    Location
    Idaho
    Posts
    34,189

    Re: Last 5% of the project takes 50% of the time to complete...

    In this case, I'd say you were just a victim of bad luck. I don't think that your total system crash was due to the software or the IDE. You said it was a new system, and those are more prone to catastrophic failures. I think you just got one.
    My usual boring signature: Nothing

  9. #9
    Super Moderator RobDog888's Avatar
    Join Date
    Apr 2001
    Location
    LA, Calif. Raiders #1 AKA:Gangsta Yoda™
    Posts
    60,697

    Re: Last 5% of the project takes 50% of the time to complete...

    I agree with shaggy but also it seems the rule of risk applies here. I recently had my boss get me a new computer and he forced me to swap during a project with a deadline approaching within 2 weeks. Needless to say that stuff always happens like missing serial numbers for 3rd party tools etc, being forced to upgrade them too caused problems upgrading the solution and a loss of 2 full days which I desperately needed. He learned the hard way that for next time he wont force the upgrade until after a project is done, now he will listen to me. He also wanted to swap out our development server with a new one but I got him to wait as already showed him the problems with the workstation swap. If there is a risk you have to plan for it, not during a test window with the state with a finite hard deadline!
    VB/Office Guru™ (AKA: Gangsta Yoda®)
    I dont answer coding questions via PM. Please post a thread in the appropriate forum.

    Microsoft MVP 2006-2011
    Office Development FAQ (C#, VB.NET, VB 6, VBA)
    Senior Jedi Software Engineer MCP (VB 6 & .NET), BSEE, CET
    If a post has helped you then Please Rate it!
    Reps & Rating PostsVS.NET on Vista Multiple .NET Framework Versions Office Primary Interop AssembliesVB/Office Guru™ Word SpellChecker™.NETVB/Office Guru™ Word SpellChecker™ VB6VB.NET Attributes Ex.Outlook Global Address ListAPI Viewer utility.NET API Viewer Utility
    System: Intel i7 6850K, Geforce GTX1060, Samsung M.2 1 TB & SATA 500 GB, 32 GBs DDR4 3300 Quad Channel RAM, 2 Viewsonic 24" LCDs, Windows 10, Office 2016, VS 2019, VB6 SP6

  10. #10
    Fanatic Member TTn's Avatar
    Join Date
    Jul 2004
    Posts
    576

    Re: Last 5% of the project takes 50% of the time to complete...

    Quote Originally Posted by RobDog888 View Post
    I agree with shaggy but also it seems the rule of risk applies here. I recently had my boss get me a new computer and he forced me to swap during a project with a deadline approaching within 2 weeks. Needless to say that stuff always happens like missing serial numbers for 3rd party tools etc, being forced to upgrade them too caused problems upgrading the solution and a loss of 2 full days which I desperately needed. He learned the hard way that for next time he wont force the upgrade until after a project is done, now he will listen to me. He also wanted to swap out our development server with a new one but I got him to wait as already showed him the problems with the workstation swap. If there is a risk you have to plan for it, not during a test window with the state with a finite hard deadline!
    Ah RobDog888, an original OG guru! Nice to hear professional input from you again.

  11. #11

    Thread Starter
    Hyperactive Member
    Join Date
    Feb 2014
    Location
    Norfolk UK (inbred)
    Posts
    370

    Re: Last 5% of the project takes 50% of the time to complete...

    Quote Originally Posted by RobDog888 View Post
    I agree with shaggy but also it seems the rule of risk applies here.
    Oh yes, the rule of risk applied and I did not heed it. When you are refactoring your code using something like Rubberduck, you need to take regular backups as it is bound to break something and you won't know which recent change did the damage. I should have taken regular backups.

    I come from a VMS background where file versioning is part of the o/s and you can always revert to a previous version of code by dint of the o/s doing the backups for you. It makes one lazy...

    I have rebuilt that system, scanned the drives, checked the memory, it is all supposedly good but now every 10 or so major changes I am testing the whole program and if it tests well I have been copying my source folder to folder.1, folder.2, folder.3 &c so as time progresses I can revert to a previous version if it is required, managing the risk of a total screw up.

    Another mistake was not following my own advice and failing to place the source folder on my data drive. I foolishly thought, as I was only testing, that I could make a folder on the o/s drive, something I never do, having been bitten by Windows profiles and other crashes before. When the o/s took the drive out (or vice-versa) my code was on the same drive and it died with it.

    The system had the potential to be unstable and I knew it. Risk! It is always good to hear other's horror stories as it reminds you to be more careful yourself.

  12. #12
    Super Moderator RobDog888's Avatar
    Join Date
    Apr 2001
    Location
    LA, Calif. Raiders #1 AKA:Gangsta Yoda™
    Posts
    60,697

    Re: Last 5% of the project takes 50% of the time to complete...

    Quote Originally Posted by TTn View Post
    Ah RobDog888, an original OG guru! Nice to hear professional input from you again.
    Thank you, I try to get on here as much as possible but both my programming job and side business take up ALL waking hours
    VB/Office Guru™ (AKA: Gangsta Yoda®)
    I dont answer coding questions via PM. Please post a thread in the appropriate forum.

    Microsoft MVP 2006-2011
    Office Development FAQ (C#, VB.NET, VB 6, VBA)
    Senior Jedi Software Engineer MCP (VB 6 & .NET), BSEE, CET
    If a post has helped you then Please Rate it!
    Reps & Rating PostsVS.NET on Vista Multiple .NET Framework Versions Office Primary Interop AssembliesVB/Office Guru™ Word SpellChecker™.NETVB/Office Guru™ Word SpellChecker™ VB6VB.NET Attributes Ex.Outlook Global Address ListAPI Viewer utility.NET API Viewer Utility
    System: Intel i7 6850K, Geforce GTX1060, Samsung M.2 1 TB & SATA 500 GB, 32 GBs DDR4 3300 Quad Channel RAM, 2 Viewsonic 24" LCDs, Windows 10, Office 2016, VS 2019, VB6 SP6

  13. #13
    Super Moderator RobDog888's Avatar
    Join Date
    Apr 2001
    Location
    LA, Calif. Raiders #1 AKA:Gangsta Yoda™
    Posts
    60,697

    Re: Last 5% of the project takes 50% of the time to complete...

    Quote Originally Posted by yereverluvinuncleber View Post
    Oh yes, the rule of risk applied and I did not heed it. When you are refactoring your code using something like Rubberduck, you need to take regular backups as it is bound to break something and you won't know which recent change did the damage. I should have taken regular backups.

    I come from a VMS background where file versioning is part of the o/s and you can always revert to a previous version of code by dint of the o/s doing the backups for you. It makes one lazy...

    I have rebuilt that system, scanned the drives, checked the memory, it is all supposedly good but now every 10 or so major changes I am testing the whole program and if it tests well I have been copying my source folder to folder.1, folder.2, folder.3 &c so as time progresses I can revert to a previous version if it is required, managing the risk of a total screw up.

    Another mistake was not following my own advice and failing to place the source folder on my data drive. I foolishly thought, as I was only testing, that I could make a folder on the o/s drive, something I never do, having been bitten by Windows profiles and other crashes before. When the o/s took the drive out (or vice-versa) my code was on the same drive and it died with it.

    The system had the potential to be unstable and I knew it. Risk! It is always good to hear other's horror stories as it reminds you to be more careful yourself.
    We all have been there and done that (lost data) but to different degrees. It is highly recommended to use a version control software like git, TFS, Subversion etc. They are much easier to work with and can house your repository on the internet or on a different server/computer.
    VB/Office Guru™ (AKA: Gangsta Yoda®)
    I dont answer coding questions via PM. Please post a thread in the appropriate forum.

    Microsoft MVP 2006-2011
    Office Development FAQ (C#, VB.NET, VB 6, VBA)
    Senior Jedi Software Engineer MCP (VB 6 & .NET), BSEE, CET
    If a post has helped you then Please Rate it!
    Reps & Rating PostsVS.NET on Vista Multiple .NET Framework Versions Office Primary Interop AssembliesVB/Office Guru™ Word SpellChecker™.NETVB/Office Guru™ Word SpellChecker™ VB6VB.NET Attributes Ex.Outlook Global Address ListAPI Viewer utility.NET API Viewer Utility
    System: Intel i7 6850K, Geforce GTX1060, Samsung M.2 1 TB & SATA 500 GB, 32 GBs DDR4 3300 Quad Channel RAM, 2 Viewsonic 24" LCDs, Windows 10, Office 2016, VS 2019, VB6 SP6

  14. #14

    Thread Starter
    Hyperactive Member
    Join Date
    Feb 2014
    Location
    Norfolk UK (inbred)
    Posts
    370

    Re: Last 5% of the project takes 50% of the time to complete...

    Yes, you are quite right and I have always insisted my teams use such a tool but when you are tinkering with your own code you cut the corners you might stick to when at work. It seems almost overkill to install a version control system for a mere home-grown utility and I have always relied upon my own back-up efforts. I might give that a re-think.

  15. #15
    Fanatic Member
    Join Date
    Apr 2017
    Posts
    550

    Re: Last 5% of the project takes 50% of the time to complete...

    Seems to be just the opposite with me. I spend forever at the start of a project but zip right through it during the end

  16. #16

    Thread Starter
    Hyperactive Member
    Join Date
    Feb 2014
    Location
    Norfolk UK (inbred)
    Posts
    370

    Re: Last 5% of the project takes 50% of the time to complete...

    Quote Originally Posted by Code Dummy View Post
    Seems to be just the opposite with me. I spend forever at the start of a project but zip right through it during the end
    You need to teach me how to do it like that.

  17. #17
    .NUT jmcilhinney's Avatar
    Join Date
    May 2005
    Location
    Sydney, Australia
    Posts
    103,238

    Re: Last 5% of the project takes 50% of the time to complete...

    I'd say that a big part of the issue is that we put the difficult/tricky/time-consuming/annoying stuff off until the end.
    a code trim was required to remove redundant code, tidy up variable declarations and scoping, add comments
    All of that really should have been done as you went along so it should not have been part of the last 5%. I'm not saying that I'm perfect in this regard either but as Elroy basically suggests, the better you plan and the better you do what you should do when you should do it, the less you will of the difficult/tricky/time-consuming/annoying stuff to do at the end.

  18. #18

    Thread Starter
    Hyperactive Member
    Join Date
    Feb 2014
    Location
    Norfolk UK (inbred)
    Posts
    370

    Re: Last 5% of the project takes 50% of the time to complete...

    Quote Originally Posted by jmcilhinney View Post
    All of that really should have been done as you went along so it should not have been part of the last 5%.
    Well, no. The whole point of a code review is to find out what mistakes you made and correct them otherwise if I was perfect then there would be no point in that review in the first place.

    Also, if you have had no previous exposure to those standards and are teaching yourself as you go then errors and bad coding practices will creep in, it is inevitable.

    In any case, I have found that the majority of coding issues were found in the 3rd party code that I imported into my project to do this or that and of course you don't tend to discover those bad coding issues if you haven't written the code yourself to your own high, exacting standards.

  19. #19
    PowerPoster
    Join Date
    Feb 2012
    Location
    West Virginia
    Posts
    12,946

    Re: Last 5% of the project takes 50% of the time to complete...

    In reference to the corruption and IDE crash. Thankfully this has never happened to me in VB but I did have an issue back in the GW Basic days that cost me a almost full days work. Apparently I had a typo in a variable name and of course there was no option explicit back then to catch the mistake. Anyway when I executed the code the result of the typo was the dreaded division by zero error which back in the day resulted in a system halted message and required a restart of the system.

    When I restarted the system the project would not load. I opened the file with a text editor and found that only the first 12 or so characters still existed the rest was just gone. Fortunately I had another copy on a different disc from the day before so all was not lost. I assume that was just some strange fluke as I have only saw it the one time and don't think I have ever heard anyone else mention such an issue. Needless to say I started making backup copies more often after that experience.

  20. #20
    Fanatic Member TTn's Avatar
    Join Date
    Jul 2004
    Posts
    576

    Re: Last 5% of the project takes 50% of the time to complete...

    The title of the thread can be ambiguous.

    When I brought up time delays in the rad thread I meant something like this:
    Five of one-hundred lines, can take 50% of the time to complete.
    That can be deceiving for a younger developer when they see rapid progress in the early stages.
    Once conceived to be plausible (proofed), the hard parts should be tackled when they come, in a particular order, not just first.
    It still adds up to 100% of the time though.

  21. #21

    Thread Starter
    Hyperactive Member
    Join Date
    Feb 2014
    Location
    Norfolk UK (inbred)
    Posts
    370

    Re: Last 5% of the project takes 50% of the time to complete...

    It was strange how the drive and system have all checked out well subsequently as being good... it does make me worry a bit. It reminds me of a data loss that occurred a year or so ago.

    A warning to the unwary. Backups and copies are all well and good but be wary of locating anything beneath the windows profile. A Windows profile loss is the worst to be feared...

    When you can see every file in your profile but each and every one is a zero byte length file, that can raise the hairs at the back of your neck.

    Since that occurred to me and I lost more or less everything stored there, I have never used any storage structure that Microsoft supplies except the NTFS filesystem itself. Remember the MS briefcase and the recent Onedrive user file removal?

  22. #22
    PowerPoster
    Join Date
    Feb 2012
    Location
    West Virginia
    Posts
    12,946

    Re: Last 5% of the project takes 50% of the time to complete...

    I always store all code on a different drive from the OS and in a shred folder that can be accessed by other PCs on the network. I generally try to keep copies of this folder on another drive in another PC and of course burn it to dvd from time to time just in case.

  23. #23

    Thread Starter
    Hyperactive Member
    Join Date
    Feb 2014
    Location
    Norfolk UK (inbred)
    Posts
    370

    Re: Last 5% of the project takes 50% of the time to complete...

    Very sensible.

  24. #24
    PowerPoster
    Join Date
    Feb 2006
    Posts
    20,628

    Re: Last 5% of the project takes 50% of the time to complete...

    Shred folders work best on an SSD. Their inherent instability and likelihood of catastrophic failure helps add entropy to secure data disposal.

  25. #25

    Thread Starter
    Hyperactive Member
    Join Date
    Feb 2014
    Location
    Norfolk UK (inbred)
    Posts
    370

    Re: Last 5% of the project takes 50% of the time to complete...

    Quote Originally Posted by dilettante View Post
    Shred folders work best on an SSD. Their inherent instability and likelihood of catastrophic failure helps add entropy to secure data disposal.
    Do you really find that to be true? I find that on laptops particularly, the small form factor and the tightness of space with poor cooling and excess heat from a mechanical drive (and all the other gubbins) leads to regular premature failure of hard drives well before SSDs are suffering. So many laptops are bunged up with fluff and the poor HD is the first to suffer. With the SSDs consuming much less power, less heat being generated and the poor fan whirring and cooling a lot less, failure rates on SSDs are bound to be lower than the mechanical HDs that also suffer from shock.

    I purchase a £20 SSD yearly and transfer across all the data using a cloning tool. £20 is enough to purchase a 256gb SSD now which still amazes me...

    I appreciate that all these limited spaces issues apply to laptops only. I do agree about the catastrophic loss of SSDs though, as it is often possible to recover a traditional HD when it fails, SSDs seem to just 'brick'.

  26. #26

    Thread Starter
    Hyperactive Member
    Join Date
    Feb 2014
    Location
    Norfolk UK (inbred)
    Posts
    370

    Re: Last 5% of the project takes 50% of the time to complete...

    I think this rule is fairly true. I've finished my utility and now I find I think I need to write an installer...

    My program has a few dependancies, three .ocx, a folder containing five sub-folders with a few hundred icons, a few image files and an .rtf. The installer I once used has no capability for adding and registering ocxs to the target, the VS packager wants you to add each file one-by-one to your list of dependancies, my sub-folders contain a few hundred files. Damn, I'm not doing that.

    Looked at Inno setup and it seems to need more scripting knowledge, that's fine but I wasn't expecting to do more programming and if I'm going to have to do any more it'll be in VB6.

    The ocx files are particular versions and may not be suitable for registering on a machine with newer versions. I'll need to check whether ocx are already present and also whether they are registered. The list seems to go on.

    Is there no VB6 utility already hand-crafted to do what we want? I am surprised that I haven't found it yet, am I looking in vain or is this just a symptom of Cargill's rule in play?

  27. #27
    PowerPoster Elroy's Avatar
    Join Date
    Jun 2014
    Location
    Near Nashville TN
    Posts
    5,799

    Re: Last 5% of the project takes 50% of the time to complete...

    Personally, I'd forget the OCX registration, and use the SxS technology that became available to us with VB6 SP6.
    Any software I post in these forums written by me is provided “AS IS” without warranty of any kind, expressed or implied, and permission is hereby granted, free of charge and without restriction, to any person obtaining a copy. Please understand that I’ve been programming since the mid-1970s and still have some of that code. My contemporary VB6 project is approaching 1,000 modules. In addition, I have a “VB6 random code folder” that is overflowing. I’ve been at this long enough to truly not know with absolute certainty from whence every single line of my code has come, with much of it coming from programmers under my employ who signed intellectual property transfers. I have not deliberately attempted to remove any licenses and/or attributions from any software. If someone finds that I have inadvertently done so, I sincerely apologize, and, upon notice and reasonable proof, will re-attach those licenses and/or attributions. To all, peace and happiness.

  28. #28

    Thread Starter
    Hyperactive Member
    Join Date
    Feb 2014
    Location
    Norfolk UK (inbred)
    Posts
    370

    Re: Last 5% of the project takes 50% of the time to complete...

    You know, this thread title is completely accurate.

    The design and initial creation of my utility was completed and the majority of the functionality was added quickly and easily. The GUI was working within two or three working days.

    The additional functionality that went beyond the original design was a little more tricky as I was re-creating controls that probably already existed but I wasn't aware of them. Still, no problem as they are my own design and they work how I want them to.

    Bug-fixing takes a long time. Testing, listing and fixing each one at my own slow rate was tedious and soul-destroying but you just have to knuckle down and get through them. Those that I found particularly hard to fix were keypress-related events as the focus shifted from the key event to the debugger and context was instantly lost. Finding out the limitations and sourcing 3rd party solutions was not part of the final 5% but the bug-fixing of subclassed code from 3rd parties that was required to handle transparencies was hard to debug given the resulting instability of the IDE.

    Creating a manifest took me ages, trying to determine the best method, finding the best advice and finally multiple attempts to create and embed a manifest and OCXs - I gave up as it was taking more time to build the package than the original design took. I tried to remove the need for external dependencies altogether and that took ages.

    Looking for equivalent code to replace the OCX's I was using was painful, first of all trying to find it, then finding out the limitations of the code as supplied and how to extend its functionality using Windows APIs so it corresponded with what was provided in the MS wrapped version.

    Oh, yes... Windows APIs and how painful they are to use but how essential. I learnt a lot that I did not know I needed to know.

    Testing the final package on Win XP, 7 and 10, ironing out the platform-specific bugs, adjusting the help file to cater for the differences, finding a package tool that does not require learning a new method of scripting.

    Building a tool to perform the registration of a single or multiple OCX automatically. Always surprised that such a tool has not been built by the community already! Where are the essential community tools? I know we have the code bank but the 'official' community-recommended tools to do this or that, to overcome typical problems encountered by a VB6er. a Great forum and marvellous contributors but - maybe it is my naivete but I expected more after so many years. I thought you'd have an official IDE replacement, a dedicated package manager &c after all these years of potential development.

    Because of all this, I'd say 100% certain, the last 5% of a VB6 project takes 50% of the time to complete... if not a LOT more.
    Last edited by yereverluvinuncleber; Sep 23rd, 2019 at 07:46 AM. Reason: more!

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  



Featured


Click Here to Expand Forum to Full Width