Thanks, as a software engineer, always a problem solver, who just follows an dreams of solutions to social problems (I've once led a software project for one of these, but not more), breaking down the mega category of abusers into subcategories with mechanics of their actions changes my mindset from useless anger into a problem solving one.
HN user
aljgz
I'm a passionate software engineer. In my past experience I've created software that won robocup championship, a desktop publishing system, sales software, goldsmith accounting, a software similar to Oracle Hyperion and was in charge a a few microservices with tens of millions of users and thousands of requests per second. Currently working at a Big Tech firm, still working on small personal projects. devalivan23@gmail.com
Really sad. I read a lot of psychology. But I've never encountered psychology of child sexual abuse (I know there is if I look it up, but that's my point, it should be shared around, discussed, challenged).
Why would some adults find kids sexually attractive? Is it abusive/aggressive behavior manifesting itself in sexuality? Or is it sexuality channeled in the wrong direction? If it's the second, is it out of desperation, and would happen less if the culture makes it easier for them to satisfy their needs with adults, or would it happen regardless? On the victim's side, are the shy and less social ones more in danger, or the socially active ones? From my social scientist friends I hear a lot that most child sexual abuse is domestic. What are measures that a society can take to prevent these, without turning the society into a surveillance state, which will ultimately harm everyone more, including the children? What can be done to make sure children speak up, so that such behavior is dealt with at the beginning (and maybe while the more terrible things have not happened yet), and not turn into a multi-year childhood trauma?
What are signs (and early signs) on the abuser's side and the child's side? How to deal with these signs?
Are there statistics backing up the "VAST" majority claim?
While on statistics, I wonder, are there reliable statistics about child abuse of different types? Studying correlations with other social metrics, like sex education, liberal/conservative, policies regarding prostitution, and others can provide support for/against decisions.
Not that I hope these will impact people's and governments' choices, but I want to challenge my intuitions.
One joy of online shopping, especially for people doing it in an impulsive and/or addictive way (it's not really rare) is the satisfaction they get from the imagination of having it.
An acquaintance of mine was buying many and not wearing most, as she did not attend that many social occasions. Still, she kept buying.
Eventually, she had to face the actual problem in her life that bothered her. She ended up dealing with it, terribly.
Oh my! Agree 100%. Tangentially, I love games without motion blur, with perfect and unrealistic graphics, and they happen to need much less intensive graphics. Also, animations with intentionally unrealistic dynamics and appearances that are well thought and go well with their invisible (to my non-artist eyes) contribution to the story. Not a big fan of extreme depiction of emotions in some styles of anime or cartoons though, to be clear.
I was excited when seeing things that are wonderfully realistic, but just as a sign of how far we have gone in computer graphics.
As a programmer who uses math heavily, I can answer this. As a programmer, your intuitive understanding of the world is infinitely important. You use it to formulate ideas, rule out solutions that would not be feasible, have an estimate of the expected cost and quality of solutions, etc.
Being able to dig deeper is important, but what's more important is to have an intuitive understanding of many many things: psychology, economy, finance, physics, art, etc. It's important to know the limits of your familiarity with any of these. For instance, my understanding of the fundamental practices in Accounting is really good (I've led a budget aggregation software for a huge conglomerate), but details is bad (tax rules for each industry, etc).
When I needed to create a software for optimizing stone cutting, I needed to know enough from computer vision, computational geometry, and optimization to know that our solution is feasible, task team members to learn what they need to do, and get into implementation, debugging and optimizing with them when needed.
After that, I still can't write code in computational geometry that handles all corner cases.
It's really good if we know everything with infinite precision, but for a programmer it's not efficient. We need to know where to stop.
My experience has been reasonably consistent. My main DE is KDE, it switches between light and dark based on my location and time. It switches to warmer colors at night. I have never had a problem in the applications I use. I occasionally switch on the fancy effects like windows fall apart when I'm in the fun mode, or I'm showing something to friends, as a bit of fun makes everything more interesting, and all work perfectly well.
*retired -> retries
New cars are UX nightmares. I'm driving an electric Toyota bz4x. Lovely mechanics, but the general UX (some are because of Android Auto) is terrible. The remote's lock/unlock don't do anything when the car is on. Example: I'm by the trunk and it won't open unless I go back to the driver's door and unlock the doors. App's remote function has too many conditions to do anything. For instance, I'm resting in the back seat and want to turn on the car for some air conditioning, but it says: the doors should be locked, the key fab should be out of the car to start the car.
I'm listening to an audio through a webpage, as soon as I change the volume it starts my last music. This is really annoying. I should guess the right volume, unlock my phone, resume my audio. Old physical volume knobs only changed the volume, not start one of the few apps they know about.
Oh and if I've been listening to loud music and now someone's in the car, I can't lower the volume without starting the music. I want to start with a low volume and then increase it.
These are some of the many stupid UX decisions. I would still not drive an old car. Especially ICE. But would pray that the equivalent of Frame.work appears, I can get an open source car with an open source infotainment.
With Chevrolet starting to sell DIY EV packages and the general simplification of the mechanics of EV cars, I believe such a thing would eventually happen.
That is, until you have silent corruption of data because the admin tool is not aware of the new field you added to the website, and it's not written with forward compatibility in mind. (Have seen this lots of times)
Or a downstream service is overwhelmed and suddenly all the retired you added to different places DDOS your own service. (Also have seen this lots of times)
Some quality problems you can fix later. With others, once they happen, there's no "later"
Agree about Windows Server. You can run SqlServer on Linux though. I'm not aware of your specific addons, but the Sql Server itself works perfectly well on Linux.
Indexed views are much faster than trying to achieve the same result with triggers. Triggers have serious concurrency limitations, and you do recalculations even when the fields you depend on are not touched.
Indexed views are not much worse than indexes. Of course, when they refer to other tables there are underlying data lookups, but in our experience when we moved from triggers to indexed views, large scale data ingestion went way faster.
Where we used it: While revamping a large scale sales program, we stored the warehouse in/out in one table, and several things like current stock were calculated using indexed views.
Bonus: Using Snapshot concurrency control, you can do many things concurrently, and only when they both updates to a certain product in the same store you'll get the second transaction failing (which could be retried on the backend).
The fact that they are completely in-sync with your data is amazing.
I've used Postgres, Oracle, MsSql Server, and MySql in serious projects, no extensive experience with Sqlite, which I know is an amazing player.
These days, I do myself a favor and always avoid Oracle and MySql/MariaDB.
Postgres is amazing, and the two big things I wished it had:
1. lightweight connection; connection bouncers improve the situation, but you still have an unreasonably high memory footprint per concurrent connection.
2. Synchronously updated materialized views (Sql Server calls them indexed views). These are incredible tools in complex data situations. I saw a project struggle with complex technical implementations that would be elegant, trivial and always correct with indexed views.
Sql Server can be costly, but in many cases the benefits it provides are totally worth the cost.
Choosing the data store carefully prevents lots of future trouble.
Dehumidifiers will end up being more efficient in one mode. When the manufacturer creates the new ones, a firmware update moves all legacy devices to the less efficient mode.
I feel the same.
Sometimes, I work against this and start conversations.
Rarely people are annoyed. Too often, they seem happy someone breaks their shell, they just don't want to be that person who takes the first step.
Every time I see a new person I still feel the same.
Tangentially, Regarding pair programming (as a special case of thinking together):
Programming is serializing ideas into the computer language. Communicating them with someone else first serializes them into human language, which is already much less abstract compared to the thought cloud in your head.
In the case of an effective pair programming collaboration, you also get to debate approaches, discuss details, alternate between coding and watching.
It also helps that the presence of someone else helps avoid many common distractions. Reading non-urgent private messages and checking out HN (I'm no longer so addicted to any other platform to check it out at work).
I might be soon moving to Europe and would need to get a new car, replacing my (mostly) beloved Toyota bz4x. Well I guess VW is out.
I'm happy with my XReal one Pro. Wired, dumb, no way to lock me into an ecosystem like when I bought Oculus Quest and then had to deal with Facebook's bullshit
Did I mention much cheaper?
It's really complex. This attack was bad for the Iranian Government, their proxy war allies, and for the American people. In the region, however, it disrupted a rapidly escalating disaster. What comes after this is hard to predict, but what would come from the existing situation was hard to avoid. Second and higher order consequences might eventually be good for the people living in that region.
I've extensively used Windows, Mac, and Gnome. KDE is by far the greatest. Each decision is great, everything not matching my preference is configurable.* It's fast, intuitive. It's the way our tools should've been: enabling and liberating us, not limiting us and try to get a tax of anything we do.
*The only exception: I wish I could have the same status bar shown on all monitors.
I'm Iranian
"We create products and services that we are proud of"
This was one of the 3 core values in the best company I ever worked for. One I would never leave, if the region was not heading for a disaster.
Good architecture transcends the software: enables people to be their best, evolve the software to better match the reality of its reason for existence.
In an effective organization, people constantly exceed their own expectations. They debate alternatives, understanding the reality of momentum, but aiming for an infinitely long living product.
They identify the "main problem", find ways to best solve that.
A good architecture does not do much more than what's needed, but avoid unnecessary assumptions that would block future development.
It is vague, philosophical, pragmatic, challenging, rewarding.
When expressed, sounds like a trivial principle. It's surprising how rare it is to see people actually do this. Not only with tech stack: choosing cars, laptops, staying in a toxic relation, the list goes on
Not showing the price was not "my problem". It was the sign of a product packed with traps, footguns and all kind of things that would go wrong and the blame goes to the user.
No thank you
Years ago, I joined a company, took over a dev team and was asked to launch the product in 3 months.
They were using AWS, so I logged in the account to add a few more machines. Right there, in front of my eyes, were the signs of an adversarial, abusive relationship.
The UI to fire up a new machine did not show me the price. I had to look up the price in another table that did not have the specs.
I had to have the two tables open, cross check the specs and price.
If I had learned one thing from my past life was that if you see the signs of an abusive relationship, you have the option to walk out, and you don't, all that follows is your own fault.
Created a DigitalOcean account, moved everything over. Set up our CI/CDs to deploy there, and spent the next two months on the product, launching one month earlier than promised.
Some years before that I saw a video online where a person digs a hole near a river and puts a pipe connecting the river and the hole. The fishes push themselves hard in the pipe to get to their trap. Choosing the path of least resistance, and never backing off from a mistake: recipes to end up like those fishes. The video left a big impression on me.
Pedantically, they're wrong, but the two are closely related.
They both use the parent's hash together with the contents of the block/changes in the commit to compute hash of the current block/commit.
Git supports many parallel branches, while Blockchain uses decentralized consensus mechanisms to keep the entire network in agreement and resolve branches as soon as possible. So yes, the mathematical problems in the two are different, but the data structure is very similar.
Source: my last job was creating developer toolsuits for Blockchain.
It's not just you. I interpreted it similarly
Too deep of a topic for the comments section.
I totally agree to your point, and want to mention that the reverse is *also* important. Using just "intention", but these apply to emotions, etc
A lot of our interaction with AI is under an intention. That's what directs the interaction, and it's interpreted according to its alignment to the intention.
Then it's important to remember that our current (publicly known) implementation of AI does not have an explicit intention mechanism. An appearance of intention can emerge out of the statistical choices, and the usual alignment creates the association of the behavior with intention, not much different from how we learn to imagine existence of a "force" that pulls things down well before we learn physics and formalize that imagination in one of the several ways.
This appearance helps reduce the cognitive load when interpreting interactions, but can be misleading as well, and I've seen people attribute intention to AI output in some situations where simple presence of some information confused the LLM into a path. Can't share the exact examples (from work), but imagine that presence of an Italian food in a story leads the LLM to assume this happens in Italy, while there are important signs for a different place. The LLM does not automatically explore both possibilities, unless asked. It chooses one (Italy in this case), and moves on. A user no familiar with "Attention" interprets based on non-existent intentions on the LLM.
I found it useful to just tell them: the LLM does not have an intention. It just throws dice, but the system is made in a way that these dice throws are likely to generate useful output.
Curious, how does this compare to the editor you use?