skysight-inc/HackerNews huggingface dataset:
> The truth is it is much much cheaper than in the US, and probably unmatched in Western Europe

Business formation (i.e. forming a legal entity, getting a bank account, hiring your first employee and getting paid for your first service) in France is much more expensive than in Britain, Luxembourg or Poland. And the U.S. is faster and cheaper still.

That said, if you have the right connections, it can be a haven. There is a lot of inefficiency in the French economy. And it contains an incredibly well-educated and commercially-reasonable population.
Surely you must be joking. Or living under a rock.

Remember this?

http://www.foxnews.com/us/2017/08/14/victim-recounts-charlot...

How bout this?

https://www.portlandmercury.com/blogtown/2017/05/27/19041594...
This is a duplicate of an earlier discussion: https://news.ycombinator.com/item?id=17166132
Teaching Sobriety with ‘The Bottle’
The greatest number of those sold and installed were for mundane business data processing. By the mid-60s every medium and large business needed a computer. The slowest 360, the model 30, would have had trouble competing with a Z80 of 20 years later. However, the 360/91 was genuinely a supercomputer, and it pioneered out-of-order execution among other performance features.

https://en.wikipedia.org/wiki/IBM_System/360_Model_91

https://en.wikipedia.org/wiki/IBM_System/360
Write up a PEP! It's a great idea. Syntax can be good if it makes sense and makes code easier to read and write.
A lot of stuff is in slack builds or other third party repo's.
I’ll see your atrocity and raise you another.

https://en.m.wikipedia.org/wiki/Crow_Creek_massacre
This is a weird response. You can definitely argue that it's bad syntactic design because people seem to expect it to do something different, but if the argument is just that some category of programmer doesn't already know what it does, you're pretty much arguing against introducing any new language feature, syntax or library that wasn't taught in your imagined CS101 or whatever.
We need to actually be net negative in total with usage of all energy sources at this point. We're already well into the overshoot, so we need to be actively cooling the planet.

Either sinking carbon, converting other atmospheric GHGs to less harmful forms, or radiating energy into space outside the absorption bands of the atmosphere.
To me, the else isn’t intuitive if you haven’t encountered it before. It’s a nice feature, but perhaps better naming could improve code readability.

How about for-finally? It’s a hard thing to name correctly, but to me this seems to be slightly more intuitive if you’ve never seen the feature before.
Huh... I wonder if the the "eng" from England and English related to the Middle English englen and Old English englas for "angels"? Is England the land of angels?

Edit: Ah, no. It's from the Angles: https://en.m.wikipedia.org/wiki/Angles
A coalition and a party are a little different, though. In particular, even if the coalition lines are clear even before the election, voters are able to allocate their vote to a specific party within the coalition and apply some guidance that way.
Sinclair's machines were Z80 based - was there another major brand using it? All the ones in the UK I can think of were 6502 based...?
Here's an article which explains in detail how pickles/serialization work in Python, and how pickles can be constructed to evaluate malicious code when they are deserialized. That's specifically about Python, but the same issue exists in many other languages.

[1] - https://intoli.com/blog/dangerous-pickles/
No change - if anything, it's even worse, as the education requirement now means everyone has a degree (even though they might not have the passion nor the actual skill for it), and since the requirement no longer works as a filter for good candidates (I'd argue it never really worked, but now it's even worse) they are now requiring education and experience (for the same pay an intern would get in the UK).

Even assuming you have a degree, how are you supposed to get the experience when pretty much all the jobs require previous experience? And no, the trick of applying despite not having experience and making up for it at the interview doesn't work - job requirements are very rigid in France; either you'll get rejected right at the start, or if you do make it through all the interviews they will still reject you at the end once they find out (and possibly even consider you as a fraud for applying anyway despite not having the experience).
Thanks. That looks quite interesting.
This is usually quite useful, actually! It happens a lot in numerical computing where you try a bunch of possible solutions and if none are found then you output some sort of "infeasibility" result, otherwise you output the result you broke at (skipping the else statement).
Any reason why this case would diverge from the rule of ~30 being statistically relevant?
GfA-Basic is the best.
Coming from a Javascript context, would this be something roughly analogous to expecting JSON.parse and actually getting eval?
A classical math problem gets pulled into self-driving cars
> Kidnapping a CEO because the company isn't making any money and shutting its doors is the culmination of an ultra-unionised population.

