skysight-inc/HackerNews huggingface dataset:
And Open Office. And Apache Groovy. 6 months ago, the Groovy project managers at the Apache Foundation removed version 3.0 preview support from version 2.6, and unofficially put version 3.0 into permanent alpha version. They're now milking Groovy and Grails for consulting fees and conferences like Gr8Conf and Greach, both of which are Groovy only in name because most of their talks are about other JVm technologies, not Groovy or Grails.
This is actually really interesting and mirrors a more general effort that I am pursuing[1] to build runtime representations of type in TypeScript, though my context is not so much GraphQL but rather just a more traditional HTTP API.

It looks like you try to keep it so that the runtime type object itself has the correct TypeScript type? That is, I would expect that under the hood you either have `types.number = 0`, `types.string = ''`, and so on and then you just use `typeof runtimeTypeObject` to derive this, or something more sinister like `types.number = ('number' as any) as number`. Either way that's fairly clever and I like it. I probably won't do it that way in `tasso` because one of my abstract points of power is that `tasso` should be able to validate that a given type object is a valid `tasso` schema, so there should be a metaschema. But it is really nice to have this thing saying just `typeof runtimeTypeObject` and not `ValueOfSingleType<typeof runtimeTypeObject>` to derive, from the schema's type, the instances' type.

I may steal one thing for `tasso` from this library, and that is the way your `constant()` works without specifying type metadata; I was under the impression that even with the `<t extends string>` TypeScript would still say "well `const x = constant('abc')` doesn't say anything else about `'abc'` so I am going to infer that it is a `string` and then string does extend string so `x` has type `string`," much like it does when you just write `const x = 'abc'`. I didn't realize that you can "hint" that you want the more generic type for the thing. In tasso this manifests when you are writing self-recursive schemas, like

// the following line is a sort of hack
const refs = tasso.refs<'cell' | 'list'>();
// but then we can write stuff like this
const schema = {
cell: tasso.number,
list: tasso.maybe(tasso.object({
head: refs.cell,
rest: refs.list
}))
};

It will be nice to replace that with `tasso.refs('cell')` and `tasso.refs('list')` without that "refs object", I think.

[1]: https://github.com/crdrost/tasso
Language-oriented software engineering
I’m thinking about getting into this space — any chance you could share a bit about the experience?
Ask HN: Tools of the trade, 2018 edition
Inspired by
https://steveblank.com/tools-and-blogs-for-entrepreneurs/

What are the tools and services you use?
I love these kinds of problems!

Question: is there a reason we would choose a solver like this instead of encoding the effects in prolog and let it generate plans for us? Why would one approach be better than the other?
The good news is that these tools exist but they're called statistics.
You can make 5 parallel teams work on the same project, then see which one finishes first, or something like that.

It might seem expensive, but if it helps to find the optimal working strategy, then for a large company it could be a bargain.
The day OS vendors come together and standardize their API's, much like browser vendors do, I will build apps with native code.
Agreed. OTOH, it is not a bug if the fact that tar is not instantaneous causes the tarball to contain combinations of files unlikely to occur during normal operation of the system. e.g., if a file is renamed while tar is running it is not a bug for the tarball to contain zero or two copies of that file.
I'm usually two or three meals. Just hard to control portion consistently.
Half of electron is being able to leverage the Node.js ecosystem and Chrome APIs. Creating a "drop in" replacement would require a ton of work and constant keeping up-to-date.
Also, it gets super weird when your BATNA is not measured in dollars.
A Takeover of PHP Closure and Anonymous Functions
The blog mentioned in the article (romafaschifo.com) is pretty readable via google translate. I noticed the vast majority of the articles are about political corruption and failure and not garbage. Compared to those issue, and speaking here as a Washington DC resident that is watching a similar kind of political decay, the trash is kind of charming.
Original article here: https://www.theverge.com/2018/12/17/18144356/ai-image-genera...

