News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu
avatar_mr_lou

Web vs native apps - fight!

Started by mr_lou, 20:41, 03 December 13

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

mr_lou

Well, as a developer, you can choose to develop your tool once using web technologies...

...or you can choose to learn Objective C, Android "Java", C, Java, C++, C#, python, blabla, more bla, brand new language here, another completely new language too, and so forth, etc... and compile to a bunch of different platforms... and do that every time you create an update.

Online is the future. Not needing to download and install anything, but instead just surf to a site - that's the future. The sooner you get used to it, the sooner the rest of us can stop listening to your whining.

:D

MaV

Quote from: mr_lou on 20:41, 03 December 13
Well, as a developer, you can choose to develop your tool once using web technologies...

...or you can choose to learn Objective C, Android "Java", C, Java, C++, C#, python, blabla, more bla, brand new language here, another completely new language too, and so forth, etc... and compile to a bunch of different platforms... and do that every time you create an update.
Oh please!

You are using the term "web technologies" and hide the fact that behind it is a whole slew of stuff that you'll need to know or are expected at least to have a passing knowledge. HTML, CSS, XML, JavaScript and a bazillion of frameworks-du-jour, PHP, Ruby + Rails, ASP, you name it.
And your web application will still need to be tested by the current bunch of browsers to check if any quirks show their ugly faces, repeatedly!

And since you included Java and C# (rather .NET) in your list of programming languages. Both of them are massively used for server side web-application software (Java more so than C#/.NET) with another bazillion of frameworks and libraries plus the new domain-specific languages, about which any number of online-communities gets hysterical today and is forgotten tomorrow).
To finish this off, you will need a database on the back end for anything a little bit more complex - which one? MySQL, MSSQL, Oracle, DB2, Adabas, Postgres?

Even if you try to severely cut off a lot of the possibilities here, your environment will still be a lot more complex than for a single native programming language.

Try to put your statements into proper perspective next time, please!
Black Mesa Transit Announcement System:
"Work safe, work smart. Your future depends on it."

mr_lou

Quote from: MaV on 17:26, 04 December 13
Oh please!

You are using the term "web technologies" and hide the fact that behind it is a whole slew of stuff that you'll need to know or are expected at least to have a passing knowledge. HTML, CSS, XML, JavaScript and a bazillion of frameworks-du-jour, PHP, Ruby + Rails, ASP, you name it.
And your web application will still need to be tested by the current bunch of browsers to check if any quirks show their ugly faces, repeatedly!

And since you included Java and C# (rather .NET) in your list of programming languages. Both of them are massively used for server side web-application software (Java more so than C#/.NET) with another bazillion of frameworks and libraries plus the new domain-specific languages, about which any number of online-communities gets hysterical today and is forgotten tomorrow).
To finish this off, you will need a database on the back end for anything a little bit more complex - which one? MySQL, MSSQL, Oracle, DB2, Adabas, Postgres?

Even if you try to severely cut off a lot of the possibilities here, your environment will still be a lot more complex than for a single native programming language.

Try to put your statements into proper perspective next time, please!

Yes, I see now that I was completely wrong in my statement. I've clearly lost perspective, along with all other mobile app developers who prefer doing web apps rather than native apps because it saves money and time. The stats clearly show us that the whole world is losing perspective - fast.

MaV

Quote from: mr_lou on 19:33, 04 December 13
Yes, I see now that I was completely wrong in my statement. I've clearly lost perspective, along with all other mobile app developers who prefer doing web apps rather than native apps because it saves money and time. The stats clearly show us that the whole world is losing perspective - fast.
Don't try sarcasm on me. Also, you were talking about web development not mobile app development.

You were claiming that web development is easier because you choose your tool once, when you have to consider a whole lot more. And instead of compiling to multiple target-platforms, you have to check for multiple browser environments and a bunch of other stuff. Once you acknowledge that, you've put it into perspective with regards to native application programming. The difference in the end is small.
In effect, you're considering a tiny window of web development when you're claiming it's easier, when in effect there's a whole lot more to it.

Notice how I excluded you last comment from your first post, because you are right, it is more convenient to open a browser than to install programs. Save for hardcore native applications, this will be the way to go.
Black Mesa Transit Announcement System:
"Work safe, work smart. Your future depends on it."