I've heard about 'bossnapping' - is it literally as described? How on earth does this not end in bloodshed? If someone tried to kidnap me I would be immediately fighting for my life. Do the Police do hostage rescue? How are people not getting hurt?
Please don't bother. Obscure, very rarely used language constructs like these often don't really enhance the code's maintainability. On the contrary; would you have understood the very same code yourself before reading this article if someone else had used the construct?
I can testimony for Z80 assembly (tough I cannot say anything about 6502).

In high school one of our teachers made us program a Z80 board by hand.

And when I say "by hand" I mean it quite literally: first a flow-chart, then a conversion to z80 assembly (two passes: pencil first, pen later), then datasheet at hand a conversion into z80 opcodes (this time it was three passes, the third one was to recalculate all jumps, absolute and relative ones).

Last step was to input each opcode into memory by hand using an hexadecimal keypad. Then go to address 1800h, hold breath and press RUN.

In retrospect, it was a very enlightening experience considering I and my school mates were like 16-17.

But keep in mind, if a 17 years old can do this with relative ease (it was a technical high school, after all) that should tell you something about the simplicity and effectiveness of the Z80 instruction set.

Z80 <3
Since Python doesn't have goto statements, this removes one of the situations where a goto statement is the best tool to use in a language like C++.
What can I possibly learn about web design from someone who can't even have the font display at a reasonable size? Please fix this. You shouldn't have to zoom in / zoom out for your website to be usable to people with perfectly fine eyesight.
Ask HN: If you could build any realistic project today, what would it be?
Assuming you had enough resources in terms of google/aws/dropbox credit and free housing/internet.
This has long (always?) been a basic part of the Python language. How do you decide what is a “niche syntax trick”?

Here’s the python language reference from python version 1.4 (1996), http://web.archive.org/web/19970606191447/http://www.python....

> The expression list is evaluated once; it should yield a sequence. The suite is then executed once for each item in the sequence, in the order of ascending indices. Each item in turn is assigned to the target list using the standard rules for assignments, and then the suite is executed. When the items are exhausted (which is immediately when the sequence is empty), the suite in the else clause, if present, is executed, and the loop terminates.

> A break statement executed in the first suite terminates the loop without executing the else clause's suite. A continue statement executed in the first suite skips the rest of the suite and continues with the next item, or with the else clause if there was no next item.

* * *

Here’s the tutorial, http://web.archive.org/web/19970606183615/http://www.python....

> The break statement, like in C, breaks out of the smallest enclosing for or while loop.

> The continue statement, also borrowed from C, continues with the next iteration of the loop.

> Loop statements may have an else clause; it is executed when the loop terminates through exhaustion of the list (with for) or when the condition becomes false (with while), but not when the loop is terminated by a break statement. [... and then an example ...]
The problem I see with this approach is that you don’t know when the planner is going to decide to use parallel scans meaning that you might get worse performance for non parallel queries.
> which just seems like a really weird use case

I think quite the opposite: What you expected seems unnecessary to me because that is already easy to do with that if-statement in your example.

On the other hand, to accomplish this "for-else" you would have to do something like this:

found = false
for x in list:
if ...:
found = true
if not found:
...

While writing this example I noticed that I also could make good use of the negativ: Something like

for x in list:
...
then:
...
> Even when governments get into major urban planning they 'screw it up' - the suburbs of Toronto have 'wide streets' and 'plenty of green' and 'highways' but they have absolutely no culture or community. TO suburbs are designed for box stores, starbuckses, Olive Gardens and car sales lots.

