skysight-inc/HackerNews huggingface dataset:
This is a good question. I'm inclined to say that the value proposition for testing is better than for verification. First of all, if your unit is hard to test, it is likely to cause other issues, but probably more importantly, testing finds a lot more bugs per unit effort than formal verification. That last point is based exclusively on my intuition and it could well be wrong--it would be good to hear from people with more experience with both testing and formal verification.

Also, now that I think about it, the value proposition isn't fixed for all applications. Testing is the better value proposition if you need to catch the easiest 95% of your bugs (arbitrary number for example purposes), but if you need to catch 99.999% of your bugs, the testing effort may likely be much greater than the formal verification effort. That said, open source projects like Rust get tons of testing for free by virtue of being very, very popular, so I'm not sure how to weigh one against the other.
How does ReasonML/Bucklescript stack up against F#/Fable.
Is the only difference that F# has the .NET environment?
The shitty code base existed before they got there. Dropping 'new, refactored code base' onto your managers lap can go a couple of ways. Doing it quietly is a recipe for disaster because then you have no support. Your manager could deny a rewrite altogether. Then what?

If we had reasonable social safety nets, I would say quickly that he is irresponsible staying after finding out about the code base. But the problem is that employers upsell the stuff you're going to be working on. They don't tell you upfront that it's shit and you're the one to rewrite it. If you ask them about the quality of their code, they'd likely respond with "it has some painful points here and there" or some other non-answer.

If they hired OP to rewrite it, then yes, they're not fulfilling their responsibilities. But it sounds like a place that just shovels JIRA issues at you and tells you to go fix them.

An employer-employee relationship does not necessarily imply "I must do everything in my power to make sure this product is the best that it can be within my 40hrs/week". If you are leadership or a product owner, you have that burden, but not necessarily a LOB developer position. If they gave him that responsibility, they should immediately ask for a significant raise, because they've changed virtually the entire job which they were hired for.
Legit question here, not snark. How could this possibly be better than something like an algae based biofuel? Have self-replicating, solar-powered machines do the CO2 extraction and reduction work on their highly specialized membranes. Then use the product? I get that this sounds fancy, but I'd be surprised if they can be even close to energy neutral pulling power from the grid to reduce the CO2 into hydrocarbons. At best, their plan just externalizes the carbon cost to the generator infrastructure (which could be renewable, sure, but again: plants are solar-powered as well).
Huh, that’s also a pretty major logistical simplification.
It's not being lazy, it's being paid for A and working on B, totally different thing.

If I hire a freelancer to work on project A and charges me X$/h, but instead work on project B and still charge me for that time, it's illegal. Of course, illegal is a fuzzy term, it really depends of how the contract is crafted and, more importantly, how much one would be willing to take legal action against the freelancer (which will most likely turns out more expensive than just letting it go).

I'm no lawyer, but pretty sure it's not written in standard contracts "Employees can work on whatever he/she wants, get to keep all the IP of it, pending that employee doesn't get caught."
Amazon Reports Biggest Quarterly Profit of $1.9B
What Is IOTA?
Amazon (and Walmart before them) do a lot to create this situation. Walmart notoriously kills local businesses when they move into a town -- not by targeting them directly but by competing them out of business. If the alternative employment is gone then there's a lack of better opportunities.

This is not to say that we should rely on the benevolence of corporations -- any more than we did to get 40 hours weeks, standards for workplace safety, or food that doesn't make us sick.

However a good way of "fixing the system" will have much more impact on Walmart and Amazon than on neighborhood stores. So to a large extent we are indeed going to be fixing a small number of problem companies.
Sure, that's on par with base $25K Camaros/Mustangs. It's not on par with the sort of Camaro/Mustang one can procure for ~$50k or the same price as a Model 3 that isn't barebones (and I just tried to config one on Tesla's web site and alas you can't so I can't give an exact number here).

For ~$50K, ICE sports cars are sub 4 seconds. That said, it is on par with low-end sport coupes so I see some of the appeal. It's just not appealing to me.
You would be on a better ethical and legal footing if you quit your job and switched to contracting. You might possibly even be able to contract with your current employer. Of course, the downside of contracting is that you have to spend a good fraction of your time finding and negotiating work.
Some of the arguments the author mentions are not really good arguments. Basically it boils down to how much you care about the user experience. I designed and developed a SPA for a large real-estate portal in <6 months. I think we've nailed all of the points the author mentioned:

- Initial request is rendered server-side, so TTI is extremely low. Even if the JS hasn't kicked in, the website is already usable.

- Back button works perfectly fine. We use the HTML5 `history.pushState` method to add new entries to the history stack.

