skysight-inc/HackerNews huggingface dataset:
UE seems to have better defaults than Unity resulting in a better look.

On the other hand i found Unity much easier to learn.
Why? I would argue this ruling is a good thing, since in countries with labour laws the "gig economy" seems like a great way for employers to avoid responsibility. People end up doing the same job as they did before, but with worse conditions.

I applaud the gig idea in many respects. Connecting people that want services with people that want to work is positive, however I am not sure that is all Uber did. Taxi market regulation has a purpose, and doing it the way Uber does is what got us the rules in the first place.
The difference is yours would of been a short defined period, Uber is open ended. You would be entitled to sick pay, holiday etc if you are a worker in effect (if the contract is too long).
So Uber really is more like a huge Taxi company with freelance drivers and an app.
No one suggested that driving a cab is not work. The ruling was about whether they are employed by Uber or self-employed contractors.
Of course they are. Everyone knows this. Uber just had good enough lawyers to put this moment off for as long as possible. They had to know it was coming.
> majority of employees in tech offices in Atlanta tend not to be African American

Genuine question - how does this compare to other industries in the city? If AAs are underrepresented in tech in Atlanta, I imagine that part of this is caused by the same problems faced by AAs in other white-collar jobs. How much of it is a problem with tech specifically?
I encountered this a few times and started adding tests that assert each handler only executes the expected number of queries (and no more). If the application code is modified such that this N+1 query pattern occurs the test will immediately fail and you go optimise the query, problem solved.

https://docs.djangoproject.com/en/dev/topics/testing/tools/#...
To oversimplify: 70% of drug users don’t have a “problem”. While the point is well taken that that number is higher than the media would imply, which might impede rational discussion, those still don’t seem like great odds to me, given how severe those “problems” can be.
More poverty, combined with expensive health care.

Also, apparently black people are more likely to get shot.
Boris Johnson proposes new legislation against “unlawful silencing” on campuses
Have you looked at the price difference between jlcpcb's assembly service and PCBway?
I'm IT contractor and this is exactly how it works.
Link to the proposal page: https://www.gov.uk/government/news/landmark-proposals-to-str...
You guys know people lost their jobs during the pandemic right?
This seems cool. Is there an equivalent feature in emacs ?
Think I've drank almost every day, probably the least amount was maybe the odd week where I drank like 3 days.

Work wise I'm probably working on the most important project of my life there's nowhere to offload that stress. Can't meet any friends not even allowed to meet outside, everyone stopped doing virtual meet ups months ago and just became introverted instead so what else is there.
Good. Back pay, super, pay up.
>> 1. The company set the hourly rate which meant they dictated how much I could earn

This rate would have been negotiated by you. You then agreed to a specific rate.

