skysight-inc/HackerNews huggingface dataset:
With C, at least for me, it all starts with memory management and data. Specific use of it dictates what I'm going to do (mostly image manipulation and processing). I tend to allocate one or more big malloc buffers and manage them with TLSF. I've also looked into halloc for hierarchical allocations.
Yahoo Revenue Falls 15% and Profit Drops 64%
I think I would disagree. I don't know that I had the same read on the article as you, but it didn't seem Moore was advocating simplicity for simplicity's sake, but as a means to and end (where the end is robust, maintainable software).

>> If it were a lot simpler I would have a lot more confidence that the technology would endure into the indefinite future.

I think he is (correctly) speaking to the byzantine systems which have been propped up (successfully!) to engineer the kinds of applications we are accustomed to (terminal emulators spanning hundreds of thousands of lines of code, web browsers spanning tens of millions etc.). It seems (from what I've read from and about Moore) his idea of empowering people is simplifying the surface area of a problem, rather than simplifying an interface to the problem (for lack of a better phrase).

People can't really use the solutions he presents or advocates to solve the kinds of problems they face with computers as they are being used but the argument might be made that they're solving the wrong problem. I think that we'll eventually come around to some diluted, almost unrecognizable conclusion along these lines - see the number of people advocating a "burn it all down and start over" approach after just half a century of computing. See also the amount of work spent on maintaining compatibility with relatively ancient systems in spite of these arguments.
Oculus as human controller
case OPTTYPE_KEYMAP:
str = malloc(1 + sizeof "submenu");
strcpy(str, "submenu");
return str;

There isn't a good reason for this not to be

return strdup("submenu");

is there?
This is really fascinating. Reminds me of cell towers disguised as trees in uptown NY. Would definitely love to see more of modern infrastructure blending in their environment!
I applied twice and was rejected. I didn't get the impression it was cliquish, but they're in a difficult situation.

They write thoughtful blog posts on self-reflection, building an inclusive community and working hard to improve. These are values I identify with so it's disappointing not to be given an opportunity to participate, and no feedback after putting effort into the application. On the other hand they have a popular program and have to reject a lot of people.
Well, the email client for one. Not only is it built in, it also functions better than any other i've seen. You know how many email clients have a spam folder that learns by what you drop in it and pull out of it? Opera mail allows you to enable that auto-learning for EVERY folder. It works great.

The mail client also doubles as an RSS reader client.

Aside from that, it also has mouse gestures that are core in the browser, not bolted on with JS addons, which means they work consistently, everywhere, and fast. Gestures i do a lot: Right-click + wheel to change tabs, hold right tap left to go back, hold left tap right to go forward, and various hold rought and move mouse gestures to open new tabs, close tabs, move up a level, etc.

Then there's the performance and memory efficiency. I have 100+ tabs open and the thing sits at 2 GB with my email story as well. Right-click + wheel scrolls me through tabs at basically display refresh rate, chrome can't even switch that fast.

A very powerful url blocker that can be configured per-domain is built in, and is faster than any kind of js-based addon could ever dream of.

I can actually manually edit menu and toolbar ini files and even add macros and javascript bits right there. For example i use that to add menu entries to right-click on links to open those links in other browsers.

I can edit text-based style descriptor files with additional image files to completely restyle the browser effortlessly.

Getting to the screen where i can view and edit cookies for the active page directly takes me 3 clicks.

I can configure activation, deactivation of js, plugins (flash, etc.), even animated images per site with 3 clicks, globally with 2 or a hotkey. I can tell plugins like flash to load on demand, i.e. only when i click on them or tell the page to start loading plugins by clicking in the adress bar.

I can add browser-wide custom css, or site-specific custom css, again, 3 clicks.

I can disable all CSS for the active page with one click.

It has a note-taking facility built-in that doubles as "richer" bookmark manager, and also serves to give strings for auto-complete suggesting when typing in input fields.

It has one-button keyboard shortcuts, e.g. "seach in page" is "." for me.

I can have a vertical tab bar and a horizontal one at the same time.

I can open a list of all links on the current page, filter it by various conditions, select the ones i want and hit "download these to a folder" in one action.

I can add custom panels in the side panel by adding urls there, which is where i keep a bunch of "translate this word" things.

And that's just scratching the surface. I could go on for a long time. And keep in mind: It has all this stuff in it, and excluding JS engine performance, still outperforms Chrome and Firefox. JS being slower and SSL compatibility slowly going kaput are the only actual downsides.
This doesn't explain why you need obsolete nuclear warheads sitting 70km from ISIS. Maybe it's a honeypot?
Or, just stick a regular 3.5mm headphone jack into the two-pronged hole half-way in. The contacts line up in such a way that one channel touch both inputs. Just turn up the volume a bit.
Show HN: A calculator for serverless (FaaS) technologies like Lambda
You can still extract the warhead for use in a dirty bomb
A novel, and somewhat entertaining experiment. Though probably no practical use.

It explains this: [ok hand][fries][burger][silverware]

As: "The OK gesture shares fries with the silver cheeseburger."

Made my day though.
I can't think of a single professor that this holds true for.
Show HN: Note_space: organize your thoughts locally, not in the cloud
As a novice developer, coming from Java, I was taken aback by how forceful and messy JS's async programming style is (I started with node.js then moved to the browser).

Callbacks, promises, generators are all there to essentially make async code sync, which seems to make the code hard to follow, difficult to scale, modularise and debug.

I think JS took this approach because of the limitation of older browsers, which were unable to use threading, so as to not block IO they forced concurrency using queues requiring async style code.

We must have just stuck with it because it's just been around for long enough and it would be hard to get everyone to change.

it's 2016 and I like being able to use the return values of my methods without sweating. PLEASE, for the love of god, replace JS with something with the same cushy syntax but makes sense.

Then again, I could just be bad at programming and not know what I am talking about - I sincerely hope that is the case.
There are a lot of note-taking programs, and I've looked at most of them, but I couldn't find one that met all of these criteria: 1) runs as a local program, not on an internet server. 2) uses a relatively simple design, without overly-complicated features. 3) shows a grid-like display, not a list-like display. 4) is free, and open source. 5) runs on Windows, Mac and Linux, but is light-weight and portable. To get all this, I made this program, which is available for download at www.kylla.info.
V8 Release 5.3 – Improved ES6 Promise performance and more
Oh, Biohacking
Look, I am 100% for the conclusion that we should not as a default case have people working too much! Even a 40 hour work week, for work that is statistically usual today, is in my opinion inhumane.

