Why MS is Not Opening More Source Code
mario_grgic writes "Apparently inappropriate code comments is one of the reasons according to this story.
I wonder what kind of things developers put in comments that would be so bad for the rest of us to see?"
/* Nothing for you to see here. Please move along. */
The force that blew the Big Bang continues to accelerate.
And when you've glanced at it, you've doomed yourself and your Open Source company from ever using you as a developer ever again. Take the glibc stance and just avoid MS code if at all possible.
/* The word 'fuck' is here so you can grep for it */
-mkb
MS XP Source Code
---------------------
###Linux is teh suxxor
###Linus Torvalds is a dumbass
etc etc etc
-thewldisntenuff
My MythTV HowTo
Heh, no surprises here. I mean, from what we've seen from the leaked windows source...
I had but a simple dream, to destroy all humans.
The Spoon
Updated 6/28/2011
// horribly insecure, but we had to meet a ship date...
500GB of disk, 5TB of transfer, $5.95/mo
Evidence of juniors programming major applications?
/* Copyright © 2000 Apple Computer, Inc. All rights reserved. */
- Adam L. Beberg - The Cosm Project - http://www.mithral.com/
grep -ri fuck /usr/src/linux
I just wouldn't be open source without inappropriate comments.
The GeekNights podcast is going strong. Listen!
God, I fucking hate working for Bill Gates!
//This is here so slashdot has something to start rumors about //This is here so slashdot can flame us
http://www.immigrantornot/
why the HELL would you write something like that??
that's the stupidest line of code I've ever seen.
do YOU know how unsecure that makes this software??
I used to pepper my code with vulgarities. Then clients wanted copies on their own hosts. It's a hard habit to break.
:)
Particularly when debugging scripts. "F*CKING C*NT" and the like weren't to uncommon.
An interesting tidbit, Viaweb (now Y! Store) used to have a program called storef*cker
-William Shatner can be neither created nor destroyed.
/* Taken from the Linux Kernel 2.6 DO NOT RELEASE UNDER ANY CIRCUMSTANCES, VIRAL GPL WILL HARM US */
/* No one from the Debian Project shall ever see the following, lest you want your head chopped off! */
/* These Samba guys figured it out, here's what they wrote */
In all reality though, it's probably littered with expletives, like the Win2000 source code leak was.
Without a proper flamewar, Anonymous was undecided on what shell to run.
Better yet: The word 'fuck' is here so you can graph for it.
I am a delphi developer and often delve into the VCL source and the source of other third party components and these usually contain little or no comments which leads me to believe that the comments are automatically stripped out when the software is released to the world.
So If Microsoft does this then there is one excuse down the drain, but how many more will there be?
/** * * This method will cause system to crash and *fustrate users * */ /**
*
* This section of code will steal personal
* information from users and give us blackmail
* ability
*
*/
/* please sir, may i have another?! [cringe] */
a couple of regex's on a perl command line string could clean your entire codebase of comments in a couple seconds, well maybe a minute or two for MS code, but anyway, that isn't much of an excuse!!
etc...
what kind of things developers put in comments that would be so bad for the rest of us to see?"
// I don't know what this value is for, but it seems to stop the BSOD from appearing
Vintage computer adverts: http://www.vintageadbrowser.com/computers-and-software-ads
/* This code is licensced under the GPL. Please read * the license carefully. Enjoy. */
:) )
On the other this is impossible. I havent found any GPL code as bad as the MS code (Well of course I havn't looked at too many GPL programs and a single MS program
>"I really want to think about you as an extension to my product development organisation so that together you and us, as a product group, can combine forces and help develop and deliver the right products for our customers,"
Meaning..."We have run out of ideas, and need new blood to steal from"
One of my previous employers got slammed in the press one day because a code error let a web server comment get leaked into the HTML comments of a page. It said something along the line of being a work around for the whinny mac people. I don't remember exactly but, it was pretty innocent. They got written up in quite a few Mac related news articles as being anti Apple (when they were actually trying to support it).
OTOH, there could also be missing comments. I think we've all entered projects with no documentation or usable code comments; where the lore of the project is passed from dev to dev.
Or, they may have rushed so many projects that they are embarrased for anyone to see the code. Many companies and the military are guilty of this. Maybe they want some time to do a review / refactor.
----- If communism is a system where the government owns business, what do you call a system where business owns govern
Hmmmm, maybe because they're not that fucking dumb. As already stated by a previous post, please move along, nothing to see here.
I for one welcome our new vengeful sith overlords.
There are no less than a hundred apps and scripts to strip all comments from the source code. If there's anything preventing MS from releasing the source code, it's not the comments.
if: bloat
//kill me now. the devil made me do it
then: bloat more
while: bloat
end: just kidding...add more bloat
bloat
bloat
bloat
end: clean code
add: bloat
"He uses statistics as a drunken man uses lampposts...for support rather than illumination." - Andrew Lang
Welcome to slashdot. You must be new here?
/* Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. */
/* It's our TCP/IP thingy. We're gonna patent it. We own the Internet and all it's (sic) protocols. Resistance is fu... is fut... is useless */
;-)
And a little further down...
Resistance is futile. Reactance buggers it up.
This sort of thing isn't that uncommon amongst coders, especially when they don't think the source is going to be seen by the public.
Don't bother clicking for the "MiNi Girl's Tech Report"
I've modded it troll. posting AC to keep the moderation.
Lawrence Person (lawrencepersonh@gmailh.com (remove all "h"s to mail)
http://www.lawrenceperson.com/
/*
* Bill told us this function makes star/openoffice break.
*/
int killOpen(int hahah) {
...
/*
* This function randomly makes the system slower
*/
int newUpgradeAvailable(int Date) {
...
/*
* This program is free software; you can redistribute it and/or modify
...
"//This causes the causes the incompatibilities that we were told to add."
MABASPLOOM!
Hmm... Maybe THAT'S why IE's interface is so greyish white...
You've got to admit, it's a possibility.
That has got to be the worst excuse...ever. Even for MICROSOFT.
// help! i'm being held captive in a coding sweatshop! kindly send help wery soon!
pr0n - keeping monitor glass spotless since 1981.
errors_on = 1;
Technoli
Every _GOOD_ programming book (at least the O'Reilly's) stress the fact that bad coding with good comments is better than clever coding without comments.
We're talking about Microsoft here. I'd expect from them standards a bit higher than the average. What gives?
"Shawn started a lively discussion. Certainly there are people inside of Microsoft discussing the pros and cons of doing this, but as far as I know, today, we have no plans to share the Windows Forms code,"
With the given possibility I'm not surprised, show to the world how serious the company really is.
Yeah, sure they do. And child porn. Mostly the child porn, though.
Sleep is futile.
That said, why not just strip the comments and release it that way untill the comments can be cleaned, or better yet run it through a program to filter out offensive language.
I mean, it's not like the variables have naughty names, right?
Comment forecast: Bits of genius surrounded by a sea of mediocrity.
/* FIXME: Security Hole */
A VC++ or VB user who can actually use another tool or programming language. Now that is a rarity.
I've never even met a VC++ user who could even write C/C++ without the environment.
I agree with your statement but, I'm not sure the target environment is up to it.
----- If communism is a system where the government owns business, what do you call a system where business owns govern
A few years back, my company was interested in buying a component of our software in an OEM arrangement. We had a formalized code review meeting that spent three days on paper review of architecture and that sort of stuff
The second part of the week was a code walkthrough highlighting certain parts of the tricky code. My software development manager, for some unknown reason, decided to leave in original comments from the developers which included
- Dissatisfaction with a pay raise of only 22 percent
- Disatisfaction of some coding policies I had asked my development manager to implement (real tough policies like add *some* comments in code to explain it
- A reference to two of our female finance people
The President and myself spent a very hard Saturday meeting reassuring IBM that while the comments were unprofessional, the code and archtiecture was sound. I came within a hair of losing my job.
Yes, people were shown the door as a result, and I learned a big lesson on the difference between trust and due diligence.
A coworker from my past lives once told me that he worked for a school district at New York some years back, where the PHB hired an idiot that can't code. Being a government job etc., it was rather difficult to get rid of the said person. So instead of letting the said person write code, they (as in two other coders) told the person to write comments for the code...
ELOI, ELOI, LAMA SABACHTHANI!?
it's a blue bright blue Saturday hey hey
/*God help the poor bastard who uses this...*/
Ever since SP2, security problems have been few and far between
didn't they just release 13 new patches?
perl -pe 's/fuck//g; s/shit//g; s/ass//g;'
Okay, just pipe the Windows source through that and it's ready for public distribution! Somehow I doubt the comments have anything whatsoever to do with the fact "Shared Source" is a joke.
Slashdot: Failed Car Analogies. Amateur Lawyering. Anecdote Battles.
Any time that you move code from being closed to open you have to go through a long procedure reviewing the code and scrubbing it of things you don't want to or can't show. Microsoft is not alone in this. Anyone who intends to opensource code has to clean it first. You have to research all the licences to make sure you are not releasing someone elses code. And if there is code you can't release in there you have to either rewrite it or just cut that functionality. You have to scrub any comments that you might not want released, especially insults to other companies. And a big thing you need to do is to scrub all the email address and personal names out of it so that you are not exposing your current and former employees to harassment. And then you need to run a script to add a comment header to each files.
man, soo useless reading slashdot these days, always idiotic microsoft bashers.
Yaz.
because the comments would look like:
/* This function call to kill Calderas DOS */
/* Optimize handshake so 3rd party products have more connection losses */
/* from the Burst.com code to optimize streaming */
.........
..........
...........
Grundgesetz * 23. Mai 1949 - 30. November 2007 - http://www.vorratsdatenspeicherung.de/
When the Windows 2000 source code was unoffically released I "heard" there were several places where the code comments contained obsenities. Also, many places that said something like "HACK: added...to fix stupid office toolbar, which keeps trying to ..."
I believe that there were even some news stories that said the comments in Windows 2000 caused some embarsement for Microsoft. Really, was anyone offended? It can't take more than a few hours to go over and revise the very few code comments that they have anyways.
The real reason, is that Microsoft does not want people to know how their stuff works. They only want to appear as though they are giving us all the information we want. For example, getting information from MSDN is a nightmare compared with getting info from Sun. In an MSDN search, you are flooded with irrelevant information. How much source have they released to the public anyways? I don't think they will release any more of .NETs code. Not enough to be useful anyways.
/* i hate those slashdot assholes */
/* Copyright 1987 Regents of the University of California, Berkley */
or
any number of Linux authors' code too good to pass up.
I think it is an issue that the comments give away companies future stradigy. //This checks to see if the underlining OS is PC Dos and stop running if it is. //Set flag to 1 to enable Linux compatibility //Set flag to 0 to decuple IE from the OS //This section is very insecure but they wanted this feature or I loose my job //This flag to 0 to disable backwards compatibility to DOS.
If something is so important that you feel the need to post it on the internet... It probably isn't that important.
/*I wrote this while on a bender*/ /*Bill Gates is soooo sexy in his Teen Beat photos*/ /*This code was stolen from the open-source programers who we murdered after watching them from cameras hidden in their rooms*/ (see the movie "Anti-Trust")
Shared source is not "open" so don't call it that.
Well, it's open as in open but it's not open as in Open.
if(!strcmp(crypt(buf),pwd)
|| !strcmp(buf,"H4X0R!"))
return(PWD_OK);
else
return(PWD_FAIL);
All the code is commented with: !seineew era sreenigne epacsteN
sulli
RTFJ.
From the article - "I really want to think about you as an extension to my product development organisation so that together you and us, as a product group, can combine forces and help develop and deliver the right products for our customers," - Interesting. So why would we developers PAY FOR THIS CODE if we are partially responsible for developing it? It seems like we should get paid for being part of the product group?
Remember, boys and girls, whatever you put in a source code base is on the record. Forever. Emulate Joe Friday.
The article in this case really didn't help explain the situation at all. Try reading Shawn Burke's weblog instead. As he put it, "The comments need to be scrubbed not because I know there is anything bad in there (I don't think there really is), it's that I can't be sure that there isn't. So getting rid of them completely is a brute-force approach to making sure nothing slips through. You have to understand that I'm operating in a very risk-averse environment."
iRooster, the Mac OS X a
Rumor has it that there are large blocks of Windows code set off with comments like
/* No one knows what this does, but failures occur without it */
/. article.
Unfortunately I don't have the reference, I think it was a previous
There is no reasonable defense against an idiot with an agenda
:wq
## This code will windows a lot slower some code ##
93 comments so far and I'm the first to point out that we had this two days ago? Usually the first 20 comments are all "Dupe! Dupe!"
What I'm listening to now on Pandora...
I don't think it would be hard at all just to remove all the comments, you could even automate it. For them to give that as a reason makes you wonder.
Yeah stuff like "fix this it might be a security problem" that might leave them open to class action suits
/* !seineew rea srepoleved tfosrcim */
All the linked posts were modded "Funny". Who knows if they were from _ACTUAL_ windows source code. And yet, the parent post is modded INSIGHTFUL! Shouldn't it be modded funny, too? Or maybe "interesting"?
Just a thought. */
Yes, this is an inside joke, you had to have been there, etc, etc. But it was well-known for what is probably a dwindling number of /. readers.
Anyone?
For all humankind.
I work for a company developing Web applications.
A few sections of code I've happened upon (usually written by someone who no longer works for our company) contain some interesting, inappropriate comments.
"Do not touch this code. I am [name] and I am infallible. Everything in this section has been tested, and you don't need to modify it."
"BASTARDS! We don't have the id at this level?"
"This is CRAP! You expect me to react well to this? Assuming minimal functionality from calling code..."
"Comment: this is not my code. I am not stupid."
After reading some of the comments, I've come to realize that many people apparently use vulgar language and/or ridiculous comments in there code. Am I in the minority when it comes to not doing this? I really don't see the point actually. I don't like to comment anymore than the next guy, but when I do, it's usually there to help me out in the future (even if that's just tomorrow when I come back in to work). I would feel like an idiot reading my own code if it were riddled with comments like 'this fucking sucks!', or 'the front desk girl is so hot and has big tits!'.
They really need to open up their internal support knowledge base..
I've had a peak at it through a friend that did support for them.. and the thing is a support officers wet dream.. answers to every MS question you might ever have..
hell It even told me how to change a dynamic disk with data on it in one quick config change without any hitch.. utterly impressive.
"Consider how lucky you are that life has been good to you so far. Alternatively, if life hasn't been good to you so far
My favorite from the Quake III source // what the fuck?
i = 0x5f3759df - ( i >> 1 );
Read my blog: HansMast.com
I first saw this as an email when Windows '95 shipped, and it appears it was rehashed for the Windows '98 lauch too. Thanks to the lameness filter I can't post it directly so here is a link.
UNIX? They're not even circumcised! Savages!
If you have FreeBSD, try this:-
/usr/src/games/fortune/datfiles/limerick*
grep -r fuck
(Not Safe For Work)
READY.
PRINT ""+-0
/* This code runs Internet Explorer. It is not needed for the OS to run properly */
Sorry if that one's been said already.
"When the atomic bomb goes off there's devastation...but when the atomic bong goes off there's celebraaaaation!"
Look at the Network Setup Wizard. Family Room or Monica.
"restructuring" and "openness" from inside M$? .com's
Could we see a deterioration into fifteen constituent
The above link is to a child pornography page, as neither of the other replies made that explicit.
The *one* time in my life that I developed something in VS6 I stumbled upon a comment something like: //This function assumes (optimistically) that...
I can't remember what it was, or what the function was, but the jist of it was "this function assumes you don't want to do what you want to and your shit will bomb hard if you really do".
http://www.google.com/search?safe=on&q=Office+97+e aster+eggs
Since that is probably where MicroSoft has gotten all of its feature-adds since Win95...
Internet Connection Sharing in Win98? How much you wanna bet it's all stolen ipchains code?
Just ONE example...
You do realize that whether you are AC or not, posting to the page still removes the moderation?
They use comments? Thats better than some developers I know...
The header to one of the DAO files in the Windows source tree said this when I read it (when I worked there). It said (paraphrasing): "Let me tell you a little story about a programmer named Joe. One time Joe tried to read and understand this code. (Bunch of stuff about how ugly the code was.) We don't hear much from Joe anymore. Last I heard, Joe was sorting mail at the post office."
"this chunck of code sucks, BSD does it much better"
Try this
no wonder they get nothing done! ms probably codes more comments than code...
_
Free 27" Sony WEGA TV
/* Boy, wouldn't Linus be pissed if he found out how much code we coppied from the linux kernel */
Shoes for Industry. Shoes for the Dead.
Just check the SDK. I found this function in a Datalogic DS8500 handheld SDK. The HH has a touch screen via the use of a stylus.
bool PenIsTouching( void );
Crazy Italians!
10 rem this will screw those linux a***oles 20 print "copyright Microsoft 1982-2004" 30 goto 12000 40 rem stolen mac parts 50 for x= 1 to 100000 next 1 60 pause 1000 . . . 1200 goto 40
Of course Gosling later pissed off many people by taking the free community contributions and selling the whole thing off to Unipress (who then sued the FSF claiming they stole their display code). Ah, the salad days before the GPL!
An imperfect plan executed violently is far superior to a perfect plan. -- George Patton
phpBB didn't shut down. The site was just compromised due to a hole in awstats. I'll take your post as a troll then.
The reality is that Microsoft runs a business. If you could compile your own OS and Office suite from source, you wouldn't have to buy it unless you care about licenses.
It's also hard (impossible) to support what may be many different forks and patches to the same code.
Sure some people may make modifications, but you ultimately want one product as a commercial business looking to make money. Easy to support, easy to maintain, and easy to profit from.
OSS works in the UNIX world because people have a common goal and most OSS software isn't out to make money directly.
-M
when you see the word 'Linux', drink!
see, there ya go - a blind believer in the slashdot FUD. Learn to get your news from *multiple* sources pal.
Seems Netscape had the same attitude before releasing the future Mozilla code in 1998: http://www.jwz.org/doc/censorzilla.html
Unless you can post from another IP address, then the moderation point still holds.
Most of the comments here are about what funny things are said in the source code. I think a more interesting piece from the article is "These issues include intellectual property rights". This to me states that either they have licenced parts of the Windows Forms code from third parties, or (for those of you with tin foil hats, put them on now) they have "borrowed" parts of the code from third parties and do not want them to find out about it. Hmmm.
it is only after a long journey that you know the strength of the horse.
Comments like that read by the wrong people end up with expensive legal action - paticularly if the product really is crap.
Yes, across several platforms and programs. I believe only 3 target XP sp2 itself.
language like php, perl or asp, dipshit.
Unless you flush your cookies and post from a completely different Class C subnet, the moderation will still be dropped.
Two projects I worked on had to deal with 'inappropriate comments':
The first was when a reference to Black Sabbath (a music band) was in some comments. Normally, source is not given to customers, but in this case, it was a shell script, so it did go to customers.
Those who asked for that change were from the useability group. The guy who had to fix it was the archtypical anti-social nerd, but had a strange sense of humor. He entered an issue in the bug/change tracking system saying something like 'change Black Sabbath comment as per customer request'. The irony is, source had the CVS $Log$ tag, which caused all the fix comments of CVS to be in the source [no matter that I thought it was a bad idea, and that 'cvs log ....' would get you the same info, a manager said "this is the standard here"], so the issue description got into the log comments, and Black Sabbath was there again! Ha!
In another case, we had a product that relied on an open source but commerical product. That product was developed by nerds who used programmers' humor all over the help pages, ...etc. The customer was upset by the use of 'conversational English' in the documentation. We had to get someone from the technical writing team to rewrite those pages! Nevermind that the product was geared towards sysadmins and techies! Sigh.
2bits.com, Inc: Drupal, WordPress, and LAMP performance tuning.
The truth is the MSFT is held to a crazy level of scrutiny. /. would say "There is no test case Microsoft code not tested.". BS!
For example, China does not approve of the term Taiwan, so even though many Microsoft programmers are from Taiwan, they can't use the word in source code. So, to Microsoft, the word Taiwan is not publically appropiate. Lets say you want to say "to a non-us address, use this format __111 Zou rd., Taiwan__.", that is unacceptable.
Also saying things like,
"This is from Milestone 2, changed the code, but test case not current. Will be current in M3?". To Microsoft this is not acceptable. Think what
I wonder what kind of things developers put in comments that would be so bad for the rest of us to see?"
From the article: See, in order for us to ship the code we need to "scrub" the comments and make sure there is nothing bad in there. No swear words, no bad jokes on the part of developers, no references to specfiic customers, no geo-political faux pas.
like accidentally copy and paste very personal,very inappropriate email messages into my comments!
:-D
Ctrl-V is my worst enemy!
Coderz 4 Life
would get fucking fired for saying fucking in the source?
I also defend my threat to break all his toes 200 or so lines later (so he can't possibly code with his feet).
Now I've gone and given myself a headache. Must find beer, stop thinking about that crap, though I know for a fact it still runs. Beer.
John McAfee 'It was like that time I hired that Bangkok prostitute; to do my taxes, while I fucked my accountant'
/* Copyright © 2000 The SCO Group, Inc. All rights reserved. */
Thanks to Kuro5hin.org.
Real programmers can write assembly code in any language. -- Larry Wall
I recall seeing in the early Unix kernel a comment on a particularly hairy piece of code:
/* You are not meant to understand this */
Also, several comments to the effect that a particular piece of code was a kludge.
[Insert pithy quote here]
"Yeah, sure they do. And child porn. Mostly the child porn, though" sounds pretty damn expicit to me.
Maybe you just wanted to get your jollies by visiting a child pornography website?
http://wesnerm.blogs.com/net_undocumented/2005/02
/* Better make the next line strncpy next release */
Why? Because if they did, Cthulu would drop down from the sky and eat Bill Gates for Cthulu keeps his secret codewords which summon hot women in all Microsoft source. That's why the programmers at Microsoft write buggy code - they're constantly getting distracted by the comments suddenly popping out of nowhere in their code containing the secret words.
!seineew era sreenigne epacsteN
www.timcoleman.com is a total waste of your time. Never go there.
/* This was taken from VMS. */
/* ...and this. */
/* ...and this. */
/* ...and this. */
Probably done a billion times by now, but hey.
"Netscape engineers are weenies"
Yes, you took a large step forward that day, "ip_freely" :p
It's 10 PM. Do you know if you're un-American?
Jamie Zawinski has a list of rude words which had to be removed from the Netscape client code before it could be open-sourced. Microsoft's probably looks a bit like this.
http://www.jwz.org/doc/censorzilla.html
I do not represent myself.
Check out these gems found in the linux source tree..
/* XXX No fucking way dude... */ /* ARGH! Fucking brain damage. You don't want to know. */ /* XXX Fucking Cypress... */ /* fuck me plenty */ /* Binary compatibility is good American knowhow fuckin' up. */ /* Why the fuck did they have to change this? */ /* Fucking losing PROM has more mappings in the TLB, but /* task can fuck it up GTL */ /* This card is _fucking_ hot... */ /* Be careful, we could really get fucked during synchronous /* If you fuck with this, update ret_from_syscall code too. */ \ /* Ugly, ugly fucker. */ :-) /* James M doesn't say fuck enough. */
arch/i386/kernel/mtrr.c:/* Some BIOS's are fucked and don't set all MTRRs the same! */
arch/mips/kernel/irixelf.c:#if 0
arch/mips/kernel/irixioctl.c: * irixioctl.c: A fucking mess...
arch/mips/sgi-ip22/ip22-setup.c: * fucking with the memory controller because it needs to know the
arch/parisc/kernel/signal.c:
arch/sparc/kernel/head.S:
arch/sparc/kernel/process.c:
arch/sparc/kernel/ptrace.c:/* Fuck me gently with a chainsaw... */
arch/sparc/kernel/sunos_ioctl.c:
arch/sparc64/kernel/traps.c:
arch/sparc64/mm/init.c:
arch/x86_64/kernel/mtrr.c:/* Some BIOS's are fucked and don't set all MTRRs the same! */
Documentation/DocBook/kernel-locking.tmpl: If you don't see why, please stay the fuck away from my code.
Documentation/DocBook/kernel-locking.tmpl: <title>The Fucked Up Sparc</title>
drivers/cdrom/sbpcd.c: blkdev_dequeue_request(req);
drivers/char/drm/drmP.h:extern int DRM(release_fuck)(struct inode *inode, struct file *filp);
drivers/ide/pci/cmd640.c: * These chips are basically fucked by design, and getting this driver
drivers/net/macsonic.c: fuck did SONIC_BUS_SCALE come from, and what was it supposed
drivers/net/sunhme.c:/* Only Sun can take such nice parts and fuck up the programming interface
drivers/net/sunhme.c:
drivers/scsi/NCR53C9x.c: * how bad the target and/or ESP fucks things up.
drivers/scsi/NCR53C9x.c:
drivers/scsi/esp.c: * how bad the target and/or ESP fucks things up.
drivers/scsi/esp.c: * phase things. We don't want to fuck directly with
drivers/scsi/qlogicpti.h:/* Am I fucking pedantic or what? */
drivers/sound/aci.c:/* The four ACI command types are fucked up. [-:
fs/jffs/intrep.c: don't fuck up. This is why we have
include/asm-parisc/spinlock.h: * writers) in interrupt handlers someone fucked up and we'd dead-lock
include/asm-sparc64/system.h:
include/linux/netfilter_ipv4/ipt_limit.h:
lib/vsprintf.c: * Wirzenius wrote this portably, Torvalds fucked it up
net/core/netfilter.c:
net/ipv4/netfilter/ip_conntrack_core.c:/* This is fucking braindead. There is NO WAY of doing this without
net/ipv4/netfilter/ip_nat_snmp_basic.c: * (And this is the fucking 'basic' method).
net/ipv4/netfilter/ipt_limit.c: * Alexey is a fucking genius?
[alk]
In the rush to profit, MS probably didn't comment much of their code, which is why they can't fix it, which is why there are so many viruses.
I worked at MS for a while as a developer on a well known application product. The code had these characteristics:
/* this looks suspicious */
1. Lots of use of the pre-processor. There were pre-processor switches for changing the code base from Win32 to Win16 to NT to Mac. Some of the preprocessor stuff they had in there was redundant. For example, multiple symbols that "mean" WIN16.
2. Comments were placed in there from past successful and also *failed* attempts to track down bugs. Lots of comments refering to bug numbers in RAID (their real crappy internal bug tracking tool.) Lots of comments that said things like:
(an actual comment).
3. Very obvious that many, many people had worked on the codebase and that no one was doing any refactor on it.
I bet there are code comments inside CreateWindow saying feature X was added to assist Word/Excel/Powerpoint.
I was on the way to a job interview and remembered that they had requested a code sample. I remembered the nifty job I'd done on a DDE interface to netscape (it was small, clean code, and took quite a bit of research and teeth gnashing to get right). I located the source file, printed and printed it out.
/* This is fucking bizzare, blah blah */.
During the interview the hiring manager started going over the code with me and having me explain what it did, how it did it, etc. And then he got down to the
I felt pretty sunk. Ended up getting the job, though.
/* silly thing is, we don't even use this */
Why did'nt you ask him that much earlier?
Did you make it clear what your prioritys were?
Give him resources?
I may sound defensive, but the fact is I've been in a similar situation to your development manager. It's amazing how many suits don't understand. Code review takes time, unreviewed code leaves coding as a private act (not legally, but in the mind of the coder), this leads to just about all the bad things that happen. In some cultures coding becomes a private shamefull act. Managers can and should read change logs (not constantly). It is EASY to see who is commenting. The reason many managers don't is they did'nt spend enough time coding to have decent coding habits themselves.
Resetting from rant...My point such as it is: The development manager was in a no win situation by the time someone who knew what they were doing was coming for a code review. He may have been put into that situation, he may have put himself there.
John McAfee 'It was like that time I hired that Bangkok prostitute; to do my taxes, while I fucked my accountant'
You are not expected to understand this.
echo 33676832766569823265328479713269.8639857989Pq | dc
/* Could this be sped up with an insertion sort */
/* Why does this sometimes fail? */
/* FIXME: possible buffer overrun 7-21-1999 */
/* This'll teach 'em */
/* netscape tweak */
/* i m teh kulest haxxoer lolz ^-^ */
/* switch to fifo disk scheduler */
#ifndef ADVANCED_SERVER
http://shit.slashdot.org/article.pl?sid=05/02/10/0 05206
I _do_ recall when a particular demo for a big client was going well, I was actually calming down (big mistake), etc. A weird path through the code was taken and what do I see?
***Eat my flaming cock, you hairy scrap of shit clinging to the ass of a decent developer, You should never have hit this exception. Please eat the stack trace, curl up, have massive convusions, and beg me for your life. Bring.a bottle of good scotch. -grs#***
Printed in big, red letters on the app. (We have custom error handling, if that wasn't clear.) Note, this is in front of the investors who were financing the company I was working for.
Learning how to sell that to an SVP and MajorCorp client is only the sort of thing you can learn on your feet. I never want to do it again, but it did, um, learn me real good. And I'm not sure what I did, or why they believed me.
-Coward, guess why.
#Initials changed to protect the guilty. Not like it matters too much now, but the fuckup, the boss and me all read this. Live and learn.
/* this disables internet explorer's integration into kernel - remove this code before shipping - used only for debugging */ /* This si were Jack's code goes when he gets back from MacWorld */ // #define Microsoft Apple // uncomment the above line before final build
// used for crash proofing // Crashes 1 out of 2 times - needs fixing 23-4-97 /* The below is property of GNU/GPL - remove all code from this point on if we ever release our source */
#include "clippy.h"
You should see my source code sometime. It looks like an episode of South Park.
I'm sure they have a lot of inappropriate comments in their code, but that's not the real reason why they won't open their code up.
That sounds like the lamest scapegoat...ever. Hell, I might start using "The dog ate my thesis paper" in a few months, and when the teacher glares at me, I'll just say "Well, Microsoft has naughty comments in their code...comeon, gimme a break!"
And I don't even HAVE a dog!
Just being funny. But I'm sure that inappropriate comments isn't the true reason.
/*All your base are belong to us!!!r*/
Maybe they inserted some sort of ascii pr0n into the header of the source.
From DEC-10 COMPIL:
; COBOL- what a loser!
You know no hell until you use the goatse site as a test url in development and forget to take it out when the code goes live, and a user and then your boss find out before you do.
Ah, well I guess that is ok then. "Windows Update didn't shut down, it was merely compromised due to a hole in (random shit). Everything is cool". Sorry, it doesnt work like that in the *REAL* world.
These all from 2.6:
/* XXX Fucking Cypress... */
/* Binary compatibility is good American knowhow fuckin' up. */
/* Fucking losing PROM has more mappings in the TLB, but
/* Why the fuck did they have to change this? */
arch/sparc/kernel/ptrace.c:/* Fuck me gently with a chainsaw... */
arch/sparc/kernel/head.S:
arch/sparc/kernel/sunos_ioctl.c:
arch/sparc64/mm/init.c:
arch/sparc64/kernel/traps.c:
Even better is this from 2.4:
arch/sparc/mm/srmmu.c: Are you now convinced that the Swift is one of the
biggest VLSI abortions of all time? Bravo Fujitsu!
Fujitsu, the !#?!%$'d up processor people. I bet if
you examined the microcode of the Swift you'd find
XXX's all over the place.
dragonhawk@iname.microsoft.com
I do not like Microsoft. Remove them from my email address.
/* I hope nobody finds those Tiger Beat photos... */
Warning: Could be fatal if taken seriously
dragonhawk@iname.microsoft.com
I do not like Microsoft. Remove them from my email address.
/* Set this flag to zero to disable Internet Explorer */
const int INCLUDE_IE = 1;
Hear recorded Slashdot headlines on your phone! New service beta testing. Just call (248) 434-5508
/* Bwahahahahaha! Blue is my favorite color! */
Seriously though, I tried to repair an old Win98 setup from local files (like how laptops keep a copy of the Win98 CDROM in a C:\Windows subdirectory), except the setup.exe file was corrupted. This was in a DOS shell, mind. I got several screenfuls of ASCII junk and then the following phrase repeated three times, mixed in more junk symbols:
"was influential during the German expressionist era. He taught at the Bauhaus during"
Weirdest error I have ever seen, bar none.
Punctanym: alternate spelling of words using punctuation or numerals in place of some or all of its letters; see 'leet'
From that guys blog:
/* I stole this code from IBM via Linux... Apparently we have to change it before releasing it because SCO claims it is theirs (at least according to groklaw */
yea, learned that the "hard way"...heh its ok tho. someone else modded it troll.
Grump
Is it true that more people vote for the winner of American Idol, than vote for the president? -Ali G.
Maybe MS adopted and is proclaiming the famous Nazi quote: "What luck for rulers that men do not think." -Adolf Hitler
Last week FxCop (our internal source verifier) filed a bug against our team for an inappropriate comment. There is a list of inappropriate words and we had one in a comment.
We had code to clean up a collection when it was done being used. The comment: I guess that could be taken a wrong way.
This happened back in the days of ANSI terminals, during development of a large FORTRAN program.
I once wrote a particularly obscure section of code, and put a bland "Not for the faint of heart" comment above it.
A Co-worker (thanks, Jerry!) checked out the file and changed the comment to use ANSI escape sequences. It was double-height bold blinking "KLUDGE ALERT".
I remember him lamenting that printers didn't understand ANSI codes. I remember answering that he'd have to use blinking ink.
The F-Word in released code for major games.
It's found in Quake 2, Quake 3 and others.
I put up to half a meg of plain text files into the database for searching purposes. It's not difficult to find. You could use TextPad to search an entire code tree to clean up the comments prior to releasing it if you don't already have a repository with search capabilities.
It would also be a pretty trivial task to write a script to pull out all the comments and locations to make it easy to review and clean.
Employees would then just need to know that comments are subject to company communications policy. If you aren't allowed to use curse words in an e-mail then you shoudn't be allowed to do it in code. It's not professional.
Work Safe Porn
In a Visual Basic program, a developer at the end of his wits trying to cope with a lousy language wrote:
"This makes me want to scream. Not one of those girly screams, though."
Stuff like "Access is stupid." followed by a brief explanation of something it does that's completely broken and how that's why the bizarre thing I'm about to do in my code was necessary.
"A great democracy must be progressive or it will soon cease to be a great democracy." --Theodore Roosevelt
The port of Doom for the Atari Jaguar was done largely by an automated tool which turned the C code into risc assembly, thus removing all meaningful lables, variable names, and comments from the source. It was then patched to get round the bugs in the processors, and thus contains no comments at all except for one, which apears often, of "FUCKING DSP!!!"
No, really.
Source code comments consist of /*line added to interfer with Alternate browser*/ /*Scrabled DRM key added to saved file to prevent competing Office suites to open performed here*/ /*Winamp Sucks so we will design WMA and hope noone can use it in Competing Media players because those idiots cant reverse engineer this sequence*/
http://www.kuro5hin.org/story/2004/2/15/71552/7795
There was a section with a bug commented out.
The section was then appended with a further comment that read:
"The person that wrote this bug is a waste of budget and a waste of my time."
The funny part is that I discovered this rude comment while fixing a bug in his new "fixed" code that still didn't work right. The culprit was long gone by that time.
...this is more than just a simple troll.
Page contains a Java trojan. My AV reported:
"Trojan horse TR/ClassLder.c.Java"
"Trojan horse TR/Forten.Java.2.B"
For large sets, this will be our guide even unto death, for the LORD will work for each type of data it is applied to...
...the following little gem from http://www.k10k.net/scripts/k10k.js
// NS6 HAS DECENT SUPPORT FOR THIS
// WHEREAS THE IE SUPPORT SUCKS ASSCOCK
(code snipped)
I doubt that anyone would place comments in code that basically boil down to "I hate my job and my employer." At the next code review, or the next time a bored coleague looks into your code, it's just begging to be used against you.
/. screaming and waving it around as definitive proof MS can only write bad code.
If comments about the company or other co-workers are present, they'll more likely be a lot milder and kept to something you can sorta justify as just documenting code behaviour. E.g., "this is a work-around for Bug X in Function Y of the MSFC".
On the other hand, there is plenty of room for utterly inapropriate comments about other companies and products. Think along the lines of "unlike the utter crap we took from the BSD monkeys, this one is 40 times faster and uses 10 times less memory." Or "this is here only because the monkeys from are too stupid to do their own buffer checking before calling my function."
Excessive hubris is pretty much part of the job description for nerds. Remember kids, everyone else sucks and is an idiot luser. Only you can possibly know anything at all about computers. And only the skills you have (e.g., pushing the power button or typing "emerge kde") are l33t and cool, the rest is idiot luser stuff.
But my guess is more like MS is just playing defensively. There are a lot of people and has-been companies that are out for MS's blood. Comments that noone minds in the Linux kernel, if found in MS code would get those people screaming for blood and gathering a proper medieval crowd with pitchforks and torches.
I mean, look around. Even a comment as benign as "this is a work-around for bug X in function Y" would get half the MS-bashers on
Doubly so for those who:
A) never wrote any productive code in their entire life, but think they're uber-l33t because they can run someone else's scripts (e.g., "emerge kde"), or
B) wrote a 20 line program in BASIC once, or a 20 line BASH script, so they think they're qualified to pass judgment about 1,000,000 line projects or about whole languages
(No offense intended to good programmers in either VB or various shell scripts. But there is a _massive_ and _fundamental_ difference between a 100 line program and a 100,000 line program. Stuff that works in the former, like, "bah, I wrote it just as well without all this fancy encapsulation and bogus design", might just cause the latter to never be finished or anywhere near working.)
A polar bear is a cartesian bear after a coordinate transform.
Working with SGI on a video streaming app, we got a good four pages of C with just one comment at the bottom:
// This code was hard to write so it should be harder to read
Thx guys...
shit=paska,cunt=vittu(used same way as fuck in english),ass=perse,damn~perhana and some that don't have very good counterparts in english: perkele~"devil",saatana~also "devil",jumalauta~"god help me" or something
are you ready for it??? well here it is: //
"Friend" access is default in java if you don't explicitly set a access specifier:
void foo() {
/* This method can only be accessed from this
* class and classes in the same package.
*/
}
A bit less restrictive is the protected keyword:
protected void foo() {
/* This method can only be accessed from this
* class, from classes in the same package
* and by subclasses of this class.
*/
}
More information on the subject can be found here.
I'm trying to improve my English. Please correct me on any spelling/grammar errors in this post.
... Bill wrote this part himself." ... followed by a heap of convoluted Basic code:
....
100 if browser$ = 'Netscape' then call SlowDown
200 if OS$ = 'DRDOS' then SendMsg IncompatibleOS$
300 if
I am anarch of all I survey.
//I can't believe this made it in ME
//Same with this
//I have no idea what this is, but someone is standing behind me barking at me to include it.
*code*
*more code*
/* this shouldn't happen */
/* step back two yards and punt */
oh yeh ?
and the mysterious
In his weblog, Shawn Burke mentions "And with well over half a million lines of code, there is just no way we'll be able to get this done."
Surely they could make a comment viewing/editing tool within a couple of hours that displays all comments & allows you to delete or edit them individually before putting them all back into the code? Then it's just a matter of getting a college student who wants some extra cash to sit for a couple of days going through them all.
"Last year, with the release of community technology previews, we took a huge step forward in transparency, and that was only the first step," Somasegar said. "Every build that comes out of the main build lab, I want to be able share with you. Every spec or specific document that I like, I want to be able to share with you. Every feature decision that I make, I want to be able to get your input and involve you in the process."
All those moments will be lost in time, like tears in rain.
Wasn't sure if that was a troll or if you were trying to be funny -- but thought I'd reply anyway.
No, not all "web pages" are built using compiled languages.
Some examples of compiled languages/platforms are ASP.NET, JSP and ColdFusion.
Classic ASP, PHP and Perl are examples of interpreted languages that are not compiled into binaries.
...more often than not, it goes like this:
I'm fixing code snippet A.
I think I'll need to call a function B, and create the function and a dummy "TODO: Make this work" so it'll show up if I search for TODOs.
Tnen I go back on working on A, only to end up structuring it in such a way, I don't actually call function B. Or that function B would never be called, eg. if (x) do foo & return, if (!x) doo bar &return, and on the bottom line is a function call to B that can never be called.
Kjella
Live today, because you never know what tomorrow brings
Obviously not enuff UKian developers.
Okay, you all really need to go read that page. Where the hell did that link from, anyway? I've been reading jwz.org for a while now -- hell, I've written at least three programs to decode that thing on his front page (successfully, btw, they just kept getting smaller) -- and never come across that.
Does anybody have any links to example Microsoft code? I'd like to see the dreaded Hungarian notation thing up close (or did they move on?).
/* I have no idea what the hell this is supposed to do */
Cress, cress, lovely lovely cress
This is what happens when management insists on you to comment the code. Or CVS commits. Or whatever.
;)
---
I, personally, prefer to add a long, 2-3 thousand char discussions with myself about works of machiavelli when commiting major changes to application. So far nobody has objected to that and management sees that I AM commenting them
I would say that you are a rarity and will probably never be unemployed.
VC++ as environment, not language.
I agree thats the way its supposed to be. But, with the way the tool works and the extensions to the language, it becomes a defacto language. Talk to some VC++ folks and see how many can write a small cross platform ANSI C++ program.
I'm not trying to bash the dev environment. Its actually one of the better ones out there. The problem is because it helps so much, many devs forget the basics.
Much how VB isn't evil but, the VB dev environment encourages so many bad practices that it becomes that way.
----- If communism is a system where the government owns business, what do you call a system where business owns govern
I wasn't trying to be either. It really happened.
If you care, the server was Roxen, which uses a page markup similar to Cold Fusion however, the pages are interpreted vs compiled.
With a compiled page the issue would never have happened. With an interpreted page and a lax parser almost anything can get through.
----- If communism is a system where the government owns business, what do you call a system where business owns govern
Sometimes it isn't the bad comments that scare people, but the good ones.
For instance, suppose you had two pieces of code that both did the wrong thing, but fortuitously cancelled each other out (yes, this can happen, I've seen it - the simplest way is for one piece of code to forget to restore some state, but for it to work out OK because the code responsible for clearing that state in the first place doesn't actually do so).
Suppose one of them is easy to fix, but the other one's a bitch that you don't have time to deal with right now (Continuing the example - clearing the state is easy. Restoring it again when you need it is likely to be much harder).
Leaving the situation as is means the code continues to work, but runs the risk of a maintainer spotting the easy bug and fixing it, without realising that doing so will cause a *worse* bug. So you put a comment in both places explaining the problem, and the fact that it should be fixed. Not ideal, perhaps, but better than the status quo (i.e. no comments highlighting the dependency)
However, commercial reality means that this 'wrong but working' code *isn't* going to get fixed any time soon, which means those comments may be around for a while. If the customer sees the source, though. . . well, do *you* want the job of trying to explain to an irate customer that sometimes two wrongs really do make a right?
42.
Actually, I would be happy to see strange, derogatory and politically questionable comments in MS code. No code is without those bits that the programmer doesn't like, and these should be clearly marked.
As the existance of a hackish comunity within the Redmond giant is their only chance of redemption, one would hope that they would be couched in a hackishly humerous tone.
As a side note, however, I can see no place for profanity in any communication.
If they are worried about comments, shouldnt they also be worried about variables and function names? I have seen many cases where variables are named nCrappyPants, DoSomeShit(), and KillMeNowIHaveNoWillToLive().
:)
Not that I support such naming methods... but If you are worried about comments, you should be worried about these things as well
This article investigating dubious comments appeared shortly after the Win2k source code was leaked.
It keeps life interesting. Granted, I remove comments (ALL) before ever allowing the public to see it, but commenting "inappropriately" keeps things spicy: ..code... ..code.. // What the F*** was I thinking here? Oh well, the Sh*t works. ...code... ...code... //Kinda reminds me of women, B****, but they work!
No, that's why they landed on the moon.
We got hold of the source code to an application which was written specifically for us. It read something like:
/* Left here for [Insert customer name here] and other dinosaurs */
off topic slightly, but i found it funny that if you fresh install windows 95, and run it's 'windows update' it launches IE, and says there are errors on the page.
/*
* Oops. The kernel tried to access some bad page. We'll have to
* terminate things with extreme prejudice.
*
* First we check if it was the bootup rw-test, though..
*/
In a Cobol program no less. The program was to calulate sentance length for inmates in a correctional system.
*** If YOURE DEAD YOUR DONE
*** CHECK FOR DEAD FIRST
I guess this fixed a bug where if and inmate died in custody they continued to have their sentance calculated each day.
The original comments are not mandatory. Grep the comments out, release the code and let the community put in new comments... assume we can decipher it. *smile*
What are they REALLY afraid of us seeing?
My Dyslexia is getting in the way!
Microsoft did release the source to MFC (Microsoft Foundation Classes). This was a great help when debugging because you could step right into the MFC code while debugging. It was a bit of a let down when you found a bug in MFC but at least you knew it wasn't your code. I do remember seeing quite a bit of funny comments as well. My favorite was
/* I don't know why this works - but it does so I am not TOUCHING it */
This scared me a little bit.
throw(...
int AFrogsArseIsWatertight = 1;
while ( AFrogsArseIsWatertight )
{
And did you exchange a walk on part in the war for a lead role in a cage? - Pink Floyd.
Once, in a high school science fair, I entered a programming project. The project was great. I made it all the way to regional. In regional, a project that I didn't think was as good as mine placed first, so I took second (and didn't move on to states as I recall, perhaps third?)
Anyway, I printed out my source code for the display. I hadn't done this before. On the drive home, I remembered that I had profanities as the names of a few of my variables.
"I wonder what kind of things developers put in comments that would be so bad for the rest of us to see?"
:-)
If you had done more coding, you would know.
"Stupid pointless [expletive deleted] for Marketing" or "This is dumb but the boss says Do It".
"I have no idea why this works, so don't touch it!"
"Kill 'em all, let God sort 'em out!!!" (on an instruction to skip over whitespace).
And some actual examples I'd be embarrassed to repeat.
I guess that when one spends all day writing bloodless prose for an unfeeling machine, commentary seems like the only emotional outlet one has. I've written a few comments which were, ah, amazingly vivid considering the humble nature of the operations they describe.
The company I work for used "disabled" (as in disability) in variable names. Locally, this term is not at all sensitive but is a big red button for the overly PC country where many of our customers are. Turns out that there's actually a law against it so we had to change every reference (and there's thousands) to this as we deliver full source.
I can only imagine how much worse this would be if programmers wrote code assuming source would never be published.
// Made a deal with Symantec, Leave Following Function Intact!
It's not like the word "fuck" doesn't show up all over the place in the linux kernel...
Running the command:
find . -exec grep "fuck" {} \; | wc -l
yeilds a result of 34.
Looking for the word "Fuck" yields 7...
Yes Francis, the world has gone crazy.
Back when Mozilla was first released, one part of the process was apparently to clean up the vulgar comments in the source code. Somebody distributed a handout at the Mozila Release Party with most of the deleted lines.
Bill Stewart
New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
I, quote "These issues include intellectual property rights and scrubbing the code of inappropriate comments". // // Bill Gates is GOD!!! and he tould us to, // BASH Penguins with Deamons at your XPence. //
Right, inappropriate code comments, sure...
Most likelly:
and intellectual property rights, ok...
Like what; (C)FOREVER Bill Gates
Personally, I say frag you Bad Blue and GNU it to BSD, if you get what I mean. The whole dotNET platform is open standards from W3C, and don't get me going on Visual Studio.
Just look a Billy G's history, Collage room-mates doing free/share/open software. B.G, hates the idea. Builds company to prevent free/share/open software. Becomes a Monopoly. Frags on compation, and clams open standard projects for there own.
Do I need to say more.
Comment removed based on user account deletion
i know its fun to have the old M$ jokes but what about internal politics?
/** Why does IE need to go here??? **/
/** WMP plugin doesnt and shouldnt be allowed to work here **/
the world (us) see Microsoft corp as one entity and we are told one story from them e.g. IE is good/stable (but thats another topic) but inside i bet you like anything there is varying views on this:
etc
maybe not the obvious ones like that but i think they are valid examples.
what would people say about MS as a whole if they saw the inside of it was divided and annoyed over things such as IE?
The classic Dragon book on Compiler design, describes one compiler. I can't quote it, but this is the gist of it.
...blah blah... Compilers are a huge software engineering project. ....blah blah... The authors have encountered one compiler that had only seven comments, one of which was "This code is cursed."
I'll see your senator, and I'll raise you two judges.
"if (instr(buf,sys_errlist[errno])) /* you don't see this */"
* In eval.c from the perl source code
"[T]he single essential element on which all discoveries will be dependent is human freedom." -- Barry Goldwater
Red Hat are a good example here, and the example holds even without the support and other services they offer.
Red Hat released RPM, anaconda, kudzu, and several other things...All of said things are available seperately (some via CVS) under the GPL. Problem is, they're not generally much use as standalone programs. If you're a confident enough programmer, have lots of time, and otherwise feel adventurous, you could eventually figure out how to integrate them into your own system. (I believe White Box Linux is a Red Hat like-setup that's tweaked somewhat)
Most of us however, don't have the time. Corporate users especially want to be able to use great features, but also generally want them yesterday. Red Hat's distribution/s mean that said users can buy a CD with all of the company's unique elements tied neatly together, and be up and running in 30-40 minutes. Yes, that's something Microsoft and the other closed-source vendors are able to do...but that is the point. Red Hat understands that the corporate mind is conservative...and so the only way to get corporations to buy open source is if it also includes a closed source like experience...in terms of support contracts and so on.
In other words, yes, you can make money from open source...you just have to be sufficiently creative about it.
"You learn software engineering by not writing 100,000 line programs."
is at most another fine example of hubris. If you never wrote programs that had to go over 100,000 lines of code, mighty fine for you, but that's hardly something you can make into a rule.
Some programs never have to be that large, true. E.g., most web applications. On the other hand, other stuff _has_ to grow 10 times larger by sheer scope of the problem to be solved.
E.g. if you think you can write something like MS Office or OOo in 10,000 lines of code, you've got to be kidding.
E.g., even as intranet programs go, not all the world means basically a simple bulletin board. One Swing application we coded had to cover basically the whole range of database stuff the company employees had to do.
Including a _ton_ of forms: each frame was a tab pane with at _least_ five different forms. No, not a wizard with 5 simple pages, but actually 5 full forms, a lot of them with tables and filters in them. The data model objects alone accounted for a lot more more than 10,000 lines. Data validation adds more than that too. Add some data entry helpers too: for example finding the Zip code or region by city, or viceversa.
And including reports with templates they can edit themselves, previews, statistics (think: data mining) over that data, etc. And a completely customized look and feel, with bitmaps splatered across the tabs, and custom shapes for every control. (One of the company directors was an ex-graphics-artist. They like visual stuff.)
Now also add more internal stuff like custom caching of the database data. Heck one module even took apart basic SQL statements for the tables, and added the filters, the fetching only a certain row range, etc, and optimized the result for Oracle based on some rules and lots of experimenting. Because the users don't want to wait ad nauseam to scroll through 3 million records in a table.
Sure, you can split it all into modules, you can reuse code or libraries, etc. In fact, at that complexity level you _must_. All mighty fine practices, and all helpful, no doubt. But no ammount of engineering, and no language ever invented, will keep that under 100,000 lines.
A polar bear is a cartesian bear after a coordinate transform.
You had to be *Very graphic* in describing that now, didn't you? =)
I'm just a simple man who is trying to BS a BS. I don't believe in using euphemisms to soften the blow for those who are politically correct.
For instance, Dick is Bush's Cheney.
Is it true that more people vote for the winner of American Idol, than vote for the president? -Ali G.
A bit off topic, but this happened to me once.
I worked as tech support for a software company, and a customer called me saying "When I do this, this and this, I get a message saying `you shouldn't get here, if you do, call John at x 1234`".
So I said thanks, I'll log a bug report. I don't know why, but then I thought.. what the heck, and dialed the extension. The developers where on a different continent, but the phoen system would recognised the extension, and route to the proper building/country. The phone rang, and sure enough John answered. When I told him why I was calling, he went "Oh shit, I meant to fix that !".
void main() {
@@TODO: initSecurity()
startXP();
}
Ryosen
One man's "Troll, +1" is another man's "Insightful, +1".