I first read the only book my small-town high school library had on computers. It had the listing of a FORTRAN II program to (IIRC) calculate the first few digits of pi. I found a book on SNOBOL programming in the library of the large town in my county - I read that cover-to-cover. Then, when a friend three years older than me had his first programming course in college a year later, I had him lend me his intro programming book. I read that cover-to-cover and it sort of clicked. He made me give him the book back at the end of that term because he needed it. Two years later I went to college, finally getting my hands on a computer during my second semester there - well, hands-on is a bit of misnomer, because the only thing we were able to lay hands on was a keypunch, which I used to learn programming in FORTRAN and PL\I and the joys of print statement debugging on an IBM360\195. Next came assembly language programming on a PDP11/05 running RT-11.
As my college years went on, I supplemented the classes required for my Computer Engineering degree with additional CS and programming classes and read extensively in the CS literature. Being the days of the programming language explosion in the mid-late 70's there was a variety of programming language structures that I learned about. Procedural was well known, modules were coming out, and early AI languages provided a wealth of event-driven languages. In addition to this, I had plenty of exposure to different OS'es, command languages, and editors through my research assistantships and other jobs. During one semester, I figured I was working on about a dozen OS'es, all with their own editors and command languages. One job alone used RT-11 on a PDP-11/10, RMS on a PDP-11/34, JCL and PL\I and FORTRAN on an IBM 360-195, and Compass on a CDC 6600 - and that was only one position (I had two assistantships over two departments every semester to make work a full-time job equivalent) - the other position had just as many different machines (TOPS-10 on a PDP-10 - yum). The first job i mentioned was also where I read my first article (in Datamation - OMG) on Smalltalk and learned about the basic principles of OO programming.
I could wax on about work, where I read about (and played with) Backus' FP, looked at ICON, Self, etc., took additional classes to learn things like PROLOG, worked with C++ in the cfront 1.0 days, ginned up my own OO system out of a procedural language with procedure pointers, learned about ML and Haskell, and tried to figure out how to put all of these paradigms together. I could talk about how I continue to look at new languages today.
This is not to mention the numerous frameworks that you also have to learn today. The last thing I've looked at is YUI, the new features of CSS3, and HTML5. It's always at least a bit interesting (if not particularly surprising any more).
So, how do you learn to program? Like anything else. You learn by doing. You learn by reading. You learn by listening. Keep learning new languages and systems. As long as you make every day a new opportunity to learn something, you're probably on the right track.
Any Libertarian who tried to pull the sort of shenanigans that we're seeing here would be tarred and feathered and run out of town on a rail by his/her own party.
And then the Libertarian would rebrand himself a Republican and run as that.
Plus, it wouldn't matter anyway - after killing off regulations, the large corporations would have an even larger stranglehold on the marketplace, as there would be no anti-trust laws to keep them from colluding, price-fixing, etc. and any competitor who tried to enter the field would be crushed before they could get a foothold.
GPUs need to access shared resources that are per-system, whereas CPUs need to limit access to resources on a per-process basis.
If you plan to make the GPU easy to use as a general computing resource (which, according to the writeup, seems to be what they're aiming at) the GPU needs to also be working at a per-process basis and linked to the main system memory so that results are easily available to the main system for I/O, etc.
Of course, even if this is their goal, one question still remains... Will this be useful? It all depends on the apps. I could see this architecture potentially making programming easier for folks who program audio processing software, rendering, or large simulations, especially if they can make the GPU look more like a general purpose processor.
... it's easy to read if you actually think that way, which IMHO, any practicing programmer should be able to do.
Having used lambda functions since I learned Lisp in the 1970's and having used C++ since the cfront 1.0 days, I can honestly say that "easy to read" is not an attribute that most templated C++ code has, lambda constructs notwithstanding. In fact, many programmers hide templated types behind typedefs for this reason. It's not so much that one could conceive of such a thing being possible, it's just that it's appearance in the wild would be of the same order of likelihood as looking out your window and seeing a black swan.
Besides, even if you do write "pretty" C++ lambdas, the screwing up of syntactic closures and inability to return lambdas involving the same without remembering highly idiosyncratic rules about variable capture lifespan or (even worse) copying semantics (and, copying variables rather than sharing references is almost always a mistake, language design-wise) makes anything more than simple examples useless.
OK. Just kidding. As another seasoned software professional (i.e., stick a fork in him and see if he's done yet), I still mourn the fact that the past twenty-five years has been nothing but a rehash when it comes to actual programming technology. Yeah, UI technology (i.e., specification of drawing UI pages and working with events coming in from manual devices) has gotten a bit more abstract, portable, and perhaps, a bit, better, but the underlying programming? Still as awful as ever.
Maybe someday we can move forward from re-inventing wheels. But it doesn't seem to be coming very fast.
You forgot Option 4: Buy a pressure cooker, make an IED, and go to a workplace, especially if you can get yourself close to executive row.
The fact that this is a possibility for some of the more unhinged among us, even if it is a reprehensible and quite undesirable one, should worry execs and political leaders more than it seems to. But because those in power seem so unconcerned about this possibility, I still expect to see it become more common while I'm still alive - perhaps with myself as collateral damage from some idiot who got pushed too far.
I guess we can always ban sales of pressure cookers...
As you grow older there are more calcium deposits in your brain which is where the term "fossilized thinking" comes from.
As a software developer and manager who went back and got his MSCS at age 53 (with a thesis on statistical learning models of biological neurons, in which I had to learn enough neurophysiology to get around) I believe that you are incorrect with respect to your etymology. Calcium deposits in brains, by the time they are severe enough to have any effect on cognition, are a pathological medical condition, not the norm. And it is not where the term "fossilized thinking" comes from - that is an etymological extension of the notion of one becoming "set in one's ways", fossils being very, very well set.
... from this user's perspective, the site has got worse.
And now they're asking every single time you log in to troll your other social media sites and email for contacts. I made the mistake of letting it look at my gmail contact list. After that, every single time I logged in it showed me a checkmarked list of every single contact in my gmail contacts not already connected to me in Linked In and asked me if I wanted to add them (there didn't seem an obvious way to stop it doing this once I gave them permission)... At least it did this until the one day I accidentally hit return instead of the clicking the link labeled "Skip this step" (or just hitting the home link). So now I've spammed random people (who I might know peripherally as someone I auditioned for a band position, or had a talk about an item on eBay, or a real-estate agent, etc., etc., etc.) to be my contact, my contact list is cluttered with people I don't care about, and what for? So Linked In can try to boast a thicker contact web than facebook (which I'm sure they're tracking as a metric for advertisers/recruiters/etc.).
So fuck you, Linked In. Your "helpful suggestions", which you can't get rid of, has made yourself less useful to me. Sadly, you're still more useful than any other similar service out there, but keep trying - I'm sure that you'll make your self so useless as to be irrelevant sometime within the next two years.
At least now, it only asks me to connect with random people I've contacted in the past few months.
... no one wants to read. It's stupid and about a service that no one who had half a brain would use. Dear God, is there no real news? Click-/Ad-bait is one thing, but this takes awful to a new level. I feel stupider for having read through half the summary. I'd say more, but those who read the whole summary are no longer smart enough to read.
I could see getting a new iSeries or even trading up to a zSeries box, but trading down to an xSeries (or worse, some generic junk box) because they wanted to run SAP? That's a sign to find a new job.
But the good new is that, even if they do obsolete the BLINK tag, we can replicate it with a Javascript timer with little trouble. Hell, with the new CSS3 control of alpha, you can make it throb! That can be really annoying! BLINK forever!!!
If you say it in the right business-speak it isn't fraud... I.e., "Our organization leverages the talents of a world-wide network of contributors whose software is installed on millions of devices daily!" == "We use open source software." I'm sure you can come up with more.
... for the love of god can people hurry the hell up?
Why the hell should I rush? Just because you want to rush everywhere doesn't mean that I need to. You want to go faster? Walk around me. Or work to change the laws that make you stand in a security line behind me. Believe it or not, the world does not revolve around you and your desire to go faster.
Except you don't work for a business, you work for a government paid for by your fellow citizens.
People are always saying that they want government to work more like business (especially when they periodically promote wanks like Iacocca, Perot, Trump, Bloomberg, etc. as candidates - who, sadly, sometimes win). Now you bitch because they do? You can't win with a bunch of idiots like you "fellow citizens" around.
Whatever your religion, if you think other people need to suffer, you are wrong.
But I'm a sadist! Not allowing me to make others suffer makes me suffer!
I think that you should remember that absolutes are absolutely wrong. Sometimes people do need to individually suffer, at least in the short term, for long term gain for both that individual and the society of which he's a part. Taxes, for one thing, are an example.
Yes, we know, phones and tablets are consumption devices; PC's are "work"/creation devices.
For how long? Give me a phone with a couple more cores, a slightly better video system, a bit more storage, and a docking station into which I can plug a keyboard, pointing device, and a couple of full-size monitors, and I won't need a desktop computer system anymore. The form factor of the box the processor is contained in doesn't matter once it's below the size of a phone. And the day that the computing capacity of a phone is on par with the current desktop systems will be coming within the next five-to-ten years.
This is why MS is trying to converge, regardless of what all you suitcase-size processor-box fetishizers think - they see the future a lot more clearly than you.
Does Win8's usability suck? Yes. Does the strategy (no matter how poorly executed) suck less for their future than staying with a desktop model? The answer is still yes. The only thing that MS is doing is switching from a hopeless strategy to one that might have legs.
I first read the only book my small-town high school library had on computers. It had the listing of a FORTRAN II program to (IIRC) calculate the first few digits of pi. I found a book on SNOBOL programming in the library of the large town in my county - I read that cover-to-cover. Then, when a friend three years older than me had his first programming course in college a year later, I had him lend me his intro programming book. I read that cover-to-cover and it sort of clicked. He made me give him the book back at the end of that term because he needed it. Two years later I went to college, finally getting my hands on a computer during my second semester there - well, hands-on is a bit of misnomer, because the only thing we were able to lay hands on was a keypunch, which I used to learn programming in FORTRAN and PL\I and the joys of print statement debugging on an IBM360\195. Next came assembly language programming on a PDP11/05 running RT-11.
As my college years went on, I supplemented the classes required for my Computer Engineering degree with additional CS and programming classes and read extensively in the CS literature. Being the days of the programming language explosion in the mid-late 70's there was a variety of programming language structures that I learned about. Procedural was well known, modules were coming out, and early AI languages provided a wealth of event-driven languages. In addition to this, I had plenty of exposure to different OS'es, command languages, and editors through my research assistantships and other jobs. During one semester, I figured I was working on about a dozen OS'es, all with their own editors and command languages. One job alone used RT-11 on a PDP-11/10, RMS on a PDP-11/34, JCL and PL\I and FORTRAN on an IBM 360-195, and Compass on a CDC 6600 - and that was only one position (I had two assistantships over two departments every semester to make work a full-time job equivalent) - the other position had just as many different machines (TOPS-10 on a PDP-10 - yum). The first job i mentioned was also where I read my first article (in Datamation - OMG) on Smalltalk and learned about the basic principles of OO programming.
I could wax on about work, where I read about (and played with) Backus' FP, looked at ICON, Self, etc., took additional classes to learn things like PROLOG, worked with C++ in the cfront 1.0 days, ginned up my own OO system out of a procedural language with procedure pointers, learned about ML and Haskell, and tried to figure out how to put all of these paradigms together. I could talk about how I continue to look at new languages today.
This is not to mention the numerous frameworks that you also have to learn today. The last thing I've looked at is YUI, the new features of CSS3, and HTML5. It's always at least a bit interesting (if not particularly surprising any more).
So, how do you learn to program? Like anything else. You learn by doing. You learn by reading. You learn by listening. Keep learning new languages and systems. As long as you make every day a new opportunity to learn something, you're probably on the right track.
I run a small web site that was quoted and slashdotted.
Slashdotting doesn't happen because no one can be bothered to RTFA.
No. He would have burned down the building, if that were the case.
They just have to clean my house in the process of taking it.
Any Libertarian who tried to pull the sort of shenanigans that we're seeing here would be tarred and feathered and run out of town on a rail by his/her own party.
And then the Libertarian would rebrand himself a Republican and run as that.
Plus, it wouldn't matter anyway - after killing off regulations, the large corporations would have an even larger stranglehold on the marketplace, as there would be no anti-trust laws to keep them from colluding, price-fixing, etc. and any competitor who tried to enter the field would be crushed before they could get a foothold.
GPUs need to access shared resources that are per-system, whereas CPUs need to limit access to resources on a per-process basis.
If you plan to make the GPU easy to use as a general computing resource (which, according to the writeup, seems to be what they're aiming at) the GPU needs to also be working at a per-process basis and linked to the main system memory so that results are easily available to the main system for I/O, etc.
Of course, even if this is their goal, one question still remains... Will this be useful? It all depends on the apps. I could see this architecture potentially making programming easier for folks who program audio processing software, rendering, or large simulations, especially if they can make the GPU look more like a general purpose processor.
... it's easy to read if you actually think that way, which IMHO, any practicing programmer should be able to do.
Having used lambda functions since I learned Lisp in the 1970's and having used C++ since the cfront 1.0 days, I can honestly say that "easy to read" is not an attribute that most templated C++ code has, lambda constructs notwithstanding. In fact, many programmers hide templated types behind typedefs for this reason. It's not so much that one could conceive of such a thing being possible, it's just that it's appearance in the wild would be of the same order of likelihood as looking out your window and seeing a black swan.
Besides, even if you do write "pretty" C++ lambdas, the screwing up of syntactic closures and inability to return lambdas involving the same without remembering highly idiosyncratic rules about variable capture lifespan or (even worse) copying semantics (and, copying variables rather than sharing references is almost always a mistake, language design-wise) makes anything more than simple examples useless.
When I started in the field, your language choices were mostly assembler, COBOL or FORTRAN.
Oh come on! I bet you had those new kids on the block RPG and PL\I, too!
But I might be showing my youthfulness. And I'll get off your lawn before you sic your dogs on me.
Oh, shut up, old man.
OK. Just kidding. As another seasoned software professional (i.e., stick a fork in him and see if he's done yet), I still mourn the fact that the past twenty-five years has been nothing but a rehash when it comes to actual programming technology. Yeah, UI technology (i.e., specification of drawing UI pages and working with events coming in from manual devices) has gotten a bit more abstract, portable, and perhaps, a bit, better, but the underlying programming? Still as awful as ever.
Maybe someday we can move forward from re-inventing wheels. But it doesn't seem to be coming very fast.
You forgot Option 4: Buy a pressure cooker, make an IED, and go to a workplace, especially if you can get yourself close to executive row.
The fact that this is a possibility for some of the more unhinged among us, even if it is a reprehensible and quite undesirable one, should worry execs and political leaders more than it seems to. But because those in power seem so unconcerned about this possibility, I still expect to see it become more common while I'm still alive - perhaps with myself as collateral damage from some idiot who got pushed too far.
I guess we can always ban sales of pressure cookers...
As you grow older there are more calcium deposits in your brain which is where the term "fossilized thinking" comes from.
As a software developer and manager who went back and got his MSCS at age 53 (with a thesis on statistical learning models of biological neurons, in which I had to learn enough neurophysiology to get around) I believe that you are incorrect with respect to your etymology. Calcium deposits in brains, by the time they are severe enough to have any effect on cognition, are a pathological medical condition, not the norm. And it is not where the term "fossilized thinking" comes from - that is an etymological extension of the notion of one becoming "set in one's ways", fossils being very, very well set.
... from this user's perspective, the site has got worse.
And now they're asking every single time you log in to troll your other social media sites and email for contacts. I made the mistake of letting it look at my gmail contact list. After that, every single time I logged in it showed me a checkmarked list of every single contact in my gmail contacts not already connected to me in Linked In and asked me if I wanted to add them (there didn't seem an obvious way to stop it doing this once I gave them permission)... At least it did this until the one day I accidentally hit return instead of the clicking the link labeled "Skip this step" (or just hitting the home link). So now I've spammed random people (who I might know peripherally as someone I auditioned for a band position, or had a talk about an item on eBay, or a real-estate agent, etc., etc., etc.) to be my contact, my contact list is cluttered with people I don't care about, and what for? So Linked In can try to boast a thicker contact web than facebook (which I'm sure they're tracking as a metric for advertisers/recruiters/etc.).
So fuck you, Linked In. Your "helpful suggestions", which you can't get rid of, has made yourself less useful to me. Sadly, you're still more useful than any other similar service out there, but keep trying - I'm sure that you'll make your self so useless as to be irrelevant sometime within the next two years.
At least now, it only asks me to connect with random people I've contacted in the past few months.
... no one wants to read. It's stupid and about a service that no one who had half a brain would use. Dear God, is there no real news? Click-/Ad-bait is one thing, but this takes awful to a new level. I feel stupider for having read through half the summary. I'd say more, but those who read the whole summary are no longer smart enough to read.
I could see getting a new iSeries or even trading up to a zSeries box, but trading down to an xSeries (or worse, some generic junk box) because they wanted to run SAP? That's a sign to find a new job.
But the good new is that, even if they do obsolete the BLINK tag, we can replicate it with a Javascript timer with little trouble. Hell, with the new CSS3 control of alpha, you can make it throb! That can be really annoying! BLINK forever!!!
Make a robot that can disassemble a piece of IKEA furniture and reassemble it without it collapsing the next time it's used! Then you have something!
PS can you smite Iran and the Czech Republic too.
I think you mean Chechnya rather than the Czech Republic, but I figure that we can take 'em both out without much trouble.
Love,
Your military
If you say it in the right business-speak it isn't fraud... I.e., "Our organization leverages the talents of a world-wide network of contributors whose software is installed on millions of devices daily!" == "We use open source software." I'm sure you can come up with more.
... for the love of god can people hurry the hell up?
Why the hell should I rush? Just because you want to rush everywhere doesn't mean that I need to. You want to go faster? Walk around me. Or work to change the laws that make you stand in a security line behind me. Believe it or not, the world does not revolve around you and your desire to go faster.
Except you don't work for a business, you work for a government paid for by your fellow citizens.
People are always saying that they want government to work more like business (especially when they periodically promote wanks like Iacocca, Perot, Trump, Bloomberg, etc. as candidates - who, sadly, sometimes win). Now you bitch because they do? You can't win with a bunch of idiots like you "fellow citizens" around.
In the tech world? Yes.
Even over the last four or so years of industry suckage. Especially for the last two or so in SV.
If you don't understand this, you haven't been paying attention.
Note: I'm not in SV and even I know this.
...this is the philosophy of bad "IT management".
FTFY.
Well, at least sitcoms are better than reality TV.
Whatever your religion, if you think other people need to suffer, you are wrong.
But I'm a sadist! Not allowing me to make others suffer makes me suffer!
I think that you should remember that absolutes are absolutely wrong. Sometimes people do need to individually suffer, at least in the short term, for long term gain for both that individual and the society of which he's a part. Taxes, for one thing, are an example.
Yes, we know, phones and tablets are consumption devices; PC's are "work"/creation devices.
For how long? Give me a phone with a couple more cores, a slightly better video system, a bit more storage, and a docking station into which I can plug a keyboard, pointing device, and a couple of full-size monitors, and I won't need a desktop computer system anymore. The form factor of the box the processor is contained in doesn't matter once it's below the size of a phone. And the day that the computing capacity of a phone is on par with the current desktop systems will be coming within the next five-to-ten years.
This is why MS is trying to converge, regardless of what all you suitcase-size processor-box fetishizers think - they see the future a lot more clearly than you.
Does Win8's usability suck? Yes. Does the strategy (no matter how poorly executed) suck less for their future than staying with a desktop model? The answer is still yes. The only thing that MS is doing is switching from a hopeless strategy to one that might have legs.