That philosophical belief however does not win out in the context of this particular analysis.

My agenda is to support sensible discourse on the question of how our brains adapt and how we live, using rigorous thought. Maybe I'm not seeing the problem with my reasoning but it seems pretty clear to me.

The problem is that you automatically get an upward or downward parabola, plotting cognitive scores versus working hours, if you have a non-zero coefficient in working hours^2

It's very unlikely that you'll get an upward parabola, especially given the strong anticorrelation between unemployment and cognitive scores that they use.

In science, you have a judgment call for which predictors you plug into the statistical analysis. Choosing any particular function, be it working hours^2, sin(working hours/100), or even, say, ballmerpeak(alcohol content) will effect the statistical results in factor analysis or anything else.

Since we chose only linear and quadratic functions to get coefficients for in our statistical analysis, the functions are going to be a parabola -- either up or down.
A bit dramatic of a title, no?
I like this website to layout an argument nicely. But in the case Web Programming is not well-defined, the argument can just be people doing different things assuming others are doing the same.
Yet accurate?
Arabic Numerals
malloc+strcpy is standard C, strdup is not.
This has the advantage of working as a sampling strategy, not just an optimization strategy. It is useful when the mass of your distribution is concentrated in a region that may be hard to find with a random walk.

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

Markov-chain Monte-Carlo sampling gives a theoretical underpinning which explains why simulated annealing works in optimization.
What is the SRT equivalent in Vulkan if you don't mind me asking? What about DispatchDraw?
If this happens, that's probably a good thing. Housing all over the world is quickly becoming unaffordable and rent ratio (rent ratio of income) has been slowly increasing to stupid levels.

I can't afford to rent in the main city of my country, and will be looking for jobs/housing in smaller cities in order to live a less stressful (read: better) life.
It's a common idiom, specifically in modern C code. See "C Interfaces and Implementations", one of the best books on the subject of writing reusable C. The author dedicates an entire chapter to exception handling, with longjmp as the primarily facility for it.
Web programming is reaching not only far more people, but far more combinations of people and devices, in far more scenarios -- think of how many more ways you can do computing that don't involve sitting in front of a desktop, which for most non-technical people was a relative rarity in day to day life.

So web programming should be more complicated because the world we now reach is far more complicated. But I don't feel like complexity has grown nearly as much as potential audience. And when things do get frustrating, such as trying to do a heavy client-side app, I just have to look at the PHP Reddit/stack overflow groups to get a reminder of how truly fucking annoying and confusing it was to build a full stack app a decade ago.
Amazing markdown editor
This is pretty typical of guidance councilors at my high school as well. I went to a fairly poor public school and we were advised not to apply to extra colleges because we probably wouldn't get in and considering most of the student body lived around the poverty line the costs of applying to a bunch of colleges gets expensive fast.
You're implying TSA employees are trained properly. I've had to surrender small items that are not prohibited due to incorrect assumptions that airport security have made.
How so? They put themselves up for sale and the deadline for final bids was today. They also missed profit and revenue forecasts, it was another ugly quarter for a quickly shrinking company.
I've published two books through publishers and the actual writing experience was very similar to the book that I self-published.

