skysight-inc/HackerNews huggingface dataset:
The idea that "automating away programmers" == "building some ridiculous tool that allows the pointy-haired boss to program with 'plain English'" is a strawman.

Programmers don't have to be fully automated away for automation to happen. Suppose I have a "Really Good Compiler" for a "Pretty Nice Language" (let's not start a language war by discussing which language is closest to this, or which exact features are in it). This "Really Good Compiler" has a great optimizer, the "Pretty Nice Language" has a garbage collector that's really good for the task, etc. The PNL standard library has a huge collection of well-tuned data structures and a generics system that actually works etc. The PNL toolchain also has a ton of really effective static and dynamic analysis tools to find lots of bugs that its type system didn't.

Meanwhile the folks down the hall in a hypothetical competing startup are programming in C using pcc, like they just teleported from the 80s.

How many staff do they need to do the same job, even assuming that they are people just as smart as we are (despite their strange choice of tools?)

We have managed to be largely blind to this because the amount of work that's available to programmers has expanded hugely to compensate for increased productivity - plus our tools aren't quite as nice as the hypothetical I described.

On a related note, I found a great code sequence for something I'd been thinking about for a while, by specifying what the sequence was meant to do, and specifying the semantics of a few SIMD instructions, and turning Z3 loose. Not quite ready to fire myself though.
This is a projection they took from a weakly sourced article. A Huffington Post blog "article" states that the market is around $684M (as of 2014) and "a potentially $500B industry." [0]

But the real source that it cites can't be found on Mintel's website (maybe it's a paid publication?).

[0] http://www.huffingtonpost.com/antonia-opiah/the-changing-bus...
Ask HN: How do you differentiate yourself as an older programmer?
Let's say you're 40+, interviewing for a senior software role with a 26-year-old CEO who just raised 15 million from a16z... How do you sell yourself? How do you stand out?
Happy to answer whatever questions we can disclose! Thanks for starting the thread.

It's somewhere in the middle to be honest. We did not invent freeze dried coffee - it's been around for over a century. However, it is quite difficult to make it work at-scale in a way that's profitable/sustainable, and that still tastes good.

I have a pretty extensive background in operations, manufacturing, & tech and I had to pull out every trick in the book to get this to work at our current scale & price. It was a lot of work.

It is also inherently more expensive to sell. All of the same things that make regular instant coffee taste bad also make it super cheap. We are trying to make it as affordable as possible, but at the end of the day the higher quality does require a more expensive process.
Side project is an app to help people overcome addictions. I haven't released it publicly and am unsure if it will be monetizeable and/or of interest to a larger company. But yeah, if it gets any traction turning that into a job is my plan "A". Based on the outcome of my last startup though, I'm also interested in plan "B"s. :)
Or a few other cases of large files, e.g. huge c files (like the sqlite3 amalgamation). Vim's xml syntax highlighting in particular is very slow, but other C-like languages are fine.
I'm not sure what you mean, but it's now possible to deactivate your FB account and continue to use Messenger.
I used the hdfury years ago. the output quality wasn't anywhere near the quality of the input signal. but it did technically give you a signal without hdcp.
Top Dynamic Programming Problems
Mmmmmmm, only if I can edit the source of the DRM program and make my own modified version.
Thanks for the info! I guess you don't live in a very humid/hot area like Australia then!

OpenSCAD seems to be a great tool, are there any reference guides or tutorials you recommend to use it?
algesten's comment seems entirely accurate to me. He's not claiming that the captured frame buffer will be of lower quality, but that in order to distribute it afterwords, you would need to recompress the captured frames. That recompression is where the quality reduction would occur.

Everything I just said is rephrasing what is already in algesten's comment.
Every flight I've been on with Starbucks VIA has been absolute trash. Airplane coffee quite literally tastes like it was made with toilet water. That's honestly the only way I can describe it. I'm bearish on any improvements because I'm convinced the problem is the water they use.
Boaty McBoatface situations seem to occur due to "vote on a name" rather than "suggest a name" as the situation with Curiosity appears.

