5 ms·
So they got off of Elixir and microservices, but their introduction of Typescript and GraphQL didn't pay off like they hoped, and now they need to get off Graph
by satyrnein 6y ago
So they got off of Elixir and microservices, but their introduction of Typescript and GraphQL didn't pay off like they hoped, and now they need to get off GraphQL. I think the lesson of "Choose boring technology" applies here. One of the reasons rewrites are risky is that very often the new tech doesn't live up to expectations.
- bsaul 6y agoyeap, this is a good point. This is the first time i see a rewrite to "older". Older architecture, older language, older methodology. And the only part that serm to not have met expectation are the ones using new stuffs ( graphql and maybe typescript). Maybe there's a rule here : complete rewrite is ok if you're rewriting to "older" tech.
- devonkim 6y agoIf the business model is boring, you’ll need complex technology to compensate. If your business model is complex like in a lot of enterprise software, you should strive to keep the technology as simple as possible. Simple doesn’t mean to not use complex or cutting edge things IMO but to be conservative in using things that push the cognitive load of your collective team. A 10 person company probably doesn’t need a K8S cluster for a mobile app but I’d be surprised if there isn’t one for a 10k+ software company.
- jspash 6y ago"If the business model is boring, you’ll need complex technology to compensate." Could you elaborate on this? What is the complexity compensating for? Boredom of the developers?
- ansgri 6y agoI suppose the boring business model needs some secret sauce, i.e. advanced technology, to stay competitive -- since it's boring, many people are likely to do it, the margins are thin, you need to optimize.
- devonkim 6y agoCompensating for competitive factors both for customers and for investors to care that you're worth putting money into. If you don't have something that makes you special from your competitors, what's the point of you existing? That's just a small business like a mom & pop grocery store or a boutique web design agency (both of which are endangered species). If you don't have any competitors, then you'd better have something of value, correct? Or is one's company Theranos et al? In enterprise, the competitive factors can be things like relationships to certain vendors and this can supersede technology secret sauce and is as equally valuable as a trade secret. You get overly-complicated business models that become a house of cards like Enron or WeWork which make unsophisticated investors think they know what they're doing, and as engineers we are attracted to our own biases toward shiny new things that might solve all our headaches. But you're also right in that some technology companies basically hire developers to give them resume / vanity projects that don't necessarily help the business be competitive directly. However, that is another ball game that's into global brand territory which follows rules more of religions and politics than of capitalism.
- danjac 6y agoYes but they were able to add lots of keywords to their resumes so it wasn't a complete loss.
- wiennat 6y agoI am also in the middle of moving off graphql to REST api. It is a 5 years old project and the graphql part was implemented with a very old spec. Since it has not been well maintained, it could not catch up with any features offered by graphql and users need to write their own queries by hand due to spec compatibility. Rewriting it to REST allows us to "rebrand" these apis. At least, it does not scare our api users as the word "graphql" did.