You’re right about how it works today but it seems to me this is an odd choice to make. Why not enforce object types?
Could they add a strictness flag that lets objects actually be type safe and enables related functions to work out of the box? For me this stuff is a regular pain point as you end up typecasting at every call site :(
In my experience, this is mostly wrong. You don’t get 500-600k Silicon Valley offers in Europe just for being a solid engineer.
You do get a total comp that is 2-3x local market if you manage to get into FAANG like companies and even the tier below. I think this is what Gergely is describing.
That is still life changing for a lot of engineers, and worth the 3 month grind to get through the interviews. At least it was for me, and this article was a big part of why I made the jump.
Here in France people only ever do fixed rate, generally for 20 or 25 year mortgages. I have never heard of someone buying a home with a variable rate loan, not sure if it's even legal.
It might have been a pretty good deal for the people who bought homes with 25 year 0.7-0.9% interest rate mortgages these last few years.
Unemployment is the one benefit you can't get as a contractor (in France, I don't know about OP's country), but it doesn't work that great for higher income professionals anyway.
When it comes to health insurance or retirement you're generally covered though.
I think in Europe there's a bunch of local markets with a lot of companies that do not want to compete for developers, not within the EU and definitely not with the US. They'd rather push talented developers to leave than raise wages (and maybe it makes sense in their business).
You need to find the pockets in the market which do compete for talent on an international (at least EU-wide) level. That may be foreign tech companies, remote jobs, maybe the very hottest of startups in your country (with stock grants). I like this article (https://blog.pragmaticengineer.com/software-engineering-sala...) which goes deeper into this.
A "trick" which works in my market (in France) is to work as a contractor instead of a full-time employee. When I did this move I basically doubled my income overnight while keeping the same job title. A lot of companies will balk at an engineer asking for 70k€ as an FTE, yet have no qualms paying the same person 7-800€/day for 2 years as a contractor.
I'm not an ops guy, but I know it was a constant source of trouble in our team and a large challenge to keep it running smoothly. For us it took 2-3 experienced engineers something like 2 years to have a stable and smoothly running production environment at scale.
If you start from scratch today things may have gotten better. You might want to look at https://github.com/overhangio/tutor, I know Régis has been hard at work making it easier to run Open edX.
I work on a team where we build around and run Open edX. It's incredibly complicated to run because it's not built as an open source product. It's just that edX open sources their software after the fact, so they're not investing in making it easy for anyone to run, of to contribute features.
On the team I'm a part of, our strategy is to build open source tools around Open edX, using it as a site builder that stitches together all our external services (video hosting, live conferencing, course content, quizzes, web-facing portal, forum, etc.). That is, until we cover enough scope that we can start to replace it with a flexible and lightweight LMS that would basically just do the aggregation.
IMO it's not necessarily a good fit for the LMS category to try and build a gigantic software codebase that handles everything the way every single learning institution wants it. You end up with a glorified site builder with a bunch of specialized features tacked on.
I mean the guy lost "a major honor" in his field, not his job.
A lot of people deserve honors for their good work, and don't write trash articles comparing enrolling a few more Black students in college with literally nazi germany. For all his veneer of rationality the guy is wandering into nut-job territory here.
It's not five years to citizenship. After five years you get to apply. Then it takes about 4 years of administrative hell (with some traps that can get you back to square one) to get there.
No one who is at all familiar with the French immigration system would tell you that it's "lax". It's generally a nightmare to navigate and it feels like it's designed to deter all but the most determined immigrants.
Source: personal experience with friends and my so.
In my anecdotal experience 60k is typical for developers with 5 years of experience in larger cities, but often you do need to get into management to reach 80k.
I think it’s also getting better as all employers need to compete on salaries with remote offers from companies in Paris.
I’ll admit it though, if it was not for the ludicrous immigration laws I’d have probably moved to the Bay Area a long time ago.
In most places the cost of living is pretty low compared to the US, so even the admittedly lower engineer salaries in Europe can give you a very comfortable lifestyle.
Eg. in France if you make 60-80k and live anywhere other than Paris you're doing great.
For the top end of talent there's always freelancing, with a different, higher band of earning levels.
It's amazing that you can see them so far south in the US. I live at +48° latitude too and around here it's completely unheard of to see anything of the Northern lights (even when I used to live in the countryside at ~+50°).
Nice idea and examples! Let me know if I'm wrong, but the main difference between `createContainer` and a `React.createContext` call is that you memoize inputs, correct?
The way this interacts with Hooks to enable state sharing is pretty cool. Hopefully someone builds a complete i18n lib on top of something like this.
Which can be ok. There's no ethical duty to make websites for literally everyone.
Accessibility is a different issue of course, but to illustrate my point: I have never translated my websites to Chinese, making them unusable for 1/7th of the world population. I don't think it's necessarily a failure on my part.
>> That's not a "view of the world", that's _objective reality_.
That's just, like, your opinion, man. Setting aside arguments as to the mere existence of "objective reality". You're essentially saying "the way I see it is the only way to see it", which does not help convince someone who sees it differently.
That means you can't be discriminated against on the basis of your religion, not that you can discriminate against other people because of your religion though, right? Just like eg. being gay does not allow you to discriminate against black people.
I know it's more complicated in practice because the problem is political and other factors come into play.
Could they add a strictness flag that lets objects actually be type safe and enables related functions to work out of the box? For me this stuff is a regular pain point as you end up typecasting at every call site :(