Please create an account to participate in the Slashdot moderation system


Forgot your password?

Slashdot videos: Now with more Slashdot!

  • View

  • Discuss

  • Share

We've improved Slashdot's video section; now you can view our video interviews, product close-ups and site visits with all the usual Slashdot options to comment, share, etc. No more walled garden! It's a work in progress -- we hope you'll check it out (Learn more about the recent updates).


Comment: Good ties into FOSS? Battle won (Score 2) 407

by suy (#49173017) Attached to: Ask Slashdot: Which Classic OOP Compiled Language: Objective-C Or C++?

Yes, I know quite a few other languages, but I want to get into a widespread compiled language that has good ties into FOSS. Both Objective-C and C++ fit that bill.

I know plenty of open source applications, from GUIs in Qt and gtkmm to console applications and interpreters of programming languages in C++. The backbone of any Linux distribution is C and C++.

I know 0 packages in my Linux installation that are written in Objective-C. There are some, for sure, but are they widespread? I doubt it.

Comment: Re:Unrelated to Github (Score 1) 148

by suy (#48632085) Attached to: Critical Git Security Vulnerability Announced

This is a flaw in Windows and Mac OS X where they fail to differentiate between two similar but different file names.

Odd, I thought it was exactly the opposite. Linux doesn't interpret the names at all. Only '\0' and '/' (in C/C++ notation) are treated specially by Linux in what can be allowed as file name. The rest is just an array of bytes. Is Mac OS X or Windows the ones that try (and I said try, since I'm not sure they achieve it) to protect the user from security and confusion problems. Is not just case sensitivity, think of pre-composed characters, for example (distinguishing modified+character from character already modified). See the interesting conversation after a Git release, where several developers explain the problems on the normalization that Mac OS X does.

Comment: Re:Ugh (Score 1) 125

by suy (#48556173) Attached to: Unity 8 Will Bring 'Pure' Linux Experience To Mobile Devices

And the source being distrowatch, a website for people looking for a distribution. Maybe it confirms that users of Ubuntu don't want to change distro? Or for people who don't even know what a distro is? Or who don't speak English?

Signed: a Debian user who complained a lot about Ubuntu on several levels.

Comment: Re:C had no real successor (Score 1) 641

by suy (#48556139) Attached to: How Relevant is C in 2014?

And too slow and a failure as an OO language. I mean, even the designers of C++ warn against complex class hierarchies. How stupid is that?

And the designers of Ruby also suggest that you don't create complex class hierarchies. And the designers of Java created interfaces to avoid complex class hierarchies. Maybe the problem are complex class hierarchies, or trying to solve everything with OOP when you should not?

Comment: Re:What system d really is (Score 1) 928

by suy (#48285075) Attached to: Ask Slashdot: Can You Say Something Nice About Systemd?

Odd that of all possible choices, systemd developers chose almost always a way that is exactly the same or very similar to what Debian does. For example, I don't see stuff like /etc/sysconfig, while I do see things like /etc/hostname etc.

Everybody else has /etc/hostname too, sorry to pop your fanspiracy.

Let me quote from the biggest myths:

Now, as it turns out, more frequently than not we actually adopted schemes that where Debianisms, rather than Fedoraisms/Redhatisms as best supported scheme by systemd. For example, systems running systemd now generally store their hostname in /etc/hostname, something that used to be specific to Debian and now is used across distributions.

Maybe the example was too subtle, but for sure there are some things from /etc/sysconfig that are gone from Red Hat, and are substituted by Debian-style configuration.

Comment: Re:What system d really is (Score 1) 928

by suy (#48278525) Attached to: Ask Slashdot: Can You Say Something Nice About Systemd?

Most distros are focusing on system d because they simply do not have the resources to do anything else. This is the sad reality. The Red Hat-isation of the linux world. It's either the Red Hat way or the highway. And most distros obviously are not chosing the highway.

Odd that of all possible choices, systemd developers chose almost always a way that is exactly the same or very similar to what Debian does. For example, I don't see stuff like /etc/sysconfig, while I do see things like /etc/hostname etc.

Comment: Re:Article is stupid (Score 1) 265

by suy (#48133905) Attached to: Ask Slashdot: Why Can't Google Block Spam In Gmail?

Google does an excellent job of catching spam. The submitter's problem isn't that, it's that he's got other numpties giving out his email address and then he's not using the Google-supplied tool (that little "mark as spam" button) to mark unwanted email so that Gmail learns his preferences. Instead, he's Dunning-Krugered together his own solution that barely works.

Submitter's problem is PEBKAC.

Sorry, but I completely agree with the story explained. My previous employer gave me an email address managed by Google Apps. I subscribed and posted to about 3-4 different open source project mailing lists. Obviously that's enough to make your address well known to spammers.

The amount of email in the spam folder was surprisingly high, given that my very personal email address, which has appeared during a decade (not just two years) on online archives of about 20 times more lists, receives a little bit less. But that's not bad. What I found insulting is that they had plenty of false positives. That's the worse kind of error in email filtering: you check your inbox more often, and is not a big deal deleting one additional email a day. But I found email threads of those mailing lists broken when because parts of a thread (just parts of a freaking mailing list thread!) were marked as spam, and was autoexpired (yes, I don't need to check all mailing lists that often). It also marked as spam one reply to an email I sent. A shame.

And yes, I used the "this is not spam" feature, but I got bored. The best I could do was reviewing all the filters to completely skip the spam filtering, which is stupid anyway in many mailing lists that require a legitimate address to subscribe, which yields a very low spam rate (besides the "join me in my linkedin network" that some stupid sent to the whole address book).

Comment: Re:Oh god so what? (Score 1) 193

by suy (#47714241) Attached to: C++14 Is Set In Stone

You were implying that using a subset of C++ features is not practical because you could "write C++ that is not guaranteed to be maintainable by anybody short of a complete master", which is absurd, because only a complete master could write that kind of unmaintainable code. Well, according to your logic and your subjectivity, there are only a small amount of people capable of that feat. And the fact that there are lots of C++ programs and libraries out there that are maintainable proves it.

Comment: Re:Oh god so what? (Score 1) 193

by suy (#47705669) Attached to: C++14 Is Set In Stone

Err, the implication is that you can also write C++ that is not guaranteed to be maintainable by anybody short of a complete master, which even Bjarne says he is not. I think it is fair to estimate that the number of complete C++ masters in the world is in the single to double digits; no more. It may be you can identify another programming language for which that holds true. I don't think I can.

You can not even identify one without resorting to factual mistakes. I'm running every day lots of programs written in C++. A simple search on a linux distro reveal thousands of packages in C++. Is that maintained by those "single to double digits" amount of people in the world? Sure.

Comment: Re:How do you feel about the haters? (Score 1) 427

by suy (#47690013) Attached to: Interviews: Ask Bjarne Stroustrup About Programming and C++

Well, he has given that answer several times. On his FAQ, he says:

"There are only two kinds of languages: the ones people complain about and the ones nobody uses". Yes. Again, I very much doubt that the sentiment is original. Of course, all "there are only two" quotes have to be taken with a grain of salt.

Comment: Re:Is the complexity of C++ a practical joke? (Score 1) 427

by suy (#47689913) Attached to: Interviews: Ask Bjarne Stroustrup About Programming and C++

Any practical example to back it up? Probably there are some cases of that, but the contrary is IMHO more common. One of the most popular C++ library out there, Qt, doesn't make you learn exceptions, and templates are only used for containers, so you rarely see one of those scary compilation errors.

That means that in practice, you see large C++ codebases that are very easy to grasp. At my current workplace, all C++ developers barely understand C++ outside the C subset, and projects work fine from the customer perspective. Do they understand that each time they pass a value to a function they are copying it, and that it can be costly? No, but luckily they are doing that with QByteArray, which is implicitly shared. They don't have to understand the feature. Besides me they don't even know it exists, but it works, and saves the day.

Comment: Re:I find it interesting (Score 4, Informative) 223

by suy (#46258749) Attached to: Plan 9 From Bell Labs Operating System Now Available Under GPLv2

I like the idea how everything is a file etc. That is one reason why I originally became Linux user and now it feels Linux systems have become something totally different by new third/fourth generation "geeks" who don't care anymore about open file system and results are like systemd journalctl.

Funny that you mention that, because systemd exposes lots of features through cgroups and a nice filesystem on /sys. And to use systemd's journal's files, the documentaion already explains that you just open the files, memory map them, and use inotify, a classic notification API on files...

Comment: Re:standard c++ (Score 1) 430

by suy (#45871937) Attached to: Cairo 2D Graphics May Become Part of ISO C++

Is there anything it cannot do?

Garbage collection.

C++ does no garbage collection because C++ developers learn how not to produce garbage in the first place. Use proper mutex lockers, smart pointers or file handles, and you won't leak memory, won't miss freeing locks or file descriptors.

And is not that you need to be a genius to make use of them. Just use, for example, a QFile, or QMutexLocker, and at the end of the scope the resource is freed. Done.

Comment: Re:"So who needs native code now?" (Score 1) 289

by suy (#45763189) Attached to: Asm.js Gets Faster

Umm, anyone who wants their code to not run substantially slower. Seriously, do you front end programmers really think nobody does numerical simulations or other performance-sensitive work? In my line of work, I'd kill for the opportunity to make my code 1.5 times faster!

I'm surprised by your answer at so many levels. First, I thought the guys doing scientific calculations were scientists that many times (not always of course) are only used to Matlab, Mathematica or even Excel. Second, obviously we will need native code, as well as interpreted, functional, and lots of code in domain specific areas (what the heck... I spent this Sunday morning writing in VimL, a language so stupid that can't copy a file without reading the whole contents in memory or invoking system(), but I needed to program in that and there is no way around it).

But the final sentence of the article isn't targeted at people doing heavy lifting. Is an "attack" at Google's Native Client (NaCl). I peeked at NaCl, and you needed a some set up and some APIs to run some native code invoked from the browser. ASM.js is way simpler, since is just a subset of JavaScript, and has much more possibilities of being followed by vendors like Opera or even Microsoft.

Oh, and, I do native code for a living, and while I would kill for making my code faster, my manager would kill for making me finish projects earlier. :-) Native code is awesome, but sometimes dumb languages are more business successful if you can use all your developers in a project, including that 50% that, by definition, are below the average.

Dynamically binding, you realize the magic. Statically binding, you see only the hierarchy.