Live data from Hacker News

The State of Desktop Applications in Node.js

nodesource.com

91–100 of 115 posts

Re: The State of Desktop Applications in Node.js

#91
post #74

Earlier quoted context omitted.

Usually said by Java developer not understanding JavaScript.

You see, I barely need to "understand" Java to use it and get decent and performant code but I need to be a javascript expert to be able to do anything not horrible. Please stop trying to act like the state of web and javascript is good because it's shit. Web development is basically a bunch of people suffering from stockholm syndrome.

Really? I feel js gives way more freedom and is much more forgiving to writing in your own particular style. I've had the exact opposite experience with Java. I write JavaScript all the time for work and hobby and it's always rewarding.

Also, I'm in college for computer science and the school will only teach Java courses. It's dreadful and maddening. Classical inheritance is complete shit. Compiler error messages suck. The language itself is just too bloated for me to want use. Whatever I can write in Java I can do in a fraction of the time with js with much more modular and maintainable code.

I think java interfaces are a clear sign of stockholm syndrome, as every time I asked the professor why they are necessary I never got an answer other than "to hide part of your code from the outside world", "to use as a blueprint for your classes", or my personal favorite "Because in Java you write interfaces." I tried shifting my question to "Why don't I have to write an interface in js?" That one never got answered. Maybe someone here who is crafty with Java could explain and justify for me the reason for writing what feels like more code for no obvious benefit.

Also, sorry if Java is your thing and I sound like I'm bashing it. It's just been really frustrating for me compared to literally every other language I've used, especially since my degree depends solely on the language.

Re: The State of Desktop Applications in Node.js

#92
post #20
post #4

The web wasn't made to be used as a desktop app replacement, and it will never be. Quit trying to make it that way, and start using a widget toolkit like you should. Hell, if you love html/js so much, there's a big chance you won't dislike QML. The web is for sharing content, not for games, text editors, and all that stuff. I see google trying to blur the lines between that, but why is it necessary? Just because peop…

|slow, shitty "web apps" Ah yes, nothing is better than waiting 5 minutes for the native Facebook iPhone app to boot up. But seriously, I've mostly switched from facebook to ello just because ello as a web app is faster than facebook as a mobile app. Not all web apps are slow and not all native apps are fast. It's up to the developers to handle that, not the platform. I see a lot of benefits of building and using web…

    > Ah yes, nothing is better than waiting 5 minutes for the native
    > Facebook iPhone app to boot up. But seriously, I've mostly 
    > switched from facebook to ello just because ello as a web app is 
    > faster than facebook as a mobile app.
Then you should check out `about:blank`, a social network similar to ello but even faster.

Re: The State of Desktop Applications in Node.js

#93
post #15

Related question: what are the other ways to build a desktop application on Linux that works on Linux, Windows and OSX on slow machines, like intel atom, and doesn't require anything from the user?

Gtk works on all those plattforms. But your application will have an Gtk look and feel. If java is acceptabel i would look into JavaFX.

Re: The State of Desktop Applications in Node.js

#94
post #91
post #74

Earlier quoted context omitted.

You see, I barely need to "understand" Java to use it and get decent and performant code but I need to be a javascript expert to be able to do anything not horrible. Please stop trying to act like the state of web and javascript is good because it's shit. Web development is basically a bunch of people suffering from stockholm syndrome.

Really? I feel js gives way more freedom and is much more forgiving to writing in your own particular style. I've had the exact opposite experience with Java. I write JavaScript all the time for work and hobby and it's always rewarding. Also, I'm in college for computer science and the school will only teach Java courses. It's dreadful and maddening. Classical inheritance is complete shit. Compiler error messages suc…

> Also, I'm in college for computer science and the school will only teach Java courses. It's dreadful and maddening. Classical inheritance is complete shit. Compiler error messages suck. The language itself is just too bloated for me to want use. Whatever I can write in Java I can do in a fraction of the time with js with much more modular and maintainable code.

Whoever likes writing Java in CS courses?

> I think java interfaces are a clear sign of stockholm syndrome, as every time I asked the professor why they are necessary I never got an answer other than "to hide part of your code from the outside world", "to use as a blueprint for your classes", or my personal favorite "Because in Java you write interfaces." I tried shifting my question to "Why don't I have to write an interface in js?" That one never got answered. Maybe someone here who is crafty with Java could explain and justify for me the reason for writing what feels like more code for no obvious benefit.

Almost all modern, statically typed languages have some equivalent of Java interfaces. Inheritance a la Java is controversial, but the concept of interfaces/signatures/typeclasses/traits is a very accepted language feature[1]. Maybe the benefit of it will become apparent to you once you have to write a project with more than 7 Java classes - or when you don't have to answer to lecturers that profess that you have to make all your throwaway course work super modular and generic.

