Live data from Hacker News

Porting the Unity Editor to Linux: Stuff I Wish We’d Done Then

natoshabard.com

71–80 of 114 posts

Re: Porting the Unity Editor to Linux: Stuff I Wish We’d Done Then

#71
post #26

Wow, I wouldn't have thought that folks would be sloppy about case, but I guess it makes sense if all one's used to is a case-insensitive system. > Same policy as with our runtime; in order to keep our own sanity, we will officially support Ubuntu Linux. … > Installer will (most likely – it’s one of the things we didn’t do yet) just be a .deb package. I really wish folks would support Debian first, and let Ubuntu sup…

case sensitivity is a classic when porting C/C++ codebases from Windows (I did my fair share). It starts with #include "whyShouldiCAReFoRSENSITivity.h", but for file I/O heavy those are the simple ones...

Re: Porting the Unity Editor to Linux: Stuff I Wish We’d Done Then

#72

Earlier quoted context omitted.

I can totally sympathize, and we'd like to support every distribution. :-( But the simple statistics show that we get the most bang for our buck by supporting Ubuntu because of its desktop market share. The great thing about the Linux community is that it's full if crazy smart people who will go out of their way to make sure stuff is working on their distribution. And of course if something isn't working on your dist…

You haven't been asked to support every distribution, just Debian, and possibly Ubuntu. Please pay attention to this advice. Supporting Debian practically gets you Ubuntu support for free, as well as a number of other popular distributions.

I am going to save this comment for the next time someone asks why more games don't have official Linux support.

Re: Porting the Unity Editor to Linux: Stuff I Wish We’d Done Then

#73
post #66

I'm scratching my head after this article, not really sure if the author really believes in what he's complaining on fully? For me, those are kinda nice "wishes", in that if they happened, the porting team would have less work to do now, sure. But, actually, especially those specific things listed - they sound to me like things, which would be unnecessarily hard and really costly things to do "in the past", assuming…

> 2. No OS #ifdefs >Um;... so... like... what else to use instead?...

You misread. The problem was that it was written in the form of if Windows do this, else do something that only works on OS X. The alternative is an explicit if for OS X, so that when you have a third OS to support you don't have to add that.

Re: Porting the Unity Editor to Linux: Stuff I Wish We’d Done Then

#74
Having switched to OS X about a year ago after years of Linux usage, I can say that personally I really like the case insensitivity OS X has by default. It doesn't whine every time I accidentally (don't) press caps lock. Case sensitive file systems must be the dumbest invention ever. Who is seriously going to distinguish his/her files by capital and non-capital letters? "Test.txt" and "test.txt" should be the same!

Re: Porting the Unity Editor to Linux: Stuff I Wish We’d Done Then

#75
post #18

Earlier quoted context omitted.

I'm new to GUI programming and foreign to both Windows and OSX so please forgive my ignorance. In what way are the native GUIs better? Are they faster/more responsive or do they look better? Which would be more work over the e.g. 1,2 and 5 year period maintaining three guis or one? (Or is QT not quite cross platform so one ends up maintaining three inferior versions anyway?)

They behave exactly the way you'd expect, because they don't attempt to copy the expected behaviour. They define the expected behaviour.

Until your user has your program installed on e.g. mac and windows and now it works differently on each...

This is actually an annoying problem. As a linux user lack of consistency between apps is frustrating but similarly I know people that struggle with changing from mac to windows regularly.

Re: Porting the Unity Editor to Linux: Stuff I Wish We’d Done Then

#76
"The C++11 standard is, ahem, vague in some places and different compilers choose to interpret the standard, well, differently."

I'm a little curious to know what they were doing.

EDIT: Dammit, I should have kept reading, the very next sentence has: " Lots of compilation errors that involve this-c++-template-thingy-with-lots-of-angle-brackets does not match that-c++-template-thingy-with-lots-of-angle-brackets-that-has-a-const-somewhere-in-the-middle."

and personally I would have thought that of course you need the consts to match and it would have been this way for literal decades now.

Re: Porting the Unity Editor to Linux: Stuff I Wish We’d Done Then

#78

Earlier quoted context omitted.

I don't think the problem is having case insensitive file systems, the problem is having both on different platforms. A similar problem as with different endians. If everything were case insensitive, it wouldn't cause issues. While as a programmer, I prefer the level of precision case sensitivity provides, I'm hard pressed to make the case that it is better for an average computer user.

Case insensitivity is a nice way of phrasing "there are these arbitrary mappings between two sets of character codes which are meaningful only to the human being looking at the screen." This only works for ASCII and is complete madness as soon as you consider that any symbol you support for input anywhere in the world can and probably will be used by someone to name their files (try explaining why they can't to an ir…

They don't only work for ASCII. While the majority of writing systems in this world do not have case distinction, some that are widely used do. And arguably it is easier for the user to understand. The people who do trip over it are mostly programmers with the wrong assumptions about how things work and then complaining that things can't ever be simple ...

Re: Porting the Unity Editor to Linux: Stuff I Wish We’d Done Then

#79
post #56

Earlier quoted context omitted.

I can totally sympathize, and we'd like to support every distribution. :-( But the simple statistics show that we get the most bang for our buck by supporting Ubuntu because of its desktop market share. The great thing about the Linux community is that it's full if crazy smart people who will go out of their way to make sure stuff is working on their distribution. And of course if something isn't working on your dist…

Even worse, on Mac OSX some people use case-sensitive file systems. So you’d have to support it anyway.

No, the only sane way is if only the standard OSX config is supported. You can't do all kinds of weird things with your system and still expect it to be supported. As a developer, you want to support as few types of systems as possible, because that's easier and a tiny number of types comprise the great majority of systems. The extreme variant of this is of course console exclusivity.

Re: Porting the Unity Editor to Linux: Stuff I Wish We’d Done Then

#80
post #38

> it’s the place where case sensitivity problems really show up Who made the decision to have case insensitive file systems? If I had a time machine they would be high on the list of people to visit and give a stern talking to.

That crap is so frustrating. Especially since you can't fix it easily when working between multiple file systems. mv: ‘test’ and ‘Test’ are the same file Thanks, mv. Brilliant.

At least NTFS is case-insensitive and case-preserving and renaming with just a case change usually works.
Post reply on HN