tef,
@tef@mastodon.social avatar

yesterday i said that building a whole app in rust reminded me of "let's build the entire plane out of the black box"

and like, i know my poetic license is still being renewed but at least one person decided to interpret it as literally as possible

rather than "aiming to build large pieces software in the most expensive way possible is not the most efficient use of engineering"

whitequark,
@whitequark@mastodon.social avatar

@tef using rust is pretty cheap though

tef,
@tef@mastodon.social avatar

i am glad people are enjoying the strictly evaluated haskell dialect with affine and linear types

but like you have to admit at some point that rust programs take longer to write and longer to build than most of it's contemporaries, and that the up front costs, and high maintenance costs preclude it from being a viable choice for many

alas

unlambda,
@unlambda@hachyderm.io avatar

@tef I get where you're going with that analogy, but yeah, it's ripe for nitpicking.

A better one might be that Rust reminds you of building an airplane, period.

Building an airplane means that you have to do everything in the engineering, supply chain, building, testing, maintenance, and operations right; otherwise planes will fall out of the sky and people will die.

You really, really have to do every one of the best engineering practices by the book, and it's long, tedious, and expensive.

tef,
@tef@mastodon.social avatar

@unlambda programmers love two things: making generalizations, and explaining that generalizations have outliers and exceptions

trochee,
@trochee@dair-community.social avatar

@tef @unlambda

…and off-by-one errors, amirite?

whitequark,
@whitequark@mastodon.social avatar

@tef @unlambda really pulling this one out on every opportunity huh

tef,
@tef@mastodon.social avatar

@unlambda

yes

that's engineering

my point is that "Making everything like the black box" makes an already tedious and expensive procress even more drawn out

whitequark,
@whitequark@mastodon.social avatar

@tef @unlambda that's not what the black box analogy means though?

it's not possible to build the plane out of the black box, period. the physics doesn't work out. it's not a question of engineering, it's a question of how reality works

tef,
@tef@mastodon.social avatar

@whitequark @unlambda the point of the analogy is that people do not understand the engineering tradeoffs involved and that pushing for one goal over others will never reach practical results

my point is that people saying "write the whole thing in rust" is the same issue

but yeah the one person who does write black boxes has to chip in huh

janxdevil,
@janxdevil@sfba.social avatar

@tef @whitequark @unlambda Don’t ask me why I’m not agitating to rewrite the whole autonomous driving software at $EMPLOYER in Rust instead of C++. (I’m a manager in the core robot software engineering organization, so I have a real voice in that choice.)

Don’t ask, because I just don’t have time to explain real software engineering to people who don’t care to learn it.

whitequark,
@whitequark@mastodon.social avatar

@janxdevil @tef @unlambda does it hurt to walk around with an ego that big?

janxdevil,
@janxdevil@sfba.social avatar

@whitequark @tef @unlambda It doesn’t require much ego to recognize that you’re not going to replace millions of lines of C++ that required thousands of people to write and billions of dollars to test with anything you and anyone you could recruit to join you would write in Rust over the next few months.

I’d give almost anything to be working in Rust on this stuff, but it’s just not remotely feasible, and it’s pretty damned tiresome to be told that it would be simple as pie if I weren’t such an egotistical idiot standing in the way of progress. But thanks anyway.

whitequark,
@whitequark@mastodon.social avatar

@janxdevil @tef @unlambda I've argued against rewriting much smaller codebases in Rust enough times. I just didn't feel others so beneath me to justify it with "you don't understand real software engineering".

janxdevil,
@janxdevil@sfba.social avatar

@whitequark @tef @unlambda Not you. I have followed you long enough to know that’s not you. But I do, from time to time, encounter people who have never worked in a large software project, and who want to argue with me over why the choice to write the logic for the nine ton robot that can go 70 mph and drives on streets where lots of pedestrians are present is written in C++ instead of Rust (or whatever other new hotness they prefer) was a bad choice, and I’m a bad person for not resisting it more, and I just don’t have the time to hold their hand through all that. The recruiters screen most of them out before they ever get to me, but sometimes I find them in the social mix. Guys (they are always guys), do you understand the sheer volume of logic and the level of testing burden you’re talking about? This is not your hobby open source project.

whitequark,
@whitequark@mastodon.social avatar

@janxdevil @tef @unlambda that's pretty bad yea, sorry you're dealing with that.

whitequark,
@whitequark@mastodon.social avatar

@tef @unlambda i think this speaks more about the types of systems and types of environments you personally work with than about rust

whitequark,
@whitequark@mastodon.social avatar

@tef @unlambda i also don't think that i'm doing anything particularly special, and an important goal of mine is to desacralize the sort of work i'm doing

i think i'm doing okay on that; seeing a chemical engineer be able to implement SEM gateware, driver, and software without systems programming experience was blissful

  • All
  • Subscribed
  • Moderated
  • Favorites
  • random
  • GTA5RPClips
  • DreamBathrooms
  • thenastyranch
  • magazineikmin
  • tacticalgear
  • cubers
  • Youngstown
  • mdbf
  • slotface
  • rosin
  • osvaldo12
  • ngwrru68w68
  • kavyap
  • InstantRegret
  • JUstTest
  • everett
  • Durango
  • cisconetworking
  • khanakhh
  • ethstaker
  • tester
  • anitta
  • Leos
  • normalnudes
  • modclub
  • megavids
  • provamag3
  • lostlight
  • All magazines