Voting implies an outcome defined by what is usually an easily compromisable web-poll, whereas the suggestion-route implies some curation.
I wonder if they have some system in place to notice and counter-act this.
I actually liked Starbucks VIA until I got violently sick off of it once. I'd probably try it again though, it was pretty darn good for instant coffee.
There is an argument about that here: https://mw.lojban.org/papri/Why_positional_case_system

I think your position is more persuasive, although I've never argued about this with an expert Lojbanist.

I speculate that overall they feel that (1) there could be dozens or hundreds of different cases reflecting the role that a noun plays in a particular predicate relationship, (2) most don't apply at all to any given selbri [predicate relationship], (3) [an argument made in this page] some people's feeling of which case is appropriate for describing a particular relationship is culturally arbitrary, as they differ significantly from natural language to natural language, and (4) they don't want to force the use of prepositions, for concision.
Apache Groovy meets the one-line criteria but fails the simple syntax rules criteria. In your example, you have to explain that Groovy's println syntax above only works for certain types of arguments. If you want to print a string then

println "Hello World"

is being translated internally to `System.out.println("Hello World")` and therefore works. But if you want to print a list then

println [1, 2, 3]

doesn't work because it's being translated to `println.getAt([1,2,3])`. You need to put parentheses around it, writing

println([1, 2, 3])

to achieve the same effect. Your choice of example obscures this dirty little secret about Apache Groovy. There's many other confusing rules like this in the language, e.g. `myVariable.class` returns the class of myVariable, whereas `myVariable.clazz` returns a property called clazz.

The Java example in the blog post works for all types of arguments, even if it is 5 lines long. I agree with you that Clojure meets both the one-line and simple syntax rules, though.
But he didn't explain why it happens at all?
I'm a big opensuse fan, but none of my opensuse machines are running btrfs.. Although, besides the stability (which can't really be much worse than ext4/xfs which is what I apparently choose on the two machines) I think what drove me nuts about opensuse's use of btrfs was all the subvolumes. Which are cool, but just another thing for me to deal with, and my computing theory for the past few years can be summarized by "KISS, unless its really hurting".
How many programmers did commercial Operating Systems put out of work?

Every new level of abstraction leads to new capabilities and new demands. You may have to learn new technology or move in a different direction, but I'm pretty sure software development as an industry is pretty safe unless we develop strong AI.

Higher levels of abstraction allow people to build virtual goods that are more complex and there is no foreseeable limit to the desire for more complex goods virtual goods, and no real physical limit.
Why the remount,clear_cache ? I'm doing a monthly balance before I got problems on a few servers.
I run Slack all day, signed into and switching among 4 accounts. Plus Apple's Messages. Plus chrome and safari, each with at least 6 windows open and dozens of tabs among them. And I then have at least 2 instances of VSCode open, each with dozens of tabs. I never experience the slightest perceptible speed or performance problem.

This is on a late 2015 MBP with 16GB RAM. On my prior machine, with the same daily behavior, I still never experienced performance problems in VSCode.

I used to use ST2 & ST3. Bought both. I just don't find a compelling case for it given the huge and active extension community for VSCode.

Slack, however, frequently has performance problems.

I also don't open files regularly that exceed 4-digit line counts.
I've always understood "the automation of programming" to refer to essentially what happens in this scene of Star Trek TNG: https://www.youtube.com/watch?v=lPLiaYD1lUo

In other words: constraint-based design, in an interactive context-sensitive dialogue, with the machine-agent able to resolve change requests by—among other strategies—discovering and consuming new third-party components it was previously unaware of. Such a tool essentially presents the same interface that a contract programmer presents to their client: tell me what you want, I'll build it; tell me how it's wrong, I'll fix it.