The price of Uber rides varies based on demand so the driver doesn't know the price in advance + even if they did they are not allowed to refuse the ride.
No, very often it's a yes/no and there are many people in the line behind you who will take the job.
The question the court is asking is "why can't the drivers?". Uber is claiming to be a third party here.
I've found the rust debugging experience to be very primative. When you say modern tools, are you describing rr? As far as I know that doesn't reliably integrate with rust?
I agree that AirBnB's website sucks, but why do you think this is caused by them using React?
Fires have spread to previously untouched parts of the world
Just because the OP was not specific enough (as they indeed weren't) doesn't make your claim true.
This is a tangent, but:

> The secretarial pool?

The secretarial pool is sorely missed. The few times in my work life when I had access to a secretary (either official or de-facto), it was a productivity multiplier and ensured a baseline quality in all communication.

The result of killing that sector is terrible marketing done in Word and boss emails like IVE NOT HERD FROM HIM MAYB ITS NOT GOOD.
> Also IIRC, they were carrying a cup of coffee each so the police said technically they met for a picnic.

It's both sad and hilarious that going for a picnic is currently a criminal act.
> "can't pattern match if something-something pointers"

The main confusion I see is that in many languages it is unclear whether sum types are a runtime or compile time thing, which decides whether pattern matching is semantic or syntactic. Of course nobody wonders whether "if then else" is semantic, but for pattern matching I admit I am myself confused:

- in C all types are compile time (and loosely enforced) so if you want sum types, do them yourself. Implementing the matching is quite straightforward but unsafe and pedantic.

- in Java all type information is available at runtime: sum types can be implemented easily (casting to Object), matching is safe and can be compact if done with e.g. arrays.

- in C++ thinks start getting trickier: you can certainly do a lot mixing static and dynamic casts, but will this remain readable?

- in ML languages: AFAIK this is completely implementation defined. The compiler may choose to box some or all variables. Obviously in such a language you much less care about what is going on under the hood. In return you get a true pattern-matching construct.

- in Rust and others: frankly I don't know where they stand in regard of compile time vs runtime :)
I've recently played the entire Infocom text adventure catalog using walkthroughs. Yes, it feels somewhat like reading a book (although it's more "active" - hard to explain), but you get to experience a lot of what made the stories great. If you just want to finish Zork, I recommend this approach.
I know you're trying to be helpful, but these kinds of posts just come off as incredibly condescending and out of touch. Lack of nature is not considered to be actual torture, but complete isolation from other people (solitary confinement) is.
I did have that opportunity, as does an Uber driver. But, as is the case in any negotiation, the counterparty has the right to hold firm on the price.
Congressman Calls Robinhood’s Help Line and Gets Voicemail
Yes, you do. But for the military this does not really matter, one of their defining characteristics is that they care MUCH more about "getting the job done" than about cost. This leads both to massive inefficiencies and to their extreme resilience to "bus factor" type events. It's a decent tradeoff for the military, it probably wouldn't be for commercial entities.
Is whether someone “does it all day” a factor in determining if they are a employee versus contractor?

Plenty of contractors work all day long.
I feel really bad for small restaurant owners. These large delivery companies totally take over their internet marketing too, registering a domain like '<restaurant name>-<city>.com' and when you go to that website, you really have to pay attention to see that this is not the 'official' restaurant website and if you order through there, it's costing the restaurant a lot of money that they wouldn't miss out on if you'd order through their regular website. I don't understand how practices like that are legal - then again, small restaurant owners have other things to worry about than fighting a 5, 8, maybe 10 year trademark battle against huge tech companies. It's a disgusting abuse of power in my view.
One way to do that could be with frama-c [1]. It allows you to put the checks in comments that are interpreted prior to C compilation. See the example here [2].

1. https://frama-c.com/

2. https://frama-c.com/html/acsl.html
Open Problems in Distributed Computing (2006) [pdf]
It is not just economic situation that pushes people to migrate, socio-politic condition can be additional reason.

This is savings wise in UK.
> https://themoneycharity.org.uk/money-stats-almost-10m-with-n...

Another thing is that those who migrate are looking for more opportunities, and also in comparison they decide to live in worse condition as they can save more working jobs local people do not want to do. In that way when they go back they can live significantly longer with those savings.

Person struggling to find job 500 EUR a month in Ukraine, (https://ukraineliving.com/the-truth-about-the-average-salary...) can in UK live in share bunk bad room eating noodles for a year and save £10000 working construction industry.
In London normal expenses rented 1 bed flat,food etc. will eat those saving in 3-4 month. Back in Ukraine same person can live out of those savings for 2 years.
It ended up being several months, but the contract was actually written as open ended until notice of termination was given by either party.
I found exactly the same in our lockdown; by not having the physical act of leaving the workplace, you need something to replace that, and a beer fits that pretty well. Too easy to continue that habit though
Why not `thiserror` for executables as well? It happened to me a few times that I started to write an executable program, but then realized I want to embed its functionality in a library. Converting from `anyhow` to `thiserror` at that stage would be extra work that can be avoided.
Framework for Modular Analysis of C
Like EJB that had remote interface, but you could also call the code directly without network in between?
Everyone wants the secretary. No one wants to be the secretary. Especially the men:) Basically the market and government eliminated it ie productivity the job creates is too low for the marginal wage except for top management. Sit down you pleb developer and type :)
Why do you think I am not aware of those points? Those complaints have been made a million times. Yes, C is not a memory safe language and you may run into trouble if you don't use stdlib string functions properly or hand-manage characters without paying attention to the termination and the reserved space, we know it.