- Links are always rendered as anchor tags. So even if the onClick handler fails or the JS crashed, the link will still work.

- Compress the hell out of the bundle. Clocking in at 190KB compressed. (Edit: should do something about this, should be <100KB)

Basically, we have most of the advantages of rendering "static" pages, yet also get all of the advantages of an SPA. We can do pre-loading in search results for example. If you click a link in search results, we immediately render the page and use the data from the search result to show a basic page and then slowly enhance it.

This powers a large real-estate website that receives hundreds of thousands of visits a week. For this kind of business, a lot of stuff is important to get right. SEO related optimisations are extremely important. Hence, we server-side render everything to make sure the GoogleBot can read it all. The same applies to links. We keep our bundle size as small as possible to keep things speedy.

Oh, and I personally got a kick out of spending a weekend to make the website function perfectly well without JS.
I empathize with your position very much, but I think you should reconsider your attitude of, "I don't enjoy my job (but who does)". I have worked on small teams building software that, even tho it's a job, we all really care about and learn together. I agree with those who suggested that you should find a new job OR quit and focus on your side-businesses full time.

Thinking more positively about the idea that a job can be fun will also work in your favour if your side businesses take off and you need to start hiring. You want to know how to spot and get-along with developers who actually care lest you end up with a team of people who will do to you what you are doing to your current employer.
That looks pretty interesting. Can you add template suggestions? That could be an interesting extension of using a custom template to standardize an organizations presentations.
Only in that RNA, as an intermediate between the relatively immutable DNA-based source code, and the running protein programs acts as a nice intermediate with which to compress, alter, and otherwise regulate how the code actually runs. RNA has traditionally been tricky to study - it's very fragile. And so our current studies are constantly revealing really cool new capabilities (CRISPR is also an RNA-interacting protein).

In the octopus' case, the RNA is being altered post-compilation, in ways that are somehow critical to their neural development. And that kind of process is unusual, and seems to be one that the octopus really depends on for its 'smarts' - it's not just an evolutionary side-project.

While in the OP's case, the protein likely comes from an HIV-like infection that we've repurposed to help transmit compressed, ready-to-run code without having to transmit the large and short-lived binaries (proteins).
The extra time I have is usually 15 or so minutes before starting at work. Sometimes more than that, depending on how smooth traffic was getting to work. What I've been doing lately is to do programming. On my phone.

I have a secret gist at Github. Enable desktop mode. Resize the screen just right. It allows me to get a little bit done here and there, and it helps that what I'm working on is pretty simple. Update the gist when I'm done. Later, at home, I can pull the gist, fix it up, make it work, and recommit.

It's painful though. My phone's software keyboard is horrible for doing development work. But it works.
Depends how Googles network is set up and how fast and over provisioned it is - how much budget you have for networking also comes into it (that's the power budget btw)

Brad Hedlund has some interesting articles on the challenges

http://bradhedlund.com/2011/11/05/hadoop-network-design-chal...
> Either you know it mostly and this is boring, or you don't know it and you're in for a super-steep learning curve

Or you sort-of-know-but-have-half-forgotten most of it and this is a nice refresher with a few interesting new bits thrown in?
I assume you've never been in an enterprise environment. There are surely good ones, but a common theme is the following:

People will outsource a lot of things. The people outsourcing are not generally knowledgeable people but managers. They buy crappy software against the advice of their own engineers and then ask the engineers to maintain it.

What's worse is that a lot of young engineers will learn code from that crap. I have seen contractors in 2014 laughing at the enterprise for using something as silly as SVN or git. They sent a Whitepaper saying that file locking is the only right way of version control. Do you know how hard it is to correct a bad managers perception? I did, but I also lost my job.

They also had if statements that were 2000 columns wide. Only reason I knew what because I installed a trial version of resharper and ran their code through it.

You might think it's uncommon, but I've seen it in all sorts of places. The current place where it took me 2 years to convince senior management to buy resharper. They do the things I advise them to do, but it takes a shitload of convincing. An EE in the company just died of a heart attack. There's a massive load of cognitive dissonance in there, he tried to fix all sorts of stuff(which is good), but he never got around learning to objectively not care about it(i.e. if they screw up in the end it's their responsibility not yours, you advise them and they actively chose not to listen).

But putting the blame on those people, is at the very least extremely disingenuous.

The only fair question you can ask in this case is, why not just leave. For me it has strategic value, I generally advise people against doing so though.
Sure, but 0.4% is still surprisingly high to me.

This post is about the UK, which I would consider to be part of the "developed" world.
I think 400,000 model 3 reservation holders paying $1,000 site unseen for a car they may not get for years demonstrates some demand.
if it is a healthy company they will figure you out and throw you away once it becomes convenient.

