<< >>
justin = { main feed , music , code , askjf , pubkey };
[ <<< last (older) article | view in index | next (newer) article >>> ]

September 14, 2023
inefficient programming

Someone asked if I would post something about programming. I wish I had something interesting to offer. The best I can do is describe an area in our current work where there's a considerable productivity drain ("technical debt", I suppose).

We're still using Windows .rc files for dialog boxes. VC6 is my preferred dialog editor, but it has a limit of something like 32k or 64k controls in total for the entire .rc file, if you exceed that it crashes. We've long exceeded that, so now we pretty much edit .rc files by hand with lots of trial and error (I don't seem to be getting any better of adding/subtracting fixed values to the Nth column of a bunch of lines). We could temporarily trim the file, do the edits, then restore the rest, but meh. Or we could write a .rc file editor lol. At any rate it's completely inefficient.

On a more specific points related to that, adding options to REAPER's preferences takes far too much work. There's the manual .rc file editing, the juggling around of options in a fixed amount of space, moving things to other tabs, etc. It's stupid and a time suck. But there's no reasonable alternative without a ton of extra work. Some day, maybe.

So anyway, it's often the case where we want to add something simple, and a good half of the work is spent with UI nonsense. Yes yes we could move all of our preferences to a list of attributes and make it all generated from data and that would be great but that would be a huge project.


People ask about making a mobile sequencer. The underlying core of a DAW would be the same, but doing the UI would require basically a separate implementation to be useable. I don't really want to maintain two DAWs. Also phones bleh (x 1000 -- the ecosystem, the lockeddownness, the lack of keyboard, the mercy of the OS, etc). :/

Posted by Tale on Fri 15 Sep 2023 at 02:27 from 77.170.68.x
Just thinking aloud... Maybe you could permanently split up the RC file into a bunch of smaller ones, and then use an additional build step to merge them before compiling the resulting RC file.

Posted by Justin on Fri 15 Sep 2023 at 13:21 from 71.105.40.x
or a little helper script which chunks-up the .rc file and recomposes it for commit...

Posted by wasereb4 on Fri 15 Sep 2023 at 18:24 from 83.135.15.x
It was me asking. :) What concerns me, I did find it interesting to get a bit of insight in internal REAPER development, so thanks.

Maybe naive, but using a newer version of VC/VS (which doesn't have this issue?) wouldn'b be an option?

Posted by Justin on Fri 15 Sep 2023 at 22:03 from 71.105.40.x
Yeah, I should try 2005 on that, hopefully they fixed that issue. It will go and reformat _everything_ though, but maybe it's about time to bite the bullet. The other thing is that it might tweak the syntax in such a way that it breaks SWELL's .rc parsing. Things to investigate!

Posted by Justin on Fri 15 Sep 2023 at 22:04 from 71.105.40.x
(Or VC2013's resource editor, but I mostly use the express version of that which doesn't include a resource editor, heh)

Posted by User on Tue 19 Sep 2023 at 05:54 from 95.134.60.x
If you were a corporation you could just assign a task to the team and let them sort this out.

Posted by Justin on Tue 19 Sep 2023 at 23:13 from 71.105.40.x
If I were a corporation I wouldn't get to write articles about programming, because corporations can't write.

Posted by Justin on Tue 19 Sep 2023 at 23:19 from 71.105.40.x
(ftr we have a corporation but it's still composed of people etc etc...)

Posted by Gio on Tue 19 Sep 2023 at 23:44 from 85.74.137.x
In the past you have helped me with .rc generation for vc11, I have been using vc11 the last decade or so with swell. I would like to point out some things: a) .rc encoding can be annoying at times - you realize that something is not right the moment you try to use the swell parser and you have to resave to correct encoding and try again (doesn't happen very often but it does) b) it looks like that the resource editor in vc11 does not like XP compatibility (platform toolset) errors popup when you try to open the .rc file. Hopefully those issues are fixed in later versions but I haven't try...

Posted by Justin on Wed 20 Sep 2023 at 18:25 from 71.105.40.x
I just reprocessed our .rc files using the vc2013 resource editor, for our .rc files anyway it works fine for swell.

Posted by crusher on Mon 01 Apr 2024 at 15:21 from 94.21.48.x
Ungodly crap! I've not used resource compiler since like win98?
Guess that has to do with only the compiler being "free" and not wanting to pirate the IDE..
You may try "RisohEditor" that is open source, 3MB compiled.
(No idea how "good" it may be compared to anything else, I am not using Windows for a decade now, unless have to.)

Posted by rob on Thu 04 Apr 2024 at 00:04 from 70.188.240.x
so the world needs a drag and drop dialog editor of old. like the visual basic 6 era. godot maybe close.

Add comment:
Human?: (no or yes, patented anti crap stuff here)
search : rss : recent comments : Copyright © 2024 Justin Frankel