I am talking about the mess of the evolution of strings in the Pascal family. There was, and there isn't any such mess in the C world. That's a fact that cannot be disputed. Of course it is because C strings are extremely simple, and as such didn't have to suffer the superiorly intelligent design of Pascal strings and their original limitation to 256 characters and their incompatible indexing with arrays.

You can't seriously keep on talking about the "terrible design" of C-strings when you put Ada and Pascal in front of it. Any other language, yes. Not Pascal and Ada.

These are the string types in Pascal: Array of Char, PChar, String, ShortString, AnsiString, WideString, UnicodeString. I probably forget a few, and then there are aliases which may or may not be the alias of this or that other type depending on compilation. Compatibility and automatic conversions between those vary. There are many ways to shoot yourself in the foot with those. Some have remained 1-based indexed to keep indexing compatibility with original strings despite the fact that it doesn't make sense any more (there wasn't a good option to pick: either you were consistent with original strings or you were consistent with other arrays and the new string implementation). Some are 0-based to interact with real world.

In Ada, you have a bit fewer types (String, Bounded_String, Unbounded_String, I'll spare you the Wide_ versions), but manipulation is more difficult than in Pascal (and conversions are of course the Ada way : heavily verbose). Not sure if it is still the case, but there wasn't the same display of functions provided for each string type, so you'd convert and convert and convert. And even Unbounded_String is often not versatile enough.
I'm so confused as to how excess money can be enough fuel for so many people's positive feedback loops that it keeps them working. That already wasn't working for me, but as soon as there was almost nothing to do, I crashed and lost my job.
Basic Googling: https://en.wikipedia.org/w/index.php?title=Blacklist_(comput...
I prefer the Spoonerism but I don't think it'll take off
Well then, how about you look at the next 10-20 repositories, which interest you and which are labeled "open source" and see what their licenses are? Then you will get a picture of what is "usual". You can also increase N, if you want more indication.
I totally agree. I love Swift's guard let. It makes early returning [1] easy:

guard let value = optvalue else {
return // optvalue is none
}

There has been several proposals [2][3] to fix it in Rust but they don't seem to go anywhere.

I'm using this in my own code now to unwrap or return (it looks stupid):

let value = if let Some(value) = optvalue {
value
} else { // optvalue is none
return;
};

[1] https://szymonkrajewski.pl/why-should-you-return-early/

[2] https://github.com/rust-lang/rfcs/issues/2616

[3] https://github.com/rust-lang/rfcs/pull/1303
Things you should never do: use integers as ID's. This is literally a solved problem, and the solution is UUIDs, which were invented for exactly this job.
I'm a mid-level engineer in the UK and I can afford a house on my salary.
I'm confused, have you found the try operator ("?") insufficient for your use cases? I believe it does what you are describing, ex:

fn process_file(p: Path) -> Result<String, io::Error> {
let file = File::open(p)?; //Return err if file can't be opened
let mut out = String::new();
file.read_to_string(&mut out)?; // Return err if read fails
out
}

If you want to handle the error case within the same function `try` blocks are available in nightly[0] and will eventually come to stable[1]

[0] https://doc.rust-lang.org/nightly/unstable-book/language-fea...

[1] https://github.com/rust-lang/rust/issues/31436
One of the reactors of one of the nuclear plants. Each nuclear plant has two reacts, so 1/4 tripped.
I get the feeling the real issue is not these four points, which are legalistic and vague.

The issue is whether you can pay someone way less than what they'd otherwise be paid for the same work, just by saying they're contractors. A lot of software contractors get paid quite a lot more than comparable salaried employees, so they don't complain.
> This is by far the majority benefiting for automation and speeding its adoption not those who inherited their wealth

Can you elaborate ?
> I assume this will cause Deliveroo to either increase fees or reduce service which may inspire more restuarants to hire their own delivery people again.

Before Deliveroo (and similar services) restaurants (in UK/Europe since you discuss London) did not offer delivery at all.

Handling the whole order (which these days means online/through an app) and delivery in-house is costly and restaurants use Deliveroo because it makes commercial sense.

Generally the issue is that, on the one hand I don't think that people are willing to pay much for delivery while, on the other hand, delivery is very low productivity and it's not viable to pay delivery drivers much for this.

As someone else commented 20-30% of an order is not crazy compared to the cost of serving on-premises. Moreover, Deliveroo can only charge this to restaurants if they have a deal with them.

Low productivity and cost pressures are also why "dark kitchens" are developing: They save on the cost of having a full-blown restaurant geared for on-premises service and they cut travel times for drivers (they can go to a single location and collect from multiple collocated kitchens).
In the UK, IR35 legislation (introduction delayed because of covid) would probably designated you as a 'disguised’ employee - ie contracting only to get the tax benefits of working via an intermediary company (less tax, paying yourself as dividends etc).

https://www.hiscox.co.uk/business-blog/what-is-ir35-and-what...
Also, here's a B.Sc. paper from my alma mater (English abstract in the paper) http://www.diva-portal.se/smash/get/diva2:1236618/FULLTEXT01...
that puts the current all inclusive production cost of nuclear power in Sweden (incl. funding for permanent spent fuel storage) at $0.03/kWh. That's an actual cost for stuff that actually exists today.
True, even during pandemic prices of properties have gone 20-30% up, even with salary of £100K (£5.5K a month NET) which is above average for majority of developers, it is difficult to afford property in London.
And if you move outside, then you need to include traveling fees which are additional +(200-400) and lose of time each day about 2-4 hours (of course depending on location)
I always assumed Python could scale because of Reddit: https://github.com/reddit-archive/reddit

Not quite sure if their current site's code is opensource... anyone know?
Sure, but you could always do that and be delivery-only without paying anyone. I think the service you're getting here is primarily the exposure of being on a popular platform.

That and them handling the order process.
That's the problem with flamewars. You can't really recommend in any direction without baiting the flames. You'll just have to look for previous discussions and decide for yourself.
Salary paid is salary owned. A company can only take away what they haven't given you. Options are not owned, only potentially owned.
Check out the GNU or FSF websites. Copyleft is an important part obviously, as it is the thing preventing things to be forked, modified and then license changed. Did you ever watch a Stallman talk about the 4 freedoms and how copyleft works? If not, please do so, before writing more untrue things like: "The difference between 'open source software' and 'free software' has nothing to do with copyleft."
Here's the web.archive link since I'm getting a 503 : https://web.archive.org/web/20210218103536/https://www.waldw...
Unless you have dependent types, isn't a contract just syntactic sugar for an if/else that either raises and exception or returns an error code?
Exactly - that was my reaction as well.

This is a fair judgement. I support zero-hours contracts in a balanced and non-exploitative relationship where the "self-employed" label is not just lip-service.

This was clearly not the case according to the first 3 of those observations.
Some people have spent decades investing in skills and careers that become obviated in a matter of years by new technology.

It's easy to see today which lines of work can be better done by computers than by humans-- today. What's less obvious is which lines of work will be automated in two decades. Having your job description written out of the economy by software is a non-event when you're 26, rough when you're 36, and a disaster when you're 46.
Please cite my "claim", so that I know what you are referring to.
This misses the point as to why though: because it's not an incremental ladder, it's an exponential one - the wealth consolidated by the billionaire class is buying politics. It has an outsized influence on the thinking and mindset of the political classes they donate too and talk to on weekends.

This isn't just an issue like bribery it's more insidious then that: when your political leaders spend most of their "leisure" time in the company of these people, they adopt their values, listen to their thoughts and give everything a favorable view - more of hearing then you and I will ever get.

After all it's hard to be down on a guy who's put you up for the afternoon at his mansion, and even though you know it's a bad look to take him up on it it sure is nice he keeps offering the master guest suite if you want to stay the night.
Variable pricing based on demand is definitely an unusual feature of Uber's contract, but it would also be nearly unheard of in a full time employee's pay structure. So I don't see how it could be used as a determining factor that defines this contract as an employee/employer relationship.
The problem is most developers and/or management don't care about security. They only care about being done as fast and/or as cheaply as possible.

I'm still not convinced the new languages (Rust & Zig) will change the overall situation.

Why? Simple example in Rust:

"LOL! I need to get stuff done."

unsafe {
Really nasty hacks here to circumvent any obstacles.
}

Example in Zig:

"LOL! I need to get stuff done. Tests? What tests???"

zig build-exe example.zig -O ReleaseFast

Trying to solve those security bugs with the help of the language is of course the low hanging fruit. But systems languages will always need an escape hatch for certain problems to be solved.
And those mechanisms WILL be abused in the name of "get it done already".

So we really need other means to erase those bug classes. Which ones I don't know.
This should be straight up illegal and the companies sued to hell for. If I opened a site claiming to be a bank and accepting money on behalf of that bank, and keeping 20% I'd be behind bars for fraud in no time.
Where in UK are we talking about London where all good things happen or Sheffield ?
And what is your salary ...

By the way, when we say "afford", I mean be comfortable, that if you lose your job you will not lose your home because you cannot pay 2 payments, and therefore lose your deposit and everything you have payed in until that point.
Buying home in UK is life under constant stress of "what if" and pandemic, Brexit and current economy have not done a good job of removing that fear...
It's very possible that you would have been declared employed if you took it to a tribunal or if it was otherwise challenged. This happens plenty often.

It's hard to tell from the information you have given us, but it sounds like it could be an employer-employee type relationship.

You can take an online test here: https://www.tax.service.gov.uk/check-employment-status-for-t...
No, that is clearly a bug. The ORM already has the value of book.id, that's how it knows how to fetch the right book. Performing extra queries is just poor implementation.
It's a no from me.

I'd rather we go back in time and not normalize draconian, authoritarian restrictions on everyday life.
> Before Deliveroo (and similar services) restaurants did not offer delivery at all.

This is far from universally true, especially Asian takeaways typically hired their own driver, but the practice was also commonplace for many actual restaurants too
> The primary advantage of proper pattern matching compared to ad hoc "instanceof" checks is exhaustiveness checking.

In programming language intermediate representations (the context of the article) exhaustiveness checking might not be as useful as in other contexts. You will have many variants, but for every concrete operation you want to do on the IR you will only consider a few of them, with a default catch-all case for all others.

For example, imagine you're writing a tool to represent and process source code for a Python-like language. Here are the statement types:

type Statement =
| Assign var value
| ExprStatement value
| If cond true_branch false_branch
| While cond body
| Return value
| Break
| Continue
| With context body

(I'm sure I forgot some interesting ones.) You want to do some analysis related to branching control flow statements. These are If and While, so you write:

let analyze_control_flow stmt =
match stmt with
| If _ true_branch false_branch ->
do_something_with true_branch;
do_something_with false_branch
| While _ body ->
do_something_with body
| _ -> // not a branching control flow statement
()

This works nicely. Except that Python recently got pattern matching itself, so you add a new variant to your Statement type:

...
| Match pattern cases
...

and then you recompile and fix a few exhaustiveness errors and feel happy that you have handled everything, except that you haven't. You would also need to update your definition of analyze_control_flow, but due to the catch-all clause your compiler didn't alert you to this.

(On the other hand, such fundamental language/IR changes are relatively rare.)