skysight-inc/HackerNews huggingface dataset:
Knowing what he wants is only step 1. You also have to know what he needs to get there and his own limitations to do so. He has to impress someone to get to where he wants, and he can’t do that simply by being a jerk, he’ll need to show results. You’ll need to figure out what those results are, and how you figure into them.
Upwork is not a job, Upwork is a business platform. You need a business license to work through it (legally, I wouldn't advise to fake a business license because it leads to tax issues on Upwork side and they will come after you, might even report you). That might and might not be possible for OP depending on their location.
Apparently someone posted this here because of my remark:https://www.reddit.com/r/programming/comments/90ov9i/a_respo...

Nice to see it get such a nice response!
Yea, even if the local working population can’t afford them, the bay area can still be viewed as a hot spot to be causing housing to go up because they represent scarce investments/stores-of-value. Pressure could then push salaries higher into a positive feedback loop.
It would be interesting to see how good the combination of EA an NN would be... This is basically us, humans: evolution + learning. Have there been any attempts to combine the two?
Agree that this is a problem (if the programmer is not careful).

But serious question, why even bother with this one fix?

The only reason for the fix is so to make it more difficult to make errors.

Fix arrays, then you would fix null pointer, then you might add objects, templating/generics to support a good collections library, rtti, and before you know it you are creating another one of c++, D, go, java. And we already have those.

C paved the way. Why not let it be the end of it?
I’ll add to this that C having committed to this mistake is one of thr main reasons some people (scientific programmers) are still using Fortran. Arrays with dimensions, especially multidimensional ones, allow for a lot of syntactic sugar that are very useful, such as slicing.
If quantum computers can maintain a viewpoint where cause and effect don't matter, it seems like they will be at a point very different from the human viewpoint - where a person inherently has more difficulty predicting the future than determining the past.
Quite surprised to see this not mentioned. C99 allows you to use the "static" keyword in array function parameters like this:

void foo(int arr[static 10]);

It cannot check whether a passed pointer will point to enough space, but the compiler can warn you if you pass a fixed-size array of a smaller size.
Why was it posted now without a year in square brackets? That was misleading.
I agree that this is a symptom.

Uber is in the business of pushing exploitation as far as possible. And they are not the only company doing this in the self-destructive frenzy of late stage capitalism.

The official narrative is that everyone has a choice, while removing as much choice as possible for most.
Well, when I hear "mansions" I tend to think along the lines of Biltmore [1], but that's a house with 178,926 square feet (16,622.8 m2) of floor space.

[1] https://www.biltmore.com/visit/photo-gallery
From their price list it looks like they decided to buy a Chinese clone HackRF instead of a HackRF One from greatscottgadgets or a distributor.

>All the components are available off-the-shelf. The total cost is about 223 US Dollars ($175+$35+$10+$3).
Dynamic arrays are far, far more common than static ones.
You replied to someone complaining about medically ineffective doses with an evidenceless recommendation of another low-dose product.

Doctors and patients both benefit from the placebo effect - if it solves the problem, great, doctor and patient are happy and continue to do it.

I have health issues no one knows how to treat, and I have had doctors (qualified medical experts with decades of experience) recommend things there was little to no reliable evidence for currently, just in case they worked (didn't for me).

I (and lawmakers - CBD etc. are illegal where I am) want to know if things actually work.
Well, if you don't have enough money, then what's the plan? Besides, who pays for lightening?

What I'm trying to get at is that this feels like a brittle strategy for something that is as easy to start as a fire. The Chicago fire is an example.
Elon Musk.

Almost everything he says is garbage. He claims we live in a simulation within a simulation within a simulation and artificial intelligence is our biggest threat. Actually we live in capitalism and our biggest threat is oligarchs like himself (disagree? Well I'm not a thought leader so go easy on me).
Well, I have had well run experiments which showed that the “currently internally hyped” way of doing things is completely inferior to the “old boring” and inexpensive way. The project leader was extremely hyped about doing the experiment to prove the superiority of the new hyped way. When he got the results though, it was clear that this was not to be talked about and this result would not be presented to his superiors.
The proposal here is way too vague. And if you flesh it out, things start to fall apart: If nul-termination of strings is gone, does that mean that the fat pointers need to be three words long, so they have a "capacity" as well as a "current length"? If not, how do you manage to get string variable on the stack if its length might change? Or in a struct? How does concatenation work such that you can avoid horrible performance (think Java's String vs. StringBuffer)? On the other hand, if the fat pointers have a length and capacity, how do I get a fat pointer to a substring that's in the middle of a given string?

Similar questions apply to general arrays, as well. Also: Am I able to take the address of an element of an array? Will that be a fat pointer too? How about a pointer to a sequence of elements? Can I do arithmetic on these pointers? If not, am I forced to pass around fat array pointers as well as index values when I want to call functions to operate on pieces of the array? How would you write Quicksort? Heapsort? And this doesn't even start to address questions like "how can I write an arena-allocation scheme when I need one"?

In short, the reason that this sort of thing hasn't appeared in C is not because nobody has thought about it, nor because the C folks are too hide-bound to accept a good idea, but rather because it's not clear that there's a real, workable, limited, concise, solution that doesn't warp the language far off into Java/C#-land. It would be great if there were, but this isn't it.
> I used a few apps with the captive Windows runtime back in the day. It was highly frustrating because the app it was bundled with worked great, but if you wanted to do anything else (eg view other files) then Windows wouldn't let you because it wasn't the full product.

In other words, working as intended. I mean, that's basically what you got with old DOS apps. You could spawn a new command.com from within the app if you were lucky, but that's not nearly the same as multitasking. You had a stack of programs running and had to completely exit the second one again to get back to the first.

So windows didn't really take anything away but gave you a pretty good GUI.
Because buffer overflows are probably the number 1 security bug in C programs.
Fat Pointers - Pascal has had them since I think the beginning?

So...30+ years later, we decide Pascal was right. Just saying. Shoutout to FreePascal/Lazarus!
Rockstar: A programming language where programs are also song lyrics
I would say it is. By not being hypothesis driven, you are producing too many degrees of freedom by de facto testing every comparison.

This is a huge problem in science too. I have regularly been told to just see what happens and come up with hypotheses after, or others have been unable to say what their hypotheses actually are.

Scientists seem less and less likely to be trained in statistics, and in the scientific process. Technical knowledge is important, but understanding of the scientific process is much more important.
Not that this "makes the point", necessarily, but GHC Haskell does have the whole Safe/Unsafe Haskell module inference/guarantee, so it may be a bit easier to avoid unexpectedly unsafe behavior entirely.

I have no idea whether any equivalent exists for Rust.
Thanks for the link will take a look. Not familiar with the beating heart example but I do recall the example of the flock of birds. So will analyse that.

If I recall correctly the birds are a network, where each one would monitor the ones closest to them and react based on that?

Which is monitoring and control. Just at a very micro level.

Also note the more appropriate term used above was “recursive” rather than hierarchy.

The behaviour of a flock of birds is referred to as a complex adaptive system, with emergent properties. It can be modelled quite accurately as a vsm.

Put simply one needs control, monitoring, feedback and information flow to exist. This is needed at every level (hence recursive).

Therefore rather than contradict my comment, your post is just a further expansion.

A complex adaptive system, can itself be modelled as a vsm.
> In 2014, I founded the company LinkedIn Skill Endorsements, and after posting on Twitter that I was charging ten cents for endorsements (a limited time discount from the usual 50 cents), I snagged three customers. I sent them a welcome email. Note the highly inflated “change fee.” As soon as their payments were processed in PayPal, I endorsed them for things like “alcoholism,” “horse care,” “blood,” and “solid waste.” Since this is stuff most people wouldn’t want on their resume, they’d be forced to pay me a $10,000 fee to remove the terrible endorsements.

Lol, this guy is too much.
> as businesses interests have succeeded at undermining and destroying unions

Unions largely have done that to themselves, as they organized into the same structures they purport to combat and act accordingly, with a capitalistic bend.
Facebook thinks sharing personal problem anonymously to get help is SPAM
My guess is that acquisition-by-marriage falls under a different rules category than vanilla naturalization by time and integration and learning the civics and language, which is the pathway an adult would have to take moving to a place where there was no bloodline binding.
Followed by Paris, Texas?
I really don't understand how criticisms get so much attention, when it's nothing close to a constructive study. It's just some unhappy employee's porthole and it seems to be too successful to dismiss.
If your 17 and not already a dot com superstar, you’re not going to land a job at Google, you’ll probably have to do it the hard way like everyone else.

But if you’re lucky and don’t “need” (ie your parents feed you and put a roof over your head), then I’d think more about getting cool experience than getting a good salary.

Call up professors and lab-techs at nearby universities and ask if they need help with basic web/data tasks. They always need custom coding for weird experiments, and you’re constantly surrounded by smart people.

If you have a relative/friend in local government, offer to work for cheap/free and improve their (likely) horrible website/IT systems. You’ll see how the government (sluggishly) works and will come out with a better understanding of bearucacy.

If you or your parents know a doctor, painting company, landscaper, coffee shop, or any other small business, offer to improve their website or online presence. You’ll see the daily struggles of trying to make a buck as the small guy.

Any of these would teach you techincal skills as well as some good life ones. Sorry, but because you’re 17 they probably won’t trust your skills (even though they probably should). Deal with condescension in stride and blow their socks off with what you can build.

Wish more teenagers had the drive you do, it sure beats mowing lawns or working at Chipotle.
Wrongfully convicted Isaac Wright Jr returns to courtroom as an attorney (2017)
Interesting stuff. The re-creation of Spanish geography in place names, the ancient history of piracy around those islands, ties to the Spanish kingdom. All leads me to believe this was a secret society founded by pirates and kept going as a sort of organized crime gang surfing on their old wave of power on the island.

The occult parts are often present in secret societies for various reasons, perhaps only to cement the loyalty of members. Or in a time when science education was far from prevalent, to imbue a deep respect for the order.

Either way it sounds like the occult stuff was just a small part of their business. It was in fact just a crime syndicate that had devised a way to rule over their island.

I really want someone to find that book and carbon date it. Would not surprise me if it was from the 18th or 17th centuries.
Our job is often an important part of our identity. I'm a doctor but work part time in electrical engineering. I'd be hard pressed to leave medicine completely and I suspect it's much because "I'm a doctor".
You say your brain is a complicated computer and your senses are the IO. Would I be right to say that time is also another form of input to our brain hence making it another IO?

Would you also say that it is possible then to model our brains as a function and the IO as arguments?

Does a function have consciousness or is it the application of the function what gives it consciousness?
I'd have to point out that Oracle never developed a competing search engine and ad network the way Microsoft did, and their CEO had not been publicly quoted as threatening to "kill" Google.

Google's fears turned out to be unfounded (given the way things turned out) but it was Microsoft that they feared.
There are probably higher dose formulations.

The key here, though, is that formulation contains THC (and extracts from other plants) and is derived from marijuana cannabis plants, instead of just hemp-derived CBD.
I've spent ~1 month tramping all over Cuba. This is absolutely spot on.
CAS do form hierarchies, however.
Again, academia/research is not my profession. But, some cool efforts in this area include osf.io, which is trying to be the Arxiv or Github of preregistration for scientific studies.

The best preregistration plans will typically include a declared sample or population to observe (http://datacolada.org/64), or at least clear cut criteria for which participants or observations you will exclude.

I think for the type of economics/finance research I’m most familiar with, you often implicitly announce your sample when securing funding for a research proposal. E.g. if I’m trying to see if pursuing a momentum strategy with S&P 500 stocks is profitable (a la AQR’s work), it’s pretty obvious what the sample ought to be. This is partly why that meta study I linked to earlier was able to sniff out potential signs of p-hacking.
I always found it more powerful, to truly understand the conditions, of someone who went through that - first hand.

Do you feel he embellished, or why would you state that?
The issue is the new linux kernel used by 18.04. Nvidia drivers break.
In fact if you install debian, that waits before upgrading the last kernel, you do not have any problems.
Yes, that's C's biggest mistake. (But remember, they had to cram the compiler into a 16-bit machine.) No, "fat pointers" are not a backwards-compatible solution. They've been tried. They were a feature of GCC at one time, used by almost nobody.

I once had a proposal on this. See [1]. Enough people looked it over to find errors; this is version 3. The consensus is that it would work technically but not politically.

The basic idea is that the programmer knows how big the array is; they just don't have a way to tell the compiler what expression defines the length of the array. Instead of

int read(int fd, char buf[], size_t n);

you write

int read(int n; int fd, char (&buf)[n], size_t n);

It generates the same calling sequence. Arrays are still passed as plain pointers. But the compiler now knows how big "buf" is, both on the caller and callee side, and can check.

I also proposed adding slice syntax to C, so, when you want to talk about part of an array, you do it as a slice, not via pointer arithmetic.

The key idea here is that you can call old code from new ("strict") code, and strict code from old code. When you get to all strict code, subscript errors should be all checkable.

[1] http://www.animats.com/papers/languages/safearraysforc43.pdf
I happened to know the idea does work, and has been working in D for 18 years now.

> If nul-termination of strings is gone, does that mean that the fat pointers need to be three words long, so they have a "capacity" as well as a "current length"?

No. You'll still have the same issues with how memory is allocated and resized. But, once the memory is allocated, you have a safe and reliable way to access the memory without buffer overflows.

> If not, how do you manage to get string variable on the stack if its length might change? Or in a struct? How does concatenation work such that you can avoid horrible performance (think Java's String vs. StringBuffer)?

As I mentioned, it does not address allocating memory. However, it does offer one performance advantage in not having to call strlen to determine the size of the data.

> On the other hand, if the fat pointers have a length and capacity, how do I get a fat pointer to a substring that's in the middle of a given string?

In D, we call those slices. They look like this:

T[] array = ...
T[] slice = array[lower .. upper];

The compiler can insert checks that the slice[] lies within the bounds of array[].

> Am I able to take the address of an element of an array?

Yes: `T* p = &array[3];`

> Will that be a fat pointer too?

No, it'll be regular pointer. To get a fat pointer, i.e. a slice:

slice = array[lower .. upper];

> How about a pointer to a sequence of elements?

Not sure what you mean. You can get a pointer or a slice of a dynamic array.

> Can I do arithmetic on these pointers?

Yes, via the slice method outlined above.

> If not, am I forced to pass around fat array pointers as well as index values when I want to call functions to operate on pieces of the array?

No, just the slice.

> How would you write Quicksort? Heapsort?

Show me your pointer version and I'll show you an array version.

> And this doesn't even start to address questions like "how can I write an arena-allocation scheme when I need one"?

The arena will likely be an array, right? Then return slices of it.
I understand you're probably like most people on hacker news and don't care for people on the "sales end" of the spectrum, but he definitely didn't get rich selling advice.

He runs a really successful marketing company (https://vaynermedia.com/) a sports agency (http://vaynersports.com/), gives most of his content away for free on YouTube, wrote 4 books and is a NYT + Wall Street Journal Bestseller, and is pretty respected in the early stage Silicon Valley investment community (https://www.crunchbase.com/person/gary-vaynerchuk/investment...).

Like most things on hacker news, don't speak on something unless you know what you're talking about.
What is the song called? It sounds very similar to a Minecraft OST
While this arguably might be true of some sectors (like the auto industry), the same cannot be said for unions like those of service workers, teachers, and those organized by the IWW.

And this narrative of course absolves business interests of things like how they used the red scare to attack union leadership, buying themselves judicial and favorable NLRB rulings, not to mention how curbed they are in their power relative to unions in Europe by the Taft-Hartley act:

https://jacobinmag.com/2017/12/taft-hartley-unions-right-to-...
Do yourself and the industry a favor, tell them gfy.
Maybe a servant's hallway?
“We already knew that pigments from tattoos would travel to the lymph nodes because of visual evidence: the lymph nodes become tinted with the colour of the tattoo. It is the response of the body to clean the site,” study coauthor Bernhard Hesse, a visiting scientist at the European Synchrotron Radiation Facility (ESRF) in Grenoble, France, says in a press release. “What we didn’t know is that they do it in a nano form, which implies that they may not have the same behaviour as the particles at a micro level. And that is the problem: we don’t know how nanoparticles react.”
Up Your AWS CloudFormation Game with VS Code
It cannot be done in compile-time in general case. Rice's theorem forbids. Every non-trivial property of a program (like whether result of this function lies in this range for all inputs in that range) is undecidable.

ETA: I'm not completely correct. Ada could have used something akin to 2-complement overflow handling, that is forcing every operation on a range to have a result in the same range, but it introduces runtime overhead too.
There have indeed, see https://en.m.wikipedia.org/wiki/Neuroevolution
Was just thinking the same thing: Deep Evolution
Wormholy: A debugger for iOS network calls
The is some space between always a command and control mechanism and not always a central monitor. There are cells that communicate / coordinate via hormones. So you get coordinated behaviour via stimulus / reponse.
> You need a business license to work through it

Actually you don't.
joe_the_user is going to post a comment
I don’t understand what the hoopla is about: in assembler we deal with arrays by having to know the size of each field without giving it a second thought. The solution is to learn assembler first, then move on to C. And AWK, as the next generation C doesn’t have this problem, or any of the C problems.
I beg to differ. In C especially, static arrays are quite common as struct members and as static objects at file scope, because dynamic allocations are a pain to manage and unnecessary when the maximum expected size is reasonably small.

When the size of such arrays is computed at compile-time via macro definitions, that feature is quite handy.
I suspect that the reason your idea was not adopted was the syntax. It's not a phat pointer, it's two arguments with some rather complex syntax to connect the two.

The reason I'm fairly confident of that assessment is I've had similar experiences with D when the syntax for something was too complex. Early on, the syntax for lambdas was rather clunkly. Everyone either hated it, or insisted that D didn't even have lambdas. Greatly simplifying the syntax was a revelation, suddenly D had lambdas and they became used everywhere.

Syntax matters a great deal.
One of the issues I found with the Agile implementation in my current company is that there's no longer an architectural/technical leadership within the team

Agile Coach here. Yes, this is toxic to quality and technical excellence.

The typical hybrid Scrum/corporate org chart I find puts product ownership (the “business”) in control and leaves each team’s tech lead (responsible for getting the team to the sprint goal) as the last line of defense of quality and technical excellence. What ends up happening, tech leads with no technical air cover give up craftsmanship in exchange for making the product owner happy and therefore keeping their job. A number of companies are going to wake up in a few years with an agile hangover of legacy garbage rivaling the mountain of shit they used agile to replace.

Should make a lot of consultants a lot of money.
So one in ten of your findings is bogus.
This article was not created based upon theory.

It was created based upon real world experience having designed and implemented it in D. Where all of your concerns have not been discussed in the years following that article (it was already in the language for about 8 years at that point aka the start and has been solidly proven to work in the exact same context as it would have done in C).

In D at least, you can grab the pointer by a simple .ptr and for length .length. To get a specific element, it is as you would expect &f[i] all nice and straight forward. But what if you want to create an array from malloc? In D that is easy, just slice it! malloc(len)[0 .. len]. And free is just as you would expect from above, free(array.ptr);