Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!


Forgot your password?
DEAL: For $25 - Add A Second Phone Number To Your Smartphone for life! Use promo code SLASHDOT25. Also, Slashdot's Facebook page has a chat bot now. Message it for stories and more. Check out the new SourceForge HTML5 Internet speed test! ×

Comment This reality has a conservative bias (Score 1) 311

Hate to say it, but people don't seem to realize that health care costs money, and it may even require not financially covering certain treatments, like organ transplants, rare diseases, and MRIs for diagnosis ass-covering. If the American public cannot concede to common sense, no form of nationalized health insurance program will be fiscally plausible.

Comment Re:I worked on a C++ device driver (Score 2) 315

That's the main problem with C++. It is incredibly hard to know what is happening behind the scenes (will this object allocate memory or not?), so one has to be very careful in performance-critical parts.

Its more difficult to know what's happening below the source code level, because C++ is conceptually more abstract than C. But ANSI C is an abstraction as well. Its not like the days of K&R C, where you knew what the parameter passing code looked like in assembler. And C++ being a higher level of code abstraction than C is a good thing. If you know how to code C++, you avoid all the problems with loose pointers, and memory leaks, and human implementation errors prevalent with C.

(will this object allocate memory or not?)

That is a horrible example. You always should know when an object allocates memory, because C++ doesn't intrinsically do automatic memory allocation and garbage collection. You have to write that in with constructors and destructors. Yes, the programmer may not do that properly, but it shouldn't be a problem to debug when it occurs.

And then using a C++ subset you know performs well, or just programming in C is the way to go.

If you're a mediocre programmer, you will be more likely to produce a working program in C, but it will be also more likely to contain bugs. That does not mean C is a "better" language for real-time system code than C++.

If you just want a program that runs well and you don't care about the last 30% of performance, you don't need to know as many details of C++,

Again, that is part of the B.S. about C++ being less efficient than C. I already brought up the example of the L4 microkernel. Many windowing and graphics libraries are written in C++, and they don't suffer from a 30% inefficiency compared to a library written in C. If you don't have a mastery of C++, then you're not going to write efficient code in C++; that is true for any language on that level.

Comment Re:Kids these days... (Score 2) 315

It is not worth learning assembly.

You are dead wrong. I wish I had the points to downvote your post.

You are correct that its not worth learning assembly, in order to learn "modern" software development.

What makes learning assembly valuable is that it is the most barebone, lowest level set of instructions that a human can cobble together for a CPU to execute. Every other language involves cobbling together hundreds of CPU instructions which would be magnitudes more inefficient than expressing it in assembler. Because higher level languages are designed for humans to understand what they are instructing the CPU to do, in the desire to increase the output of human programmers, at the expense of actual execution efficiency.

By writing programs in assembler, particularly I/O routines, the human programmer learns how the CPU "thinks". And indirectly, learns to comprehend that all current computers are constructed to the same design specified by Turing back in the beginning. You come to realize that all CPUs work the same way, even though they have different sets of CPU instructions. They're all moving data from storage to memory, memory to register, simple ALU operations in the register, and moving it back to memory and eventually storage.

Most people cannot read a book, and magically implement code or concepts from scratch. They need to write programs, have those programs fail, and learn to figure out why they failed. That way, those programmers learn how to express what they want done to the machine. Learning assembler is learning how the CPU thinks, and how assembler instructions are building blocks to abstractions. Assembler programmers (and to a lesser extent C programmers) really do understand "what the machine is doing".

Yes, once you can master assembler for one CPU platform, you'll probably never need to learn to do it for a different CPU, and probably never need to write assembler again. You learn to code assembler to truly grasp how a set of chips operate to produce the simulacrum that is the personal computer.

Comment Re:I hope this trend continues. (Score 1) 424

What I'd like to see is them say, you want an up or down vote?

Politically, its a waste of time, but more "important", a waste of political capital. To hold a hearing for Garland at this point, is just making the Republican Senate acknowledge they made an egregious error in "stealing" a Supreme Court candidate. They were venal, partisan shitheads to do it in the first place; that isn't going to change anything with them making a meaningless gesture.

McConnell is this idiot, posturing, rationalizing tool that is willing to remove the 60 vote rule for SCotUS confirmations in order to successfully "steal" a SCJ for a generation. He just thinks its "important" that somehow "history" blames the Democrats for removing that rule, when it can only be done by a Senate Majority Leader at the beginning of a session. These are the same idiots that think the Confederacy was a noble cause that had nothing to do with perpetuating the institution of slavery.

So, eliminate the rule requiring a 60 senator majority to approve a SCotUS. The rule only has meaning when the Senate operates in a non-partisan manner in the "interest of the nation"; its obviously incapable of doing so at this point. And I agree, maintain a filibuster of the Gorsuch nomination indefinitely. At very least, that is a gesture where Republicans don't get "everything" they wanted from their SCJ theft. As long as retard McConnell isn't willing to go the nuclear option, the partisan Republicans can't "profit" from stealing a SCJ nomination. Look, with the way Trump and the Congress is operating, the Democrats could have a majority in the House by 2018, and a Senate majority by 2020. Then the Democratic Senate could restore the 60 vote majority rule after passing a censure motion on McConnell as long as he's Senator.

Comment Re:I hope this trend continues. (Score 1) 424

In other words, reasoning not aligned with the cult of globalism.

I'm not agreeing or disagreeing with your statement. The important point is that they aren't raised by parents or taught in primary school to independently evaluate that notion.

People know when they are being fucked over, even stupid ones.

Absolutely. But they (anyone really) still can be manipulated to take a course of action not in their interest.

Comment Re:Goodbye Karma (Score -1, Troll) 470

You don't tell me what my personal medical choices will be, and I will keep my nose out of yours.

Nope, that's not how Jebus wants it. He's full of wrath and fury over those dead little fetuses, (not the birthed ones) and he want moral defectives^H^H^H^H^H^H^H^H^H^H Christians to fight for them! And he rewards his followers with good jobs, nice homes, SUVs, and wealth.

Slashdot Top Deals

If you think the system is working, ask someone who's waiting for a prompt.