This is really hard to do when people want to huddle in their cars/offices/homes/underground for 5 months of the year. Toronto winters are no joke.

There's a reason why the underground network (The Path) is so big.
Dune (and the sequels through God Emperor).

I’ve never found a writer who could discuss humanity writ large — both in masses, and over enormous spans of time — like Herbert. Dune is the easy to read, fast moving approachable yarn that gets you in. The real masterpiece is God Emperor, where we get to see humanity over thousands of years, and we really learn Herbert’s most important lesson: beware the charismatic dictator.
You were probably using GW-BASIC instead of QBasic.
It actually depends on whether the populace at large or the government in power are willing to maintain power through force.

If you’re dealing with a democracy and a populace like the US or the UK, there happens to be a limit of how much brutality they’re willing to stomach in defense of the system. In a lot of cases it’s much more than we’d like to admit.

If you’re dealing with an authoritarian government or a theocracy, that limit is much higher or non-existent.
... until one of the owners decides to push a cart up and down the beach bringing the icecream to the consumer, and the other copies that, and then one pivots to offer ice drinks, and one offers gluten free vegan icecream, but they go out of business because, hey it's Houston not California. And then the surviving vendor is put out of business by a robotic beach delivery service.
I'm surprised to see no discussion of faster-than-naive algorithms like Strassen[1] or Coppersmith-Winograd[2], which very counterintuitively run faster than N^3.

Note: Only helpful for specific or very large matrices.

[1]: https://en.wikipedia.org/wiki/Strassen_algorithm
[2]: https://en.wikipedia.org/wiki/Coppersmith%E2%80%93Winograd_a...
The word else implies something different to what it does (IMHO at least). In and if/else clause, the else happens when the primary/expected thing doesn't happen. I would expect that for a loop, an else clause would happen when the loop does _not_ finish normally, or if they loop is empty. I'm sure it's a useful clause in certain cases, but the meaning of the word used is reversed. It might be better use 'then' or something like that:

for i in l:
print(i)
then:
print("iteration finished without breaking")
As far as I know differential pricing is based on classes like industrial vs commercial and applied fairly. Incentives for development are super common of course, and controversial in themselves.

This would be different though, targeting a business to pay more than other commercial enterprises. That's a targeted disincentive, and if not structured generically and applied fairly it's bad policy. Seems hardly different than Comcast deliberately slowing Netflix down, not to extract revenue, but to put them out of business.
> The symantics of for...else are immediately obvious

The code in your example is how it reads, but that's not how it works. The "obvious" reading is wrong, so it's obviously not "immediately obvious".

This is what it's actually doing:

