|
I put together the two suggestions (M-W thesaurus and wheel of names). I pasted the list of related words in wheel of names and a clairvoyant spin produced the right answer: WASH. Like in: if you don't know what to name it, it's a wash; any name is as good as the next.
Mircea
|
|
|
|
|
Perfect task for Copilot.
I gave it the entire text of your original post and here is Copilot's response.
Copilot said: Ah, the eternal struggle of naming things in software development! It’s a challenge that many of us face, and it’s perfectly normal to fret over it. After all, a good name can make your code more readable and maintainable, while a poor one can lead to confusion and frustration.
Here are a few strategies you might consider when naming your new components:
Descriptive Names:
Aim for names that clearly convey the purpose or functionality of the component. For example:
FilterPanel: If your component handles filtering functionality.
FilterOptions: If it’s related to filter configuration.
FilterSelector: If it allows users to choose from different filters.
Think about what the component does and choose a name that reflects that.
Domain-Specific Terms:
Consider using terms from your project’s domain or industry. For instance:
TagCloud: If your component deals with tags.
SearchCriteria: If it represents search filters.
SortDropdown: If it handles sorting options.
Using domain-specific terms can make your code more intuitive for other developers.
Avoid Generic Names:
As you mentioned, names like “NewFilter” or “Filter2” aren’t very helpful. They lack specificity and might cause confusion down the road.
Instead, opt for more meaningful names that provide context.
Be Consistent:
If your existing components follow a certain naming convention (e.g., “FilterGroup”), try to maintain consistency.
Consistency makes it easier for developers to understand the relationships between components.
Avoid Abbreviations:
While abbreviations can save keystrokes, they often sacrifice clarity.
For example, prefer FilterConfiguration over FilterConfig.
Think About Future Iterations:
You’re right to consider future-proofing your names. Think about how the component might evolve.
Instead of “Filter2,” consider something like “AdvancedFilter” or “EnhancedFilter.”
Remember that there’s no one-size-fits-all answer, and different projects and teams have varying conventions. Ultimately, choose names that make sense in your specific context. And don’t worry—you’re not alone in this naming struggle! 😄
|
|
|
|
|
Filter2024
or
FilterTOS
FilterTNG
FilterDS9
FilterVGR
So old that I did my first coding in octal via switches on a DEC PDP 8
|
|
|
|
|
Yeah, I thought if there's no additional context beyond versioning a date works well (i.e. your `Filter2024` suggestion), as you shouldn't be refactoring multiple times per year, and keeping track of dates is easier than using any versioning system (e.g. if one component didn't get redefined when doing the v2 work, when you refactor again does that component jump straight to v3, or should it be the v2 of that component despite being v3 of the whole / etc).
|
|
|
|
|
FilterNew, Filter2, etc, as you put it, are bad options.
Try to add a bit of context to the name to differentiate it from other filters you may have elsewhere. What type of thing it's supposed to be filtering. If it's intended to filter items that all have the same interface (IBlob) or share a common base class (Blob), maybe BlobFilter. That sort of thing. Don't overthink it.
|
|
|
|
|
GefilterFish
Cheers,
Mike Fidler
"I intend to live forever - so far, so good." Steven Wright
"I almost had a psychic girlfriend but she left me before we met." Also Steven Wright
"I'm addicted to placebos. I could quit, but it wouldn't matter." Steven Wright yet again.
|
|
|
|
|
|
Colonder.
It doubles as a filter AND a calendar component for enterologist offices.
|
|
|
|
|
If you don't get over using "2", you will eventually have the same problem again, and you will forget which is the current one.
|
|
|
|
|
OMG, you've just reminded me that Microsoft itself is very much guilty of that right in plain ol' Win32. I don't remember what component exactly--something to do with retrieving network configuration data--and they oh-so-wisely chose to append "2" at the end of some function names (and structs) to differentiate them from previous versions (you can't just remove functions from the standard Win32 set without breaking stuff). Someone remembers what I'm talking about, I'm sure, I can't be bothered to look it up right now. I'm pretty sure I also saw a "3"...proving your point.
With names like that, nobody but the original author, who is intimately familiar with the underlying implementation, ever stands a chance of remembering which does what, and you constantly have to go back to documentation. Assuming it exists and is adequate enough to point out the differences.
I absolutely believe in the saying that properly naming things is, indeed, one of the hardest computer science problems.
|
|
|
|
|
InternetExplorer as a component: WebView.
Edge as a component: WebView2.
(This is an unresearched posting, but pretty close if wrong)
|
|
|
|
|
Jeez, I didn't even think about that one, and I've just spent quite a bit of time migrating over an old piece of code leveraging WebView to WebView2.
At least in this case it's pretty clear WebView was built around IE, and WebView2 is the Edge version, and I just "naturally" think about it in those terms. There are components however where you just don't know unless you check the documentation.
|
|
|
|
|
|
Does your programming language support namespaces? Then I‘d stay with Filter but put it in a different namespace. Then you would ‚only‘ need a name for the namespace. During a transition phase you must specify the namespace, if both types can be used in parallel.
|
|
|
|
|
Looking for recommendations here...
I'm using Oracle Box VM. When I RDC into it, strange things happen.
First, Copy & Paste no longer works. Not Host to Remote, I'm talking about Copy & Paste INSIDE RDC. Select text, copy -> paste - Nothing.
It's also REALLY slow. I've tried various things like restarting rdpclip.exe. Still can't copy & paste.
If I work through the OracleBox window, everything is fine - except I can only use one monitor. Anyone know of a decent replacement that allows dual monitors?
NOTE: I don't want to TOGGLE between monitors, I want full use of both monitors.
Thanks
In theory, theory and practice are the same. But in practice, they never are.”
If it's not broken, fix it until it is.
Everything makes sense in someone's mind.
modified 28-May-24 15:22pm.
|
|
|
|
|
I use RDC on a dual-monitor Windows 10 system (left monitor) to connect to a single-monitor Windows 7 system (right monitor). I can copy & paste between the two. Your experience is different, though, correct?
"One man's wage rise is another man's price increase." - Harold Wilson
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
"You can easily judge the character of a man by how he treats those who can do nothing for him." - James D. Miles
|
|
|
|
|
I'm taking about copy & paste INSIDE RDC. Not from Host to Remote
In theory, theory and practice are the same. But in practice, they never are.”
If it's not broken, fix it until it is.
Everything makes sense in someone's mind.
|
|
|
|
|
I just now tried that, too, and it works as expected. I was using a couple of Notepad windows.
"One man's wage rise is another man's price increase." - Harold Wilson
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
"You can easily judge the character of a man by how he treats those who can do nothing for him." - James D. Miles
|
|
|
|
|
I have the exact same configuration and all is working fine.
|
|
|
|
|
I use plain old mstsc.exe (the standard RDP client), and it does work with multiple monitors, as long as they're adjacent. The trick is to make sure your .rdp file contains the correct monitor IDs - and they're NOT necessarily the same as those reported by the Display Settings utility. To get the correct monitor IDs mstsc.exe recognizes, run:
mstsc /l
...which will enumerate your monitors (the ID you need) and the resolution and coordinates they're running (that should be your indicator as to which monitor that line represents). In my case, as I'm writing this, it shows monitors 1, 3 and 5 (even though I only have 3 physical monitors hooked up) and based on the resolution shown, I know the correct IDs are 1 and 5.
Therefore, my .rdp file contains the line:
selectedmonitors:s:1,5
You CANNOT set this purely by using mstsc.exe's UI - this has to be done by manually editing the .rdp file with some text editor.
There's other settings that can be written to the .rdp file through the UI (telling it to use multiple monitors, etc). I'm not certain which of the following are necessary, but along with the line above, I also have these, which are probably related:
screen mode id:i:2
span monitors:i:1
use multimon:i:1
Bottom line is, I suggest you enable multiple desktops using the mstsc.exe UI, save the .rdp file, close mstsc.exe, and then manually tweak the content to ensure (a) the 3 lines above are there and (b) adjust the selectedmonitors line based on the IDs you're getting back.
Note that those IDs can change just by rebooting your system. It's annoying, but I don't know of any solution for that. Sometimes "#5" will become "#4", so I have to change that one line. If it goes back to #5, I change it back.
I also use mRemoteNG, but I never tried to get it to use more than one monitor at a time.
A co-worker of mine uses RDCMan from SysInternals, but I don't think it supports multiple monitors (or if it does, it's all-or-nothing).
|
|
|
|
|
While I appreciate you taking the time to reply, I'm not sure it answered my post.
When I'm in RDS, Copy & Paste doesn't work (Inside RDC, not Host to Remote. Copy text, past, nothing!), and the whole experience is reallllly slow. I've tried multiple 'fixes' over & over, with no luck. so I'm looking for an alternative.
In theory, theory and practice are the same. But in practice, they never are.”
If it's not broken, fix it until it is.
Everything makes sense in someone's mind.
|
|
|
|
|
Sorry, I thought you were focusing on multi-monitor support.
But, I do tend to stick with mstsc.exe, and generally, copy and paste does work.
|
|
|
|
|
I use Royal Terminal Services and have for years. The guy who created this is a CodeProject member and an excellent guy (naturally) to boot.
cheers
Chris Maunder
|
|
|
|
|
Thanks!
In theory, theory and practice are the same. But in practice, they never are.”
If it's not broken, fix it until it is.
Everything makes sense in someone's mind.
|
|
|
|
|
I see your copy+paste not working and rise it to copy+paste working across users.
I copy something in my session and you can paste it in your session.
That was RDC to a Windows Server 2012... really funny
M.D.V.
If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about?
Help me to understand what I'm saying, and I'll explain it better to you
Rating helpful answers is nice, but saying thanks can be even nicer.
|
|
|
|
|