skysight-inc/HackerNews huggingface dataset:
> In other words, projects are late because business justification is usually weak for software projects.

While that's sometimes true, I read exactly the opposite. I read what he said as: 1- Software projects don't start until justification is strong, and 2- justification doesn't become strong until it's already too late.

So, the problem isn't (necessarily) that justification is weak, it's that strong justification is itself a red flag, because it's already too late to start if you have a really good business case for it, you should have started before you had all the data to prove you needed to start.

But, I don't think he's necessarily saying we should be able to somehow predict the future and start software projects before we know for sure we need them, he's just reflecting on patterns observed and providing more of a thought framework for dealing with these patterns.
Google works for more immediate problems, but not for longstanding ones.
Same here. Write your shitty code in an isolated private part. Expose decent parts and let that be used elsewhere.
I really think this is mostly just testing how well the list/vector/array class is handling being asked to expand itself by one element a million times.
The number of memory cells will be as they need to be addressable...
it feels really strange to me how mac people actually only talk about the visual appearance...
...considered to be not a good trait between civilised people.
A robot with a self-cleaning feature would make me more likely to use it.
Show HN: Transform Websites into Structured Apis Using Modern Java
This is merely a restatement of the ideal of government, and doesn't address the fundamental complaint of the GP.

Government isn't incompetent because it's made up of incompetent individuals -- it's incompetent because it's been deeply captured by special interest groups, including, but not limited to, public sector unions.

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