if it is a bad company, you might get away with that, but you will miss on a lot of learnigs, earnings and networking if you stay there.

in both cases, i believe you should make a change.

personally, i would be too compassionate to the company’s success, and too paranoid on improving my own job security and salary to ever think about doing what you do. i am not judging though.
Craft will always be lost.

You could argue that the art of cave painting or tablet engraving was lost to make way for manuscripts written on papyrus and that was lost to make way for the printing press and so on.

Losing craft for efficiency will happen as civilizations advance, but one thing to keep in mind is the amount of craft that went into sending an email. It can be at the level of writing an email server with a high uptime and a client that reads them reliably. It can go down to bits and byte. And that doesn’t account for the crafting of the hardware that those software run on or the effort that went into the infrastructure to carry those signals.

The trend is that each individual that has an idea to share has to put less effort into sharing their own idea, but that doesn’t mean that what we built no longer requires craft. The tragedy is that we don’t see and appreciate the monumental craft that went into making email work in the first place. I’d argue that whole process requires more craft, but the sender and recipient of the emails don’t have to understand it.

EDIT: grammar
Show HN: PowerFour, a yummy React Connect-4 game
He made good money for several years before the cheating was exposed. A good investment.
I think we've had enough ads about how books make you smart and tv makes you stupid to know that whatever is cool and enjoyable is more likely to win in that crowd, no matter what well meaning parents and teachers and PSAs try to tell them.
GE is currently unraveling because they hid their losses using creative accounting for 20+ years. Nobody will go to prison for this.

If you're expecting much in the way of social responsibility from a large corporation I think you're just being naive. People want to further their own individual careers and little else.
amen :)
Microsoft is considering adding Python support to excel:

https://m.slashdot.org/story/334927
No you're not the only person that's gone through this. If you work at a 9-5 and you're not doing this or focused on your friends / family / hobby or creative projects then maybe you're wasting the valuable little time you have on this earth. Big corporations exist precisely because they can afford the large inefficiencies that come from having a lot of people not really care much.

Now as far as quitting your job, that depends on how much savings you have, your historical ability to deal with extreme chaos, stress and uncertainty, and how much you realistically believe you can grow the business. Some business are great part time but difficult to scale.

Don't overthink it and just do what feels right. Remember that doing the wrong thing can end up being the right thing 10 years down the line.
I know it's a bit gross. I made this on stream and just wanted to share :)
This is a neat R hack; unfortunately, it is indeed a hack, which makes it tricky for conventional use cases.

The tensorflow and keras R packages are interesting and have similar parity to the Python APIs (since the packages translate the commands to Python), but using them requires a more functional approach than working with R/tidyverse. And hopefully you don’t hit a bug, as the extra layer makes debugging more difficult. (In contrast, sparklyr, an R interface to Spark, fits well into a dplyr ETL, although that’s more due to the nature of Spark DataFrames)

The tricks used in the explainer slides don’t take much advantage of the R ecosystem, unfortunately. (And I say that as someone who is very vested in the R ecosystem, but still switch to Python for anything deep learning)
Slightly off topic, but here's a sweet tune named "Perpetuum Mobile" by the Penguin Cafe Orchestra (what I heard immediatley in my head while reading your comment).

https://www.youtube.com/watch?v=6E3znZoFnN8
They're paying you for the amount of the work done and if they're OK with the progress I don't see a problem. Perhaps you're just more productive than the others who work harder?
If you've been working in California for California employers, you've probably seen non-competes that prevent working for a competitor concurrently with that employer. I believe those are enforceable.

What is often presented in other states is an agreement to not work for competitors that extends for maybe 6 months to 2 years after employment; that's not generally enforceable in California, except with some specific exceptions, generally around when a business owner sells their business.

This has been the case for many years, through judicial review as well as legislation.
Ooh, good catch! For others' reference, here's the previous discussion: https://news.ycombinator.com/item?id=14100061
Did I say "to everything"? Or did I say to list articles?
> But it certainly can change the condition in the assertion so that it won't fire on overflow.

Once again, why would a compiler do that? To satisfy the Rust community's desire to spread FUD throughout the C community? (sorry to be so blunt, but im really scratching my head here)

A more logical thought process here is that signed operations aren't uniform across architectures and are sometimes emulated, leading to UB for certain edge cases, like overflow. Its more practical to believe that a future C standard will fix this loophole rather than think compilers will exploit this and punish their own community.

