raph and dto: The X Windows system definately needs to be brought up to todays standards. But the design is significantly better than you think. One think that isn't exploited very much is the fact that you can have the X server to YUV instead of RGB. The problem is that many X servers don't support the extension.
Adding transparency shouldn't be hard at all. It's just adding an alpha channel to the window. X already has the windowing layering, so you simply definate how transparent the current window is, and there you go!
What really needs to have happened is to have X grow extensions to support effecient 2D acceleration. One really useful feature would be the ability to create a block of memory that you can modify in your local environment. Then using the pipe, you pass a reference to the memory to the Xserver (or kernel space if we ever get X in there) and then the graphics card adds it to the list of windows to be rendered. This would make effecient MPEG playing really cheap as you simply define a window the YUV encoding, and tell the Xserver to display that window. Then you get all the clipping and YUV to RGB conversion that the video card does. You may have to go backwards where the Xlib gives you a frame buffer, but it still isn't hard.
The real problem is that we haven't seen anybody champion an effort to add modern features to the Xserver. It would also be nice to stick the Xserver in the kernel (yeh, I know some of you will scream fowl), but the performance improvement should be tremendous. Even with modern workstations, you get a nice performance boost if you run the application on one machine (like a 440Mhz Ultra 10) and display it on another machine (like a G3 running MacOS). It simply comes down to the fact that you suddenly have two processors instead of one. One is dedicated to running the application, and the other is dedicated to displaying the results.
X should be brought into the 21st century.
nymia: Don't forget someone still has to write the new compilers and implement the assemblers for new processors. Assembly will never be dead, just few people will have a use for it.
GJF: New Zeland is more 1st world than 3rd world. I thought that 3rd, 2nd and 1st was just a line of econmic developement, but according to Merriam-Webster, 2nd world contries are those associated with Communism. (Darn it, m-w using post instead of get!). After visiting New Zeland earlier this year, the econmic situation is quite nice. I only spent about NZ$300 in cash while I was there as I could use my Visa Check card for almost all of my purcases. This included most meals. Most cash was spent on internet cafe's and transportation.
Uraeus: That only works if you can get ahold of the person you'd like to spend time with. I reciently had to call it quits with a recient (non-romanic) relationship because she just couldn't take any time out of her life to actually maintain some semblense of a relationship. She tells me which weekend would be best for her, and then is to busy to even remeber the correct date, let along call/tell me that she'd be busy that weekend. Constantly fighting a battle isn't worth it, and could possibly be why I haven't felt like doing much computer work the last two years.
Reading the "I Don't Like Your Examples! article raph posted is so true. At least he has the guts to defend his possition and not take the easy way out.
Probably shouldn't of spent so much time on this diary entry. Guess I'm just avoiding have to spend more time documenting the new hardware tool wrapper scheme that I have written for Credence Systems. I did a presentation to the people here in Hillsboro on it, and they like it. I just presented what I have done and they were like, ok, sounds good, can we do this with it? At least I did about double the size of the documentation, but there is so much to document. The documentation will probably end up being larger than all the shell scripts!
I have been thinking about a new revision control system. Really want to make something liker perforce, but behave on a WAN scale, so a developer can "import" my tree for libmime into his, and be able to "branch" the code and submit changes back to me, and be able to integrate any changes/bug fixes that I make.
After a discussion last week about documentation, I have been writing a design spec/paper for it. It really is true that you need to make sure you know exactly the problem you are solving before you start on the project, You just might get side tracked on the way. I was lucky with the hardware tools wrapper project as that one is pretty easy to fit in my head. Though I would of done better (not wasted as many hours) had I done a design document. It was just that I already had a better idea of what the tool environment should look like than my manager, that my manager just finally gave up and let me run with it. Thanks to the people from Racyer Graphics (now at Apple Computer) for inspiring my work. If I hadn't worked with their environment, I would of never been able to design this one and improve upon it.
Hopefully my trip the Australia will help get me back to being more sane. I was about to say caring about work, but why should I? If I want to travel and goof off, that's fine. I don't need to love work, I'm just lucky that I'm in an industry that pays well enough that I can save up to do an international trip in six months or so.
Hmmmm, long enough diary entry? I just had to add something to make it longer, didn't I?