The article brushes the concept of such a level of automation aside as requiring near-human intelligence. But, unlike a human programmer, said tool wouldn't need do the hard part—requirements-gathering—for you, or have any sense of what "sensible" requirements would be. Where human software architects guide their clients into specifying requirements, this sort of tool would be much like the compilers of today: it would take you literally and give you what you asked for, rather than what you wanted, until you ask for exactly the right thing. It would just do it very fast, such that this could be the basis of an effective feedback loop.
Lexmark and the Federal Circuit are now a direct and actual threat to the notion of the ownership of property, both real and personal, in the United States of America.
Note to self: always check the thread before digging up this kind of stuff myself. Thanks!
SpaceX's entire Super Draco rocket engine is 3d printed, too.
You used to (maybe still) couldn't watch Apple Keynote presentations on any other browser than Safari.
Just use a single vendor credit card. I do this all the time with Final (getfinal.com).
The reason I'm using F# at the moment is indeed the platform, but not because of .Net; it's because when I tried Haskell on Windows, it didn't work, from which I conclude Haskell is primarily about Unix; I want an FP language where Windows is a first-class, no-question supported platform, and F# fits that bill.
This is Jevon's paradox, which states that efficiency increases can lead to higher resource usage. Here the resource is human labour

https://en.m.wikipedia.org/wiki/Jevons_paradox
Another way to get at this:

φ^1 = φ
φ^2 = φ + 1 [this is the definition of φ]
φ^3 = φ(φ + 1) = 2φ + 1
φ^4 = φ(2φ + 1) = 3φ + 2
φ^5 = φ(3φ + 2) = 5φ + 3
φ^6 = φ(5φ + 3) = 8φ + 5
...
φ^n = F(n)φ + F(n-1)

Note that F(n+1)/F(n) → φ as n → ∞. Or flipped around, F(n)φ → F(n+1).

So φ^n = F(n)φ + F(n-1) → F(n+1) + F(n-1) = L(n) as n → ∞. This gets close to being an integer because F(n+1) and F(n-1) are both integers.
Medium Membership
R&D jobs really want a Ph.D - it doesn't so much matter if it's Ivy League (though that helps), it matters that you completed your dissertation.

The reason is that they want to see evidence that you can take an unstructured problem where you don't have the faintest clue where to start, and make enough forward progress on it, on your own, that some useful contribution to human knowledge will come out the other end. This is a very different skillset from most software engineering jobs - when you're developing new knowledge, Google is useless, StackOverflow is useless, your peers are mostly useless, and you need to know how to ask the right questions and find the answers to them. A Ph.D is an institutionally-sanctioned way of demonstrating this skillset. There are other ways to demonstrate it - work in an industry research project that's successful and perceived as cutting-edge, founding a technology-based startup, published independent research that's cited by others - but they all involve you taking on the risk of conducting your first major research project on your own, without institutional guidance.
Oh, right. Don't they put emphasis on top PhDs diplomas though and not "just" on an Ivy League BS/Msc?
That looks like a NTSTATUS value. You often see also HRESULT values. They are structured values, some of the bits tell you which subsystem generated the error, other bits tell you the error number within that subsystem.
I picked two relativity popular platforms, though niche together to focus on the danger. All the more so would something like the rust os have problems.

The bigger issue will be when these providers will start holding OS's hostage (well, you want to view half the web? You've got to have a locked bootloader and only I have the key. You want to index our sites? Google has permission (the unlocking key) but not you).
I don't think I'm missing it, so much as I'm not understanding what the material difference is between your unwillingness to run a blob on your machine versus your unwillingness to do any of the other things a business might require before issuing you a password.

You are free not to run those blobs, and not to use Netflix's services. Where you lose me is the militant demand that Netflix not offer services to those willing to run the blob.
I'm still in my 20s, though fast approaching 30s. I'm not sure if I'll still be doing this in my 50s and 60s, but I'm not concerned.

Maybe it's naive of me to not be, but there is a pretty significant delta at the moment between current AI and true, sentient, AI. We're quite a ways away.