Very not impressed with this thread.
This is purely personal experience based on what my university colleagues tell me, but I think the solidarity gets surprisingly diluted as money is thrown in their faces. Tech aside, money is really the game changer in getting people to cave on their personal values. As long as these companies have huge salaries to throw around, people will take it, even if it means biting their tongue and closing their minds. It's depressingly ironic how many students will vocalize their anti-Facebook or anti-Google sentiments, then turn around and interview with those same companies because who doesn't want to make $200k+ with cushiony perks after living off fast food and dealing with college debt. Then if they leave after 2-3 years, the next batch of hired help comes in to run the machine, and it's just rinse and repeat for Facebook and Google.
The guidelines ask:

> "Throwaway accounts are ok for sensitive information, but please don't create them routinely. On HN, users should have an identity that others can relate to."

https://news.ycombinator.com/newsguidelines.html

I understand you don't take HN particularly seriously, but would you at least take the guidelines into account? If you're not willing to be a part of the community, would you at least respect it and not create throwaways for comments like this?
Intel says that:

> Micro-fusion fuses multiple micro-ops from the same instruction into a single complex micro-op.

And that:

> Macro-fusion merges two instructions to a single micro-op.

The point is that the three instruction format and the single instruction format you would think would decode both to three micro-ops (or something like that), but instead the single instruction format can use a single fused micro op. That's why it's better to write as a single instruction.

And your reference backs this up - it talks about single instructions in this section on micro-op fusion.

You may be confusing it with macro-fusion, which is about fusing multiple logical instructions, which is discussed in the next section in that Agner document, but isn't discussed in this blog.

> This article is instead about whether a particular operation is better written as a single-instruction

Yes - it's better to write as a single-instruction, because then micro-op fusion applies. Macro-op fusion isn't as strong, as doesn't apply to the three logical instructions.
I think the allure of working at Google/FB is too great. Facebook pays insane amounts to new grads. Then there is the google recognition, where simply having google on your CV seems to open every door around. Startups advertise their companies as being founded by “googlers” more than they actually try to sell their business ideas half the time. The brand recognition is powerful.
The world in which everyone solely does the minimum of what they are explicitly asked to do would be a unkind, bleak, unproductive, and dysfunctional one.

I am extremely grateful that not everyone espouses this philosophy.
Favorite quote:

> I have been working on a startup on the side (and on the clock, because fuck it, idgaf anymore)
If the server requires me to send it the md5 of my password (for example), it still has to store something to validate the password, which can then be cracked.
It's understandable why Microsoft would be slow-moving to incorporate new languages into Excel; what is popular now could change (eg if you add Python, do you also do R?), and restricting the number of languages available means people in an office can more easily work with each other.

But there has been progress!

- Excel already has a native JavaScript API. [1]

- They are seeking feedback on implementing Python as an Excel scripting language. [2]

- It's a little esoteric / proprietary, but the language backing Excel's "Get & Transform" feature, M, is a noticeable jump in power. [3]

Nevertheless, it's still surprising there hasn't been more innovation in the spreadsheet space given Excel's shortcomings. So I'm working on Mesh, a spreadsheet that feels more like a 'real' programming language (because it's just JavaScript). [4]

[1] https://www.microsoft.com/en-us/garage/profiles/script-lab/

[2] https://news.ycombinator.com/item?id=15927132

[3] See, eg, https://powerpivotpro.com/2016/02/reviewlist-generate-create...

[4] https://github.com/chrispsn/mesh
Or more likely, the subject of harassment.
Coming up with a closed-form solution would be beyond my mathematical abilities at this point, having not done any calculus to speak of in 40 years, but I'll be interested to see if you can.
The secretary you just described is going to ask way more money and has a lot more employment options. Why would she/he take a job with zero autonomy, little social status, non-flexible hours and not expect money in exchange?

And once you pay her those money, is it overall saving money?
I would also lavish attention on Apple Pay. Perhaps a logo program? I frequently ask, and hear others ask, "Do you take Apple Pay?" Having to ask burns a lot of the benefit. Then it often works inconsistently. At Whole Foods I sometimes still have to sign (negating benefit). At my local Safeway, payment will fail if you've also scanned your loyalty card.

On that note, perhaps loyalty programs could be integrated. Wallet supports rewards cards but it appears to be an extra step at checkout.
Most people aren't getting equity at all. Of those who get equity, it's meaningless. The lion's share of profits go to ownership or shareholders.
Not the OP, but there's often only so much you can do.

Bad software is often a cultural problem, and I know first hand that you can't just go in and change the culture of a place with the snap of your fingers, especially when you're not in management.

Sometimes you can't get authorization to work on things that would be a "waste of time", even if it means you sit there visibly doing nothing. That's just the way enterprises are sometimes.