Live data from Hacker News

Microsoft introduces Universal Windows apps

wmpoweruser.com

121–130 of 187 posts

Re: Microsoft introduces Universal Windows apps

#121
post #119

Earlier quoted context omitted.

No it's rock solid underneath. The TCP stack hasn't been a 32-bit driver since XP. NTFS has been modernised already: http://en.wikipedia.org/wiki/ReFS The registry is fine - it's people pissing around in it that break it. Win32 - haven't touched it for years. Driver model: not my problem. Mavericks is a crime compared to windows 8.1. I use both, regularly. It's virtually impossible to use efficiently with a keyboard…

I should've been way more clear about my gripe with the Windows TCP/IP stack. Why the hell does the TCP/IP stack eat itself? No other OS I've ever used has the nuttiness that is netsh winsock reset as a regular troubleshooting step when diagnosing network connectivity issues. I was long under the impression that the reason why that kept happening was that the NT kernel didn't have a robust TCP/IP stack of its own and…

None of the "problems" of which you speak are actually mainstream problems. It's perfectly possible to hose your network stack in any OS. Just don't do that and you'll be fine.

USB drivers, sound drivers, printer drivers, web cam drivers, etc etc, are all using user-mode drivers since Vista. They cannot crash your system. Similarly, graphics card drivers use a special model that means they can auto-restart if they were to crash; which as it happens is exceptionally rare and often resolved by upgrading the driver.

I've used Windows ever since it first got a Registry (95) and it's never corrupted on me, ever.

I lol'd at the "or improving the driver model?", as though there is ANY mainstream OS out there with a better more flexible and stable driver model than Windows has today.

You've basically dug up a load of non-issues, fictional issues and historical issues and portrayed them as relevant issues in the world of Windows today. They aren't.

Re: Microsoft introduces Universal Windows apps

#122
post #118
post #92

Earlier quoted context omitted.

Show me where in the ANSI standard it says this is illegal. Implementation details do not matter. The Microsoft C compiler will compile a ANSI C89-conforming program into a runnable executable on Windows. The rest is undefined. And while we're on implementation details, please note that most UNIX platforms do not start at main either. Most platforms include some soft of crt0 that must be linked which contains the rea…

Come to think of it, I don't think I've used any platform where main() is the real entry point to the executable. On Linux the real entry point is _start, all of the bare-metal embedded stuff I've touched does a whole bunch of hardware setup in crt0 before it calls main(), etc...

main() is the entry point function in newer OS X versions. Why ship crt0 in everything when you can put it in dyld?

Re: Microsoft introduces Universal Windows apps

#123
post #106
post #58

Earlier quoted context omitted.

The amazing thing is that you can potentially write all your code in C and have backend/frontend logic for the web, Windows, Windows Phone, OSX, FreeBSD, OpenBSD, Tru64, VAX, Arduino, Linux Kernel, Windows Kernel, Mach, Hurd, and practically every processor or operating system ever built, and even iOS/Android (via Xamarin). Wow. You can even link to and reuse that code from languages such as: C++, C#, Java, Ruby, Per…

> he amazing thing is that you can potentially write all your code in C and have backend/frontend logic for the web, Windows, Windows Phone, OSX, FreeBSD, OpenBSD, Tru64, VAX, Arduino, Linux Kernel, Windows Kernel, Mach, Hurd, and practically every processor or operating system ever built, and even iOS/Android (via Xamarin). Wow. Have you ever done C development like this, ever in your life? I did. Between 1994 and 2…

The only portable GUI code that I've ever seen work somewhat reliably is HTML/CSS.

Everything else either implements a 3rd GUI, Swing, et al, or looks weird on a few of the platforms, GTK.

Oddly enough the best cross-platform lib I've seen, Qt, is written in C++.

C certainly isn't the be all and end all, however, it's far more portable, reusable, and linkable than C#.

Re: Microsoft introduces Universal Windows apps

#124

Earlier quoted context omitted.

And significant parts are written in Assembly as well. But Assembly isn't the "OS Language" of either Linux nor OSX :-p What I mean by OS Language, is the language that interacts with core OS Libraries. The OS Language of Android is Java. iOS is ObjC. OSX core is either ObjC or C. Linux is definitely C based. (ioctl) Microsoft is either C++ or C#. (DirectX, Ribbons, etc. etc. are behind COM interfaces that are most e…

If nothing else, OS X's I/O Kit API is C++ish (it's 'Embedded C++').

Wow, is that thing really embedded C++? Bjarne always said that embedded C++ deserved to die if it wasn't already dying, mainly because it appears to remove all the useful bits of C++ to make it some static-typed-only inheritance mush put on top of C, as I understand (most likely wrong).

Re: Microsoft introduces Universal Windows apps

#125
post #58

Earlier quoted context omitted.

The amazing thing is that you can potentially write all your code in C and have backend/frontend logic for the web, Windows, Windows Phone, OSX, FreeBSD, OpenBSD, Tru64, VAX, Arduino, Linux Kernel, Windows Kernel, Mach, Hurd, and practically every processor or operating system ever built, and even iOS/Android (via Xamarin). Wow. You can even link to and reuse that code from languages such as: C++, C#, Java, Ruby, Per…

