City of Heroes Legacy Updater no longer in use from August 4
Just running in a browser does not make something a remote application. All this example does is make the browser a local execution environment. As you say, the sandboxing such runtimes have in the browser these days sounds like that could be painful. I am not an AIR developer though, so perhaps not. AIR apps don't have to run in the browser though. In any case, Until very recently I'm not sure AIR had any legs up on .NET for security. It's certainly cross platform.
|
For a standalone application, minimum requirements are just if you're running this processor and graphics and this OS you're probably fine.
With .NET, or AIR, or Flash, etc, you have the above, plus you have to add on this version of web browser, plus this plug-in or add-on, plus this other add-on that's optional for Windows but required for the first add-on or plug-in. See where it starts getting complicated?
Manga @ Triumph
"Meanwhile In The Halls Of Titan"...Titan Network Working To Save City Of Heroes
Save Paragon City! Efforts Coordination
Long-winded exposition follows.
Where I come from a thin client is something that has minimal "business logic" because the guts of what the application does is actually hosted somewhere else. Amazon's online store and Facebook are pervasive examples of thin clients - the actual applications run on those companies' systems, and we just get a thin interface for looking at their applications' output and validating our input to those systems.
As a counter example, if you have any experience with the Dungeons and Dragons 4th Edition Character Builder application, you might know it's a Silverlight application that can run in your browser. It's anything but a thin client. It downloads a crapton of stuff when you launch it and uses that downloaded information to aid you in building your D&D character. Frankly I think this was incredibly stupid, and I don't (just) mean for writing it in Silverlight. It's a fat client you have to have an internet connection to use, instead of a thin client that just displays things that are calculated remotely.
Getting back to CoH, any game installer that honestly installs applications (and installing CoH is more than just copying files) on our computers can't be a "thin client" in the above sense. People sometimes think a "fat client" means it's a complex program that does a ton of things, and it's definitely true our installer/launcher is not doing anything deeply complex. At the same time, it's definitely not a "thin client, because everything serious that it does, like patch our game, it does 100% locally on our desktops. Even if it ran in a browser, like DCUO's, it still would not be a thin client in the sense I describe above. It's just a "fat" (non-thin) app that happens to be hosted in a local browser. And I agree with you that putting such an app in the browser using things like AIR is probably more of a pain for the developers than just letting it be a stand-alone application.
Snow Globe's objection to .NET seems to stem in large part from the fact that it is a desktop runtime. He trusts server-side and thin-client environments. Of course, Java and Adobe AIR are also desktop runtimes. All of them can run in a browser, but that doesn't always mean what they'll be used to write is "thin". Given that CoH itself is a fairly fat C/C++ Windows client that does tons of CPU/GPU-intensive work locally, I can't see anyone writing an installer for it that relies on the runtimes that Snow Globe trusts, barring Flash. (And I don't really trust Flash, though Adobe has made big efforts to improve its security.)
If CoH itself was a browser-based HTML5/WebGL application, all this would be different. In that scenario, it shouldn't even need an installer.
Blue
American Steele: 50 BS/Inv
Nightfall: 50 DDD
Sable Slayer: 50 DM/Rgn
Fortune's Shadow: 50 Dark/Psi
WinterStrike: 47 Ice/Dev
Quantum Well: 43 Inv/EM
Twilit Destiny: 43 MA/DA
Red
Shadowslip: 50 DDC
Final Rest: 50 MA/Rgn
Abyssal Frost: 50 Ice/Dark
Golden Ember: 50 SM/FA
At the same time, it's definitely not a "thin client, because everything serious that it does, like patch our game, it does 100% locally on our desktops.
|
And I agree with you that putting such an app in the browser using things like AIR is probably more of a pain for the developers than just letting it be a stand-alone application.
|
Air apps are mostly stand alone desktop applications. For instance, take tweetdeck for an example. It can be a desktop app, an iPhone app, an Android app, or an add-on to Google Chrome. And they are currently testing out Tweetdeck Web. It started as a stand-alone (no browser) desktop app though.
Where Air (or Java) shines is that there is ONE code base to take care of for both Windows and Macs. It also helps the Linux users because the same code works for them too.
Snow Globe's objection to .NET seems to stem in large part from the fact that it is a desktop runtime.
|
I trust cross platform environments more than environments that are exclusive to one platform.
Given that CoH itself is a fairly fat C/C++ Windows client that does tons of CPU/GPU-intensive work locally,
|
At any rate, I'm not going to derail this thread further with this topic.
Triumph: White Succubus: 50 Ill/Emp/PF Snow Globe: 50 Ice/FF/Ice Strobe: 50 PB Shi Otomi: 50 Ninja/Ninjistu/GW Stalker My other characters
The launcher could be written in C/C++ and have a quarter of the footprint of the current launcher. It would be cross-platform as well. Given the previous launcher lasted nearly 7 years. Would a native app be better than a cross-platform app? Sure. However that means multiple sets of code to maintain.
|
Manga @ Triumph
"Meanwhile In The Halls Of Titan"...Titan Network Working To Save City Of Heroes
Save Paragon City! Efforts Coordination
Um, so does Air Applications. Air apps do not run through a browser. Yes, it does have a runtime. However the runtime is not OS-specific in the way .NET is. It functions more like Java (which is also cross-platform).
|
Again, you seem to have the misconception that Air Apps are browser apps. They are not. Even Java doesn't require a browser to operate in. |
Where Air (or Java) shines is that there is ONE code base to take care of for both Windows and Macs. It also helps the Linux users because the same code works for them too. |
I am not familiar with AIR's APIs, but I'm willing to bet it's better about this.
My main objection to .NET is the fact that it is so closely entrenched in Windows. Also I hate all the bad programs made with Visual Basic that never seem to be stable (or fast). |
Also, .NET is not a "VB" library. It's a language agnostic API library that runs in VM concceptually similar to Java's JVM, which happens to be able to front-end a number of languages. (JVMs can too - see Scala.) I think VB is a pretty terrible langauage too, but .NET is not VB.
I trust cross platform environments more than environments that are exclusive to one platform. |
The launcher could be written in C/C++ and have a quarter of the footprint of the current launcher. It would be cross-platform as well. |
Writing the launcher in some managed runtime was the right, practical choice. Choosing .NET on Windows was a reasonable choice, given that CoH is primarily a Windows application, almost certainly with a predominantly Windows install base.
I'll bet you money that the Objective C code used on the Mac can't be cross platform, because it probably uses Mac-specific libraries. If you compile it for Windows, you have to use something like gcc, and you don't have access any more to any of the MacOS graphical libraries, which have no Objective-C equivalent available on Windows that I am aware of. So while it's probably leaner, it's probably not cross platform at all.
Really the only runtime we've talked about that sounds like it would work well cross platform is AIR. An AIR app is still going to have a relatively large footprint, and AIR has some of the same history of insecurity .NET does. (For a while I got security updates for my AIR runtime almost weekly.) That leaves that it's better simply because its cross-platform, which I don't argue. Why didn't they write it in AIR? I don't know, but I consider it likely that it was easier to find a .NET developer faster.
So, let's summarize. You have argued that you hate the launcher, and part of your hate for it is based on it being a .NET application. You've given a number of reasons for this, ranging from its footprint to its (in)security, but the truth is that all these things apply to all the other managed runtime languages. Writing it in a manged runtime language is arguably the sensible choice for any development shop that doesn't want to be debugging the thing constantly. (Note - depending on which version of Objective-C they're using, it may provide them some of these benefits despite being based on C/C++.)
So if the right choice from a practical perspective is to use a managed runtime, the the only valid complaint you've made about the launcher is that using .NET means it's not cross-platform. It looks to me like the only serious contender here was probably AIR, and it was probably just a practical matter that .NET developers are easier to find than AIR ones. Whether Objective-C developers are easier to find than AIR ones, I can't say for sure, but given that you can use Objective-C to write iPhone/iPad apps, it wouldn't surprise me.
Blue
American Steele: 50 BS/Inv
Nightfall: 50 DDD
Sable Slayer: 50 DM/Rgn
Fortune's Shadow: 50 Dark/Psi
WinterStrike: 47 Ice/Dev
Quantum Well: 43 Inv/EM
Twilit Destiny: 43 MA/DA
Red
Shadowslip: 50 DDC
Final Rest: 50 MA/Rgn
Abyssal Frost: 50 Ice/Dark
Golden Ember: 50 SM/FA
I'll bet you money that the Objective C code used on the Mac can't be cross platform, because it probably uses Mac-specific libraries. If you compile it for Windows, you have to use something like gcc, and you don't have access any more to any of the MacOS graphical libraries, which have no Objective-C equivalent available on Windows that I am aware of. So while it's probably leaner, it's probably not cross platform at all.
|
The code itself is mostly cross-platform, with a few differences (that's how Apple makes iTunes). The article doesn't cover graphical elements, so I will; they are completely separate from the code, and called Interface Builder objects, which are then linked to the code. So they can be eliminated and replaced with Windows elements if needed.
But that's all less important than this: The Mac NCLauncher has been demonstrated to work. Whatever motivation NC had for making the Windows version in .NET, it's kind of silly to keep it there, maintaining two separate code bases, when they have independent code they can now use, and can eliminate a dependency (and a source of problems with people who can't get it to work) while they're at it.
Manga @ Triumph
"Meanwhile In The Halls Of Titan"...Titan Network Working To Save City Of Heroes
Save Paragon City! Efforts Coordination
i'm just going to chime in here also as a Linux user. i love CoH, been following the game since 2001.
i'm very disappointed at this turn of events. it's a sharp turn from the way Paragon has traditionally dealt with their customers, which was to communicate with us and work with us to get the best gaming experience for everyone within reason.
i understand that Linux has never been supported, but that didn't stop the devs from, at one time, communicating with the WINE community and Codeweavers to try and help get CoH running under WINE.
it seems like this heavy-handed change over to the NCSoft launcher is done without real concern for the experience of the playerbase and all those having problems, not just on Linux, but also on Windows and on the almost over-looked Mac platform.
it's a trend that concerns me and is showing a growing distance between the devs and the players.
i hope that i am wrong, and i hope that in the future a more universal method for launching the game will be implemented.
until that time, i'm afraid i must cancel my subscription.
take care, and enjoy the game.
You could patch using VMWare for Linux or something similar, and then launch CoH using the command line between patches.
Manga @ Triumph
"Meanwhile In The Halls Of Titan"...Titan Network Working To Save City Of Heroes
Save Paragon City! Efforts Coordination
Outside of a few websites (that I've made myself) needing to be tested, I don't run Internet Explorer. I've have had too many security problems with IE compared with every other browser I've used.
|
My new Youtube Channel with CoH info
You might know me as FlintEastwood now on Freedom
thanks Cuppa, but i won't buy Windows. also, the command to skip the updater and launch the game directly doesn't appear to be working for myself and others at this time.
|
It ends up being much cheaper.
I admit, it is few more hoops to jump through than I would like for a game... But it is an option.
EDIT to add:
One thing I've noticed, espicially lately, when it goes to systems coming into my work with virus infections. 1 maybe 2 out of every 10 systems only use IE as their browser.
Personaly I use IE8, chrome and Firefox in XP mode to test my websites for viewing compatability.
V-Tronix - Angry Angels
V-Tron Elec/EM - V-Tron X EM/EA
To Build a Better Hero #53098 [Newly edited and looking for Feedback] - Renegade Robots: V-Tron's Task Force # - A Summer Song and A Winters Tail #104106
No problem. The dude was talking like he was using IE6 and thought IE was still garbage.
I use FF mostly and Chrome now and then.
My new Youtube Channel with CoH info
You might know me as FlintEastwood now on Freedom
Ok so I dual box on my rig and use the command line after the direct link to coh.exe -uskin 2 -proeject coh -fullscreen 0 -maxactivefps 2
Would I place this in the extra command parameters of the ncsoft launcher for city of heroes?
Man if that doesn't work ncsoft will have to kiss my other accts sub goodbye.
The socially engineered malware used in the NSS Labs report came from instant messages, spam emails and dodgy social network posts; the malware was also targeted at European users, as Eurostat mentioned that nearly 33% of EU users were victims of malware infections in 2010. Also, while the report does reveal Internet Explorer 9 is the best at preventing unwanted malicious software from being installed, it comes at the cost of a higher-than-average false positive detection rate, something that would infuriate a lot of advanced users. |
From page 14 of their report (Test procedures):
Exploits containing malware payloads (exploits plus malware), also known as clickjacking or driveby downloads were excluded from the test. |
Again, from page 14 of their report (Test procedures):
Malicious URLs targeting European users were identified and selected for inclusion in this test. European users are defined as individuals residing within Europe, including: Austria, Belgium, Denmark, France, Finland, Germany, Greece, Hungary, Ireland, Italy, Netherlands, Norway, Poland, Portugal, Russia, Spain, Sweden, Switzerland, Turkey, and the United Kingdom. Thus the domain that malware resides upon can be anywhere in the world as long as the target is an individual within Europe. Conversely, just because a malicious URL resides on a European domain does not mean that it is targeting a European user. The ultimate determinant of whether or not a malicious URL was included in this test was its participation in a malware campaign targeting European users. Malware traps were setup in specific languages; URLs were only included when the campaign was in a relevant European language. Lastly, just because a malicious URL was included in a campaign targeting European users does not mean that the URL was not used in other campaigns targeting users from other regions. |
NSS has only been around for the last 3 years, not really long enough to claim any credibility, in fact I'd trust Arcanaville's opinion more than that site. I say this because I've looked at their partners.
Always at the forefront, NSS Labs augments its substantial in-house tools and intellectual property with best-of-breed security analysis solutions through numerous industry technology partnerships. These relationships provide us and our customers with access to leading-edge products and services. Whether it is a customized threat feed, vulnerability scanner or protocol fuzzer, our customers have the advantages of the entire industry behind them. |
TELUS The Vulnerability Research Service (VRS) from TELUS provides security product vendors with timely, in-depth engineering analysis on the top five to eight security vulnerabilities that emerge each week. www.telus.com |
Also, about the website where you linked to:
Neowin runs under the slogan "Where unprofessional journalism looks better." |
Oh, an FYI, I use IE 5, 6, 7, and 9 (on various machines). For my personal browsing, I mostly use Chrome these days, followed by Firefox. I used to use Opera, but haven't in a while now.
Triumph: White Succubus: 50 Ill/Emp/PF Snow Globe: 50 Ice/FF/Ice Strobe: 50 PB Shi Otomi: 50 Ninja/Ninjistu/GW Stalker My other characters
Just cause my comment seems to have started the thread tangent the qualities of the .NET framework, I have to thank UberGuy for arguing my point better than I could.
My point of view is as a professional windows developer for the last 7-8 years. I've worked on several popular programs that you may have even used but am not comfortable mentioning here. Currently I write software used by the majority of the largest poultry and swine production companies.
For cross platform things, no .NET isn't the way to go. In my experience though, if you're writing something that is supposed to run purely on windows, and you're doing it in c/c++ only, you're wasting valuable development time compared to what you could do properly utilizing the APIs. At this point in time, with the speed of processors and the available memory, the benefits of only using C/C++ and ignoring the heavier stuff in the .NET framework diminish greatly. Especially with .NET 4.0, the benefits from using it and the speed of development greatly outweighs those benefits for smaller programs, especially ones that aren't the focus of your company, like NC Soft. They're into making the game, not a launcher for the game. The launcher is a tool, not the point of the game.
In a perfect world they would have extra resources to make a perfect launcher that worked for everything, however since their main focus is probably not a launcher for the games and they don't want to spend a lot of time on it in sacrifice on game development, then tack on the majority of the business is from windows users, then next mac users, and technically they don't support linux, creating 2 simple programs utilizing .NET for windows and objective C and cocoa for the mac could VERY easily make sense over going with other options.
While programming ideals are great and everything, sometimes the extra effort it takes to go that route doesn't outweigh benefits of spending less and getting it done quickly by going the less ideal route to work for 99% of the cases, especially when money, business, and customers are involved.
Where to begin?
The NSS Labs' test is about phishing, not other avenues of exploits. From page 14 of their report (Test procedures): So they were deliberately excluding exploits. Again, from page 14 of their report (Test procedures): They were only targeting social engineering sites that targeted Europeans. NSS has only been around for the last 3 years, not really long enough to claim any credibility, in fact I'd trust Arcanaville's opinion more than that site. I say this because I've looked at their partners. Well, I know one of their partners: TELUS is a phone company. Also, about the website where you linked to: This is from neowin's website: http://www.neowin.net/credits/ Oh, an FYI, I use IE 5, 6, 7, and 9 (on various machines). For my personal browsing, I mostly use Chrome these days, followed by Firefox. I used to use Opera, but haven't in a while now. |
IE9 isn't as massively insecure as you made it sound. I just grabbed a link to the latest article I remember reading on the subject. I don't want to go digging for more because I think you will have to agree with me that IE is nowhere near as bad as it used to be.
My new Youtube Channel with CoH info
You might know me as FlintEastwood now on Freedom
The code itself is mostly cross-platform, with a few differences (that's how Apple makes iTunes). The article doesn't cover graphical elements, so I will; they are completely separate from the code, and called Interface Builder objects, which are then linked to the code. So they can be eliminated and replaced with Windows elements if needed.
|
On the Mac, those widgets come from Apple, via the OS's GUI APIs. Certainly Windows has GUI APIs, but building those into something nice looking (edit: using C/C++) is not trivial. Maybe it's not trivial on the Mac either, though I'd be a tad surprised if that's the case. But just because they did it once for the Mac doesn't mean they would to re-engineer the (Mac) interface on Windows. I could easily see maintaining a separate .NET codebase being cheaper.
But that's all less important than this: The Mac NCLauncher has been demonstrated to work. Whatever motivation NC had for making the Windows version in .NET, it's kind of silly to keep it there, maintaining two separate code bases, when they have independent code they can now use, and can eliminate a dependency (and a source of problems with people who can't get it to work) while they're at it. |
The core business logic of the app I do speculate could be common with comparatively little effort. It's the UI I suspect is the deal breaker.
Blue
American Steele: 50 BS/Inv
Nightfall: 50 DDD
Sable Slayer: 50 DM/Rgn
Fortune's Shadow: 50 Dark/Psi
WinterStrike: 47 Ice/Dev
Quantum Well: 43 Inv/EM
Twilit Destiny: 43 MA/DA
Red
Shadowslip: 50 DDC
Final Rest: 50 MA/Rgn
Abyssal Frost: 50 Ice/Dark
Golden Ember: 50 SM/FA
I have a two by four in my office that is even more secure than IE8 at surfing web sites, and only slightly less useful.
[Guide to Defense] [Scrapper Secondaries Comparison] [Archetype Popularity Analysis]
In one little corner of the universe, there's nothing more irritating than a misfile...
(Please support the best webcomic about a cosmic universal realignment by impaired angelic interference resulting in identity crisis angst. Or I release the pigmy water thieves.)
IE is totally not usable eh? Context seems to be missing. Also, the surprise comment was a reply to him, if me quoting his comment wasn't clear enough, and not to anyone else really.
I don't know why I even jumped into the convo, as like all of you I never use IE, but the guy was way, WAY off on thinking it is an insanely insecure browser (like it used to be.)
My new Youtube Channel with CoH info
You might know me as FlintEastwood now on Freedom
I don't know why I even jumped into the convo, as like all of you I never use IE, but the guy was way, WAY off on thinking it is an insanely insecure browser (like it used to be.) |
http://www.acidtests.org/
http://forums.whatthetech.com/index.php would beg to differ. Internet Explorer is still the number 1 attack vector for malicious coders looking to compromise an installation of Microsoft Windows. |
My new Youtube Channel with CoH info
You might know me as FlintEastwood now on Freedom
Mostly because nearly every single security feature in IE8 (and IE9) blocks so many non-malicious activities that I end up turning them all off and losing their benefits anyway. And even then there are things I want to do that I sometimes cannot do because IE8 tells me I can't.
That's just the security side. That doesn't count all the ways IE does things in a completely different way than everyone else, and that way is dumb, and Microsoft refuses to change it. Like FTP cwd root, which I still run into on a regular basis.
True story: the last major rollout I did of IE8 was specifically for a customer that didn't want to ban web browsing in their organization, but didn't really want people browsing a lot. IE8 turns out to be fantastic for that purpose.
Its actually very easy to be perfectly secure: just don't let users do anything. The hard part is being secure while still allowing users to function. IE used to be the browser that let everything happen, and now its the browser that lets nothing happen. In the security space, that's considered a trivial improvement, comparable to the difference between an unpatched computer and an unpatched computer that is turned off.
[Guide to Defense] [Scrapper Secondaries Comparison] [Archetype Popularity Analysis]
In one little corner of the universe, there's nothing more irritating than a misfile...
(Please support the best webcomic about a cosmic universal realignment by impaired angelic interference resulting in identity crisis angst. Or I release the pigmy water thieves.)
Most infections come from phishing attempts when it comes to browsers - I'm surprised you haven't noticed that. You were talking as if you had been helping to take care of these issues.
|
IE9 isn't as massively insecure as you made it sound. I just grabbed a link to the latest article I remember reading on the subject.
|
I don't want to go digging for more because I think you will have to agree with me that IE is nowhere near as bad as it used to be.
|
Right, I knew the graphical elements were separate. But what do you replace them with? What's the equivalent on Windows, and how maintainable is it? Who produces commercial (i.e. supported if you find a bug) graphical widgets for Windows C++ applications these days? (That may sound snarky, but it's not - it's a serious question.)
|
I've used CBuilder in the past, when it was owned by Borland (I still have a copy of 4 professional). It worked great at doing rapid window applications. However I've since moved from desktop to web programming.
I'm actually required to think professionally about things such as browser security, and the only thing I'm usually doing with IE8 is downloading another browser with it.
|
It is still a insanely stupid program to use.
Triumph: White Succubus: 50 Ill/Emp/PF Snow Globe: 50 Ice/FF/Ice Strobe: 50 PB Shi Otomi: 50 Ninja/Ninjistu/GW Stalker My other characters
Blue
American Steele: 50 BS/Inv
Nightfall: 50 DDD
Sable Slayer: 50 DM/Rgn
Fortune's Shadow: 50 Dark/Psi
WinterStrike: 47 Ice/Dev
Quantum Well: 43 Inv/EM
Twilit Destiny: 43 MA/DA
Red
Shadowslip: 50 DDC
Final Rest: 50 MA/Rgn
Abyssal Frost: 50 Ice/Dark
Golden Ember: 50 SM/FA