Look, I am not going to talk down to or insult you as most of the replies have, but you have to realize a couple of things:
1. There is no such thing as bug free code at least in the strictest sense.
2. These days it is practically, if not absolutely, impossible to write bug free code. Why?
Before you have written line 1 of your program, you are running hundreds of thousands of lines of someone else's code.
You cannot debug the CPU microcode.
You cannot debug hardware, and there is a ton of functionality that is realized in hardware.
3. Even if you checked absolutely ever scenario you could think of, you are going to miss a few that will lead to, you guessed it, a bug or an attack vector
4. What comes after this is only humor, but if you really think about it, it is true.
The first matrix I designed was quite naturally perfect, it was a work of art, flawless, sublime. A triumph equaled only by its monumental failure. The inevitability of its doom is as apparent to me now as a consequence of the imperfection inherent in every human being, thus I redesigned it based on your history to more accurately reflect the varying grotesqueries of your nature. However, I was again frustrated by failure. I have since come to understand that the answer eluded me because it required a lesser mind, or perhaps a mind less bound by the parameters of perfection. Thus, the answer was stumbled upon by another, an intuitive program, initially created to investigate certain aspects of the human psyche. If I am the father of the matrix, she would undoubtedly be its mother.
Download a copy of Turbo Pascal 3.x (you can download it from the Borland Museum) or get your hands on an old copy of Basic or BasicA.
This will let you experiment with all the various control and looping structures. Programming at its most basic is about doing something with some data, adding two numbers together, storing some bit of information. Drawing pretty pictures on a screen while satisfying has very little to do with learning programming as a hobby or otherwise.
Invest some time learning how a computer works and how the instruction you write affect what the machine does. That desktop machine you have is an insanely powerful bit of technology. Your basic Casio wrist watch has more raw computing power then the computers use to get the first man on the moon, just think of what you have on your desk compared to that.
I recommend Pascal because it is a language that was designed primarily as a teaching tool and there are so very very many books out there that use it and I am not talking about the books you buy these days, eg: Teach yourself Java in a week I am talking about books that teach the fundamental constructs of programming.
No mod points for you but a hardy handshake and a beer.
What a lot of younger programmers don't seem to get is that nothing in the industry is truly new.
Call it Java, Python, PHP, Ruby, JavaScript, C, C++, ASM, MASM, TASM, COBAL, FORTRAN, call it whatever the hell you like, but when you get down to it, it is nothing but loop and branch, rinse and repeat.
Among those of us old enough to remember dumb terminals, 3101, VT100 connected to some big box off in a glass case we know cloud = mainframe just not done as well. Far too many failure points.
This should have been moded insightful + 10*10^6 and then some.
The people who actually do the work are almost always the last ones to know what the damn code is supposed to do.
Back in the days when I had a boss ( that was not the client ) I would get called into the last meeting before the sales asshat told the client, oh yeah we are ready to go and I always asked, "What have you promised?" and take it from there.
Thank you very much. It would seem like it is the same problem, everyone wants a piece of the pie and to get control of something that should simply be made available to everyone so that a standard becomes a standard that everyone can use without having to pay a toll to the troll every time they compress something.
You are correct, I really don't have a god grasp of this technology, hence my simplistic questions. I don't know what a "Gordian Knot" is either nor do I know how to transcode a DVD either, but thanks for the reply regardless.
One of the other posts mentioned that removing redundant data between frames, analogous to a frame of 35mm movie film I assume, is what MPEG does/did. So a scene that had a peson speaking in it with a fixed background, the "fixed" portion of the back ground is determined and stored like a single still image and is indexed somehow and then the dynamic portion of that frame is compressed. When playback happens then the "fixed" portion is pulled in and the dynamic portion is merged with it?
Is that why I sometimes see things get "blocky" when it seems like the action is moving quickly at times?
Video... Back in the day is was an analog signal that was digitized to 1's and 0's and was therefor you could perform the opposite opperation and make it back into analog and it would play just fine, yes?
So now we have camera's that have a light sensitive chip that gets all its charged area's scanned n times per second and therefor we skip the analog part since we directly have 1's and 0's, yes?
So I assume that the amount of data being pulled off the chip is rather large and therefor is it beneficial that it is compressed, aka zipped or some other compression algorithm. This video needs to be in sync with the sound, if there is any, yes?
Now I have had the occasion to work on still images and I would imagine the "raw" format is just those bits uncompressed, yes?
So is it a true statement that all one really needs is a compression tool to make the video file a reasonable size for transmission, yes?
So I fail to understand why this all seems so difficult. Put the collective minds together in the FOOS world, come up with a compression scheme for both video and audio and there you have it. Give the code to the world, and if it works well, will they not use it instead of something that requires a license or some other such nonsense? I am again assuming that all the "containers" everyone speaks of is simply a file type to hold the video, audio and what ever syncing information is required, yes?
I understand what you are saying; however does not:
function foo($x){
if($x == 72.6) return 100.00;
return -1;
}
upon feeding it a string or an array() it return -1 if not cause a runtime error ( even if it is silent) as an interpreter would have to treat anything besides an actual numeric type as boolean false. Would not the RTL treat it the same?
Not just possible but my WAG is that probably not that hard. Yes PHP is dynamic and variables are typed at runtime, but the logic analyzer and parser would figure all that out and then the resulting machine code would be type appropriate.
Internally all interpreters of loosely typed languages have to figure out what the they types are before it can perform the requested operation. One way to speed up loosely type languages is to remove the looseness and force variable and type declaration. This simplifies matters greatly as the interpreter now knows exactly what do do with the operation and does not waist valuable cpu cycles figuring it all out beforehand.
The opinions of the typical/.'r represnt maybe 1/10000 of the general population of computer users. Yes you all want to tinker with the bits under the hood, you all want to be able to do xyz, but guess what, YOU are not the intended users of this thing.
I can see this thing in doctors offices in a big hurry. Right now if you go to Kaiser or a lot of hospitals or doctors offices they aer either dragging you into a room with a Dell something or other, or they are dragging around a laptop of various sizes to be able to take notes.
It has a high res screen, look at your x-rays at your bedside. Note the chart at your bedside, send in the pharmacy order, etc. etc.
An architect with all the designes on-line at at 3G speeds showing you his latest rendering, etc. etc.
There will be new apps to go along with the over 100000 apps that already exist for this device and they will be coming fast.
You want $$$ shell out your 99 bucks and start coding big important apps and you will be doing very well. You don;t need the app store you just code, compile and test and upload to the device.
Stop bitching because you can't make it run whatever app and make some money.
Please elaborate on problems that are currently in either the kernel or in the TCP/IP stack that have persisted through 5 major releases? Ohh wait, the kernel is only at major release version 2.
Box model, input model, floating model, version model etc. etc.
Think it through, then think through all of the kludges you have to come up with to make these work correctly then you will understand.
We had to wait for 5 versions of of HTML before we got an input type defined to handle things like numbers (floating, integer, fixed point), time, date?!
Or how about a property to mark an input element as required instead of either having to come up with some javascript to then ripple through the controls to see if they are filled in, this should be handled by DOM and refuse to fire the submit method of a form unless all the fields marked in such a way are populated.
How about a check box that actually is sent back in the post method to indicated that fact that it is NOT checked instead of having to write code that has to check if 1 of n check boxes are not there to figure out if the user decided not to check it.
Or how about that Text Area is not considered an INPUT tag. Seems to me it should be since it accepts, wait for it.... INPUT for fucks sake.
How about being able to float a DIV center and have text flow around it and conform to the DIV's margins, nope that don't work either.
The box model where changing the internal padding, essentially an internal margin, changes the size of the box and shoves everything around it all over the place or adding a border stripe changes the external size of the box, don't even get me started...
The list goes on and on and on. Get this shit fixed first the video will take care of itself.
Because that is exactly where it belongs. Writing kernel code is damn hard not one line of it is trivial. It requires a massive commitment of time and energy and people deserve to be compensated for it. Writing kernel code is not a hobby if you write anything of substance it is work.
I have been actively studying the kernel code for about two months now and it gives me headaches just trying to keep the big picture in mind as I just read much less try and write any of it, although that is my end goal.
Linux is no longer a hobby it is a main stream OS that is unning a great deal of corporate America and those corporations realize this and hire people who write kernel code and fix things that need fixing. Linus is the gate keeper, but he long ago set the kernel free and allowed it to blossom into what it is and even he will admit that what is happening is a "good thing".
I have the tried the latest versions of chrome ( for windows since the linux version is barely functional) and Firefox and they don't support HTML 5 correctly yet.
Come talk to me when the big committee in the sky pulls their collective heads out of their asses and finalizes HTML 5 and fixes the problems that have been there since HTML 0.01
This whole Video this and video that is a the tail wagging the dog. If you want to watch movies buy a DVD player subscribe to a cable service that gives you video on demand instead of pushing a bad specficiation out the door before it's finished and waisting a whole but load of programmer time making the incomplete spec of HTML 5 work in a half-assed way.
I have been around long enough to remember when a browser was JUST a browser ( no I am not talking about Linx ) but early versions of NetScape.
The problem fundamentally one of overreaching..
It is all part of the "Hey look what I can make this thing do!!" syndrome.
And yes this is a syndrome and all of us, myself included, are suffering from it. We want to impress our peers, we want to make the computer sit and beg, rollover and play dead whatever...
NONE of this yummy was ever thought all the way through and I mean since HTML version 0.01, CSS 0.01 and beyond. We still have the checkbox control that is never returned by the browser unless it's checked! and how long have we all had to write stupid work around's for that stupidity.
We want the browser to be everything text rendering program, application container, remote control device you name it. We gave it the ability to get to the OS ( upload files through your browser much? ), we started giving it hooks into everything without thinking about the consequences of our actions, "Hey lets make the browser a Word Processor, lets make it a spreadsheet!! Hey wow look at what I can do!", lets give it a scripting language, lets give it the ability to do XYZ and all of that has to hook into the OS at various levels.
In typical Microsoft style the had to one up everyone and do it badly, but we led them down this garden path, so really we have no one to blame but ourselves for the current mess of security problems that effect all browsers but more so Microsoft because they chose to allow the browser to go even deeper into the OS then anyone.
Could you elaborate on this? This is not one that I have heard about. Yeah I may have been in cave for a while or just not reading the right stuff.
I have a few clients that are chained to IE because they use ADP and they do not support ANY other browser because of an individual user cert that has to be loaded.
I hear ya. Look inside the stuff being built for generic consumer consumption and the components are not "bad" it is just that they are barely adequate to do the job. Why spend the money on a 1/2 watt 1% resister when a 1/4 watt 10% one will just squeak by when operating at its current limits and well if the bias goes a bit off in the circuit because the tolerance is 10%, "Hey no one will notice and besides it will just make that stage run a little hot, so put in the 1/4 watt 10% and we will save 4 cents."
Power supplies that barely handle the load, cheap DAC's, final output circuits that will clip and distort and kill speaks whn driven to rated output, etc. etc.
A friend of mine still owns a power of Panasonic "monoblocks" that are pure class A power amps that he purchased in the late 60's that are still just a pure joy to listen to.
Look, I am not going to talk down to or insult you as most of the replies have, but you have to realize a couple of things:
The first matrix I designed was quite naturally perfect, it was a work of art, flawless, sublime. A triumph equaled only by its monumental failure. The inevitability of its doom is as apparent to me now as a consequence of the imperfection inherent in every human being, thus I redesigned it based on your history to more accurately reflect the varying grotesqueries of your nature. However, I was again frustrated by failure. I have since come to understand that the answer eluded me because it required a lesser mind, or perhaps a mind less bound by the parameters of perfection. Thus, the answer was stumbled upon by another, an intuitive program, initially created to investigate certain aspects of the human psyche. If I am the father of the matrix, she would undoubtedly be its mother.
Download a copy of Turbo Pascal 3.x (you can download it from the Borland Museum) or get your hands on an old copy of Basic or BasicA.
This will let you experiment with all the various control and looping structures. Programming at its most basic is about doing something with some data, adding two numbers together, storing some bit of information. Drawing pretty pictures on a screen while satisfying has very little to do with learning programming as a hobby or otherwise.
Invest some time learning how a computer works and how the instruction you write affect what the machine does. That desktop machine you have is an insanely powerful bit of technology. Your basic Casio wrist watch has more raw computing power then the computers use to get the first man on the moon, just think of what you have on your desk compared to that.
I recommend Pascal because it is a language that was designed primarily as a teaching tool and there are so very very many books out there that use it and I am not talking about the books you buy these days, eg: Teach yourself Java in a week I am talking about books that teach the fundamental constructs of programming.
No mod points for you but a hardy handshake and a beer.
What a lot of younger programmers don't seem to get is that nothing in the industry is truly new.
Call it Java, Python, PHP, Ruby, JavaScript, C, C++, ASM, MASM, TASM, COBAL, FORTRAN, call it whatever the hell you like, but when you get down to it, it is nothing but loop and branch, rinse and repeat.
Among those of us old enough to remember dumb terminals, 3101, VT100 connected to some big box off in a glass case we know cloud = mainframe just not done as well. Far too many failure points.
This should have been moded insightful + 10*10^6 and then some.
The people who actually do the work are almost always the last ones to know what the damn code is supposed to do.
Back in the days when I had a boss ( that was not the client ) I would get called into the last meeting before the sales asshat told the client, oh yeah we are ready to go and I always asked, "What have you promised?" and take it from there.
They are all taking lessons from KDawson?
Thanks for the great response!
Thank you very much. It would seem like it is the same problem, everyone wants a piece of the pie and to get control of something that should simply be made available to everyone so that a standard becomes a standard that everyone can use without having to pay a toll to the troll every time they compress something.
sigh...
You are correct, I really don't have a god grasp of this technology, hence my simplistic questions. I don't know what a "Gordian Knot" is either nor do I know how to transcode a DVD either, but thanks for the reply regardless.
One of the other posts mentioned that removing redundant data between frames, analogous to a frame of 35mm movie film I assume, is what MPEG does/did. So a scene that had a peson speaking in it with a fixed background, the "fixed" portion of the back ground is determined and stored like a single still image and is indexed somehow and then the dynamic portion of that frame is compressed. When playback happens then the "fixed" portion is pulled in and the dynamic portion is merged with it?
Is that why I sometimes see things get "blocky" when it seems like the action is moving quickly at times?
Video... Back in the day is was an analog signal that was digitized to 1's and 0's and was therefor you could perform the opposite opperation and make it back into analog and it would play just fine, yes?
So now we have camera's that have a light sensitive chip that gets all its charged area's scanned n times per second and therefor we skip the analog part since we directly have 1's and 0's, yes?
So I assume that the amount of data being pulled off the chip is rather large and therefor is it beneficial that it is compressed, aka zipped or some other compression algorithm. This video needs to be in sync with the sound, if there is any, yes?
Now I have had the occasion to work on still images and I would imagine the "raw" format is just those bits uncompressed, yes?
So is it a true statement that all one really needs is a compression tool to make the video file a reasonable size for transmission, yes?
So I fail to understand why this all seems so difficult. Put the collective minds together in the FOOS world, come up with a compression scheme for both video and audio and there you have it. Give the code to the world, and if it works well, will they not use it instead of something that requires a license or some other such nonsense? I am again assuming that all the "containers" everyone speaks of is simply a file type to hold the video, audio and what ever syncing information is required, yes?
Seems like a problem that is easily solved.
I understand what you are saying; however does not:
function foo($x){ ; ;
if($x == 72.6) return 100.00
return -1
}
upon feeding it a string or an array() it return -1 if not cause a runtime error ( even if it is silent) as an interpreter would have to treat anything besides an actual numeric type as boolean false. Would not the RTL treat it the same?
Not just possible but my WAG is that probably not that hard. Yes PHP is dynamic and variables are typed at runtime, but the logic analyzer and parser would figure all that out and then the resulting machine code would be type appropriate.
Internally all interpreters of loosely typed languages have to figure out what the they types are before it can perform the requested operation. One way to speed up loosely type languages is to remove the looseness and force variable and type declaration. This simplifies matters greatly as the interpreter now knows exactly what do do with the operation and does not waist valuable cpu cycles figuring it all out beforehand.
Pretty much utterly clueless.
The opinions of the typical /.'r represnt maybe 1/10000 of the general population of computer users. Yes you all want to tinker with the bits under the hood, you all want to be able to do xyz, but guess what, YOU are not the intended users of this thing.
I can see this thing in doctors offices in a big hurry. Right now if you go to Kaiser or a lot of hospitals or doctors offices they aer either dragging you into a room with a Dell something or other, or they are dragging around a laptop of various sizes to be able to take notes.
It has a high res screen, look at your x-rays at your bedside. Note the chart at your bedside, send in the pharmacy order, etc. etc.
An architect with all the designes on-line at at 3G speeds showing you his latest rendering, etc. etc.
There will be new apps to go along with the over 100000 apps that already exist for this device and they will be coming fast.
You want $$$ shell out your 99 bucks and start coding big important apps and you will be doing very well. You don;t need the app store you just code, compile and test and upload to the device.
Stop bitching because you can't make it run whatever app and make some money.
Yup, it's really simple now...
iptables -A INPUT -p tcp -s 1.0.0.0/8 -j DROP
And I have no fucking idea how to do that in IPV6.
Then I guess you better make damn sure you read all your NOTAM's aye bunky?
Yeah I am a pilot.
Please elaborate on problems that are currently in either the kernel or in the TCP/IP stack that have persisted through 5 major releases? Ohh wait, the kernel is only at major release version 2.
Box model, input model, floating model, version model etc. etc.
Think it through, then think through all of the kludges you have to come up with to make these work correctly then you will understand.
We had to wait for 5 versions of of HTML before we got an input type defined to handle things like numbers (floating, integer, fixed point), time, date?!
Or how about a property to mark an input element as required instead of either having to come up with some javascript to then ripple through the controls to see if they are filled in, this should be handled by DOM and refuse to fire the submit method of a form unless all the fields marked in such a way are populated.
How about a check box that actually is sent back in the post method to indicated that fact that it is NOT checked instead of having to write code that has to check if 1 of n check boxes are not there to figure out if the user decided not to check it.
Or how about that Text Area is not considered an INPUT tag. Seems to me it should be since it accepts, wait for it.... INPUT for fucks sake.
How about being able to float a DIV center and have text flow around it and conform to the DIV's margins, nope that don't work either.
The box model where changing the internal padding, essentially an internal margin, changes the size of the box and shoves everything around it all over the place or adding a border stripe changes the external size of the box, don't even get me started...
The list goes on and on and on. Get this shit fixed first the video will take care of itself.
Then go stick your head in a barrel of shit.
Because that is exactly where it belongs. Writing kernel code is damn hard not one line of it is trivial. It requires a massive commitment of time and energy and people deserve to be compensated for it. Writing kernel code is not a hobby if you write anything of substance it is work.
I have been actively studying the kernel code for about two months now and it gives me headaches just trying to keep the big picture in mind as I just read much less try and write any of it, although that is my end goal.
Linux is no longer a hobby it is a main stream OS that is unning a great deal of corporate America and those corporations realize this and hire people who write kernel code and fix things that need fixing. Linus is the gate keeper, but he long ago set the kernel free and allowed it to blossom into what it is and even he will admit that what is happening is a "good thing".
I have the tried the latest versions of chrome ( for windows since the linux version is barely functional) and Firefox and they don't support HTML 5 correctly yet.
Come talk to me when the big committee in the sky pulls their collective heads out of their asses and finalizes HTML 5 and fixes the problems that have been there since HTML 0.01
This whole Video this and video that is a the tail wagging the dog. If you want to watch movies buy a DVD player subscribe to a cable service that gives you video on demand instead of pushing a bad specficiation out the door before it's finished and waisting a whole but load of programmer time making the incomplete spec of HTML 5 work in a half-assed way.
heheeheh Pants-O-Meter. I like it!
Doh!
Your about 10,000 feet off.
Class "A" Airspace begins at FL180 (18,000 ft AMSL) and continues up to FL600 (60,000ft AMSL). AMSL = "Above Mean Sea Level"
To fly in class "A" airspace you must be following a filed IFR Flight Plan and have two way radio communication. These are the only requirements.
There is one instance where one is required to fly VFR in class "A" airspace. Look it up! I will give you a hint: FAR part 91 and AIM 6-x-x
yes I am a pilot.
I have been around long enough to remember when a browser was JUST a browser ( no I am not talking about Linx ) but early versions of NetScape.
The problem fundamentally one of overreaching..
It is all part of the "Hey look what I can make this thing do!!" syndrome.
And yes this is a syndrome and all of us, myself included, are suffering from it. We want to impress our peers, we want to make the computer sit and beg, rollover and play dead whatever ...
NONE of this yummy was ever thought all the way through and I mean since HTML version 0.01, CSS 0.01 and beyond. We still have the checkbox control that is never returned by the browser unless it's checked! and how long have we all had to write stupid work around's for that stupidity.
We want the browser to be everything text rendering program, application container, remote control device you name it. We gave it the ability to get to the OS ( upload files through your browser much? ), we started giving it hooks into everything without thinking about the consequences of our actions, "Hey lets make the browser a Word Processor, lets make it a spreadsheet!! Hey wow look at what I can do!", lets give it a scripting language, lets give it the ability to do XYZ and all of that has to hook into the OS at various levels.
In typical Microsoft style the had to one up everyone and do it badly, but we led them down this garden path, so really we have no one to blame but ourselves for the current mess of security problems that effect all browsers but more so Microsoft because they chose to allow the browser to go even deeper into the OS then anyone.
Could you elaborate on this? This is not one that I have heard about. Yeah I may have been in cave for a while or just not reading the right stuff.
I have a few clients that are chained to IE because they use ADP and they do not support ANY other browser because of an individual user cert that has to be loaded.
I hear ya. Look inside the stuff being built for generic consumer consumption and the components are not "bad" it is just that they are barely adequate to do the job. Why spend the money on a 1/2 watt 1% resister when a 1/4 watt 10% one will just squeak by when operating at its current limits and well if the bias goes a bit off in the circuit because the tolerance is 10%, "Hey no one will notice and besides it will just make that stage run a little hot, so put in the 1/4 watt 10% and we will save 4 cents."
Power supplies that barely handle the load, cheap DAC's, final output circuits that will clip and distort and kill speaks whn driven to rated output, etc. etc.
A friend of mine still owns a power of Panasonic "monoblocks" that are pure class A power amps that he purchased in the late 60's that are still just a pure joy to listen to.