Live data from Hacker News

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

news.ycombinator.com

121–130 of 364 posts

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

#121
post #49

Open source implementation of Microsoft Excel, which lets you write macros using Python and has the plotting, scheduling and report sharing functionality of Tableau.

> which lets you write macros using Python

Someone upthread said "nocode", and I think that's more on the money. Most people will never be "programmers" as we understand the term, but they could still benefit from a narrowing of the gap between what Excel can do and what (say) Python can.

An old hobby project of mine[1] had a go at this by letting spreadsheet users write functions in the spreadsheet itself, in exactly the same way they already used the spreadsheet to calculate things. Basically, if you just used the spreadsheet as a calculator, it would automatically define reusable functions out of those calculations. I think something like that would push Excel's power and usability forward for your average person, because it wouldn't make them reliant on programmers to implement the things they want.

1: http://6gu.nz

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

#123

Earlier quoted context omitted.

I envisioned something similar around the time of the 2nd gen touch phones: just plonk your phone into a dock with keyboard, mouse and monitor. I realize now it’ll probably never happen, since the companies making the phones are the same companies that make computers.

Huawei P20 and P30 series, Mate 20 and 30 series do this. Plug a USB-C cable to an external monitor, Bluetooth mouse and keyboard and you have a desktop like experience, with apps opening in Windows like you'd expect on a desktop. This includes a taskbar, pinned apps, resizable windows and more. No extra hardware needed.

Thanks for the info, I’ve obviously not been following this close enough!

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

#125
Documentation.

Far too often when I want to learn something new I either find there is not much documentation or find that there is a large mass of documentation that probably has everything I need but is so disorganized that I can't figure out how to approach it.

Another documentation problem, especially with open source projects, is that development and documentation are often loosely coupled, if at all. The people doing documentation usually don't have the resources to keep up with development, and so even if there is good well organized comprehensive documentation it is usually obsolete.

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

#126
post #12

I seem to spend far more time on the deployment of code than I ever used to, more time writing CloudFormation and ansible than the Java backend, python lambdas and static UI that it deploys. That seems nuts to me. I'm not sure how you fix it without being Amazon/Google. People moan about Terraform too before that gets mentioned.

There is always heroku until your app is actually popular. Fake it till you make it.

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

#127
post #79
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…

repl.it is a nice take on this problem: https://repl.it/ I was impressed by the low latency (at least as of a few months ago). If you make a web app right, it can be faster than a resource-hogging local IDE! I don't use it myself every day because I've already been using vim/screen/bash for 15+ years. Those are my lightweight REPLs. But if I were advising someone to code, and they wanted to skip the dev env, I would…

Thanks so much for the mention. It's indeed a lot of work, but we've done so much with such a small team and it's only accelerating as we layer all of our solutions on top of each other. We're solving one problem at a time with focus on patterns and abstractions that makes it easily extensible and could support virtually any language.

With the Universal Package Manager (https://github.com/replit/upm) we're trying to encode the best practices in package management behind a single easy-to-use interface. One of the most fun features is that you can `import` or `require` a package and we'll just guess what you want to do, install the dependencies for you, generate a spec and lock file.

With prybar (https://github.com/replit/prybar) we're trying to create a universal interactive programming experience that behaves roughly the same for every language.

And, to be open-sourced soon, our window-tiling manager and workspace (https://repl.it/blog/ide), we're trying to build a framework that makes it so easy to build complex, plugin-based environments, such as IDEs, very easy to build.

We also leverage a lot of awesome open-source projects and standards, like the Language Server Protocol by VSCode/Microsoft, that abstract over language features and makes it easy to provide an amazing experience across languages.

Edit: if it's been a few months since you tried Repl.it, give it another try, we've made a lot of progress since then. Multiplayer is now out of beta, we have Git integration, and we've done a lot to make it faster and more reliable.

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

#128
UI development is still very clunky on any desktop OS other than windows. (and I have not done UI on windows in a decade, it used to be pretty good back in the day). iOS is good, I mean like you want to create a utility to do a job for yourself, not a big project.

And I know there are lots of html / web based things you can run on desktop but they are even more complex, for me at least.

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

#129
post #10

A computer and OS that boots in 100ms. Every user action gives a response in 10ms.

My newest laptop is closer to that than any computer I’ve ever had since 1984. Mostly because of SSDs I guess, but Windows boots in a few seconds. Usually takes longer to shutdown than to boot.

10ms response is a bit on the fast side. Aside from pros doing sports or music, we (humans) don’t register most kinds responses that fast. Plus a 60hz display is 16ms anyway. These days browsers, editors, and OSes really do usually try to meet this goal for the most common workflows, though there are plenty of demonstrable exceptions. It’s a good goal, I agree with it, but maybe 100ms would be a more reasonable worst-case response time?

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

#130

A programming language with Python-like syntax and a Hindley-Milner type system plus typeclasses. Basically, we bring Haskell’s type system an imperative programming language. An easy-to-learn scripting language with a strong, sound type system with reliable type inference will reduce bugs in codebases of every size across the industry.

I think languages which bolt some trait / generic / role system onto an object-oriented system are generally a bit too bloated, non-opinionated, and confusing. Typeclasses not only encourage an elegant separation between data and functions, they allow you to design guarantees about how your functions interact with each other into your program — basically, not only data inheritance but also functional inheritance. Object oriented syntactic sugar is an easy add-on to a typeclassed language, but not the other way around.

Beyond immediately reducing bugs, I think widespread use of this sort of language designed with a good type system from first principles would allow many more programmers to write programs with some provable security guarantees.

Post reply on HN