Agreed. 100%. "Hate Speech" is a cop-out for Censorship -- which is bullshit.
I came across this fantastic commentary on a YT video:
(British) Political Philosopher John Stuart Mill (1806-1873) made an argument for free speech including that of hate speech for a good reason too.
He argued that if we censor hate speech our fundamental beliefs of what is right and wrong are not tested.
If our beliefs are aren't argued against then we don't attempt to rationalize what we believe to be true.
We don't think about why our beliefs are right.
When we don't question our beliefs we don't think about them.
And when we don't think about our beliefs we don't learn new things.
We don't advance and improve our thoughts about what is right and wrong.
He argued that even if someone's argument is wrong it still serves a purpose of making us rationalize and check our beliefs and even improve them.
Being able to listen to an argument that is wrong lets us understand what makes an argument wrong and improve our own beliefs from learning from someone else's failure.
> First of all, I have an issue in using the concept of "professional programmer"
Professional programmer, noun, someone who has made programming their primary CAREER and has a recognized formal education.
In contradistinction to Amateur, noun, someone who has no formal training, and may, or may not do the job better. Programming is NOT their primary career.
/sarcasm Maybe you should try cracking open a dictionary sometime -- you might learn something.
... as MS tries and constantly fails to stay relevant.
The Road Ahead, Bill Gates, 1995.
* Social Networking
"The (information) highway will not only make it easier to keep up with distant friends, it will also enable us to find new companions. Friendships formed across the network will lead naturally to getting together in person."
I guess they didn't follow the Bing Strategy: 5 years after dumping a Billion dollars into Bing is finally profitable.
if( 0 == "0" ) console.log( "equal" );// True!? WTF! if( 1 == "1" ) console.log( "equal" );// True!? WTF! for( var x in [5,6,7,8]) console.log( x + 1 );// WTF 01, 11, 21, 31
Yeah, JavaShit is fundamentally broken-by-design.
Javascript _could_ be turned into something OK, if it:
* Removed the idiotic ASI (Automatic Semi-colon Insertion) -- Doug Crockford of (Javascript: The Good Parts fame) @34:31"Why am I betting my career on this piece of crap?" * Added a native unsigned 64-bit integer * Added multi-line strings * Added the ability for.js files to include other.js files * Standardized multithreading instead of blocking * Removed the broken '==' operator
Hey retard Javascript Designer, "==" doesn't always work. I know, let's add "===" as a kludge! *facepalm*
When a language requires a stupid hack..
"use strict"
... just to make it some-what type safe, you know it was designed by an moron who learnt NOTHING about programming languages from the past 30 years back in 1995.
>> Don't even get me started on the retarded ASI (Automatic Semi-colon Insertion). > I'll get you started, go on.
Part 2 -- due/.'s shitty ecode line length is too short warning.
2. JavaShit's ASI is _also_ the reason there is no native line continuation or multi-line string.
For example, anyone who has written WebGL shader code needs to do dumb shit like run-time string concatenation in order to work around JavaShit's broken-by-design.
Yet Javascript INSISTS that an extra newline _fundamentally_ changes the semantics. Who was the idiot that designed this crap and thought it was a good idea???
> I hope we all agree that 1/0 should indeed return Inf?
Absolutely not !
> The problem areas are mostly related to single vs dual zeroes and infinities imho, what is your particular problem?
The problem of 1/0 = +Infinity is that it is mathematically incorrect for TWO reasons:
1. Division is the dual of multiplication, namely it is defined as:
a/b = c a = b*c
However when a != 0, such as 1, b =0, and using the broken IEEE re-definition of c=Inf, then this implies that 'a' is...
1 = 0*inf
... which is utterly stupid as this is impossible. Why is the IEEE754 standards hijacking mathematics to redefine basic concepts???
2. Inspecting the limit of 1/x shows that:
* When we approach `a` from the negative numbers we approach the limit of -Infinity. * When we approach `a` form the positive numbers we approach the limit of +Infinity.
Divide by zero produces a singularity of BOTH positive Infinity and negative Infinity. Artificially limiting 1/x to Infinity is incorrect as it leaves out the other (half) answer out. The _whole_ point of even having NaN is to represent undefined or indeterminate values. Hijacking Infinity to be mean 1/0 is just that -- hijacking a basic mathematical concept. NaN is the only value that makes sense.
BTW. You wouldn't happen to be THE Terje Mathisen of optimization fame by chance?!
> why should that be NaN? 1/0 is Infinity, not NaN.
Incorrect. You need to go back to school and review what divide by zero actually means.
a/b = c a = b*c
However when a != 0, and b =0,
a/0 = c
There is NO value of c that produces a.
a = 0*c (impossible)
Furthermore, mathematicians define division by zero as undefined because x/0 has TWO simultaneous values: +inf and -inf, depending on which side you approach x from: the negative side of zero, or the positive side of zero. The mathematical set of Reals is NOT closed under division by zero -- it produces a singularity.
0/0 is "indeterminate" which naturally maps into NaN.
console.log( 0/0 ); NaN console.log( isNaN(0/0) ); true
All is good and fine so far.
However Javascript uses the broken IEEE 754 definition of x/0 = Infinity. This is is retarded because is broken math
Proof:
1/0 = +inf (assume retarded definition of divide by zero is valid) 0*(1/0) = 0*inf (0/0)*1 = 0 undefined *1 = 0 NaN = 0 WTF
Note: NaN is NOT equal to ANY value, including itself.
console.log( NaN === NaN ); false console.log( NaN == NaN ); false
> Is there some standard that says that "big" signed integers should be surreptitiously changed into unsigned ones?
Your mistake is assuming Javascript has integers in the first place. Javascript does NOT have signed integers. All values are 64-bit floating point values.
The Number type has exactly 18437736874454810627 (that is, 264-253+3) values, representing the double-precision 64-bit format IEEE 754-2008 values as specified in the IEEE Standard for Binary Floating-Point Arithmetic,...
One of the reasons Javashit is such a crappy language because it has no uint32_t nor uint64_t. This leads to subtle over-flow bugs that are difficult or impossible to work around.
But what do you expect from a language designed in 10 days.
> I thought that industry primarily used the Quadro line
It really depends on your needs.
For game developers, the artists are probably using Quadro's and programmers the non-Quadro's (GTX) to better match the _actual_ specs of the gamers. i.e. You can probably count on one hand the number of gamers with a Quadro card.
Prices due to VRAM options are all over the place for the Quadro line. Notice how nVidia doesn't list prices on the Quadro line.
If you're doing Modelling / CAD such as Maya / Max / SolidWorks / etc. then yeah, you're probably using a Quadro since the Quadro's prices are a drop in the (price) bucket -- relatively speaking. i.e. The M6000 with 24 GB of VRAM is selling on Amazon for $4,529.00 -- which is *already* discounted !
If not then Quadro's are hideously expensesive (significantly north of $1K) for the "rest of us". i.e. The Quadro P6000 has (had?) a MSRP of $7,000. The average gamer doesn't really "need" more then 6 GB VRAM.
It is kind of like F1 cars. They cost a fortune due to limited supply and demand but technology "trickles" down so us "mere mortals" can afford it. A rule-of-thumb for/oblg. PC Master Race is
* get the fastest single card you can afford * re-sell it every 2~3 years to re-coop costs * Don't spend more then $1,000 unless you actually _need_ it.
Performance has always been on a exponential curve. Every time you double (*) the cost your performance gains go down by 1/2 (*).
(*) SWAG. These are NOT actually numbers -- I pulled them out of my ass -- I just used them for illustrative purposes.
-- Microshat, noun, fucking you over with their crap since Winblows 95 by trying to lock you into proprietary technology that is dead within the decade. i.e. How is that Silverlight and XNA working out guys?
> Who in their right mind spends that much for a video card? Seriously, I want to know.
Questioning is fine -- but your tone makes you look clueless instead of being inquisitive.
I'll give you 4 reasons why I buy cards like this:
1. You're assuming ONLY gamers buy this card, which is incomplete, but I'll discuss this first. I prefer to game at 120+ Hz . I settle for 60 Hz at 2560x1440 (or higher). Graphics Cards are STILL too slow to run 4Ka, aka 2160p at 120 Hz. VR is still a performance hog. You'll want at least a nVidia 980 to get a great VR experience.
2. I do CUDA programming on my nVidia cards. It sounds like you don't understand what heterogeneous programming is.
* GPU's are fast and inflexible. * CPU's are slow and flexible.
Offloading selective work from the CPU to the GPU dramatically reduces processing time. GPUs have THOUSANDS of "cores" compared to the piddly "8-core" of CPUs. The cost per core of a typical i7 is $300 / 8 = ~$37. The 1080 Ti is $700 / 3,584 = ~ $0.19. Obviously this is an Apples-to-Oranges comparison but depending on _what_ kind of work your doing this could be EXTREMELY cost effective.
I still have an original Titan in my Linux dev box that I paid $1,000 because it has 1:3 float64 performance compared to the butchered 1:24 float64 performance of later cards -- Translation: For 64-bit floating point the original Titan SCREAMED -- each 64-bit floating point operation was only 1/3 as fast as a 32-bit float. Later video cards butchered the performance so 64-bit floats to be only 1/24 as fast.
3. Game developers, namely programmer and artists, which overlaps with my next point.
4. Graphics programmers, graphic gurus, and "shader junkies" like me buy cards like this -- that is anyone doing real-time rendering, or "pre-viz" work in the movie industry, also has an eye on getting hold of the fastest GPU's they can get. I don't know what GPU's was used in Avatar but they used a total of...
* 4,000 computers * 40,000 CPUs
... just to render ONE frame that lasted 1 / 24th of a second ! I'm willing to bet they did a LOT of pre-visualization rendering work to get the scenes looking "just right"
Anytime you need the ability to preview _complex_ rendering (shading / lighting) a faster GPU will help. You then distribute it to thousands of CPU's to do the actual rendering.
You would be less myopic if you would open your eyes to what people are doing with real-time pixel shaders these day. The site ShaderToy is extremely well known amongst us graphics programmers.
Instead of criticizing people for buying the fastest thing they can afford it would be more productive to open your eyes for how much computers are STILL d-o-g slow for graphics.
-- "One does not fully appreciate just how complicated reality is until one starts trying to simulate it."
Hasn't this option been available on YouTube for ages?:-) Music usually has links to iTunes, Amazon, etc. Gee, here's an radical idea -- make it EASY for the viewer the ability to buy what they are watching! I only wish the REST of the entertainment industry would get with the program.
i.e. A friend of mine noticed that "Hawaizaada" trailer was available in 1080p and used to be in Netflix. Yet if the viewer wants to purchase a legal copy they have to track down a crappy 480p DVD version off Amazon!? Why isn't a streaming option available??
> Fuck the marketers, they should all die in a fire.
Marketers and Lawyers would be a good start -- but sadly that wouldn't really change anything.:-/
I really wish we could ban all forms of commercial advertising.
Advertising pollutes our spaces -- both physical and virtual. It disrespects our time. All for the sake of profit. Greed is the cancer that destroys everything good about the world.
Have we really become such a stupid species that we let blatant propaganda and hyper commercialization of product placement control our lives?
> (I challenge anyone here to name a remake^H^H^H^H^H^H regurgitation that was better than the original.)
FTFY.
/sarcasm You mean the new Ghostbusters -- that NO one asked for -- was better then the original? **snicker**
Oh wait, I _actually_ have a legitimate remake that isn't shit. Challenge accepted!
Robin Hood.
I mean, one of the eleven remakes has to be better then the original 1912 version, right? :-)
But yeah, I agree with you 99%. I'm tired of film re-cash-grabs
Instead of reboots / reimaging / remakes / reimagining -- we should call them for what they are:
Regurgitation
Agreed. 100%. "Hate Speech" is a cop-out for Censorship -- which is bullshit.
I came across this fantastic commentary on a YT video:
The summary also says (emphasis added):
/sarcasm "Oh, shut your pie hole already!"
>> For programming skill, I'm going to suggest Zero Bugs and Program Faster
> I second that, good book.
I'll third that book. Great book !
Great list! However you missed the one quintessential CS book.
Godel, Escher, Bach: An Eternal Golden Braid
-- /. STILL can't properly display Unicode?! GÃdel *sigh*
It's 2017, and
> nor is it so difficult to transition from on to the other.
I use BOTH Photoshop and GIMP.
While they BOTH suck GIMP's lack of native layer blend modes still suck more compared to Photoshop. Namely:
Gimp's lack of native 16-bit greyscale, and 32-bit / channel also make it suck.
But for the "most part" the two are functionally equivalent.
> First of all, I have an issue in using the concept of "professional programmer"
Professional programmer, noun, someone who has made programming their primary CAREER and has a recognized formal education.
In contradistinction to Amateur, noun, someone who has no formal training, and may, or may not do the job better. Programming is NOT their primary career.
> Intel just did massive layoffs and
> struck a deal with ARM to produce 10nm chips when Intel finally figures out 10nm.
You wouldn't happen to have links handy by chance please? TIA.
I don't recall seeing both of these on /.'s front page ...
... as MS tries and constantly fails to stay relevant.
The Road Ahead, Bill Gates, 1995.
* Social Networking
I guess they didn't follow the Bing Strategy: 5 years after dumping a Billion dollars into Bing is finally profitable.
Sooo, how is that Windows Phone working out ...
> JavaScript is not worse, it is broken.
Isn't a hack? ;-)
Oh you meant dumb shit like this ...
Yeah, JavaShit is fundamentally broken-by-design.
Javascript _could_ be turned into something OK, if it:
* Removed the idiotic ASI (Automatic Semi-colon Insertion) -- Doug Crockford of (Javascript: The Good Parts fame) @34:31 "Why am I betting my career on this piece of crap?" .js files to include other .js files
* Added a native unsigned 64-bit integer
* Added multi-line strings
* Added the ability for
* Standardized multithreading instead of blocking
* Removed the broken '==' operator
But instead people will add kludge upon kludge.
I see you're a fan of Wat :-)
You're probably familiar with JavaShit's retarded == equality operator.
When a language requires a stupid hack ..
... just to make it some-what type safe, you know it was designed by an moron who learnt NOTHING about programming languages from the past 30 years back in 1995.
More JavaShit broken-by-design:
*facepalm*
Produces 01, 11, 21, 31 instead of the expected 6,7,8,9.
Hint: for( var x in [5,6,7,8]) console.log( typeof x );
> What kinds of stuff can't you find in CSS?
Sticky headers where clicking on a link DOESN'T hide the scrolled amount under the sticky header.
>> Don't even get me started on the retarded ASI (Automatic Semi-colon Insertion).
> I'll get you started, go on.
Part 2 -- due /.'s shitty ecode line length is too short warning.
2. JavaShit's ASI is _also_ the reason there is no native line continuation or multi-line string.
For example, anyone who has written WebGL shader code needs to do dumb shit like run-time string concatenation in order to work around JavaShit's broken-by-design.
Instead of the cleaner multi-line string that any _good_ language would provide:
It is not quite as bad as Python's idiotic indentation, but it is still a dumb design. Language design should NOT dictate programming style.
Unless it is broken. Like Javascript.
>> Don't even get me started on the retarded ASI (Automatic Semi-colon Insertion).
> I'll get you started, go on.
The problems with JavaShit's Automatic Semi-Colon Insertion (ASI) are two-fold.
1. Whitespace (form) should NEVER break functionality -- yet in Javascript it DOES.
This returns `undefined` due to JavaShit's retarded ASI policy.
Maybe you'll make the excuse that is a "toy" example. OK, here are more practical examples:
This is BROKEN in JavaShit -- unlike every other C-like language where this _works._
NOTE: /.'s ecode is broken -- the ampersands should be lined up vertically.
Instead, I have to use K&R style or add a _dummy value_ to work around Javascript's retarded ASI design.
WHY do we even use whitespace in the first place?
For _human_ readability.
Youdon'treadnorwritesentenceswithnowhitespace.Codeisnodifferent.
Yet Javascript INSISTS that an extra newline _fundamentally_ changes the semantics.
Who was the idiot that designed this crap and thought it was a good idea???
To be continued.
Uh, Hello McFly.
Q. Which _value_ of x solves this equation???
A. There is _no_ value -- the only correct answer is: x = NaN.
> I hope we all agree that 1/0 should indeed return Inf?
Absolutely not !
> The problem areas are mostly related to single vs dual zeroes and infinities imho, what is your particular problem?
The problem of 1/0 = +Infinity is that it is mathematically incorrect for TWO reasons:
1. Division is the dual of multiplication, namely it is defined as:
However when a != 0, such as 1, b =0, and using the broken IEEE re-definition of c=Inf, then this implies that 'a' is ...
... which is utterly stupid as this is impossible. Why is the IEEE754 standards hijacking mathematics to redefine basic concepts???
2. Inspecting the limit of 1/x shows that:
* When we approach `a` from the negative numbers we approach the limit of -Infinity.
* When we approach `a` form the positive numbers we approach the limit of +Infinity.
Divide by zero produces a singularity of BOTH positive Infinity and negative Infinity. Artificially limiting 1/x to Infinity is incorrect as it leaves out the other (half) answer out. The _whole_ point of even having NaN is to represent undefined or indeterminate values. Hijacking Infinity to be mean 1/0 is just that -- hijacking a basic mathematical concept. NaN is the only value that makes sense.
BTW. You wouldn't happen to be THE Terje Mathisen of optimization fame by chance?!
> People say you need spaces to make stuff align, but you don't.
Incorrect.
I shouldn't need the /**/ to align indentation but using a tab breaks the correct indentation.
> I am currently on the group that works on the 2018 revision of the IEEE 754
When is the IEEE 754 group going to fix the broken 1/0 = Infinity definition?
> why should that be NaN? 1/0 is Infinity, not NaN.
Incorrect. You need to go back to school and review what divide by zero actually means.
However when a != 0, and b =0,
There is NO value of c that produces a.
Furthermore, mathematicians define division by zero as undefined because x/0 has TWO simultaneous values: +inf and -inf, depending on which side you approach x from: the negative side of zero, or the positive side of zero. The mathematical set of Reals is NOT closed under division by zero -- it produces a singularity.
0/0 is "indeterminate" which naturally maps into NaN.
All is good and fine so far.
However Javascript uses the broken IEEE 754 definition of x/0 = Infinity. This is is retarded because is broken math
Proof:
Note: NaN is NOT equal to ANY value, including itself.
> Is there some standard that says that "big" signed integers should be surreptitiously changed into unsigned ones?
Your mistake is assuming Javascript has integers in the first place. Javascript does NOT have signed integers. All values are 64-bit floating point values.
4.3.20 Number value
and
6.1.6The Number Type
One of the reasons Javashit is such a crappy language because it has no uint32_t nor uint64_t. This leads to subtle over-flow bugs that are difficult or impossible to work around.
But what do you expect from a language designed in 10 days.
> Please share some details, because I love to know about JS caveats and pitfalls and share them with others.
Returns broken 16331239353195370, instead of correct NaN
Returns broken -344350048 instead of correct 3950617248
Don't even get me started on the retarded ASI (Automatic Semi-colon Insertion). As Douglas Crockford said @34:31
For more Javashit shennagins see Wat
> I thought that industry primarily used the Quadro line
It really depends on your needs.
For game developers, the artists are probably using Quadro's and programmers the non-Quadro's (GTX) to better match the _actual_ specs of the gamers. i.e. You can probably count on one hand the number of gamers with a Quadro card.
Prices due to VRAM options are all over the place for the Quadro line. Notice how nVidia doesn't list prices on the Quadro line.
If you're doing Modelling / CAD such as Maya / Max / SolidWorks / etc. then yeah, you're probably using a Quadro since the Quadro's prices are a drop in the (price) bucket -- relatively speaking. i.e. The M6000 with 24 GB of VRAM is selling on Amazon for $4,529.00 -- which is *already* discounted !
If not then Quadro's are hideously expensesive (significantly north of $1K) for the "rest of us". i.e. The Quadro P6000 has (had?) a MSRP of $7,000. The average gamer doesn't really "need" more then 6 GB VRAM.
It is kind of like F1 cars. They cost a fortune due to limited supply and demand but technology "trickles" down so us "mere mortals" can afford it. A rule-of-thumb for /oblg. PC Master Race is
* get the fastest single card you can afford
* re-sell it every 2~3 years to re-coop costs
* Don't spend more then $1,000 unless you actually _need_ it.
Performance has always been on a exponential curve. Every time you double (*) the cost your performance gains go down by 1/2 (*).
(*) SWAG. These are NOT actually numbers -- I pulled them out of my ass -- I just used them for illustrative purposes.
--
Microshat, noun, fucking you over with their crap since Winblows 95 by trying to lock you into proprietary technology that is dead within the decade. i.e. How is that Silverlight and XNA working out guys?
> Who in their right mind spends that much for a video card? Seriously, I want to know.
Questioning is fine -- but your tone makes you look clueless instead of being inquisitive.
I'll give you 4 reasons why I buy cards like this:
1. You're assuming ONLY gamers buy this card, which is incomplete, but I'll discuss this first. I prefer to game at 120+ Hz . I settle for 60 Hz at 2560x1440 (or higher). Graphics Cards are STILL too slow to run 4Ka, aka 2160p at 120 Hz. VR is still a performance hog. You'll want at least a nVidia 980 to get a great VR experience.
2. I do CUDA programming on my nVidia cards. It sounds like you don't understand what heterogeneous programming is.
* GPU's are fast and inflexible.
* CPU's are slow and flexible.
Offloading selective work from the CPU to the GPU dramatically reduces processing time. GPUs have THOUSANDS of "cores" compared to the piddly "8-core" of CPUs. The cost per core of a typical i7 is $300 / 8 = ~$37. The 1080 Ti is $700 / 3,584 = ~ $0.19. Obviously this is an Apples-to-Oranges comparison but depending on _what_ kind of work your doing this could be EXTREMELY cost effective.
I still have an original Titan in my Linux dev box that I paid $1,000 because it has 1:3 float64 performance compared to the butchered 1:24 float64 performance of later cards -- Translation: For 64-bit floating point the original Titan SCREAMED -- each 64-bit floating point operation was only 1/3 as fast as a 32-bit float. Later video cards butchered the performance so 64-bit floats to be only 1/24 as fast.
3. Game developers, namely programmer and artists, which overlaps with my next point.
4. Graphics programmers, graphic gurus, and "shader junkies" like me buy cards like this -- that is anyone doing real-time rendering, or "pre-viz" work in the movie industry, also has an eye on getting hold of the fastest GPU's they can get. I don't know what GPU's was used in Avatar but they used a total of ...
* 4,000 computers
* 40,000 CPUs
Anytime you need the ability to preview _complex_ rendering (shading / lighting) a faster GPU will help. You then distribute it to thousands of CPU's to do the actual rendering.
You would be less myopic if you would open your eyes to what people are doing with real-time pixel shaders these day. The site ShaderToy is extremely well known amongst us graphics programmers.
* "Wet Stone"
* Mario
Modern GPUs completely S-U-C-K for non-volumetric rendering. Using ray-marching is the standard "solution" to get great looking effects.
It would behoove you to read:
* Rendering Worlds with Two Triangles with raytracing on the GPU
* Clouds
Now I'm quite happy with my Titan and 980 Ti but others will be looking to upgrade. Whenever you upgrade you want to move up at least 3 tiers.
* Desktop GPU Performance Hierarchy Table
Instead of criticizing people for buying the fastest thing they can afford it would be more productive to open your eyes for how much computers are STILL d-o-g slow for graphics.
--
"One does not fully appreciate just how complicated reality is until one starts trying to simulate it."
Hasn't this option been available on YouTube for ages? :-) Music usually has links to iTunes, Amazon, etc.
Gee, here's an radical idea -- make it EASY for the viewer the ability to buy what they are watching!
I only wish the REST of the entertainment industry would get with the program.
i.e.
A friend of mine noticed that "Hawaizaada" trailer was available in 1080p and used to be in Netflix. Yet if the viewer wants to purchase a legal copy they have to track down a crappy 480p DVD version off Amazon!? Why isn't a streaming option available??
https://www.youtube.com/watch?...
> Fuck the marketers, they should all die in a fire.
Marketers and Lawyers would be a good start -- but sadly that wouldn't really change anything. :-/
I really wish we could ban all forms of commercial advertising.
Advertising pollutes our spaces -- both physical and virtual.
It disrespects our time.
All for the sake of profit.
Greed is the cancer that destroys everything good about the world.
Have we really become such a stupid species that we let blatant propaganda and hyper commercialization of product placement control our lives?
When does it end?