Well, the speed vs memory thing is not insurmountable. The data-forgetting apporach would probably work reasonably well on modern systems. If you do it the with the "2D platformer scrolling" method, then it should be fast enough ('cmon , if it was fast enough on my Amiga years ago, a 1GHz PeeCee should be able to cope...):
Basically,
.........
...bbb...
...bAb...
...bbb...
.........
A- tiled screen
b- tiled virtual framebuffer extent
.- "forgotten"+ regenerated on-demand.
As the screen scrolls, part of the b region becomes A, some of the b region becomes . , and some of the . region becomes b.
This is how many 2D games have scrolled since time immemorial - sometimes b was a border size smaller than an entire screen (usually 8,16, or 32 pixels wide). Making each b the size of an entire screen would probably be worthwhile in this day and age.
The forgetting where the mouse is thing could be annoying, but you could give the desktop edges a bit of resistance, so you have to push against them for a bit before they start moving.
Yep, WindowMaker workspaces are similar, but they're still a bit less streamlined.
Both Enlightenment and windowmaker come very close - if certain features from both were merged, I'd feel right at home. I believe enlightment's introducing any remaining features soon, anyway (probably already in the CVS version), so all I need do is wait:-).
for a long time, I thought. "Patents aren't a bad idea, it's just the implementation sucks". - But then I thought about it a bit. According to lore, patents were originally intended to foster innovation by exchanging a time-limited monopoly for full disclosure of the workings of an invention. But, why do it that way? The normal way for governments to interefere with that sort of thing is through the imposition of taxes, not some half-baked limited monopoly scheme. If governments had _really_ wanted to encourage innovation through full disclosure, then they should have placed a 50% tax on any proprietary products!
Clearly, encouragement of innovation was never _really_ the primary motive of the patent system, whatever the constitution says...
A computer desktop without window overlap is like a 50 cm square desk.
Well, why not make the screen like a window onto an infinite desktop, that smooth scrolls when the mouse goes to the borders?
That way, the windows don't have to overlap, and they can take up as much space as you want...
It might be good to stop the scrolling when you reach "empty space", so you don't get lost, but otherise, I'd say that'd be quite a workable plan - particularly if combined with a little pinned-to-screen desktop-in-miniature that you can click on to shortcut jump to a particular window...
Multiple desktops aren't quite good enough in most implementations I've seen (enlightenment comes close) - I've been spoiled by Amiga pubscreens.
Later versions of AmigaOS, in conjunction with common Amiga GUI toolkits such as MUI, allowed you to _persistently_ associate an application with a particular "screen" (a named virtual desktop). - So you could set your web-broswer to always open on its own screen called "Internet" for example, while your word processor opened on another screen called "Work", as did your spreadsheet.
The automatic creation/destruction of screens on an as-needed basis, the persistence of the application associations with particular screens, and the ability to name each screen, tend to be missing from X window managers. You flicked between screens by clicking the top-right hand corner of the screen, and you could drag them up and down to partially expose screens behind.
The "pub" in "pubscreen" comes from the fact that more than one application could use the same screen - in earlier versions of the AmigaOS, each application tended to use its own screen anyway, rather than being under user control.
But is that with the ctrl key in its stupid PC place, or where it should be (where the Caps Lock key is on "modern" keyboards).
Personally, I use ctrl:swapcaps in my XF86Config, so that the Caps Lock key becomes Ctrl. I'm pretty certain (at least, my little brother with a stopwatch timing 20 trials certain, then me timing him) that it takes me/him more time to reach the mouse than press a ctrl-key combo. Even reaching up to press an F-key is faster than going for the mouse - I've always been a fan of an always-visible panel on the screen, with a block of function names + corresponding keys.
That said, I've been investigating a "fast" (tens of words per minute) way to "type" with mice/trackballs - I'll probably do a public release in a few weeks, depending on (a) time commitments (b)whether I can remember how to code in anything other than the Java which has so rotted my brain, and most importantly (c) whether it really is fast.:-)
No, they'd get Linux for free, fuckwit. No-one/has/ to buy linux. Seeing as the "support" MS gives you is "try reinstalling the OS", they're not losing out by getting a support-less free edition of a linux distro.
All the aether physicists came up with a new, marketable name for the aether - the quantum vacuum. All those virtual particles popping in and out of existence are pretty much the same as an aether concept, when you get right down to it. They just don't dare say it.
Huh. Linux has been running on my desktop for years now, even back when people were making similarly crappy claims about Linux not being ready for the Server.
My previous post was countering stupid arguments like "people are using Direct3D for Games, therefore OpenGL is dead, therefore Linux is dead." - OpenGL isn't dead. I was attempting to illustrate that more powerful forces than the games market are keeping it alive - and as European governments start to use open source OSes on desktops (and they are doing so), then european games developers who want to make money will follow with linux games. The presence of OpenGL on Linux makes it very easy for them to do so, since chances are they already know OpenGL anyway.
There have been an amazing number of illogical attacks on OpenGL on/. for the past while, usually from clueless teenage Windows gamers who wouldn't know an SGI if it bit them on the ass. OpenGL is the grown-ups 3D API, and it's not going away because people are writing windows games targetting Direct3D.
Not to hand - that's going back a long time, back before most windows/dos people were leaving tracks on the net (remember, they were latecomers to the net, not like Amiga/UNIX heads like me:-) ). However, in an article from 1996 (five years ago, now!), I found a quote from late in the transitional period
And DOS-only computers? Well, of course they only do DOS games. And watch out - there are old DOS games that will run on a real old banger, and there are new DOS games that need the same amount of power as Windows - in other words they need a new PC but the old DOS operating system.
So, clearly, even then, there were quite a proportion of developers targetting DOS. I'm afraid all I have before then is anecdotal evidence of my memories of the time.
Linux is dominated by people who refuses to pay for software. It even have quite a number of people who tells people it's unethical to charge for software.
And you'll find that even Richard Stallman makes an exception to that for games, which he (and most others) regard as a special case, since the important bit is the game data (storyline, gfx, etc) that make the one-off game experience, not the engine. In fact, this is quite a common view - witness the DOOM, Quake, Descent, Heretic etc. engines, which have all been open-sourced, with restrictive copyright retained on on the datasets that are the meat of the game.
Linux is not worth it. Not 5 years ago, not today, not tomorrow, not a year from now.
People said the same about windows games. "Why develop for Windows when everyone has DOS?". Well, corporate IT was moving towards windows, so the savvier game developers saw that people would soon have windows everywhere - and if there's one thing that people always do, it's play games when they should be working. Now corporate IT (at least in here in Europe and (according to reports) in Asia) is moving toward linux on the desktop and server.
OpenGL develops slowly and requires proprietary extensions for the newest video cards.
OpenGL development did slow down a bit. It's speeding up again now, thanks largely to Mac OS X. There may sometimes be extensions, but that's still better than the whole bloody thing being proprietary and at the whim of MS, like D3D is. There's a well-defined process for folding such extensions into future revisions of the OpenGL standard. OpenGL was designed to be extensible.
Also, the Direct* APIs are a bitch unless you code in MS-mutilated C++ - OpenGL has well-defined, easy to use, pure C and fortran bindings, as well as decent bindings for many other languages. - That's one of the reasons OpenGL is used for high-end applications, like CAD and scientific and engineering visualisation (my specialty). DirectX truly, deeply sucks for anything like that. OpenGL is also designed for very high poly-count stuff encountered in visualisation. OpenGL on linux is being developed enthusiastically, from the industrial side - visualisation front ends for $50000 numerical simulation software that used to run on SGI IRIX systems are now being run on Linux boxes. OpenGL isn't going to fade into obscurity anytime soon - the profits from a couple of licenses for the sort of software that really uses OpenGL can outweigh the profits from the sales of hundreds of thousands of copies of weenie windows games.
Yes, couldn't agree more. XML is just a particularly annoying way of writing S-expressions.
I really don't get people who complain about Lisp syntax and then tell me how wonderful XML is - XML is 10x more annoying than Lisp!
Also, if you want to deal with XML in a semi-sane way, may I recommend just transforming it into Scheme, processing it with the normal LISPy tricks, then pretty-printing it back out... See here for the best we to deal with XML weenies.
My main problem with REBOL is pretty stupid, but annoying enough to stop me using it - it's Linux font support sucks!
They hadn't updated it to use the XRENDER/Xft framework for anti-aliased fonts when I last used it, and it completely ignores that fact that my X Server is running a 120dpi resolution, so all the GUI elements are nearly unreadable.
It also seems to use the first font it comes across - seeing as I have a lot of odd special-effect fonts installed, the GUI ends up looking even stupider...
Actually, human blue photoreceptors can detect into the ultra-violet. The human lens is U.V. opaque (and slowly clouds up over a lifetime of absorbing ionising U.V. radiation). If you replace the human lens with a U.V. transparent artificial one, you can see into the U.V. range.
No, this doesn't explain the U.V. abilities of Prot, but it's interesting anyway.
While wine is in some sense an emulator, it does NOT emulate a different CPU, as is the case of the common usage of "emulator" in computing circles.
Thus, Windows binaries under Wine can run just as fast as on Windows - in fact, in some cases, faster, since sometimes Wine libraries happen to be coded better than the MS equivalents.
To call it an emulator and then claim it is therefore slower than Windows is deception.
Look, MS Office is perhaps the HARDEST application to get working with Wine, because it's written by MS and is KNOWN to use various "hidden" (undocumented) APIs, as well as re-implementing most of a widget set.
If a windows application is NOT written by Micro$oft, you have a much better chance of it working on Wine - the third-party application developer is limited to the same semi-documented windows interfaces that Micro$oft makes publically available, just as the Wine authors are.
The fact that Office runs at all is a testament to the reverse-engineering skills of the Wine crew, as well being definitive proof that MS engages in anti-competitive measures like having one API for it's apps, and a (typically lower performance API) for third-party ones.
Windows programmers bitch about this all the time, it's not just a problem for Wine users - basically, since Microsoft controls the platform, Microsoft can make sure that their applications work the best.
I've been wondering about this for a while - C++ linkages, as currently implemented, are a kludge - why aren't they done at a higher symbolic level then? Surely it would eliminate stupid kludges like vtable-slot-reservation and so on?
Is it because people don't want to give the linker explicit knowledge of C++ and OO programming methodology?
Why not just expand the linker to be a little more intelligent - it would have advantages for other OO languages too, I'd imagine.
Well, fortran and Ada. Actualy, while there's a kick-ass GPL Ada 95 compiler, there's no comparably complete fortran 95 gcc frontend, just an embryonic project. Which is a pity. F95 is pretty different to F77, and not actually all that bad...
Well, if Sun were dominant, everything would probably be more expensive. But it would work properly - Sun may be Yet Another Evil Proprietary Vendor, but they make well-designed, reliable stuff, unlike Microsoft.
kernel pre-emption patch
on
Linux 2.4.13
·
· Score: 5, Informative
If you're on a desktop machine, try the kernel pre-emption patch - it's nice, and will make everything feel more responsive and smooth, since in addition to the normal user-space pre-emptive multitasking, the patch allows a lot of kernel calls to be pre-empted.
Even if you don't want to use the patch, you might want to try renicing X negatively to make it feel a bit snappier.
Aha... just what I was looking for. cool.
Well, the speed vs memory thing is not insurmountable. The data-forgetting apporach would probably work reasonably well on modern systems. If you do it the with the "2D platformer scrolling" method, then it should be fast enough ('cmon , if it was fast enough on my Amiga years ago, a 1GHz PeeCee should be able to cope...):
Basically,
.........
...bbb...
...bAb...
...bbb...
.........
A- tiled screen
b- tiled virtual framebuffer extent
.- "forgotten"+ regenerated on-demand.
As the screen scrolls, part of the b region becomes A, some of the b region becomes . , and some of the . region becomes b.
This is how many 2D games have scrolled since time immemorial - sometimes b was a border size smaller than an entire screen (usually 8,16, or 32 pixels wide). Making each b the size of an entire screen would probably be worthwhile in this day and age.
The forgetting where the mouse is thing could be annoying, but you could give the desktop edges a bit of resistance, so you have to push against them for a bit before they start moving.
Yep, WindowMaker workspaces are similar, but they're still a bit less streamlined.
:-).
Both Enlightenment and windowmaker come very close - if certain features from both were merged, I'd feel right at home. I believe enlightment's introducing any remaining features soon, anyway (probably already in the CVS version), so all I need do is wait
I just wish the +1 bonus was opt-in instead of opt-out. I'm always forgetting to turn mine off.
for a long time, I thought. "Patents aren't a bad idea, it's just the implementation sucks". - But then I thought about it a bit. According to lore, patents were originally intended to foster innovation by exchanging a time-limited monopoly for full disclosure of the workings of an invention. But, why do it that way? The normal way for governments to interefere with that sort of thing is through the imposition of taxes, not some half-baked limited monopoly scheme. If governments had _really_ wanted to encourage innovation through full disclosure, then they should have placed a 50% tax on any proprietary products!
Clearly, encouragement of innovation was never _really_ the primary motive of the patent system, whatever the constitution says...
A computer desktop without window overlap is like a 50 cm square desk.
Well, why not make the screen like a window onto an infinite desktop, that smooth scrolls when the mouse goes to the borders?
That way, the windows don't have to overlap, and they can take up as much space as you want...
It might be good to stop the scrolling when you reach "empty space", so you don't get lost, but otherise, I'd say that'd be quite a workable plan - particularly if combined with a little pinned-to-screen desktop-in-miniature that you can click on to shortcut jump to a particular window...
Multiple desktops aren't quite good enough in most implementations I've seen (enlightenment comes close) - I've been spoiled by Amiga pubscreens.
Later versions of AmigaOS, in conjunction with common Amiga GUI toolkits such as MUI, allowed you to _persistently_ associate an application with a particular "screen" (a named virtual desktop). - So you could set your web-broswer to always open on its own screen called "Internet" for example, while your word processor opened on another screen called "Work", as did your spreadsheet.
The automatic creation/destruction of screens on an as-needed basis, the persistence of the application associations with particular screens, and the ability to name each screen, tend to be missing from X window managers. You flicked between screens by clicking the top-right hand corner of the screen, and you could drag them up and down to partially expose screens behind.
The "pub" in "pubscreen" comes from the fact that more than one application could use the same screen - in earlier versions of the AmigaOS, each application tended to use its own screen anyway, rather than being under user control.
I miss screens!
Personally, I use the key labelled "caps Lock" as my Ctrl key, 'cos then ctrl-key combos are fast+easy to type. :-)
If you want to do this, add the line
Option "XkbOptions" "ctrl:swapcaps"
to the keyboard inputdevice section of your XF86Config.
But is that with the ctrl key in its stupid PC place, or where it should be (where the Caps Lock key is on "modern" keyboards).
:-)
Personally, I use ctrl:swapcaps in my XF86Config, so that the Caps Lock key becomes Ctrl. I'm pretty certain (at least, my little brother with a stopwatch timing 20 trials certain, then me timing him) that it takes me/him more time to reach the mouse than press a ctrl-key combo. Even reaching up to press an F-key is faster than going for the mouse - I've always been a fan of an always-visible panel on the screen, with a block of function names + corresponding keys.
That said, I've been investigating a "fast" (tens of words per minute) way to "type" with mice/trackballs - I'll probably do a public release in a few weeks, depending on (a) time commitments (b)whether I can remember how to code in anything other than the Java which has so rotted my brain, and most importantly (c) whether it really is fast.
I still prefer redmeat.
No, they'd get Linux for free, fuckwit. No-one /has/ to buy linux. Seeing as the "support" MS gives you is "try reinstalling the OS", they're not losing out by getting a support-less free edition of a linux distro.
All the aether physicists came up with a new, marketable name for the aether - the quantum vacuum. All those virtual particles popping in and out of existence are pretty much the same as an aether concept, when you get right down to it. They just don't dare say it.
Huh. Linux has been running on my desktop for years now, even back when people were making similarly crappy claims about Linux not being ready for the Server.
/. for the past while, usually from clueless teenage Windows gamers who wouldn't know an SGI if it bit them on the ass. OpenGL is the grown-ups 3D API, and it's not going away because people are writing windows games targetting Direct3D.
My previous post was countering stupid arguments like "people are using Direct3D for Games, therefore OpenGL is dead, therefore Linux is dead." - OpenGL isn't dead. I was attempting to illustrate that more powerful forces than the games market are keeping it alive - and as European governments start to use open source OSes on desktops (and they are doing so), then european games developers who want to make money will follow with linux games. The presence of OpenGL on Linux makes it very easy for them to do so, since chances are they already know OpenGL anyway.
There have been an amazing number of illogical attacks on OpenGL on
Do you have any example of anyone saying that?
:-) ). However, in an article from 1996 (five years ago, now!), I found a quote from late in the transitional period
Not to hand - that's going back a long time, back before most windows/dos people were leaving tracks on the net (remember, they were latecomers to the net, not like Amiga/UNIX heads like me
And DOS-only computers? Well, of course they only do DOS games. And watch out - there are old DOS games that will run on a real old banger, and there are new DOS games that need the same amount of power as Windows - in other words they need a new PC but the old DOS operating system.
So, clearly, even then, there were quite a proportion of developers targetting DOS. I'm afraid all I have before then is anecdotal evidence of my memories of the time.
Linux is dominated by people who refuses to pay for software. It even have quite a number of people who tells people it's unethical to charge for software.
And you'll find that even Richard Stallman makes an exception to that for games, which he (and most others) regard as a special case, since the important bit is the game data (storyline, gfx, etc) that make the one-off game experience, not the engine. In fact, this is quite a common view - witness the DOOM, Quake, Descent, Heretic etc. engines, which have all been open-sourced, with restrictive copyright retained on on the datasets that are the meat of the game.
Linux is not worth it. Not 5 years ago, not today, not tomorrow, not a year from now.
People said the same about windows games. "Why develop for Windows when everyone has DOS?". Well, corporate IT was moving towards windows, so the savvier game developers saw that people would soon have windows everywhere - and if there's one thing that people always do, it's play games when they should be working. Now corporate IT (at least in here in Europe and (according to reports) in Asia) is moving toward linux on the desktop and server.
OpenGL develops slowly and requires proprietary extensions for the newest video cards.
OpenGL development did slow down a bit. It's speeding up again now, thanks largely to Mac OS X. There may sometimes be extensions, but that's still better than the whole bloody thing being proprietary and at the whim of MS, like D3D is. There's a well-defined process for folding such extensions into future revisions of the OpenGL standard. OpenGL was designed to be extensible.
Also, the Direct* APIs are a bitch unless you code in MS-mutilated C++ - OpenGL has well-defined, easy to use, pure C and fortran bindings, as well as decent bindings for many other languages. - That's one of the reasons OpenGL is used for high-end applications, like CAD and scientific and engineering visualisation (my specialty). DirectX truly, deeply sucks for anything like that. OpenGL is also designed for very high poly-count stuff encountered in visualisation. OpenGL on linux is being developed enthusiastically, from the industrial side - visualisation front ends for $50000 numerical simulation software that used to run on SGI IRIX systems are now being run on Linux boxes. OpenGL isn't going to fade into obscurity anytime soon - the profits from a couple of licenses for the sort of software that really uses OpenGL can outweigh the profits from the sales of hundreds of thousands of copies of weenie windows games.
Yes, couldn't agree more. XML is just a particularly annoying way of writing S-expressions.
I really don't get people who complain about Lisp syntax and then tell me how wonderful XML is - XML is 10x more annoying than Lisp!
Also, if you want to deal with XML in a semi-sane way, may I recommend just transforming it into Scheme, processing it with the normal LISPy tricks, then pretty-printing it back out... See here for the best we to deal with XML weenies.
My main problem with REBOL is pretty stupid, but annoying enough to stop me using it - it's Linux font support sucks!
They hadn't updated it to use the XRENDER/Xft framework for anti-aliased fonts when I last used it, and it completely ignores that fact that my X Server is running a 120dpi resolution, so all the GUI elements are nearly unreadable.
It also seems to use the first font it comes across - seeing as I have a lot of odd special-effect fonts installed, the GUI ends up looking even stupider...
Actually, human blue photoreceptors can detect into the ultra-violet. The human lens is U.V. opaque (and slowly clouds up over a lifetime of absorbing ionising U.V. radiation). If you replace the human lens with a U.V. transparent artificial one, you can see into the U.V. range.
No, this doesn't explain the U.V. abilities of Prot, but it's interesting anyway.
While wine is in some sense an emulator, it does NOT emulate a different CPU, as is the case of the common usage of "emulator" in computing circles.
Thus, Windows binaries under Wine can run just as fast as on Windows - in fact, in some cases, faster, since sometimes Wine libraries happen to be coded better than the MS equivalents.
To call it an emulator and then claim it is therefore slower than Windows is deception.
Look, MS Office is perhaps the HARDEST application to get working with Wine, because it's written by MS and is KNOWN to use various "hidden" (undocumented) APIs, as well as re-implementing most of a widget set.
If a windows application is NOT written by Micro$oft, you have a much better chance of it working on Wine - the third-party application developer is limited to the same semi-documented windows interfaces that Micro$oft makes publically available, just as the Wine authors are.
The fact that Office runs at all is a testament to the reverse-engineering skills of the Wine crew, as well being definitive proof that MS engages in anti-competitive measures like having one API for it's apps, and a (typically lower performance API) for third-party ones.
Windows programmers bitch about this all the time, it's not just a problem for Wine users - basically, since Microsoft controls the platform, Microsoft can make sure that their applications work the best.
I've been wondering about this for a while - C++ linkages, as currently implemented, are a kludge - why aren't they done at a higher symbolic level then? Surely it would eliminate stupid kludges like vtable-slot-reservation and so on?
Is it because people don't want to give the linker explicit knowledge of C++ and OO programming methodology?
Why not just expand the linker to be a little more intelligent - it would have advantages for other OO languages too, I'd imagine.
And don't forget, without Copyright law, the GPL would be unenforceable - so think before attakcing copyrights!
However, the DMCA is a perversion of the once-reasonable copyright system (as was the Bono extension, for that matter).
Well, fortran and Ada. Actualy, while there's a kick-ass GPL Ada 95 compiler, there's no comparably complete fortran 95 gcc frontend, just an embryonic project. Which is a pity. F95 is pretty different to F77, and not actually all that bad...
Well, if Sun were dominant, everything would probably be more expensive. But it would work properly - Sun may be Yet Another Evil Proprietary Vendor, but they make well-designed, reliable stuff, unlike Microsoft.
If you're on a desktop machine, try the kernel pre-emption patch - it's nice, and will make everything feel more responsive and smooth, since in addition to the normal user-space pre-emptive multitasking, the patch allows a lot of kernel calls to be pre-empted.
Even if you don't want to use the patch, you might want to try renicing X negatively to make it feel a bit snappier.