Source paper: https://arxiv.org/pdf/1812.04948.pdf
By default, Chromium still integrates heavily with Google services. See project ungoogled-chromium for details: https://github.com/Eloston/ungoogled-chromium
I don't know regarding your specific case, but one year ago i was able to stitch together CMU Sphinx, Pi Zero, a bluetooth headset and google voice recognition to have a working keyword detection + voice to text system (for italian language).
When I work from home and start late (a lot if my team is in CA and I am east coast) I don't stop for lunch of I just eat in anyway. Eating out is an office thing to me unless I meet a friend which I only do maybe once per week.
There's an LLVM-based code generator in the works for Free Pascal
Hopefully find different employment (with hopefully better pay and room for advancement) but based on all the rejections this year (between a previous bankruptcy and no degree I'm effectively an undesirable) I don't hold much hope. Last year I had one company hire me, never once ask about my financial history, then terminate me while I was asleep the night of my first day of work after they discovered my bankruptcy (seriously, no document or paperwork even asked unlike every application I've ever filled out that specifically asks, nor did any of the people interviewing me or onboarding me) and this year I didn't get notification either way from a half dozen companies and rejected after interviews with several others, one of which had me do three video interviews which may be common for tech type jobs but here in the Midwest anything past 1 interview means "unless you're a wanted fugitive, we're hiring you", that was pretty defeating.

I just can't do this job much longer and my primary employer keeps doing annoying things:

- This is the first year they didn't give us a Christmas card and as a Christmas gift they informed us food trucks will no longer be allowed to come here as it violates the corporate solicitation policies... despite the fact they are food trucks we've been finding for years and inviting them to come out because we get tired of eating microwaved food and 30 minutes isn't enough time to drive anywhere, get food, drive back and eat it and eating at desks is forbidden.

- They told us they'd be bringing more jobs to our location... I went from having 1 manager and 1 team lead to having 1 manager, 3 team leads and what is basically a 'jr' team lead. All 3 of my team leads have been here half the time I have. They did this for every team and in every single case promoted people with considerably less time at the company/in the industry than a good chunk of the applicants.

- Banned most decorations for holidays

- Made our insurance worse yet again

- Gave us a Trump tax break 'bonus', except to our pensions, and gave us an out-of-cycle cost of living increase (which if you read the fine print, did away with our next merit based increase meaning instead of 6ish months away the next one would be 18 months away).

- Continues to highly discourage any talking or socialization by placing a team lead or the 'jr' team lead-like individual in every single row to watch every single employee.

- Etc
Xmonad.
MacGap framework [1] builds on the same idea. In fact, it predates Electron and was being used by Slack. The size of the compiled binary would be just ~350KB.

[1]: https://github.com/MacGapProject/MacGap2
I read your comment before reading the article and I almost feel as if it's(the article) been ripped from somewhere and then some has been thrown on at the end. I definitely agree with your position.

(Also dune 2 was definitely the first game to get me super interested in pc's, :referring to another comment about nostalgia).
All three are not true at least for China. I'm guessing your experience mostly comes from working with outsourcing companies from these two countries.

Most notable companies in China are doing their own stuff, focusing on the local market and not outsourcing. Some are truly innovative and leading the trend.

Here's a good channel to learn a bit about Chinese tech scene

https://www.abacusnews.com/
Since when does electron make you log in with Google?
Presenting in 2019 and beyond-mindfulness is the key
I have never seen that in action. The seniors don't care, don't read the status updates, are not listening to actual stand-ups. We just pretend to. When something needs to be communicated or worked out with team members efficiently it's with the relevant people directly.

Stand-ups are a waste of time.
You'd need to do it on enough projects to move folks around to different teams, and you'd need to do it for long enough on each project to average out the effects of everything from interpersonal differences to Mark going through a divorce, and hope that everyone is employed there long enough not to invalidate huge pieces of your data.
So the fact that a pair of $20 headphones that have wires sound better than a pair of wireless headphones at the same price point is somehow the person you are responding to's fault and makes him cheap for not buying something that he wouldn't need to buy if a feature that did exist still existed. Yeah I think the problem is that you don't realize everyone doesn't have the money you obviously do.
The Best Oracle Financials Training Online with 100% Job Assistance
Why the ‘Bloody’ Impossible Burger Faces Another FDA Hurdle
Since I've worked on International Standardization before I sort of know how the sausage is made, but you always hope for a better sausage.

Anyway - browser equivalence? That, in a lot of things, especially where URLS is concerned, means HTTP equivalence.

A file extension having a specific meaning is not HTTP equivalence or browser equivalence, it is at best Windows OS equivalence where not having mime types understanding meant you had to use the file extensions to identify what 'type' of thing something was.

A hack solution that was maybe necessary (I don't know Windows internals enough to disagree) and that caused me a lot of problems in the years 1999-2009 approximately.
I think that's the date parser's behavior in Swift (if no additional information is given in the input string, revert to the first day of the week before the first week of the year). The article I linked to displays what the formatter does.
Same at my company. We funnel the artifacts of our work, like commit messages, to a particular Slack channel. Then my manager reads off the Slack channel. They use Zapier (I'm biased, I'm a Zapien) to automate and collate the channel.
This is wrong. In Europe, the clock is set by KEK (Kosova Energy Corporate.)

For people who rush to down vote: this is just a joke. Obviously ESA should decide how we measure time.
Well Qt is pretty much there for desktop. Almost everything can be done in a relatively straight forward, platform independent way as long as you aren't doing mobile.
Wow, I used this in 2012. I think it was originally written by Alex MacCaw of Clearbit.
Fun fact: General Electric in Schenectady is represented by zip code 12345
I don’t understand why the entire browser engine needs to be bundled with each app.

Why not have libchrome or a libelectron that moves more slowly than chrome six week release cycle (maybe do 6 months) then have apps build to it and share the library.
That is unfortunately a GNOME application, meaning it uses the Gtk and follows GNOME's HIG thus looking extremely out of place on Windows and MacOS and somewhat out of place on other Linux desktops (assuming Gtk3+ is themed to match the rest of the system, which doesn't help it fit very well anyway).

While I'm sure it's a great option for people using GNOME-based desktops, I don't think it'd be a good idea to bet on Fractal as the Matrix native client, I don't think its authors see it that way either.
20 Controversial Observations About Security Tokens in 2019: Part I
“We’re not claiming this is the most fun you’ll ever have”
I feel like if you're a well paid developer, it makes more sense to spend a part of your income and pay some poor people to do the volunteering work. This way you transfer the wealth from the rich to the needy much more efficiently.
> [I]s it necessary to force him to expand his culinary horizons?

I don’t know. I don’t think anyone knows. But I’m guessing yes. There’s a natural internal conflict between curiosity and the comfort of routine. Every person (and thus every child) has a different predisposition in this spectrum. There are some kids you can probably get away with letting curiosity win. Our 5 y/o does not appear to me to be that kind of person. I expect he’d be very happy to live in our basement into his 30’s. Or maybe 50’s. Every kid is different.

> I don't think the stereotype of a kid binging on junk-food without boundary is accurate outside families that build such foods into a rare, prized(!) and denied commodity.

I thought this once but no longer do. Every kid is different, but our youngest is very happy to be “full” at dinner (i.e., “I don’t like that food”) and want snacks in 20 min. To which I present him his dinner plate.
Having a shared electron runtime on each platform is an answer to some of its performance-related criticisms. Hopefully this is what Microsoft are going for with chromium and the github acquisition. There would still need to be compatible equivalents on Mac and Linux however, or it would render the endeavour pointless.
No, I do not think so. The software (but not the solution/enterprise) architect is a technology expert. For a solution architect it is less important to know all details of a technology but more about understanding the technology landscape. Software Architects are best embedded with the teams (basically your tech leads) but Solution Architects have to consider things which are beyond the understanding of the team (and then carry that into the teams).

In my own experience as an architect, it is the other way around. I can invest in new technology knowledge while we keep our dev teams at 100% workload. When they idle the company practically loose money and cannot deliver to the market (and I know that this is stupid for an individual). This usually results in a situation, that if a team comes with a tech solution, the architect team already has a good rationale about it.
> someone has been doing something entirely wrong.

Agreed. Seems like there is no alternative, though; what you said in your first paragraph definitely is not a comparable alternative except if you're handing out money my company could use to do what you suggest.
Varoufakis has found his attention niche in bashing the euro and became popular in certain circles for this. That the euro is malicious by design is obviously ridiculous.

Now here's one fact that nationalists don't like: the euro has a number of aims, including its symbolism of a united Europe, to stabilise the many small currencies and prevent speculation harming it [1], etc. But one of its key ideas is of course also to drive the EU countries closer. All of the EU as we know it today stems from two premises: (1) we are stronger/better off together and (2) we have to bring a.of Europe together and connect it to avoid that it may ever again become a battlefield.

This second lesson, stemming from hundreds of European wars and the nightmares of WW 1 & 2 ist of course fundamentally contrary to the idea of national autonomy. Germany is not going to attack France because both sides would essentially be destroyed and unable to function independently. The same is true for all other EU countries (including the UK, which is why Brexit is such a nightmare for all sides).

Why was the euro so harmful for Greece (Varoufakis' home country)? Two reasons, (1) because it wasn't finished, politicians lost the political will to dare to finalise the project (banking union, eurozone budget, ...) as it meant to give up more power and control to the EU. (2) Greece LIED and produced false national statistics for decades. They didn't actually fulfil the minimum criteria to join the euro. Successive governments falsified the numbers - and when it all came tumbling down (when one government was finally honest!) the Greek citizens paid the price. Greek politicians, over decades, had found it was easier to lie and produced false numbers than actually address the multitude of structural problems Greece faced. The rest of the EU then bailed it out but as a condition for this demanded rather painful reforms. Those were probably too harsh/sudden in many ways, but the real blame should still be attributed to the ones who caused the issue to begin with: the Greek governments that lived off unsustainable debt and got elected for promising more unsustainable spending - and then hid it all with invented numbers.

[1] e.g. see https://www.investopedia.com/ask/answers/08/george-soros-ban...
LSTM and RNN Tutorial with Stock/Bitcoin Time Series Prediction Code Example
Yes! Highly recommended! I watched some of them on YouTube. Not only is Erik a highly skilled mathematician he is also a wonderful lecturer. Hope his students acknowledge what a great teacher he his.
How Albania Accidentally Exposed Its Own Intelligence Operatives
Considering the 80386 needed two clock cycles for just an INC or ADD, let alone the 12-27 needed for an IMUL/IDIV/memory fetch, I’d say an 80386 would be a bad target. While faster than most others in its time, the 386 was a rather poorly designed CPU.
I guarantee bluetooth headsets suck, all of them.
Maintenance Lapse Identified as Initial Problem Leading to Lion Air Crash
The Ascendance of Nftables – Dan Williams’ Blog
Why not challenge yourself rather than blame the author?
> Not clear to me why just using 'import' makes it a module and 'require' not. I'm sure that's spelled out somewhere

I'm probably wrong but I think it has to do with parsing rules. If you try to load a module as CJS and hit incompatible syntax (e.g. keywords such as import or export) then it has to restart parsing from the top. Likewise, if you parse the file as ESM but hit CJS syntax such as `exports.foo = bar` then again it has to restart.

There are probably a bunch of similar issues but if I recall correctly it basically came down to parsing and performance, you don't want to load the same thing twice essentially. With a special extension you don't have to even load the file before deciding which parsing rules to use, supposedly making this more efficient.

I've heard several proposals to resolve this issue, but my favorite two are probably the unambiguous module syntax and making import/require only compatible with their respective module formats. The first would be a breaking syntactic change, in that every ESM module would be required (no pun intended) to include the top level `export` keyword at least once, regardless of whether or not the module actually exports anything. The second would be to make node's `require` function only compatible with CJS modules and make the `import` keyword only compatible with ESM. Both of these have drawbacks of course, but I'd like to think they're mostly temporary and rather easily overcome. The unambiguous module syntax less so perhaps, but still.
Peter Singer: Animal Liberation
Are these date format strings part of ISO-8601 or standardized in some way? They look pretty much identical in JS and Python.

If so, maybe a big help in preventing human error are editor plugins that verbalize what a given string represents. I found the regex websites that do this to be invaluable in learning and validating regex.
Seems like the solution is "the Unix way": Use a lot of little, single-purpose applications for competing larger tasks. That way you can let the OS worry about the parallelization.

Even if you're making a large, multi-purpose app like, say, a spreadsheet you could still subdivide zillions of little tasks into their own applications. On an OS this makes little sense because of the overhead associated with spawning new processes but on Linux it'd be great.
It would reduce value of a pattern-based API as an idea, that you can specify any format with combination of special characters. But you are right: this case is so special that it would make sense to protect majority of developers from misuse. If builder pattern is used for date formatters, then it could throw an exception unless certain flag is also set:

var formatter = format(“ww-e-YYYY”)
.withWoYCalculations()
.build();
> There was speech synethsis on the apple iie in like 64k of RAM and a 1mhz CPU.

Speech synthesis is far far far easier than parsing a human voice, especially when it doesn’t need to sound realistic (as was the case back then).
Yes, this is separate from the guest extensions. Here's information on it:
https://www.virtualbox.org/manual/ch02.html#intro-installing
Actually Germany is contributing a lot of what are essentially transfers to the east and as the big standout among the EU 'net payer' countries (net payer as in 'pahs more than comes back' - looking just at contributions rather than the net doesn't make sense) in that it volunteered to pay more to keep the budget/benefits for eastern europe the same size after Brexit.
https://news.ycombinator.com/item?id=18759898
This is the art in being a good architect. Let the chaos reign for a while and then tighten control when necessary. Start with a skeleton and let the teams flesh it out and sometimes break a bone. But once you can benefit from architecture start to enforce your architecture.

PS: European. German to be exact. We love to plan and over engineer.
> a shared electron runtime on each platform is an answer to some of its performance-related criticisms

Like…Chrome?
I don't know if it's one of the best, but I really enjoyed "Design It!" from pragprog. I liked that it's focused on pratices that can be applied to my job while giving plenty of pointers to theoretical topics to explore more in depth. I guess it's a very beginner book though.
But there's a difference here. HDMI is a better standard. It provides a noticeable improvement and there was a significant period of overlap. Plus if you're doing a transition from RCA to digital it requires a single converter one time and you don't need to keep recharging it. The difference here would be removing all input ports and requiring that you stream everything via your wireless internet. Then you'd have to charge your television but only when you weren't watching it. Everyone would think that was a stupid design choice.
Hello. This is Alireza. I am the founder of Picovoice.

I totally understand the need to support makers community. We do have GitHub repositories for engines demoed here which allows you to use these technologies to some extent (not the full set of capabilities). I am working with our partners (both Soc and distribution) to come up with a maker-specific product for evaluation and personal use. It most probably will be a HW/SW product (i.e. a board that comes with our software). The product should allow you to use the full set of features on that specific board. I am expecting this to happen in 2019 and I will disclose the information as I am figuring things out.
This appears to be about the DateFormatter class in Swift.

However, it states there that YY is part of the Unicode standard, so I imagine it might affect other languages as well.
The line on immunity to boredom resonates with me. However I think boredom is a very healthy motivator.

There's a balance to strike. You want to be able to be bored (when I worked at a government elections office for 8 months). But you also want to have the drive to not be bored anymore (when I automated away my job and got in a lot of trouble).
Run AWS lambda on your Kubernetes cluster