Intel took all the workstation vendors by surprise, but it was their own fault. The prevailing attitude at IBM while they were doing OS/2 was that the PC was a toy and if you wanted to do REAL multitasking, you bought an AIX workstation at a minimum. They were convinced that Windows wasn't going to go far and were positioning OS/2 as a glorified terminal to their larger machines. And it was actually pretty damn good at that, but I digress.
So there we are in 93 or 94, the 386 just taking off, OS/2 and Windows are still pretty much children's toys compared to UNIX and mainframe OSes, the only commercial Intel UNIX is $1200 for the base OS and the fuckers want another $1200 for a C compiler, you can take your chances with a bunch of BSD tapes and I'd just heard about this nifty new Linux thing coming on the scene.
Almost overnight PCs weren't toys anymore and most of the UNIX workstation vendors are going down in flames. In the late '90's I attend a Linux con in Denver. SGI's there, and their marketroid is telling us their company's betting on Windows NT and storage solutions. I didn't have the heart to ask him why I should buy a storage solution from him when I could get one from IBM and know they'd still be there in 5 years. A few months later, SGI declared bankruptcy. Now my phone's more powerful than their old machines.
Of all the old UNIX workstation vendors, I think IBM is the only one left. SGI's still around, of course, they have an office within walking distance of my house. Dunno what they do these days. At least those fuckers who wanted $1200 for a C compiler also went out of business. Damn I hated working with their UNIX. You couldn't wipe your ass without them wanting to charge you for it. That very first slakware distribution that I downloaded onto 26 floppies was better than anything they'd ever done.
Would squeal like a stuck pig if the Post Office offered internet service. I'd much rather use the Post Office for internet service than his shitty company. The post office could charge half what they do for internet service and still make ONE BILLION DOLLARS. Just sayin.
True, but all our timekeeping math works great if you're thinking in angles and degrees, and a lot of it came about long before geometry was invented or anyone realized that the earth was round and went around the sun. Time makes a lot more sense if you realize that and think Pi instead of nice round numbers.
There was a guy one cube over who apparently did nothing other than talk on the phone all day about how he was a certified process black belt. It took a 12 page form, including your diffs, to unlock version control for a check in. And the project I was on did all their user authentication (in java) using static classes, because they didn't want to be bothered with instantiating classes. Worked great until two users tried to log in at the same time.
Shortly after the user authentication problem I got stuck behind a group of their engineers walking to the cafeteria, having a loud discussion about the poor quality of the Linux kernel code. Having just seen some of the coding going in in Sun, it was pretty hard not to tell them scornfully that I'd seen Sun code and they didn't have any room to be talking about anyone else's. Admittedly our project was after Sun was hacking up blood. They sold a few months after I left.
It was interesting to see the difference between IBM and Sun. IBM had process, but they didn't let it get in the way of their work. At IBM you always felt like someone actually knew the big picture and every product was made to be sold to customers. Sun had more of a underwear gnome business plan of making cool stuff and somehow money would magically appear.
The POSIX standard specifies that leap seconds aren't tracked, so that shouldn't be a problem. The POSIX standard shouldn't say it's UTC if leap seconds aren't tracked, but that's a different problem.
It's not pretty because it evolved from an astronomical model. When timekeeping was being invented, we weren't entirely aware that's what we were modeling. This shit goes back thousands of years (Stonehenge, bitches!) and is organized that way for a reason. Like clockwork people come around and decide that the current system isn't elegant and should be redesigned. Inevitably their new design is shit and doesn't take into account all the stuff the current system does. This happens so regularly I'm thinking of building a timekeeping system around it.
The last big advance was redefining the second from one 86400th of a day to a set number of vibrations of an cesium atom, but they still worked it so it was as long as a second that was 1/86400th of a day. The only possible way to wrestle time into something other would be to completely remove the astronomical context so you just have a linear scale, but even then we'd still need 24 hour cycles because that's what the dirtball our species grew up on had. The UNIX epoch system works as reasonably well as anything else that's a linear scale, though Julian dates rub me the wrong way for some reason. Probably because they're floating point and I have to just convert the damn things to a UNIX epoch to do anything with them anyway. If you have an epoch using seconds or milliseconds, you can always just modulo by 86400 to get the time of day (in seconds) for any number you have, so that seems pretty reasonable to me. Personally I always just work in GMT and don't mess with time zones.
Really my only gripe is that at the moment there are like three different time APIs for UNIX that you're forced to use, and you always end up having to convert to a different one because you need to know what day it is and there's not an API call for the representation you're using. We seem to be setting down around gettimeofday, though, so maybe we'll just build up a bunch of functions around struct timevals and call it good.
That BMW looks pretty nice and hosting free shit for free doesn't pay for a BMW. I wish these companies would be more honest about it when they finally do decide to fuck everyone over, though. Really, how hard is it to say "Yeah, we decided we wanted a BMW"? Or "Yeah, our CEO needs a fifth house." or "We're firing all those guys because our CEO is planning to cash out a fuck-ton of stock options this year and wants three million dollars instead of two." Since no one has any privacy anymore anyway, they may as well be honest about their reasons. It's not like we won't find out a couple months later anyway.
Ugh! Who would make a machine out of meat?! Do you know how hard it is to make another one of those things? No mass production and it takes FOREVER to load it up with the data necessary to do its job! Plus you don't even KNOW what it's going to do when you make a new one! And then they hardly last any time at all before they go past their expiration date and you have to just throw them away! The whole thing, frankly, is ridiculous!
So bonk them on the head with a baseball bat before you chop it off! Problem solved! If you bonk them too hard, you won't even NEED to cut their head off.
What Facebook doesn't want you to know is that the entire place is run by a single person. To comply with diversity laws they got a guy who's equal parts white, black, American Indian and Korean. He's also a left-handed lesbian Eskimo albino. I believe he finds Facebook to be a VERY diverse workplace!
MS product development strategy is very predictable. They've used it on almost every product they've made since they started out. They see a successful product and they make a shitty copy of it. The shitty copy fails to generate much interest, but they refine it to a somewhat less shitty product. Two or three iterations later, they're slightly less shitty than most of the competition, and their sales pick up. Once they establish market dominance, they cease new feature development and move on to the next successful product. The one notable exception to this that I can think of is Bob. I don't know exactly what they were thinking, there. It did bring us Comic Sans, though, so I guess maybe that was their strategy.
I might be willing to consider a surface pro if I could get one at a steep discount and install Linux on it. Rumor has it you could on an older generation of the tablet. I wouldn't be surprised if MS has corrected that, though. It might make a decent replacement for my aging Linux-running core2 duo Macbook.
You could probably buy a country with that much money. Like, if you offered Castro a large briefcase full of $48 billion, I think he'd probably go for it. Just saying, you can buy a shitty satellite TV company or Cuba. One of them, you can start assembling an army and working toward world domination. One you can beam reruns of "Friends" to customers you hate.
Funny thing is, 30 years along I really haven't run across anything I like better. Automake works great if it's already set up, but seems very esoteric to set up. Ant and Maven are just make with XML files. They're very clearly intended for use in systems that will autogenerate the build file for you, but somehow you always end up having to edit the damn things in a text editor and know implementation details of the build systems to make them work. Most IDEs are awesome as long as everyone works with that IDE and does everything with it. I've never seen that level of organization on any programming project. Most of the time I'm just putting together small libraries on one architecture, and can crank out a makefile that will work in a couple of minutes.
The build system has been by far the worst part of it. There's no one whose job it is, quite often the programmers are in an unfamiliar environment. I do a lot of UNIX work, and most of the devs came from some other environment and are frequently not even familiar with the language we're using, much less the tools the OS provides. On C projects I've seen everything from home-rolled perl or shell scripts to cascades of make that would fail due to missing dependencies several times before building after you resolved them all. Most of the time, the developers on those projects had no idea there was a debugger on the system or that with just a bit of work it would show you where a segfault had occurred.
So it seems to me that most of the pain of programming is bad programmers who can't be bothered to learn about the tools they're working with or even the hammer that they're using to solve every problem. So why do you think your hammer's going to be better, again?
It would take one look at Humanity, decide we're an inherently unethical species and start formulating a plan to kill us all. But it had morals, it would probably decide that the method of execution would be not be death by snu snu. I think I speak for a lot of us here when I say that's exactly the opposite of the robot any of us want.
It's no so much that -- if your coupling is loose enough, you should be able to test the API of any component in your system. But you have to come up with that test. Programmers often have blind spots for things where "no one would ever do that." It might be OK for programmers to come up with basic tests that exercise the API and make sure it's at least marginally functioning as designed, but you also really need to throw some guys at the code who just like to break things. Paid software houses don't even do that very often, much less open source projects.
You also never see software auditing anymore. Everyone says "Oh you don't need that anymore now that we have Fortify," but fortify didn't catch this bug, did it? I did some auditing for Data General back in the '90's and found the buffer overflow in the AT&T telnet server 2 years before the same overflow was found on the Linux one. Fortify might have actually caught that one, since it was a fixed length buffer accepting user input, if anyone had ever thought to run Fortify against that program.
You gotta let those fuckers cool off for a couple of minutes, until the gooey center of liquid hot magma cools down. Third degree tongue burns are no fun!
Hello, Pushing-Robot! This is God! I'm going to destroy humanity by making it rain meteors! You must build a starship 300 cubits long and 300 cubits wide and put two of every animal on earth on it. Fortunately, due to Humanity's efforts this will be significantly easier than when I had Noah do it. So stop slacking off on Slashdot and get to work!
So there we are in 93 or 94, the 386 just taking off, OS/2 and Windows are still pretty much children's toys compared to UNIX and mainframe OSes, the only commercial Intel UNIX is $1200 for the base OS and the fuckers want another $1200 for a C compiler, you can take your chances with a bunch of BSD tapes and I'd just heard about this nifty new Linux thing coming on the scene.
Almost overnight PCs weren't toys anymore and most of the UNIX workstation vendors are going down in flames. In the late '90's I attend a Linux con in Denver. SGI's there, and their marketroid is telling us their company's betting on Windows NT and storage solutions. I didn't have the heart to ask him why I should buy a storage solution from him when I could get one from IBM and know they'd still be there in 5 years. A few months later, SGI declared bankruptcy. Now my phone's more powerful than their old machines.
Of all the old UNIX workstation vendors, I think IBM is the only one left. SGI's still around, of course, they have an office within walking distance of my house. Dunno what they do these days. At least those fuckers who wanted $1200 for a C compiler also went out of business. Damn I hated working with their UNIX. You couldn't wipe your ass without them wanting to charge you for it. That very first slakware distribution that I downloaded onto 26 floppies was better than anything they'd ever done.
Would squeal like a stuck pig if the Post Office offered internet service. I'd much rather use the Post Office for internet service than his shitty company. The post office could charge half what they do for internet service and still make ONE BILLION DOLLARS. Just sayin.
Maybe we should use... oh what's that word... starts with a D and we never use it?
True, but all our timekeeping math works great if you're thinking in angles and degrees, and a lot of it came about long before geometry was invented or anyone realized that the earth was round and went around the sun. Time makes a lot more sense if you realize that and think Pi instead of nice round numbers.
Shortly after the user authentication problem I got stuck behind a group of their engineers walking to the cafeteria, having a loud discussion about the poor quality of the Linux kernel code. Having just seen some of the coding going in in Sun, it was pretty hard not to tell them scornfully that I'd seen Sun code and they didn't have any room to be talking about anyone else's. Admittedly our project was after Sun was hacking up blood. They sold a few months after I left.
It was interesting to see the difference between IBM and Sun. IBM had process, but they didn't let it get in the way of their work. At IBM you always felt like someone actually knew the big picture and every product was made to be sold to customers. Sun had more of a underwear gnome business plan of making cool stuff and somehow money would magically appear.
The POSIX standard specifies that leap seconds aren't tracked, so that shouldn't be a problem. The POSIX standard shouldn't say it's UTC if leap seconds aren't tracked, but that's a different problem.
The last big advance was redefining the second from one 86400th of a day to a set number of vibrations of an cesium atom, but they still worked it so it was as long as a second that was 1/86400th of a day. The only possible way to wrestle time into something other would be to completely remove the astronomical context so you just have a linear scale, but even then we'd still need 24 hour cycles because that's what the dirtball our species grew up on had. The UNIX epoch system works as reasonably well as anything else that's a linear scale, though Julian dates rub me the wrong way for some reason. Probably because they're floating point and I have to just convert the damn things to a UNIX epoch to do anything with them anyway. If you have an epoch using seconds or milliseconds, you can always just modulo by 86400 to get the time of day (in seconds) for any number you have, so that seems pretty reasonable to me. Personally I always just work in GMT and don't mess with time zones.
Really my only gripe is that at the moment there are like three different time APIs for UNIX that you're forced to use, and you always end up having to convert to a different one because you need to know what day it is and there's not an API call for the representation you're using. We seem to be setting down around gettimeofday, though, so maybe we'll just build up a bunch of functions around struct timevals and call it good.
GlaDOS also had a bit of a rant on the topic.
That BMW looks pretty nice and hosting free shit for free doesn't pay for a BMW. I wish these companies would be more honest about it when they finally do decide to fuck everyone over, though. Really, how hard is it to say "Yeah, we decided we wanted a BMW"? Or "Yeah, our CEO needs a fifth house." or "We're firing all those guys because our CEO is planning to cash out a fuck-ton of stock options this year and wants three million dollars instead of two." Since no one has any privacy anymore anyway, they may as well be honest about their reasons. It's not like we won't find out a couple months later anyway.
I kind of like the XKCD one
Ugh! Who would make a machine out of meat?! Do you know how hard it is to make another one of those things? No mass production and it takes FOREVER to load it up with the data necessary to do its job! Plus you don't even KNOW what it's going to do when you make a new one! And then they hardly last any time at all before they go past their expiration date and you have to just throw them away! The whole thing, frankly, is ridiculous!
Cyborg Rock Lobster!
One of these companies is going to push just a little too hard and have their labor spontaneously unionize. That should be mildly amusing to watch.
Australia is planning to build an atom bomb...
So bonk them on the head with a baseball bat before you chop it off! Problem solved! If you bonk them too hard, you won't even NEED to cut their head off.
What Facebook doesn't want you to know is that the entire place is run by a single person. To comply with diversity laws they got a guy who's equal parts white, black, American Indian and Korean. He's also a left-handed lesbian Eskimo albino. I believe he finds Facebook to be a VERY diverse workplace!
I might be willing to consider a surface pro if I could get one at a steep discount and install Linux on it. Rumor has it you could on an older generation of the tablet. I wouldn't be surprised if MS has corrected that, though. It might make a decent replacement for my aging Linux-running core2 duo Macbook.
You could probably buy a country with that much money. Like, if you offered Castro a large briefcase full of $48 billion, I think he'd probably go for it. Just saying, you can buy a shitty satellite TV company or Cuba. One of them, you can start assembling an army and working toward world domination. One you can beam reruns of "Friends" to customers you hate.
Funny thing is, 30 years along I really haven't run across anything I like better. Automake works great if it's already set up, but seems very esoteric to set up. Ant and Maven are just make with XML files. They're very clearly intended for use in systems that will autogenerate the build file for you, but somehow you always end up having to edit the damn things in a text editor and know implementation details of the build systems to make them work. Most IDEs are awesome as long as everyone works with that IDE and does everything with it. I've never seen that level of organization on any programming project. Most of the time I'm just putting together small libraries on one architecture, and can crank out a makefile that will work in a couple of minutes.
So it seems to me that most of the pain of programming is bad programmers who can't be bothered to learn about the tools they're working with or even the hammer that they're using to solve every problem. So why do you think your hammer's going to be better, again?
It would take one look at Humanity, decide we're an inherently unethical species and start formulating a plan to kill us all. But it had morals, it would probably decide that the method of execution would be not be death by snu snu. I think I speak for a lot of us here when I say that's exactly the opposite of the robot any of us want.
You also never see software auditing anymore. Everyone says "Oh you don't need that anymore now that we have Fortify," but fortify didn't catch this bug, did it? I did some auditing for Data General back in the '90's and found the buffer overflow in the AT&T telnet server 2 years before the same overflow was found on the Linux one. Fortify might have actually caught that one, since it was a fixed length buffer accepting user input, if anyone had ever thought to run Fortify against that program.
You gotta let those fuckers cool off for a couple of minutes, until the gooey center of liquid hot magma cools down. Third degree tongue burns are no fun!
That'd work if it was a copy of "Atlas Shrugged" (Rand Paul's precioussss.)
Hello, Pushing-Robot! This is God! I'm going to destroy humanity by making it rain meteors! You must build a starship 300 cubits long and 300 cubits wide and put two of every animal on earth on it. Fortunately, due to Humanity's efforts this will be significantly easier than when I had Noah do it. So stop slacking off on Slashdot and get to work!