[1] Litmus test: even Go has it.

Re: The State of Desktop Applications in Node.js

#95
post #25

We ended up building Mac and Windows apps for http://www.webhook.com built on a Node / Chromium shells. Essentially we're a Wordpress competitor, but Node powered, and wanted to provide a simple one-click install for people that didn't know how to work their command line or how to install Node properly. This solution ended up working great. It basically allowed us to build a non-destructive sandbox dev environment fo…

That is awesome!

Re: The State of Desktop Applications in Node.js

#96
post #91
post #74

Earlier quoted context omitted.

You see, I barely need to "understand" Java to use it and get decent and performant code but I need to be a javascript expert to be able to do anything not horrible. Please stop trying to act like the state of web and javascript is good because it's shit. Web development is basically a bunch of people suffering from stockholm syndrome.

Really? I feel js gives way more freedom and is much more forgiving to writing in your own particular style. I've had the exact opposite experience with Java. I write JavaScript all the time for work and hobby and it's always rewarding. Also, I'm in college for computer science and the school will only teach Java courses. It's dreadful and maddening. Classical inheritance is complete shit. Compiler error messages suc…

java interfaces are one of the main reasons people like java (and as other people have said, it's reimplementation in other more modern languages shows how popular and useful they are). They promote code reuse and allow protected variation. Your professors bad explanations aren't a reason to dislike interfaces.

Also how have you not, in a java class, written code that uses polymorphism? That would be the easiest way to understand how useful interfaces are.

Re: The State of Desktop Applications in Node.js

#97
post #25

We ended up building Mac and Windows apps for http://www.webhook.com built on a Node / Chromium shells. Essentially we're a Wordpress competitor, but Node powered, and wanted to provide a simple one-click install for people that didn't know how to work their command line or how to install Node properly. This solution ended up working great. It basically allowed us to build a non-destructive sandbox dev environment fo…

This is great. Did you use node-webkit?

Re: The State of Desktop Applications in Node.js

#98
post #96
post #91

Earlier quoted context omitted.

Really? I feel js gives way more freedom and is much more forgiving to writing in your own particular style. I've had the exact opposite experience with Java. I write JavaScript all the time for work and hobby and it's always rewarding. Also, I'm in college for computer science and the school will only teach Java courses. It's dreadful and maddening. Classical inheritance is complete shit. Compiler error messages suc…

java interfaces are one of the main reasons people like java (and as other people have said, it's reimplementation in other more modern languages shows how popular and useful they are). They promote code reuse and allow protected variation. Your professors bad explanations aren't a reason to dislike interfaces. Also how have you not, in a java class, written code that uses polymorphism? That would be the easiest way…

But I reuse code all the time with js, following DOT and DRY principles, just fine without an interface. Especially with tools like browserify, where I can basically manage my code as partials independent from each other. Also, I have had to write java code that uses polymorphism. I still find polymorphism easier in javascript. That being said, I think classes and polymorphism is kinda of all just nonsense.

My preferred method of "inheritance" really is just extending an object. Which js is great at. And there's multiple ways to do this, with multiple kinds of prototypes. For something quick an easy I can make a prototype and just pass that through object.create() and now I have a new object that has all the properties of what I would loosely consider to be a "parent". It's more cloning than it is inheritance, and I can completely override properties however I want, while the original properties stay unchanged.

IMO polymorphism and interfaces in Java seem more like hurdles and added complexity compared to object extension and cloning in JavaScript. _.extend paired with browserify also makes for extremely modular code that I haven't seen any Java code compare too.

Re: The State of Desktop Applications in Node.js

#99

Earlier quoted context omitted.

Innovation can happen when you start thinking out of the box. That doesn't mean it does happen. I don't find much about "webdev" to be terribly innovative. In many ways it is a large step backwards or sideways.

I agree that from a technology standpoint, the web development field is absolutely atrocious—at all levels. On the server side, broken languages control vast swaths of marketshare, and the client side has plenty of its own issues. From the user's perspective, however, there's been a ton of innovation, and they (usually) don't know/care that most applications are built on houses of cards.

Out of curiosity what broken languages in particular are you referring to? I'm also somewhat curious at to what language(s) you use.

Re: The State of Desktop Applications in Node.js

#100
post #79
post #76

Earlier quoted context omitted.

You've coded a lot in languages very similar to Java and that is an argument for Java's ease of use?

My argument was that the idea of having to work on a javascript project with >10,000 lines of code makes me want to vomit while the idea of working on a java project with >1,000,000 lines of code doesn't make me feel anything special. People that complain about verbosity really don't have their priorities in line

The point of Javascript is that projects don't get to 10,000 lines. If a project is this big, you have failed.

Bragging about LOC is one of the most ridiculous things ever, since it is a bad thing.

Post reply on HN