rubber_duck
Java type declarations can be 20+ characers - just scanning through the code and having to skip all that junk makes my eyes more tired reading through. Types are implicitly deducible when you know the codebase 90% of the time (and should be added when they are not), and if you don't know the context you will be slow no matter what.
They did add those features eventually (Java 8) - about 8 years behind C# (since C# 3.0)
There was a 8 year gap where C# users could use stuff like enumerable operators while Java users were stuck in the stone age of writing loops for collection manipulation in a high level language ...
And C tends to reinvent object oriented programming with each library so you might as well use language defined classes.
So I don't really see the point.
You don't need to use stuff like concepts, or "showing off how smart I can be with template libraries" (looking at boost), but C++ has a lot of features that make it much more productive than C.
Java lost a lot of mindshare to C# and Kotlin due to that "strategy".
They used Facebook, Twitter and YT for propaganda and Gmail for coordination (that thing about saving a mail draft on gmail instead of sending it), it's obvious the other side isn't using logic to make the argument (but beliefs, feelings or simply pushing an agenda) so using logic to argue back is pointless.
You mean they lose operational efficiency ? Economies of scale come from the ability to mass produce.
You forgot to mention the largest differentiator - eliminates the possibility of a global catastrophe.
What's wrong with migration managers ? They handle all you mentioned just fine. The only problem I've seen with this approach were when working on a team that didn't have proper CI flow, then it was possible for people to check in bad migrations and screw up branches, etc.
I've worked with both approaches in multiple languages, and frankly I prefer the no-magic migration manager approach.
Migrations automatically generated from model also mean your DB is tied to your app, which I'm not a fan of, if anything the reverse should be true, and the fat model approaches of rails are terrible IMO (I haven't used Django for anything serious in over 10 years so I don't remember how fat their model layer is - I know it has enough metadata to generate the admin CRUD but don't remember if it also encourages having logic on models).
The best solution I've seen is F# which uses dynamic type providers (basically compiler plugin) to auto-generate models from DB/schema at compile time, and yesql in clojure (clojure being dynamic and built arround working with data using SQL results inside of it is natural and amazing).
My experience with localised codebases (in my native language) have been horrifying - like it or not terminology is developed in EN, you either get unnatural sounding "borrow" words and the translation is pointless or worse you get people coining new terminology nobody but them understands. Not to mention fragmented communities, knowledge bases, etc.
IMO localised codebases would be a regression not progress and I dread every time I see Chinese in a codebase (simply because they are a large enough market to split the dev community)
One of my favourite places has a decently sized menu (would say 40 items on there including starters/sides/deserts) while they aren't "the best" at anything, it's really good and I love the atmosphere.
I like the flexibility and that I can invite anyone there since the selection is varied and quality is reliable. I can't call my vegan sister to a smokehouse even if their ribs are the best I tried, can't take my wife to a fish restaurant but my friends could be in the mood for fish, I have no clue what my in-laws will want to eat when I have to take them somewhere, etc.
The thing I would put on communism is reduction of wealth and standards, so when the west rebuilt and went forward we got stuck with concrete slabs.
It's just shocking to me how the architecture and aesthetics regressed and never really recovered.
Here's an example of a building from 30s that I would consider built for common folk but inspired : http://www.lokalpatrioti-rijeka.com/forum/download/file.php?...
It's not grandiose - but it follows the hill line and the corner perfectly, it has distinctive visual elements. Compare it to that concrete slab you see in the background which the city is full off.
It looks like you could also use SET SESSION AUTHORISATION for this but I haven't used it so I don't know how this works with data access/pooling
Can you use SET LOCAL ROLE <user> on each transaction ?
I remember reading about these 10 years ago [1], and have seen a few more since. Basically they propose small "nuclear batteries" kin of design - this avoids catastrophic scenarios and benefits greatly from economies of scale.
The only issue I see with this approach is political - you would have a lot more nuclear material spread around, spreading this kind of teach where it's easily accessible and hard to protect doesn't sound reasonable with the political situation in the world.
So I would multiply that 50$ by at least 4.
But still like the other said bugs should pay by severity not by time spent.
The real problem is how uninspired everything from the Communist era is - dirty industrial buildings, concrete slabs randomly thrown all over the place, built with terrible quality control.
It really feels like it went from being a part of the civilized world (it was an important natural port for a long time in history for Austria) to a depressing city of old poor people slowly dying away - and there is so much potential there - the coastline is beautiful (industrial pollution can be cleaned up since the industry is also mostly dead), on a river bed and sunk in between hills (next to Opatija which was a summer place for monarchs). It has all hallmarks of a city and could be turned into an amazing place to live - but the people and the mentality left over from communism just make this impossible - there aren't enough quality people.
In what way ?
A lot of the buildings from the early 1900s look impressive even today (despite being terribly maintained) - when you see the level of detail, luxury and attention to craftsmanship it's obvious that those people are not of the same kind that lived there later. Communism started by "socialising" the property of previous owners and exiling/killing them - the new owners were not fit to govern them.
This is also what happened post civil war - "privatisation" ended up with generals and people with political collections acquiring major companies and then running them to ground with incompetence, or zombifying them at the expense of public spending.
This isn't really true, for eg. if you add redundancy technically you increase the complexity but also reduce risk (point being complexity will also be introduced when making the system safer, simplification just makes analysing and screening for bugs more effective, but there are other risk factors)
I don't understand your point - non-native widgets are not a deal breaker and there are plenty of examples, Electron being the most common non-native cross platform framework recently (it has technical limitations but even the subpar performance doesn't make it a deal-breaker). So it's possible to create cross-platform UI frameworks and most of the the most successful apps I can think of are using some version.
You are confusing cross platform UI with frameworks that have programmer art widgets and no cross platform polish - eg. GTK+, FLTK, and even to some extent QT widgets (and many more). When people say widgets don't look native they usually mean "the widgets suck", you can create beautiful cross platform apps - Electron has quite a few because it allows standard designer tools from web dev.
Flutter is another promising development, but the desktop port seems underwhelming - it's obvious the widgets were intended for mobile apps, they will probably need a custom widget set to cover desktop UI - but the approach is sound.
You mean placebo effect ?