Live data from Hacker News

Ask HN: What is the single top-priority software engineering problem?

news.ycombinator.com

311–320 of 364 posts

Re: Ask HN: What is the single top-priority software engineering problem?

#311
post #306

A piece of technology that seems to be missing is a global decentralised anonymous identity and trust framework. It probably requires a leap of engineering comparable to the invention of the blockchain (although I don't think that a blockchain is necessarily the model to follow here, since the data should be encrypted). Every website and app and network service seems to be reinventing the wheel here, and end up creat…

Trust cannot be decentralized. The whole idea of blockchain/Bitcoin[1] was eliminating trust from a process that would have required trust (keeping track of a ledger of funds). A system that provides trust in a trustless way is as paradoxical as it sounds. However you implement it, what some humans say have to serve as inputs to the system, and in reality that's who you're trusting. The best you can do is have just o…

I completely agree with what you said, however I think there would be some very good value in simply keeping track of online relationships. I think the "web of trust" is actually very useful, if misnamed. Let's say I go to my online bank. I have a problem and I want to talk to the manager. It would be really great if I could have an easy way of determining if the person who is speaking to me is actually associated with the website I'm thinking of. I don't need to know their name. I don't need to know if they have a shady past or not. I just need to know that the somebody the website is going to let me talk to is the same somebody I'm talking to. Right now you can kind of jury rig something, but it's really difficult, error prone and easy to game socially. I work in the travel industry at the moment and even something as simple as being able to flag that a former salesperson no longer works for the company would be huge.

Re: Ask HN: What is the single top-priority software engineering problem?

#312
post #159

Earlier quoted context omitted.

I was talking about this with a friend the other day. I don't know about the technical feasibility (RE sybil attack[0]), but if it were possible, it would have a massive impact on the web. The current state of the art (in terms of new user signup) is using phone numbers as representing unique "trustable" people, which is kind of absurd. This reminds me of how social security numbers weren't originally intended to be…

Just post a bond that is forfeited if you engage in verifiable abuse, the proceeds of which are used to compensate the victims (if applicable). Use pseudonymous identity to link any number of site-specific "identities" to that same initial posting. Real-name identity can then be optional (although some sites may still insist on it), but users in good standing are protected from "sybil" attacks because each entirely-n…

This doesn't solve the problem of identity. You still would need some way of differentiating the accounts with the bond, or else I can just sybil the system by having a lot of money and a really good way of impersonating people.

Re: Ask HN: What is the single top-priority software engineering problem?

#313
post #159

A piece of technology that seems to be missing is a global decentralised anonymous identity and trust framework. It probably requires a leap of engineering comparable to the invention of the blockchain (although I don't think that a blockchain is necessarily the model to follow here, since the data should be encrypted). Every website and app and network service seems to be reinventing the wheel here, and end up creat…

I was talking about this with a friend the other day. I don't know about the technical feasibility (RE sybil attack[0]), but if it were possible, it would have a massive impact on the web. The current state of the art (in terms of new user signup) is using phone numbers as representing unique "trustable" people, which is kind of absurd. This reminds me of how social security numbers weren't originally intended to be…

Hot take, but the only real way to solve this identity problem is to take people's DNA. The only attack on that is to literally synthesize fake DNA/fake hair/fake saliva. Even then you can prompt randomly for DNA the way Twitter randomly prompts for phone number verification. Or ask the user for a selfie and spot inconsistencies in the mapping from DNA to face.

It's scary to let internet companies have your actual DNA (though that didn't stop 23andme customers), so there could be an layer in between (a nonprofit? machine with a hardware security module?) that does the DNA sequencing and returns a digital signature to authenticate you.

The obvious downside is that it would work too well. Banning becomes much more serious of a thing when it's lifelong and potentially could affect your descendants. I hope I'm not giving anyone any ideas because this is horrible.

Re: Ask HN: What is the single top-priority software engineering problem?

#314
post #55

Development environments. The amount of time and hassle I've seen lost to getting a working development environment up and running is incredible. Every time I talk to someone who's learning to program I tell them: "Setting up your development environment will be a nightmare. I have been doing this for twenty years and it's STILL a nightmare for me every time I do it. You are not alone." Docker is reasonably good here…

My development environment is

    pacman -S qtcreator clang qt5 cmake ninja git hotspot heaptrack 
I can start pissing apps 10 minutes after a clean install of my system... what do you guys do that make it so hard ?!

Re: Ask HN: What is the single top-priority software engineering problem?

#315
The silver bullet programming language + environment. Fast and zero-cost-abstraction as c++, safe as Rust, productive as Python, async as Go, runs everywhere like JS, live upgrades like Erlang, development environment as C#, designed for remote debugging, near instant recompilation and testing, universal dependency manager with sandboxing of shared libraries and scm integration.

There is still room for Domain Specific languages like sql, html and such but for imperative programming there are way too many options all filling almost the same need with just slight variation. Even with the rise of all types of VMs and cross compilers we are still porting mountains of code to another language just because the execution environment was slightly different. The gap between embedded and web is also too big, for embedded you are stuck with prehistoric c++ with dangerous syntax, hour-long build times and days of figuring out how to correctly compile and link that shared library. vs web where your only options are dynamic languages where both safety, predictability and performance are a joke. I also realize safety and performance vs productivity often contradicts each other but not as much as often argued, there has to be a better middle ground than what we are stuck with today.

In isolation, this should be an achievable task, especially if dropping any legacy compatibility. What might be difficult is is people want legacy compatibility and proven in use, so adaptation-rate will turn this into "there are now 15 competing standards" and a "peace on earth"-type problem.

Re: Ask HN: What is the single top-priority software engineering problem?

#316
Documentation!

I am willing to go out on a limb and say that as much as 25% of software engineering time worldwide is wasted due to poor documentation.

It's an asymmetric problem too. If someone benevolently funds a team of engineers for a couple of months to write great docs (with detailed examples) for top 500 libraries, frameworks, APIs. They could increase global productivity of software engineers by %25 percent.

Re: Ask HN: What is the single top-priority software engineering problem?

#317
The problem of Availability vs. Accessibility. In our systems, some functionality is often available but not accessible for usage in another context. It causes a huge loss of money and wastes human work. Mobile platforms are significantly touched by it. You may have, for example, a perfect application for spell checking but you cannot use it directly while doing your spreadsheet. Generally, the user interface needs to be direct and modeless. Applications are, of course, giant modes.

Re: Ask HN: What is the single top-priority software engineering problem?

#319
post #219

A constantly cycling proliferation of different languages, frameworks, libraries, etc. that all do the same things in a different way and are most often mutually incompatible with each other and have entirely different ecosystems with their own comparative advantages but also major pitfalls. This causes tech workers’ investment in skills to get more out of shallow knowledge and trivia than on deeper concepts, creates…

Learning new skills is easy enough, what kills me is the enormous manpower invested in churning working code. Easily 30% of my company's total engineering effort is just treading water, migrating from a deprecated platform to another one that will be deprecated by the time the migration is complete. Typically because the original team's standard 18-month tenure has elapsed and the new guy was under-leveled at hiring…

It doesn't matter if it is easy. If you have to waste time because the language-of-the-week came, which multiplies for N number of devs, is still a huge waste of time.

Re: Ask HN: What is the single top-priority software engineering problem?

#320
post #276
post #272

Earlier quoted context omitted.

Can you give some specific examples of this problem? Frontend developer curious what kind of trends/solutions you mean.

Here's my take on it from a few months ago: ---- ... Claim: Most sites are mostly static content. For example, AirBNB or Grubhub. Those sites could be way faster than they are now if they were architected differently. Only when you check out do you need anything resembling an “app”. The browsing and searching is better done with a “document” model IMO. Ditto for YouTube... I think it used to be more a document model,…

Could you expand on this? I’m interested in the opinion
Post reply on HN