Live data from Hacker News

Ask HN: What big programming productivity gains you see happening in 5-10 yrs?

news.ycombinator.com

61–70 of 106 posts

Re: Ask HN: What big programming productivity gains you see happening in 5-10 yrs?

#61
Not a lot of comments so far, but a few people are talking about stuff that is in the general vein of better tooling and code generation/automation through deeper code understanding by our tooling.

I think that this sentiment is interesting, because the way I see it, this can only happen if we continue the trend of transitioning to static typing.

We can't really do much more for dynamic language tooling today than we are already doing unless we solve the halting problem. The very nature of the problem (of providing smarter tooling) requires us to be able to gather metadata about our code, without having to execute it. This means static information.

We have invented all sorts of schemes circumvent this problem, like the plethora of documentation generation tools that exist. Of course, there is more to documentation than just information about the types of the arguments of functions and such, so documentation tools will always have their place. But I contend that a large part of the benefit a lot of the documentation provides for many languages is simply typing information. And I also believe that with well engineered type systems and API typings, the types themselves can provide enough information to use a lot of APIs without having to reach for external documentation.

Or to paraphrase: in any code documentation generation tool for a dynamic language, there is a half-finished implementation of a badly formalized, insufficiently powerful static type system.

Typescript's huge rise in popularity seems to suggest that a lot of people used mostly to dynamic languages really wanted static typing all this time but just didn't know.

I think if we could combine some of the concepts of typescript with Haskell's type system, so that we can have both nominal and structural typing, we would have power to challenge the gods. If we are able to harness all the information in such a type system, we could provide very powerful tooling that will basically be able to write code for us, as long as the types are right (automatically filling typed holes).

I am obviously a proponent of static typing, but I'd be interested in hearing if there's someone on the other side of the fence that has some ideas for how we can improve upon dynamic language productivity without solving the halting problem.

Re: Ask HN: What big programming productivity gains you see happening in 5-10 yrs?

#62
Web application deployment got way easier than it was 10 years ago. Now now there are plenty of alternatives for CI and testing tools that can automate the process of releasing and verifying code at scale. By scale I mean lots of developers collaborating on the same code base and handling massive loads at the same time.

It's also the field that I think will see lots of improvements and maybe some fundamental disruptions. Maybe it will be GitHub actions and it's right around the corner :)

Re: Ask HN: What big programming productivity gains you see happening in 5-10 yrs?

#63
post #12
post #7

Maybe the software industry will discover constraint programming the way that it discovered functional programming over the past decade. If it did, that would almost immediately increase programmer productivity for non-performance-critical tasks (since the compiler could supply the implementation), while making formal methods more easily applicable to production code & supplying the prerequisites for more clever auto…

An infinite loop of software trends :-) To answer parent, I actually think better understanding of personality types and how manage people better will come with far better productivity. The jungle of technology alternatives of how to solve business problems, causes a lot of unnecessary fights. It doesn't matter if you choose React, Angular or Vanilla JS. If your team is fighting each other, your team is not productiv…

I think you've hit the nail on the head. The magic bullets are human factors from the interpersonal domain.

Re: Ask HN: What big programming productivity gains you see happening in 5-10 yrs?

#64
> breakthrough innovation in programming which will enable programmers to deliver ambitious web/mobile apps at a very high speed.

That's a pretty narrow framing. 10 years from now, a lot of programming won't look like traditional application development at all. For example, a self-driving car or other machine with a similar level of automation is a valuable product that requires a lot of programming but doesn't fit into the category of "web/moble app." Or consider the development of natural language interfaces: right now this is at the level of Alexa skills, but over the next 10 years we will see frameworks that allow programmers to specify not just a few phrases, but mini-languages for entire domains: pilots talking to airplanes, doctors talking to EMRs, etc.

Use cases like this suggest that frameworks similar to PyTorch/Tensorflow will become increasingly important. These frameworks have features (particularly automatic differentiation, very sophisticated yet easy-to-use SGD optimizers like Adam, and built-in GPU support), which hugely increase productivity and lower the barrier to entry compared to the tools of 10 years ago yet they still have tons of rough edges. Its easy to imagine that 10 years from now they'll be even more powerful and easier to use; for example I'm pretty excited about the future possibilities of tools like [AutoGraph][AG].

