News for hackers. Stuff that matters.
Re:Move Fast and Abandon Things by trentnix on Tuesday September 24, 2024 @05:41PM (#41641239)
Such is the hellscape we’ve brought on ourselves from the widespread adoption of “minimum viable product” as the right way to build things. We judge viability by some feature set, not whether the stupid thing is resilient or can be maintained.

It also doesn’t help that “minimum viable” is only one step away from “non-viable”. Every project then becomes like Icarus, testing how close to the sun we can fly before our wings melt.

Re:Move Fast and Abandon Things by sweezyjeezy on Tuesday September 24, 2024 @06:23PM (#41641606)
But what's the alternative here? "We spent longer than was minimally viable but we still don't have a good idea if it has market fit"-product? In my experience the code usually gets binned whether the idea gets traction or not. Some companies misjudge when to rewrite, but that doesn't make the MVP part of the process wrong.

The absolute greatest wastes of talent and humanity I've ever seen in tech didn't come from tech debt, those efforts were almost always at least working on a product that people were paying money for. The biggest wastes were from over-delivering products that hadn't and were never going to succeed.

Re:Move Fast and Abandon Things by trentnix on Tuesday September 24, 2024 @07:17PM (#41642021)
A portion of “product-market fit” failures are actually software quality failures. I think it’s easy to blame the ensh*ttification of software on corporate incompetence, but I think “minimally viable” is part of the story as well.

The world we have now where everything is built to be thrown away, including software, has had the side-effect of destroying craftsmanship. And I'm becoming more convinced as I age that the world is poorer for it.

Re:Move Fast and Abandon Things by cyanwave on Tuesday September 24, 2024 @11:07PM (#41643323)
Hard agree with the last sentence. We’re capable of greatness, im optimistic for new generation products. Not all humans are bad. Cycles and such
Re:Move Fast and Abandon Things by generic92034 on Wednesday September 25, 2024 @06:03AM (#41645622)
> The world we have now where everything is built to be thrown away, including software, has had the side-effect of destroying craftsmanship. And I'm becoming more convinced as I age that the world is poorer for it.

Not every area in the software market is like this. For example, in ERP software often applications from the 90ies are still in use (maybe revamped, maybe not) by many customers. And the maintenance periods are measured in decades (typically not initially, but there always seems to be a maintenance extension).

Re:Move Fast and Abandon Things by sethammons on Wednesday September 25, 2024 @06:24AM (#41645757)
We changed it to Most Lovable Products to reinforce that we don't just do the minimum, we need our customers to enjoy it
Re:Move Fast and Abandon Things by trentnix on Wednesday September 25, 2024 @08:07AM (#41646438)
I like it!
Re:Move Fast and Abandon Things by usefulcat on Tuesday September 24, 2024 @08:37PM (#41642467)
In the context of the topmost comment, the alternative is “don’t stop at MVP”.

If you make an MVP and end up discarding it shortly after, that’s fine, and completely appropriate for an MVP.

OTOH, MVP may not be sufficient for something that the business still relies on day in, day out months or years down the road.

Re:Move Fast and Abandon Things by kiba on Tuesday September 24, 2024 @11:25PM (#41643414)
"Temporary" frequently become permanent.
Re:Move Fast and Abandon Things by meiraleal on Tuesday September 24, 2024 @11:49PM (#41643516)
If it didn't get traction someone defined badly what was the MVP. As it wasn't viable. The M gives the idea of a minimal feature set or low effort but it shouldn't, a MVP now that competition is high needs much more quality and features than a decade ago
Re:Move Fast and Abandon Things by k_bx on Wednesday September 25, 2024 @02:55AM (#41644446)
In my opinion, instead of searching for alternative we should use good programming languages that are extremely refactor-friendly and legacy-resistant.

That's why I love ELM as a front-end langauge (and hope to see a successor ROC succeed).

For back-end, that's why I love Rust, Haskell etc. All languages that are closer to Pure, FP. Because I can leave codebase to other devs and still know that it's not gonna turn into something which I've seen happening to Python, PHP and other OOP language codebases.

Re:Move Fast and Abandon Things by FearNotDaniel on Wednesday September 25, 2024 @06:21AM (#41645732)
Nope, it's not really about the language - any mainstream language/platform can be used well or badly depending on who's guiding the design of the app (assuming somebody is, instead of falling into the "agile means no design up front" cult). You can create an elegantly structured, maintainable app in python, node, rails, .net or you can create a big ball of mud. Perhaps apps in Elm, Rust, Haskell et al have a bias towards better design because they themselves attract an elitist crowd who think more consciously about these things. If Haskell ever caught on enough to have an "eternal September" moment then the world would be littered with shitty codebases of pseudo-pure-functional code that somehow broke all the idioms that are supposed to make the language great.

I once had a client who'd had a shiny but disorganized MVP developed on .NET, and of course as the org tried to scale and ramp up new features, the devs had to fight more and more against the design (or lack of it in some parts, or overly complex over-design in other parts). At some point he met some dude at a networking event who had built a successful business on a Node codebase, and became convinced that we should rewrite from the ground up in Node because our performance problems were all the platform's fault. Wrong wrong wrong. But it's much easier to believe a sales pitch than to do the hard work of learning what good, performant design in your chosen language/framework looks like.

Re:Move Fast and Abandon Things by wry_discontent on Wednesday September 25, 2024 @10:27AM (#41647931)
This totally isn't true.

Some languages make refactoring easier and some make it harder. FP languages make it easier

Re:Move Fast and Abandon Things by tome on Wednesday September 25, 2024 @10:42AM (#41648110)
Who knows whether Haskellers are better, on average, at designing software. As a Haskeller I'd like to think they are! But I really have no idea. What I do know is that _I_ can design better software in Haskell than in Python, and I put that down to qualities of the language.
Re:Move Fast and Abandon Things by sethammons on Wednesday September 25, 2024 @06:31AM (#41645805)
Help, I've seen bad elixir. Ecto queries spanning dozens of tables with the performance grinding to a halt as load increased, with models and logic so intertwined that you had little hope of untangling the ball of string so you could refactor and scale the database.

You can make bad things in any language. I like Go for the same reasons you like FP. And there too, people can do strange and unmaintainable things

Re:Move Fast and Abandon Things by theFco on Wednesday September 25, 2024 @04:48AM (#41645242)
The MVP shows if the idea would get traction. But what good is an idea that gets traction if it is unfeasible to scale, or the organisation is not willing to support it. I think this is what google does with many of its products that end up cancelled. They tested the MVP, people bought in, but the organisation already moved on, so there is no will to support and further develop it. We should be responsible and do an MVP only after deciding if the organisation would be able and interested to scale a product and support it. Otherwise, the downsides are a toxic crunch to support the product, customers are unhappy with yet another product dies, etc...
Re:Move Fast and Abandon Things by jahewson on Tuesday September 24, 2024 @07:28PM (#41642086)
I don’t think MVPs are the problem here. Most projects were like this before MVPs were conceived of. Usually the failure is that the project isn’t minimal at all. It’s usually the maximum complexity that a given team can handle.
Re:Move Fast and Abandon Things by rorytbyrne on Wednesday September 25, 2024 @04:33AM (#41645144)
MVP is a good approach when interpreted correctly: “minimum” is in reference to the feature set, not the implementation quality.
Re:Move Fast and Abandon Things by sulandor on Wednesday September 25, 2024 @04:38AM (#41645182)
almost makes it sound like implementation quality does not play into viability
Re:Move Fast and Abandon Things by rorytbyrne on Wednesday September 25, 2024 @10:40AM (#41648070)
Implementation quality should always be high, that is standard practice for engineering disciplines.
Re:Move Fast and Abandon Things by mihaaly on Wednesday September 25, 2024 @05:08AM (#41645350)
What I'd like to see managing expectations towards the new product well before anything started, considering resource (time, money, workforce, etc.) limitations.

And not going for the shiny things do not fit!

Because limitations are everywhere. Ok, software engineers like to pride themselves in the ability to do anything and everything (not as much as salesguys of course) but this stems from the ninja attitude towards technology and forgetting other dimensions of reality. Should only attempt managable goals on all necessary levels.

I am still waiting for place where this is achieved...

Re:Move Fast and Abandon Things by sethammons on Wednesday September 25, 2024 @06:21AM (#41645735)
I don't blame mvp at all. At $prev_gig, we did agile and mvps and all that. BUT we also focused on ownership. You build it, you support it. Forever, or until officially handed off and accepted by another team. Everything has an owner.

You can still get teams who are scared of what they own and refused to update it, but that is a whole lot of "and so? Do it" when you have a healthy product backlog that is single stack priority and the higher priority thing requires output from them (while a pain, it didn't happen _that_ often).

To be fair, $prev_gig was a very well ran company in a lot of ways and better than any other shop I have been in.