I got a new TFT monitor & HD for home, plus £1000 cheque, and the all expenses company xmas party (dinner, drinks and a club).
Flip Side of that is the same week I got my whole weekend cancelled to go bug hunting for an obscure bug, that turned out to be a hardware fault and not it's 23:40 and it looks like an all nighter trying to code round the fault.
So - you get the bonus, but every company want's it's pound of flesh in return. No bonus or "we value you" type perks, and you can tell 'em to go f*ck when they want all nighters in the run up to xmas. Get a bonus, and you gotta start shuvelling when the sh*t hits the fan.
It's part of the deal you make when you enter the industry...
I accidently bought a "copy-protected" CD last year - and it played fine in my PC. The only player I owned that wouldn't play it was my car stereo....made by Sony:(
Like, we don't have "packages" in the UK? Doh! You pick the package that suits. If you don't make many calls, but like to be contactable, you buy a Pay-as-you go phone, or a zero line rental deal, and it costs you NOTHING per month. Nada. Not a thing. Recieve as many calls as you like. Calls you do make cost more - but that's the choice you make. If you make shed loads of calls, get a package with monthly charges and a cheaper call rate.
$80 would get you something like 4 hours of mobile calls before you get billed for more, and a reduced rate for calls after that.
IMHO. Anyone making more than 4hrs a month of mobile calls is risking brain damage from the uWave radiation anyway...
Embedded Systems is the easiest field for an older programmer to get work in 'coz: a) Most Uni courses turn out grad's with almost no experience of ES (little asm, hardly any hardware experience, etc). b) ES are small. Resources are low. CPU is slow. Makes it hard for MS/*nix programmers well versed in Java/C#/C++ with all the trimmings/etc to write code that'll fit.
I've had no trouble finding ES work, ever (ok, I'm only 30, but I've got friends in their late 30's who have the same experience).
High level programming is where you have to compete with the young sperms spewing out of college, dunno why the guy who wrote the article thought it applied to ES??????
>Oh yeah, and it's bad for the company >because although their information changes daily, >it's so hard to change the custom-designed web >page that it becomes useless in a matter of weeks >because it's outdated. My church website is like >that.
Actually, in that respect flash is just like any other format - you can seperate content from presentation, put the content in a seperate text file and have it load that file into the pretty flash front end. Badly written web pages (HTML, Flash, ASP, PHP, whatever), are the problem there, not Flash itself.
I used to work for BAe Space Systems, and once a year we used to teach part of a course at one of the UK's Universitys (cann't remember which). Part of the course was a practical project building a groundstation from scratch using off the shelf kit and making the dish from scrap parts. It's not cheap, but it's within reach of a lot ot western tech heads (but ok, not your average script kidde). I've still got the course notes + designs in my attic....
I worked on this back when I was working at BAe Space Systems (since taken over by Matra Marconi).
We had to high accuracy laser targeting systems for the Sat2Sat laser link working in the lab at BAe's Stevenage site 6 or more years ago...
KDE has proper transparency if you install the "High Performance Liquid" theme/style set by Mosfet. You can set stuff like menu backgrounds to be "properly" transparent (not just through to the desktop, actually over the windows below the menu).
You'd be better off working with a PS1 instead.
You can pickup an early PS1 (before they removed the parallel port), and use a re-flashed Action Replay/Gameshark to with ez-o-ray or Caetla download/debug code on it (even one with a broken CDROM will do). It's cheap, and if you spend an afternoon porting the GDB stub to it, you can use GDB and a linux hosted compiler kit to develop on it (you can get the linux dev tools from http://psxdev.de, doing a gdb stub is easy).
I started out with a freebie copy of SuSE 5.2 from a cover disc a couple of years ago. Installed ok, but took 2 months of re-jigging and applying kernel patches to get my sound card to work.
Nowadays it's much easier. Mandrake has the best hardware auto-detect on install. SuSE is most complete and flexible.
eg. I've just installed SuSE on an old Compaq Contura Aero with no CDROM. SuSE's boot disc's include PCMCIA network drivers and install-over-nfs, so I could mount the actual distro CD from my main PC over the network. Relatively painless as these things go:)
One point that everyone seems to ignore is that it's possible to write "Java" programs in assembly language as well. There's still an machine code under there (witness the abortive Sun Java processor concept). A couple of years ago I wrote a JVM for a company I worked with, got myself a copy of Sun's "The Java Virtual Machine" and away I went.
It's important to know at least one assembly language (even JVM code), just so you start to appreciate the size and performance implications of whatever high level language you're using - lack of that sort of understanding is what gave us Windows and 40Mb word processors.
PS. When I was at Uni (Newcastle, England), they taught programming algorithms in Pascal, then moved on to assembler, C++, Miranda/Haskel/Gofer, later. Java hadn't even been invented then. And I wrote my own assembler for the Dragon32 when I was 12, using op-codes taken from the listings in magazines - heady days;)
It would have been much cooler if instead of using a vacuum approach, they'd tried to replicate a real gecko's (almost fractal) micro cillia. The reason gecko's can walk on walls (and ceilings) is that it's feet are covered in microscopic fibres (covered in even more microscopic fibres, branching to every more microscopic fibres).
"Gecko Samui" - best surf clothing on ChaWeng Beach, Koh Samui, Thailand.
You've missed the fact that there are two types of official PS1 PCI card - the original devkit (£12K in the UK) and the Performance Analyser Devkit (£17K in the UK) that has a bus logger/anaylser builtin (tres cool for tuning the render pipeline).
Also, SN Systems produced (for a while) the CartDev, which was similar to a DDX cartidge and allowed you to debug code on any playstation, downloaded via the parallel port (very quick).
Several free clone devkits of this style are available for Action Replay / Game Shark cartidges (EZ-o-Ray, Caetla, etc), and the debuggers, compilers, etc can be downloaded from PSXDEV (Linux versions, with a nice GTK remote MIPS debugger)
Pace (a UK maker of digital TV decoders & stuff) are licensing the Dreamcast chipset for use in their next gen Set-Top-Box. See quote below:
=======
DREAMCAST ON YOUR DIGITAL TV
Digital TV set-top boxes will soon be able to play games written for Sega's Dreamcast console.
The UK-based Pace Micro Technologies - which supplies set-top boxes to all the major TV distribution channels including Sky Digital, OnDigital and cable providers - has teamed up with the Japanese gaming company to build Dreamcast functionality into its next-generation equipment.
It will allow digital TV broadcasters to deliver console-quality games - featuring 3D graphics, full motion video and digital sound - direct to consumers.
Games will be downloaded to a 40 gigabyte hard disk in the set-top box, either on a 'pay per play' or a fixed-period hire basis. It will also be possible to beam games to other devices using wireless technologies.
Pace has already developed a 'personal video recorder' facility for its set-top boxes, using similar hard-disk based technologies.
'Beyond conventional consoles'
"Integrating games into set-top boxes expands Sega's market potential beyond conventional games consoles," said Andrew Wallace of Pace, referring to the previous week's rumours - subsequently watered down by company executives - that Sega was to stop manufacturing its Dreamcast console, turning instead to software development.
"Existing users now have a new way to access games, and new users will be attracted since anyone with the hard-disk enabled box will have access to Sega's extensive games portfolio."
Existing digital TV services often include basic games, reminiscent of 1980s classics such as Frogger and Pac-Man. But the ability to play 'proper' arcade-quality games will be a significant step forward.
Sega has a long-standing reputation for quality games development, with particular strengths in racing and sports simulations. Although the new Sony Playstation2 and forthcoming Microsoft Xbox have much more powerful specifications, experts feel the Dreamcast's games have more than held their own against rival consoles' offerings
Even worse though, the UK government has ok'ed gataka style genetic screening (if you're geneticly likely to suffer from a certain disease, you can legaly be discriminated against by insurance companys & stuff). An absolute nightmare, and given the state of UK politics, one which is unlikely to ever be revoked.
It's a sad day...
(and I live in the UK, so it's even sadder for me)
The way I approach thread debugging is:
1)Plenty of diagnostics printf's, but via a macro.
All diagnostics go via a macro that allows debug levels to be set, and also prepends line,file,time and thread to the diagnostics string. You can then analyse this output on a thread by thread basis, global timeline basis, etc.
2) Memory Tracking.
Tracking memory leaks is reasonably easy - use a macro (say d_malloc) that calls a wrapper function to malloc that allocations a structure containing file, line, time & thread info for the point that the memory is allocated. You can then correlate that with you diagnostics to track leaks.
3) Resource Tracking.
Use a similar approach to mutex / semaphore locks to spot points where you're not releasing resources.
4) If all that fails...
GDB5 supports threads, and a recent version of Kdbg is a reasonable interface to it.
I got a new TFT monitor & HD for home, plus £1000 cheque, and the all expenses company xmas party (dinner, drinks and a club).
Flip Side of that is the same week I got my whole weekend cancelled to go bug hunting for an obscure bug, that turned out to be a hardware fault and not it's 23:40 and it looks like an all nighter trying to code round the fault.
So - you get the bonus, but every company want's it's pound of flesh in return.
No bonus or "we value you" type perks, and you can tell 'em to go f*ck when they want all nighters in the run up to xmas. Get a bonus, and you gotta start shuvelling when the sh*t hits the fan.
It's part of the deal you make when you enter the industry...
I accidently bought a "copy-protected" CD last year - and it played fine in my PC. The only player I owned that wouldn't play it was my car stereo....made by Sony :(
Like, we don't have "packages" in the UK? Doh!
You pick the package that suits.
If you don't make many calls, but like to be contactable, you buy a Pay-as-you go phone, or a zero line rental deal, and it costs you NOTHING per month. Nada. Not a thing. Recieve as many calls as you like. Calls you do make cost more - but that's the choice you make.
If you make shed loads of calls, get a package with monthly charges and a cheaper call rate.
$80 would get you something like 4 hours of mobile calls before you get billed for more, and a reduced rate for calls after that.
IMHO. Anyone making more than 4hrs a month of mobile calls is risking brain damage from the uWave radiation anyway...
Embedded Systems is the easiest field for an older programmer to get work in 'coz:
a) Most Uni courses turn out grad's with almost no experience of ES (little asm, hardly any hardware experience, etc).
b) ES are small. Resources are low. CPU is slow. Makes it hard for MS/*nix programmers well versed in Java/C#/C++ with all the trimmings/etc to write code that'll fit.
I've had no trouble finding ES work, ever (ok, I'm only 30, but I've got friends in their late 30's who have the same experience).
High level programming is where you have to compete with the young sperms spewing out of college, dunno why the guy who wrote the article thought it applied to ES??????
>Oh yeah, and it's bad for the company
>because although their information changes daily,
>it's so hard to change the custom-designed web
>page that it becomes useless in a matter of weeks
>because it's outdated. My church website is like
>that.
Actually, in that respect flash is just like any other format - you can seperate content from presentation, put the content in a seperate text file and have it load
that file into the pretty flash front end.
Badly written web pages (HTML, Flash, ASP, PHP, whatever), are the problem there, not Flash itself.
I used to work for BAe Space Systems, and once a year we used to teach part of a course at one of the UK's Universitys (cann't remember which). Part of the course was a practical project building a groundstation from scratch using off the shelf kit and making the dish from scrap parts. It's not cheap, but it's within reach of a lot ot western tech heads (but ok, not your average script kidde). I've still got the course notes + designs in my attic....
I worked on this back when I was working at BAe Space Systems (since taken over by Matra Marconi).
We had to high accuracy laser targeting systems for the Sat2Sat laser link working in the lab at BAe's Stevenage site 6 or more years ago...
KDE has proper transparency if you install the "High Performance Liquid" theme/style set by Mosfet. You can set stuff like menu backgrounds to be "properly" transparent (not just through to the desktop, actually over the windows below the menu).
You'd be better off working with a PS1 instead.
You can pickup an early PS1 (before they removed the parallel port), and use a re-flashed Action Replay/Gameshark to with ez-o-ray or Caetla download/debug code on it (even one with a broken CDROM will do). It's cheap, and if you spend an afternoon porting the GDB stub to it, you can use GDB and a linux hosted compiler kit to develop on it (you can get the linux dev tools from http://psxdev.de, doing a gdb stub is easy).
I started out with a freebie copy of SuSE 5.2 from a cover disc a couple of years ago. Installed ok, but took 2 months of re-jigging and applying kernel patches to get my sound card to work. Nowadays it's much easier. Mandrake has the best hardware auto-detect on install. SuSE is most complete and flexible. eg. I've just installed SuSE on an old Compaq Contura Aero with no CDROM. SuSE's boot disc's include PCMCIA network drivers and install-over-nfs, so I could mount the actual distro CD from my main PC over the network. Relatively painless as these things go :)
One point that everyone seems to ignore is that it's possible to write "Java" programs in assembly language as well. There's still an machine code under there (witness the abortive Sun Java processor concept). A couple of years ago I wrote a JVM for a company I worked with, got myself a copy of Sun's "The Java Virtual Machine" and away I went. It's important to know at least one assembly language (even JVM code), just so you start to appreciate the size and performance implications of whatever high level language you're using - lack of that sort of understanding is what gave us Windows and 40Mb word processors. PS. When I was at Uni (Newcastle, England), they taught programming algorithms in Pascal, then moved on to assembler, C++, Miranda/Haskel/Gofer, later. Java hadn't even been invented then. And I wrote my own assembler for the Dragon32 when I was 12, using op-codes taken from the listings in magazines - heady days ;)
It would have been much cooler if instead of using a vacuum approach, they'd tried to replicate a real gecko's (almost fractal) micro cillia. The reason gecko's can walk on walls (and ceilings) is that it's feet are covered in microscopic fibres (covered in even more microscopic fibres, branching to every more microscopic fibres). "Gecko Samui" - best surf clothing on ChaWeng Beach, Koh Samui, Thailand.
Also, SN Systems produced (for a while) the CartDev, which was similar to a DDX cartidge and allowed you to debug code on any playstation, downloaded via the parallel port (very quick).
Several free clone devkits of this style are available for Action Replay / Game Shark cartidges (EZ-o-Ray, Caetla, etc), and the debuggers, compilers, etc can be downloaded from PSXDEV (Linux versions, with a nice GTK remote MIPS debugger)
True - but it's not our fault that american's couldn't cope with the correct spelling. It's not called the english language for nothing...
Pace (a UK maker of digital TV decoders & stuff) are licensing the Dreamcast chipset for use in their next gen Set-Top-Box. See quote below: ======= DREAMCAST ON YOUR DIGITAL TV Digital TV set-top boxes will soon be able to play games written for Sega's Dreamcast console. The UK-based Pace Micro Technologies - which supplies set-top boxes to all the major TV distribution channels including Sky Digital, OnDigital and cable providers - has teamed up with the Japanese gaming company to build Dreamcast functionality into its next-generation equipment. It will allow digital TV broadcasters to deliver console-quality games - featuring 3D graphics, full motion video and digital sound - direct to consumers. Games will be downloaded to a 40 gigabyte hard disk in the set-top box, either on a 'pay per play' or a fixed-period hire basis. It will also be possible to beam games to other devices using wireless technologies. Pace has already developed a 'personal video recorder' facility for its set-top boxes, using similar hard-disk based technologies. 'Beyond conventional consoles' "Integrating games into set-top boxes expands Sega's market potential beyond conventional games consoles," said Andrew Wallace of Pace, referring to the previous week's rumours - subsequently watered down by company executives - that Sega was to stop manufacturing its Dreamcast console, turning instead to software development. "Existing users now have a new way to access games, and new users will be attracted since anyone with the hard-disk enabled box will have access to Sega's extensive games portfolio." Existing digital TV services often include basic games, reminiscent of 1980s classics such as Frogger and Pac-Man. But the ability to play 'proper' arcade-quality games will be a significant step forward. Sega has a long-standing reputation for quality games development, with particular strengths in racing and sports simulations. Although the new Sony Playstation2 and forthcoming Microsoft Xbox have much more powerful specifications, experts feel the Dreamcast's games have more than held their own against rival consoles' offerings
Even worse though, the UK government has ok'ed gataka style genetic screening (if you're geneticly likely to suffer from a certain disease, you can legaly be discriminated against by insurance companys & stuff). An absolute nightmare, and given the state of UK politics, one which is unlikely to ever be revoked. It's a sad day... (and I live in the UK, so it's even sadder for me)
Actually, the PS1 chips are generally PIC's(small micro controller's) not PAL's( programable array logic).
The way I approach thread debugging is: 1)Plenty of diagnostics printf's, but via a macro. All diagnostics go via a macro that allows debug levels to be set, and also prepends line,file,time and thread to the diagnostics string. You can then analyse this output on a thread by thread basis, global timeline basis, etc. 2) Memory Tracking. Tracking memory leaks is reasonably easy - use a macro (say d_malloc) that calls a wrapper function to malloc that allocations a structure containing file, line, time & thread info for the point that the memory is allocated. You can then correlate that with you diagnostics to track leaks. 3) Resource Tracking. Use a similar approach to mutex / semaphore locks to spot points where you're not releasing resources. 4) If all that fails... GDB5 supports threads, and a recent version of Kdbg is a reasonable interface to it.