skysight-inc/HackerNews huggingface dataset:
I really feel like current salaries are too much to bear for honchos of the industry and that there's been a recent push to make it seem like "programming is easy" and "everybody can take up code". I agree that the learning process has been made much easier than it ever was before (MOOC, screencasts, collaborative learning, cornucopia of open source code available everywhere), but that's only the first step in the learning process.

That part (the one that leads to being able to produce code) has actually always been rather "easy". It's the next steps that are usually hard. Learning data structures, design, architecture, how to collaborate with coworkers, how to fix, debug and review code, mastering the associated tools (shell, git, regex, making a given editor your home and harnessing its power, etc).

From what I've observed with more junior developers that are usually coming through self-learning or accelerated programs, it's not the "code" that is hard, it's those following phases because in the end, they're what really matters.

Though, don't get me wrong, it's absolutely nice that we're pushing programming literacy and making it more accessible for everyone, I just feel like we should not be selling false hope.
Not everyone here accepts PG articles as infallible scripture, and many people have lots of experience to back up their disagreement.

(I agree with PG on this issue.)
No, Bitcoin was never supposed to be "against Davos meetings". These consensus meetings are all and only about increasing network capacity, that is all. You seem to conflate different concepts without understanding them. I suggest you read the Introduction of Satoshi's famous whitepaper¹. In short Bitcoin is about: (1) providing non-reversible electronic transactions, (2) reducing transaction costs, and (3) enabling micro-transactions:

"Commerce on the Internet has come to rely almost exclusively on financial institutions serving as
trusted third parties to process electronic payments. While the system works well enough for
most transactions, it still suffers from the inherent weaknesses of the trust based model.
Completely non-reversible transactions are not really possible, since financial institutions cannot
avoid mediating disputes. The cost of mediation increases transaction costs, limiting the
minimum practical transaction size and cutting off the possibility for small casual transactions,
and there is a broader cost in the loss of ability to make non-reversible payments for nonreversible
services. With the possibility of reversal, the need for trust spreads. Merchants must
be wary of their customers, hassling them for more information than they would otherwise need.
A certain percentage of fraud is accepted as unavoidable. These costs and payment uncertainties
can be avoided in person by using physical currency, but no mechanism exists to make payments
over a communications channel without a trusted party."

¹ https://bitcoin.org/bitcoin.pdf
Right, hacker might even target a website that's known to be visited by the targets, hack it, use it for drive by downloads attacks - and use the contest win a backdoored device (laptop,iPad,drive,etc) to cherry pick any targets that have not been compromised.
I'm afraid I disagree. I went from Ocaml to Scala. While full type inference is nice, it's a minor issue in practise, but the vastly bigger library ecosystem that Scala has (due to being a JVM language) isn't. Object orientation also works better in Scala than Ocaml.
Can you expand on this for someone who is not familiar with Hindley-Milner typing?
Under the CFAA, the burden isn't on the service provider to block access. They can be as incompetent as they'd like. It's up to the person accessing the service to not exceed their access rights - and in this case he had no access rights.

Simply put, the guy that bought the cameras acquired access rights to the view the camera stream through the cloud service with his purchase. When he returned them, those rights expired. By logging back into the service and viewing the stream from cameras he knew he had returned, he exceeded his access rights.
Ask HN: Where can I find true “Expert” freelancers
Sometimes at my workplace we come across some really obscure bugs or issues with technology that we use, e.g. HAProxy, or database sharding / replication, and nobody on the team has enough experience to diagnose what's going on without spending a few days getting really deep into the technology.

In situations like these we'd like to a find true expert with the technology, someone who has dedicated most of their time to it, and we'd be happy to pay $300+ an hour for their expertise. Most of the time we don't even need code written, we just some guidance on what could be broken and how to fix it. Usually we need help immediately too.

Unfortunately I can't find any sites that have these kind of freelancers. I remember hearing about a site like this a few years ago on a podcast, but I can't remember the name. Normal freelance websites take far too long to post the job, filter all the bad candidates and maybe find one person that knows what they're doing.
IT isn't the only one business which is fckd up. Another field is food and drink business.[1] There are few major corps who owns majority of more or less known food and drink brands. They see small business with perspective..lets buy it.

Seems like win-win situation. Corps will own competitor, founder will get money, process, know how etc.

As was already said in article, the main issue is that new copetitors has big entry difficulties. Disruptive innovation is almost impossible. Incremental innovation has almost no value or no minimal chance for suceess in terms of copetition with big corps. No matter who is front of you...big corp or SME owned by big corp.

One possible solution is startup culture. Business with VC. Create, fund, develope, sell, let it be acquried, forget. But it is circle. One group will own everythibg and you have no choice. Copetitive environment is damaged and destroyed.

