skysight-inc/HackerNews huggingface dataset:
Thank you for the kind words!

I absolutely agree, many junior developers are afraid to jump into open source – even though they totally don't have to be!

The pain points you have while developing, no matter at which level of experience, other people probably have them too. Some of them are already solved, but many of them aren't! If you solve one of them, it can only be good for you to generalize it a bit and push it on GitHub and npm.

Worst thing that can happen? Nobody uses your solution, oh well.

Best thing that can happen? It could change your live.

So why not do it?
Right before I started in the end of 1999.
Weapons of Math Destruction: How Big Data Increases Inequality and Threatens Democracy (Cathy O'Neil)

Whoa. Need to check that one out. Thanks.
I agree that that's strange and awful behavior, and that if the only joy you get from sports comes from the suffering of opposing fans then you likely have some greater issue at play!
Wow, hundreds of developers and 7 newsletters!1!! has Netcraft already confirmed that Vim is obsolete?
Just to add some anecdotal pain... I recently bought my first audio book from Audible. I didn't realise it was a proprietary DRM'd format which has no sensible playback on Linux. So rather than spend time hacking together something to rip it, I ended up torrent'ing an mp3 of the book I'd just bought.

It's entirely put me off buying anything else from Audible :-/
"It Can't Happen Here", a novel by Sinclair Lewis.

It was written in 1935 during the rise of totalitarian regimes in Italy and Germany, but before WW2. The prevailing wisdom at the time was that the American democracy was immune to the disease of dictatorship.

The novel speculates how a populist figure could manipulate people through fear, racism, corporatism, local militias and bald-faced lies.

He wins the popular vote and turns the US into a totalitarian dystopia.

It's fascinating to get a glimpse into people's understanding of the world before WW2 broke out. I pictured a series of catastrophes that were surprises to most people. But it's clear from this book that the horrors were anticipated in advance.
"It shouldn't be too complex" is sadly optimistic, and your analogy is telling

What a burn.
Max has turned out to be a prolific contributor to the React community and an expert on the subject of React component styling approaches. He's also a pretty good speaker :)

I had a sorta-similar path to getting involved with Redux over the last year and a half, which I wrote about at http://blog.isquaredsoftware.com/2016/09/how-i-got-here-my-j... . I'm also pleased to note that Max has been one of the biggest supporters of my efforts to improve Redux's documentation and provide help to people learning React and Redux, and I really appreciate his encouragement.
We made a big deal of making candidates feel wanted, but not necessarily congratulatory. Same goal of raising the mental value of an offer but a different way. I get what you're saying, something perceived as difficult to get usually has a higher value placed on it. However, I disagree that this helps in a (pre-funding) startup :). The "we only hire the best" moniker has been beaten to death by silicon valley and people that have worked at startups before know this just isn't true. Candidates know that getting an offer from google etc.. is a big deal. If you try to sell them hard on your value they'll either think you're a bunch of used car salesmen or delusional.

Our approach is to meticulously research anyone we're serious about and bring these things up during their interview. In my own interview experience it's extremely rare for someone to take any interest in your personal projects and achievements, or even in your "story". We lived in the same state? You came from a place I'de like to visit? We both know some obscure language? Worked at the same company? Interesting/crazy projects on github? I'll star you. The end goal is to make it hard to say no, and making as much of a personal connection as possible has worked wonders for us. Make sure not to go too far and lie... if you can't find anything that interests you about a candidate why consider them in the first place?

Whenever I've been looking for a job a quick turnaround is a sign of competence. These guys are on top of their game type thing, as in they know I'm good and want to hire me right away. I just don't see waiting being a positive especially in a startup when you're supposed to be doing everything fast and efficently.

It's me btw, can't remember my throwaway pw :).
And a lot of 18-25 year olds would be prohibited from living independently. This would be terrible, for example, for people in abusive households. And it would merely suck horribly for anyone who simply chafes at not being treated like a person.
It's not the job of the compiler to speed up and automate _editing_code_.