Have you ever actually used C in a real project? I can't seem to get away without using any compiler specific constructions, much less operating system specific call routines. There isn't even a Boost for C. Honestly, I'd be surprised if you actually knew C with a statement like that.

Have you ever tried to get C# code deployed on Linux, OSX, and Windows?

You end up at exactly the same point you did with C, except now you have 100-500 MB of garbage to haul around with your application.

Cross platform dev and deployment is hard, Java and C# just push the work somewhere else while adding garbage that gets in the way.

If you want to make GUIs for iOS,Android,Windows,OSX, and Linux use HTML/CSS/JS.

If you want to process data on iOS,Android,Windows,OSX, and Linux use C/C++, using only the std C/C++ libs, or a portability library.

Re: Microsoft introduces Universal Windows apps

#126
post #80

They need a funky catchphrase, how about : "write once, run anywhere"

Think pure thoughts. :) (for those who don't get the reference: https://www.youtube.com/watch?v=bGX7N-CoaPo )

I'm resisting saying Write once, debug everywhere. This sounds cool, but the road to this hell has been littered with many failures.

Dammit, there goes my resistance. Which apparently is futile. I'll show myself out.

If this does work its a cool things. Just microsoft needs to make c# and the .net framework open source and actually cross platform. Mono is a non starter for a lot of places.

Re: Microsoft introduces Universal Windows apps

#127
post #56
post #51

Earlier quoted context omitted.

I tried Keepass2 with mono on Linux and it's pretty slow and unnatural UX experience. Much like running Wine. On OSX Keepass2 mono just froze constantly and looked weird. I've had similar experience with other cross-platform apps. Total cross-platform is a pipe dream. Just like Java or more recently HTML5/JS cross-platform mobile apps, they are almost always a half-baked solution compared to proper native OS apps. Th…

I think Qt does it decently, as far as the desktop platforms are concerned. I mean look at something like Origin or the Battle.net desktop app.

I would also say that wxWidgets makes it pretty easy, particularly as you have the source. I know there is a mass of #defines in it etc. but I have found it very useful and reliable across the 3 major platforms (Win, Linux, Mac). And it renders natively on them, unless you force wxUniversal (which does its own rendering of controls, like Qt does). I would even argue that Qt does a worse job of making stuff look native, particularly on Mac OSX; wxWidgets controls are native on Mac OSX, as underneath it is Obj-C mm files everywhere.

Re: Microsoft introduces Universal Windows apps

#128
post #58

Earlier quoted context omitted.

The amazing thing is that you can potentially write all your code in C and have backend/frontend logic for the web, Windows, Windows Phone, OSX, FreeBSD, OpenBSD, Tru64, VAX, Arduino, Linux Kernel, Windows Kernel, Mach, Hurd, and practically every processor or operating system ever built, and even iOS/Android (via Xamarin). Wow. You can even link to and reuse that code from languages such as: C++, C#, Java, Ruby, Per…

What a well-structured and bullet-proof response. Congratulations, you're now revered amongst your peers and are considerably more employable thanks to your insightful observation. High five! Seriously though: not only is C# a much easier language to learn which includes features and libraries that most developers expect from a modern language, that probably wasn't even what gum_ina_package was "Wow"ing at. To me, th…

Yay!

Just what my iOS app needed, more shitty Windows devs, and dependency injection, or whatever the latest enterprise bullshit is. Why write code that 100 to 200 lines of code that actually work when you could make a giant UML diagram, a bunch of flow charts and write unit tests all day because everything you've ever heard of needs to be an object with a class hierarchy.

The Linux kernel doesn't have unit tests, DI, TLA, etc and works and every ASP.NET app you've ever seen has loads of them yet can barely accomplish anything before crashing / doing something weird?

Customers are gonna be fucking pumped when they find out we've added dependency injection and millions of lines of code that are pointless and unnecessary. Why release memory when you're done with it? Just don't do anything wave your hands and voila you're process is using 200 MB instead of 2 MB, yet it claims to have a 'garbage collector'

Have you ever considered that some people choose the languages and platforms they work with specifically to avoid the anti-patterns commonly found on the platforms and languages they refuse to work with?

Re: Microsoft introduces Universal Windows apps

#130

Earlier quoted context omitted.

If nothing else, OS X's I/O Kit API is C++ish (it's 'Embedded C++').

Wow, is that thing really embedded C++? Bjarne always said that embedded C++ deserved to die if it wasn't already dying, mainly because it appears to remove all the useful bits of C++ to make it some static-typed-only inheritance mush put on top of C, as I understand (most likely wrong).

Yup http://en.wikipedia.org/wiki/I/O_Kit. I mean Embedded C++ is not really a language, any C++ compiler can be turned into an "Embedded C++ compiler" by turning some features off. As to the Bjarne quote, a lot of things that are nice in application development can become tricky when you are closer to the metal.
Post reply on HN