And, if we ever do get there, I think the least of my problems will be, "oh, well, there goes my job."
It opens a ~190 MB JSON file[0] in about 2 seconds on my machine. Scrolling and jumping around the file feels very smooth. Editing is also crisp. Writing the file back to disk takes about as long as opening it.

[0]: https://github.com/zemirco/sf-city-lots-json
12 Docker Questions
I feel like at the rate we are going we will eventually reach the Visual Basic days where a monolithic IDE will lower the barrier for front-end development so much that anyone could tinker with it and produce stellar applications with little to no programming knowledge.

The only difference from Visual Basic days is that now we have ML and AI to further simplify and do the thinking for us.

Designers will be hit the hardest. Followed by developers.
Ditching your single page app forturbolinks?
Some more discussion of the same article on Reddit:

https://www.reddit.com/r/math/comments/60uua3/powers_of_the_...
I am 56 and still love programming. I had a wake-up call recently about whether the programming world still loves me however. I am looking for a new challenge and saw an opening for a "C++ cross platform dev" at an interesting (sports stats and league management) startup just down the road from my house. I love sport, love stats and I've been hobby coding a successful C++ chess GUI for years (plus tons of professional C++ experience). Submitted an application through an annoying SaaS job application site. When the submission completed the automated message from the CTO was "thanks we'll get in touch if your experience matches our needs". I had a strange premonition. "I am never going to hear from these guys". Two weeks later, after hearing nothing I thought I'd try something else. After spending an hour to eventually successfully find out the CTO's email (it's one of these cool new companies that makes direct contact more or less impossible) I sent the following email;

Subject: Can I Buy you a Coffee?
To: $Name, CTO $Company

Hi $Name,

I am an experienced programmer looking for interesting challenges. $Company is exactly the kind of company I'd like to help out next. I love the idea of taking on the world from $NiceSuburbWhereBothMeAndCompanyLive. I could send you a CV but I don't think that's the best way of us finding out if there is a real opportunity for me to help you. Basically I have heaps of experience in a bunch of important technologies, but much more importantly I am capable of learning new languages and technologies quickly. For example, at the moment I am teaching myself Rust, just for the hell of it, and because I think it is cool and exciting and has a future. I am not a paint by numbers developer. Copying and pasting snippets from Stackoverflow without understanding is not my thing. Deep level understanding and sound software engineering is my thing.

I'd love a chance to show you what I can do, and I would definitely consider doing so on an unpaid basis, at least initially. I've had some significant success in my career and these days I don't have to work to make a living. For this reason I could be the ultimately flexible "resource" - for example it's possible I could help out on an occasional basis, without requiring inflated contractors' rates.

Basically I am offering something a little bit "out of the box". I don't think either of us has much to lose by having that coffee and opening our minds to the possibilities.

Cheers,

Bill.

I must admit this time I did expect a reply, but no luck this time either. What kind of person would just ignore something like that? I think it might be a generational thing - just ignore emails if you don't want to answer them. They're still advertising that C++ job too. It took me a while to realise that these days cross platform C++ probably means iOS and Android - not Windows, Mac and Linux any more. Still you get a certain amount of experience and you realise there's very little really new under the sun and you can adapt your experience and understanding and learn anything "new" quickly if you need to. End of my bitter rant.
Probably the bigger issue is Vitamin D synthesis.
We're hoping to work with the community to support all container schedulers [1].

But right now we're focused on deepening the integration on Kubernetes so it's a great end-to-end experience.

[1]: https://gitlab.com/gitlab-org/gitlab-ce/issues/20199
While everything you say is true (ie - I agree), does it really matter?

No - we don't know how the C.Elegans 302 neuron connectome works - but if you slap it into a robot or simulation, it tends to act in a similar manner as the actual biological creature (at least, that's what I understand).

We've seen similar results with biological neural networks (cell cultures and such) hooked up to machines as well.

If the connectome of a fruit fly were somehow mapped, and then simulated on a machine - it is very likely that it would act like a fruit fly.

Taken to the utmost extreme, the same could possibly be said for the connectome of a human being, could it not?