Calling changing the syntax on unsuspecting users _editing_code_ is really a stretch of gargantuan proportions. And I don't really care whether it's the compiler, the linker, or mega_mojo-2.546-alfa5-preview18, what ever it is, it runs on a computer so that whatever is being done would be fast, automated, and therefore efficient. If the programmer knew what to do with the input, the computer should churn through it, instead of chastizing the user and making them pay for the authors' oversight.

Otherwise, a computer makes no more sense than a toy does.

If I want to use a computer as a toy, I'll go play a video game. The rest of the time, it's a tool, a tool to do something an order of magnitude faster than a human could. If it slows me down because it requires me to babysit it, I have a problem.
On the other hand, most jobs and companies don't warrant being caring about aside from the salary and resume padding (hence the trend of leaving a job every other year).
Most of us would not be willing put a price on the lives or health of, say, our children. Any price.

I'm not so ok with it, but not just for safety reasons. New designs may be safer but they are still part of a globally destructive system of dirty mining, byproducts that go to weapons, and still non-zero risk of inflicting lifelong and community-wide damage in catastrophic situations.

Also it bugs me that nuclear is perpetuating the interests of large players who would prefer to control all the energy. I'd like to see energy democratized more, meaning instead of having contracts or bills from a power company, you make your own energy at home. That's an ideal, and we will probably end up with a mix, but I'd rather see money put into trying to tip that mix toward the decentralized side of things, which means toward locally installable technology like solar.
>> 20. A Guide to the Good Life: The Ancient Art of Stoic Joy by William B. Irvine

I read this book twice in 2016 and hope to read it again in 2017.
Curated list of technical case studies about front-end development Edit
I'm fairly certain any soap will do as long as you wash off the affected area within a couple of hours of exposure
Having everyone in a country be able to read - and write! - would have sounded absolutely insane to anyone a thousand years ago.
Ghost typewriting animation pod
Listen Free to These Podcast Episodes That Jumpstarted My Freelancing Career
Hamiltonian Monte Carlo explained
It's not about time only, it's about developing a critical mass of people who are detached enough from their migrant roots that they get to claim "nativity", hence drawing a line.
> Editing/prettifying existing documentation; appending to existing documentation (adding diagrams or examples); or creating "newbie docs"

I think any of those could be good, whatever the project needs. If it's got existing docs that need editing/prettifying, that's def a natural first step.
Seems like this is for luxury goods which when purchased, might make you seem less fashionable to someone with a sharp eye at a NYC fashion party.

However, Amazon selling counterfeit Apple chargers that can burn your house down and probably kill someone is ok.
List of duplicating processes
Very creative I love it.
Your store might need to be a bit polished though. For example, on mobile:
- Shop now button too small. Should be bigger and more visible ("call to action")
- One item per line on shop page, otherwise really hard to see the pic

Wish u good luck for ur project!
Nothing. Just "Rah, rah, we think this website is bad." Some other websites on the list include The Pirate Bay, 4Shared, Youtube-mp3.

This fashion-business blog describes it a little more [0]. Here's the real press release [1], and the actual list (pdf) [2]

[0] http://www.thefashionlaw.com/home/us-trade-representative-re...

[1] https://ustr.gov/about-us/policy-offices/press-office/press-...

[2] https://ustr.gov/sites/default/files/2016-Out-of-Cycle-Revie...
You're comparing two different things.

If your house explodes, fix the source and rebuild the house. Maybe it's time for a major remodel anyway.

If there's a nuclear incident, what are you going to do?
1. The Harry Potter series

2. Nerd Do Well by Simon Pegg

3. Elon Musk by Ashlee Vance

4. The Movie Doctors by Mark Kermode and Simon Mayo

5. It's Only A Movie by Mark Kermdode

6. Dark Night by Paul Dini

7. Dark Days by Randy Blythe

8. David Fincher Interviews by Laurence Knapp
Graphic Novels - Scott Pilgrim Series, New 52 Batman series and Batman/TMNT crossover.

If anyone can recommend more stuff I'd be interested in based on this stuff please go ahead I want to read more this coming year.
I think if all type-information were kept together, it might read simpler:

char*[X] arr;

You read strictly left to right: char pointer array of size X called arr. Basically, it takes a simple type (char in this case) and for each thing to the right, wraps it in something. You could read it as: given a char, we have a pointer to it, and an array of size X of these pointers.

It would be interesting if the use did "mirror" declaration:

arr[5]*

That is, take element 5 of arr and derefence it.

Just some random thoughts...
This was true for a while, but vim 8 (and some of the last patches of vim 7) added async tasks, channels and built-in JSON encoding/decoding. It's a hassle to have to support two different interfaces, but I suspect most plugin authors are going to do that rather than force their users to use neovim. Some plugins (like neomake) already support both.

Edit: Forgot to mention, many of the improvements in vim 8 were clearly in reaction to Neovim's innovations. Both projects benefit from the other, this isn't a fight to the death.
The last three paragraphs are interesting if you think of Trump as a descendant of Gatsby's NY.
Hey, one recommendation (assuming she wants something different; I hope I am not coming across as pretentious):

Get an MBA.

It worked for a relative of mine: she went from Liberal Arts to Director of Marketing for a tech firm.

Depending on where you live, an MBA may take her into a completely different direction.

Good luck but it does not seem like any of you all in your family need it.
I find it funny that Slavin means female slave in Dutch.
3 Awesome Domain Extensions to make your website stand out
6 Traits That Predict Ethical Behavior at Work
It's also on a scammy review site for hosting affiliate links, and fake crappy "ratings"
You should check out "I shall bear witness" by Victor Klemperer.
You have to think about the trade-offs... even Chernobyl only caused 56 direct deaths and a five-fold increase in the incidence of normal rate of thyroid cancer (a fairly treatable form of cancer) amongst the 18m children exposed.

I say "only" there not to diminish their suffering (it's a terrible thing happening to a huge number of people) but because the consequences of continuing to rely on coal are orders of magnitude worse.
Sadly, vsVim doesn't properly handle the undo history, so pressing `u` often ends up just deleting single characters instead of what was changed during an insert mode session.

ViEmu though, is fantastic.
perhaps. time will tell. but it's definitely clear who the oligarchs were lining up for. And that person was not Trump.
Does anyone know of such an extension for Chrome and Alt-F4? Chrome seems to handle that all by itself on Debian, which is silly because my window manager doesn't use that for "Close Window".
Amazon does an extremely poor job. There are items that are clearly counterfeit, review after review states it, yet the item is still available.

For example, there is a device called the "Split-Ender" which is only sold directly. The items is not sold on Amazon yet there are tons of fakes on Amazon [1]. The manufacture seems unable to get Amazon to remove them. Amazon doesn't even have to distinguish if the items is real or not in this case. The device should not be on Amazon, period.

[1] https://www.amazon.com/s/ref=nb_sb_noss_2?url=search-alias%3...
I'll order Koss Porta Pro from the manufacturer next time.

If the physical quality isn't utter crap, like I've gotten from Amazon UK the last couple of times, I'll stop buying physical things from Amazon.
Yeah. Basically linting profiles. Reminds me of some proposals I've read about reducing the complexity of C++ without creating an actual subset or superset.
I'm actually in the process of writing a detailed blog post on that subject. Just trying to make sure I cover all of the bases.

Both are very similar in their underlying approaches. The biggest difference is that you have to write a lot more error handling code for Go.

The other thing is interfaces. With Go if you want to be able to pass multiple different types of structs to a function you have to define an interface that fits with both by showing each have a field named X of type Y. Because of that you end up needing to define a lot of interfaces.

Elixir accomplishes the same thing with pattern matching. You can define a function that shows parts of a nested hash in the argument and in order to call that function the hash you pass has to have those keys. It's much more flexible and less clunky IMO.

The other thing is Go's compiler strictness about making you remove any library from the import that not in use. When doing development or experimenting with a new library it gets really old having compiler yell at you about this because you commented something out. With Elixir, the compiler WARNS you about it. You still get a great big "get rid of all this stuff that isn't used" on compile, but it doesn't interrupt your development workflow.

Details like that, better package management, etc make me significantly more productive with Elixir. Phoenix is excellent and it's view layer is extremely fast and flexible - probably my favorite view layer that I've ever dealt with across many languages. Contrast that with Go templates, which to me felt a lot more like JSP.
V-mail
"best source of feasible big power known to man."

I'd prefer small power. Nuclear is too centralized. It leaves all the control in the hands of government and corporations. It is inherently biased to control by large entities, rather than the individual.
I know many a toddler that will eat anything and everything that's within reach. Eating grass, weeds, bugs, or even dirt is not out of the question.
I guess Youtube-mp3 and The Pirate Bay is bad and all the illegal stuff on Youtube is okay because...
I would recommend Batman The Killing Joke. A great Batman comic but the best comic that features The Joker.
C programmers are not thinking that C is low level language. ;-)

