skysight-inc/HackerNews huggingface dataset:
If you always pull the latest version of other projects, you have no way to have a consistent snapshot of a working system. If you use a monorepo, it means that you always know which versions of every file in every project are in use at a particular commit. This of course is also true if you use separate projects and pin their dependencies. But if you use separate projects and always grab the latest version of each subproject, there's no way to ensure you have compatible versions of different projects in use.
JPEG is quite old. Some of the best still image compressors are found as I-frame compressors in video codecs. Daala for example uses adaptive block sizes and inter-block prediction.

See: https://people.xiph.org/~xiphmont/demo/daala/demo2.shtml
UI design – 10 steps for great user interfaces Pt5-Form and function
With Deepin Official T-shirt Scheme Unveiled, Customize Your Summer Freely
tui mode is great. I would recommend this tutorial by beej [0] as an intro to gdb for those unfamiliar with it, it also has a very handy cheatsheet at the bottom [1].

[0] http://beej.us/guide/bggdb/

[1] http://beej.us/guide/bggdb/#qref
Here are a few previous submissions of this story, in case people want to see previous discussion, or compare versions:

https://news.ycombinator.com/item?id=9526520 (6 comments)

Worker fired for disabling GPS app that tracked her 24 hours a day
(arstechnica.com)

https://news.ycombinator.com/item?id=9527530 (1 comment)

Worker fired for disabling GPS app that tracked her 24 hours a day
(arstechnica.com)

https://news.ycombinator.com/item?id=9529844 (3 comments)

Woman fired for uninstalling app on company phone that tracked her 24 hrs a day
(rt.com)

https://news.ycombinator.com/item?id=9532688 (1 comment)

Employee fired after removing GPS tracking app from her smartphone
(bgr.com)

https://news.ycombinator.com/item?id=9533071

Employee says she was fired for deleting Xora GPS apps
(slate.com)

https://news.ycombinator.com/item?id=9538062

Woman fired after disabling work app that tracked her movements 24/7
(theverge.com)

https://news.ycombinator.com/item?id=9539528

Woman fired after disabling GPS on work phone
(cnn.com)
From the hospital to the museum thanks to Beam Robot
Of course, there are downsides to using a monorepo. I’m not going to discuss them because the downsides are already widely known and discussed.

I searched but I honestly can't find them. The only things I can think of are: implementation problems (repo too large, every git pull takes more time than strictly necessary for your project) and tainting tools like "git log".

Those don't seem very fundamental. Solvable by a "monogit" wrapper, if someone put their mind to it. Or are they?

Is there a fundamental problem I'm missing? I feel stupid for asking, given how matter of fact he dismissed it :(

EDIT: I guess what I'm trying to say is: monorepos feel, theoretically, like a strict superset of many independent ones. It's just the tooling that makes it less convenient.
A new milestone in non-pharmaceutical treatments for depression
If you're willing to "move fast and break things" then doing an API change in one go across all your projects is great. But in the kind of industry where downtime is unacceptable, if project A and project B both use library C, when you make a change to library C you want to be able to release and test project A and B separately, according to their own project lifecycles. So you need the ability to release and tag library C on its own, and it makes sense for it to be in a separate repository.
> I never used Parboiled much, because it doesn't work somehow with Groovy

If a parser works with Scala, Java, Smalltalk, Typescript, and PHP, but not with Groovy, then change your language, not the parser!
I assumed that as Fedora is kind of the upstream for RHEL, that RHEL would end up with dnf down the line?
Kijiji changed its name to "Kleinanzeigen" here in Germany few years ago, but its quite popular compared to craigslist etc.
There's at least one other of these but it doesn't have great reviews:

http://www.amazon.com/Doorbot-Wi-Fi-Enabled-Smart-Doorbell/d...
Nader Khalili's other design, the Geltaftan[0], is worth mentioning. These are essentially clay buildings which are then fired to produce ceramic houses.

[0] http://en.wikipedia.org/wiki/Ceramic_houses#Forms_and_techni...
The average living cost there is about 1/8th of that in the US. Those free cars that every employees get? Probably like $5000 each.
Interesting that this site states

