Telling me what's happening is one thing. There is a large amount of unbiased coverage of this issue available all over the web, and if I want to read about it, I can read an industry publication and get the scoop from professionals working in the business. I sure as hell don't need Wired magazine's non-techie reporters to tell me about it.
Also, if a magazine puts out a propaganda piece SUPPORTING something that fucks me over, that magazine has just fucked me over and I don't see why I should spend any money on it. Let the Indian outsourcers the magazine fawned over buy subscriptions. I'm not going to.
You obviously aren't affected by the issue, so you go right ahead and ignore the insult this magazine article represents.
I told them to cancel my subscription by letter, and also to go fuck themselves. I might have said a few other things related to less comfortable activities. I don't remember, it was a while ago.
Being a programmer, I was somewhat annoyed that Wired decided to spit in my eye by posting a huge front-page photo of an Indian woman with henna tattoos covering her hand. The headline said, more or less, "we're taking your jobs and there's nothing you can do about it, so ha ha".
My point of view was that since this was a magazine supposedly by and for techie geeks, it was extraordinarily rude of them to rub the outsourcing problem in our faces. Rude, insensitive, and hostile.
Yet another thing to love about Linux/Unix/*BSD...
The firewall (iptables or ipfw) is turned on before the network interfaces are brought online. This is possible because the firewall functions of Linux are part of the OS kernel and are available as soon as the kernel is running.
Don't get me wrong, I still use a hardware firewall with my Linux box (belt and suspenders, right?) but it's not quite the matter of life and death it is with Windows machines.
If you think about it, programming is most similar to architecture or civil engineering. It has strong engineering elements, but at the same time, offers a tremendous amount of room for personal expression, and is one of those things in which talent matters more than anything else.
Think about a large engineering project like the Brooklyn Bridge. The lead engineer designed the bridge to be not just functional but beautiful as well. Or consider something like the Guggenheim, in which the architect didn't just build a safe building, he built it in such a way that it would shape the way in which people could view the art it held.
Software development works the same way. You're not just building something functional, you're shaping a user's experience, and creating something that is (hopefully) aesthetically pleasing.
Of course, as I said, some talent is required, and as with most things, 99% of what you see is pure crap. There's one Guggenheim, but there are a million strip malls. But that's life I guess.;)
No, he's dead serious. When you start up Netbeans, you sit looking at a pretty blue splash screen. It takes about the same amount of time for Netbeans to load as for KDE to load when you first start X Windows.
Once it's running, it's not bad, though. But, the code completion feature (you start typing, you hit ".", and a list of possible class members pops up) takes a few seconds sometimes.
Oh, and yeah, it's a major memory hog. You should have at least around 396MB ram for it to run well.
Java's plenty cool. But now, there are alternatives. Look at the.Net languages; they're practically clones of Java, with tweaks and a much easier GUI programming system. Look at it from another perspective, I know you're probably into Java, but consider this:
With Java, you're stuck with AWT, Swing, or SWT (SWT is probably the best option, but it's not pure Java, is it? It's got chunks that are platform specific, so you have to compile for a specific platform). If you want to use an IDE, you have a few to choose from, but I wouldn't consider any of them to be all that good (Eclipse seems pretty nice, but it doesn't do all the grunt work that Visual Studio does). Web development with Java is complex and weird, with too many competing methodologies.
Maybe people are just getting tired out, what with all the details they have to worry about.
Now look at something like PhP. Simple, clean, works just fine for all normal-sized sites (i.e. everything short of an international banking system)... Easy to learn, easy to work with.
Then there are the other scripting languages. Perl, Python, Ruby... All are easier to work with than Java, and let you do approximately the same things. Actually, their string processing beats Java's hands down, and as the old Unix guys used to say "every program is a filter".
And look at C#. C# is so Java-like it could be Java's fraternal twin. And look how easy the developer's tools are to work with. Everything just flows, you can focus on your actual problems instead of frameworks, Javabeans, plumbing...
C# is now an open-source project (Mono)! It's an ECMA standard! It's free for everybody to download and use on their Linux boxes, complete with an IDE (MonoDevelop)! It's got an amazing GUI designer (Glade) which produces XML files containing all the event mapping, which your program can just wave a magic wand over. You can do real programming just by coding the event handlers, and you can pass the same XML file around to different people to use with different compilers, languages, etc -- that's freakin' AMAZING. Think about the implications of this: you can have an arty-farty guy build your GUI to look gorgeous, and all you as a developer need from him is the XML file; you can read off the list of event handlers and start coding. The whole idea is amazing.
Don't take it so personally. All it means is that Java is "just another language" now. This is a GOOD thing.
First, I'd try to find a programmer, because this is going to take a little bit of coding. I'm going to give you a sort of spec; you can hire a starving college kid to hook this up for you on the cheap. OK? Here goes:
1. Locate a simple, downloadable SMTP library. You want this to be something that can be used within a piece of software to generate and send an email. VB, for example, has a Sendmail.dll file you can download somewhere, with a simple interface for creating and sending email. It's worth googling for (I don't remember it offhand).
2. Have your coder write some code that gets back the results of ipconfig (is it still called ipconfig on XP? I think that's the one for Windows 2000) and stuffs it in the body of an email. That'll give you what you need. Make sure the email also contains a timestamp, because you'll want to see who had that IP address at that time.
3. If you want to get really fancy, you can have your developer use whois (if the system has that; have to check) to find out who owns the subnet the laptop is on. That'll tell you whether its her university or a private ISP. If you can find a whois server on the web that'll let you do an automated check, that'll work too, just open a brief http connection. Netsol won't do it; they make you enter text from an image every time. Grumble...
4. You want the program to run very quietly without output on startup. You'll want to call it something innocuous, like SYSverCHK.exe, something people will figure is system related.
That's all I can think of off the top of my head... Good luck!
Naturally, much of Microsoft's code is excellent. Sure. But there are also tons of "ugly hacks" and workarounds, all sorts of stuff that is packed into their codebase that they can't get rid of for various and sundry reasons.
Think about it this way: Let's say you're a brilliant civil engineer. You build a big bridge. Most of your engineers do great work, and so do most of your construction workers. But there are a few schmucks thrown in, and you have to do all sorts of special little tweaks for this trucking company or that bus line, so most of the bridge looks great, except the center span is held together with rubber bands and duct tape, and some of the cables are detachable.
What have you got? A great bridge? Or a bridge that from time to time, dumps everyone in the Hudson River, leaving you to run out with some glue and rubber bands to patch it? Heh heh heh... Damn, that's a fun analogy. Picture all the little suits in their BMW's, screaming AAAAAAHHHHHHHHH as their car falls through the rubberbands... Man, I slay me.
Anyway, MY point is that I think they've painted themselves into a corner. They can't get rid of the hacks, workarounds, and outright cheats they put in without breaking with the existing codebase and trying something new. But, they can't do THAT because if they do everyone will go ballistic.
It's a damned if you do, damned if you don't situation. And you have to admit, that's EXACTLY where they're at.
Why leap up in defence of the realm? I'm not attacking Microsoft. If anything, I'm sympathizing with them. This codebase is a millstone around their necks. Why do you think they're pushing.Net so hard? They're hoping that if they're smart about how they set up.Net, they'll be able to move into a new codebase without a sudden lurch. Look at how web services take care of the DLL Hell problem.
They're wiggling; the question is, will they manage to get out of the trap?
They curse like sailors, they don't even like their OWN codebase, they code around errors... Yeah, sounds pretty clean to me.
I guess we'll see what happens. I give 'em five years, tops. I don't think the company's going out of business entirely, I just think they'll end up abandoning the PC OS business for other markets.
Not to overdo the "sympathy for the devil" thing here, but I've been thinking about how screwed poor Microsoft is. Think about this; they've managed to paint themselves into a corner on security and stability issues, and they may not have any way to get out of it. Consider:
1. They carried the same codebase forward from Windows 3.1, never completely scrapping it, always just bolting new parts on. This has caused Windows to end up like a Rube Goldberg machine, so complicated on the inside that "they" say nobody at Microsoft really knows what everything in there actually DOES.
2. They really pounded the nails in the coffin when they deliberately bound IE into the O/S to frustrate the DOJ during the browser wars. By binding so many things right into the O/S, they glued themselves to their codebase. Can they even separate their GUI from the underlying O/S anymore?
3. Given that this monstrous, mammoth codebase is a hideous nightmare to try and "fix", obviously the smart thing is to pull a Steve Jobs: scrap the whole beast and glue a beaufitul, stable frontend onto a FreeBSD backend with a Mach Microkernel. This would turn Windows into a thing of beauty and stability, like the Mac O/S. But, CAN they? Is it even possible?
4. And, if they did that, they might face a revolt as virtually every software company, corporate IT department, and end user went completely ballistic. It could be suicide.
So, think this over: Microsoft is pretty much screwed, locked utterly into the codebase they've got. If they stick with it, eventually they'll be replaced by more secure, stable alternatives. If they try to save themselves the Apple way, the end could come sooner instead of later.
If YOU were Gates and Ballmer, what would YOU do?
Aside from spending the weekend on the yacht, I mean...;)
1. Locate the mayor (or whoever decided that YOUR house was the one to go) and the local representatives of the business that will replace your property;
2. Hog-tie them and bring them to a quiet, abandoned farm outside town.
3. Show them the inflatible kiddie pool full of bull shit you've prepared for them.
4. Stick each one in the bull shit head first, with only their legs sticking out. Wait until the twitching stops, while taking commemorative pictures to show your grandchildren one day.
5. Go home and forget about the whole thing. Pretend to be surprised and delighted when the reporters ask you about it. Remember to smile! Look friendly!
When business types talk about "deep coders" or programmers, they're NOT talking about computer scientists. They're talking about people like ME.
I am what used to be called a "systems analyst". Although, really, I'm still wearing the "senior programmer/analyst" hat because in my shop, the analysts do most of the coding too, even if we've got eight years' experience.
What I do is, I gather business requirements, return to my cubicle, and build software systems. I interact with my "clients" daily, going through rounds of UAT, debugging problems, maintaining production code, etc. 100% of the work I do is in applications development. Instead of something sexy like a videogame, I write payroll management systems. And it takes a lot of domain knowledge, plus the ability to deal with intensely annoying people without losing it, plus talent with code.
This skill set, by the way, is EXACTLY the same skill set you'll find in every other applications programmer working in a business environment. It has ALWAYS been this way. Nothing has changed; the suits didn't suddenly wake up and say "Hey! We need programmers who know our business!" Programmers in my line of work were ALWAYS expected to become domain experts.
Gartner's full of shit and (sorry, pal) so are you.
Ok, this is from a thousand-year old Roman engineering textbook I perused many years ago.
One of the first things a Roman engineer would do on any building site is locate a spring to supply him with water. In order to do this, the engineer would get up before sunrise and lie down on the top of a hill, facing downhill. As the sun rose, tendrils of mist would appear in certain places on the ground. The engineer would note their location, and he would dig in those spots to produce a water supply.
The reason this works? The mist appears where the water table is closer to the surface. By digging, you go below the water table, and the hole will naturally fill up with water over time. This water can be filtered and used.
That's really cool. I've been thinking about buying a small house (I'm thinking a cottage or cape with three modest bedrooms in case I have a boy and a girl one day, living room, dining room, and kitchen on a slab foundation). If I get one in the 75K range, my payment will be lower than rent by about a hundred or two hundred bucks, and I'll have some land I can garden on. One thing that occurred to me is grapes. I read that if you fill an acre with grapevines, you can harvest an enormous amount of grapes per year. You get the grapes, plus jams and jellies, and of course the possibility of wine... You just have to keep the birds away.;)
My uncle used to make pickles, too. He'd grow cucumbers and peppers, and pickle them over the winter. They last forever once they're pickled and stored properly. Good for winter stock, you know? A little vinegar, some spices... Tasty!
You spot a "dork" by realizing that he has called himself a web developer, or a.Net developer?
So, if I, for instance, just happen to be working in a.Net shop, and my main specialty is web development, the mere act of telling you what I do for a living makes you think I'm a dork?
Here's a much better idea: start up a large number of small micro-businesses. What do I mean? Simple. Create small, individual niche products and sell them via the web. Then, sell tie-ins, like swag. While you're at it, start writing books about the tools you used to create your niche products. And on the side, do tech support in your neighborhood. Pick up surplus computers, fix them up and sell them at a small profit, or combine them with open-source software to help small businesses get computerized.
If you have any capital, or you can get a mortgage, buy a laundromat or cafe and turn it into a wi-fi hotspot that offers computer-related services (for cash, of course). Charge by the hour. Rent out server space. Become a mini-ISP. Do a bulletin board.
In general, think of a dozen small, modest things you can do as an individual without having to start up a whole company, and make your living THAT way. Go totally, unabashedly rogue.
"It is sad when I see college students selecting majors base on what is easiest or cool instead of what will best help them provide for their family, improve themselves, and help support their country."
And what, pray tell, will help them provide for their family?
Anything you can study which will grant you a living wage will make you a target for outsourcing because the Rich hate you. Better figure this out, man... There's nowhere to run or hide from this.
Maybe those kids ARE improving themselves by studying what they enjoy. Maybe they've already figured out that NOTHING will grant them a career anymore, so there's no point in wasting time doing something that isn't interesting and fun.
And, as far as "supporting their country" goes, why should they? Isn't that the same country that sold out their future to make the rich richer?
I agree with you 100%. My grandmother lived through the depression out in California; she learned to make all her own stuff, and passed that on to me. I think that knowing her actually may have had something to do with my desire to get into engineering and later, computer science. It's that whole desire to get your hands on something, fix or build it yourself, you know? I've always loved doing things for myself, and I think it partially came from her.
I'm currently employed, because I shifted out of the private sector into civil service (you might want to look into that, local or state government hires some programmers and other techies, because they have a LOT of data to move around). But given the way our country is going, I don't entirely trust my job security.
I've been paying off every debt I've got, spending all the money I can scrounge to make extra payments, minimizing my expenses, living cheaply... My ultimate goal is to formulate a lifestyle in which I can be happy even if I lose my job.
I'm getting there. I've currently reduced my living environment to a small one-bedroom apartment, and soon (half a year or so) I'm thinking about moving down to a studio, with low rent and lower utility bills.
I think that people who figure this out aren't going to suffer too much. People who keep throwing their money around are going to be in a hurt locker when the crash comes.
"Deep Coding" is just another bullshit propaganda term they've come up with to blame programmers for the loss of their careers. Here's how this fun game works:
Some soulless P.R. flack has to make a case that programming isn't a viable career anymore, so that he can claim that people who still want to program must have something wrong with them. So he needs to find a way to characterize programming in some negative way, to shift the point of view of the reader.
First, he considers the reality: most programmers really love programming, and it's a complex and interesting art best performed by people with education and experience. The real reason the jobs are going overseas is that the suits in charge of companies are vicious skinflints who think they can get something for almost nothing.
That's no good, though, because it's unflattering to the people who are paying for the P.R. flack's work, and it shows the similarity between comp.sci grads and engineers, doctors, lawyers, etc -- which isn't where the P.R. flack wants to go with this. The LAST thing he wants to do is turn the programmer into a sympathetic figure, someone who reminds Joe Sixpack of the scientists who saved the world in old fifties movies. Selling out nice Doctor SaveEverybody might not create the right public image.
So, somewhere, Mr. P.R. flack has heard the term "Deep Geek". He throws the term around a room full of interns, and they come up with the concept of "Deep Coding" -- i.e. programming as an art in itself. "Hey," one of the proto-flacks says, "why didn't these guys study business? It's their own fault. If they wanted to be successful, they should have majored in business like us. All the 'deep coders' are dead meat, and it's their own fault for not being business majors."
The P.R. flack gives the intern a bagel, then reflects on the statement. He can't really put it THAT way, because most people didn't study business, and they aren't going to be sympathetic to that point of view... But what if he turns it around a little, and says that programmers are too specialized! Sure! They focused only on programming, they just want to hide in their cubicles, the bastards, they're no good to a company. That way, he can say it's their fault without complimenting suits directly, and nobody will really notice.
He starts using the term "Deep Coding" when he goes out for his six-martini lunch, he uses it on the golf course around the executives, and before too long, ALL the P.R. flacks are using it. One bounces it off another, who quotes it to another, and pretty soon, everyone is saying that to be a programmer, you can't really be a programmer! No, you have to be a business major who happens to do a little programming on the side.
Telling me what's happening is one thing. There is a large amount of unbiased coverage of this issue available all over the web, and if I want to read about it, I can read an industry publication and get the scoop from professionals working in the business. I sure as hell don't need Wired magazine's non-techie reporters to tell me about it.
Also, if a magazine puts out a propaganda piece SUPPORTING something that fucks me over, that magazine has just fucked me over and I don't see why I should spend any money on it. Let the Indian outsourcers the magazine fawned over buy subscriptions. I'm not going to.
You obviously aren't affected by the issue, so you go right ahead and ignore the insult this magazine article represents.
By the way, here's their nasty cover:
l
http://www.wired.com/wired/archive/12.02/full.htm
Now, tell me that's not completely obnoxious!!!
Fucking Wired.
I told them to cancel my subscription by letter, and also to go fuck themselves. I might have said a few other things related to less comfortable activities. I don't remember, it was a while ago.
Being a programmer, I was somewhat annoyed that Wired decided to spit in my eye by posting a huge front-page photo of an Indian woman with henna tattoos covering her hand. The headline said, more or less, "we're taking your jobs and there's nothing you can do about it, so ha ha".
My point of view was that since this was a magazine supposedly by and for techie geeks, it was extraordinarily rude of them to rub the outsourcing problem in our faces. Rude, insensitive, and hostile.
Fucking Wired. I hope they go out of business.
Yet another thing to love about Linux/Unix/*BSD...
The firewall (iptables or ipfw) is turned on before the network interfaces are brought online. This is possible because the firewall functions of Linux are part of the OS kernel and are available as soon as the kernel is running.
Don't get me wrong, I still use a hardware firewall with my Linux box (belt and suspenders, right?) but it's not quite the matter of life and death it is with Windows machines.
If you think about it, programming is most similar to architecture or civil engineering. It has strong engineering elements, but at the same time, offers a tremendous amount of room for personal expression, and is one of those things in which talent matters more than anything else.
;)
Think about a large engineering project like the Brooklyn Bridge. The lead engineer designed the bridge to be not just functional but beautiful as well. Or consider something like the Guggenheim, in which the architect didn't just build a safe building, he built it in such a way that it would shape the way in which people could view the art it held.
Software development works the same way. You're not just building something functional, you're shaping a user's experience, and creating something that is (hopefully) aesthetically pleasing.
Of course, as I said, some talent is required, and as with most things, 99% of what you see is pure crap. There's one Guggenheim, but there are a million strip malls. But that's life I guess.
Is "loose your virginity" like "loose the hounds"? Does it run barking into the night, pursuing a fleeing coed?
No, he's dead serious. When you start up Netbeans, you sit looking at a pretty blue splash screen. It takes about the same amount of time for Netbeans to load as for KDE to load when you first start X Windows.
Once it's running, it's not bad, though. But, the code completion feature (you start typing, you hit ".", and a list of possible class members pops up) takes a few seconds sometimes.
Oh, and yeah, it's a major memory hog. You should have at least around 396MB ram for it to run well.
Java's plenty cool. But now, there are alternatives. Look at the .Net languages; they're practically clones of Java, with tweaks and a much easier GUI programming system. Look at it from another perspective, I know you're probably into Java, but consider this:
With Java, you're stuck with AWT, Swing, or SWT (SWT is probably the best option, but it's not pure Java, is it? It's got chunks that are platform specific, so you have to compile for a specific platform). If you want to use an IDE, you have a few to choose from, but I wouldn't consider any of them to be all that good (Eclipse seems pretty nice, but it doesn't do all the grunt work that Visual Studio does). Web development with Java is complex and weird, with too many competing methodologies.
Maybe people are just getting tired out, what with all the details they have to worry about.
Now look at something like PhP. Simple, clean, works just fine for all normal-sized sites (i.e. everything short of an international banking system)... Easy to learn, easy to work with.
Then there are the other scripting languages. Perl, Python, Ruby... All are easier to work with than Java, and let you do approximately the same things. Actually, their string processing beats Java's hands down, and as the old Unix guys used to say "every program is a filter".
And look at C#. C# is so Java-like it could be Java's fraternal twin. And look how easy the developer's tools are to work with. Everything just flows, you can focus on your actual problems instead of frameworks, Javabeans, plumbing...
C# is now an open-source project (Mono)! It's an ECMA standard! It's free for everybody to download and use on their Linux boxes, complete with an IDE (MonoDevelop)! It's got an amazing GUI designer (Glade) which produces XML files containing all the event mapping, which your program can just wave a magic wand over. You can do real programming just by coding the event handlers, and you can pass the same XML file around to different people to use with different compilers, languages, etc -- that's freakin' AMAZING. Think about the implications of this: you can have an arty-farty guy build your GUI to look gorgeous, and all you as a developer need from him is the XML file; you can read off the list of event handlers and start coding. The whole idea is amazing.
Don't take it so personally. All it means is that Java is "just another language" now. This is a GOOD thing.
Anyway, what's the difference? We've got Mono now, right? ;)
They don't know how to fantasize. They do everything on such a small scale, you know?
:)
Two words: Dyson Sphere. Say it with me...
First, I'd try to find a programmer, because this is going to take a little bit of coding. I'm going to give you a sort of spec; you can hire a starving college kid to hook this up for you on the cheap. OK? Here goes:
1. Locate a simple, downloadable SMTP library. You want this to be something that can be used within a piece of software to generate and send an email. VB, for example, has a Sendmail.dll file you can download somewhere, with a simple interface for creating and sending email. It's worth googling for (I don't remember it offhand).
2. Have your coder write some code that gets back the results of ipconfig (is it still called ipconfig on XP? I think that's the one for Windows 2000) and stuffs it in the body of an email. That'll give you what you need. Make sure the email also contains a timestamp, because you'll want to see who had that IP address at that time.
3. If you want to get really fancy, you can have your developer use whois (if the system has that; have to check) to find out who owns the subnet the laptop is on. That'll tell you whether its her university or a private ISP. If you can find a whois server on the web that'll let you do an automated check, that'll work too, just open a brief http connection. Netsol won't do it; they make you enter text from an image every time. Grumble...
4. You want the program to run very quietly without output on startup. You'll want to call it something innocuous, like SYSverCHK.exe, something people will figure is system related.
That's all I can think of off the top of my head... Good luck!
Naturally, much of Microsoft's code is excellent. Sure. But there are also tons of "ugly hacks" and workarounds, all sorts of stuff that is packed into their codebase that they can't get rid of for various and sundry reasons.
.Net so hard? They're hoping that if they're smart about how they set up .Net, they'll be able to move into a new codebase without a sudden lurch. Look at how web services take care of the DLL Hell problem.
Think about it this way: Let's say you're a brilliant civil engineer. You build a big bridge. Most of your engineers do great work, and so do most of your construction workers. But there are a few schmucks thrown in, and you have to do all sorts of special little tweaks for this trucking company or that bus line, so most of the bridge looks great, except the center span is held together with rubber bands and duct tape, and some of the cables are detachable.
What have you got? A great bridge? Or a bridge that from time to time, dumps everyone in the Hudson River, leaving you to run out with some glue and rubber bands to patch it? Heh heh heh... Damn, that's a fun analogy. Picture all the little suits in their BMW's, screaming AAAAAAHHHHHHHHH as their car falls through the rubberbands... Man, I slay me.
Anyway, MY point is that I think they've painted themselves into a corner. They can't get rid of the hacks, workarounds, and outright cheats they put in without breaking with the existing codebase and trying something new. But, they can't do THAT because if they do everyone will go ballistic.
It's a damned if you do, damned if you don't situation. And you have to admit, that's EXACTLY where they're at.
Why leap up in defence of the realm? I'm not attacking Microsoft. If anything, I'm sympathizing with them. This codebase is a millstone around their necks. Why do you think they're pushing
They're wiggling; the question is, will they manage to get out of the trap?
Uh huh. Clean? here's a fun article for your perusal about that "programming talent" you mentioned:
5
:)
http://www.kuro5hin.org/story/2004/2/15/71552/779
They curse like sailors, they don't even like their OWN codebase, they code around errors... Yeah, sounds pretty clean to me.
I guess we'll see what happens. I give 'em five years, tops. I don't think the company's going out of business entirely, I just think they'll end up abandoning the PC OS business for other markets.
But, we can agree to disagree.
Not to overdo the "sympathy for the devil" thing here, but I've been thinking about how screwed poor Microsoft is. Think about this; they've managed to paint themselves into a corner on security and stability issues, and they may not have any way to get out of it. Consider:
;)
1. They carried the same codebase forward from Windows 3.1, never completely scrapping it, always just bolting new parts on. This has caused Windows to end up like a Rube Goldberg machine, so complicated on the inside that "they" say nobody at Microsoft really knows what everything in there actually DOES.
2. They really pounded the nails in the coffin when they deliberately bound IE into the O/S to frustrate the DOJ during the browser wars. By binding so many things right into the O/S, they glued themselves to their codebase. Can they even separate their GUI from the underlying O/S anymore?
3. Given that this monstrous, mammoth codebase is a hideous nightmare to try and "fix", obviously the smart thing is to pull a Steve Jobs: scrap the whole beast and glue a beaufitul, stable frontend onto a FreeBSD backend with a Mach Microkernel. This would turn Windows into a thing of beauty and stability, like the Mac O/S. But, CAN they? Is it even possible?
4. And, if they did that, they might face a revolt as virtually every software company, corporate IT department, and end user went completely ballistic. It could be suicide.
So, think this over: Microsoft is pretty much screwed, locked utterly into the codebase they've got. If they stick with it, eventually they'll be replaced by more secure, stable alternatives. If they try to save themselves the Apple way, the end could come sooner instead of later.
If YOU were Gates and Ballmer, what would YOU do?
Aside from spending the weekend on the yacht, I mean...
And leave the admin password sitting on the machine in plain sight? Hmm... Let me think...
Stylish Punishment:
1. Locate the mayor (or whoever decided that YOUR house was the one to go) and the local representatives of the business that will replace your property;
2. Hog-tie them and bring them to a quiet, abandoned farm outside town.
3. Show them the inflatible kiddie pool full of bull shit you've prepared for them.
4. Stick each one in the bull shit head first, with only their legs sticking out. Wait until the twitching stops, while taking commemorative pictures to show your grandchildren one day.
5. Go home and forget about the whole thing. Pretend to be surprised and delighted when the reporters ask you about it. Remember to smile! Look friendly!
I think that you completely missed my point.
When business types talk about "deep coders" or programmers, they're NOT talking about computer scientists. They're talking about people like ME.
I am what used to be called a "systems analyst". Although, really, I'm still wearing the "senior programmer/analyst" hat because in my shop, the analysts do most of the coding too, even if we've got eight years' experience.
What I do is, I gather business requirements, return to my cubicle, and build software systems. I interact with my "clients" daily, going through rounds of UAT, debugging problems, maintaining production code, etc. 100% of the work I do is in applications development. Instead of something sexy like a videogame, I write payroll management systems. And it takes a lot of domain knowledge, plus the ability to deal with intensely annoying people without losing it, plus talent with code.
This skill set, by the way, is EXACTLY the same skill set you'll find in every other applications programmer working in a business environment. It has ALWAYS been this way. Nothing has changed; the suits didn't suddenly wake up and say "Hey! We need programmers who know our business!" Programmers in my line of work were ALWAYS expected to become domain experts.
Gartner's full of shit and (sorry, pal) so are you.
Ok, this is from a thousand-year old Roman engineering textbook I perused many years ago.
One of the first things a Roman engineer would do on any building site is locate a spring to supply him with water. In order to do this, the engineer would get up before sunrise and lie down on the top of a hill, facing downhill. As the sun rose, tendrils of mist would appear in certain places on the ground. The engineer would note their location, and he would dig in those spots to produce a water supply.
The reason this works? The mist appears where the water table is closer to the surface. By digging, you go below the water table, and the hole will naturally fill up with water over time. This water can be filtered and used.
Isn't that neat?
That's really cool. I've been thinking about buying a small house (I'm thinking a cottage or cape with three modest bedrooms in case I have a boy and a girl one day, living room, dining room, and kitchen on a slab foundation). If I get one in the 75K range, my payment will be lower than rent by about a hundred or two hundred bucks, and I'll have some land I can garden on. One thing that occurred to me is grapes. I read that if you fill an acre with grapevines, you can harvest an enormous amount of grapes per year. You get the grapes, plus jams and jellies, and of course the possibility of wine... You just have to keep the birds away. ;)
My uncle used to make pickles, too. He'd grow cucumbers and peppers, and pickle them over the winter. They last forever once they're pickled and stored properly. Good for winter stock, you know? A little vinegar, some spices... Tasty!
So, let me get this straight:
.Net developer?
.Net shop, and my main specialty is web development, the mere act of telling you what I do for a living makes you think I'm a dork?
You spot a "dork" by realizing that he has called himself a web developer, or a
So, if I, for instance, just happen to be working in a
Wow. You must be fun at parties.
Here's a much better idea: start up a large number of small micro-businesses. What do I mean? Simple. Create small, individual niche products and sell them via the web. Then, sell tie-ins, like swag. While you're at it, start writing books about the tools you used to create your niche products. And on the side, do tech support in your neighborhood. Pick up surplus computers, fix them up and sell them at a small profit, or combine them with open-source software to help small businesses get computerized.
If you have any capital, or you can get a mortgage, buy a laundromat or cafe and turn it into a wi-fi hotspot that offers computer-related services (for cash, of course). Charge by the hour. Rent out server space. Become a mini-ISP. Do a bulletin board.
In general, think of a dozen small, modest things you can do as an individual without having to start up a whole company, and make your living THAT way. Go totally, unabashedly rogue.
Think about it.
"It is sad when I see college students selecting majors base on what is easiest or cool instead of what will best help them provide for their family, improve themselves, and help support their country."
And what, pray tell, will help them provide for their family?
Anything you can study which will grant you a living wage will make you a target for outsourcing because the Rich hate you. Better figure this out, man... There's nowhere to run or hide from this.
Maybe those kids ARE improving themselves by studying what they enjoy. Maybe they've already figured out that NOTHING will grant them a career anymore, so there's no point in wasting time doing something that isn't interesting and fun.
And, as far as "supporting their country" goes, why should they? Isn't that the same country that sold out their future to make the rich richer?
Please, share your thoughts.
I agree with you 100%. My grandmother lived through the depression out in California; she learned to make all her own stuff, and passed that on to me. I think that knowing her actually may have had something to do with my desire to get into engineering and later, computer science. It's that whole desire to get your hands on something, fix or build it yourself, you know? I've always loved doing things for myself, and I think it partially came from her.
I'm currently employed, because I shifted out of the private sector into civil service (you might want to look into that, local or state government hires some programmers and other techies, because they have a LOT of data to move around). But given the way our country is going, I don't entirely trust my job security.
I've been paying off every debt I've got, spending all the money I can scrounge to make extra payments, minimizing my expenses, living cheaply... My ultimate goal is to formulate a lifestyle in which I can be happy even if I lose my job.
I'm getting there. I've currently reduced my living environment to a small one-bedroom apartment, and soon (half a year or so) I'm thinking about moving down to a studio, with low rent and lower utility bills.
I think that people who figure this out aren't going to suffer too much. People who keep throwing their money around are going to be in a hurt locker when the crash comes.
Hell, yeah -- those Russian chicks are HOT, HOT, HOT. And, they hack, too! Yum...
Gimme a russian babe any day.
"Deep Coding" is just another bullshit propaganda term they've come up with to blame programmers for the loss of their careers. Here's how this fun game works:
Some soulless P.R. flack has to make a case that programming isn't a viable career anymore, so that he can claim that people who still want to program must have something wrong with them. So he needs to find a way to characterize programming in some negative way, to shift the point of view of the reader.
First, he considers the reality: most programmers really love programming, and it's a complex and interesting art best performed by people with education and experience. The real reason the jobs are going overseas is that the suits in charge of companies are vicious skinflints who think they can get something for almost nothing.
That's no good, though, because it's unflattering to the people who are paying for the P.R. flack's work, and it shows the similarity between comp.sci grads and engineers, doctors, lawyers, etc -- which isn't where the P.R. flack wants to go with this. The LAST thing he wants to do is turn the programmer into a sympathetic figure, someone who reminds Joe Sixpack of the scientists who saved the world in old fifties movies. Selling out nice Doctor SaveEverybody might not create the right public image.
So, somewhere, Mr. P.R. flack has heard the term "Deep Geek". He throws the term around a room full of interns, and they come up with the concept of "Deep Coding" -- i.e. programming as an art in itself. "Hey," one of the proto-flacks says, "why didn't these guys study business? It's their own fault. If they wanted to be successful, they should have majored in business like us. All the 'deep coders' are dead meat, and it's their own fault for not being business majors."
The P.R. flack gives the intern a bagel, then reflects on the statement. He can't really put it THAT way, because most people didn't study business, and they aren't going to be sympathetic to that point of view... But what if he turns it around a little, and says that programmers are too specialized! Sure! They focused only on programming, they just want to hide in their cubicles, the bastards, they're no good to a company. That way, he can say it's their fault without complimenting suits directly, and nobody will really notice.
He starts using the term "Deep Coding" when he goes out for his six-martini lunch, he uses it on the golf course around the executives, and before too long, ALL the P.R. flacks are using it. One bounces it off another, who quotes it to another, and pretty soon, everyone is saying that to be a programmer, you can't really be a programmer! No, you have to be a business major who happens to do a little programming on the side.
THAT is how bullshit like this gets created.