For the self-published book I followed he basic path set forth in Nathan Barry's Authority[0]. Financially speaking it was definitely more lucrative to self-publish, but I've got access to a large audience to sell to.

There is another approach that I've seen that I find interesting and that is of the "open source" variety where the book is given freely and later published by a major publishing house. You Don't Know JS is a recent example.

My personal experience with OReilly was a good one. They send you a framed cover and it was a decent experience. We got no advance and the pay was peanuts, but it served to get me recognized at the time in a specific space.

Sure, money isn't the only motivator when setting out to write a book, but it's definitely a motivator!

[0] http://nathanbarry.com/authority/
A somewhat related topic:

A few months ago Google fixed a vulnerability on the inline installation. It was possible to start a install on the attacker's website and then redirect the page to an arbitrary one. This would confuse the user, making him believe that the install came from the arbitrary page.

Here is the PoC if anyone is interested (CVE-2016-1640): https://www.youtube.com/watch?v=f_9ObDqBoo8
Thanks, that's a great article!
I would recommend "Campbell Biology". This book is usually used for olympiad preparation. But, you may check it out first.
Food production is complicated because of scale. But food itself hasn't changed much in centuries. The only real difference is that all the world's spices are available to common folk in Nowhere, TX.
I think you're mistaken. There isn't a TLD for google. Under some of the ICANN proposals, that would have been possible, but to date I don't think it's been done.
it's not sad, it's cautionary. It's impressive to me, but it's also incredibly difficult to keep hacking and doing cool stuff from inside prison.
I'm up-voting this purely due to finding out about arguman. I had an idea for a website exactly like this about 6 years ago. Kudos to the people who actually implemented it.
I wonder how insane StackOverflow would look laid out with this kind of a presentation scheme...
I think that's a bad decision on N=1 samples. I find international Emirates flights to be one of the most modern and comfortable ones. I mean, you even get power sockets in economy most of the time, which is still pretty rare.