Just press shift + mute to toggle NKRO.

I understand why you would want this enabled. I'm not sure I understand the negative implications, so - what are potential reasons to _disable_ that?
Hey tantalor, thanks for the feedback! You are right, I should have mentioned earlier what the possible drawbacks of let could be.
Thank you for continuing to demonstrate the precise issues I'm trying to illustrate. I even quoted you and you refuted your own quotes ... absolutely stunning example.

Until lispers like yourself can get over these mental blocks, Lisp will continue to not be chosen as a computing tool. Right now it's requires too many qualifications, more downsides than up, and the community has deluded itself into being comfortable with those issues, and excusing them, rather than fixing them.

It's a cool language family, but it has lots of problems, and the state of denial the community is in about those problems won't solve them. Unfortunately, it's also a community of ideological purists who can't see the problems with their religion to fix them.

Lispers are right, once you commit to a Lisp, and it 'clicks' something in your thinking process changes, and I'm pretty sure it's not a good change.

edit and goodness, Amex doesn't use the lisp Auth Assistant anymore. What is this? 1991? You can stop bringing it up, they moved away from Lisp just like everybody else. And it never provided more than summarized database information as part of the larger authorization enterprise.

Almost every single one of these examples is no longer relevant or decades old http://www.c2.com/cgi/wiki?CommercialLispApplications

It's far more important for there to be new, or well maintained projects than to continue to rely on old, irrelevant glories that have long been surpassed by something else. Go out and write some and put them up on github! Do something interesting!
Copy and paste code out of the same repository, modifying it slightly? Surely the more appropriate thing to do in most cases it to make that code generic, available as a function, and then call it from the two places that now need it?

It sounds like it is the code review of future commits that needs to be fixed here.
If you decide to go the caffeine route, take 3:1 mg of l-theanine with it, (so 50 mg caffeine, take 150 l-theanine).

It helps counter any nervousness, restlessness, and jitteriness caused by caffeine.

Naps, exercise, and a healthy diet are a better alternative though. When you are using caffeine your productivity will be riddled with peaks and crashes.

I quit caffeine, cut out gluten, and even meats (except fish) and was more productive than ever, but eventually got back to old habits, but I do plan on quitting caffeine as soon as I can take a break from working for a week.
I had one of those in school, as I'm sure many here did. I just gave my friends access to it for free. What an idiot.

(I remember someone I knew in another school tried to sell logins for his proxy to people for £5 each or something. They hated him for this perceived pettiness and he became even more of a social outcast than before. Pricing psychology is a funny thing.)

So many life lessons learned in the school IT suite!
dnf _is_ using openSUSE's sat-solver (libsolv). They reinvented the upper layers.
The Secret Nuclear Threat
Yeah I figured someone would say that but I didn't want to make the post more navel gazing than it already was - I've been doing so since CVS was the bee's knees but there was something with a broken external hard drive and not having had a working internet connection that had somehow made me unable to do a commit, I don't recall the details.
"Dinky" basically means "trivial" to me (a Canadian.) Not quite inconsequential—it can do something useful—it just does something simple enough that a person with experience in the language wouldn't even book time to accomplish it.

There's a piece of GTD advice—any task that would take you three minutes or less, just do it right when you think of it instead of putting it in your to-do list. One might describe those as "dinky tasks."
The author's point is that by using Apple CarPlay or Android Auto, they hand over control over software and become "commoditized hardware providers", just like IBM and the IBM-clone providers in the 1980s and 1990s.

I consider this argument ridiculous, as the in-car-software controls nowhere near as much of the user experience as the operating system and applications of a personal computer. Today's car builders have their profit margins because of engine design, build quality, exterior design and branding. They don't lose power by outsourcing their software stack. Actually a lot of them already use the same software over their entire model range (f.e. Volkswagen, Ford, BMW all do) and it does not seem to hurt the sales & profits of their top-end models, so the point that software is the crucial buying factor is basically already refuted.

