People in this thread are throwing around the term "smarter" a lot and I think we should avoid that. How quick you pick things up might be an indicator for being smart but it is only one aspect. The following are generalizations and there are always exceptions so keep that in mind.
What you will find in life is a lot of the people like you describe have generally shallow knowledge of a subject but are capable of ramping up quickly and filling out that deeper knowledge as needed. Meanwhile, the folks who tend to take longer and study more retain more of the knowledge and are more capable at using it without supplemental data or analysis.
It is the difference between knowing an answer and knowing enough to quickly find or intuit the answer.
Agreed, the comment I was replying to indicated the solution was to just eat something cheaper than eggs while ignoring the fundamental issue of food costs. I was trying to highlight that in my response to that post.
It feels disingenuous to approach this topic with the view that the eggs are the problem and people need to just eat fewer eggs.
The problem is the food cost increases and the eggs are just one example. It's called nuance and we've lost our ability to understand it. Stop trying to blame consumers for this when it is driven by profits.
Not necessarily. I can see an icon with some randomly-sized vertical lines and think of rain. Or an icon might have a mountain peak silhouhette that generates a random mountain peak. Symbolism doesn't work in the sense we can't just design something but I'd argue we could probably come up with something that is at least indicative of saving to people regardless of language. Obviously the floppy fills that for now but if we could go back and drive the adoption of the icon, what icon could we create that would most indicate saving to people regardless of technology.
(I understand there isn't a correct answer to this, just wanted to read people's thoughts on ideas)
This would work for the foreseeable future I think. At some point tech changes and although we could just update the icon as that happens I'm wondering if we can design something that is at least resistant to becoming obsolete (like a floppy or even hdd/ssd) and is mostly recognizable to most people. It's an impossible question but there could be some cool ideas that come up out of this post.
This would work as long as the device the user was using adopted localization properly and all applications supported all languages. Consider also there are people who can speak a language but aren't able to read it. Those are a small percentage but they exist.
The goal of this would be to come up with an icon that would be most recognizable as save to the most people and future people after languages have changed.
Yeah I think something along those lines is probably what we'd end up with. We couldn't do something that is truly universally understood to mean save but I think we'd get a large percentage of users who would make the connection instinctively.
lmao, well done!
No I get that but I'm asking that given what we know about symbols and how we process information, what would be a better icon that can indicate save without having to be taught? There is clearly no right answer here but is it even possible to create something that would work? Things like rain or clouds we can do because there we can see examples. Is there anything that indicates saving we could come up with?
Interesting concept, attempting to indicate something entering the brain/head/statefulness. I wonder if we could generalize it further so that race of underground mole-people would understand it as well (e.g. not a species-specific head).
This is all true but given the charge of creating a new icon that would be the "most recognizable" as save to the most people the first time they see it, what would that look like. The question is impossible to answer with a single thing as it's too vast and everything becomes meaningless eventually. But given everything we know of languages, the brain, how we perceive things, what would be a better icon we could design?
Yeah there is no reason at this point to change it as we just teach people that the floppy disk means save. I was wondering if we could come up with something that the user, at a glance, would generally identify as saving. What would that glyph look like. In other words, the arbitrary and established icon is what it is but with hindsight and thinking ahead what would be a better icon we could design. One that would convey "save" to the most people the first time they see it.
That's a fair answer. There is nothing saying the floppy disk can't work. By sticking with a symbol that has no actual bearing on function (from the perspective of the future people) you've abstracted the concept of saving away from natural language. However, you still place a computational burden on those future people/aliens/whatever where they need to be taught what that icon means.
Yeah you're right, but I think it will be interesting to hear what people come up with. It's similar to the nuclear waste warnings. Wikipedia Nuclear Waste Warnings
Yeah I probably should have qualified that with, "unless you're a municipal/city/state transportation system or in maritime."
You must design an icon for a save function that can be easily understood by anyone in the future. What does that icon look like to you?
We reached the point (some time ago) where the save icon being a floppy disk makes absolutely no sense to anyone born after a certain time. We could choose a more modern media format and use an icon of that instead, but we would run into the same problem once that media becomes obsolete.
What is a good icon for the function of saving something that can easily be understood by anyone regardless of language or the march of time?
Edit: I know it's not really an answerable question and is hard but the question is what would you come up with if tasks to design an icon. Given the constraints of the question, what are your best shots at coming up with something that fills the requirements and why do you thing it would work?
This is the reason.
I agree with everything you said but I think one thing that is often overlooked is how the boomers are virtually all lead poisoned. Gen-X and some Millennials as well but the Boomers took the brunt of it. They grew up with lead gas poisoning the air, lead pipes (well, a bigger percentage anyways) poisoning the water, lead tools poisoning the workers, lead bullets poisoning game, and so forth. Lead poisoning does some fucked up stuff to people's cognitive abilities. The lead problem still exists but the scale of the problem back when the boomers were growing up was on a whole different level.
Exposure to lead can result in a variety of effects upon cognitive functions including deficits in general intellectual functioning, ability to sustain attention on tasks, organization of thinking and behavior, speech articulation, language comprehension and production, learning and memory efficiency, fine motor skills, high activity level, reduced problem solving flexibility and poor behavioral self-control.
https://www.mwph.org/health-services/lead-treatment/poisoning-effects
Also not saying they have an excuse, just saying I think lead poisoning of > 1 sequential generation affected a lot of decisions. Most probably small but all of them adding up to set the stage for our current situation.
I think the 3 points are decent guidance in general but I feel you probably should have included some examples of when it doesn't make sense to follow them. Like everything in life, the actual realization of something is more complicated and we should provide guidance that speaks to nuances that might affect design/implementation decisions. It's something I think we lost (or the loss accelerated) within the last 15-20 years. Now everything is "you have to do this or you're terrible at programming" and the nuances are lost as the entire thing is framed in a way to try to grab attention/views. I don't mean to imply you're doing that here, just a general observation that articles and videos on programming rarely include more nuanced things.
Anyways, I agree with the overall content of the post but felt I'd provide some counter examples for each point. Admittedly they may not be the best but calling out something like them I think would be worth doing so readers have a wider view of the topic and can make more informed decisions.
Point 1: This is great general advice; be consistent with your names. However, it's simply not feasible in certain situations. Are you building a data access library? You're going to need dynamically named things. Maybe your system has thousands of tables (yes it happens, the real world is messy). I would much rather work on a system that uses dynamic names which enforces naming consistency than deal with some switch statement covering hundreds/thousands of things. Not only would the code be cleaner and easier to deal with that way but it would have the added benefit of running everything through the same naming logic and therefore helping with name consistencies.
Point 2: Name consistency is important (see end of above) but don't force it when it doesn't make sense. If you have two distinct systems/services that each operate in different domains but share some underlying data source. Maybe the enrollment service calls something an enrollment but the billing system calls it a line item. The freedom to name things appropriately for how they're used is important and should be another tool in your belt. It also helps business users/managers/etc.. and programmers have a shared understanding of domain terminology/requirements/etc..
Point 3: I'd agree for the most part and this is generally great advice. Sometimes it makes sense to go hierarchical. For example human readable configs can benefit from hierarchical structures since we like to process information by grouping things. I'd rather just have a json or yaml section called DataSources than have to repeat the "datasources.datasource1.name", "datasources.datasource2.name" and so forth for every single datasource defined in the config.
I think the points you made are great. We should use them when appropriate though and knowing when it's appropriate or not is something we should try to teach along with the rules themselves.