Re:Did you read what I wrote?
on
C# In-Depth
·
· Score: 1
Interesting...
I was writing IRS's in Turbo Pascal in 1984/85 I think it was? It had some inline assembly, but most of it was written in TP. I was writing TSR's as well. I guess over the years I wrote many many programs in TP and noe of them seemed to have the problems you describe. Now arguably they were running on either PCDos ( IBM's flavor on actual IBM harware PC, PX-XT and the like including the mighty PC-AT) or later MS-DOS on better clone hardware.
TP, as I recall did not have built in support for ANY UART or any VIDEO card. It relied strictly on INT 21 calls to reach the video system ( VERY slow BIOS calls) or for POLLED access to the serial ports. In those days you either ran Vern Burgs TSR for interrupt driven ASYNC I/O or you rolled your own ISR routine. FIDO Net along with many other BBS's used the same thing. I had some issues with the way it worked, so I wrote my own ASYNC I/O ISR routines.
Even when the GRAHPICS unit was included, you only got CGA level support, because that was the only thing you could count on to work, and that was because everyone supported that mode as it was a standard. And as I recall quite a bit of the GRAPHICS unit was in-line assembler.
I know that if you executed a WriteLn() or a ReadLN() call and it wasn't to a disk file, ie: ReadLN(file,var) it the RTL used STDIN and STDOUT ONLY
At the time, there was not a direct screen I/O routine in the RTL so I had to write one. I wrote some of the first X-MODEM and Y-MODEM/Y-MODEM-G implementations that were deigned to be OVL files for TP that others could link in, and I don't recall them having much trouble either, but obviously your millage varied.
TP was so good in fact, that I think version 4 or 5 of Quatro-Pro was written entirely in TP version 5 I think it was... God that was years ago.
To this day I still use Delphi ( version 5 ) to write all sorts of things, the programs run fine on everything on Win-98SE, NT, 2K and XP ( although I have never used Vista so they still might run fine on that) and the compiler produces very small very fast executables. As a matter of fact the last thing I turned out was in interface for ORACLE 11! It uses the BDE and connects directly to OCIWIN32.DLL just fine, no ODBC required, runs Store Procedures and pretty much handles anything I would like to do, so again I guess YMV'd greatly from mine.
From my POV up until MS got their hooks into Borland and pretty much shoved MFC &.Net down their throat their stuff was pretty damn slick. Personally, I think the best version of Delpi was version 5.
Re:Oh, well, that explains everything...
on
C# In-Depth
·
· Score: 1
The other reply to your post, has it mostly correct. It was Brain-Drain, I know I watched it happen. MS literally rented a hotel suite and brought their checkbook. They would write checks for amounts they knew that Borland would have a very difficult time matching, and even when they could MS would just add zero's.
MS could not compete with the talent pool that Borland had put together, and when they realized this they just started writing checks. If you can't beat them fair and square, just hire away their engineers, since money was and is pretty much no object to MS, it was a no brainer for them.
As I have said before, MS does not want to compete with anyone, they just want to buy the market and then just keep feeding everyone their broken crap
Re:Oh, well, that explains everything...
on
C# In-Depth
·
· Score: 5, Interesting
Dude, you seriously need to stop sipping the red bull or whatever your drinking...
Turbo-Pascal was a god send to the programming world. It was an entry point for 10's of thousands of programmers and I am one of them. It was the 1st IDE, write your code then compile and run in one key press! No one had that, not a single company. Yes it was limited to 64K of code and data and only made an image ( com file ), but what you could do in that 64K was beyond anything else at the time.
Say what you will about Anders going over to the dark side, I mean until then he was my personal hero, but there is no denying the mans brilliance. Turbo Pascal for Windows? Again, no company had anything remotely close to that and he was the architect. Delphi... Again, no one had anything close to that, and he was the architect.
The OOP model that came out of Borland made C++ look exactly like the joke it was and is today. Their model was infinitely superior, and again, he was the architect.
The demise of Borland was mostly about Microsoft's malevolence and monopolistic ways. If MS had wanted actual competition, more then likely we would would all be programming in Borland languages to this day, instead of the shit that comes from MS which most of Anders has a hand in, but is corrupted by the MS Marketing machine making technology decisions.
This is not that hard, and it sure isn't rocket science.
Strip down a distro to the kernel then ad the following:
Driver for a touch screen display
Driver for audio output to drive headphones for the visually impaired
Driver for a brail input device as well
Driver for an thumb drive to boot from
Driver for a tape style printer (not thermal)
Please a driver for something I missed....
The device has only enough ROM to POST and is hard coded to boot from the thumb drive which contains the OS & drivers and voting software with a modified USB connector that is a different shape then standard. This is a mild security feature.
An additional thumb drive will hold the data, again with a different shape so that the two cannot be confused, and both are encrypted using a two key scheme of some sort, suggestions?
Insert the drive one, power up the machine, it will then POST itself and ask for the data key and will go no farther until it validates the Data Drive. Voting commences and when voting is complete, the machine is shut down, drives are pulled and returned to the registrar for counting.
Indeed on an IBM Mainframe you could run any number of VM's of various flavors and they were all under the control CMS and life was very very good indeed, but those days are....
Ohh yeah, they are still here! VMWare is just re-inventing a very well designed wheel that has been rolling for the last few decades so what is the point?
Is it just a reincarnation of the Not Invented Here syndrome, yet again?
I really don't care if I get mod'd one way or the other. I just really sends me off the deep end when I hear people like you bitch and complain because you have to "agree" to some pretty damn innocuous statements and start saying things like "It ain't free man!!!".
A what point to you have to open up your wallet and pay? At what point did you have to agree that you owed the Mozilla foundation anything? At what point does it infringe on your ability to freely use the software? At what point does it tell you they reserve the right to snoop on you?
Yes Microsoft and their EULA's suck BIG time, this however does not. Instead of having a fucking knee jerk reaction to something completely and utterly meaningless to you stop and read what it actually states, then if you don't like it, go and use their code, renamed iceweasle ( and you wonder why the mainstream has a problem with using Linux ) or some other such shite brought to you by the tinfoil hat brigade.
You get a World Class browser for free as in you don't have to pay one red cent for it. They have to put notice up to ensure they can defend their Trademark in a court of law. They have to put up notice so they can keep dipshits who decide to use to run a fucking Nuclear Reactor from taking the to court ie:NO WARRANTY OF ANY KIND, and other such matters and you asshats bitch because you have to click accept? Give me a fucking break, talk about a bunch of ungrateful swine.
Your analogy is somewhat suspect, at least in my eyes. I have never worked at a chemical plant or refinery, but it seems to me, that they shut down when they need to replace a valve, sensor or whatnot. If the need to replace some part leading from the cracking tower, they stop cracking ( shut off the flow of steam and the flow of raw material ) and drain the lines before un-bolting that huge as valve from the huge ass pipe.
Unfortunately you can just "shut off" a 747 in flight you can perhaps slow it down a bit, divert it to another airport but that big mofo is coming in to land..
I love the idea of ADS-B, I just don't need more general information, I need information that matters. If the thing can tell me, "You are on a collision course with another plane and that plane is at bearing 304, altitude X, speed Y and give me time to intercept, then great, otherwise leave me the fuck alone, I got shit to do that is immediate.
If this makes the ATC system better, I am all for it, just don't give me more information overload, I have enough things to juggle, between managing the airplane, flying the airplane, listening to ATC and complying with their directions.
I am all for privatization, right up to the point where there is a profit motive.
The nuclear Navy has a perfect safety record, not one reactor failure ( think 3 mile island ) ever yet nuclear power with a profit motive has a rather spotty record aye?
I have no problem with having a nuclear power plant in my hood as long as the plant itself is designed and built without a profit motive, because LOTS of lives are at stake.
I would have no problem with the ATC system being privatized as long as there is no profit motive, because LOTS of lives are at stake.
When there is a profit motive, there will always be corner cutting, bonus seeking and all the other little hijinks that go on when someone is out to make a buck.
As a pilot, unless I cannot communicate with ATC I don't want to have yet another system to monitor. Cruise flight is not where the problem is, it is approach and departure and in those phases of flight I am one busy MoFo and I don't have time to stare at yet another screen full of mostly useless information, since I am busy flying the fucking plane.
Technology has come a long way, I don't have to constantly scan the engine instruments because they have warning lights and buzzers and whatnot that will get my attention if something starts to go south. If I am making a visual approach my eyeballs are looking OUTSIDE, if I am making an instrument approach my eyes are scanning the primary flight instruments, not a screen telling me there are 43 other aircraft doing the exact same thing I am doing.
There are so many points of failure in a system this complex, that it simply boggles the minds of the best architects we have out there.
Discloser... I am a pilot, I deal with Air Traffic Control and all the problems that they have
Let's begin with a single aircraft that will fly a from point A to point B. The flight is scheduled to leave at 0600Z from point A and arrive at point B at 1200Z for a total of 6 hours of flight time. The aircraft will have an SOA ( speed of advance ) of 600 kts ( nautical miles per hour ) and fly at 30,000 feet. Given this data the aircraft will cover 3600 nautical miles.
Given those parameters, it is simple to create and appropriate data structure that will represent the aircraft in question, allow us to create a series of data points to describe it's theoretical route, and predict where that aircraft is at any given moment with mathematical precision. In short it boils down to a rather simple database problem. Most any database cooker can come up with a set of queries to predict where crossing routes and position problems will be when you add more then one flight to the problem.
All of this will work just fine, right up until reality rears it's ugly head.
The cruise or en route portion of a flight is pretty much as simple as I have described, with the exception of having to readjust things based on headwinds, aircraft performance and other factors that may or may not change during the duration of the flight. We have gotten pretty good at predicting what the wind will be like at the planned altitude of the flight, but there are occasions when we are flat out wrong and have to make adjustments. If the winds at say 30,000 ft are not as predicted then to maintain the SOA the pilot needs to change altitude. So we can either propose a change, take that bit of data and run it through a "what if" calculation and then tell the pilot yes or no based on the result which will tell us if that action will cause a potential crossing problem with another flight, or have the software check all the flights currently in the system and have it give us an altitude that will not cause a crossing situation that is as close as possible to the desired altitude while maintaining a safety margin.
The real problem exists at the airports. Things get delayed, weather problems, mechanical problems, passenger problems, luggage problems, you name it, it is going to happen at one point or another. It backs the system up and then the simple database problem turns into the "Traveling Salesman Problem" from hell.
Let us consider a very probable occurrence..... Plane A is sitting at the gate getting serviced for the next flight. The fuel truck rolls up to full up the plane and the fueler gets out, gets his hoses out, plugs them into the fueling connection on the ground and connection on the plane. He looks at his manifest that reads 30,000 lbs of JET-A for this plane, he sets the controls on the fuel truck appropriately and starts pumping. For some reason when the meter reads 29,670 fuel starts spilling from the wing! His "Oh Fuck Light" goes of in his head and he runs for the truck to shut off fuel flow but by the time he makes it the 30 feet from where he is watching to make sure his connection is not leaking the meter now reads 29,980. So you have just spilled around 300 lbs ( about 50 gallons ) of fuel all through the wing and onto the ground. So this plane is not going ANYWHERE for at least the next couple of hours AT LEAST.
With this little problem, and it has happened to me things start to avalanche very quickly. I need another plane, another gate and I have to get the passengers and their luggage off of this plane, to the other plane at another gate, hint hint, this does not happen quickly. We are now occupying two gates and we are going to depart late, more then likely over an hour late if not a more.
So now the arriving flight that was supposed to park at the gate where the airpla
I think many have missed the point entirely. I in NO way advocate allowing anyone to run ANY code they want to fling onto my machine.
What I advocate is a more cohesive way ( and ultimately simpler ) way of doing what we are trying to do today with even more security.
In my example to pop open a new web page the page will deliver text but in the form of a script that can call options built into the browser. This happens now in the form of and all of this stuff has to either be controlled by breaks, and or CSS that is just miserable to deal with. The DIV tag does the same thing as a method called say Document.CreateArea(UperLeft,LowerRight,StyleReference) and everytbing is referenced to the upper left corner of Document. Given a name such invocation such is TopBanner = document.CreateArea(...) then TopBanner now has its own name space within Document and can be referred to as such. Each area has its own location. You can let things flow within an area as they do now, but the backside coding is much simpler since there is no global CSS stack desperately trying to make these things all flow around each other in odd sort of free form ways. Each area can be brought to the front my a mouse click, or minimized even if that is what the designer intends for their layout.
So what I am advocating is not just letting random code run wild, I am advocating a smarter and simpler way of controlling the appearance and functionality of the web, within the browser space.
Think of each document that you open being its own VERY sand boxed MDI if you will, but with modern controls like we have in ALL GUI's that allow for more controlled placement of the various elements that we want to see. I mean right now we can float something left or right and text sort of wraps around it. But without the most torturous invocations of some pretty insane CSS we cannot float center and have a picture sitting in the middle of the page and have text flow around it. Now consider that you Document knows where all the various areas are, it would be far simpler for it to wrap text around those elements instead of having to rely on walking the CSS stack, to try an figure out what is where and how its all supposed to render. As I said, CSS is a was a great idea, but it has gone horribly wrong because of the things the DOM model is lacking. One glaring error that has never been corrected is the checkbox in forms. I looked for DAYS to try an figure out a way to fetch back either through a post method or a get method the false condition of a checkbox being checked. And without a hidden field and some silly JS floating around you cannot discover that the user never checked that box!
There are a LOT of fundamental problems with DOM, JS and CSS that have yet to be addressed and its high time we got with the program.
Java Script is a really bad joke. Not that there is anything better at hand, but it is utterly and completely in drastic need a of "Lift up the radiator cap, and drive a new one underneath it treatment" and damn soon.
Right along next to it, is the Document Object Model, yet another thing needing the same treatment,
.
And right along with those two is CSS, a good idea gone horribly wrong.
So what do we do? How do we fix this, how do we build something that everyone can agree on? The short answer is, more then likely we cannot. Why? Because there are to many ego's involved, to many pet languages involved, to many pet methods and styles.
But with a lot of "We are going to ram this right up your ass, everyones ass, because it will be so clean and functional you won't have a choice but to bend over and take it." attitude AND aptitude we can succeed.
The idea of DOM is great, because it creates a known method of manipulating the bits and parts of an web page to effect the best possible user experience, but the loosely coupled nature of JS, DOM and CSS just keep making the whole thing just become to overwrought with complexity and errors.
The way to fix this is IMNSHO is to rebuild it into one entity.
Wait for it......Ohhh the horor!!!!!. No kids it is not a horror, it is supremely logical. The very notion that you treat a web page as if it was a bit of paper is ludicrous! It is not a peace of paper, it is a digital screen capable of all sorts of neat tricks, and the engine that drives it is superb. The notion of paper needs to be simply left behind, move on, it was a hell of a go, but it is time to grown up, but into what?
The web browser needs to transform into a sand-boxed window manager. How is that again? A window manger, huh? The idea sits in front of ALL of you every day. The GUI desktop moves things around, arranges windows, covers them up allows them to be moved, adjusts for sizing, everything we desperately try to implement in CSS and DOM but pretty fail to do.
How do we accomplish this? Well not without a lot of yelling and screaming. But consider this, if you had the same level of control over your your web page presentation as you have over any GUI application, how happy would you be? Personally I would be ecstatic! I mean Wooooo-Whooooooo! Just think of the level of control you would have, you could build perfectly interactive web pages that would vow to your and more importantly, your audiences every whim.
As a set of verbs and nouns JS is not that bad. I would tweak it a little a little but not much. What I would do though, is make DOM ( or an equivalent name ) be derived from JS instead of having JS simply be able to connect to it, for example, a web page would begin with a call to JS ( or the equivalent name ) MyPage = NewDocument(...) and that would pop open the new page, fresh and clean. After that you start laying out the sections, eg: UpperLeft = MyPage.CreateArea(...) rinse and repeat until you have all your areas defined. At that point, you begin to fill in all the areas by making calls to UpperLeft for things like control's, backgrounds, colors, scrolling text area's and the like. At that point you could then have a successor to CSS be a value passed to UpperLeft that would then style it as you desire.
This would eliminate some of the biggest problems with CSS, ie: the box model and DIVS freeing you up to really concentrate on the content. In addition there would be a menu model in there. Trying to do menus in CSS is at best a dark art and at worst damn near impossible, depending on what you want to do. How about something like TopMenu = MyPage.New.H[V]menu which could then be fed a very small XML hierarchy ( and by the way, I HATE XML with a passion you can only imagine but in this case it makes sense ) that would populate the menu, it handles the layout of the thing, you simply provide it colors, sizes, content and the OnClick call's
But this will make web pages WAY to complicated you say
Is either in new housing developments where the builder puts it in when the streets are being laid out, or in a HOA where there are decent number of homes and the HOA wants to fund it off of homeowner dues,
Alternatively small townships or cities could go back and retrofit fiber to every home then build a small NOC and then provide enough interconnects to allow the various providers equal access to provide services to the community and then each resident can truly choose what they want in a package from Comcast, AT&T, COVAD, Joes Brand ISP.
But at any rate the entity in question would not be able to make sweetheart deals as it would be prevented by CC&R's or local regulation
Now the chances of that happening are slim to none, because as soon as you try and do it some compnay like Comcast or AT&T will take you to court like they have taken every other entity to court when they tried to go it on their own. About the only ones who might be able to get away with it are HOA's since they are not a government entity since the Government is not supposed to compete against private business.
My in-laws live in a HOA ( a fairly large one of about a thousand homes ) and the HOA owns the cable system. The HOA purchases content ( HBO, Showtime, etc. etc. ) and transmits it over the cable system. They also now provide internet access and have a a bonded T1 ( two T1's ) and everyone is throttled. Since mostly older people live in the community, most are not big time internet users all though there are some families with kids and such.
Buying bandwidth gets expensive, T3 prices start as low as about 4K per month, and can hit upwards of 15K a month, bandwidth is expensive.
So how would one in a community of say 1000 homes handle something like having a unlimited bandwidth T3 feeding them and make it fair for everyone. The numbers are easy, Lets say the rate is 15K per month, so that is $15.00 per household( real good!!!), a T3 is 45megs, so each house gets 45K? Hmmmm not so good. Or do you go on the honor system, no throttling, and then some kid ( or horny old goat ) discovers youporn.com or a bit torrent and he just eats bandwidth like there is no tommorow?
Answer that question, in a way that users will put up with, and let me tell you AT&T or Comcast has a job opening for you!!!
I stand corrected, but I think my original point still holds.
While even a more efficient channel controller will open up those choke points to a degree, the main processing unit still sits there doing nothing, for a very large percentage of the time waiting on Data, User Input, all those things that happen rather S L O W L Y.
We already have servers for INSANELY HUGE internet apps, its called a main-frame.
It amazes me to no end, how many people still think its about the CPU. It about throughput, ok? Can we just get that fucking settled already? I don't give a rats ass how many damn cores you have running or if the are running 100 gigahertz, if you are still reading data across a bus, over an ethernet connection, ANYTHING that does not work at CPU speed then it makes little difference, that damn CPU will be sitting there spinning waiting for the data to come popping through so it can do something!
Mainframes use 386 chips for I/O controllers and even those sit there and loaf, talk about a waste of electricity! About.01% of the worlds computers need the kind of power that a CPU with more then say 4 cores provide. Those that do are rather busy doing insanely complex mathematics, but even then I doubt that the CPU(s), even when running at "100%" utilization are actually doing the work that they were programmed to do, rather they are waiting for I/O to a database or RAM and fetching data.
Until someone figures out how to move data in a far far more efficient manner then we currently understand, these mega-core CPU's, while nice to think about, are simply a waste of time and silicon with the possible exception of research.
Unfortunately, what's preventing business's adopting Linux or OS X is the fact that the various 'solution providers' & VARs make more money reselling Microsoft products.
But it is not just windows ubiquity that makes this possible. It is the fact that MS has invested billions of dollars making the end to end application chain and development tools work pretty seamlessly. I don't like MS at all and think they are very very bad actors, but you must admit, that VBA for all its security problems, allows you to bring together lots of analysis tools fairly simply. which in turn allows developers to build business tools without having to re-invent the wheel, fairly rapidly, with a pretty clean interface.
Call me old fashioned, but ummmmm, you malloc() it , you free() it.
I mean when did this whole notion of malloc() it and forget it come to pass? Did Ron popeil suddenly start writing programming languages or something? I don't care how complex your code is, at some point that bit of memory is no longer required and at that point it is your job as the programmer, to clean up after yourself and free() it, no?.
This is simple math. If it costs x to take if from idea on a napkin to a product ready for shipment, one must make more then X, if for no other reason then to cover your duplication / bandwidth expenses, much less a profit.
Now the notion of an auction is fine. The developer at least has a forward idea of the market, and what the market will bare for a given commodity. Sort of like selling futures, but with nothing to back it up, but an interesting idea none the less. So... Lets say for sake of argument, that this auction happens and a price for a game with n features is generally arrived at, lets call that Y and the number of bidders in the auction shall be stated as Z.
So, in flexible terms, since you can never exactly judge the market with certainty, Y * Z = budget and profit margin. Simple. Now you always give yourself some wiggle room and you discount the values of Y and Z and hope you guess correctly.
So development went well, you achieved your goal of n features for the game and its a great one. Launch day is coming up and everything looks good. You and the whole team are looking forward to a nice profit if Y and Z hold. But....
This game is going like hotcakes baby, and well "information does want to be free" and within two days of launch its on Pirate bay and the Torrent Kiddies are sucking it down as fast as they can and.... "Houston, we have a problem".
Suddenly Z is going into the tank because hey what the fuck I can just pull it down of a torrent and why should I fork over my cash?
Pretty soon Y * Z is not looking so good, and oh well I guess no bonuses for anyone. Who knows we might have all done pretty well but too many people pirated it instead of paying for it. So I guess its layoff time too... Oh well I guess we can use all those CD/DVD's as coaters.
They should really stop fighting the wave, and put all their anti-piracy money into creative talent and developers.
Uhmmm how about stop STEALING from game studio's and the like and start paying for the games you all seem to love playing. Every copy that gets pirated, means n dollars that the company does not have to hire more talent and more developers.
I mean please define for me what you think their acceptable loss rate should be?
Should it be:
1% of revenue?
10% of revenue?
15% of revenue?
20% of revenue?
30% of revenue?
50% of revenue?
Come on information wants to be free right? At what point to the people who fund these things, be it Share Holder's or Private Equity, decide that the ROI just isn't cutting it because of piracy? I mean once other investments starting doing better, the funding for these will dry up, its just the way the world works
You can piss and moan all you want that it only cost the 400 million the get the game from concept on a napkin to distributable CD, and they make 10 times that in sales, but at what risk? Your average game player changes their minds about a game like the weather changes.
For a gaming company to stay in business, and make no mistake about it, it IS a business, they have to be able to fund development. If 30% of the product is pirated they won't be in business for very long, or the quality of the games will start to suffer.
The bottom line is you can't have it both ways. So pay for it or start getting outdoors and go camping, play softball, soccer or something, those are free to play, no royalties or DRM, just a nominal cost for the appropriate required equipment, ie: a ball.
Interesting...
I was writing IRS's in Turbo Pascal in 1984/85 I think it was? It had some inline assembly, but most of it was written in TP. I was writing TSR's as well. I guess over the years I wrote many many programs in TP and noe of them seemed to have the problems you describe. Now arguably they were running on either PCDos ( IBM's flavor on actual IBM harware PC, PX-XT and the like including the mighty PC-AT) or later MS-DOS on better clone hardware.
TP, as I recall did not have built in support for ANY UART or any VIDEO card. It relied strictly on INT 21 calls to reach the video system ( VERY slow BIOS calls) or for POLLED access to the serial ports. In those days you either ran Vern Burgs TSR for interrupt driven ASYNC I/O or you rolled your own ISR routine. FIDO Net along with many other BBS's used the same thing. I had some issues with the way it worked, so I wrote my own ASYNC I/O ISR routines.
Even when the GRAHPICS unit was included, you only got CGA level support, because that was the only thing you could count on to work, and that was because everyone supported that mode as it was a standard. And as I recall quite a bit of the GRAPHICS unit was in-line assembler.
I know that if you executed a WriteLn() or a ReadLN() call and it wasn't to a disk file, ie: ReadLN(file,var) it the RTL used STDIN and STDOUT ONLY
At the time, there was not a direct screen I/O routine in the RTL so I had to write one. I wrote some of the first X-MODEM and Y-MODEM/Y-MODEM-G implementations that were deigned to be OVL files for TP that others could link in, and I don't recall them having much trouble either, but obviously your millage varied.
TP was so good in fact, that I think version 4 or 5 of Quatro-Pro was written entirely in TP version 5 I think it was... God that was years ago.
To this day I still use Delphi ( version 5 ) to write all sorts of things, the programs run fine on everything on Win-98SE, NT, 2K and XP ( although I have never used Vista so they still might run fine on that) and the compiler produces very small very fast executables. As a matter of fact the last thing I turned out was in interface for ORACLE 11! It uses the BDE and connects directly to OCIWIN32.DLL just fine, no ODBC required, runs Store Procedures and pretty much handles anything I would like to do, so again I guess YMV'd greatly from mine.
From my POV up until MS got their hooks into Borland and pretty much shoved MFC & .Net down their throat their stuff was pretty damn slick. Personally, I think the best version of Delpi was version 5.
The other reply to your post, has it mostly correct. It was Brain-Drain, I know I watched it happen. MS literally rented a hotel suite and brought their checkbook. They would write checks for amounts they knew that Borland would have a very difficult time matching, and even when they could MS would just add zero's.
MS could not compete with the talent pool that Borland had put together, and when they realized this they just started writing checks. If you can't beat them fair and square, just hire away their engineers, since money was and is pretty much no object to MS, it was a no brainer for them.
As I have said before, MS does not want to compete with anyone, they just want to buy the market and then just keep feeding everyone their broken crap
Dude, you seriously need to stop sipping the red bull or whatever your drinking...
Turbo-Pascal was a god send to the programming world. It was an entry point for 10's of thousands of programmers and I am one of them. It was the 1st IDE, write your code then compile and run in one key press! No one had that, not a single company. Yes it was limited to 64K of code and data and only made an image ( com file ), but what you could do in that 64K was beyond anything else at the time.
Say what you will about Anders going over to the dark side, I mean until then he was my personal hero, but there is no denying the mans brilliance. Turbo Pascal for Windows? Again, no company had anything remotely close to that and he was the architect. Delphi... Again, no one had anything close to that, and he was the architect.
The OOP model that came out of Borland made C++ look exactly like the joke it was and is today. Their model was infinitely superior, and again, he was the architect.
The demise of Borland was mostly about Microsoft's malevolence and monopolistic ways. If MS had wanted actual competition, more then likely we would would all be programming in Borland languages to this day, instead of the shit that comes from MS which most of Anders has a hand in, but is corrupted by the MS Marketing machine making technology decisions.
This is not that hard, and it sure isn't rocket science.
Strip down a distro to the kernel then ad the following:
Please a driver for something I missed....
The device has only enough ROM to POST and is hard coded to boot from the thumb drive which contains the OS & drivers and voting software with a modified USB connector that is a different shape then standard. This is a mild security feature.
An additional thumb drive will hold the data, again with a different shape so that the two cannot be confused, and both are encrypted using a two key scheme of some sort, suggestions?
Insert the drive one, power up the machine, it will then POST itself and ask for the data key and will go no farther until it validates the Data Drive. Voting commences and when voting is complete, the machine is shut down, drives are pulled and returned to the registrar for counting.
Right about the same time they start mining black crystal on the planet Ballybran for instantaneous communication over light year distances.
Indeed on an IBM Mainframe you could run any number of VM's of various flavors and they were all under the control CMS and life was very very good indeed, but those days are ....
Ohh yeah, they are still here! VMWare is just re-inventing a very well designed wheel that has been rolling for the last few decades so what is the point?
Is it just a reincarnation of the Not Invented Here syndrome, yet again?
I really don't care if I get mod'd one way or the other. I just really sends me off the deep end when I hear people like you bitch and complain because you have to "agree" to some pretty damn innocuous statements and start saying things like "It ain't free man!!!".
A what point to you have to open up your wallet and pay? At what point did you have to agree that you owed the Mozilla foundation anything? At what point does it infringe on your ability to freely use the software? At what point does it tell you they reserve the right to snoop on you?
Yes Microsoft and their EULA's suck BIG time, this however does not. Instead of having a fucking knee jerk reaction to something completely and utterly meaningless to you stop and read what it actually states, then if you don't like it, go and use their code, renamed iceweasle ( and you wonder why the mainstream has a problem with using Linux ) or some other such shite brought to you by the tinfoil hat brigade.
You get a World Class browser for free as in you don't have to pay one red cent for it. They have to put notice up to ensure they can defend their Trademark in a court of law. They have to put up notice so they can keep dipshits who decide to use to run a fucking Nuclear Reactor from taking the to court ie:NO WARRANTY OF ANY KIND, and other such matters and you asshats bitch because you have to click accept? Give me a fucking break, talk about a bunch of ungrateful swine.
Your analogy is somewhat suspect, at least in my eyes. I have never worked at a chemical plant or refinery, but it seems to me, that they shut down when they need to replace a valve, sensor or whatnot. If the need to replace some part leading from the cracking tower, they stop cracking ( shut off the flow of steam and the flow of raw material ) and drain the lines before un-bolting that huge as valve from the huge ass pipe.
Unfortunately you can just "shut off" a 747 in flight you can perhaps slow it down a bit, divert it to another airport but that big mofo is coming in to land..
I love the idea of ADS-B, I just don't need more general information, I need information that matters. If the thing can tell me, "You are on a collision course with another plane and that plane is at bearing 304, altitude X, speed Y and give me time to intercept, then great, otherwise leave me the fuck alone, I got shit to do that is immediate.
If this makes the ATC system better, I am all for it, just don't give me more information overload, I have enough things to juggle, between managing the airplane, flying the airplane, listening to ATC and complying with their directions.
I am all for privatization, right up to the point where there is a profit motive.
The nuclear Navy has a perfect safety record, not one reactor failure ( think 3 mile island ) ever yet nuclear power with a profit motive has a rather spotty record aye?
I have no problem with having a nuclear power plant in my hood as long as the plant itself is designed and built without a profit motive, because LOTS of lives are at stake.
I would have no problem with the ATC system being privatized as long as there is no profit motive, because LOTS of lives are at stake.
When there is a profit motive, there will always be corner cutting, bonus seeking and all the other little hijinks that go on when someone is out to make a buck.
Ever been a pilot?
As a pilot, unless I cannot communicate with ATC I don't want to have yet another system to monitor. Cruise flight is not where the problem is, it is approach and departure and in those phases of flight I am one busy MoFo and I don't have time to stare at yet another screen full of mostly useless information, since I am busy flying the fucking plane.
Technology has come a long way, I don't have to constantly scan the engine instruments because they have warning lights and buzzers and whatnot that will get my attention if something starts to go south. If I am making a visual approach my eyeballs are looking OUTSIDE, if I am making an instrument approach my eyes are scanning the primary flight instruments, not a screen telling me there are 43 other aircraft doing the exact same thing I am doing.
It it was only true!
There are so many points of failure in a system this complex, that it simply boggles the minds of the best architects we have out there.
Discloser... I am a pilot, I deal with Air Traffic Control and all the problems that they have
Let's begin with a single aircraft that will fly a from point A to point B. The flight is scheduled to leave at 0600Z from point A and arrive at point B at 1200Z for a total of 6 hours of flight time. The aircraft will have an SOA ( speed of advance ) of 600 kts ( nautical miles per hour ) and fly at 30,000 feet. Given this data the aircraft will cover 3600 nautical miles.
Given those parameters, it is simple to create and appropriate data structure that will represent the aircraft in question, allow us to create a series of data points to describe it's theoretical route, and predict where that aircraft is at any given moment with mathematical precision. In short it boils down to a rather simple database problem. Most any database cooker can come up with a set of queries to predict where crossing routes and position problems will be when you add more then one flight to the problem.
All of this will work just fine, right up until reality rears it's ugly head.
The cruise or en route portion of a flight is pretty much as simple as I have described, with the exception of having to readjust things based on headwinds, aircraft performance and other factors that may or may not change during the duration of the flight. We have gotten pretty good at predicting what the wind will be like at the planned altitude of the flight, but there are occasions when we are flat out wrong and have to make adjustments. If the winds at say 30,000 ft are not as predicted then to maintain the SOA the pilot needs to change altitude. So we can either propose a change, take that bit of data and run it through a "what if" calculation and then tell the pilot yes or no based on the result which will tell us if that action will cause a potential crossing problem with another flight, or have the software check all the flights currently in the system and have it give us an altitude that will not cause a crossing situation that is as close as possible to the desired altitude while maintaining a safety margin.
The real problem exists at the airports. Things get delayed, weather problems, mechanical problems, passenger problems, luggage problems, you name it, it is going to happen at one point or another. It backs the system up and then the simple database problem turns into the "Traveling Salesman Problem" from hell.
Let us consider a very probable occurrence..... Plane A is sitting at the gate getting serviced for the next flight. The fuel truck rolls up to full up the plane and the fueler gets out, gets his hoses out, plugs them into the fueling connection on the ground and connection on the plane. He looks at his manifest that reads 30,000 lbs of JET-A for this plane, he sets the controls on the fuel truck appropriately and starts pumping. For some reason when the meter reads 29,670 fuel starts spilling from the wing! His "Oh Fuck Light" goes of in his head and he runs for the truck to shut off fuel flow but by the time he makes it the 30 feet from where he is watching to make sure his connection is not leaking the meter now reads 29,980. So you have just spilled around 300 lbs ( about 50 gallons ) of fuel all through the wing and onto the ground. So this plane is not going ANYWHERE for at least the next couple of hours AT LEAST.
With this little problem, and it has happened to me things start to avalanche very quickly. I need another plane, another gate and I have to get the passengers and their luggage off of this plane, to the other plane at another gate, hint hint, this does not happen quickly. We are now occupying two gates and we are going to depart late, more then likely over an hour late if not a more.
So now the arriving flight that was supposed to park at the gate where the airpla
Thanks for the reply...
I think many have missed the point entirely. I in NO way advocate allowing anyone to run ANY code they want to fling onto my machine.
What I advocate is a more cohesive way ( and ultimately simpler ) way of doing what we are trying to do today with even more security.
In my example to pop open a new web page the page will deliver text but in the form of a script that can call options built into the browser. This happens now in the form of and all of this stuff has to either be controlled by breaks, and or CSS that is just miserable to deal with. The DIV tag does the same thing as a method called say Document.CreateArea(UperLeft,LowerRight,StyleReference) and everytbing is referenced to the upper left corner of Document. Given a name such invocation such is TopBanner = document.CreateArea(...) then TopBanner now has its own name space within Document and can be referred to as such. Each area has its own location. You can let things flow within an area as they do now, but the backside coding is much simpler since there is no global CSS stack desperately trying to make these things all flow around each other in odd sort of free form ways. Each area can be brought to the front my a mouse click, or minimized even if that is what the designer intends for their layout.
So what I am advocating is not just letting random code run wild, I am advocating a smarter and simpler way of controlling the appearance and functionality of the web, within the browser space.
Think of each document that you open being its own VERY sand boxed MDI if you will, but with modern controls like we have in ALL GUI's that allow for more controlled placement of the various elements that we want to see. I mean right now we can float something left or right and text sort of wraps around it. But without the most torturous invocations of some pretty insane CSS we cannot float center and have a picture sitting in the middle of the page and have text flow around it. Now consider that you Document knows where all the various areas are, it would be far simpler for it to wrap text around those elements instead of having to rely on walking the CSS stack, to try an figure out what is where and how its all supposed to render. As I said, CSS is a was a great idea, but it has gone horribly wrong because of the things the DOM model is lacking. One glaring error that has never been corrected is the checkbox in forms. I looked for DAYS to try an figure out a way to fetch back either through a post method or a get method the false condition of a checkbox being checked. And without a hidden field and some silly JS floating around you cannot discover that the user never checked that box!
There are a LOT of fundamental problems with DOM, JS and CSS that have yet to be addressed and its high time we got with the program.
Java Script is a really bad joke. Not that there is anything better at hand, but it is utterly and completely in drastic need a of "Lift up the radiator cap, and drive a new one underneath it treatment" and damn soon.
Right along next to it, is the Document Object Model, yet another thing needing the same treatment,
.
And right along with those two is CSS, a good idea gone horribly wrong.
So what do we do? How do we fix this, how do we build something that everyone can agree on? The short answer is, more then likely we cannot. Why? Because there are to many ego's involved, to many pet languages involved, to many pet methods and styles.
But with a lot of "We are going to ram this right up your ass, everyones ass, because it will be so clean and functional you won't have a choice but to bend over and take it." attitude AND aptitude we can succeed.
The idea of DOM is great, because it creates a known method of manipulating the bits and parts of an web page to effect the best possible user experience, but the loosely coupled nature of JS, DOM and CSS just keep making the whole thing just become to overwrought with complexity and errors.
The way to fix this is IMNSHO is to rebuild it into one entity.
Wait for it......Ohhh the horor!!!!!. No kids it is not a horror, it is supremely logical. The very notion that you treat a web page as if it was a bit of paper is ludicrous! It is not a peace of paper, it is a digital screen capable of all sorts of neat tricks, and the engine that drives it is superb. The notion of paper needs to be simply left behind, move on, it was a hell of a go, but it is time to grown up, but into what?
The web browser needs to transform into a sand-boxed window manager. How is that again? A window manger, huh? The idea sits in front of ALL of you every day. The GUI desktop moves things around, arranges windows, covers them up allows them to be moved, adjusts for sizing, everything we desperately try to implement in CSS and DOM but pretty fail to do.
How do we accomplish this? Well not without a lot of yelling and screaming. But consider this, if you had the same level of control over your your web page presentation as you have over any GUI application, how happy would you be? Personally I would be ecstatic! I mean Wooooo-Whooooooo! Just think of the level of control you would have, you could build perfectly interactive web pages that would vow to your and more importantly, your audiences every whim.
As a set of verbs and nouns JS is not that bad. I would tweak it a little a little but not much. What I would do though, is make DOM ( or an equivalent name ) be derived from JS instead of having JS simply be able to connect to it, for example, a web page would begin with a call to JS ( or the equivalent name ) MyPage = NewDocument(...) and that would pop open the new page, fresh and clean. After that you start laying out the sections, eg: UpperLeft = MyPage.CreateArea(...) rinse and repeat until you have all your areas defined. At that point, you begin to fill in all the areas by making calls to UpperLeft for things like control's, backgrounds, colors, scrolling text area's and the like. At that point you could then have a successor to CSS be a value passed to UpperLeft that would then style it as you desire.
This would eliminate some of the biggest problems with CSS, ie: the box model and DIVS freeing you up to really concentrate on the content. In addition there would be a menu model in there. Trying to do menus in CSS is at best a dark art and at worst damn near impossible, depending on what you want to do. How about something like TopMenu = MyPage.New.H[V]menu which could then be fed a very small XML hierarchy ( and by the way, I HATE XML with a passion you can only imagine but in this case it makes sense ) that would populate the menu, it handles the layout of the thing, you simply provide it colors, sizes, content and the OnClick call's
But this will make web pages WAY to complicated you say
Is either in new housing developments where the builder puts it in when the streets are being laid out, or in a HOA where there are decent number of homes and the HOA wants to fund it off of homeowner dues,
Alternatively small townships or cities could go back and retrofit fiber to every home then build a small NOC and then provide enough interconnects to allow the various providers equal access to provide services to the community and then each resident can truly choose what they want in a package from Comcast, AT&T, COVAD, Joes Brand ISP.
But at any rate the entity in question would not be able to make sweetheart deals as it would be prevented by CC&R's or local regulation
Now the chances of that happening are slim to none, because as soon as you try and do it some compnay like Comcast or AT&T will take you to court like they have taken every other entity to court when they tried to go it on their own. About the only ones who might be able to get away with it are HOA's since they are not a government entity since the Government is not supposed to compete against private business.
My in-laws live in a HOA ( a fairly large one of about a thousand homes ) and the HOA owns the cable system. The HOA purchases content ( HBO, Showtime, etc. etc. ) and transmits it over the cable system. They also now provide internet access and have a a bonded T1 ( two T1's ) and everyone is throttled. Since mostly older people live in the community, most are not big time internet users all though there are some families with kids and such.
Buying bandwidth gets expensive, T3 prices start as low as about 4K per month, and can hit upwards of 15K a month, bandwidth is expensive.
So how would one in a community of say 1000 homes handle something like having a unlimited bandwidth T3 feeding them and make it fair for everyone. The numbers are easy, Lets say the rate is 15K per month, so that is $15.00 per household( real good!!!), a T3 is 45megs, so each house gets 45K? Hmmmm not so good. Or do you go on the honor system, no throttling, and then some kid ( or horny old goat ) discovers youporn.com or a bit torrent and he just eats bandwidth like there is no tommorow?
Answer that question, in a way that users will put up with, and let me tell you AT&T or Comcast has a job opening for you!!!
Good god, if it behaves like CSS its time to send it bits into the ether because that is where CSS belongs as well. Talk about a fucking abortion!
Don't get me wrong, we need something that can do what CSS is supposed to do, but can we please make it actually fucking structured ok?
Ohhh and one other thing, can we make it actually work well while we are at it?
I stand corrected, but I think my original point still holds.
While even a more efficient channel controller will open up those choke points to a degree, the main processing unit still sits there doing nothing, for a very large percentage of the time waiting on Data, User Input, all those things that happen rather S L O W L Y.
We already have servers for INSANELY HUGE internet apps, its called a main-frame.
It amazes me to no end, how many people still think its about the CPU. It about throughput, ok? Can we just get that fucking settled already? I don't give a rats ass how many damn cores you have running or if the are running 100 gigahertz, if you are still reading data across a bus, over an ethernet connection, ANYTHING that does not work at CPU speed then it makes little difference, that damn CPU will be sitting there spinning waiting for the data to come popping through so it can do something!
Mainframes use 386 chips for I/O controllers and even those sit there and loaf, talk about a waste of electricity! About .01% of the worlds computers need the kind of power that a CPU with more then say 4 cores provide. Those that do are rather busy doing insanely complex mathematics, but even then I doubt that the CPU(s), even when running at "100%" utilization are actually doing the work that they were programmed to do, rather they are waiting for I/O to a database or RAM and fetching data.
Until someone figures out how to move data in a far far more efficient manner then we currently understand, these mega-core CPU's, while nice to think about, are simply a waste of time and silicon with the possible exception of research.
Because thats "As good as it gets"...
I wonder how many others got the cool reference.
Yes, you are correct..
Unfortunately, what's preventing business's adopting Linux or OS X is the fact that the various 'solution providers' & VARs make more money reselling Microsoft products.But it is not just windows ubiquity that makes this possible. It is the fact that MS has invested billions of dollars making the end to end application chain and development tools work pretty seamlessly. I don't like MS at all and think they are very very bad actors, but you must admit, that VBA for all its security problems, allows you to bring together lots of analysis tools fairly simply. which in turn allows developers to build business tools without having to re-invent the wheel, fairly rapidly, with a pretty clean interface.
"When I find myself in times of trouble, Dennis Richie comes to me, speaking words of wisdom, code in C, C, C, Ceeeeeee".
With apologies to so many.....
Call me old fashioned, but ummmmm, you malloc() it , you free() it.
I mean when did this whole notion of malloc() it and forget it come to pass? Did Ron popeil suddenly start writing programming languages or something? I don't care how complex your code is, at some point that bit of memory is no longer required and at that point it is your job as the programmer, to clean up after yourself and free() it, no?.
It cannot be false, in any sense.
This is simple math. If it costs x to take if from idea on a napkin to a product ready for shipment, one must make more then X, if for no other reason then to cover your duplication / bandwidth expenses, much less a profit.
Now the notion of an auction is fine. The developer at least has a forward idea of the market, and what the market will bare for a given commodity. Sort of like selling futures, but with nothing to back it up, but an interesting idea none the less. So... Lets say for sake of argument, that this auction happens and a price for a game with n features is generally arrived at, lets call that Y and the number of bidders in the auction shall be stated as Z.
So, in flexible terms, since you can never exactly judge the market with certainty, Y * Z = budget and profit margin. Simple. Now you always give yourself some wiggle room and you discount the values of Y and Z and hope you guess correctly.
So development went well, you achieved your goal of n features for the game and its a great one. Launch day is coming up and everything looks good. You and the whole team are looking forward to a nice profit if Y and Z hold. But....
This game is going like hotcakes baby, and well "information does want to be free" and within two days of launch its on Pirate bay and the Torrent Kiddies are sucking it down as fast as they can and.... "Houston, we have a problem".
Suddenly Z is going into the tank because hey what the fuck I can just pull it down of a torrent and why should I fork over my cash?Pretty soon Y * Z is not looking so good, and oh well I guess no bonuses for anyone. Who knows we might have all done pretty well but too many people pirated it instead of paying for it. So I guess its layoff time too... Oh well I guess we can use all those CD/DVD's as coaters.
Ohhh thats really funny...
They should really stop fighting the wave, and put all their anti-piracy money into creative talent and developers.Uhmmm how about stop STEALING from game studio's and the like and start paying for the games you all seem to love playing. Every copy that gets pirated, means n dollars that the company does not have to hire more talent and more developers.
I mean please define for me what you think their acceptable loss rate should be?
Should it be:Come on information wants to be free right? At what point to the people who fund these things, be it Share Holder's or Private Equity, decide that the ROI just isn't cutting it because of piracy? I mean once other investments starting doing better, the funding for these will dry up, its just the way the world works
You can piss and moan all you want that it only cost the 400 million the get the game from concept on a napkin to distributable CD, and they make 10 times that in sales, but at what risk? Your average game player changes their minds about a game like the weather changes.
For a gaming company to stay in business, and make no mistake about it, it IS a business, they have to be able to fund development. If 30% of the product is pirated they won't be in business for very long, or the quality of the games will start to suffer.
The bottom line is you can't have it both ways. So pay for it or start getting outdoors and go camping, play softball, soccer or something, those are free to play, no royalties or DRM, just a nominal cost for the appropriate required equipment, ie: a ball.