(I think they should rather be afraid of Tesla overtaking them in what actually matters)
Hugo Still Rules
> if your assets are frozen, chances are there's an arrest warrant for you and you have big issues.

Not necessarily. A friend of mine had all his bank accounts frozen by mistake in a modern western country (a tax was listed as unpaid, even though it was paid; Generally, they just take what they believe they are owed, but for some reason they couldn't and didn't, so everything was frozen instead). Took him about a (very stressful) week to resolve.

> There's a pretty hard limit to what you can do with briefcases of $100 bills.

If you live frugally, a couple of briefcases like that can go an extremely long way.

"Big issues" is right, of course. You might be a persona non-grata with the government, even though you've done nothing illegal. Governments everywhere already have too much power and they abuse it on a daily basis. This will make it easier for them. (That's the price). It will also make some law enforcement better and easier (That's the benefit). Is it worth it? I don't know, but the price seems to be completely ignored, which bothers me.
Not quite the same thing but everyone should invest in one of those $200-$300 720p security systems with 4 cameras and recorder.

You won't believe the nonsense that goes on around your home when you aren't around. Trespassing, package delivery theft, lost/stray animals, etc. and of course burglary.
Taylor Swift – Bad Blood Video
There doesn't have to be a single atom holding the whole application, that's just an approach some people take.

An example of passing data between threads: imagine a forum that allowed indefinitely nested comments. It also loads comments lazily; one must click to load a comment's child comments, in which case they'll be loaded from the backend. However, if the child comments are minimised again, then expanded again, another backend request won't be made, as the data is already loaded.

I approached this by having a separate 'thread' running that just listened for messages (maps) on a channel. If it was a :get-children message, this thread would check the local cache for the parent comment's ID, and if it found it then it'd add the data to the atom provided in the request, otherwise it would fetch the data, add it to the cache, and then add it to the provided atom.

The comment component would then take a copy of that channel, which it'd pass to its children, and to get comment children data it'd just pass a :get-children message into the channel with an empty atom for the other thread to fill. If a button was clicked that changed a comment somehow, then it could send a :update message through the channel with the parent id, and the other thread would re-fetch the relevant data from the backend.

Of course, there's nothing here that couldn't be done with promises/async. I just personally find Go/Erlang style message passing between threads to be simpler and easier to reason about than async/await, and I believe Reagant/Clojurescript would appeal to others who feel similarly.
Follow the world's mass transit on this live map
Vaastu Defects for the Wrong Placement of Room
The design is really odd. Just as if they didn't bother at all to step back and check whether it looks good in the context. It doesn't appear to be compatible with any architectural style whatsoever. It won't work for classic houses, it won't work for the modern ones too. It may perhaps work for some futuristic builds similar to that Japanese capsule hotel, but otherwise it's just some randomly styled gadget that wants to stand out on its own.
It's kind of sad if most programmers think that debugging isn't fun. I thought that was a very large part of the programming process? Or maybe people just do OSS in order to re-balance their programming more to the side of clean-slate programming.
That's awful. Why would I want to watch that in 720p?
The Power of the Automotive Industry
Author here.

I see you picked out the few things that I consistently hear on the coding style I adopted which is based on my time hacking on openbsd. I have no real points to argue against those as it is based on preference in my opinion.

I am curious why you arrived on it not being sufficiently constified however. I'll gladly make sensible changes.

As for the multiple fprintf() calls ... to me it just reads better and the place it occurs in is as you stated pretty obvious non performance critical.
Just frightening.
Are random trading strategies more successful than technical ones? (2013) [pdf]
But if you do versioning properly, then you can change "both sides" in one commit by including the change of the dependency version.
"The main problem is that we're way too productive for the amount of people we have."

Look around you, there is plenty of work that needs done.

Doctors and nurses are overworked (so am I in my opinion). The streets could be cleaner. Public services are getting crapper and crapper (back in the 70's bin men came around once a week, walked up your drive and collected the bins, nowadays you have to do take it to the correct position outside your home). Teachers complain about workload.

Every time you have to wait in a queue, think if that would be there if there were more staff.

Its a complete misallocation of resources.
Many filters aren't that sophisticated, it might just have been a single word that tripped it up. I remember "hackaday" being blocked at my High School because it was tagged as a "hacking website" by the filter.
I Have Nonverbal Autism. Here’s What I Want You to Know
Thank you,
I used data from the "Investor Leadboard"
anyone using Titan X cards? How does it compare to a cloud solution like an ec2 gpu instance with around 1000 cuda cores per instance?
Ros2snap – make snaps out of a compiled ROS package
It looks like that's what F16C instruction set was made for http://en.wikipedia.org/wiki/F16C
As a disintersted outsider, you've definitely distorted his statements throughout this thread.
Uninstalled. I have enough of you guys copying Chrome and turning Firefox into a DRM and social media browser. Get lost!

At least the Seamonkey guys know that advanced users also have the right to have their Options inside of the browser's code, something what you Mozilla guys are unable to understand these days!

What is good for Chrome is not equal as good for Mozilla Firefox!
The 161 bytes offset might be explained by corruption in an encoded version of the key. 161 bytes in binary data would be ~ 216 chars in base64. With an (unusual) line length of 72 the corruption would start exactly at the 4th line.

But: Mail clients should use 78 chars per text line, and GPG encodes base64 in lines of 64 chars length, so ignore my theory ;-).
Uninstalled. I have enough of you guys copying Chrome and turning Firefox into a DRM and social media browser. Get lost!
"8^8 is not yet available in your country at this time. Hopefully a translated version will be available soon."
Wait, what? I don't need a translation, I just want to give that website a go.
I think I'd trust Google or Apple more with my self-driving car's security than say BMW.

http://www.pcworld.com/article/2878437/bmw-cars-found-vulner...

Alex Stamos on Twitter recently:

> If software is eating the world and all companies are software companies, then they all need to learn hard infosec lessons faster.

https://twitter.com/alexstamos/status/600075692731191296

Couldn't agree more.
Why Python does not need Private Methods
Other products in that space (but focused on what's going on inside your home): http://www2.withings.com/us/en/products/home and https://www.netatmo.com/en-US/product/camera
Lossy video compression currently does that - it creates key frames at regular intervals and all the frames between (i-frames) are based on the previous key frame. Some codecs have i-frames depend on multiple previous frames.

E.g. a 320x240 video has 3 seconds at 25fps, i.e. 75 frames and key frames are created each second. Frame sizes will then be something like:

20kB 2kB 3kB 1kB 2kB [20 more frames] 22kB 2kB 1kB 2kB [...]

Now, this technique might be good when compressing images - have a large image that roughly approximates the original and then a smaller one reducing the errors. Or even better, multiple smaller images that correct local errors?

I suggest we create a startup immediately. Someone might already have a cool video explaining how their compression algorithm is going to change the web and the world.

edit: others already thought of this: https://sonnati.wordpress.com/2010/10/19/h-264-for-image-com...
Take a look at the dates. Also give a read to their forum. I'm sincerely happy they started development again, but still last year has not been pretty.
Superadobe looks like something that could kill you in an earthquake.
Via Negativa: Adding to Your Life by Subtracting
that's awesome. now for those who have a plethora of other MIPS & ARM devices but next to zero kernel hacking skills, what can they do?
I like to put a Disallow rule to a randomly named directory with an index.php file that blocks any IP that accesses it.
Then, for a bit of added fun, I put another Disallow rule to a directory named "spamtrap" which does an .htaccess redirection to the block script on the randomly named directory.
A Brief Glance at How Various Text Editors Manage Their Textual Data
Billion dollar club
Will power is of course important. My point is that it's far more nuanced than simply "stop eating so much". Quite plainly, if it was that simple there wouldn't be a problem.

Additionally, "will power" is tremendously complex. We must recognise this and add it to the understanding that people are non-deterministic, complex creatures -- physically, mentally, socially, and metabolically.

It's no more someone's fault they're fat than its someone else's fault they're lean. Genetics, epigenetics, in utero influences, disease, social factors, mental health, sleep.... they are all significant.

In a time where personalised medicine is making giant leaps and grabbing headlines we should recognise that obesity and fat-related health and social issues are complex and sensitive, and require deep understanding.
I remember not being able to look at cryptography websites because they contained the word "hash".
Japan launches organization to promote robot use
Are you a conservative investor? You may have the wrong idea
NodeMCU v2 – Lua-based ESP8266 development kit
Former libzypp/zypper developer here.

It was not mentioned in the post that dnf is based on the openSUSE dependency SAT solver (libsolv) that was created by Michael Schroeder years ago and that powers libzypp and zypper since openSUSE 11.0.

The dnf developers built a thin layer on top of it, called hawkey, and then build dnf in python on top of hawkey.

One of the biggest innovations of libsolv is not only the SAT based solver but also the .solv format which allows to store package metadata for big amounts of packages in an efficient way and operate the solver directly on it.

https://github.com/openSUSE/libsolv
> Working is a means to an end, survival.

Ugh. I find this idea very distasteful. Admittedly my view is tainted by depression, so it hurts extra to be told my only reason to do work I don't like, is so I can keep experiencing a life I don't like. (But, I am apparently still here because I don't entirely dislike it, and/or have hope it will get better.) I do recognize being upset about this may be seen as childish, naive, or entitled, but...

> There seems to be this theory that everyone should be happy, it's pure myth. Life never has worked like that for the majority of the population in any historical system.

I think you're missing the point, or at least something I think about. We're living in an increasingly efficient, automated, bountiful, and wealthy world; why do we have to stick to any "historical system" that sucked for 99.9% of all humans who have ever lived? You "did your time", so every other human after you should have to as well? I don't know what the point of progress as a society is, if it does not result in improving the happiness of the people.

Now, if you want to argue that unpleasant but necessary work actually improves happiness, or that people need to find their own happiness through spiritualism/religion etc., I could see some merit. But I'm reading basically "Life will always be shitty, shut up and get back to work so you can survive another day of your shitty life." Which seems like pointless, soul-crushing, circular logic I'm not willing to accept. Which again, may be naivety/depression on my part.
IdeaSquares Founder: How to Make Your Equity Crowdfunding Round a Success
That's not a protocol limitation, that's Chrome; plenty of other programs can resume HTTP downloads.
There should be some perceived value for acquisition to happen. As long as the start up was able to build that value and hence get acquired, it was definitely a success.
From the article:

"Cal-Earth’s sandbag structures, reinforced with barbed wire, have successfully passed tests for California’s high seismic building codes, making them resistant to earthquakes as well as fire, flood, and hurricanes. "
A large corporation doesn't have the agility or culture to experiment with risky projects. Nor do they want to, because when a bigcorp project publicly fails the PR hit will shave billions off their market cap.

A startup on the other hand can take these risks freely. Startups are expected to fail, so the fallout can be managed easily. Recognizing this advantage, entrepreneurs start businesses with the express purpose to be sold to a large company. That's the goal from day #1. So the product is really the company itself: the people, the IP, the early-adopter customer base, the proof-of-concept tech.

The large business has money and infrastructure necessary to turn something small into something big. The startup can experiment freely and be risky and irresponsible. It's a win-win. The large business doesn't care if the startup makes $1M or -1$M, because both numbers round to zero.

Startups that focus on profitability at the expense of growth tend to turn into lifestyle companies.

When companies without traction get acquired, it's typically a talent acquisition. The tech gets discarded. Not much money is involved, but the entrepreneurs get to claim a successful exit. This makes it much easier for them to raise money for their next venture. When companies are forced to sell because they've run out of money that's not a success, but a graceful failure.
Google chips in with $5,00,000 for child safety
I may be a romantic, but success is more than financial. I would rather have built a company that built something worthwhile and helped people and sold for $1 than one that produced nothing of value and sold for $50 million.