mr_lou

Quote from: MaV on 20:22, 04 December 13You were claiming that web development is easier because you choose your tool once, when you have to consider a whole lot more. And instead of compiling to multiple target-platforms, you have to check for multiple browser environments and a bunch of other stuff.

Web development is a lot easier than native development, when you have to target multiple platforms.
Testing various browsers is a lot easier than testing your native code on various platforms - and no one says you have to support all browsers. If it doesn't work in a certain browser, the user can just use another browser. He doesn't have to turn on another computer to use the program.
Browsers change and then suddenly your app doesn't work. The same thing goes for platforms. No difference there.

There are no more billions of frameworks for web-development than there are for native development. In the end it doesn't matter either, because if you even choose to use a framework, you choose one. The rest doesn't matter.

Fact remains that the web-developer gets to target EVERYTHING. Native development will never be able to reach that level without at least 10 times as much work, and most likely more.

I do web-development for a living. Have done so for 10+ years, and have tried various technologies. I acknowledge browsers being a pain. (Especially Microsoft IE, but no one is surprised by that I trust).
I've also done native mobile development for several years, and can say that mobile platforms are no better than browsers. They're at least just as bad. Different brands, but also the same brand with different versions of the OS.
Nothing is static anymore. Those days are way behind us. Everything is constantly changing. You cannot rely on your code, native or web, still running tomorrow.

What I said was: The future is online. Everything will be online. Nothing will prevent that from happening. You might as well get used to it. Whining about it won't change a thing.

robcfg

Hey guys, seriously, nothing is pure black or pure white, so this kind of arguments makes no sense.


Reminds me of the PC vs Smartphone/Tablets wars... Thing is, tablets and such are ok for browsing on the go, but if you want to do serious development or preservation, or hardware tinkering, you need a PC. There's not a single solution for everything.


Nothing more to se see here, keep on moving, gentlemen!

mr_lou

Quote from: robcfg on 21:03, 04 December 13if you want to do serious development or preservation, or hardware tinkering, you need a PC. There's not a single solution for everything.

No one is talking about that. That's a different topic.

What I'm talking about is what is easiest for the developer.

But yes, serious hardware tinkering requires a fast PC - which of course is why the web apps will send the data to the servers for processing, when needed.

MaV

Quote from: mr_lou on 20:54, 04 December 13
Web development is a lot easier than native development, when you have to target multiple platforms.

...

What I said was: The future is online. Everything will be online. Nothing will prevent that from happening. You might as well get used to it. Whining about it won't change a thing.
This probably was a pointless fight from the get-go, as we seem to misunderstand each other.

You've never handled big web applications for corporate and big international company software where you can't just change a browser and must adhere to the many company standards. The complexity here is enormous and a web application in some cases does not make sense at all. That's the sort of applications I've been working with both native and for web platforms and for quite a bit longer.

There are, as rob pointed out, a lot of use cases for software that simply do not make sense on anything mobile.

And again a misunderstanding: When your web app sends data to a server, the latter is part of it. I'm including the server part in my argument because one cannot do without the other. That is the complexity I'm talking about.

Not everything will be online. A lot, but certainly not everything.

Let's call it a day, mr_lou.
Black Mesa Transit Announcement System:
"Work safe, work smart. Your future depends on it."

redbox

#8
This flame war is interesting (kind of) because it does come full circle and back to the CPC (or C64 for that matter)...

Yes, "the future is online".  But it's a split future[nb]Most recent example being the Instagram Vs Amazon argument.  Instagram is worth $1bn dollars because they used Amazon's cloud architecture.  But who's the real winner and where is the true worth?[/nb].

Any numpty who can program badly with JavaScript/HTML5/iOS/Android/Actionscript will think they are a pioneer because they are embracing this future.  Where as in reality, it's the guys who are so shit hot at coding that they can make Cloud VM machines that run faster than the most white hot native servers who will rule the day.

And I bet you nearly all of these coders are over 35.  And the reason they're so good is because they are efficient, were taught to code properly and within restraints.  Hello children of the 8-bit generation.

TFM

TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

mr_lou

Quote from: MaV on 22:08, 04 December 13
You've never handled big web applications for corporate and big international company software where you can't just change a browser and must adhere to the many company standards. The complexity here is enormous and a web application in some cases does not make sense at all. That's the sort of applications I've been working with both native and for web platforms and for quite a bit longer.

Apparently I haven't, because I just don't see the complexity as you seem to do.
Since 2010 I've been developing what I would call a big system: A system all employees logs into every morning and manages almost everything. Yes, it requires Opera to run 100% because it was decided to use HTML5 standard - and Opera is the one leading the HTML5-support race. And yes, the system uses a lot of Javascript, jQuery, HTML, CSS, JSON, Ajax, PHP, mySql, Linux scripting and such. And sure, when listing the technologies like that it looks overwhelming. I just still don't see it as being complex. Not when comparing to the requirements of native development.

Quote from: MaV on 22:08, 04 December 13This probably was a pointless fight from the get-go, as we seem to misunderstand each other.

I think this was partly because I was thinking "Web App" (which to me is what we see emerge everywhere now, using HTML5 standards (they're also referred to as HTML5 apps), examples like online Graphics editors and Word processors). While it seems you were thinking about virtually any online web-solution, such as bank systems (I presume since you bring in Java).

MaV

Quote from: mr_lou on 07:31, 05 December 13Apparently I haven't, because I just don't see the complexity as you seem to do.
See the last comment below.

QuoteYes, it requires Opera to run 100% because it was decided to use HTML5 standard - and Opera is the one leading the HTML5-support race.
You're lucky to have a customer that accepts this as a prerequisite and is supportive of leading-edge technology. But this is far from the norm.
In reality there's for example a customer that has IE 9 installed company-wide (Firefox as an option), but needs to switch back browser mode (or document mode) in IE to IE 7 because it has some legacy applications which can't cope with newer browser versions. You're assumed to support that as well. Technologically you are basically thrown back 10 years, and it's non optional.

QuoteAnd yes, the system uses a lot of Javascript, jQuery, HTML, CSS, JSON, Ajax, PHP, mySql, Linux scripting and such. And sure, when listing the technologies like that it looks overwhelming. I just still don't see it as being complex. Not when comparing to the requirements of native development.
That's where it starts here.
The smallest I can think of here uses (based on MS technology): VB.NET/C# (don't ask!), ASP.NET, ADO.NET, LINQ, AJAX, HTML, JavaScript, JQuery, CSS, Oracle DB, IIS, and a couple of web services to communicate with current infrastructure.


QuoteI think this was partly because I was thinking "Web App" (which to me is what we see emerge everywhere now, using HTML5 standards (they're also referred to as HTML5 apps), examples like online Graphics editors and Word processors). While it seems you were thinking about virtually any online web-solution, such as bank systems (I presume since you bring in Java).
Not quite banking systems but close enough. But you'd be surprised to how often Java is used on the server side. On my side of the fence that is web development, and this is quite a bit more complex than writing a webapp with HTML5.
Black Mesa Transit Announcement System:
"Work safe, work smart. Your future depends on it."

Optimus

I understand some advantages of web, like everyone can see your stuff without installing anything, because everyone has a browser. Common problem when I did a Ludum Dare game, many people say "No Web Player? This sucks!". Too lazy to download, unzip and check the entries.


Web is something to consider for that reason alone.


But I am a native app programmer at heart. And I think I'll go on with this till they die.

Sykobee (Briggsy)

A lot of people don't consider the server side of a client-server application when considering development (I'm not talking about games really here, where the server side might be as complex as maintaining a global high score table or something, and most of the work is done in the client).

Behind that fairly lightweight HTML+Javascript+Client Framework Of Choice application there is usually a very capable, heavyweight, server that makes sense of all the stuff the user is doing.

Hell, some companies just don't bother with the HTML+Javascript portion, and code that as a separate webapp (i.e., it's a server-side application still) using technology such as Apache Wicket to present the user's UI.

The thing they need to get right is the API between the client and the server, whatever that client is implemented in.

Creating Android, iOS, Scripting, etc, client front-ends to the server is relatively cheap, in the grand scheme of things. Maintaining lots of separate apps is an ongoing problem, of course. Hence your API needs to support versioning of some sort, so as it changes majorly (I'm assuming most changes will be backward compatible, but sometimes things change a lot) old clients can still connect to the old API (for as long as it is supported) even if it doesn't support all of the new features.

That server will be written in Java, C#, php, python, Ruby, Node.js even - usually depending on developer knowledge, developers' desire to learn something new, and the scale of the application.

Most developers as a result will need to know multiple languages and frameworks.

redbox

I can see all sides to this argument and am on the fence...

But let's take CPCBox as an example - it's an amazing achievement and hats off to the author.
However, it's nothing I couldn't have run 15 years ago on a 486.

Big price to pay for being able to run it in a browser, IMHO.

Gryzor

True, but soon this won't matter as hardware and web technologies moves forward...

TFM

Since 25 years people tell me the future is in the net, soon everything will only run in the net... and so on.


And I know I will hear that for all eternity again, and I also know it will never come true.  :laugh:
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

Gryzor

So people were evangelizing the advent of online presence and work in 1988? Wow, you must have some seriously precog friends...

It's stupid to say 'never'. I used to say 'never', for instance, with webmail back when I was using Netscape Communicator. Oh, how times change...

TFM

#18
I can say never, because a "web only - no native" world will never exist, because you can't boot a computer without native software, even if you intend to use it only as web box.


About 1988: You may have been too young back that day, but obviously you never heard of Z-Nodes, Fidonet, RS485 or whatever was common network back the day.
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

Gryzor

Erm... I was part of the Fidonet actually, thanks to my ST. Nobody ever talked about online-only back then. And nobody said that going online for your apps means not having to boot locally, though -who knows? Maybe this will come to be, too, and we'll only need a BIOS or some bootstrapping method.

As it happens, the intrusion of online apps has a great momentum anyhow.

TFM

#20
What ever technology brings... there will always be some left who just want to have their apps on their computer, w/o the need of networking. And Optimus is there not alone  ;)
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

ralferoo

Quote from: Gryzor on 19:20, 09 December 13
So people were evangelizing the advent of online presence and work in 1988? Wow, you must have some seriously precog friends...
Actually, I remember reading about a "hypertext" system in a magazine sometime between 1987 and 1990. I went along to the local university (I was still at school then) where somebody downloaded it for me by FTP and I went back to school and tried it out on the PCs there. As I remember which PC I ran it on, I can date it to the "old computer room" so 1990 or earlier.

This was a couple of years before the WWW, but I guess for those that had internet back then it was an obvious next step from this to WWW.

The UNIX world have always been remarkably network focussed. X11 from its beginnings in 1984 was designed to support remote clients anywhere over the internet. SUN microsystems was formed in 1982 (SUN was an acronym for Stanford University Network) and their motto was "The network is the computer".

TFM

#22
Now you know my "precog friends" Gryzor  :laugh: :P 8)  Yes, network was all over way before the internet, which is still older than some of the users of the forum.


History of the Internet - Wikipedia, the free encyclopedia
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

Gryzor

Engelbart spoke of hypertext (among other things) in his unbelievable presentation in '68. Had nothing to do, however (as hypertext doesn't) with online apps and migrating to the 'cloud'.

Doug Engelbart 1968 Demo

and:

The Mother of All Demos, presented by Douglas Engelbart (1968)
(if you haven't ever watched it, do set aside one hour of your time to do so...)

ralferoo

Quote from: Gryzor on 22:21, 09 December 13
Engelbart spoke of hypertext (among other things) in his unbelievable presentation in '68.
...
(if you haven't ever watched it, do set aside one hour of your time to do so...)
Definitely agree. That talk is phenomenal, and it never ceases to amaze me how a lot of ideas from the 60s and 70s still haven't been properly researched yet.

However, the hypertext I was talking about was more along the lines of a modern browser. It was specifically designed much like a modern wiki, with links to related pages and user-editable pages. Their intent was for sharing, so you could copy sections of the databases via floppy, but there was no real networking. But really, it was a very small jump from that to the lynx browser a few years later.

Powered by SMFPacks Menu Editor Mod