[AG]: https://medium.com/tensorflow/autograph-converts-python-into...

Re: Ask HN: What big programming productivity gains you see happening in 5-10 yrs?

#65

I think just finally getting rid of unsafe languages, particularly at the bottom. This will I think increase "productivity" of the world at large, by reducing the number of crashes and security holes they have to contend with every day. I feel like we have finally arrived at the time when more people accept no-one (or at least, no-one outside a tiny set of people) should be using languages with undefined behaviour, o…

But then the next generation of languages needs to make sure that you can actually do what you need to do. With C/C++ I am pretty sure that whatever problem I have can be solved. It may be ugly but you can go very deep down to the last bit. So a safe language should allow you to do that if needed.

Re: Ask HN: What big programming productivity gains you see happening in 5-10 yrs?

#66
post #65

I think just finally getting rid of unsafe languages, particularly at the bottom. This will I think increase "productivity" of the world at large, by reducing the number of crashes and security holes they have to contend with every day. I feel like we have finally arrived at the time when more people accept no-one (or at least, no-one outside a tiny set of people) should be using languages with undefined behaviour, o…

But then the next generation of languages needs to make sure that you can actually do what you need to do. With C/C++ I am pretty sure that whatever problem I have can be solved. It may be ugly but you can go very deep down to the last bit. So a safe language should allow you to do that if needed.

Rust is quite good for that. Also, you can always get a very clever person to write a very small piece of C code.

Or perhaps, we just need our programs to be 20% slower? Would you buy a house which was 20% cheaper, but if a plumber was having a bad day there is a significant chance your house will explode if you turn all the taps on at once?

Re: Ask HN: What big programming productivity gains you see happening in 5-10 yrs?

#67

I think just finally getting rid of unsafe languages, particularly at the bottom. This will I think increase "productivity" of the world at large, by reducing the number of crashes and security holes they have to contend with every day. I feel like we have finally arrived at the time when more people accept no-one (or at least, no-one outside a tiny set of people) should be using languages with undefined behaviour, o…

I think C and C++ have too much buy-in from too many people to be replaced anytime soon.

I agree, but I think things are moving. Increasingly few projects are started in C and C++, and people are making serious efforts to convert som existing projects to (for example) Rust.

Also, looking at things like the Linux kernel, they are moving to add as many safety checks to C as is reasonable. Clang is adding a "all stack variables are initialised" mode.

Re: Ask HN: What big programming productivity gains you see happening in 5-10 yrs?

#68
post #65

Earlier quoted context omitted.

But then the next generation of languages needs to make sure that you can actually do what you need to do. With C/C++ I am pretty sure that whatever problem I have can be solved. It may be ugly but you can go very deep down to the last bit. So a safe language should allow you to do that if needed.

Rust is quite good for that. Also, you can always get a very clever person to write a very small piece of C code. Or perhaps, we just need our programs to be 20% slower? Would you buy a house which was 20% cheaper, but if a plumber was having a bad day there is a significant chance your house will explode if you turn all the taps on at once?

It's not only about speed. I was more thinking about programming close to hardware. There you need all the tricks.

Re: Ask HN: What big programming productivity gains you see happening in 5-10 yrs?

#69
post #54

The line between programmer and dev ops will be moved with more responsibilities on the developer. Cloud services will continue to decrease the barrier of entry while entering a price war, and every team or individual will have a set budget inside the cloud. Integration with IDEs and improved online UI and CLI tools will make these tasks very easy for everyone. We can also expect better/easier/cheaper support infrast…

> more responsibilities on the developer

Adding more responsibilities to a developer will not have a positive impact on the developer's productivity. Abstractions fall apart, and time has to be put into learning/keeping fresh with those technologies when it occurs.

Re: Ask HN: What big programming productivity gains you see happening in 5-10 yrs?

#70

> Another productivity booster is Cross-Platform frameworks. I would be so, so happy to see a UI framework that runs (well) on Windows, Mac, Linux, Android, and iOS. My druthers would be for it to have bondings to a JVM language (Kotlin is my happy place these days), but I would be okay writing in any similarly productive language. Flutter is trying to get there, but it's not a viable solution on the desktop yet, and…

What about Tornado FX?

I use Kotlin mutli platform. Share the scss between react(KotlinJS) and Desktop(tornado).

Post reply on HN