skysight-inc/HackerNews huggingface dataset:
I've been recommending this to co-workers who want to learn how to write their own language. I had ideas on how I would write a book on compilers and Bob had all the same idea, but he actually went ahead and acted on them.

1. Avoid long discussions on the theory of parsing, how to transform regular expressions into table-driven DFAs, how to build an LR(1) parser, etc.. These topics can be interesting later on, but for the benefit person who just wants to learn to write a language, the author should instead focus how to write the scanner and the parser by hand using a predictive recursive-descent. The value of this approach are three-fold: (1) the book is shorter, (2) it's a simple approach that works with any language without specialized tool (useful if someone wants to write such a tool for vim or Emacs, say), (3) it feels more concrete, more "real" to write a parser by hand rather than create a few grammar rules and let an external tool create the code that does the parsing.

2. "Breadth-first" rather than "depth-first". In a typical compiler textbook, each chapter exhausts almost all that there is to say about a topic before moving on. I think a more practical book will avoid such deep discussions and try to go as quickly as possible from source language to executable program. After the initial implementation is complete, the author can go back and add more details. Bob's approach of having two interpreters, one AST-walker and one that builds bytecode, fits that idea quite well.

3. Multiple implementation languages. The implementation of a language is largely guided by its host language: if using ML or Haskell, then sum types will be quite handy; in Java we can rely on the library's excellent collections. It's cool that Bob decided to write an interpreter in Java and another one in C; the reader will get to see how some decisions in the former (e.g., using exceptions) are "translated" in the later.

4. A full implementation in the book. Many compiler textbooks use pseudo-code and steer clear of "pedestrian" topics like good error handling. By having a full implementation, Bob ensures that the little dirty details are addressed also and not swept under the rug and left for the readers to discover and struggle with.

I really look forward to the day when I can order a copy of Crafting Interpreter, I have no doubt that it will be a terrific book.
coffee pods look a lot like those in seed starter kits. Startup idea?
I just got done watching a video called "make for reproducibility in science", which made a lot of sense. The impressio I get is people do weird things to make and then hit edge cases and complain.
Yep, I guess you really didnt read that article :D The List in the title is not the datatype ...
master-master is evil.

Not sure of your other points, i have no need for them.