Assembler language is low-level language, because it is not portable between architectures. C is high-level language, because it's portable. It's means that one C language statement can be translated into many statements of assembler language, hence C has higher level of abstraction than assembler language.
"Don't plant trees, plant a forest!" In all seriousness, this can kill a startup. You should try to allow for later extension of your product, but you have to actually get one thing to market before you can bring many things to market.
This quote may be a clue to how it happened:

> Sadly, the pain was exacerbated by most alcoholic beverages
If you are willing to wait for the shipping they are great. If something sells for $25 on amazon you might find it for $6 on Alibaba but with minimum quantities which are not consumer friendly, plus bulk shipping.

Then on Aliexpress, the consumer level one, you might find the same thing for $15 for each one shipped.

Source: Christmas shopping. Ended up having to go with Amazon because of shipping times and waiting too late, but its worth the wait for some things.
Okay, I think I have cracked it. Haven't tested it, but a qualitative reasoning should be enough to get you going.

I concentrated my efforts on your Cape::encrypt() method. Inlining Cape::crypt() and simplifying the resulting code gives something like this (it appears some computations cancelled each other):

void Cape::encrypt(char *source, char *destination, uint8_t length)
{
uint8_t iv = this->generate_IV();
char real_key[255];
for (i = 0; i < _key_length; i++)
real_key[i] = _key[(i ^ _reduced_key) % _key_length];

for (i = 0; i < length; i++)
destination[i] = source[i] ^ iv ^ i ^ real_key[i];

destination[length] = iv ^ _reduced_key;
};

Now the weaknesses of your algorithm are clear.

First, I don't believe your IV is truly randomly generated. I don't know of a real CSPRNG on Arduino, so… probably not your fault.

Second, your IV is only one byte. You cannot securely send more than 256 messages with the same key.

Third, the attacker can get rid of the IV anyway: since it is given at the end of the ciphertext, I can just XOR it with the rest of the ciphertext before trying to crack it. This makes your IV irrelevant. You are now limited to one message per key. In practical terms, you don't do better than a one time pad.

Fourth, the way you access the key in a weird order doesn't matter. It's the same as using a different key. Assuming your key is properly unpredictable in the first place, there is no need to access it in a weird order. I made this clear by reordering the key in a real_key.

Fifth, XORing the message with the index doesn't buy you anything: the attacker will just reverse it before trying to crack the rest.

Sixth, if your key is shorter than the message, you have a repeating key. Repeating keys are shown to be broken since… a long time. The reason why is because XORing parts of the ciphertext encoded with the same key reveals the XOR of parts of the plaintext, and that is easily broken in practice. So you're forced to use keys as long as the message.

Conclusion: you have a fancy one time pad. It is secure if your key is as long as the message, and you use it only once. I have to say your home-made crypto is not completely broken. But… a simple one time pad would have achieved the same results more simply.

A word of (dangerous) advice: you won't accomplish much with XOR alone. Modern ciphers tend to also to rearrange the order of the bits as well. If I may, we have a real cryptographer here, and he has written a course: https://www.crypto101.io/
although it's messed up anyway as

But that's because they wanted it to be like that.

To me, this code is very unclear:

int a, *b, c, d;