In my and some neighbor countries is similar practice applied with healthcare and insurance companies. One big company own healthcares centers, hospitals, pharmacies, insurance company. No matter where you go. You will pay to one company. And if you are in pain ... you are helpless and you will pay because you have no choice.

[1]http://blogs-images.forbes.com/bethhoffman/files/2013/02/Who...
Homoiconic languages are ones where the program itself is a valid data type. Lisps (like scheme) are great for this because your program is just a list. You can insert and remove code using the same tools you would for manipulating a list generally. It makes metaprogramming much simpler.

The relation to AI is an assumption that AI and metaprogramming are connected. This is probably debatable, but it makes sense to me (and others) that AI development would benefit from being able to easily generate code and modify itself, much like you or I would learn a new skill.
"Yeah no" is now fairly common in American English too.
See, e.g.: http://www.grammarphobia.com/blog/2013/05/yeah-no.html
Seeing O(N^3) as runtime complexity for computing LCS was enough of a red flag for me to completely ignore anything that came after the incorrect claim. (For more info, see https://en.wikipedia.org/wiki/Longest_common_subsequence_pro...)
who is "we"? you are NOTHING.

reinventing MVC is fantasy??? i do it 4 times a day, lady.
O...K... but where do you store them? How do you sync them between devices? How do you auto fill them in the browser? How do you change them when a service is compromised? How do you securely share them with other users?

LastPass does all of that. And I don't even have to drop into the terminal.
The Web has already been reinvented, but not in the direction that Bernars-Lee wants. We have HTTP2 running everything through one pipe to big sites. We have Javascript that puts the site in control of the user's machine and makes web pages display-only, like PostScript.
More than half of all traffic is coming from the top 10 sites. The federated systems, email, IRC, and Usenet, have been replaced by Gmail, WhatsApp, and Facebook.
Might want to look into how many local amateur radio clubs' mountaintop VHF / UHF radio repeaters are dependent on the electrical grid continuing to function... They're not as autonomous as they seem at first glance. Shortwave and other bands for longer distance communications are not as dependent upon regional repeaters, sure, but take a look at how many VHF/UHF repeater sites are wired into the same grid as the other telecom things on their hills. Not very many of them have been built as fully off-grid photovoltaic/wind power.
I'm assuming you are not in the brexit camp ;)
I prefer practical programming language extensions, like the new C++ standard which adds useful things, or Hack which makes PHP useful, or the typed extensions to Javascript and Python.
Yes, that's definitely one of the great things about Scala.

If you come from an OO background, I recommend to avoid using Scala's functional features at the start. Just treat Scala as a nice, conventional OO language until you are comfortable with the language. Then, slowly use some of the more advanced features. Case classes and pattern matching are easy and powerful next steps.

Enjoy the ride!
Yup, also satellites are a limited resource where as ham is completely decentralized.

In 5 minutes I can setup my D710 as a cross-band repeater to a VHF <-> UHF allowing anyone who has a $35 Baofeng within ~7mi of me to cover over ~100mi area. Sure sat phones are great but they aren't nearly as good for local communication.
Ask HN: What is holding your startup back?
What do you feel is holding your startup back from achieving massive success and market-wide adoption?
Learning to code is easy
> For instance if you were a V.P. at an mortgage company you could push your underlings to make bad loans. Even though in the long term it will hurt the company when those individuals default, in the short-term you will look awesome.

Having metrics to measure success is of course important. While micro metrics like lines of code produced per day are easily gamed, metrics like number of successful projects divided by the estimated risk are not. For the mortgage, number of mortgages divided my estimated risk is similar, and would easily identify the managers that are putting the company at risk to game their metrics.

> Or for instance when a V.P.s boss makes a wide ranging decision about the company will move in a new direction. For instance "To the cloud".

Do you mean that the CEO is declaring that the company should use the cloud for all of their products, or that the company is to become a cloud provider? Because the former is exactly the wrong type of decision that I've been talking about, and the latter is exactly the kind of decision they should make.
> I also take issue with "going out on the weekends" being considered a negative in general

...and in the image they use the phrase "staying in" as a sign of financial stress.
The combination of stronger type systems (especially dependent typing), less error-prone design (no manual memory management, no mutation, no global state, no loops/off-by-one errors), separated side effects (crashing during computation won't break things, less places for outside interference/external failure, etc.), and better error handling (no null, usually no exceptions meaning you have to encode failure into the return value itself without losing type information) solves many common bugs in imperative code.
Chiming in to agree. I like how you can customize certain characters (like `*' being at the top or in the middle of text, `g' being one or two stories, `0' having a slash or dot).
It would be interesting if there were a curated list of recognized industry experts.

E.g. My friend Dathan Vance Pattishall [0] is a MySQL super-expert guru.

[0] https://www.linkedin.com/in/dathan
It's also a real pain to call Scala code from Java, which makes blending Java and Scala code in a project, or adding Scala code to an existing Java project, much less attractive.
> The vast majority of the planet stores knowledge in people and references it via direct communications.

i'm sorry, but this is complete nonsense based on some kind of ignorant, fantastical misunderstanding of how non-western people live. in fact it's pretty damn offensive if you really think about it.

let me give you a hint: east and southeast asia, india, middle east/northern africa have all been pretty big fans of writing stuff down for a while now, and represent well over half the world's population. you're telling me these people don't read books or go online?

https://en.wikipedia.org/wiki/List_of_countries_by_literacy_...

"The global literacy rate for all people aged 15 and above is 86.3%. The global literacy rate for all males is 90.0% and the rate for all females is 82.7%."
The people who screwed up the DAO smart contract can't fix the problem from within the DAO, and they want to change the rules of Etherium to fix the DAO's problem. The fact that the same people are behind Etherium, the DAO, and the programmable door-lock startup makes this possible. It also makes it suspicious. In the Bitcoin world, all too often we've seen an "outside hack" that turned out to be insiders.
As long as you're identical to the CEO, you're normal
Before posting something dismissive about this, please remember how easy it would have been to dismiss the internet and the web themselves as things that couldn't ever happen, nice visions but impossible in the real world, etc. etc. and so on.

When the people who actually made these things talk about what needs making next, we should hear them with an open mind, not rush to think of objections.
I don't think this is actually true for most of what people do with AI right now. Machine learning these days is something where you want strong, native machine level support for numeric programming on matrices. Possibly with GPU support. So a lisp based language wouldn't really help you much in the current environment.

If what you want is a system that rewrites itself, then you definitely want homoiconicity. It also helps if everything is one big expression.

Let's say you want to write an evolutionary algorithm that rearranges fragments of its code and runs it. More successful functions make it to the new generation. You want LISP for that.

Realistically, you could probably do this on any abstract syntax tree. But the problem is that unless your language is homoiconic, what you get back might not actually be valid in your language. So, homoiconicity gives you bidirectional support for rearranging the AST and still getting something you can read.

It's also just a lot easier to write something that looks at the code and does computation on it when that code is also data.

But, like I said, I'm not sure many people are actually doing this these days. It was popular back in the day. It's not clear that it's the right way to do things.
I'd just call it a union. Since it's a union of two integers.

Than name of the variables should tell you about what the data means.

The data structure should tell you how it's organized in memory.

Edit: You can also abstract the data type from the union. You can have unions of other types as well so why have 30+ union types. You can also have unions of more then a single pair.

Also I feel that rather then having the data structure represent the meaning, variable-based meaning is the best way to go as it will lead to clearer names.

union_t<int> location_coordinate = {
x = 0;
y = 0;
};

This would be accessed by:

location_coordinate.x; // == x
location_coordinate.y; // == y

Rather then

location_t position = ...;

I personally like longer variable names as it makes it explicitly easy to see exactly how it's expected to behave.
Amazon Gets the Wrath of Paris Town Hall (French)
For China it would be enough to acknowledge the Lacotah Republic to fire up the Civil War in the US.
Could easily be pushed based streaming interface of any design. Chat is the most understandable transitional model.
That coding challenge sounds like a far cry from developing even a prototype application. What was the skill level of the people doing it? Had they had experience in both dynamic and static types languages? What were the languages, Java or something modern?

Edit: I don't mean this to be snarky, I just feel that it is not a very good experiment to draw conclusions from.
It's not false, it's just unspecified. If you hand me scheme I can provide it a unitype system without conflict. If you hand me Haskell I cannot because the language has explicitly said that uncheckable statements are invalid.

You can of course go further with your static analysis—a language may support many type systems in principle regardless of what the compiler accepts.
I have an antenna ready to be raised and station in a box.... but other then feeling like a prepper I have no practical use for it. Network effect applies here too, like for any other social network. Only old people here on waves, checking weather daily. I was excited years back, but now it feels like dying breed.
>Energy from a solar tower is “two to three times more expensive to produce than classic electricity plants using carbon or fuel,” said Eran Gartner

Does that include the cost of building the plant? What are the running cost of a solar tower, and what is the expected lifespan vs a coal one?
May be off-topic, I wonder if anyone is planning a redesign of Unicode for the far future? or is there a better way to handle characters, so we don't require a giant library like ICU?
Show HN: YouWorth's Slack app – Market values for 1,000+ tech skills
Ahem. Don't we have this already? It's just called "instant messaging" (because name "world wide web" is already occupied for the term describing a system of interlinked documents).

Push-based, aware of devices (and, to the extent possible, of people), based on "messages" rather than "documents". This stuff works great for the latest gossip. The problem is, it doesn't work well for information storage and subsequent (on-demand) retrieval, sans the "recent messages" case. Every instant messaging archival system I've heard of is basically pull- and document- based stuff.

I guess query + subsequent retrieval (pull) can be decoupled into two pushes (push "hey, anyone has this book?" + push "I heard you've asked for this book, here you go") - an interesting idea that some distributed networks already do. But this is still based on concept of documents and content-based addressing...
Learning to write code is not too hard, maybe not the easiest thing but really not too hard. Writing good code - readable, maintainable, secure code with few bugs - on the other hand is really hard. The gap between a non-programmer and a junior developer is way narrower than the gap between a junior developer and a good senior developer.

And something that I am missing in most of those articles is that writing code is actually the easy part of the job, the hard part is talking to the customer and figuring out what they actually want you to do and then keep up with them changing their mind every four weeks and still somehow manage to ship something that roughly does what it currently is supposed to do.
Dgraph is a next generation graph database with GraphQL as the query language
Hemmingway has a terse writing style, but few consider his prose unimaginative.
Pure FP languages are still pretty niche, but what has happened is the big mainstream languages like C# and Java has adopted more functional features like higher order functions, lambda syntax, increased focus on immutability and so on. So functional languages are clearly trendy among the language designers, from where the inspiration trickle down to the mainstream.
California's jobless rate dips to 5.2 percent, 9 year low
If there's enough pushback they won't all use it. And that could become a competitive advantage: rent from us, we respect your privacy.
Is there a Spec available for Streembit somewhere? I've looked at the documentation (http://streembit.github.io/documentation/) but there doesn't seem to be much detail.
No mate, they are just practical people with pragmatic agendas.
Yup, really depends on what you're local club is doing.

We've got a pretty active club here with is pretty awesome and I'm hoping to spend some time playing around with alternate data protocols later this year.
Dynamic typing and static typing can coexist in the same language. C# is generally statically typed, but the more recent versions support the dynamic keyword - at which point you're statically typing things to be dynamically typed. Typescript of course goes the other way - adding static typing features to otherwise dynamically typed Javascript.

...the first thing I do when encountering JSON in TypeScript these days is to add type definitions to describe the schema. If I have a hard time describing the schema to TypeScript, I'm going to have an even worse time trying to keep it straight myself.
I've been using Triplicate (http://practicaltypography.com/triplicate.html) for a few years and it's still my favorite by far. Not free, but really reasonably priced. (Note there's a special variant suitable for coding, you can see examples in Racket in the PDF specimen.)
Try Fantastique Sans Mono:

https://github.com/belluzj/fantasque-sans

At the very least, it will make you really appreciate Monaco.
That demo is rather impressive, but the AVR in an Arduino is much faster than a Z80. This machine is running at ~7.37MHz (which is fast compared to old Z80 based personal computers) whereas the Arduino typically runs at 16Mhz. Further, an instruction takes a minimum of 4 cycles on the Z80 and many take longer whereas most AVR instructions take only a single cycle.
>Among the behaviors that count against your Tenant Assured “credit” percentage — i.e., how confident the company is that you’ll pay rent — are “online retail social logins and frequency of social logins used for leisure activities.”

Are we to believe that this company has actually done proper analysis to make these kinds of correlations? If not, what sort of legal liabilities exist for trying to make these sorts of predictions based on speculation / assumption? This seems like something that consumers should be protected against, but I assume that the company at least thinks it can hide behind the (implicit or explicit) consent that potential tenants provide by signing up voluntarily.
I am 99% certain you are just trolling, but you advocate replacing written technical documents and written science with oral tradition? Riiiiighhttt......
Let's start with all useful parts of the radio spectrum falling under various sorts of restrictions (with examples):

* Closed licensed users: cell providers, public safety, etc

* Location limits: immobile antennas like broadcast FM

* Technical limits: ISM devices, Wifi, or FRS walkie talkies

* Content limits: Amateur radio

Amateur Radio gets to bypass a ton of these restrictions:

* Anyone who can pass a test can get a license to use these frequencies

* You can transmit from nearly anywhere

* You can use tremendous amounts of power (1500W vs Wifi's piddly 0.5W or less)

* You can use whatever equipment you can solder together, no certifications other than an honor system of "I'm fairly confident it's within spec"

Encryption would negate the ability to police the few limits left but also notably, the content. And that primarily means preserving noncommercial purposes but additionally, you're required to periodically identify yourself using your FCC callsign.

The Amateur Radio community is already a little nervous with the influx of cheap $30 radios falling into the hands of unlicensed and inexperienced users (notably "prepper" types that read disaster readiness articles like this one).