found = False
for l in get_list():
if ...:
found = True
break
if not found:
...
I don't need to use third-party software to enable UAC in Windows or sudo in Linux.
Everybody starting a company for the first time should read this article and the associated book https://hbr.org/2008/02/the-founders-dilemma
Being a sole trader is a pain in France, and the taxes are outright robbery. The taxman feels like "hold on, this guy is actually making money... let me add a few zeros to his taxes to make sure he goes down!".
This comment is both factually inaccurate (as other posters have pointed out re: the toilet sensor) and completely misguided. Nobody should need to trust an opaque algorithm running on complex hardware to ensure their own privacy. Even if your beliefs about what Google or another owner would do with this hardware are correct (which I seriously doubt they are, it's far more likely the data will be used as feed-in for machine learning), there is little to no assurance that the police or other parts of the state would not compel surveillance using these devices, nor that malicious actors would not use them for their own ends.
After using fail2ban in production I've noticed Chinese attackers will start using a massive amount of entire subnets, which eventually cause servers to crash with such long Iptable rulsets.
It is useful when the "normal" flow is to terminate the loop early with a break. For instance, in a linear search algorithm:

for x in li:
if x == to_find:
print("found")
break
else:
print("not found")

Logically, the "else" matches with the "if" introducing the "break" and means "if none of elements cause the break branch to be taken".
Yes the for...else is useful but for years it didn't do what I expected, which is execute when the sequence was empty. After reading the docs a half dozen times I finally internalized that the else actually means "not broken," aka "not found."

So now when I use it, I always put a comment next to it for myself and the next person:

for item in items:
if found:
break

else: # no-break
print('not found.')
The problems is, any class (that's serializable) that is on the target machine's classpath, can be used as a serializable object. So if i want to screw with a server, i can create a payload with any of those classes, and send it to the server. The server will load that class when it sees it in the payload, and will execute code any code in the classes static initializer, before trying to instantiate an object. All of this happens before the host application regains control of the serialization, and realizes that the objects it's deserializing is not what it expects to be sent. So there have been a bunch of problems where classes no one expected to be used in serialization to be exploited because it's really simple for a class to marked serializable thru inheritance (be it class or interface).
12 Rules for Life
That only works because Python is an interpreter. Won't cause a thing on Java.
Meet the woman who can smell Parkinson's disease
I don't believe the 2 party system is the problem. Looking at political polarization in a country like France and it's just as bad.
So the problems don't apply to, say, rust because rust doesn't run arbitrary initialization when building structures?
101 BASIC Computer Games by David H. Ahl.

This was a book published in the 70s by DEC. I vividly remember at either the very beginning or the very end of the book there was a section on how to send submissions for consideration in future editions, complete with instructions on how to properly pack oiled teletype tape for shipping. :)

I found a copy of one of the editions of this book in my parent's book stash in the 80s some time after I got a C128. Up until then the C128 had spent most of it's time in C64 emulation mode alternately running a BBS, downloading cracked games while taking some liberties with the telephone system, or playing those games. Starting on that book put me on the path of teaching myself to program.

If the OP is looking for something that changes philosophical outlook, or something that might be relevant today, then I probably disappoint. However in taking the question literally, I'd guess this book set me on the path to the life I live today more than any other single book.
> the United Nations

They are useless. They did nothing to stop Russian annexation of Crimea in 2014, or the war that followed and is stil ongoing. They did nothing to stop Yugoslav wars here, earlier in 1990-s.

IMO the 2nd most significant thing after the nukes is global economy. Most countries are ruled by reasonable people who understand you can’t simultaneously bomb people and trade with the same people. Economic activities like trading and investments are far more profitable than fighting wars, even if you win these wars.
Pretty much. It's slightly less terrible than that -- the deserializer doesn't evaluate arbitrary Java expressions, but it can call no-argument constructors, run deserializer methods, and set field values (including private fields) on any loaded class that's marked Serializable.

As you can imagine, any sufficiently large codebase is likely to have a million different ways this can be leveraged to get arbitrary code execution.
Lets say your a hot upcoming startup and you dont have the funds to pay GDRP lawyers. In the early stages, blocking EU customers entirely may be tempting...
Thx fpr the good read
If I understand correctly Homespring has chosen one metaphor, and you write programs exclusively in the terms of that metaphor. This is not really different from current languages except that the more common metaphor is of a kind of abstract machine, and theirs has to do with salmon moving in rivers (presumably the runtime is largely a simulation of the river, salmon, etc.). And in general metaphor oriented programming languages would choose some other metaphor (probably something strangely concrete), and you would express things in terms of its parts. Is that close?
AIDA (2017)
Might catch some cases, but just from a couple of weeks ago, by an org that supposedly puts security very high up the priority list we had this:
https://news.ycombinator.com/item?id=17096022 (Signal's security hole created by using dangerouslySetInnerHTML)
I agree with your point, but I meant that I haven't seen this specific syntax in many py tutorials or projects I've read.
They probably used the word "else" to cut down on the number of reserved keywords, and for consistency with try / except / else.
EMusic Blockchain Music Platform
وکیل شهرداری – وکیل دعاوی شهرداری – وکیل متخصص شهرداری – وکیل شهرداری
Abuse of the workforce didn't start in 1940 and end in 1979. Some labor innovations you may enjoy:

- Weekends (40 hour week)
- Minimum wage
- No child labor
- Workers compensation
- Not being massacred by your employer¹

Don't be so glib about the necessity of unions -- the Fair Labor Standards Act was written with blood.

¹ See, e.g., the Ludlow Massacre, the Thibodaux Massacre, Battle of Blair Mountain.
Having more parties allowed you to voice your opinion by voting in a much more differentiated way. In the US you have no meaningful way to choose true libertarian politics for example. With more than two parties it had to become more about content than affiliation and identity.

You are right that Europe is also seeing a rise in right wing parties. However, the US is the only Western country that had actually elected one of those clowns.
Vitalik Buterin on privacy
Is 'The Indicator' a good value?
Finally would suggest it's always executed, even if aborted, like try...finally
My point was more towards benwilber0's comment; not a lot of usage in code I've seen.
> I used to wear two at a time as a kid :P

Me too! But that was when I was 22! :P

I was working remotely for a company on the other side of the world and while I could have used the clock app on my phone... Wearing two watches, one for each hand, was way way cooler (at least in my mind) :P
Well, many private European VCs are pretty willing to have you incorporate as a Delaware C-Corp or a UK company (don't remember what's the most popular structure for these).

I say private VCs, because there are quite a few pseudo-VCs funded by public money. They're usually pretty constrained in how they can deploy the funds. People will often end up with pretty unfundable structures (amongst many other issues). I can't speak for all countries, but in Poland it's an absolute scourge on the startup industry.
The "glass ceiling" statement is true in big corporations (you'll never get to the top if you have not graduated from the top Engineering Schools, even if you have the skills).

However, in Small & Medium Businesses, the startup movement has changed that a bit and the diploma is way less important than before.

In terms of mindset, it seems that it is an important part of our culture: Philippe d'Iribarne calls it "The logic of Honor" [1].

To sum up the differences between French and US management (at least, according to Iribarne)[2]:

- French relies on the concept of honor and duty. French employees consider that their honor and rank is way more important than their contract. You must manage with this in mind, and accept to be flexible in order to show consideration. You must also explain what are the limits so that employees will not go over them. Managers must give free space to their employees, being "invisible" when everything works out, respecting their honor, but must also go on the field when it goes wrong in order to show "how it's supposed to be done" and to inspire respect by example.

- US relies on honesty, and on the transparency of a work contract. Managers must control the work on their contractors on a periodic base in order to show interest and respect, as part of the contractual relationship.

=> In France, according to this study, the "Us vs Them" should be accepted by management as long as the companies goes well.

[1] https://www.ecole.org/fr/662/VA021205-ENG.pdf

[2] http://lirsa.cnam.fr/medias/fichier/diribarne2html__12633047...
Don't know about changing my life, but these books changed the way i look at things:

The Tao of Pooh: Benjamin Hoff

Slaughterhouse-Five, or The Children's Crusade by Kurt Vonnegut

TI 99/4a basic reference manual

Structure and Interpretation of Computer Programs, by Abelson, Sussman

Object Oriented Analysis and Design by Grady Booch

Darkness at Noon by Arthur Koestler

Thieves in the Night by Arthur Koestler

All the King's Men by Robert Penn Warren

The Good Earth by Pearl S. Buck

The Little Prince, Antoine de Saint-Exupéry.

War and Peace by L.N.Tolstoy

Chapaev and the void by Pelevin
I'm a strong python advocate and rarely use for/else for this exact reason. It makes more sense to me for it to be the other way (your way) around. I always add a comment on the else when I do too, to ensure that future readers don't make the same mistake.
Won't be accepted. Recognized as a problem, but now set in stone.
https://news.ycombinator.com/item?id=17156976