Connectors like these are pretty much a standard for whatever crazy reason as well. (the third hole seems to provide some power, since their noise-cancelling version in business uses it)
I had a grooming kit with a pouch containing assortment of small things like nail clippers, tweezers, and tiny safety scissors that I carried with me on every flight. Gradually, the pouch became completely empty as TSA agents confiscated more and more of my items.
The Surprising Ease of Plain Text Accounting
Yep, I took Boaz's crypto seminar, so I was looking for how this was different from his work. I couldn't find the full text of the article (maybe it isn't fully published yet), but the supplemental information mention that one of the primary distinguishing factors is that this is not based on neutron scattering which apparently makes distinguishing between weapons-grade and depleted material easier.
We need to remind ourselves frequently that the web is a terrible platform. Yes, TCP/IP changed the world, but the web is an embarrassment to our field. It could be so much more.
I wrote a kids programming book.
£1.5k advance and 8% royalties if I remember correctly.

My biggest takeaway, is forget your tool chain. I wrote it in org mode, and exported to Libre Office and then Word. As soon as the first draft was returned I ended up battling with Word the whole time, for edits and redrafts.

Also, designers don't read code like programmers. Indentation was often messed up, incorrect quotes used and line breaks added to suit formatting. One particularly badly formatted piece of code had me ripping my hair out. Everything beneath the first line was messed up. The designer came back to me a bit confused, saying the only problem he could see was the first line of code was 4 spaces too far to the left. Being accustomed to an absolute left limit on code, defined by the first line, it hadn't occurred to me to view it like this.
Never underestimate the depths of people's stupidity.
The Skills That Make Entrepreneurs Extraordinary
The deriving (and related generics) functionality is quite a bit cleaner and more appropriate to the problem than macros.
Tech job postings are down 40% and nobody’s talking about it
I've seen similar jacks on multiple airlines.
The coefficient for the squared component could easily be zero. This is called "not statistically significant". There is no guarantee for a parabolic shape.
Writing off mortgage interest, healthcare expense or working for a big company is not a government handout like food stamps, Medicaid or other government handouts, not even remotely the same.

There's a difference in the government handing you someone else's money vs. you keeping more of what you earned.
You can mute someone's retweets, while still seeing all tweets directly posted by that person. That's what I was referring to above.

But it can also be useful to just outright temporarily mute someone who's at an event or something and swamping your timeline with irrelevant tweets that you know are timeboxed and will soon return to normal. A 7 day mute or whatever beats unfollowing and forgetting to refollow.
I would be absolutely floored if this headphone amp had enough current capacity to even noticeably heat up under a dead short.
> its a rich airline so they assume that people taking their flights are "harmless"

It's your average airline that spans from Europe to Australia from bases in middle east. Nothing really rich about it. (although, it is quite comfortable)
There's more to life than applying for jobs.
> plenty of modern code written in languages like C++ (whose exception support is often eschewed) and Go gets by without [exceptions].

I would not consider C++ code that eschews exceptions "modern". To eschew exceptions almost always entails giving up RAII, and if you give up RAII you've done yourself a huge disservice: you're now stuck manually managing memory and resources, and suffering all the bugs that come with that. While RAII does not outright prevent these bugs (which is one of the reasons I'm a huge fan of Rust), coding along its principles greatly reduces the risk that you will run into problems.

If you're wondering: giving up exceptions means a constructor has no way to signal failure, as the result of a ctor in C++ is always either an exception, or a constructed object. Most "no exceptions" C++ code I've seen opts to construct what I call "zombie objects"; internally, the object tracks that an error has occurred, and all uses of the real object must be first checked against that internal error flag to ensure the object isn't a zombie (or if it is, then error). The object is effectively a null pointer, and has all the trouble that entails.

(I also won't pretend that exceptions aren't without problems; in particular, the argument against them because you can't tell, at a particular point in a function's code, if an exception can occur, or where it would be caught, is completely valid, but no different in many popular languages, such as Python, C#, and in some ways, Java. However, I think the advantages of RAII — and exceptions — outweigh their disadvantages.)

> It just has to be written so that most functions manually propagate error codes they receive

When I've had to write C, I've found this to be exceptionally tedious to do correctly, and all too easy to ignore.
> Each of these books is between 400 and 1,000 pages long, costs around $30 for a hardcover

Wait people are still thinking about paper books?
Easy: Because the wires are wrapped in paper, if you simply light a lighter next to them and hold it to the paper for a few seconds, you have kindling. Then, if you can find something in a plane that's not fire-retardant and heat it with the flaming piece of paper enough, voila: an inadvertent fire.
> eschew platforms and libraries and roll my own most of the time

That's what nearly everybody does, when they're one person hacking on a one-off project.

I like to hate on Big Web Frameworks as much as anyone, but it should be understood that their value isn't replacing your hand-rolled code, their value is to let big 20-person projects avoid having 20 different flavors of hand-rolled code.
Dramatic? Yea. Click bait? Only for those who didn't know it was coming. Yahoo has a very meagre future as a company hoping to retain their revenue (let alone profit)
Well, it's trying to make sense of something that most likely doesn't mean anything
Somewhat related, but not security-related: Quite a few HTTP libraries take the HTTP_USER_AGENT environment variable and insert it as the User-Agent header on outgoing requests. When used in a CGI script, this results in the upstream User-Agent header being forwarded, which is probably not what was intended.
It's unfortunate that your acquaintance felt that way. I'll offer my own account of RC being an incredibly welcoming space to people of all backgrounds. I appreciated the diversity in both breadth and depth of experience because it allowed people to grow and learn from one another in an environment that I haven't seen replicated anywhere else.
I have been asked to write books too, but I go with a no response always.
My reasoning is generally that my I have read free books and learnt a lot of what I have ( was not really rich to buy all trendy books being a middle class Indian student) , my book whenever it is written would be open and free access. That will be my way to pay back.
If I have to make money , I will rather do it through my work, not letting publishers have control over the knowledge source I write.
CSS Framework for Dummies, Without Classes, 0.6.1 Released
I know of a story where a company selling software that banked on digital, being told quite seriously by a member of the board that digital would never be a thing. This was around 97-98.
If you go to most universities, psychology is a part of the faculty of Humanities, not science. There's a reason for that.

To call a discipline a science, it needs to use the scientific method, not just sometimes, but always. It needs testable hypotheses. Psychology sometimes has this, but often it does not. There is certainly reason for non-science fields to use scientific methods at times, but that doesn't necessarily mean those fields should be called sciences.

An illustrative example is the difference between "medicine" and "medical science". Your doctor has studied medicine. He or she, in addition to studying some medical science, has learned interview techniques, psychology, and various other aspects of a craft that are, in no way, scientific. If you talk to a doctor in a non-medical setting (many are specifically trained not to reveal ignorance to patients in order to maintain patient confidence), you'll find they're remarkably ignorant about the how's or why's of the human body, except when it comes to something they've been trained to spot and fix. A huge portion of their training centers on knowing when to do nothing at all, because medical intervention almost always carries it's own risks. In his or her daily job, your doctor does not employ the scientific method. At least, you should probably hope you are not being experimented on by your family physician! Some doctors do research in the field of "medical science", but this really is an entirely different job from being a family physician, surgeon, etc.. Medicine is a highly skilled craft that sometimes uses science, but it is not itself a science.
While I agree, strdup is POSIX. In the exceedingly rare event that you're on a system without it, it's simple enough to roll your own. (And if this occurred more than a couple of times, I'd roll my own anyways to keep the code obvious.)