Does it matter in that case, then, whether we understand how it works - versus the fact that it is working?
The (poor) choice of title here is the difference between "Here are some things that would make my life easier" and "I'm an entitled prick".
I hear this phrase "It didn't make business sense" all the time. It's a persistent misunderstanding of business and customer relationships.

You support Linux users (or Mac or WinXP or those behind a firewall or MSI installer needing etc etc) because you want to dominate your competitors, you want your product to be the one everyone wants, and the one with the least bugs.

If you're going to say 'screw you' to some customers, that needs to be based on an actual assessment of costs, impact on users, how it can be mitigated, and what else that money would be spent on. A CTO level decision, not the support desk. And not supporting people running a standard web browser is just inept.
That's roughly the transit latency from Texas to the coasts. By your logic even a fiber link from Texas to NYC will have "abysmal" latency.
Weird, the internet I know and love has plenty of issues with browser compatibility :-)
>We have managed to be largely blind to this because the amount of work that's available to programmers has expanded hugely to compensate for increased productivity

The increased complexity allowed by increasing levels of abstraction is a huge part of that increase in demand.

When we move up the abstraction chain we can generally build more complex systems. People then come up with new ways to use the increased capabilities to solve new problems. I don't think this is going to stop unless we develop strong AI.
That objects are a better abstraction than modules+records, that class hierarchies are better than abstract data types, that multiple dispatch is better than pattern matching, and that a lambda can easily be modelled as an object with one useful method called "apply" without anything being lost.

The current FP trend has had a lot of benefits, namely in teaching people about immutability (I write immutable objects 95% of the time). But I am convinced that procedures and data belong together, and that it's an easier way to organise code.
What Happens If You Break an Artwork?
I'm using BTRFS on many VMs running Ubuntu servers, and I find that expanding the virtual hard-disk, on Proxmox, without stooping the VM it's far trivial.
That argument works both ways. _NO ONE_ should have the option to view copyrighted videos because you don't want it?

Yes, I think this improves the web. You no longer need the unmaintained disaster that was silverlight or the resource vampire and exploit factory that was flash. Users can choose to view this content in a safeER way than before.

The only good argument against this is the 'we don't need DRM ' argument, but that hinges on the ability to get content you want in a non-DRM format and it seems clear that isn't happening anytime soon thanks to Hollywood et. al and I don't blame them.
ALL web browsers on (non-jailbreak) IOS are a wrapper around Webkit. Apple won't allow anything else.
Are there any major jurisdictions where this is actually a requirement? I was under the impression that a) it makes no sense, anyone could use an external recorder, and more importantly b) when you are talking with someone, you don't have an expectation of privacy from the person you are talking with?

Where would this meaningless feature-cripling make sense?
That's yuge! (about the absent operator) very, very cool too bad it wasn't on the release page I think this would be getting more up votes.
What's the problem with DRM from a technical perspective? Why is it hurting the Web? I can't make the link, is it impossible for mozilla to provide an open-source implementation of the DRM standard?
This actually happened to a law firm that I know of. One of their clients had their account hacked and in the client's mailbox they found emails from the law firm including some outstanding bills payable to the firm. The attacker then spoofed an email from the law firm to the client along the lines of "our bank details have changed to xxx please transfer your outstanding bill by [date]". The client didn't realise anything was wrong until the law firm chased him for the bill by which time the account the attacker had used was closed and the money moved offshore.
At least he clearly explained the problem (or really phenomenon), so anyone can understand it.
It would be great to see such elaborate guidelines to be accompanied with an integration into a linting tool, such as clang-tidy.
In the beginning we were brewing the coffee as espresso since that was an easy way to get a higher strength (≈10% TDS) coffee brewed in low volumes - kind of took the YC mantra "do things that don't scale" to heart. So yes, until Aug 2016 it was basically dehydrated espresso.

Our current setup is quite different and in terms of flavor profile and brew dynamics does represent AeroPress. I'd love to go in more detail but can't disclose more.
So how is it licensed