Follow Slashdot blog updates by subscribing to our blog RSS feed

 



Forgot your password?
typodupeerror
×

Comment Re:macro assembler (Score 1) 641

The rules exist in C as well, just the enforcement differs. In your average recently developed language, the IDE or the compiler will tell you that you're a bad boy and shouldn't be doing this shit. In C, the compiler will tell you to fuck off and come back when you understand what you did wrong or the system will just shoot your program and put it out of its misery.

Having to figure out what went wrong instead of this tinkerer approach of "let's compile and see what the errors tell us to fix" is a good lesson in writing it right the first time.

I've seen students who learn programming in Java very recently. Their approach has nothing of regular or army, it's amateurish "let's try this and see what happens". It's pathetic that they teach people programming like that, and it explains a lot about what's wrong with software.

Comment Re:one of a kind (Score 1) 641

If you write in the subset of C++ that has these cute features, you're effectively writing C with objects.

I doubt any C++ code compiles to "much faster" machine code than well-written C, but you're welcome to prove me wrong with an actual example.

Comment Re:Just Lie (Score 1) 317

you have totally missed the point.

All my life, yes. The crucial point a lot of us more idealistic people miss is that all those who run countries or corporations whom we think belong into jail do not see themselves as bad people, because ethics is also subjective and personal. Those who are successful in the shark tank of the business world are so, because they've been brought up or trained themselves to the right ethics, the one where screwing over someone is right because you can convince yourself that he's weak and can use the lesson and besides it's the right of the strong people (i.e. you) to lord above his kind.

I implore you to not go down this road, it will destroy you and others in the end.

What's destroying humanity is good people who are unable to pick up a weapon when the bad people attack. In this the sharks are right: If you can't bite, you are prey. Sadly, too many of us have taken a deep sip from the poison well and now our children will have to fight the same fights that our grandchildren already fought, because for example we destroyed the power of the unions by not joining and not creating an IT union.

Comment Re:Marketshare (Score 3, Insightful) 205

Oh so basically you've bounded the debate?

Show me a single argument that's not from either an anarchist or an idiot that explains how to run a country with zero taxation (ignore the tiny minority of countries that can run entirely on oil exports or such, we're talking the general case).

Regardless, you have to explain what "lawful" means.

No, I don't. That word is in the dictionary and its definition is in no way disputed.

I don't care [...] Because morally,

So you're asking me to explain "lawful" only to say that it actually doesn't matter?

Other than 400 years ago, we did it with swords and gallows and dungeons and now we've made it a bit cleaner.

You need to get your head out of your ass and into a history book. The rule of law is at least 2000 years old and while governments have always had the option of force, its actual use is comparatively rare. Especially compared to mob rule. Today, 100 or 1000 years ago - you can clearly see that when the government breaks down, violence and crimes increase dramatically.

Morally, the difference between a "noble" passing a law that he can rape your wife on the first night of your marriage and then take your money for the rest of your life, is exactly the same as changing the US constitution to allow the state to tax in like manner.

Firstly, you really need to study history. While ius primae noctis makes for a great legend, historians today are not convinced it ever actually existed, and even if it did there are no confirmed cases of it ever being actually used.

Secondly, you should explain whether you are ok with the general principle of a society or not. In this context, "society" means that a group of people can make rules for themselves and enforce them. The details (nobility, democracy, segregation of powers, etc.) are unimportant as long as you make a covert argument that basically calls anything except pure anarchy immoral. So please come out of hiding behind phrases and state your position clearly. Do you think that people should be able to form societies and enforce their rules on each other or not?

With a MORAL argument

Humans are social animals by nature.
A society can only function if it can enforce its rules.
Laws are basically moral rules written down.
Therefore, I don't see a principal difference between legal and moral arguments.

The difference is that everyone thinks they understand moral, but few people understand law. And yes, not all laws are codified ethics, that's true. Many are of administrative nature, for example.

Is there no room in this world for morals?

Morals differ, even from person to person. That's why a society needs a common set of values.

anyone who found you could just steal, rape, kill at will?

Look around you. What's happening in Syria and Iraq? What's happening in parts of Africa? Yes, my idealistic friend, this is exactly what happens when government breaks down and societies fail. Sure, it is morally wrong, but it happens.

So in fantasy lalaland, where everyone is perfectly moral and also shares the same morals, you don't need governments, taxation and all this shit. In the real world, where real humans with all their mistakes live, you do.

I won't ask you to describe how a world based purely on morals and without government "interference" would work. Greater minds have failed at that task.

Comment Re:Embedded Systems (Score 5, Insightful) 641

and the people who do use C are not interested either since they tend not to be language fetishists.

This. Half of the newer high-level languages today are just the mental masturbations of someone who either thinks he can make the wheel more round or the result of a "not invented here" mindset. There's so much crap out there forking a perfectly good language because someone thinks it should be a =+ b; instead of a += b;

It's sickening, and a good reason to stay away from all this shit, because five years down the road someone will fork the fork and you can throw all your code away because support and development just stops as all the ADD kids jump at the new toy. That'll never happen with your C code.

Comment Re:C is very relevant in 2014, (Score 2) 641

Perhaps C's greatest weakness is that it places too much trust in the coder, where other languages don't.

I consider this its greatest strength. If you want a training wheels language, there are probably 200 to choose from. If you want a language for adults, there aren't all that many choices.

Comment Re:C++ is C (Score 1) 641

