Ask HN: What's an unsolved problem in your field?
There might be several different categories of problems, from the literal "unsolved" (i.e. mathematics / physics) to systemic (i.e. human resources / advertising).
Some examples that come to mind:
Brand Influencer — "The Algorithm" prevents exposure, sales, etc.
Customer Service — Explaining warranty status, other than "because it's the least we have to do legally".
Mathematician — The length of pi is continually increasing, and there doesn't appear to be an end.
Software Engineering — Thoroughly understanding a codebase in a reasonable amount of time.
Ideally, this would be less of a "here's why X field is bad" thought exercise, and more of a "that's interesting, I wonder if X problem could be solved" thought exercise.
96 comments
[ 2.1 ms ] story [ 172 ms ] threadIt's definitely an appropriate strategy in a lot of cases. But sometimes it just doesn't capture what matters (e.g. the pure counts of how often an issue comes up =/= the severity of the issues).
To have a better sense of how people feel, you could do thematic analysis. But then you sort of lose the counts. Or you can pick and choose the most important situations and start writing scenarios. I guess my point is that content analysis is just one of many strategies, in the same way that boiling potatoes is just one way to prepare them.
Anyways I'm not trying to put down your work, I think the website could help people feel more at ease with qualitative data. I'd be eager to contribute once you're ready for other contributors. Feel free to send me a message and I'll happily write some stuff up.
Huh? How is this an unsolved problem? It's known that pi is an irrational number, so it doesn't have an "end". We can always compute more digits. Or did you mean something different?
Warranties are there for consumer protection. Most people know what they're there for. Even if some people didn't understand it, businesses that treat warranty as "something we legally have to do" probably don't consider the confusion about warranty a problem, because clarifying it would make more people exercise their warranty rights, and hence more costs for them.
Honestly, I don't see how any of the examples, except perhaps the software engineering one, are problems experienced by businesses that they wish to solve. Perhaps I'm greatly misunderstanding.
----
Edit: I think the OP may mean businesses that wish to advertise their warranty protection better explaining to users what that "end date" means, and what the warranty offers them. Which I think can be done fairly easily: look at what Apple does to advertise their warranty protection, or the warranty stickers on every fridge/washing machine you've ever bought.
Although, Apple tries to upsell AppleCare rather than advertise their legally mandated "Apple Limited Warranty" and consumer law warranties.
Especially when it's an issue a customer didn't directly cause (i.e. spontaneous part failure).
Write his or her if you want to be PC.
Otherse you are right
From your wikipedia article-
> If you ask experts at medical centers how often a child is born so noticeably atypical in terms of genitalia that a specialist in sex differentiation is called in, the number comes out to about 1 in 1500 to 1 in 2000 births [0.07–0.05%]. But a lot more people than that are born with subtler forms of sex anatomy variations, some of which won't show up until later in life.[132]
There are some percentage of people who aren't overwhelmingly male or female, and it's important to consider them with our speech, but I don't think 1-2% is a fair representation.
I imagine we would agree about the importance of respectful social interaction with those who don't fit within gender norms. I'm probably on your side here, but it's important to have these discussions using good facts.
Consider:
They asked their teacher if their homework was due on Friday.
vs.
He or she asked his or her teacher if his or her homework was due on Friday.
https://dictionary.cambridge.org/dictionary/english/their
https://www.merriam-webster.com/dictionary/their
https://en.wikipedia.org/wiki/They#Singular
I'd love to say I meant something different, but I simply blanked on pi being irrational.
In general, I guess the search space of all algorithms that might or might not solve a problem is simply extremely huge, so you'd need some good heuristics to find an interesting algorithm.
I can't think of any reason why there would be a theoretical limit on this, but I'm no expert in this.
See also: https://www.quora.com/Engineering-Management/Why-are-softwar...
If you're building something that nobody has ever made before, you've got unknown unknowns, and your best bet is intuition, which is inevitably going to miss the mark a bit.
Just kidding. The problem with estimates in SwEng is complicated. The main problem is: every system is different from another.
Anything that's moderately complex will have a variable production time because the process keeps getting improved.
Now, you're not building 10 systems of the same type. Maybe if what you did all day was building, let's say, a blog with RoR you would be able to time it to the minute (but then again, that's not how software works, and once you built it once, it's just a matter of copying files).
In traditional "factories" the design takes some time, then putting together the production line, tools, then the production.
In SW, "real" design and production go together, and "paper sw design" is fragile.
"Just use Anaconda/pipenv/the-Python-installer/Docker/etc" isn't a great answer, because they probably tried one of those six months ago, got into a weird state and can't remember what it did or where it put things.
Obligatory XKCD: https://xkcd.com/1987/
Some terminal use will be needed, but it shouldn't amount to more than running "python3 game.py".
I think Rust excels here with:
And cargo is great to work with. Go seems to have similar problems from my experience.[1] https://www.edx.org/bio/eric-camplin
Also probably a lot of articles on privacy law across the world, available free. For sales tax/VAT around the world, for example, avalara.com has comprehensive information and monthly newsletters for free.
Generally, you can't go wrong by just doing the right thing. GDPR is nothing excessive. Businesses that weren't being awful before GDPR are probably in the clear after GDPR too; they just need to update their privacy policies.
Not to mention: if you can't afford a consultant, you probably aren't large enough to be targeted by the regulators on tiny bits either. If you're acting in good faith, at least the European regulators will cut you a break and just tell you what to improve, without penalty, if you're ever flagged.
Chemistry/materials science: room-temperature superconductivity is probably the big one. There are a whole host of problems in the energy space which would benefit from improvement; while "electricity+CO2+water => fuel" is feasible at the moment it's uneconomic. Can it be done at close to the theoretical minimum energy input in a plant that's scalable and cheap to build?
IC design: is continually solving previously unsolved problems like EUV lithography, but has struggled for years with trying to go "3D" to overcome density issues. Also, is photonic computing feasible and would it achieve lower energy usage?
Considering fuel => electricity+CO2+water is financially viable today, the reverse can never be financially viable unless the prices of the inputs and outputs shift quite a bit...
Most notably of the share of CO2 in each, which aims to be drastically different.
Unless you include the price of obtaining fuel in that transformation arrow, but then the observation boils down to if extracting fuel is cheaper than synthesizing it then synthesizing it isn't financially viable.
The US navy also has a use for this: at-sea refuelling of planes and other ships from the spare power from the nuclear aircraft carrier.
These Kaggle kernels contain interesting feature engineering and tuning strategies https://www.kaggle.com/c/home-credit-default-risk.
This is nice if you have a single feature that rank-orders well and you would like to calibrate https://www.chrisstucchio.com/blog/2020/isotonic_python_pack...
As long as you have collected data on outcomes that contains more than 100 defaults, with covariates that would allow an informed expert to distinguish between higher and lower risk transactions, it's often possible to be more accurate than an informed expert on this problem.
Every solution I've tried is either too narrow (e.g. works on one table or kind of data only), too broad (too much boilerplate), hard to plug into existing data without massive ETL (SAP, Oracle APEX..) or cloud-based apps which are fine for a mom and pop store but basically useless for scenarios with millions of entries.
Code has been written tens of thousands of times to take data from a webform, put it in a database, and display it on a webpage.
It's about time someone could just put that in a standard, simple, easy to use, yet extensive, library or service.
Simple things like defining a field on the frontend, in the server API, in the data model, and again in the database schema should be a thing of the past.
And there's also MVC platforms that auto generate a lot of code. In ASP.NET MVC (and many other platforms) you can just define the data fields and it will generate views, models, controllers and DB scripts automatically.
Which is well and good until you have to process business logic, at which point you need a developer.
Definitely an interesting problem to solve!
You can have something highly customizable (e.g. write a web application in some common language), or you can try to create some out-of-the-box solution that works great for certain apps but quickly becomes a mess when you try to go beyond it.
The core problem is there's a lot of complexity that's not always obvious and it has to be dealt with somehow.
For your own example : orders, customers and products. How would you generate a UI that matches design decisions of your product? Without specifying super detailed rules, in which case you could write it yourself? What am I missing?
And, really, if it doesn't pay off for the few that try it, why should the rest use it?
1Password is ~30$ a year, and yet there's no way to convince her of paying for it. This is a person that's employed full time and that otherwise spends unreasonable amounts of money on hoarding clothing she's not even wearing so it's not like money is an issue.
I'm not saying some ways of teaching aren't preferable to others -- obviously, lectures and hands on teaching is better than just throwing high school students a Dennis Ritchie book and telling them to come back in a year. Just that there's no "one size fits all" answer. (Unless I misunderstand what you're asking.)
I wonder what the impact on uptake would be if the focus was shifted towards CS as a venue for building things and being creative and away from lines of monowidth code and indecipherable errors. More to the point, I wonder how this might be done.
This is our version of P=NP, and similarly, there's a $1M prize for finding a solution.
https://en.m.wikipedia.org/wiki/Navier–Stokes_existence_and_...
i.e. with H as Heaviside operator, T the threshold, and * the convolution operator, prove that the following can hold for some kernels A,B,C and signal D:
A * H[B * D-T] = C*D
Once you have two kernels (no thresholding), combining them is fairly straightforward, I think (assuming no singularities). However, I primarily work with straight convolutions for signal processing, not thresholded convolutions, so maybe I am missing something. If so, I'd be happy to learn more!
Combining two kernels is straightforward indeed. You just convolve them together. This is possible because convolution is commutative.
The problem is when the thresholding operation is introduced. This makes the whole thing nonlinear. So far, the best way to calculate it (now I'm talking about 2D convolution) get a derivative form out of the kernel in order to apply Kelvin-Stokes theorem by tracing along the contour of the thresholded convolution.
[1] https://math.stackexchange.com/questions/1054165/convolution...
Also, having some agreement on code scanning. Every time security settles on a code scanning tool, engineering gets a million findings. This results in arguing about whether potential risks are actually vulnerabilities rather than improving security.
* Professional Software Developer Certification. Software developers do not have an industry recognized certification or accreditation program. Every other professional industry has this. Truck drives have this. Here are some specialized subcategories.
* Heat Energy as Electricity. We waste and expend so much energy in the form of heat that could, if captured and stored, be converted to electricity.* Energy Efficient Hydrogen Capture from Water. Currently it takes more energy the shatter a water molecule than you would gain from burning the resulting hydrogen. Liquefied hydrogen is a wonder fuel whose energy efficient combustion yields water as its waste product and could power spacecraft deep in space.
* Obesity. Obesity is caused by a combination of 3 things: insufficient exercise, preference for carbs over fats as the primary energy source, and unhealthy fat sources. The third one can be solved with a combination of science, agriculture, and economics.
* Mental Health Therapy. There are a tremendous number of people who need mental healthy medicine but never get it (for many reasons). By tremendous I mean an utterly astonishingly significant percentage of the population. Those who do get medicine are often prescribed drugs instead of therapy when therapy is generally more effective and doesn't have negative side effects. Also the sheer quantity of mental health medications is detectable in the public water supply.
* Rapid Oil Metabolism. Oil is a necessary part of the modern economy. Crude oil is refined to make plastics, and so it will be with us well into the future. Oil spills are nasty though. It would be nice if there were micro-organisms that could consume oil so that oil pools could be removed organically in months instead of decades/centuries.
* Space Entry. We are currently limited to using rockets to enter space (or exit Earth). That is horribly fuel inefficient. Any alternative would most certainly be cleaner and more energy efficient, but there aren't alternatives yet.
Contrarily the bed rock of most web technology standards were solidified 1998-2001 and yet most web developers have no idea how these things work without a mountain of abstraction to do it for them. This indicates speed of change isn't a considerable barrier in that example.