Live data from Hacker News

Ask HN: What technologies greatly improve the efficiency of development?

news.ycombinator.com

11–20 of 87 posts

Re: Ask HN: What technologies greatly improve the efficiency of development?

#12
- Automated testing running on each PR

- Having a dedicated Quality team

- Ensuring everyone is on the same page, from the lowest level (coding standards) to mid level (discussing tasks before implementing them) to meta level (principles for development, building culture)

- Rewarding bold moves and experiments, giving people freedom to be creative

- Leveraging the wisdom of the Open Source community

Re: Ask HN: What technologies greatly improve the efficiency of development?

#17
There are so many, but there are three in particular that in my experience are most important and weirdly lacking in a number of organisations:

- Type checking (and particularly modern type systems) can remove entire classes of error – often reducing the long-term maintenance cost of code substantially at the cost of (sometimes) slowing down initial development.

- Automatic and enforced code formatting and linting eliminates almost all bikeshedding and feedback loops around formatting and code style, and is an observable efficiency improvement.

- Continuous integration without a doubt. Build every source control push or PR into an artefact that's ready to deploy, along with validation and automated testing. Basically remove all manual processes from every system to the fullest extent possible.

Also, can't stress enough – fix anything that irritates you as soon as you can. Is your IDE failing to resolve some types properly? Fix it. Annoyingly long debug build times? Flaky tests? Stupid manual environment setup scripts? Fix them – you almost always fail to realise how much stress these things are causing you until they are gone.

Re: Ask HN: What technologies greatly improve the efficiency of development?

#18
post #6

It takes some time to get used to, but systems that support image-based development, in the tradition of the Smalltalks and some Lisps, can boost programming productivity a lot, by allowing very tight feedback loops. Combined with a good debugger it makes much easier to diagnose and recover from problems, and iterate over your design quickly. To experience the state of the art on this front, I recommend Pharo. There'…

Pharo is more of a research experiment than anything practical than can be used to engineer complex systems, I know I tried. It comes with many flaws, first and foremost being a lack of vision (often seen in academia) that significantly holds back its potential. When it comes to Smalltalk, I find Squeak to be a far more grounded and coherent experience.

As far as state of the art in image-based development goes, that is without a doubt, still Symbolics Genera. It's depressing to realize that after all these decades, we still haven't reached this pinnacle.

Emacs (with Emacs Lisp or Common Lisp) comes the closest but is still a long way off.

Re: Ask HN: What technologies greatly improve the efficiency of development?

#20
PHP

For all the hate PHP gets, a massive positive of it is entire classes of development friction that just doesn’t exist for it.

COMPILE: Slow compile times, nope - it’s interrupted & you can run the code instantly.

DEVELOPMENT: Confusing and complex development tooling or middleware, nope - just SFTP a single file to your webroot.

So the language / environment you pick to develop in can has massive impact on productivity.

Post reply on HN