I thought the same and then I started to use OO a lot in PHP.

If you come from C, don't go the "OO is my religion, deliver me from functions" path. Write functional code and use objects in it where it makes sense. I've written computer games as a hobby for most of my life, and in that context you have a lot of natural objects. The player, the weapon, the level, the building, the city, etc. etc. you also encounter inheritance very fast.

I still write largely functional code and my objects are basically containers. It works great for me, even though some pure OO extremists would cringe at it.

I don't see OO as a paradigm. It's a tool, a method, and it mixes nicely with others if you do it right. I'm very thankful to PHP for their approach which offers you a full OO model, but doesn't force it on you.

Comment Re:macro assembler (Score 2) 641

And every good butcher should be a great farmer, every good soldier an expert weapon maker, every good driver a world class mechanic ;)...

Strawman argument.

The OP doesn't argue that people whose profession is different from programming should be able to program. He argues that a good butcher should be able to kill with a mechanical tool, not just the fancy bolt gun the slaughterhouses have now. That a good driver should be able to drive stick-shift even if his car has automatic.

And I agree. When I was in university, I tortured students with proper input handling in C until they got it, until they understood that unless they check their input conforms to whatever specification they make for it, instead of just checking the exceptions they can think of, I will always find a way to break their program by, say, keeping my finger on the "a" key for 3 seconds and overflowing their buffer. I'm pretty sure they're not the ones making web applications less secure today because lazy programmer doesn't do form validation.

Learning the basics of programming on a not-holding-your-hands platform makes you understand what's going on and what can go wrong. If you learn programming on a training wheels framework, your programs will almost certainly be subject to all kinds of injections, overflows and other attacks whenever the framework doesn't protect you 100%, or requires you to make an explicit call to get those benefits.

C is a great language to learn programming. Yes, you'll swear a lot and you'll hate the computer, your teacher and the world in general, but when you come out of that bootcamp, you're a marine and not some third-grade wannabe trooper with a 10 minute life expectancy once the shit hits the fan.

Comment one of a kind (Score 1) 641

If you need to be efficient, you write in C, end of story. That's why.

C++ and all the other languages there simply have too much overhead and give you not enough control over what's actually happening.

Assembler isn't worth the major hassle for the tiny improvement you get over C.

C, however, is at this unique point between the bare metal and the high-level abstractions where the trade-offs are perfect. You get just enough abstraction to be a) hardware-independent and b) can use a high-level programming language while remaining close enough to the machine that you can be really, really efficient, fast, short, the whole nine yards.

Comment Re:Marketshare (Score 2) 205

"Steal from the right people" is still worse than "don't steal".

Propaganda.

Stealing is the unlawful taking of someone else's property. There, I even highlighted the important word for you. There are many good reasons for lawfully taking someone's property or rather: Small parts of it. Unless you're a hard-core anarchist, you have to solve the problem of how to keep the government (small or big) working at all, and sooner or later your solution will be taxes, even if you call it by a different name.

The major disagreement between political factions is how much to tax, who to tax and what to spend the money on, but never about taxation itself.

Comment not so free (Score 1) 205

he vast majority are freeriders that contribute nothing to their development

For a lot of software, this simply isn't true. The millions of installs that don't pay a developer to work on the code still provide test environments, installed base to make the product popular and various other advantages. Very few of the highly successful Free Software projects would be where they are today if only people who contribute to their development had been allowed to use them.

Comment Re:Just Lie (Score 1) 317

However, the best reason to not lie is that it is not ethical. ALWAYS do the ethical thing. Stay above the fray, tell the truth and get the certifications for real. It may take longer and be harder, but in the long run it will be worth it.

Really bad advice.

You'll feel yourself superior and "above the fray", but in reality everyone who understands the business world better will pass you by in both pay and position.

I say that as someone who's listened to this bad advice all his life. Your reasons for not lying or not fucking over your boss or co-workers should be practical, not philosophical. You shouldn't lie because the damage if you're found out is bigger than the advantage you gain. For certifications, in most jurisdictions a lie on the details that got you the job is sufficient grounds for legal immediate termination at the least. That looks really bad on your CV.

Comment depends (Score 2) 317

So my question is: are any certifications now worth it?

Depends on who pays for them.

Your current employer, or the unemployment agency or someone else? Go for any and all you can get.

You yourself? Check the job offers of jobs you care about. Make a list of the certifications that are mentioned there and check the top two or three (most mentionings). Do them if they are affordable.

Certifications are largely a scam or a shakedown, take your pick. They teach you nothing, and they check your ability to memorize test questions more than they test your actual abilities. I've got the test papers from CISM still here, and while my 15 years of IT security experience helped me pass it almost without learning, any buffon who's never even seen a computer could've passed the test by simply learning by heart the contents of one folder.

Comment abuse (Score 2) 127

The problem here is one of marketing. The parties interested (read: Telcos) are big corporations with millions of PR budgets. They've managed to create terms like two-tier Internet and "fast lane" and all the other PR bullshit. They've created a story to sell, that what they want would be good and has many advantages. It's really text-book PR work.

Some people didn't see the thing being built and are falling for the smoke and mirrors. The simple truth they need to be told is that yes, the story sounds compelling, maybe even convincing. But the reality is that anything that can be abused for profit will be abused for profit, and it will look nothing like the story they're being sold now.

Slashdot Top Deals

Marriage is the triumph of imagination over intelligence. Second marriage is the triumph of hope over experience.

Working...