News for hackers. Stuff that matters.
Re:The worst of the two worlds: Excel meets Outlook by bgroat on Saturday February 13, 2021 @03:44PM (#26126682)
I don't want to say "anti-pattern" because that's not what I mean...

But new tech should be the last resort.

If nothing stable, decades old, and well documented can solve the problem then reach for hot new-ness

Re:The worst of the two worlds: Excel meets Outlook by Retric on Saturday February 13, 2021 @04:04PM (#26126899)
That’s a little far, old doesn’t mean good. The bleeding edge often gets abandoned, but tech has generally been improving over time. IMO, the sweet spot starts when something was a fad ~5 years ago and is still reasonably popular.
Re:The worst of the two worlds: Excel meets Outlook by DaiPlusPlus on Saturday February 13, 2021 @05:21PM (#26127543)
> IMO, the sweet spot starts when something was a fad ~5 years ago and is still reasonably popular.

That would mean it's okay to use Angular today, but dev trends (and Google's support "policy") would advise against that.

Re:The worst of the two worlds: Excel meets Outlook by yen223 on Saturday February 13, 2021 @05:32PM (#26127623)
A good reason to wait a few years is precisely so that we have a clearer picture of what strengths and deficiencies a piece of tech brings to the table, especially out in the real world.

We have a good picture of how Angular and React works in production now. We cannot say the same for something like Svelte.

Re:The worst of the two worlds: Excel meets Outlook by fpoling on Saturday February 13, 2021 @06:08PM (#26127902)
React is far from being stable. It deprecated a lot older API, added entirely new concept of hooks.

If one wants stability, then PHP has a way better track record.

Re:The worst of the two worlds: Excel meets Outlook by scrollaway on Saturday February 13, 2021 @06:33PM (#26128090)
Nonsense. React is extremely stable. It indeed added hooks, deprecating exactly nothing in doing so. React deprecations are very few and far between.
Re:The worst of the two worlds: Excel meets Outlook by DaiPlusPlus on Saturday February 13, 2021 @08:06PM (#26128698)
> deprecating exactly nothing in doing so

De jure deprecation, correct - but reading between the lines in Facebook's own blog article that introduced Hooks ( https://reactjs.org/docs/hooks-intro.html ), which put a bit too much emphasis on "There are no plans to remove classes from React.", which to me means they're definitely going to be deprecating class-based controls in the future.

Re:The worst of the two worlds: Excel meets Outlook by notriddle on Sunday February 14, 2021 @01:03AM (#26130069)
I can see three possible universes here, all of which end on everyone assuming that classes are going to be removed from React.

> There are no plans to remove classes from React.

They're totally going to remove classes from React.

> We are going to remove classes from React.

They're obviously going to remove classes from React.

> No comment.

They're totally going to remove classes from React.

Re:The worst of the two worlds: Excel meets Outlook by mattmanser on Saturday February 13, 2021 @07:45PM (#26128571)
The MVC and ORM revolutions are the counter-argument to this.

Rails/Django, then ASP.Net MVC/Laravel/whatever Java was was a massive step forward. If you didn't use it, you were hamstringing yourself. People switched to Rails in droves.

As were using ORMs. You'll still get people quibble about this, but never having to go through the tedium of updating 101+ SQL statements when you add a column in a pain you young'uns will never know...

JQuery was actually another example. Cross browser Ajax statements were annoying, plus just manually adding individual HTML nodes in HTML was laborious.

Re:The worst of the two worlds: Excel meets Outlook by pjmlp on Sunday February 14, 2021 @05:08AM (#26131025)
I have not seen people switching to rails in droves over here, it was a fashion wave that came and went.

Apparently they are all now learning Elixir after a short migration wave over to Clojure.

C++, Java and ASP.NET over here for the last 20 years.

Re:The worst of the two worlds: Excel meets Outlook by valenterry on Saturday February 13, 2021 @11:02PM (#26129555)
ORMs are not the only way to avoid/solve the problem of having to update many SQL statements. People complain rightfully about them.
Re:The worst of the two worlds: Excel meets Outlook by nicoburns on Saturday February 13, 2021 @04:07PM (#26126931)
> If nothing stable, decades old, and well documented can solve the problem then reach for hot new-ness

I think it's a little more nuanced than that. Usually the older technology is more stable and better documented. But not always. Sometimes the new hotness is the new hotness precisely because it's better in these kind of categories.

Re:The worst of the two worlds: Excel meets Outlook by tl on Saturday February 13, 2021 @04:32PM (#26127142)
It's 100% true, but only in broad strokes. My personal ladder is

- paper

- text files / spreadsheets

- desktop apps / local db

- SSR web apps / single database

- SPA or mobile app / cloud storage

The only thing that challenges that is the reality that around a decade ago smartphones with tiny screens and no filesystem access eclipsed desktop computer, and we're still reeling over how much more expensive that makes development.

Re:The worst of the two worlds: Excel meets Outlook by rablackburn on Saturday February 13, 2021 @06:21PM (#26128001)
Are SSR/SPA solutions really that much more expensive than local apps to develop?

The start of my ladder looks much the same as yours except I jump from local files straight to single database SSR/SPA. Maybe slightly more complicated than a local app because you need auth, but when prototyping something I just use basic auth to start.

Chuck it up on a $5 DO box and you instantly get:

- Multidevice access, desktop and mobile (write mobile-first css and the tiny screens aren’t a problem)

- a UI that’s trivial to hack on (HTML and css are easy)

- likewise, a technical base that’s easy to extend. Drop in react, build out the api side and use it as a source for other projects, etc

All this assuming you have reasonably reliable network access, and even then you can build it as a clever PWA falling back to local storage if you need to (I think, prototyping that is still on my todo list)

Heck, save yourself $5/month and stick it on a raspberry pi at home.

It’s truly a golden sweet-spot for personal software tools. The only external dependency that irks me is needing a domain name.

Re:The worst of the two worlds: Excel meets Outlook by tonyedgecombe on Sunday February 14, 2021 @05:54AM (#26131241)
HTML and css are easy

All of the constituent parts are easy. It's when you tie it all together that it starts to get complex. There is no doubt there are many more moving parts in a modern web app compared to desktop. I did a few VB projects and I needed know two things, VB6 and a database.

Of course we can't go back, enterprises are rightly presenting their systems directly to the customer, you can't do that with a desktop app. None the less it does feel more complex than it needs to be.

Re:The worst of the two worlds: Excel meets Outlook by nicoburns on Sunday February 14, 2021 @06:44PM (#26137408)
> I did a few VB projects and I needed know two things, VB6 and a database.

Desktop apps are relatively simple if you only need to target one platform. Both windows and macOS have good options accessible from managed languages. But if you want to do cross platform then the complexity rockets.

Re:The worst of the two worlds: Excel meets Outlook by polskibus on Sunday February 14, 2021 @04:56AM (#26130964)
Yes they are more expensive to develop. With a winforms or wpf gui you can iterate much faster than with a web one while supporting rich interactions, thinner tech stack, faster feedback loop.
Re:The worst of the two worlds: Excel meets Outlook by fuzzfactor on Sunday February 14, 2021 @12:24PM (#26134150)
I see no legitimate way to call a phone with no filesystem access _smart_.
Re:The worst of the two worlds: Excel meets Outlook by bgroat on Saturday February 13, 2021 @04:25PM (#26127082)
You and Retric are right. I'm imagining a checklist of: - Stable - Well Documented - Age

In descending order of importance.

When choosing between any technology choose the one that is most stable.

If multiple options are on a stable release, choose the one that is best documented.

If multiple stable releases have excellent documentation, choose whichever is oldest.

I don't think this framework is always (or even often) right. But it works for me

Re:The worst of the two worlds: Excel meets Outlook by makapuf on Saturday February 13, 2021 @04:51PM (#26127315)
My checklist would be (I'm eager to know other people correct me) suitable (does it some my needs) , stable, available (including documentation, live q&a resources like stackoverflow, blog posts explaining how- not new ones but existing and up to date regarding the version available), and simple.
Re:The worst of the two worlds: Excel meets Outlook by josephg on Saturday February 13, 2021 @07:00PM (#26128289)
I try to adapt my checklist to the problem at hand. Sometimes I'm making something as a hobby project, or to solve a problem right now. Sometimes I want to write code that will outlive me, and sometimes I'll just throw some code at the wall and call it done.

Each situation necessarily results in different priorities and tools. I wouldn't TDD a gamejam project, and I wouldn't start a multi-year project in zig - at least, not yet.

For infrastructure projects I want well written deps which are simple, easy to use and have good documentation. When I'm evaluating something I often read bits of its source code (eg to figure out how to do something not listed in the examples). You get a sense of where to put things that way - actix (the actor library, not the web library) is very carefully designed, but seems to go a bit overboard inventing new concepts (+ associated traits). Tide feels pragmatic - its a bit sloppy with allocations, but it doesn't seem to really care. It wants to be fast enough and good enough while being simple to use.

For hobby projects I like to follow my nose and pick whatever seems shiny. Over the last few years I've learned svelte, typescript, snowpack, rust (and some rust libraries), zig, wasm and other stuff. I like to make some risky bets and then just play the hand out and see what happens. And I use that as fuel for when I make longer term projects. I'm making a little database at the moment and I'm using rust - which is much slower for me to write (compared to nodejs) but it matches the values of the project I'm working on to a tee.