What i really don't like on MySQL (and i don't care for a lot of other stuff): MySQL 5.6 (yeah don't forget your version numbers) really sucks for queries with or.

It sucks to write 2 selects with an union which is 100x faster than the same query with one select and ONE or.
There are too many goddamn lists. You want to be a programmer? Good! Google for courses and just pick what you want or need to get the job done.
Is there no chance of saving Solaris? If Oracle doesn't have a commercial interest in it, why don't they transfer it to Apache or other foundation? It's not an unusual thing to do, and Solaris devs could make a living by support and maintenance.
Verizon Up offers rewards in exchange for customers’ personal information
CheckRecipient is hiring engineers (various roles)
> I've been called a Nazi scum for advocating civil behavior, refraining from violence and doxxing, and siding with free speech for everyone.

You know that's going to require more than anecdotal evidence though, right?
Finding the closed form of the integral of a closed form, yes then what you say is true (this is different from 'analytic' which in mathematics has a different meaning). Scope of the concept of even baby integration of a function is much much larger, and OP is talking about that.

Note the key word there is a function not a function with a closed form that's a tiny subset.
This is the worst comment I've read in a long while. Political discussions on HN are the worst.
It feels like there aren't a lot of people in this thread that have spent any time in this space, specifically health care in East Africa or the wild wild world of NGOs / aid there.

This has the same breathless and "six weeks of hacking to save babies" feel to it that every other project starts out with. What exactly is different? There are a zillion mini-EMRs operating in East Africa, especially Uganda, what most lack is real integration and cooperation with the government to make them sustainable and scale. What is the story there for Watsi? Why will Watsi avoid the complexity of a real EMR like OpenMRS? Are you integrating with them?

There's a slide somewhere that I think UNICEF put together of all the NGO (as in non-UG-government, not just non profit) health projects active in Uganda. It is this hilarious demonstration of the crazy amounts of bootstrapped projects exactly like this and just how much they overlap.

To the founders, have you read The White Man's Burden? If not, please bump it to the top of your list.

Source: I lived in neighboring Rwanda for 5 years and work in this space, including projects in Uganda. It is a fascinating space with lots of opportunity for good, but also one that requires real introspection on why you are pursuing particular strategies and whether that is being driven by ego or truly because you think it is the best for the people. Almost always the answer is that no, a new thing isn't required, but rather you should be pitching in with someone else or building upon an imperfect system to better it, because that system is government owned and managed and thus will be sustainable and gives the country and people agency. This is why aid is hard work, because most good organizations have moved past the "hey, look what we built you stage" to instead trying to build capacity and institutionalize changes. That is so much more difficult but much better tack, though my beliefs are still more in the camp of direct cash transfers these days.
>These are resources I can recommend to every programmer regardless of their skill level or tech stack

> Highly opinionated . Not backed by science.

This kind of indicated that to me, at least. Also the format of the title is just inherently daft and a rhetorical device that summarizes the kind of list it is. Like "things to do before you die", or "ten things you won't believe Michael Jordan sat on".

We all have our own version of this list in our heads. This person just published theirs.

Also it says:

>P.S. You don't need to know all of that by heart to be a programmer.
But knowing the stuff will help you become better!
are you a programmer or a manager?
Denmark’s Just Sold Off Its Last Oil Company and Investing in Wind Farms
Woah What Computers Still Can't Do sounds really interesting, I think I might read What Computers Still Can't Do.

Would you be able to tell me more about What Computers Still Can't Do before I buy What Computers Still Can't Do?
Men who want to fight sexism at work: Read Sheryl Sandberg’s blunt advice
7 Brilliant Examples of User Generated Content Marketing
That data isn’t true. Multiple studies put that number into the millions.

http://www.nature.com/news/the-trouble-with-turbines-an-ill-...
It's a great model why change what works!
Oh man that's a good point. One thing I'm working on fixing is code redundancy, making global functions. I start to see it/get annoyed by it like ahh, should not be doing this (when I copy/paste a whole block of code into another place)
It's always nice to have these lists. Not because you should take them terribly serious, but because you might discover unknown (as opposed to known) gaps in your knowledge.

Under the "Books" section I would add Sci-Hub and Library Genesis.
I think that "AI" weapons can definitely be more dangerous if they can determine the difference between civilians and enemy soldiers. Imagine if there was an AI weapon which you could use without on a massive scale without worrying about civilian casualties, I would consider it much more dangerous because people would be more willing to use it than nukes. But in general I agree that, since the world is very safe right now even though we have nukes, AI weapons probably won't be the difference that gets us WW III.
Cash-strapped states brace for Russian hacking fight
Thingsquare on TI Launchpads and Raspberry Pi
videogames also encourage a learning process based around experimentation and failure, both of which were highly discouraged during the course of my math education. effective learning is a process of repeated failure & incremental improvement that stands at odds with the present incentives in the american education system.
German 'flying taxi' firm Lilium takes $90M from Tencent, others
I'm giving him the benefit of the doubt that this was a copy and paste error. With that said, as someone who has written physical paper programming books... this kind of thing would get me 10 x 1 star reviews on Amazon.
Spotcap | DevOps Engineer | Berlin, Germany | onsite | visa | Full time

We're a global fintech company based in Berlin, Germany (more info at www.spotcap.com). Our engineering team operates a lean development process to deliver our world-class products and services. Modern languages and tools paired with continuous deployment and cloud-based infrastructure helps us master global-technology platform challenges.

We're looking for an experienced DevOps Engineer to join our team in Berlin. We're looking for people experienced with designing and deploying dynamically scalable, highly available, fault tolerant, and reliable applications on AWS.

Please follow the link to apply: http://smrtr.io/ApyQbA
Show HN: Morning coffee with the OpenFaaS CLI
As said in many other comments: This is because you used MySQL in non strict mode. You don't run MySQL on Production in non strict mode.
Thanks for the reply. I'll take a look. When you said it clicked. What we're you looking at? Starting or Thinking Forth or what? I'm trying to find out how most people learn to build their own system.
Australia’s Central Bank Holds Key Interest Rate Steady
And you succinctly put why I despise "School".

I love learning new areas and new techniques. And when Im teaching myself, I can fail and I go back a step or 2. Not the end of the world.

If I do similar in a class, then I set myself further back with a slowly growing chance of doing badly (D or F). And in College, then its another 1-4 credit hours to pay for the privilege. They not only fail me, but demand more money.

Edit: misspelling that looked bad (dong=>doing)
but China is, they have it literally in their name Zhongguo (Middle earth/country), although Whatsapp didnt caught there for other reasons, since it's very skewed market
>I've been called a Nazi scum for advocating civil behavior

Assuming that this is your account, do you call this misogynic shit "civil behavior"?

https://twitter.com/nextlevelwizard/status/71492088722555289...

https://twitter.com/nextlevelwizard/status/71490655573344665...

Spending time with games, anime and 4chan memes doesn't qualify for a political discourse.
Right, there are things that every programmer ANDED should know, but those are few.
> Yet no Nazi symbolism or chants were present in the Alt-Right's ranks

You think the identification of someone as a Nazi requires them to be wearing symbolism or chanting? No. The alt-right has been espousing Nazi ideals and philosophy for a long time - well before Spencer coined the cute term for them.

> Remember this whole cycle started by grown adults wanting special treatment

Yes, I remember the GamerGate idiots too.
Only when people show up to defend Nazis.
>>Yet no Nazi symbolism or chants were present in the Alt-Right's ranks before Antifa started to organize Black Blocks and turned protests violent.

I don't know where you get your news.

This is from July 2016: https://www.youtube.com/watch?v=ijRE9eR6tX0

An Republican National Convention speaker openly doing the Nazi salute at the end of her speech. No one batted an eye.

This is from November 21st, 2016: https://www.theatlantic.com/politics/archive/2016/11/richard...

Members of the audience perform the Nazi salute at the end of white supremacist Richard Spencer's speech.

I can go on. The fact is that Nazis have always been a part of the alt-right for as long as the alt-right has existed, because their ideology strongly aligns with, and is the logical end result of, alt-rightism. They show up at alt-right rallies because they know they can recruit young, impressionable people to their ranks there by whipping them up into a frenzy.

If you think they started showing up only after Antifa broke a few store windows, you haven't been paying attention.
I've seen it too. Heatmap + crime list. What about crime stats for some period, dynamic, predictions, etc.?
The slow thing it was a comparison of loops/sorting I think, using PHP, Python, Go... Maybe others. It would probably make sense that something "closer to the metal" would be faster.

One thing I find difficult is passing onto another language functions/processes.

One example use would be encryption/dectryption I used a library (defuse/php-encryption) not complaining about and I'm probably guessing here, but hearing about Go's speed, one thinght was what if I passed the data to be encr/decr into Go as a separate process. But how do you get a call back if you needed one. It's an interesting problem. I like that separate processes idea.
That's an interesting point. I wonder what exactly happens to wind (kinetic) energy when it is absorbed by trees moved by the wind. Does it turn into anything useful, like heat available to the tree for easier transportation of fluids, i.e. have some trees adapted to benefit from wind (other than by transporting seeds/pollen over longer distances)?
Very inspiring - wish more schools would offer programs like this.
Well if you need advice on programming or career related topics, feel free to drop me an email. I've benefited from having strong technical leads a few times in my career which was really great, and I'd be happy to try and give back a bit if I can help somehow. davedx@gmail.com

Good luck!
Oracle has been slowly killing Solaris for some time. At the same time the community has already saved it - this is what illumos is about. It exists and is open source.
Iterables in JavaScript
Show HN: Cacher – Code snippet organizer for professionals
I understand a bit of userland, but not a whole lot. I figured you needed to learn Forth via a bit of both as all things tend to get circular, as in I'd understand this better if I knew how it was implemented.
Isn't the number of pythons four? One for C, one for JVM, one for CLR and one in pure Rpython for the pure JIT code. Double them for python 2 and three. That makes it 8.
What? I'm saying it matters in the community of developers - and it does.
> then who are you to judge me

Any psychologist with a rudamentary understanding of what is required for a healthy mind.

(not a psychologist myself)
Spotcap | Frontend Software Engineer | Berlin, Germany | onsite | visa | Full time

We're a global fintech company based in Berlin, Germany (more info at www.spotcap.com). Our engineering team operates a lean development process to deliver our world-class products and services. Modern languages and tools paired with continuous deployment and cloud-based infrastructure helps us master global-technology platform challenges.

We're looking for an experienced Frontend Software Engineer to join our team in Berlin. We're looking for people with a deep knowledge of the Javascript ecosystem, and have experience creating user-friendly single-page applications.

Please follow the link to apply: http://smrtr.io/QpOmag
EUD Security Guidance: Chrome OS 56 – NCSC Site
Because that ad market is coupled to the largest search engine.
> That information is not essential.

It is if you're passing it to something which expects to receive a YMD date.

Also a `$currentDate` which also contains the time is borderline acceptable if specifically called out in comments / docs but I would still ding it in a review.
I love ReactOS and what they're trying to accomplish. Every release keeps getting better. Weirdly though, it seems like every release is just one release away from me being able to fully switch to it.

One thing I wish would get fixed (though I understand why it hasn't been yet) is the USB boot option. Most of the physical devices I want to run it on lack a CD drive.
>Unless they substantially overlap in their code, in which case it's not better.

Depends. DRY is not an absolute rule. Sometimes the added abstraction to make something DRY makes it messier.

>"isDOMNodeNotPresent" is not a _conditional_.

Well, the if is assumed, no? What the author suggests is to avoid having what you check being negative -- so not only "if (!$isNotFoo)" but also "if ($isNotFoo)" is bad as well "if (!isFoo)" is clearer imo.

>But for every dev who thinks that exception-based error handling is a good idea there will be two who don't.

Some people don't like checked exceptions, but I don't think many have beef with exception based error handling.
Potential security risk could affect 750,000 Estonian ID cards
Sounds like a reason not to use RDS more than a reason not to use Gallera.
I highly recommend UberStudent.
Not sure but I feel they've fine tuned it more so that posts like this one don't go by completely unnoticed. I also believe the comments are factored into the ranking as well.
Kind of funny going the other approach, web to non-hardware. Working with Raspberry Pi to hookup an LCD panel and get the local IP on shared network. Man that was challenging, not the python/code but the wiring... Then just include libraries and add to cron. It's cool interfacing sensors/physical with web.
Fiasco is also first contact gone wrong and is quite something...like almost an anti-star-trek episode.

It may be an easier entrypoint than Solaris, at cost of arguably not being as "deep" in its reflections.
Psychologists don't judge. They only try to help you if something is a problem for you personally.
Serverless and Modern Agile:A Match Made in Silicon Heaven
Lots of drivers, for one, and a lot more functionality (the live CD certainly doesn't do Active Directory!).

Plus, everything in the base system is in two copies, one for the boot environment and one for the installed version, similar to initramfs and RPMs for Linux.
Pixelmator Pro
How's the activity on your public github profile? Contributions to open source projects? How often do you voluntarily mentor others? What other programming do you do in your spare time? You better eat and breathe code, trends, frameworks, because there will be no other food and air... and the salary will be USD 40k max anually, because the country you live in is cheap (we've just checked on Numbeo).
Experimental blood test diagnoses Alzheimer’s
Think of it this way, most of the people in data-sciences are not familiar with differential or difference equations. So once you have a tool that many others don't have, certain problems (can) become accessible to you in a way it is not accessible to others. Sure, the problems solved by people who do not have differential equations in their tool chest will not need differential equations, that's a tautology.
Zero-confirmation inter-account transfers of .uk domains with eNom
>It is if you're passing it to something which expects to receive a YMD date.

You don't want to expose what kind of date string that something depends upon in your variable name.

This way you you can change the internal implementation (what you pass and the function that received it) and not 1000 places where it's called.
Right. My sister is always having a hard time with math and it seems like the teachers are always focusing on solving equations rather than explaining the reasoning behind it.

It's pretty simple when you realize it's (mostly) all about lines.
Seems like a really bad headline for otherwise a good list of links to subjects that may be interesting to read about as a programmer.

I can't say I know even 50% of the things on that list and I have managed to get a good life from my programming skills so far so I think I am good.
Resource storage (codecs, etc), software not necessarily built into the OS, and similar.
How is this better than using a Docker image?
JetBrains DataGrip (which supports basically every database) can directly export into excel or access, or migrate between databases.
Nice to see Python 2 compatibility. I started using poet[0] recently, and faced issues once I tried adding Python 2 support.

[0]: https://github.com/sdispater/poet
He may be implying manual testing.

If not, then I'm out of ideas.
3 years really isn't a long time. To me going to London is like going back in time 10 years, crowded, terrible transports, and the pubs all shut at half ten!
Webpack, looks like. Only if you don't want a frontend?
I can buy a metal garden shed for a couple of hundred bucks, assemble it myself, and it'll stand for decades without needing much if any maintenance. I could get one with a window, and a door that locks.

It wouldn't give me any Whole Foods cred like a dome or a yurt, but aside from that issue it seems more practical than either of those, if I wanted to live in one small and poorly insulated room without plumbing.

I've just looked at the Better Shelter page and it seems that their idea is the same as mine -- a metal shed.
Spotcap | Backend Software Engineer (Scala) | Berlin, Germany | onsite | visa | Full time

We're a global fintech company based in Berlin, Germany (more info at www.spotcap.com). Our engineering team operates a lean development process to deliver our world-class products and services. Modern languages and tools paired with continuous deployment and cloud-based infrastructure helps us master global-technology platform challenges.

We're looking for experienced Scala Engineers to join our team in Berlin. If you’re dedicated to functional programming and clean code, have experience developing HTTP APIs, and a minimum of 2 years’ professional experience with Scala, we’d love to hear from you.

Please follow the link to apply: http://smrtr.io/BE5YEw
What are your data sources? What level of detail will you drill down to? How will you keep it updated? What do you mean by dangerous? How will you handle inevitable complaints about prejudice etc when labelling some areas as dangerous:
http://www.bbc.co.uk/news/technology-28712227 ?

Overall I suspect your main challenge will be producing an output dataset that is granular enough to be useful whilst remaining accurate over time.
XML parsing definitely belongs into a major database. There’s a lot of legacy tools using XML databases, and supporting them is useful. (And they are not technically bad either)
Could you please put this in a list form so that I can start following it? /s
C&I? PPAs are effectively the collateral for project finance in these cases so you can't build one of these things unless you have a PPA in place (unless you are vertically integrated or running a pilot). A solid percentage of new wind is being built in states without RECs (also the government doesn't pay RECs, ratepayers do). The PTC is being phased out but it is gravy at this point. Wind is profitable without subsidies in a lot of places (and the government subsidizes nuclear [insurer of last resort] and coal [socializing negative externalities]).

Regarding margin, coal and nuclear also barely make money. Natural gas steam barely makes money. CT peakers make high margins when operational but they are barely operational. None of this is surprising. Electricity is a commodity business (for IPPs at least), you sort of expect razor thin margins.
The same about all the stuff regarding equity and stock options. Currently looks like a list about what every web developer that works for funded startups should know.