Ask HN: If you were better at programming, what program would you write? - acidus
======
neilsimp1
It's rarely me not being _good_ enough that's the problem. If I had more time,
that would allow me to write the programs I'd want to write.

~~~
crypticlizard
Well I'd argue being better night make all the difference. If the set of
possible programs includes ones extremely difficult to program, then are those
programs possible to program given an ordinary developer and sufficient time?
Definitely not imo. Some things only a genius programmer could do. That
programmer could come along and invent a way to do ai using today's commodity
hardware. Without that ingeniousness it's doubtful more time would do the same
for ordinary developers. Do I believe I could do it given enough time? No.
Could some genius somewhere today? Maybe.i wouldn't rule it out, in fact I'm
fascinated by it.

------
twoquestions
As neilsimp1 mentioned, it's not about not being good enough, as that's
fixable with sufficient time.

To answer your question, I'd write a fantasy economic sim game like a sequel
to Patrician III or something, except with wizards and weird races and stuff.
A big bit of the game would be negotiating with customers for custom goods and
services.

Exactly how much money would it cost to for a casting of Bull's Strength
before a mercenary engagement? What are the obligations a wizard has in the
event their town gets attacked? When is the Teleport spell economically viable
vs just taking a boat? How do you negotiate with beings very alien to you?

Classic pet project that I've wanted to do for _years_ , just never had the
time/concentration to do it.

------
natch
I'd find which top python modules have not been ported to python 3 and port
them to python 3, working in descending order of popularity. Anything to end
version hell with python modules and their related installation, dependencies,
documentation, examples, and tutorials.

Sure, it may be possible to get things working smoothly today, but that
doesn't mean that all the areas I mentioned (documentation, etc.) have caught
up. The primary reason they don't catch up is the straggler libraries keep
many teams in a past era.

------
jamesmishra
If I was really really good, I'd advance the state-of-the-art in neural
network-based machine translation, recurrent neural network language models,
neural Turing machines, etc.

Right now, the state-of-the-art is exciting but falls short in some world-
changing areas like question-answering. As much as I want to, though, I have
no idea how to push the field forward, however.

For the other things I want to do, I am probably sufficiently skilled to do,
but I just need the time and motivation.

~~~
crypticlizard
Intelligent answers are hard to come by, that's why I too would write a a
program capable of Spock like question answering facility.

------
mhh__
If I had an infinite amount of time, I would write a much higher level
equivalent of LLVM. Specifically, I would spend time investigating ways to
easily generate code generators from specifications. I'm also very interested
to see how things like theorem provers can be used inside compilers.

If I could be bothered, I would write a really detailed political simulator a
la Democracy but with much more detail and elections.

------
rajeshp1986
I doubt any engineer considers himself not good enough to write any
app/program and is sitting without building it. I feel many people have the
ability to dive and explore and build things once they get a problem to solve.
many of us don't realize the problems itself because they are busy working on
something else. Also, you only realize the problems when you are actively
involved into it. As an example, I have no idea if there is big problem that
could be solved in say Finance industry. Identifying problem is a big hurdle.
Also, many engineers are sitting in echo chamber where they don't get to know
about relevant problems which they can solve.

------
muzani
Some kind of procedurally generated fantasy world, designed around generating
stories.

~~~
3minus1
this sounds really cool. some of my favorite games are essentially sandboxes
(mount & blade, pirates), and I like the idea of taking the sandbox and
building in non-trivial, non-artificial non-deterministic stories.

~~~
muzani
Yeah there are a lot of sandboxes that generate gameplay, but few generate an
actual plot. Rimworld seems to be the closest thing to that but I think they
focus too much on trying to build drama.

When I see the same thing, I think a lot of better stories can emerge - a
lifetime bond between comrades, a romance between a prisoner and the nurse who
comes to heal him, rivalries between factions, a 500 year old cyborg who
questions her humanity. So many stories can emerge.

------
quickthrower2
A Bitcoin trading bot that makes me a tonne of money

~~~
devotedtoneu
I wrote one of these, and it was incredibly successful!

disregarding transaction fees of course, otherwise it was horrible :)

~~~
quickthrower2
Might be ok on btc-e then using those trading tokens I'll maybe get.

------
andreasgonewild
This: [https://github.com/andreas-gone-
wild/snackis](https://github.com/andreas-gone-wild/snackis)

But then I grew tired of waiting and just did it already :)

~~~
gnuarch
Could that be a plugin to Thunderbird?

~~~
andreasgonewild
Would you mind explaining more what that would buy us? Because I can't see it
from here. Snackis uses email as a dumb transport; it doesn't even bother with
headers that much since most content is encrypted; it's quite possible that
other protocols will be added down the line.

------
shakna
The "hard" programs I've come up with over the years very rarely have anything
to do with programming skill.

A content-first web browser (think Reader-Mode for every page), depends on: a)
Learning the differences between the HTTP|HTML|CSS|JS specs, and what browsers
actually implement, and b) heuristically lifting out the content.

b) is a programming problem, not easy to solve well, but there's been a lot of
work in that area to lean on.

a) is a documentation/people problem. Not my area of expertise, but definitely
the harder problem of the two.

------
mattbgates
It's not the type of programming I'd write, but what I'd write it in... I
develop web apps.. which are mobile friendly, but I've yet to really have any
desire to break into the iOS and Android app market.

------
acidus
Related, from 5 years ago:
[https://www.reddit.com/r/linux/comments/mump9/if_you_were_be...](https://www.reddit.com/r/linux/comments/mump9/if_you_were_better_at_programming_what_program/)

------
mars4rp
I would create a DB engine that runs on FPGA, it will translate SQL store
procedures to HDL and run the query on FPGA. It might be stupid, but I am not
a better programmer to know!

------
bobosha
A daemon app that saves my slack messages to gmail or even local text files,
so I can find older messages. I know this is not difficult, but wish I had
some bandwidth to work on this...

~~~
thexa4
A fetchmail cronjob will probably get you pretty far. I use this to backup my
mail.

------
prodboard
I would write an app which offers the best places to visit in any city or town
according to my preferences and likes&dislikes indicated.

------
Artlav
The same, only i would have finished some of them.

------
soulchild37
Probably not write but if I have more knowledge on computer/programming I
would want to understand source code of Linux/Rails.

------
SKYRHO_
If(I){ were better at programming I would write a program that would teach me
how to program better }

------
sova
Distributed blockchain democracy

~~~
kleer001
Excellent, I'm right with you. But, ahhh, I'm afraid that's more of a software
problem than just a program problem.

~~~
sova
You mean lack of computer connectivity for every eligible citizen? or...?

~~~
kleer001
Oh, that's certainly gunna be part of it. And overall too, the human
interfacing part of the program's program. The new laws, if necessary. Support
from lawyers and communities. Etc etc etc...

Personally I think a blockchain based voting system doesn't beat some easier
analog systems. It's pretty, but impractical in the current system. I think...