(TL;DR: When studying government from an economics perspective, the sum of rational self-interest actions across all actors isn't very well aligned with the overall public interest.)
"The long litany of examples includes Ubuntu Unity, Gnome Shell, KDE 4, the /usr partition, SELinux, PolicyKit, Systemd, udev and PulseAudio, to name a few."

Add to that systemd's ambition to take the place of package managers now.[0]

Really, I've come to the conclusion that the major Linux distros are no longer Linux distros. They're systemd distros.

Anyone who wants to continue to use a traditional Linux distro (or even a traditional unix) is better off looking elsewhere.

[0] - http://0pointer.net/blog/revisiting-how-we-put-together-linu...
+1. Clean, data-driven interfaces also promote meaningful tests as opposed to cringe-worthy "mockup object"- driven tests.
I'm always impressed with how the Mac menu bar + Apple menu has remained in the same place since 1984 [1], performing pretty much the same functions for over 30 years!

Compare that to the lack of concrete UX decisions in the world's other major OS, unable to settle on a single menu style and so much flip-flopping on key features (cough-Start Menu-cough); removing them in one version and bringing them back in the next.

Is the Mac OS Menu a design that simply cannot be improved on, or are the users just not clamoring enough for a change?

[1]: https://en.wikipedia.org/wiki/Apple_menu
LG Quick Cover. LG launches phone case of an unreleased phone  – APPlite
Consider adding "filed" ( http://filed.rkeene.org/ ). It is a small static-only HTTP server that is as fast as I can make it. Faster than any other web server I've been able to find. I wrote it to solve a problem where I/O was holding up requests from being processed efficiently systems with extremely latentcy bound disks.
@askafriend I work at Mattermark and we have not gone through a 'massive restructuring'. As with any growing startup, some people don't work out, traditionally more sales people vs. other types of employees. We are on a steady hiring trajectory and we have no problem with being transparent as a company. Where did you here we went through a 'massive restructuring"?
If you're trying to achieve proper encapsulation, you just have a module that implements some sort of functionality, and shouldn't need to borrow anything from it. The real question is why you're pulling data instead of pushing messages.
Eliza is the statue. Henry Higgens is Pygmaliopn.
Funniest Robbery Fails Compilation
Nice demo, but the dialogue on top of the video is fairly annoying: "I have no idea how he did it!", "This is insane!", "You can't see it here but my jaw just completely dropped.". Would have been better with a commentary from someone who had a clue what was going on.
TaaS – Time as a Service
I just tried it with Promise.resolve and after JIT warms up its 350ms, while .NET (async) after JIT warmup is 300ms
Hi Tomasz,

Ann Winblad talked about 4-5 months of product before an IPO. The huge difference now seems to be no consideration of profit or even projected profitability.

IMHO, this is beginning to hugely distort what it even means to be a business today.

Understandably no one wants to dwell on this, but it's important when we look at what has changed.
How is this wrong?
If those were the only 2 sides to the coin, you might have a point but it's a much more complex issue than that.
@w1ntermute We are not the kind of company that will 'disappear when the boom turns to bust'. Despite what you and others may think, we do not just serve startups or various types of investors. We have many enterprise level B2B customers. Our business is NOT built on the backs of small, early stage startups, which we likely won't even sell our product to. Also, if there is a but, it'll be us reporting the trends on it.
So according to the comments in the reply to https://www.reddit.com/r/MarioMaker/comments/44b7cd/a_3bit_b... - this is not actually turing complete, for several reasons such as level size limitations and object count limitations.
I feel like this is a little like learning to cook. At the very beginning, I would just create a huge mess as I was going, use a different pan for every item, a different mixing bowl for each thing, and I didn't know how to prep effectively in advance.

This left a train wreck in the kitchen after each meal that I was forced to clean up before I could cook again.

I learned how to do a little up front prep, and that saved time and mess, and made the whole process smoother.

As I learned more, I started trying to clean up as I went and conserve the number of pots and pans, I made a lot of mistakes washing everything after I used it, which slowed the whole process down, and I didn't need to reuse some of it.

Now I'm in a place where I have enough experience that I know in advance what I can reuse for this meal and whether it needs to really be washed (maybe you just deglaze a pan and wipe it down with a paper towel instead of hauling it over to the sink and scrubbing it), when I'm actually done with an item, what the approximate cooking times are, etc.

Now I can cook complex multi-course meals to a good restaurant quality and have just a couple of things left to clean up by the time dinner is ready to serve.

It doesn't take a genius to figure these things out, just the acknowledgement that these things are important, and the more people you are working with, the more important they are.

Sure, I could have spent the rest of my life cleaning the huge mess after every meal at home, and it wouldn't really matter.

But if you are going to be a line cook at a large restaurant, you must get a hold of these concepts.
Do Analytics like a Hacker
You might want to look into the story of Lionel Crabb, an SAS frogman suspected of being killed while performing espionage against a soviet warship.

https://en.wikipedia.org/wiki/Lionel_Crabb
Some of the things this article assumes are negative are simply not.
While the UNIX and Windows GUIs of the time were abstractions on top of command lines, thr Mac GUI of the time WAS the native UI. It was literally burned into the ROM of the machine. There was nothing lower they were hiding aside from the machine code.

There was a debugger BTW, the very limited programmer's key (which most users only used to kill the current app if it crashed). It could be replaced with the more powerful Macsbug.
How Calendly's Cleaner UI Tarnishes UX
Why advertise yourself as dumbass with zero common sense?
We could be doing that now, on the blockchain instead. Inflating the block chain isn't really a "problem" until you get to very large values.
That is an excellent idea, doesn't your phone continue to use power after it's done charging? This wouldn't produce a ton of Bitcoin but it would be an opportunity for a net-positive outcome from a cost perspective which is clever.
The content consumption/creation distinction is a useful one, and I agree that phones are definitely more geared toward consumption. Still, I think the author drastically underestimates the benefits of smartphones, especially when it comes to the non-technical crowd.

Let's see what's been using my phone's battery lately. In decreasing order of usage:

• Nike Running

• Strava (cycling app)

• Safari (mostly Hacker News)

• Mail

• Messages

• Notes

• Health

I also use imiwa (Japanese dictionary), Anki (spaced repetition), Maps, Dark Sky (an amazing weather app), and Kindle. Thanks to my phone, I take more photos. I read more books. I can summon an Uber. Yes, some of these uses are purely content consumption, but many are incredibly useful. While a dumb phone and some dedicated devices could do many of these things, they couldn't do them as well. For example, if someone texts, "Where are you?" I can reply with my GPS location and a map. That feature alone has saved me tons of time and frustration.

Even if all the issues raised by the author are valid (I don't think they are), there's still the fact that without my phone, I wouldn't be quite as knowledgeable, as cultured, or as healthy. Those are the criteria we should use when evaluating these devices, not idealogical ones.
الاحتلال+يعدم+فتاة+في+الخليل
Personal attacks (which that looks like) are not allowed on Hacker News.

We detached this subthread from https://news.ycombinator.com/item?id=11098802 and marked it off-topic.
Messed up your code? Now you can just blame someone else
On the other hand, you could say your grandpa is John Tyler and was born a mere 14 years after the declaration of independence.

http://m.mentalfloss.com/article.php?id=29842
Wasn't the first half of this--or possibly all of it--on another site? I remember reading this elsewhere, particularly the "How to Micromanage" part.
You can definitely share files to network, and install drivers (apps) for new hardware. Except new hardware often can't be installed directly, but that's more of a hardware limitation similar to laptops than an OS thing.

See https://play.google.com/store/apps/details?id=com.hp.android... for an example of a "driver" for new hardware.

Editing hosts isn't possible without rooting, but you can get the same effect by running a DNS server on device and changing Android to use it.

I challenge your assumption that we should look at unrooted android versus Windows. Which of those things can you do on Windows without being an administrator? Unrooted stock is sandboxed, but so are Windows nonadmin accounts.
Just ran the checked in Crystal code on a 2015 Macbook (1.2ghz):

$ ./skynet

Result: 499999500000 in 294ms.
.Net is compiled to native code, either jit or at deployment time.
Your point seems to be more about using chains of set operators rather than the fact that it is on one line.

I am a C# guy and I find Linq which is the equivalent to this insanely useful and I often write code as above. The tax on this is the rest of the team need to be up to speed in reading such code. If they are then what you gain is use of a bunch of predictable operators rather than loops with counters, state, etc... that could have subtle bugs.

Using code like this is no different to writing SQL that does joins and aggregates in a stored procedure and calling it from your code, something I also thing isn't a bad thing.

Debugging can be done by splitting it into lines, or using a decent enough debugger. Or making it pure and writing unit tests or property-based tests to cover it.
That's what I suspected after. I did not mean to be condescending though.
The teen pregnancy numbers here seem to be from the CDC's hospital data rather than a self-report study.
There are worse things for our civilization to be judged by.

Sitcoms. Reality shows.

Really you could not blame aliens for destroying us.
Not at problem at all. I am even looking at Idris right now and I haven't never heard of it before.
Your reply reminded me of a lecture from an ocw course I'm watching on and off. He covers a bit about infrastructure design and policy choices in that lecture. I thought it was really interesting.

https://www.youtube.com/watch?v=WpcbBk5ckas
Would you happen to be CydeWeys from Sup Com Talk?
The Apple II was definitely more open. It was physically open in the sense that one could pop open the top and add cards to it. It was also open in the software sense as one had to write 6502 assembly code to get the most out of it.
The scale of the Bitcoin mining buildout indicates that grid computing may indeed be feasible after all given the appropriate compensation, and potentially better than or competitive with cloud computing for some applications.

Now that we have a quick way to set up a fine-grained bitcoin micropayments channel between any two machines, an obvious next step is to start generalizing this to the renting out of other compute resources beyond just storage. [1]

Can anyone provide an example of a problem that would be better solved with grid computing/micropayments instead of cloud computing?

[1] https://21.co/learn/grid-computing-with-bitcoin-micropayment...
While we're at it, why are networks rated in bits per second but network transfers in bytes per second?
Very helpful info, thanks :D
Minor clarification -- Erlang is not interpreted, it's compiled to bytecode and executed on the BEAM virtual machine.
> I don't think you have any idea how American politics and elections actually work.

> dumb

> Have you ever met a voter other than yourself.

> naive, impractical, and uninformed

Personal abuse is not allowed in Hacker News comments. It breaks the guidelines by being uncivil and unsubstantive, and provokes reactions in kind (see below). So please edit it out of what you post here.

We detached this subthread from https://news.ycombinator.com/item?id=11096684 and marked it off-topic.
Blade Runner (1982) had a pleasure android long before Ghost in the Shell and there's several Sci-Fi stories that had them before then. Here's one from (1938)

https://en.wikipedia.org/wiki/Helen_O%27Loy
No, just a freeze. Happens all the time when I have more than 10 tabs open. My computer is old. But this time I only had 2 tabs, so I blame your website. It could have been due to another thing, but I don't wanna try again.
The equation has been reversed it's about future revenues. Who can you sell to rather than how much you take in. User growth was a proxy for this which is why it has become emphasized. Revenue trails growth and so forth is the saying. It's been valid in the case of Google, Facebook and not in others (say MySpace)
What I still find fascinating about the Apple machines of the OldWorld era is not how small the on-disk system was but how much they tried to stick in ROM. My Centris 660AV had QuickTime burnt into the ROM chip. Of course, before anyone used the machine there was a software update to QuickTime so there was no point.

We also had a Mac Classic that has a whole system disk in ROM that you could boot from if you held down a secret key combo.
Also, I upvoted you because I like the idea, but couldn't read enough about exactly what is your service/software.
Stop Bringing Brand Wars into the Office
Isosurface Extraction Using Marching Cubes Algorithm
That debugger was not in the original "64K" ROM BTW. It was the "128K" ROM included in the Mac Plus that introduced it.
> Your point seems to be more about using chains of set operators rather than the fact that it is on one line.

It isn't, though. My point is that sticking chains on one line makes it difficult to read as well as debug the various bits and pieces that all rest on a single line.

Consider the task of debugging any arbitrary error where you have little more than a line number to go by. You now need to refactor the line just to find out which method invocation is causing the error.

There are also readability issues with lines like these.
Just because something looks creepy doesn't mean the target buyer is creepy.
Yep. More and more it seems like systemd is where former kernel devs go to get around Torvalds' policies.

Just look at Sievers dumping on the debug boot flag, or how they unilaterally disable sysrq, or overriding the kernel defaults surrounding namespaces.

Expect rkt to turn into the packaging system outlined bu Poettering soon enough...
Your site is down, Alice.
This is a fantastic writeup covering a large amount of cryptography, both in and outside the context of the web. Reading about all of this summarized in a practical context including all of the real-world nasties like ARP spoofing is both great, and double-great for getting a feel about why utterances like "hm, this should be okay given this circumstance" should always put fear in your heart when talking about security.

Also, wow, I'd never seen that link to The Cryptographic Doom principle before, despite trying to elucidate that concept before myself (badly). That's a fantastic bookmark to keep for inclusion in explanations on tickets filed against dubious crypto.

Likewise, this link is going in my bookmarks for immediate deployment when I need a litany of padding oracles and timing attacks to explain why indistinguishability is essential to a friend. Thanks, author!
Article freely conflates GPS with software navigation. Over of these things works perfectly while the other has technical and usability quirks still not solved.
I'm building a music synthesiser in Rust, and it's a joy to work with.

If you're used to writing systems languages, you might want to learn it because it's the highest-level language I know that prays to the gods of zero cost abstraction. You still get all the control from C/C++ while gaining several convenient features. ADTs and pattern matching are personal favourites. It's widely known that Rust automates a lot of manual memory management without a GC, but it's not as widely known that the same language features also provide very very good assurances for concurrency: it forces you to acquire locks before you can touch synchronised data, it ensures that good behaviour around multiple consumers or single producers for shared memory, etc.

If you're used to writing in the likes of javascript, python or ruby, Rust is a wonderful gateway drug to systems programming, and it's probably the most accessible alternative. Instead of seeing the compiler/borrow checker as bitching and moaning at _everything_, you should see it as holding your hand and helping you navigate some of the trickier bits in writing safe code. As a bonus, it's probably one of the sanest languages you can use for writing FFI code for your language of choice when you just need the extra performance.

If you're a functional programming fan, you'll soon get the sneaking suspicion that Rust is a wolf in sheep's clothing. It's an expression based language with immutability by default, it features Algebraic Data Types and Pattern Matching, uses Result<> (think Haskell's Either) for error signalling instead of exceptions. The closest thing to "object orientation" are traits, which are actually much closer to type classes.
Isn't that already happening? Not to pick on the Japanese in particular but it's low-hanging fruit search wise

https://www.google.com/webhp?sourceid=chrome-instant&ion=1&e...
This?

https://en.wikipedia.org/wiki/Kenadsa_longwave_transmitter
Drug Shortages Forcing Hard Decisions on Rationing Treatments
How about running this on a 36+ core machine? Testing parallelism on a dual or quad core isn't that exciting. Maybe we'd realize this benchmark isn't really testing parallelism but primarily sequential thread creation/deletion. This could very well be fast on a scheduler optimized for a single core.

And just to be clear, the interesting property to test is parallelism, not concurrency.
I wonder about SSLv2's MAC which is basically MAC-then-encrypt with secret prefix MD5 with the CBC padding included in the MD5.
https://petitions.whitehouse.gov//petition/appoint-lawrence-...
I don't understand the issue, in mobile development you can also test changes as soon as the build is done and see if there are bugs. You can also publish (at least for Android) directly from CI to play store Alpha/Beta/Release and have that go straight to QA. You can build a branch on PR and have a link sent to your QA team via slack.

> One is that suppose we merged some feature into development and later figured out that there are lot of bugs in it. Now it can’t be pushed further, whole development cycle is stuck because that code is already merged with development

Why is buggy code being merged in? Why isn't it reviewed,covered with tests and tested manually?

Also, you can checkout commit before merge, create a new branch and continue development without any issues.
I do not know of any attacks against encrypt-then-MAC CBC-mode but I believe at least part of the rationale behind the migration away from CBC-mode is due to increased complexity of decryption. With CBC-mode decryption I have at least one extra step (validating padding), which as the blog post mentions has been troublesome.
> What is moral maybe illegal, and what is legal can be immoral

According to whose moral standards?
> hardware manufacturers just want to sell units to satisfy shareholders.

Sure. Don't underestimate the importance of staying in business, or having enough market share to attract developers.
blogspam (https://news.ycombinator.com/newsguidelines.html), dupe https://news.ycombinator.com/item?id=11053078

(Also, really, they thought that was newsworthy?!)
1. It's good that such boring, backbreaking labor is being automated away.

2. It's bad that we're still in the middle ages when it comes to this thing where if you don't slave yourself enough to something, you starve because no money.
Things like this sound cool, but looking at their site (http://seismo.berkeley.edu/) they have plenty of spots on their maps, but it seems that this simply pulls the data from usgs.gov - not their own app. Was anyone in Kansas or Christchurch running this app on the weekend - if so, what did you see?
Looks interesting.

What is openCV used for here?
Arbritrary File Upload on AirMax, Ubiquiti Networks rewarded $18k bounty
New tech makes cheap graphene 100 times less previous methods
>, but you can say ""

I'm guessing you meant to type, "but you can't say"
I am scared that Java takes an order of magnitude more memory than Go with its 20+ years of optimization and all. Java's GC does not appear to be significantly better than Go's one. Also Go's runtime and GC both written in Go, something Java has not been able to do so yet. So Java appears less general purpose to me. Yes Java has humongous number of libraries and frameworks but that is expected of a popular language that is 20+ years old.
One more reason for me to enjoy Gobolinux i guess.

The people in charge there have either implemented or plan to implement support for those language specific managers into the Gobolinux tree.

As best i understand it, this by making the Compile tool able to use these managers to download, and then capture the output and place it into the proper place in the /Programs tree.
Ask HN: What web hosting provider do you use?
Want a hosting provider that at least provides contact form support for non wordpress websites.
It's not going to be easy getting a knife through a rib cage and it must be hard to get leverage underwater.