because everywhere else, multiple declarations in one statement all have the exact same type, but for some reason pointers get special treatment so that you can declare variables of type X and variables that are pointers to type X in the same statement, which just seems odd to me.

I'd be much happier if they were all strictly different and that

int* a, b, c, d;

did, in fact, declare all four variables to be pointer to int.
No, but Non-Soviet scientists said the same things for other reactors that ended in disasters.
انين السماء الذي ظهر في جميع دول العالم يظهر في مصر ماهو هذا الصوت وما مصدره
Lollipuff (YC W'13 - https://www.lollipuff.com) was started precisely to address this counterfeit issue -- focused on high-end women's fashion. We built out a backend that allows us to authenticate luxury goods using photos alone. It works through a combination of (1) very specific photos; (2) automated software; and (3) a trained (non-expert) authenticator.

We recently expanded from being just a P2P auction service (competing with the likes of Alibaba & eBay) to offering our Authentication Tool as a service, which can compliment their sites: https://www.lollipuff.com/authentication-service/
Smooth out power delivery with energy storage such as batteries?
Have you been given responsibility in the last project you were involved in?
It is C99 so it has been part of the language for a very long time
I disagree that it's "exactly wrong", though I at the same time agree with the secular stagnation concept. It's important to remember that past revolutions in automation have destroyed one field of labor while creating another. For example, the industrial revolution destroyed hand and muscle-driven labor and replaced it with factory labor. In the US we then went from an industrial economy driven by factory jobs to a service economy driven by knowledge-based labor.

Automation today is now destroying service economy jobs, but it's not clear, at least to me, what new sector is ramping up to pick up the displacement slack. The tech sector isn't going to have enough jobs for everyone getting automated away, and this time around automation is unique in that it's attacking pretty much everything all at once. Human drivers are going to be displaced by autonomous vehicles at the same time as financial advisers are being displaced by wealth allocation algorithms at the same time as warehouse workers are being displaced by picker robots, etc.
A Driver Test for Self-Driving Cars Isn't Enough
My favourite extreme sports combination Bitcoin
Yes, it's in the article.
> Vi and Emacs actually predate those "intuitive" shortcuts of yours.

Yes, but that is different, since in "normal" IDE, I dont need to use shortcuts for everything. In vim, you must learn how to select something, then how to copy it and how to paste it. In an IDE, I just select it with mouse, since in all other software I also select the exact same way, and shortcuts are only ctrl-c ctrl-v. Of course I also use other shortcuts, like F2 and ctrl-F2 for bookmarks, but normally I don't need them for everything.
"The English and Their History" by Robert Tombs. This isn't simply another "here's what happened" history book. Rather, it focuses not simply on what happened and why it happened, but more so on the stories the English tell themselves about their own history and how that formed and continues to form their complex ethnic, national, and historical identity. For example, the Henry V that impressed itself on the English imagination was not so much the real, historical Henry V, but rather the hero of Shakespeare's "Henriad": Henry IV, Parts I and II, and Henry V. (Cf. the St. Crispin's Day speech: "We few, we happy few, we band of brothers," etc.) Dr. Tombs is the Professor of French at Cambridge. Ironically, after devoting a lifetime to studying the civilization on the opposite side of the Channel, he has written a masterpiece on the history of his own people.

If you're looking for a book on the British Empire, this isn't it. Of course, the Empire is an essential topic in the book; however, Tombs focus remains centered on Britain, and, more specifically, England itself. For example, when discussing the Seven Years War, Tombs emphasizes how events abroad affected domestic politics without going into great detail about the international events themselves.

I highly recommend this book to anyone interested in English history.
I don't see how that would make any difference. Typically many 18 year old require a co-signer or sponsor to get an apartment on their own. If you are in an abusive household call the authorities (you can do this at any age).
Good insights here. It's never bad to admit you need support. Fortunately you made the pivot before it was too late. Cheers!
I think it has to eventually. I personally think we need to use people's A1C levels as a cost differentiator on healthcare premiums. Having a lower A1C is a major reduction in risk for type 2 diabetes and most heart conditions.