last updated:14 Nov 2003 16:40 UK time
Joel On Software Discussion Forum
JOS Statistics - Recent Comments
(Comments added for week ending Sun 09 Nov 2003) | View Other Weeks
Reporting options for a web based software | Sun 09 Nov | anon
Hi all, I am developing a database driven web based application. It will be used in an ASP business model. I am looking for some examples to build the reporting options. Any suggestions, both design and technology wise? I need some online examples to get some idea. Any pointers? Thanks for the inputs.
Sun 09 Nov | Philo | What's your backend tech? Philo
What's ws2help.dll for? | Sun 09 Nov | Sathyaish Chakravarthy
While packaging my application, I discovered a few entries in the dependecy files list which rose my suspicion. Before, I pack them I ask, while I know ws2_32.dll is the Winsock 2.2 implemention, what is ws2help.dll for? Looks related but it also gives me nachi like feelers. Tell me it is not the MSBlast worm variant, please? I opened it with Dependency Walker and it seems to have a valid export table, but Ive not heard of the functions before WahEnumerateHandleContexts etc. I searched MSDN for one of the function names and got 0 search results.
Sun 09 Nov | Matthew | http://www.google.com.au/search?q=ws2help.dll+&ie=UTF-8&oe=UTF-8&hl=en&btnG=Google+Search&meta=
Sun 09 Nov | Big B | The DLL Help Database is good. http://support.microsoft.com/default.aspx?scid=/servicedesks/fileversion/dllinfo.asp
Sun 09 Nov | Sathyaish Chakravarthy | Thanks guys.
Where are all the new abstractions? | Sun 09 Nov | Druzzil Ro
Where are all the new abstractions?  This is whats going to keep this industry alive.  I guess it starts at the operating system level.  Hopefully with Longhorn comes many new (worthwhile) abstractions.
Sun 09 Nov | Nat Ersoz | Form over substance, abstraction for its own sake.  Add in a pastel UI and that's the face of Longhorn?  Delightful!
You can see the quality of my work in... | Sun 09 Nov | Artist
Quality of work is important to all of us. Lesser or Larger extent. When you are developer, you try to put what you have put years into your code. There is something that you have specially learned for that language or transferred the skill from another language etc.., No matter how fast your projects are you have enough time to put some quality display. It could be gui, algorithm, regex, interfaces, documentation, style, version control anything.. I am trying to stress, not the general mechanism of good source code, but the work that you have pour the quality in. It could be different for different level of people. Let it be project manager, system adminstrator, programmer, analyzer etc. The skills become important over the period. You might want to have other focus on particular aspects of your skill which may become important for review purpose etc .. Well, rambling means: Fill in the lines: You can the quality of my work in.....
Sun 09 Nov | Artist | Oops:: Read above: You can see the quality of my work in/at/...
Sun 09 Nov | realist | My hourly rate.
Sun 09 Nov | Jussi (www.zeusedit.com) | You can see the quality of my work in the final product: http://www.zeusedit.com/lookmain.png
On what basis does google let you display ads? | Sun 09 Nov | Prakash S
Check this website http://084.us/ Click on one of the listings to see the ads. this site does not seem to be doing much. Really interesting. What if a million of these websites come up, will googles way of selling ads still be popular?
Sun 09 Nov | anon | Why is it interesting? And I think there already are a million of those sites. They don't seem at all interesting or even useful to me... I'm obviously missing something that you are seeing.
Sun 09 Nov | mb | this looks like a linkfarm, which has their own banner ad + google's ad, thus hoping to up their rank so you hit their bogus site when looking for something useful. i wonder if google gives a little extra preference to sites which display google ads?
Sun 09 Nov | www.marktaw.com | According to Google's terms of service, you should be getting 2 million + hits a month in order to display their ads. I doubt this site itself gets that many hits, so maybe they display these ads as part of a family of sites.
Sun 09 Nov | tomislav | Mark, where are you getting the 2 million+ number? I see a lot of sites with AdSense that aren't getting that many hits. I also don't see that number in any of the AdSense FAQs or policies.
Is there a market for video games for Linux | Sun 09 Nov | Fairlight
Do you think Linuxer are willing to pay $15 for a high quality shareware game when they got their OSes for next to $0 and a lot of software is available for free (Open Source Stuffs)
Sun 09 Nov | Li-fan Chen | Some will, most want to just get it for free.
Sun 09 Nov | Li-fan Chen | IF you figure how to get more people to pay, due to a smart licensing (and enforcement) scheme, more will pay than they will admit if the game is great.
Sun 09 Nov | Eric Debois | Linux is kind of in a 'no chicken -no egg' place with regards to games. I bet alot of the gaming kids would love to be leet linux users, but since very few hot tiles are released for linux they stick with windows. All in all, it depends on the game. If its 'Fun For All Ages' linux might not be your platform of choice. An RTS game might do well though.
Sun 09 Nov | jm | The answer is in the market already and it is: 'No.' Game development requires a lot of expertise and open source dreamers just don't have it. This lack is much more obvious in games than, say, a word processor. There is stacks of source available for 3D games, and yet no best seller or really good or even vaguely good open source games. They're probably never will be either, because top developers, along with the necessary artists, are simply not stupid enough to go work for a wage for IBM, say. (That is, the difference between working for a company that likes to make games, and one where the salesmen make the money.)
Sun 09 Nov | jm | There probably never will be ....
Sun 09 Nov | fw | I would love to say there is a huge market, but there isn't a huge market. To be honest the biggest market seems to be porting exist games...e.g. halflife/counterstrike.
Sun 09 Nov | anon | If you are developing a game, you target Windows as your #1 platform, or possibly Playstation 2. IF and *only if* the game is a mega, and I do mean *mega* hit, then you think about the ROI for porting to Linux, Mac and Nintendo. You certainly don't go targetting anything other than playstation/windows for your primary release, assuming it's a cuting edge game and not yet another Solitare/mahjong/platform jumper.
Developing a Replacement for "X" For Linux? | Sun 09 Nov | Bored Bystander
This question is posed in reference to the thread on Kylix abandonment where X itself is castigated as a terrible system. I always get arguments from strident *nix zealots over this, but to me X always feels like a unrefined internal demo of a decent GUI that is months away from even an alpha test release. Theres always something about it that is broken, that doesnt feel right... the mouse is ALWAYS annoying in X. The mouse movement and acceleration in X is always just f*cked up. A Windows using going to X typically has the sort of sensation you would get if you tried to raise your arm and your foot jerks instead. Everythings wrong while pretending to be idiot happy faced right. Another point of confusion in X is the distinction between X itself and the window manager of choice. Theres TWM, theres KDE, and theres a zillion other choices. And also a major barrier to adoption is the hassle factor in mastering the scheme(s) used in the many X window managers for things like links. I have to this date NEVER figured out how to simply set up a frikkin shortcut in any X window manager. This is not exactly a rant about choice. Its a rant about useless proliferation of snivelly-faced useless assed geek ways of doing things that net the end user a tower of babel of terminology. And Im not a Unix noob. I am quite happy and comfortable with the Unix command line. I write shell scripts, etc. and Ive installed and debugged many servers to my Linux host such as mysql, qmail, etc. It seems to me (in my naive Windows centric worldview) that someone would have over the years developed a good, solid replacement for X that implements the X programming interface and refines the behavior of the desktop, keyboard and mouse to the level of Windows. One that replicates the relatively simple Windows desktop. I do realize that the Win32 API is implemented as a local programming interface and X is designed to be remoted. I have read that the technical barrier is the concept of a frame buffer in Windows that is unavailable with X. Somehow, this explanation hasnt clicked. So, what are the technical barriers to someone writing an X+desktop manager replacement that doesnt suck @ss? Or is this simply a matter of the will or comprehension of the problem not being there?
Sun 09 Nov | wormser | there are no technical barriers. for instance, every apple computer comes with an X + window manager replacement that runs on top of unix. http://research.microsoft.com/~daniel/uhh-download.html read chapter 7 for historical insight as to why X sucks the way it does.
Sun 09 Nov | Mike Swieton | I disagree with many of your points, but nothing of import, really. X has some significant downsides. As far as I can tell, it hasn't been replaced because no one can write something better without breaking twenty years of X application development. And as far as the plethora of interfaces goes, I think that's a plus. That's mostly me, because I happen to have a particularly obscure (yet efficient for me) setup here, and I want to keep it. Perhaps there should be a standard WM and DE. But one shouldn't make choice difficult. And in any case, you point out how bad things are. But did you use KDE 1.0? It was an improvement over many things out there, but in just a few years, it has come very far. I would even go as far as to say that KDE, from inception to current, has gone farther for its age than any other product. That's a bit extreme, I think, but in many cases, true. Things *are* improving. but they are keeping the X protocol because it's hard to replace and keep it compatible. And do you really expect backwards compatibility to be abandoned?
Sun 09 Nov | Jim Battin | X uses a framebuffer. One difference I'm aware of is that certain XFree86 functions don't use DMA to interface with the frame buffer (like it's font renderer for example), which causes it to feel so unresponsive. A lot of it has to do with what X server you're running. If most of your experience is with XFree86, I can understand why you'd feel that way. Commercial X servers are often much more fluid and responsive IME. Projects like Freedesktop and Xouvert are working towards fixing what's wrong with X and bringing it up to speed with reality.
Sun 09 Nov | Nat Ersoz | BoredB, X both sucketh, and yet it doesn't. I'm sick today, so you'll pardon me in that I've gt nothing better to do than troll the boards... :) Anyhoo, it is and it isn't X itself that you seem to hate so much. It is the 'desktop' that runs on top of X that you seem to despise. For that, I highly recommend giving the Ximian Gnome 2 desktop a try. (http://www.ximian.com/) http://www.ximian.com/products/desktop/ I used to loathe Gnome, for all the frustrating reasons you enumerate, and more. I used KDE for a long time - mostly because most everything was not broken the way Gnome 1.x was. However, the Gnome 2.x desktop is very polished and very intuitive. If you have time to screw around with it, I'd give it a try. FYI: the windows manager du jour is 'Metacity' - whatever that is. It gets my vote.
Sun 09 Nov | Albert D. Kallal | >>http://research.microsoft.com/~daniel/uhh-download.html >>read chapter 7 for historical insight as to why X sucks the way it does. Gee, huffing aside, there is some really good reading in that article. (the stuff about drawing a IC chip on the screen, and moving it around is brilliant). The problem it seems s not really x-windows, however, after reading the above reference, one does see much of the short-comings of x-widows. There is some brilliant insights in that chapter 7 reference, and it explains much why .net makes so much sense. I am talking about coming up with a system that allows a INTELLIGENT division between client and server and .net does this in a very good way. We are talking about com automation across the net here. What is lost n x-widows is a means to provide a very good mechanism to use the server side, and the client side processor in a proper way. We can easily argue that x-windows should not have to be part of this division process anyway!. We do have to distinguish between applications talking to each other, and a simple network pipe to send graphics down (which is what x-windows really is anyway!). Note that people love windows because the appcltions provide such a incredible user experience. They look great, and they perform very well indeed. Further, you might be trying to play a golf game, or move a new barbecue design around on the screen in your favorite CAD program. For this kind of stuff, you need local high speed processing, and a good graphics card! A rich high performance GUI is not going away soon! Anyway, the real problem here seems not x-windows, but what standard the developers are going to develop their GUI to? I mean, just what library will you use to display/show/ and manage the creation of tool bars? Its the lack of a standard API that really seems to be a large part of the problem here. From this standard follows the ability to cut and paste. It is useless to just cut and paste a bit map. You want to at least have some meta display standard that cut and paste can use, so that you can have proper application integration. I can cut and paste a Visio ER diagram into excel, and MUCH more then just a bitmap is pasted into Excel. The original Mac was cool because it had a mouse, but it was true computer revolution that you could cut and paste between applications. Having software work with each other is far more important then just a mouse or cute GUI. In addition, x-windows as mentioned in that article does not have a good ability to off load some of the GUI to the client when needed. Of course, the big problem with windows was its un-ability to utilize the server side. However, that has now been addressed with .net (mostly soap stuff/web services...but still a big leap for windows developers). What this means is that once again, any market advantage that a better x-windows design could have provided due to better connectivity has been long lost. Albert D. Kallal Edmonton, Alberta Canada kallal@msn.com http://www.attcanada.net/~kallal.msn
Sun 09 Nov | M | BB - I am with you on this. Every six months I'll take my system and load a fresh copy of WhizBang Linux with the latest ThisAndThat WM to see if they have arrived yet. Using a WM like KDE or Gnome makes me feel like I am playing a game of Jenga - it could all collapse at any point because of all the levels and complexity of how they stack. I have settled on Windows as my desktop system with an older FreeBSD system sitting under the desk. I can open up a CMD prompt in WinXP and telnet to the system - just like having a Terminal application in an X windows system. I consider it all the benefits of WinXP with the fun Unix toys when I need them (thank you Samba team!).
Sun 09 Nov | Mike | http://catalog.com/hopkins/unix-haters/ls-x-windows.html Has some thoughts from one of the Unix haters
Running multiple OS on one PC | Sun 09 Nov | Ram Dass
Hi: I have a situation where I am developing a piece of software (in Java) and my development environment is in Windows XP. The verification environment is in Linux/Unix. I was wondering how can I best set this type of environments on my humble Notebook - IBM R40, 256 mb, 1.3 G Intel Mobile. I was thinking of going the route of Installing VMware on my Win XP - and run Mandrake Linux on the virtual machine. I was thinking this would be a better way than partitioning my disk and having to turn on/off the Notebook to flip between the OSes. Also, I hear, that running Mandrake on the virtal machine I can also access the Internet etc. Does the above make sense? Thanks.
Sun 09 Nov | Stephen Jones | The problem with laptops and Linux are winmodems. There are drivers however so you could try. Do a google search for 'Linux on laptops'. Anyway, if that is your only worry a hardware modem would come in cheaper than the license for VM ware. Partition Magic would set you off some money though, although boxed Linux distros normally have decent partitioning tools It is up to you to decide. I would have thought it would be more reliable to test out code on a real tnan on a Virtual OS, but others know better.
Sun 09 Nov | Ram Dass | Thanks Stephen. I have not used VMware before - the idea of virtual machine appeals to me from the perspective I do not have to reboot the notebook to navigate between the OSes.
Sun 09 Nov | Li-fan Chen | IBM R40, 256 mb, 1.3 G Intel Mobile. You probably want to dual boot if you can batch up all your testing for the Linux platform at once. Because although you can comfortably run Linux in say a 64 or 128Mb memory configuration, it's quite painful to run anything large inside that in VM after Linux started. This year's RedHats eats up 128-256MB, and most java programs can easily eat up 16MB-76MB. Add a few other over-heads like memory and database instances and you got yourself a real problem. Your host os would also be hosted. If you do this professionally, consider upgrading to 512MB if possible, if 384MB is the max at least to the machine to that max. But 768 or 1024 is really the point you want to be at.
Sun 09 Nov | Li-fan Chen | Now I know there are plenty of people who can run OpenBSD, qmail, apache, mod_perl, perl, and a few security programs quite comfortably in a 64mb vm--that's after alot of optimization (and the few instances of perl serving mod_perl will make the virtual machine swap abit), java (and a workstation linux) is a bit more (okay -- a lot more) hungry--unless you clean up unnecessary services and go console (X eats up a bit).
Sun 09 Nov | Wayne | I run RH7.3 with KDE on my Vaio 1.3Ghz/512MB laptop with no problem. The VM gets 256MB of the RAM to use, but 128 would be OK too depending on the app size it's needed to test. I recommend to use a minimal theme on KDE at 800x600 resolution (Host OS is at 1024x768). Also, tweak Windows so you're running minimal services (no fast user switching/themes/real player/etc.). I also second the motion to upgrade RAM to whatever your laptop can handle. The winmodem shouldn't be a problem since the Guest OS can use the VMWare NAT service to get internet access thru the Host OS (thru a virtual NIC). One last note: A guy I used to work for always told me that it's better to test in a slower environment, because it will help you put more performance into your design. Although VMWare machines are not *that* much slower than the Host OS they run on, you can simulate it with less virtual memory.
Sun 09 Nov | Mike Swieton | As I recall, VMWare lets you do a lot of magic with virtual devices. The winmodem shouldn't be a problem, because VMWare ought to be able to just work like a ethernet bridge between the host and VM systems. But it's been a while since I mucked w/ vmware and my memory is always hazy.
Supporting Multiple OS for a one man band | Sun 09 Nov | Fairlight
Im planning to develop a 2D video game on a wide range of platforms : - PC - Pocket PC - Palm - Mac OS - Linux Do you think that supporting all of these for a one man band is possible. What Im afraid is even if I get my game working on all these platforms is of all the customer support I will have to provide : NewPocket PC is release : My game is not working on this new fabulous piece of harware ?!, why? I got this new joystick for my mac and its not supported by your game, why?! Basically I currently have a day time job and unless I get a lot of orders for my game Im not going to quit my day time job What do you guys recommend me ? Should I only focus on 3 platforms only ? less ? is more manageable ? Any advice or inputs from people who have got cross platform development and support experiences here ? Thanks in advance for your inputs!
Sun 09 Nov | sedwo | Don't bite off more then you can chew.
Sun 09 Nov | Almost Anonymous | Start with one platform and build for that. Try and design for cross-platform but you're not likely to get it entirely right. Move to the next likely platform and build for that; probably have to change some of your design. Then try the next platform and so on... Obviously try and look for some existing cross-platform gaming frameworks to see if they will fit with your project. Then a lot of the work is done for you.
Sun 09 Nov | Tom Vu | First write a game for a PC in somewhat portable style. If you actually finish then try to sell it. If it actually sells then offer a port if there is demand. Keep it simple.
Sun 09 Nov | Robert Jacobson | What's your target market? A game that's amazing for a handheld won't necessarily translate well to a PC game, or vice versa. I'd pick your strongest target platform and build for that.
Sun 09 Nov | Eric Debois | I dont know of any gaming platforms that support all of those platforms. SDL ( http://www.libsdl.org ) Has Linux, Windows and Mac OSX support. Start out by writing a prototype game for one platform, but make sure all platform specific functions are fully abstracted.
Sun 09 Nov | Fairlight | Eric : I had in mind the SDL Library, So there might be some re-coding to do on all the other unsupported platform. Another alternative would be to team up with some other developers and port SDL on other platforms, but that might be a hell of a job... but in the long run it's worth it
Sun 09 Nov | Li-fan Chen | If you take your company (and your customers) seriously you'd probably have a lab of test machines. Probably 7-24 machines to a major platform.
Sun 09 Nov | anon | I think the only way to make sure its portable without a huge rewrite is to target 2 systems from the beginning.
Sun 09 Nov | Fairlight | Li-fan Chen : I will take this company and the customers seriously but at this stage I cannot have such testing lab at home. As my software will be shareware, I'll highly recommend to my prospects (as they have not purchase the game yet) to try the evaluation version of the game to ensure that it work on their hardware. I was planning to fix bugs when they're reported by people who try the software before buying it. I'm assuming that if the trial version work fine on the target platform, the full version will do to (it's will be the same release, version, compile build) Unless I manage to stick a bug in the routine which check if the Serial No entered is correct ;-) Do you think that his approach is unprofessional ?
Sun 09 Nov | anon | > I was planning to fix bugs when they're reported by people who try the software before buying it. I feel uncomfortable with this plan. If you go this way, try a very small release initially before you do much marketing. When the interest for the program shows up, you want the program to be very stable, otherwise you'll either be overwhelmed with support requests, or destroyed by bad reviews.
Salary question | Sun 09 Nov | Ricochet
Can I do a little survey here? Guess a salary for me: B.S. and Masters in CS from Cornell University 1 1/2 years experience in C/C++ coding at a video game company some theoretical knowledge of audio/DSP that is relevant for the job I am considering living/working in San Francisco, CA
Sun 09 Nov | Prakash S | 65000 - 75000 - depending on how well you negotiated:-)
Sun 09 Nov | ktm | same guess as prakash.
Sun 09 Nov | Ricochet | Is this base salary + bonus or just base salary? Let's consider it with the 'average/expected bonus' since every company is different in this respect. Also the tricky thing is that my old company offered stock options while the new one does not. They happened to be VERY VERY lucrative this year. So I'm not sure how to figure that into the equation. Iit is likely that I would be taking a pay CUT if you figure in the stock options. Thank you for all your answers, I will post a summary at the end when I get some more responses. : )
Sun 09 Nov | Prakash S | I thought you said salary and not compensation! so my guess was annual salary (no bonus or stock options included)
Sun 09 Nov | anon | Is 1.5 yrs the sum total of paid programming experience you have? What other languages are you adept at?
Sun 09 Nov | Philo | Be thankful for anything but 'no hire because we can't afford you' (based on the MSCS) :) Philo
Sun 09 Nov | Ricochet | Yes, 1.5 years, and some internships that don't really count. The job is all C/C++, but I did Java some in school, had a couple internships doing Access DBs and VB, Matlab in one course, Assembly in another, Perl Python, etc. With my background, hopefully they are not looking at specific language skills, but rather general aptitude. Philo, what is overpriced? Name a figure? And this company is very 'high-tech'... been around for 40 years, and they have tons of Ph.D's there in the research division. They also have a coding branch, which is where I'm applying to.
Sun 09 Nov | Philo | Ricochet, sounds like you should be okay. Some companies won't even approach coders with advanced degrees, feeling they can't 'offer what they're worth' (note: they don't give you a chance to turn it down, they just put you in the 'no hire' stack). I have a friend with an MSCS who found he got far more responses to his resume when he took the MSCS off. Philo
Sun 09 Nov | wormser | $65-75K
Sun 09 Nov | anon | OK then I guess 65-75 is OK for average skills and in that geographical area. The high end seems a bit high for just over a year of experience, but it depends on the person. Depending on the actual person and what they can really do, the range could be $40-$90. So, someone who is helpless without a lot of handholding when told to create a new system from scratch, that's more like $40. If the person comes in with actual robust working apps they've written themselves that make use of DSP algorithms that they themselves have invented, then that starts at $90 for 2 yrs paid experience (+ an assumed many years unpaid) and rapidly advances with time. At 5 years, $120, for example. But those folks are rare.
Sun 09 Nov | Li-fan Chen | >Be thankful for anything but 'no hire because we can't afford you' (based on the MSCS) :) If you can survive 4 years on that rock, you'll probably be able to hack it at any fast pace best of breed IT company. If you came out with anything more than an unimpressionable grade you should be able to get into a tech firm in San Jose that pays enough for rent (65K+). Are there a lot of jobs in San Jose, for you there will be, but the job market isn't that great--but that's the same problem for anyone. Depends on what you want to do with your life, you might want to get an MBA.. or just start a company if you have enough work experience and you have friends and coworkers in the field who trust you enough and will work for you.
Visual Basic.NET books | Sun 09 Nov | Prakash S
One of my friends wants to start of with VB.net and was asking me for book recommendations. She has around 3 years of experience in Java. Before I made my recommendations I wanted some feedback. Deitels books - I feel this is a little too introductory Mike Gunderloys Certification Books - though these are certification books - the coverage of material is excellent. I remember hearing good things about Francesco Balena’s Programming Microsoft Visual Basic .NET - anyone has used this book or what would your recommendation be? Thanks.
Sun 09 Nov | Frederic Faure | http://discuss.fogcreek.com/dotnetquestions :-)
Sun 09 Nov | no name | http://www.learnvisualstudio.net
Object Oriented VS Structured Oriented Programming | Sun 09 Nov | Fairlight
When you start a project what criterias will define if you will use a classical (Structured Programing) approach to Sofware Development or Object Oriented.
Sun 09 Nov | Eric Debois | Well, I dont get to choose much these days, but Id say that data centric applications are better off in OO while process-centric or highly interactive programs (like games) are better done in a procedural/structured language.
Sun 09 Nov | Tayssir John Gabbour | Depends on the language. With some, I use oop when I want to define my own types. Others might push you to use it. The interface to many decent guis are oop. And some languages don't make it such a tradeoff with other styles. Personally: When I used pure java, everything seemed to be oop and stateless functions. With python, I keep using oop faster than I expect. (Because python uses oop to abstract both syntax and data. And it tends to want a single 'right' solution.) With lisp, I never needed it yet; I really get to defer the choice until much later, and I don't yet write large enough lisp programs that the chance of wanting oop is significant. In fact, today with my little database app, I just went down in data abstraction from structs to simple lists, because I have full syntax control that isn't affected by how I treat data. There's also oop's ability to restrict others' freedom to hurt you. http://mumble.net/jar/articles/oo.html It's easy to see that answers to this question are too often framed as objective, when it can really depend on what your coworkers need. Here's an Alan Perlis epigram: 'Functions delay binding; data structures induce binding. Moral: Structure data late in the programming process.' http://cs-www.cs.yale.edu/homes/perlis-alan/quotes.html
Sun 09 Nov | X. J. Scott | Gabbour, Those are interesting links and they bring to mind something I'd like to say: C++ has its uses, but C++ is not an object-oriented programming language. Anyone with me on this? This argument is separate from an argument as to whether OOL are useful or better or whatever. As examples of more object oriented programming languages, I'd give as examples: Java, because a executable object can exist in its own separate file that can be linked in at run time to other objects communicating with it and genuinely does not need to let others know about its internal representation... but it does need to let others know about what messages it accepts, which prevents it from being a full blown OOL. Objective C, because it does not need to let other objects know what messages it accepts. Pure Data, this is the only totally and completely object oriented programming language I know of. Programming in it FEELS like object oriented programming. ViewLogic -- an object oriented hardware description language. The way I see it, object oriented programs can be programmed by creating a visual schematic showing the interconnection of discrete, fully encapsulated objects. When the language supports this, it's object oriented.
Sun 09 Nov | Justin Johnson | C++ _can be_ an object oriented language. I'm no guru at it, but I don't see why code couldn't be generated from schematics. If it's OOP purity you're after, then you restrict yourself to the subset of C++ that is pure OOP. It can also be a procedural language, or an object-based language, or a generics language, or any mix of the above. That was Bjarne Stroustrup's point. [Sorry if that sounds pedantic, but I'm reading _The Design and Evolution of C++_ right now, and Bjarne is just so much more... level headed about programming than most I've read in books and on message boards.]
Sun 09 Nov | Mike Swieton | X. J.: Your position on C++ doesn't look too strong to me from here. You seem to be implying that C++ is not OO because it can be used in non-OO fashions. I also don't follow your logic on Java: Because of linker features it's more OO than C++? And you argue for Pure Data on feel? Maybe I'm missing part of the definition of OO, but I always thought that the techniques could be used in any language (though casting structs in C to do it is ugly and error-prone). How are you defining OO? I don't think I've ever had it defined to me in terms of much more than inheritance and encapsulation.
Sun 09 Nov | Mike Swieton | My bad, I just read that first article ;) Given that specific definition of C++ I could agree with you on C++ is not naturally a OO language, though I suspect a framework to allow all of the specified features could be built. The only question is whether or not you want to include some of those things in an OO language. Here's a question: Why is it that the pure OO languages are vastly less popular than C/C++/Java? Ones with, apparently, broken object models. I won't say that Lisp, for example, is unused, but it is vastly less used than C++ and Java today. Thoughts?
Sun 09 Nov | Justin Johnson | My guesses: First, C++ is widely used because Stroustrup (correctly) assumed that being a follow-on language to C would lower the transition costs, so that C++ would be playing to an already large installed base. Java, to some extent, played the same trick with C++. Second, being unusefully dogmatic about theory is rarely a practical advantage, since theoretical correctness usually offers only long-term gains. C++ and Java both broke with correctness where it was useful--C++ in not breaking C programs, Java in, for example, allowing primitive, non-object data types.
Sun 09 Nov | X. J. Scott | I think what I said didn't quite come across as I was hoping. That's why I said, 'This argument is separate from an argument as to whether OOL are useful or better or whatever.' I think you guys do agree with me that C++ is not an object oriented programming language, so I'm happy with that. To deal with the stuff I didn't want to discuss in this thread, I use C++ quite a bit and do use certain object oriented programming idioms in it, though I don't think that it's designed to support OOP well. I also program in a OO style when appropriate in assembly and C, and I think both of those languages are fine for that. In fact, I think it's easier to maintain OO idioms in a big project in C than in C++, but that's just me. I didn't want to drag in any of this though -- I am only interested here if anyone has a similar perspective that C++ is not a object oriented programming language. Arguments about which idom or language is most productive or best I'm not interested in here -- those have been done to death and I doubt there's any new territory to be covered there. Regarding 'feel', I mean to convey that in the sense that a hammer, as a tool, feels better for driving nails than a wrench does, even though a wrench can certainly be forced to do the work if needed . OOP in C++ is much more of a struggle to architect in a OO manner than certain other languages, in the same way that it is a struggle to architect in a OO manner in assembly. Java's a little better but pd, or any other run time system in which each object is a separate component or library. I think this is one of the things that makes the OO thing really work -- when each object is a separate component that can only be accessed through a well defined messaging protocol, then that's encapsulated. Macros and grammar systems that allow a abstract notion of encapsulation don't go far enough because they break down the abstraction. With separate components, there is no abstraction, the objects really are genuitely, physically encapsulated.
Sun 09 Nov | X. J. Scott | Oh and I have no interest in arguments of purism or theory. I find that object orientation is useful from a practical standpoint, and I also find that procedural idioms are very useful from a practical standpoint. Again, these are different issues from the ones I intended to bring up. Sorry for the confusion.
Sun 09 Nov | Justin Johnson | 'I think you guys do agree with me that C++ is not an object oriented programming language, so I'm happy with that.' Well, no, I'm explicitly disagreeing with you. It seems that you're saying that C++ is a poor OOP language because it doesn't restrict you to pure OOP. What I'm saying is that you can usefully program in pure OOP in C++, and it's no more difficult than programming C++ procedurally, generically, object-based, or any combination. Pure OOP programming in Java or another fundametally OOP language may be 'easier', but that's because they're higher level, not because of some flaw in C++. C++ can be, at the programmer's discretion, as pure OOP as desired with no penalty (regarding other C++ programming styles). Stroustrup thinks that's an advantage of C++; you seem to feel it's not. Have I mischaracterized your argument?
Sun 09 Nov | Justin Johnson | To put it another way, I've done pure OOP in C++, and I didn't feel like I was fighting the language, as I would if I were attempting the same thing in C.
Sun 09 Nov | X. J. Scott | Yeah, I'm not really getting across what I intend to say. I've read Stroustrop extensively, including his newest book, and the points you're making are known to me. I think you might be projecting an image of the beliefs of object purists or theorists or such onto me. I'm not talking theory but practice and implementation. C++, in implementation, does not provide support for encapsulation, for example. Maybe we could throw out 'OO' and replace it with 'encapsulation' or something and put the schematic idea (which is another element of my idea here) to the side for the time being. But I guess it's not really coming across what I wanted to express so sorry I'm not able to communicate it. Was more looking to see if others had noticed the same thing rather than to get into a merits of OO or merits of this and that language flamewar. Really, this isn't about language X vs Y, but more an observation of properties of some languages, or something. The observation comes from years of experience with various languages and is an issue of practice and implementation and not so much theory. But trying to describe it I guess forces the use of words, which drags in associations with various theories and confuses the issue to much. So I'll just drop it unless there's anyone with experience in the various languages, particularly the schematic oriented ones, or ones in which objects are actual discrete, encapsulated components. Probably the words I am using are not the right ones, probably they are calling to mind the wrong associations. Sorry for that.
Sun 09 Nov | Jussi (www.zeusedit.com) | > But I guess it's not really coming across what I wanted > to express so sorry I'm not able to communicate it. IMHO I think one reason for the communication breakdown relates to your definition of what is an OO language. As stated earlier you define an OO language is: The way I see it, object oriented programs can be programmed by creating a visual schematic showing the interconnection of discrete, fully encapsulated objects. When the language supports this, it's object oriented. While this definition might clearly define and easy to use OO tool, it is not the generally accepted definition of an OO langauage. For a language to be OO like it should support inheritance, encapsulation, abstraction and polymorphism and C++ definitely offers these characteristics. For what it's worth I personally think C++ is not such a great programming langauge but it definitely fits the definition of an OO programming language.
Sun 09 Nov | X. J. Scott | Yeah I know that C++ is considered by just about everyone as either a OOL or a multi-paradigm language that natively supports OO. So it's real easy to attack my assertion on these grounds, heck I can do it myself if you like. I'm approaching this from a different direction, seeing that C++ does not natively support OO. Encapsulation, for example, is not supported in C++. Yes, you can do it manually, but with the same amount of effort as in C. Java has better support for encapsulation, Objective C has very good support for encapsulation, and modular programming (I am making this word up, it's not the right one perhaps) fully supports encapsulation. Really, when the interface and the implementation both are completely exposed and required to access an object, it simply can not be said to be encapsulated. And without encapsulation, it can't possible be considered to be object oriented. It is possible to support object oriented architectures in all these languages, but you have to do it yourself. The apparent lack of standardization on name mangling in C++ makes it the clumsiest lanugage to do OOP in. C has more standardization in this regard, and thus objects compiled with different compilers can be mixed and matched more easily with C than C++. I do find encapsulation to be useful from a practical standpoint and so I am thinking about it in terms of languages really supporting that. Regarding the schematic stuff, I am not talking about class diagrams and such supported in an IDE, but schematic diagrams in which signal flow is drawn rather than typed. Encapsulated OOP is most useful for signal processing, in my experience. For GUIs I find a combination of structured and tabel based programming to be the most useful approach.
Sun 09 Nov | Justin Johnson | I think I get what you're saying, but you're overstating your case by saying that C++ 'can't possibly be OOP'. You're saying that encapsulation in C++ is by syntactic convention rather than run-time and compile-time behaviour. If that's true, I don't see why that's a problem. I don't see why objects have to be 'really' encapsulated, the way you're suggesting. I don't see why the flow you describe that's drawn can't be done for C++.
Sun 09 Nov | X. J. Scott | Right, yes. The benefit is that you can reuse and extend objects, both without having to have the source code, and also without having to recompile other code that uses the objects.
motherboard crazy | Sat 08 Nov | Confused
the numbers of variety of motherboards, chipset etc today is crazy!!. I wonder whether by always delivering new kind of motherboard every month will appeal to customers. I think it will just hurt the producer inventory level isnt it? and the margin will be lower and lower for them.
Sat 08 Nov | Leonid Brezhnev | Back when I was alive, tovarich, we had ONE motherboard that comrades in the Soviet Union could buy. Our central committee allowed citizens of the proud Soviet state to own any Abacus-II motherboard they wanted, complete with 256 bytes of RAM. You're correct. The sheer quantity of choices is absolutely disgusting. Capitalist imperialists will regret this orgy of choicemaking some day...
Sat 08 Nov | Phizo | I think George Carlin says it best: Political parties - two choices Dog Food - 197 choices Priorities?
Sun 09 Nov | www.marktaw.com | (insert product type here) crazy. Shampoos, rock and roll bands (do those exist anymore), televisions, cabinets, bookshelves, faucets, toilet paper, cars, ways to get from NY to California, bottled waters, shoes, bespoke suits, popping corns, rubber stamps, instant messaging clients, coffee houses (no wait, we consolidated those and people started to complain), beer brands, Operating Systems (no wait, we consolidated those too and there seems to be a war going on because of it), colors of paint, places to eat lunch, CPU's (thank god for AMD right? Otherwise Moore's law could've been 'computing prices double every 18 months'), stand up comedy acts, soft drinks, books, Saturday morning cartoons, vacuum cleaners, potato chips, cigarettes......
Sun 09 Nov | Phoenix | Now, things are not so complicated. If you ask me, there's only one worthy chipset on the market today: the nForce2. And only one worthy manufacturer - Asus. Now, Asus make three or so motherboards with that chipset, but three I think you can handle :-)
Sun 09 Nov | Stephen Jones | The important thing is the underlying chipset. That normally only changes because of superior design or because the bus speed changes. The amazing thing is how well disparate parts do work together. I hardware we seem to have the best of both worlds, standards plus competition. If only software worked that way!
Sun 09 Nov | Brad Wilson | I agree that the choices are actually easy when you're informed. Want a Pentium 4? Got a lot of money? Intel 875-based. Budget? Intel 865PE-based. Want an Athlon? nForce 2-based. Buy from a reputable manufacturer (Asus, Abit, Gigabyte), or check for round-up comparisons and reviews for the chipset of your choice. From the point where I don't know what the good chipsets are, to the point where I'm ready to buy an actual motherboard, is usually a few hours worth of research.
Sun 09 Nov | Heston Holtmann | If you know you want to buy an Intel based solution, use Intel's mobo selector! It is a very powerfull tool to simplify the mobo selection process. check it out. http://indigo.intel.com/mbsg/ The AMD doesn't give nearly as many configuration options.. but it does help narrow down the list http://www.amd.com/us-en/Processors/TechnicalResources/0,,30_182_869_4348%5e7923,00.html
Sun 09 Nov | Thomas | the numbers of variety of cards, trucks etc today is crazy!!. I wonder whether by always delivering new kind of car every month will appeal to customers. I think it will just hurt the producer inventory level isn't it? and the margin will be lower and lower for them. -Thomas
Sun 09 Nov | Thomas | the numbers of variety of stereos, speakers etc today is crazy!!. I wonder whether by always delivering new kind of stereos every month will appeal to customers. I think it will just hurt the producer inventory level isn't it? and the margin will be lower and lower for them. -Thomas
Sun 09 Nov | Thomas | Okay, that was my silly attempt to show how silly your complaint was. I do sympathize with you; I bought a new system several months ago for the first time in a few years, and I too was boggled at the variety of components. Heck, it took me a while just to figure out what kind of RAM I ought to use. Perseverance in research paid off though. I browsed forums, read reviews and asked questions. It was time consuming, but I got the components I wanted, and I'm well pleased with the results. -Thomas
Coding while watching TV | Sat 08 Nov | Fairlight
Im planning to install a TV set in my work room And Im wondering if any if some of you can still produce high quality code while watching/listening to TV
Sat 08 Nov | Eric Debois | Suer, I watsh TV wihle typign al teh time
Sat 08 Nov | Almost Anonymous | I recommend you put the TV behind you so you have to turn away from the computer to watch it. It's not going to increase your productivity but sometimes when doing certain tasks its nicer to have something else going on.
Sat 08 Nov | Philo | I've had a TV in my home office for years, and I'm about to take it out. I *think* it helps to have it on, but I'm really just enabling my procrastination desire - the TV is a distraction. In addition, if you have a family there's a real problem of increased isolation - the more your home office is an apartment, the more you live there. Put the TV in an area where you can watch with the family or your wife, and when there's something on you want to watch, 'leave work' and go watch. Finally, sitting in an office chair is bad for you. Getting up and moving to a recliner or couch is (believe it or not) healthier than sitting in the chair for hours a day. Philo
Sat 08 Nov | Phizo | I'd suggest a nice crack habit instead...
Sat 08 Nov | Tom Vu | I don't even have a TV. What are the benefits? For me, it seems like a 24 hour infomercial.
Sat 08 Nov | Stress | Philo, Why is sitting on a couch or recliner healthier than sitting in an office chair? Stress
Sat 08 Nov | Tim Lara | I'm just entering my sixth month without a TV for the first time in my life...lost it in the breakup.  The cravings were there at first, but now I've gotten so used to it that the thought of buying a new one barely even crosses my mind anymore.  I don't know whether I'm really more productive at home without it, though.  Now it just seems like I waste twice as much time online...
Sat 08 Nov | Li-fan Chen | I do worst when there are lots of distractions. I love music, tv shows, loud server rooms--but if you really gotta pump out good elegant code and solve bugs in a cinch nothing beats a quiet early morning and good sleep.
Sat 08 Nov | Li-fan Chen | Even without all those things, a quiet computer can be filled with clutter*. There are solutions**. You'll save hours of time. * Here's what I found to waste my time, YMMV: 1. Like skimming through slashdot, 2. debating the good debating on JOS, 3. making MP3 playing lists that sucks less, 4. uber-pack-ratting (organizing.. backing up.. archiving.. deleting.. 5. renaming whatever the hell it is you downloaded last night), 6. replying to emails from friends, 7. chatting on MSN Messenger with cousins, 8. monitoring the perilous task of making the perfect burn using a stupid CD filesystem and el cheapo write-once medium designed to fail in 2 years, 9. drinking 3 different kinds of liquids and then battling the dish washer. 10. reinstalling windows ** There are ways to get around this time-wasting hell: 1. You have to get all of these things off your computer. Setup a pc at home and run ssh, linux and perl on it. Whatever utility you can find to make surfing more fun on Windows--I have been able to (most of the time) find a somewhat adequate to unmatchable replacement in Linux. 2. Let the linux box do all those download and organization using perl scripts. Have it throttle so if someone (your spouse or kids) at home is surfing it won't ruin a webcast. 3. Let it do all the reading of slashdot and JOS for you. Don't be a network hog but have watch dogs that tells you when something interesting is being mentioned on a thread. 4. Buy 4 big hard drive a year and don't backup anything (just mirror it), 6. drink water. all the other stuff makes you thirsty as hell 7. send letters, real thoughtful ones, using your bloody hand for once, less says more, i have notice most people on instant messengers and other impressive instant mediums use it for transmitting brain farts more than anything worth reading. 8. Keep Windows CLEAN, don't install shit on a whim, you won't have to reinstall it all the time then. If you have to try something, use a second PC or vmware it.
Sat 08 Nov | Li-fan Chen | PVR.. buy one. The PC-based ones from ATI are wonderful. Let it run over-night on Food TV/Food Network, or your SCI-FI channel, or your music television, or that channel that records those cool obscure shows that can't beat out the crappiest sitcoms you can't bear out of prime time (XMC, Beat the Geek, Robot Wars, whatever). It usually can record one channel at a time, and I hate the following limitations: 1. inability to record english subtitles 2. inability to automatically skip commercials 3. difficult to set up scriptable recording schedules (record this channel now.. that channel next) I heard there are standalone PVRs you can buy, I would recommend getting one, they are way worth it. If you buy a PVR, and get watch tv interactively with a PVR, chances are you'll watch tv less and less, probably 4-8 hours a week.
Sun 09 Nov | Stephen Jones | LI fan chen, What's a PVR? And you mirroring strategy isn't much use against burglars or fire.
Sun 09 Nov | Li-fan Chen | >LI fan chen, What's a PVR? Too lazy to google? >And you mirroring strategy isn't much use against burglars or fire. Too lazy to drive the drives to another location?
Sun 09 Nov | Stephen Jones | ---'Too lazy to google?'--- Yea, just like you're too lazy to write the word out so we know WTF you're talking about. ---'Too lazy to drive the drives to another location?' If you're going to be carrying it around in your pocket then you'll want to be using a removeable hard drive, so basically you'll be backing up to it, not mirroring.
Sun 09 Nov | Li-fan Chen | Tom Vu: I second what you say. Can't watch most of the stuff on tv--even the ones you can fast forward and filter all you want with an personal video recorder (PVR) *smirk*. I did get a dvd player and a sony wega just so I can catch up on all the movies. Hmm... most movies aren't any good. Yeah.. basically the tv and the $46CDN cable bill is there for my family. Around 3 month ago I tried real books, works wonders. If one want to spend idle time watching tv, he'd lying to himself if his claims he can think about the problem in front of his screen at the same time. So why not just read a page or two? I can go through maybe a couple of good novels a week.
Sun 09 Nov | Brad Wilson | Oh boy, it's the 'bad TV trolls'. There is a lot of really great TV out there to be found. If you want to be some hippy anti-establishment freak and wipe TV out of your life, that's fine. But don't lie to yourself and say there's nothing worth watching. There's A LOT of stuff that's worth watching. (Oh, and I know what a PVR is, because I have one. Most people call it a TiVo, though. :-p)
Sun 09 Nov | Nat Ersoz | 'There is a lot of really great TV out there to be found.' Not much during working hours. Daytime TV is more interesting with the audio turned off. When you randomly glance up you see 'Mother is self-reproducing transexual with identity issues.' Mmmmmmmmm. Daytime TV.
Sun 09 Nov | Jason Watts | While I agree in theory that there may be few things on broadcast television that would add something to my life, the cost of filtering them out from the chaff is too prohibitive. There are other avenues to get all the 'benefits' of television that I can do according to my schedule, not one I have to adjust my life around. We haven't had broadcast TV in our house for several years now and the only thing I miss is...um, nothing. Hopefully the Simpsons DVD's will come out more than once a year in the future - I have a lot of catching up to do ;)
Sun 09 Nov | Philo | Sadly, I've recently become addicted to Law & Order (which has several reruns a day) and ER (ditto). Law & Order is a great show for anyone who wants to know how the criminal justice system works - it's frighteningly accurate. I've read several reviews by doctors that ER is a pretty accurate portrayal of how an ER works. As for 'why is a sofa healthier than an office chair' - unless you've spent over $500 on your chair, odds are it's restricting circulation in your thighs. This can lead to circulatory problems in your legs and possibly even blood clots. In addition, even if neither is healthier than the other, sitting in the same one for 6-12 hours a day is worse than alternating between the two. (in any question about human physiology, 'variety' is generally a healthier answer.) Philo
Sun 09 Nov | Tim Lara | Brad: While the 'hippy anti-establishment freak' moniker may actually describe me fairly well ;-) I would definitely agree with you that there are LOTS of excellent programs on TV worth watching. In my case, though, that is actually part of the problem! Some people are born with an alcoholic gene - I have the TV-OCD gene. I don't know when to stop and end up spending a bunch of money that I don't really have because I'm never satisfied until I have HBO and all the other premium cable packages as well...Half the reason I'm trying the no TV route for a while is to just save some $$. I also find that it's more of a treat when I get to see my favorite shows now because I have to go over to a friend's house and actually make it a social event. Helps keep me from being such a hermit.
Sun 09 Nov | Thomas | Philo, Regarding ER and Law & Order -- they are relatively realistic portrayals of medicine and law, but in real life there is much less drama, fewer happy endings, and about 100x more boring stuff like filling out TPS reports, sitting in PHB meetings, and surfing the web. (I've spoken with a few ER and law folks too.) -Thomas
Sun 09 Nov | Ray | What really bothers me are the cover sheets on those TPS reports.  I mean, I got the memo (8 times) but I just can't seem to remember them.
Downloading Linux | Sat 08 Nov | Jan
Hi: I would like to download a Debian distribution of Linux. The link for download is at http://mirrors.kernel.org/debian/ However I do not know what to downlad. The instructions are sparse. Thanks, jan
Sat 08 Nov | Jan | I have found an easier to understand site for a Mandrake Linux distribution - http://www.mandrakelinux.com/en/ftp.php3 Would I have to download all the files listed Thanks, jan
Sat 08 Nov | mb | try http://www.knoppix.net/ haven't used it myself but it has excellent reviews--a bootable linux CD. it is based on the debian distro.
Sat 08 Nov | mb | btw, the instructions for 'normal' debian are here: http://www.debian.org/releases/stable/installmanual you probably have an Intel x86. i think there's another set of instructions somewhere else too.
Sat 08 Nov | Mike | In fact if you like Knoppix, you can install it to your hard drive here are instructions. http://bofh.be/clusterknoppix/knx-install.htm
Sat 08 Nov | Almost Anonymous | Try one of the debian-based distrubtions instead of just debian. They are easier to install, come with a nice setup, and are otherwise pure debian. I recommend Libranet which you can download from http://www.libranet.com/ Also, I believe that Lycoris desktop/lx is also debian based. http://www.lycoris.com/products/desktoplx/ -- you can download it from linuxiso.org
Sat 08 Nov | Mike Swieton | I believe debian has an irc channel on openprojects.net (or whatever they've been renamed to nowadays). You could ask there. Keep in mind that debian doesn't *want* you to download it. They want you to *install* it. If you download it, you're pulling down over 10,000 packages that you will likely not use or install. They have a lot available, and that bandwidth costs them alot to serve up ISOs. Why not download one of the net install images? Those were pretty easy to find and reliable last time I checked, particularly if you can boot off of a CD-ROM drive.
Sun 09 Nov | Li-fan Chen | Fedora Linux seems kinda interesting. The bit torrent waves for it is currently pretty strong. Despite my ISP's (istop.com) throttling*, the 3-disc iso came to my hard drive pretty quick. * Full blast UL/DLs between noon to midnight are rejected/throttled now.
Sun 09 Nov | Stephen Jones | As Li-Fan says you want to download an ISO image. then burn onto a CD and install (aftr printing out the install guide if you only have one computer). If you don't have broadband then try and get a DVD shipped. Shouldn't cost much more than postage. In the UK you get loads of free software from the computer mags. Also, unless you are 100% committed to Debian, consider Mandrake.
Sun 09 Nov | Justin Johnson | http://www.linuxcentral.com/ is one of many sites that sell distro CD sets for under $10. Try Debian, Fedora (nee Redhat) or Mandrake. In fact, when I was first playing around with Linux, I bought four different distros, and tried installing each one until I found one that installed without problems. That overcame a lot of my early frustration with Linux, which was a sort of 'off by one' problem--this one didn't have a modem driver, this one didn't like my monitor, etc.
Sun 09 Nov | M | Jan - I have always used http://linuxiso.org and in fact just downloaded Debian a few weeks ago.
Do you organize web pages? | Sat 08 Nov | Philo
I keep too many links to web pages, and I want an easy way to organize them. I like this: http://www.icarousels.com/ However it has no way to import favorites - you have to add pages one by one (feedback already sent). Anyone know of something similar? Something that can snapshot web pages and make them easier to organize? Philo
Sat 08 Nov | www.marktaw.com | I used to have a program that cataloged all the web pages I visited and allowed me to search them, but I don't remember what it was called. It also got bloated after a few weeks. I currently like PowerMarks http://www.kaylon.com/power.html which allows you to add bookmarks, tag them with keywords, and search (read: filter) through the keywords at a later date. While searching for the PowerMarks homepage, this DMOZ / Google page turned up: http://directory.google.com/Top/Computers/Internet/On_the_Web/Web_Applications/Bookmark_Managers/?tc=1
Sat 08 Nov | www.marktaw.com | Oh and Zoot, if you could ever figure it out... It lets you add snippets from web pages & other applications and sort/organize them later... Apparently Zoot does a lot more than that, but I never could figure it out. http://www.zootsoftware.com/
Sun 09 Nov | Guy Bjerke | This software does a good job of saving webpages and indexing them. Not a links or favorites solution, though. http://www.surfsaver.com Good luck.
Sun 09 Nov | Philo | I ended up picking up NetVisualize Favorites Organizer, which does exactly what I need (thumbnails web pages, verifies links, allows drag and drop organizing) Philo
Sun 09 Nov | name not available | i checked zoot. uuhhh. what an UI. probably there are a lot of functions, but learning this stuff could take several days
Sun 09 Nov | Ethan Herdrick | A little startup called Seruku has a neat IE toolbar that keeps track of every page you have been to and allows you to search them, Google-style. http://seruku.com/Toolbar/Toolbar.html The founder is a good guy, too.
Sun 09 Nov | Ethan Herdrick | Also, here is a good page of links on this topic: http://seruku.com/News/SerukuLibrary.html
Sun 09 Nov | mb | did you know you can search your history with IE? it's just whatever's in your cache, and not very fast, but it does work well enough to use. bring up the history pane and say 'search'.
What Anti-virus do you use? | Sat 08 Nov | fd
I dont use anti-virus, but am thinking of getting either norton or mcafee i think are the two most popular.  Anyone wanna share details on what they use and why?
Sat 08 Nov | Philo | EZ Trust Antivirus, because it's the only AV product I've found that will run on Win2k Server without charging an arm and a leg (which is really odd, because it's from CA) Philo
Sat 08 Nov | Stephen Jones | For the desktop I use AVG6 free editon from www.grisoft.com Works great, and they have a professional edition as well.
Sat 08 Nov | Philo | [Note that the professional edition won't run on win2k server, though AVG's server edition is the cheapest server edition I'm aware of] Philo
Sat 08 Nov | Chen | I don't use any as Windows xp is the most secure ever and I think that with Microsoft's new security religion, I have nothing to worry about
Sat 08 Nov | Brad Wilson | Except when forced to by corporate policy, I've never used any anti-virus beyond any evaluation purposes. They were all too intrusive, and given nearly 2 decades of virus free activity, I don't lose any sleep over it, either.
Sat 08 Nov | no name | Common sense is my anti virus protection.
Sat 08 Nov | Greg Hurlman (blogs.squaretwo.net) | I've been using e-Trust from CA for the last 3 years, and I haven't had any incidents at all, server OS or no.
Sat 08 Nov | Tim Lara | Like Brad, I've never been hosed by a virus in all my years, but nevertheless, since I work in a fairly lax IT dept with LOTS of trigger-fingered novice users around, I am not cavalier enough to go without an AV utility running, just in case. I have always used the Norton line as I've had little or no application conflict type problems with it and, as I mentioned, have never had any virus catastrophes. (Whether that means that NAV is really doing that much or whether it just means that I'm a nervous nellie who doesn't take many risks is debatable) My only real complaint with Norton is that it seems to be fairly resource-intensive...if anyone here has compared several AV products in that respect, it would be interesting to see your findings...
Sun 09 Nov | Matt Foley | Ditto Brad and Tim, I find AV products too intrusive and too resource intensive. I hate hearing my HDD start crunching when I'm not even touching the keyboard. I hate those multi-second pauses whenever I access a large file. I hate the general sluggishness of my PC. I run without AV protection and have never been hosed by a virus (knock on wood). However I am pretty anal about backing up my data frequently, so if I ever do get hosed I will simply format/reinstall and reload from a backup. The time required for a complete reload would be roughly equivalent to those precious seconds lost over the course of running with a 'protected' PC. Plus it eliminates the frustration I experience when my 3GHz P4 runs like a 386SX-25.
Sun 09 Nov | Man on the street | I use Norton Internet Security and have no complaints thus far.
Sun 09 Nov | Li-fan Chen | Matt Foley: if AV vendors fixed the way they scan would you use it? Wait, that's a dumb question. They will never fix it. It's been like that since the beginning. All this time they could have build digests of kosher files and cached comparisons and monitored new file adds, updates, and deletes and do on the spot checks during idle time. Like what tripwire folks are trying to do with the giant software vendors of the world. But why do all that when you can just take the money home and spend it on nice cars?
Sun 09 Nov | Li-fan Chen | I have used Symantec and Norton antivirus and currently use norton. On Linux I have mostly gone without. Do they help? AVs don't cover the threat model nearly enough. And vendors are quicker to place blame (oh the white hats didn't tell us first! *wahhhh*) and coming up with half ass fixes then putting forward preventive measures: 1. You shouldn't have to buy Zone Alarm, most av senior engineers should have seen this a mile away in 1996 and written what zone alarm does (allow only proper programs to do outbound connection, stop the trojans) as an integrated part of any security plan. They didn't. 2. A major consumer firewall vendor then started selling a personal firewall that was also missing that feature for the longest time (see grc.com's article on this) I don't sleep any better, but I have it installed. I badly need sleep. Vendors please get your acts together!
Sun 09 Nov | Jarred | McAfee helped me by detecting the Blaster worm when it was new - and the AV was NOT updated. It detected it as a generic RPC exploit.
Sun 09 Nov | Stephen Jones | ---' You shouldn't have to buy Zone Alarm'--- You don't have to; the free one works perfectly --'most av senior engineers should have seen this a mile away in 1996 and written what zone alarm does (allow only proper programs to do outbound connection,'----- Do you realize how small a number of computers world wide were connected to the Internet in 1996? I think Finland was the only country in Europe that went above 10% of the population connected. I don;t recellect anybody being really bothered about Trojans until three or four years later.
Sun 09 Nov | I did not have sex with that Woman | 'Do you realize how small a number of computers world wide were connected to the Internet in 1996?' True, but ...... There has been a shift in virsues over the last few years. Viruses used to be destructive (delete files or otherwise farq your system) and virus writers were little more than the computer equivalent of vandals who like to go around smashing windows. That seems to have changed -- maybe the virus writers of 10 years ago grew up and got tired of being destructive. Today, most virsues don't do any harm to the host system, their main function is to spead as widely as possible, for a variety of purposes -- DOS attacks, sending out spam, etc. However, given that 'always on' broadband connections have been around a while (I've had a cable modem since late 1999) I think that the AV companies are long overdue in adding a built-in firewall-type function to their products.
Sun 09 Nov | Mike | 'I think that the AV companies are long overdue in adding a built-in firewall-type function to their products. ' I agree. Most vendors alreeady have a firewall product. Their view is why roll this into one when I can sell them two products. Plus you know people are used to $39 or $49 for AV, now it's $89 or $99 - why. And logically shouldn't that large monopoly hailing from the Pacific Northwest build a DECENT firewall in and have it RUN by default, especially seeing how they are all about trustworthy computing now? Yes I know XP comes with a firewall, it is one step above worthless and not turned on by default.
Sun 09 Nov | Justin Johnson | At work we switched from Norton to CA's E-trust, and promptly found a lot of stuff that Norton missed.  CA also seems to be less resource intensive than Norton--the IT department no longer gets complaints about slow computers during the weekly, company-wide scan.
Sun 09 Nov | Noname | Those who say they haven't had viruses in years ... how do you know if you don't have software to detect them?  They may be present without you noticing.  You could have Trojans that are transmitting your keystrokes or data files, which go undetected by your firewall because they have embedded themselves in another executable which is normally allowed to access the Internet.
Sun 09 Nov | Mike | So for the really paranoid you accept the fact that you buy a 3ghz machine but really end up with a 2ghz machine because of av and firewall software load. If you had keylogging trojans, you would probably notice it on your bank and credit card statements. Those people aren't monitoring you for typos you know.
Sun 09 Nov | Philo | I had Pinfi for I don't know how long. I only bothered to check because a) a vague feeling that my system wasn't working right b) a 'disk full' message 2-3 times on a disk with GB of space free That prompted installing an AV program and working to eradicate the bugger. (also had two other dormant viruses in downloaded exe's) Philo
Sun 09 Nov | Stephen Jones | ---'you buy a 3ghz machine but really end up with a 2ghz machine because of av and firewall software load. '---- This is absolute rubbish. Running Task Manager to check on their CPU usage actually uses more CPU time than both firewall and anti-virus combined. I can't tell whether I have Zone Alarm on or off; the only time anti-virus is a problem is if you let it run its scheduled scan while you are trying to do something else on the machine. The answer is to set the scheduled scans to run when you are sleeping or elsewhere. If you've got real time protection on you can leave the scheduled scans to once a week or less.
Movie recommendation | Sat 08 Nov | Philo
Anyone whos ever been involved in project design needs to see The Pentagon Wars to see the management/ tech interface in action. Its about the design and construction of the Bradley Fighting Vehicle, but the principles are the same. (And its very funny) Philo
Sat 08 Nov | Frederic Faure | Looks interesting :-) http://us.imdb.com/title/tt0144550/
Sat 08 Nov | Grumpy Old-Timer | If you're a 'policy wonk' (like me), this is a hilarious movie. The scene wih the hot plates was wonderful. In a different vein, I just saw 'Snatch', and loved it. If you liked 'Go!', you'll love this...
Sun 09 Nov | no name | If you in the right mood... King Pin Walking past his two drunken neighbors: Woody: 'How's Life' Drunken Neighbors: 'Taking Forever' Drunken Neighbor 1: 'Can you get sick drinking piss' Drunken Neghbor 2: 'I think so' Drunken Neighbor 1: 'Even if it's your own?'
C hash or C bang | Sat 08 Nov | tapiwa
is C# hash or bang where I come from # is hash, but I have seen C# referred to as C bang. what is the official line?
Sat 08 Nov | r1ch | It's C Sharp - see the last question here - http://msdn.microsoft.com/vcsharp/productinfo/faq/default.aspx
Sat 08 Nov | tapiwa | I still can't get around calling it C sharp. I think it is silly how MS want to change the English lexicon to suit themselves. Why not just call it C++++ I will probably keep calling it C hash for a while :)
Sat 08 Nov | Not-a-MS-Hack | From 'Wilbur's Music Tutorial #2' at http://www.hoerl.com/Music/music2_notes.html : ' FLATS and SHARPS: As previously stated, every note on a line or space on the staff has a pitch. This pitch can be raised or lowered in whole steps by going from one note to the next...OR the pitch can be raised or lowered in half steps by using SHARPS and FLATS. SHARPS are indicated by the '#' sign. A SHARP raises the musical tone by one half step (Ex: from C to C#). '
Sat 08 Nov | Philo | And by the way, #=sharp predates computers, calculators, and Univac. Philo
Sat 08 Nov | mhp | bang is an exclamation point
Sat 08 Nov | Troy King | In the immortal words of Bremmer and Kroese: <> ! * ' ' # ^ ' ` $ $ - ! * = @ $ _ % * <> ~ # 4 & [ ] . . / | { , , system halted The pronunciation is: waka waka bang splat tick tick hash caret quote back-tick dollar dollar dash bang splat equal at dollar under-score percent splat waka waka tilda number four ampersand bracket bracket dot dot slash vertical-bar curly-bracket comma comma crash
Sat 08 Nov | tapiwa | 'by the way, #=sharp predates computers' I should have guessed ... my bad... Now I can see why I am the only one in my family that is not musically gifted mom-sings sister- piano brother - rap artist. me-Joel on Software!!
Sat 08 Nov | tapiwa | Troy, nice one... will hang onto this one.
Sat 08 Nov | Robert Jacobson | Some cheeky devils have also called it "D Flat."  (In musical notation, C Sharp and D Flat are the same note.)
Sat 08 Nov | Mark Bessey | I always call it 'C pound', myself. Seems appropriate, somehow :-) -Mark
Sat 08 Nov | Ron Porter | 'Some cheeky devils have also called it 'D Flat.' (In musical notation, C Sharp and D Flat are the same note.)' Wasn't there a D-Flat project several years ago in Dr. Dobb's Journal or Computer Language or some such magazine?
Sat 08 Nov | Tuning Maven | D flat is slightly sharp of C sharp. D flat is a fifth below A flat. C sharp is a fifth above F sharp. D flat and C sharp are only 'enharmonically equivalent' in theoretically exact twelve tone equal temperament. On Handel's harpsichord, for example, C sharp and D flat were two different keys.
Sat 08 Nov | z | # is an octothorp, so it should be "C octothorp".
Sat 08 Nov | somebody | >> In musical notation, C Sharp and D Flat are the same note. << Not quite true. C sharp and D flat do share the same pitch but are otherwise very different and not typically used interchangeably. Whether this pitch is referred to as a C sharp or D flat (or B double sharp or whatever) is determined by its intervallic relationship with the other notes in the section of music that contains it. For example, the B major scale contains a C sharp but not a D flat.
Sun 09 Nov | HeWhoMustBeConfused | Tuning Maven, you are right. From memory, D-Flat was a character-based windowing system from a guy that used to do tutorials on ISAM, memory buffering, stuff like that. Damn, I wish I hadn't got divorced. That led to destruction of my archive of DDJ and other stuff :(
Sun 09 Nov | Damian | >>Not quite true. C sharp and D flat do share the same >>pitch but Actually.... The tempering of the major scale isn't perfect and those notes aren't exactly the same. Not that anybody here likes being nitpicky ;)
Sun 09 Nov | sgf | ' those notes aren't exactly the same' Odd, my piano has only one key for both notes. Anybody have a link to more information? I thought I knew something about music, but never heard this.
Sun 09 Nov | anon | http://www.albany.edu/piporg-l/tmprment.html
Sun 09 Nov | Philo | Dammit, is there ANYTHING that math and physics can't screw up? Philo
Sun 09 Nov | Aussie Chick | Not wanting to sound condescending, just curious. I assumed everyone new immediately that c# was pronounced c-sharp. Yes I did music all through highschool. I know the # is also called 'hash' (never heard bang though) but just looking at it it was obvious it was a sharp (because with the choice between c-sharp and c-hash, sharp made more sense). Is it really non-obvious? Is the fact that # = sharp not well known?
Sun 09 Nov | Ron | # is pronounced 'octothorpe' http://dictionary.reference.com/search?q=octothorpe
Music Selection While Coding? | Sat 08 Nov | H. Lally Singh
Ok, so weve talked about fonts. How about music? When Im doing think-heavy code (or debugging for long hours), I go for this stuff: -Massive Attack -Dido -Sarah McLachlan -Carla Warner -Tori Amos -R.E.M. For straight code-as-fast-as-I-can-type code: -Crystal Method -Rob Zombie -Powerman 5000 -Marilyn Manson Both times I play various tunes from the 2 matrix soundtracks. Anyone else?
Sat 08 Nov | Sven Hohage | These days: Elliott Smith - all his albums..especially Figure 8....r.i.p Elbow - Asleep in the back Badly Drawn Boy
Sat 08 Nov | scoz | Satriani and Pink Floyd !! I remember reading some research that instrumental music and instrumental rock helps studying math and things like that.. I'll try to find the link again..
Sat 08 Nov | christopher baus (www.baus.net) | Tricky Blue Six afro mystik the dandy warhols Thievery Corporation Sound Tribe Sector 9 Dzihan & Kamien Kruder & Dorfmeister DJ Shadow Gawd, I'm so hip it hurts. ...Oh wait. I'm posting on a geek web site at 1:19 AM on a Friday Night. Never mind....
Sat 08 Nov | MX | Abba Modern Talking some classical music etc. It's a kind of music that doesn't distract me. If I play something like Annihilator, Megadeth, etc :) it distracts me a lot. :-) Also, one thing about classical music: many people think that it sounds very badly, that it's hard on the ear, etc. That's not true. If played through an inexpensive audio system, it sounds bad and is tiring to the ear. If you play it through a good hi-fi system, it sounds absolutely excellent. Also, the best is to listen to it live.
Sat 08 Nov | Meri Williams | Again, a distinction between concentration coding and quick coding... Concentration coding: Dido Melissa Etheridge Live Michelle Branch Garbage Quick coding: Everclear Matrix Soundtracks Violent Femmes --Meri ( http://blog.meriwilliams.com )
Sat 08 Nov | DanG | Hey H. Lally Singh, rock on man, like your choices Im the same. If Im doing some tedious, repetitive, thoughtless stuff I will crank up the metal/punk stuff like Slipknot, Slayer, Hed PE, Manson, Rob Zombie, Sevendust But if its deeply perplexing and interesting, I cant be listening to other distractions, so I usually just have headphones on without music to block out all sounds
Sat 08 Nov | Ori Berger | Peopleware had a very interesting tale about this: 2 groups of students; one group was made of people that like to listen to music while coding, the other group liked silence while coding. A task was given out, and each student was individually asked to do the same task. When later compared, there was no apparent difference in code quality, correctness or time taken between the two groups. But none of the music listeners noted that the task was actually an identity function (a set of transformation that eventually cancel out each other, so that the program's output was its input), and ~half of the 'silence' group did notice that. Personally, I recommend: 'soft' classical music 90's Depeche Mode (Violator, Songs of Faith and Devotion, Ultra, Exciter) Alan Parson's project (especially the instrumental material) And the occasional pure silence.
Sat 08 Nov | Patrik | I listen to alot of different stuff, one end of the spectrum includes things like old school Metallica (pre Black album), Iron Maiden, Queensrÿche and Rammstein. Some days its the 80's pop I grew up on :-)
Sat 08 Nov | Tim Sullivan | Currently I have a short list music I've got in my playlist: 'Battile Without Honour or Humanity' (Kill Bill) Dead Souls (NIN cover) Confusion (Pump Panel mix) Living Dead Girl (Rob Zombie) Spybreak! (Propellerheads) Clubbed to Death (Rob D.) The Heart's Filthy Lesson (David Bowie) Hallo Spaceboy (David Bowie) Self Esteem (The Offspring) Come Out and Play (The Offspring) Stigmata (Ministry) Fun With Drugs (Velvet Acid Christ) The City Sleeps (MC 900 Ft. Jesus) Supernaut (1000 Homo DJs) Sidewinder (Download) Cookie Day (Shonen Knife) Banana Chips (Shonen Knife) No Name, No Slogan (Acid Horse) Frontline of Violence (Armageddon Dildos) You Suck (Consolidated) America Number One (Consolidated) I've also been listening to an obscene amount of difm's Trance/Goa radio station. In most cases, I find music that has energy makes me code more than I play popcap games.
Sat 08 Nov | Tim Lara | Ori - interesting about the 2 types. Guess I'm from the segment that prefers absolute silence, especially when trying to solve difficult problems. Even if I'm doing light coding tasks, I find that listening to music (esp. music that I like a lot) actually seems to slow my productivity because I find my mind drifting and focusing too much on the music. Either that, or the music kick starts my imagination into the mode that makes me think about all the things I'd rather be doing than sitting at the desk at work. The only possible exception for me would be if there is an excessive amount of annoying chit-chat going on in the cube farm around me that I need to shut out -- in that case, a nice instrumental piece over headphones can be a godsend, but I'd still be getting less done than I would in a library-like setting...
Sat 08 Nov | Rick | I'm like Tim, I can't code at all when music is on. I literally can't think through a simple for-loop. Yet I don't mind driving somewhere 16 hours straight, as long I have the radio on. Without, I can only go a couple hours.
Sat 08 Nov | mackinac | This topic comes up with some regularity.  I'll agree with Tim and Rick.  When I am working on a problem that requires some thinking, I want quiet. 
Sat 08 Nov | fw | Daft Funk is pretty nice, the ministry of sound chillout collections, Rachmaninov, Barber...sometimes I'd be more into rage against the machine, and soundtracks for channel four films (snatch etc..), oh and the soundtrack to the film PI is good too.
Sat 08 Nov | Wayne | Isn't it daft punk?
Sat 08 Nov | SG | I prefer absolute silence, but since I work in an office environment in a cubicle, that's rarely possible. (I'm most productive at 5am!) http://www.nightwish.com is my preferred background sound blocker. It's Finnish melodic metal opera!
Sat 08 Nov | Philo | I like streaming trance (Digitally Imported, etc). Sometimes I like some 80's or speedmetal, but for long periods of coding trance is the best. I really need to learn the mixes and buy some CD's, because it's really annoying when I'm on a roll and suddenly some girl starts singing (someone needs to set up a 'nonvocal trance' shoutcast stream) Philo
Sat 08 Nov | Mitch & Murray (from downtown) | Quiet for writing code. Ambient for general desk work.
Sat 08 Nov | Stephen Jones | Id the music has lyrics I can't do anything, unless it's in a cafe or bar, in which case I can get through twelve hours of books without noticing. Foor marking books Bach is passable background music. Mozart tends to distract. Yet when I'm diriving the music doesn't affect my concentration at all - quite the opposite. I always thought this was a question of age (none of may generation studied tnrough music but doing the occasional boarding school homework supervision ten years after leaving school I found maybe a third of the students needed music).
Sat 08 Nov | Prakash S | I second Nightwish & di.fm ! their song "She is my sin" is pretty good, it will remind you of Evanescance's - bring me to life.
Sat 08 Nov | RP | Massive Attack Tricky Portishead Gorillaz Nirvana Stone Temple Pilots Pearl Jam Oasis
Sat 08 Nov | Vince | I second Crystal Method. 
Sat 08 Nov | Sum Dum Gai | Music collection is too big to list, i listen to just about anything. I like music to code and to read to. Sometimes I lift up my headphones above my ears so i only get a very low level of noise ... I find switching between that and full music helps me think, maybe it's the change?
Sat 08 Nov | somebody | I wonder if that study had the two groups perform the tasks in a realistic environment.  The one group may prefer silence but in the "real world" that seems to be a rare thing.  A better study would have been to have the programmers sit in cubicles with someone typing loudly in the cubicle on the right, someone talking loudly over the phone in the cubicle on the left, two people having a meeting in the hall, strange music coming from who-knows-where, and random people walking by while whistling.  Then let's see the results of those listening to music (to cover up the background noises) versus those who don't.
Sun 09 Nov | Beth | My office has steam heat and it sometimes sounds like a bad drum solo first thing in the morning. If complete silence isn't an option, music is the next best thing. In addition to stuff that's already been mentioned, I've been listening to jazz albums on Rhapsody lately. My favorites are John Coltrane and Miles Davis. Sometimes I'll put on a random electronica compilation instead, if I can find one that's all/mostly instrumental. When I do put on something with words, I wind up listening to the lyrics if I don't know them and I get distracted. If I put on something I've heard a million times, like an old Indigo Girls album, I tune it out once I start working and then I notice half an hour later that I've missed all the songs I was thinking I wanted to hear. .
Sun 09 Nov | anybodyBesidesMeRememberLil'DeuceCoupe? | It's easiest and most convenient for me to listen to channels off spinner.com, and I've gone through various phases. I used to listen to hard rock/classic rock channels, then switched over to laugh tracks channel, which surprised me. Normally I couldn't concentrate with talking like that in the background, but for a while it really worked for me. Some of those comedians are really funny, too. After a couple months of that, I switched over to the 'Trance' channel on spinner. I'm with that now and have been with it the longest. still not tired of it. Guess I'm seconding philo's choice there. For me at least, I think it's two things about trance that work well: 1) it's lively with a strong beat, which I like 2) it's highly repetitive, and much of it is instrumental, which makes it easy for me to ignore. Sounds contradictory, I guess, 'lively music I can ignore', but I've never been much of a classical music fan, and music without a beat either puts me to sleep or pisses me off. Who knows why -- just weird I guess. Oh, and though he doesn't monitor JoS, our sysadmin also listens to Trance on spinner.com, I think we're the only two. One of our developers listens to light classical, his officemate listens to various flavors of rock. Not sure about the other folks.
Sun 09 Nov | Broadway Coder | Am I the *only* code who listens to showtunes?
Sun 09 Nov | Gen'Xer | 'Dead Souls (NIN cover)' Hey Tim - nice choice!!! I prefer the original Joy Division version though... My playlist would have to contain: The Smith Travis Suede Ned's Atomic Dustbin Lush Mojave 3 Stereophonics Cranes The Cure Mazzy Star Echobelly Belle & Sebastian The Stone Roses Teenage Fanclub The Ocean blue Blur ......
so I heard through the grapevine | Sat 08 Nov | christopher baus (www.baus.net)
that the gut feel of our (very experienced) QA lead is that we are about a year away from shipping our latest release. As a senior developer with ownership over many of the new features including our new font engine http://www.baus.net/archives/000012.html, I feel we are in our last bug fixing round and will meet the year end deadline. Has anyone seen such a difference of opinion in the state of the an application before? Are developers optimists and QA folks pessimists at heart? This has lit a fire under my butt, and now I want to do everything possible to prove them wrong. Which makes me think this is some sort of management conspiracy ; )
Sat 08 Nov | H. Lally Singh | 'Are developers optimists and QA folks pessimists at heart?' Yeah. On the bright side, sometimes many malfunctions are symptoms of the same bugs :-)
Sat 08 Nov | M | Lucky for you the decision on who is right is a strategic one left up to your able management. Of course, it helps to work on your case.
Sat 08 Nov | Norrick | The fact that two members of a product team have such wildly divergent opinions on the product's state of completion tells me that your spec is not detailed enough.  If it were, comparing the completed work to the spec would reveal exactly what remains to be done.
Sat 08 Nov | Mike Treit | Norrick, the spec won't tell you how long it will take to stabilize the code. The diverging opinions might come from the difference between how long it will take to get code complete (all features implemented) vs. how long it will take to actually ship (all major bugs found, triaged and fixed.)
Sat 08 Nov | christopher baus (www.baus.net) | The major features are in. It is just after putting the features in you realize that the either performance of the feature is not acceptable, or a database handle garabage collection thread occasionally aborts the application, or some portion of the macro engine doesn't work with specific graphic types. You usually don't put bugs in the spec. My theory is that certain bugs can look much worse than they actually are. A really sinister, difficult to fix bug, might be difficult to reproduce, yet a easy to fix bug might effect the application at all over place and give the impression that the application is in poor condition.
Sat 08 Nov | Julian | It sounds like a communications breakdown. It's possible that QA found some serious issues but haven't told you. Or, they're worried about something that's easy to fix. Have a face-to-face conversation and figure out what's going on. The other possiblity is differing standards regarding the quality necessary before releasing. If months of testing without finding any bugs are viewed as mandatory, it will take a year to ship.
Sat 08 Nov | Chen | Please fix your server 'This is your custom 404 'Not found' Error page. This page is displayed whenever a file that a web browser requests is not found on your website. If you would like to change this page, edit the file '404.html' in your 'www' dir. Important!!!! If you use Microsoft Internet Explorer, please read this important article about '404' pages. It will save you a lot of frustration! ' Force IE5 to display your 404 and not its own You may also wish to read this article: click here for Microsoft Knowledge Base article
Sat 08 Nov | Chris Tavares | If your experienced QA person thinks you're a year away from shipping, LISTEN TO HIM!!! Go talk to him, tell him you've heard this, and ask him what he thinks needs to be fixed. It certainly won't hurt to ask, and you may find out something you didn't know.
Sun 09 Nov | christopher baus (www.baus.net) | I think the 404 error is really a bug in Joel's URL recognition. It includes a comma as part of the URL. http://www.baus.net/archives/000012.html
Sun 09 Nov | christopher baus (www.baus.net) | Chris, I just found this out on Friday, again indirectly. I am going to find out what his concerns are on Monday. My feel is the bugs look worse to QA than they actually are. They 100% black box testing. I wish we could budget in a white box tester, but that seems unlikely. christopher
Default language for homepage? | Fri 07 Nov | JD
I just happen visit Nero Burning Rom Softwares homepage. http://www.nero.com To my surprise, I found content in language (de - Denmark?) which I dont understand. Then I saw International link on Top, I clicked on the same, was greeted with another page where I had to select between 1. Great Britain English 2. USA/Canada Version 3. ?? German Version ?? and finally I reached the English version of Nero homepage! Phew! I was wondering what made Ahead Software (Creators of Nero) to make De as their default language rather than English. To my knowledge Nero is EXTREMELY popular software and I am 100% sure that number of Nero users speaking English will be far greater than any other language. I find it extremely stupid to see some other language as default language for Nero homepage! What say? JD
Fri 07 Nov | Robert Jacobson | I just visited the link (for the top-level page) and was redirected automatically to the US-English page: http://www.nero.com/us/index.html Maybe it's a browser issue -- I'm using IE 6 on Windows XP. Also, FWIW, de = Germany (Deutschland.)
Fri 07 Nov | ktm | .de is germany. the company is based in germany (which you could figure out by looking at the about link) when I go to www.nero.com, the content is in english. what are you talking about?
Fri 07 Nov | Q | Interesting.  It comes up german for me and my language preferences are definitely set for english.  I'm guessing they use some regional ip check rather than read the http header preferences.
Fri 07 Nov | Frederic Faure | It depends : Some web servers rely on the languages set up in the user's web browser. Others depend on the IP address used by the client host, with the occasional screw-up.
Fri 07 Nov | www.marktaw.com | JD - where does your IP address say you are? Are you surfing through a Proxy of some sort? Maybe it was the referring URL that shuttled you off to the German version of the site, or your cracked version of the German version of Nero. (just kidding)
Fri 07 Nov | JD | That's interesting to know. No, I do not use any proxy server [Other sites like Google and php.net recognizes correctly that I am browsing from India] neither I have cracked any version. I also use Windows XP - IE 6.0.2800. So if they are using some way to figure out which language to use for homepage, they should MAKE SURE it's fool proof! JD http://jdk.phpkid.org
Sat 08 Nov | Tarun Upadhyay | Ahh that explains it. You are from India !! They probably have one redirection for users from USA and a few others for countries with higher number of users. To everyone else, including India, they probably direct to the their default page and ask you to chose the language. That makes sense.
Sat 08 Nov | Stephen Jones | I've just called for www.nero.com from Saudi and the page came up in Engish. Maybe they looked at the UK keyboard. Possibly there is some automatic rerouting goiing on. Try again and see what happens.
Sat 08 Nov | JD | I am not sure if they have policy like, if you are from USA/Canada, you will be served page in English. Otherwise in German. And if that's the policy, it's pretty stupid! And I tried to access page number of times, EVERY SINGLE TIME, they sent me to german page. At least they should have used some cookies to know that I prefer to use International version and serve me the same. JD http://jdk.phpkid.org
Sat 08 Nov | NeroIndia | Directs to the English version for me. I'm also located in India and using a local ISP.
Sat 08 Nov | Stephen Jones | I suspect you went to the German page accidentally the first time and it set up a persistent cookie that continues to direct you there. Try deleting all cookieis for the site and go there again.
Sat 08 Nov | JD | Hi Stephen, I checked Cookie details using bookmarklet found at http://www.squarefree.com/bookmarklets/misc.html . There are no cookies set by domain. This is getting more and more interesting. JD http://jdk.phpkid.org
Sun 09 Nov | Stephen Jones | What URL are you accessing?
Sun 09 Nov | JD | I am opening browser window and just typing www.nero.com And it ALWAYS goes to http://www.nero.com/de/index.html and I wonder why... Btw, my IP starts from 61.95.*.* JD
Sun 09 Nov | Stephen Jones | Auto complete. Turn it off.
Google & .NET | Fri 07 Nov | NC
Just venting some frustration here. Does anyone have any idea why Microsoft would choose a name for a product, .NET, that you cant search for on Google? How do I find articles related to .NET, and not every page that has net somewhere in the text? If Im missing something obvious, feel free to wound my pride.
Fri 07 Nov | Robert Jacobson | It's a major annoyance. My trick: most articles on .Net will either be discussing VB.Net or C#, so I use a query like: Foo 'VB.Net' OR 'Visual Basic .Net' OR 'C#' Where 'Foo' is the main search term. If you don't want to type that all the type, you can bookmark a Google results page with the boilerplate in the search field.
Fri 07 Nov | Walt | I encounter problems with Google any time I want to use puctuation. Sometimes I want to find a specific string with periods and commas, but Google won't give it to me. It's not MS's naming problem, it's Google's deficiency of searching puctuation.
Fri 07 Nov | obvious | Perhaps because .net is so much hype and vapor, MS wanted to make it difficult for you to ascertain that by Googling.  Now they want to buy Google.  Hmmmm...
Fri 07 Nov | no name | searvh for "dotnet"
Fri 07 Nov | NC | using VB.NET, or dotnet are good ideas, but in this case I wanted something a bit more general; anything to do with Navision and .NET. Perhaps it is a Google deficiency, but Microsoft should've known it would be an issue, and accomodated somehow. I can only assume that for some reason they desired this. Then again, this is the same company that let their co.uk domain lapse ;-) Beats me.
Fri 07 Nov | somebody | I agree that this is a Google deficiency. They seem to have decided that many features of the English language are superfluous (such as punctuation, capitalization, and certain words). Very annoying for a variety of searches other than .NET. I don't seem to be having any problem getting relevant results by searching for Navision and .NET. Interestingly, Google claims that 'and' is unnecessary yet returns entirely different results if it isn't included!
Fri 07 Nov | runtime | This is all part of Microsoft's strategy to undermine Google. I remember when Google did not support any punctuation. So you could not search for 'C++'. Google would ignore the '++' and just return pages about C. :-)
Fri 07 Nov | Roose | Also try searching for COM! doesn't really work... The next microsoft technology should be ecalled www...
Sat 08 Nov | Xxxxx Xxx | Or 'sex', the most common search term on the Internet. :-)
Sat 08 Nov | fw | >It's not MS's naming problem, it's Google's deficiency of searching puctuation. Fine, can you please post exactly how you'd keep the search quality as they are now, and still allow for a search for .net come up. What if I release a product tomorrow called .com, will it outrank all the stories about .com failures, and verisign etc...
Sat 08 Nov | Tim Lara | NC, I think in the case of Navision and .NET, the bigger problem might actually be that there doesn't seem to be much useful information about Navision online anywhere, at least not in English. I have yet to find anything online about Navision other than extremely high-level marketing fluff. I am starting to get the feeling that this could be by design because it seems that a lack of publicly available technical documentation would be a huge advantage for all the expensive VAR contractors out there selling Navision solutions, since they don't really want customers to be able to figure out things for themselves...
Sat 08 Nov | Greg Hurlman (blogs.squaretwo.net) | I rarely find anything about .Net answered via a Google web serach that isn't just a web-enabled copy of the newsgroups.  With a Google Groups search, I just tack on "group:microsoft.public.dotnet*" to grab all of the .Net-related groups... works like a charm.
Sat 08 Nov | Steve | > Fine, can you please post exactly how you'd keep the search quality as they are now, and still allow for a search for .net come up. What if I release a product tomorrow called .com, will it outrank all the stories about .com failures, and verisign etc... If it has a higher PageRank(tm), then yes, of course.
Sun 09 Nov | fw | >If it has a higher PageRank(tm), then yes, of course. What an ignorant reply. No, sorry, tell me how you fiter.
Kylix development abandoned | Fri 07 Nov | John
Borland announced that there wont be any updates for Kylix in 2004. http://www.linuxworld.com.au/index.php?id=122384005&eid=-50 This tells us a lot about Linux. It tells us that it is unlikely for commercial applications to succeed on Linux. So, on Linux there will be 2 kinds of work: - write code for free - tech support for existing code Please, kill me now!
Fri 07 Nov | Johnny Bravo | There have been no spaceships flying to the moon in the last three decades. I guess sooner or later the lights will go out on the moon.
Fri 07 Nov | Agree with your conclusion but not how you got there | 'It tells us that it is unlikely for commercial applications to succeed on Linux' Yet another case where Logic should be taught every year all the way through high school.
Fri 07 Nov | RocketJeff | Take the experience of one poorly done but expensive development tool and extrapolate that to all software. Right... (note to Delphi fans, I'm talking about Kylix being poorly done - Delphi on Windows is an excellent product, Borland just did a bad job of the linux version)
Fri 07 Nov | MSHack | It may also tell us: - Borland is doomed because they could not produce a product people wanted to buy. - Kylix was such a bad name no one knew what it was. - Linux developers are as picky as Windows Developers when it comes to paying for software - Delphi on Linux was never going to happen and there are better C++ IDEs - Borland made another bone head business move - Anyone can make sweeping and irrelvant statements base on a single event. It is time to face reality. Linux is not going away. As an MS developer though, I do not see my life ending as Linux expands. I may need to learn new skills, but guess what, I have to when MS releases their next version of anything. (Ask the VB to VB.net people)
Fri 07 Nov | Dennis Atkins | > There have been no spaceships flying to the moon in the last three decades. What about the Lunar Prospector? http://antwrp.gsfc.nasa.gov/apod/ap980306.html
Fri 07 Nov | Dennis Atkins | Regarding Kylik, I agree with the original poster. 'If only a big name development company would make great development tools for Linux wue would all buy it' the masses shouted. So Borland (you expected microsoft to do it maybe?) did just that. Result -- no sales. What does that tell you?
Fri 07 Nov | NC | How well does Trolltech (QT) do? I have no idea, but I think they sell primarily for Linux UI development.
Fri 07 Nov | Agree with your conclusion but not how you got there | Dennis, bad logic. Maybe it occured to you that the 'community' didn't think Kylix was that great of a tool?
Fri 07 Nov | RocketJeff | >> What does that tell you? That Kylix was overpriced at $1500 and has way too many bugs. The 'masses' didn't say 'give us an overpriced and buggy tool and we'll buy it.' Give them some credit for having common sense and not saying 'It's complete crap but we'll buy it anyways.' Kylix only ran well on one version of Red Hat Linux, and was only available for x86 machines. It is hard/impossible to install and run on Suse, Debian, or any of the other distributions, including current versions of Red Hat.
Fri 07 Nov | Brian McGroarty | I'd venture a guess that Borland's penetration among Linux commercial developers was about as healthy, percentage-wise, as their penetration among commercial Windows developers: they're not doing so hot there either.
Fri 07 Nov | windows hacker | The last time I had to do Linux development, I used a product called "KDevelop".  Don't know if it's still around or not but it reminded me of visual studio & I was up & running with it, and being productive, in minutes.  And it was free.
Fri 07 Nov | John | Aww, c'mon ... I used KDevelop, too ... it's no match for Delphi!
Fri 07 Nov | Dennis Atkins | Hm, you guys could be right. Given the price, one would expect miracles, but if there was stuff that was already better for free, then there's no point. Also, given the number of distributions', combined with the lower marketshare than windows, it was that much harder to break even while maintaining the program costs that much more. I guess the lesson is that there's little incentive to create commercial software for Linux when there's everything you could want of decent quality for free.
Fri 07 Nov | windows hacker | Well John, I should add that I spend about 95% of my time using C++, and the layout is very similar to visual studio, so it wasn't a big stretch. Dennis, I think you're right: Who wants to pay for an app when there's quality free versions available. That's why I hate the open source movement, yet love CodeProject.
Fri 07 Nov | John | Well, 'windows hacker', I work with both Delphi and Visual C++. Delphi is heaps more productive than Visual C++. Also, it doesn't suck like VB - you can do anything, call Windows API, etc.
Fri 07 Nov | John | I mean, in Delphi I can call Windows API without having to import the function yourself from a Windows DLL. There is simply no comparison between Delphi's productivity and Visual C++'s productivity.
Fri 07 Nov | windows hacker | Cool.  Language war troll.  It's sooo usenet of you.
Fri 07 Nov | Sunish | Is Novell doomed with Linux ?
Fri 07 Nov | John | I don't care if my message is a 'troll' or not. I care if my message is true or not. And, as far as I know, it is very true. Now, go ahead and interpret it as a 'troll' - I don't mind.
Fri 07 Nov | Ged Byrne | Commercial applications cannot succeed on Linux because of the cool free tools available? Every decent Linux tool get ported to Windows, so how come theres still a thriving market there? I remember getting junk mail from Borland declaring Kylix as 'Visual Basic for Linux.' Kylix failed because it was a poor quality product, plain and simple.
Fri 07 Nov | Mitch & Murray (from downtown) | Kylix was a POS and DOA. I am sure there is some area for commercial apps to florish on Linux. Development tools in general, and Kylix in particular, is not one of them. A pox on the house of Borland for (1) pricing Kylix so high, (2) not updating it as needed to fix bugs and run on the mainstream Linux distros that have been released since the last release of Kylix, and (3) being so out of touch that items #1 and #2 were allowed to happen. What a bunch of complete dopes. Want a Borland wake-up call? Just listen to the archived quarterly earnings teleconferences that Borland management hold for Wall Street analysts. Borland has been losing their ass the last several quarters, and the Borland talking heads don't seem to have a clue - blame this guy, blame that guy, ... HEY GUYS - FIX YOUR STUFF AND WE'LL BUY IT AGAIN. The suits don't get this of course. You think the Kylix fiasco was a stink? Just wait - JUST YOU WAIT - unitil Delphi .NET (aka Delphi 8) hits the street. Turds in the punchbowl all around. You heard it here first.
Sat 08 Nov | ChrisO | 'It is hard/impossible to install and run on Suse, Debian, or any of the other distributions, including current versions of Red Hat. ' - RocketJeff Could this explain why Linux development will never take off? If we have to make a seperate version of our apps for each and every linux distro then Linux is in a very sad state. - This may be fine for the corporate developers that can dictate (or know in advance) what distribution their users will be using, but for ISVs like my company this isn't possible. (NB: I have only installed linux 2 or 3 times and not used it extensively, so I am basing this purely on RocketJeffs post and the fact that I respect Borland as a fairly capable company and if they failed in this 'cross-distribution' development, then that doesn't speak to well for the chances for smaller companies to succeed in the same field.)
Sat 08 Nov | Mister Fancypants | Yeah, Kylix sucked, but commercial application development on Linux is still stillborn and this trend shows no signs of changing. 
Sat 08 Nov | windows hacker | We thought about distributing a Linux version of our application, but the amount of work required to get it out the door and support it thereafter was prohibitive.  About the only way to have a product that would easily install & run on all the different brands was to distribute the source and have people use autoconf & make - something we weren't willing to do.
Sat 08 Nov | Bored Bystander | On the binary incompatibilities of various Linuxes... It seems to me that the Linux culture is based upon everything that you install on a Linux system being in 'make'able packages and therefore, almost nobody installs binary images onto Linux of software that they didn't build themselves. Therefore, there has never been the discipline in the Linux camp of having to conform to binary compatibility. You build the tarball and it compiles and inhales in all the library references it needs for the Linux that is building it. This also means, of course, that 'all' software in Linux land is 'supposed' to be distributed as source code. So I wonder if Borland, as well as anyone else trying to resell Linux software, ever considered any of this as problematic?
Sat 08 Nov | Brad Wilson | Even distributing as source doesn't cut it sometimes. Miguel de Icaza of the Mono project relived some of the compatibility horrors they've had with Mono Evolution, the installer for which downloads the source and builds itself (as I recall). Even so, they had a lot of compatibility problems from distro to distro, and even from version to version of the same distro. They are devoting significant effort to both API and ABI compatibility with Mono. That fact alone may make it the most attractive commercial development environment for x86 and PPC Unix-alikes.
Sat 08 Nov | Clay Dowling | First I'll say that I'm a huge Borland supporter, and also make significant use of free UNIX. In fact, most of my income comes from working in those two areas. All of the free UNIX implementations, not just the various Linux distributions, are screwing the pooch as far as traditional desktop applications go. Desktop apps rely on a windowing system of some sort to be competitive. Herin lies the Achilles heel of all free UNIX. There's lots of choices for window widget libraries. Each is a massively complex pain in the tail to install, and all of them are broken in some way. Upgrading is nearly impossible; it's easier and a lot more sensible to wipe out everything associated with X windows and make a clean install. Even then, it will be hard. I know because I've done it a few times. So with this very non-functional model for doing a graphical user interface, anybody hoping to develop commercial, binary distribution desktop applications is pretty well screwed. As a previous poster mentioned, even doing source distributions is hard, partially because source code compatibility between versions is pretty scarce. This doesn't mean that free UNIX is a no-win situation. AbiWord, for instance, is a magnificent desktop application, as is The Gimp. Using a web interface for the GUI is also a really nice way to go, when the application will let you (which frequently it won't). So I don't predict any great revolution in desktop applications, and I'm not suprised that Borland failed. It was a noble effort though, and I'll continue to use their development tools whenever I can.
Sat 08 Nov | Ron Porter | 'Kylix only ran well on one version of Red Hat Linux, and was only available for x86 machines. It is hard/impossible to install and run on Suse, Debian, or any of the other distributions, including current versions of Red Hat.' Wasn't one of the original goals to put an end to the fragmentation that made UNIX such a nightmare?
Sat 08 Nov | Albert D. Kallal | Gee, I started reading this thread, hoping to find out why Kyle did not seem to fly. There seems to be two reasons: 1) not very good product 2) not available, or consistent for each Linux dist. I can’t ever say that as a general rule I heard people bashing, or stating that Kylix was not good. (perhaps only MS haters are vocal!). Is the above “not very good” the real reason here? I mean, we really do need a good RAD tool for Linux. The market is quite good at sorting this stuff out, and surely there is a need for a good rad tool in Linux. Perhps the desktop develpment market for Linux really does not exist. I have been meaning to look for a good cross platform for windows/Linix. It would naturally seem that Kylix is the ticket here...what the heck happened? I was also under the impression the Delphi=Kylix. The only difference being the platform. That being the case, then why not develop with Delphi, and then simply move the application to Kylix and re-compile? Was this not one the ideas, or promises of using Kylix?). Again, what the heck happed here? Albert D. Kallal Edmonton, Alberta Canada kallal@msn.com http://www.attcanada.net/~kallal.msn
Sat 08 Nov | Jim Battin | Commercial Linux vendors have been taking steps to standardize their distributions, so I think the whole distribution compatibility matter is becoming a thing of the past. I've used VMware across Red Hat 8, 9, SuSE 8, and Debian 'sid' without issue, so I have hope things are being sorted out. Biggest compatibility concerns (IME) seem to be: -Libc version -DE/GUI toolkit API and version (KDE/QT, Gnome/GTK, etc) -Kernel version (if modules are required). The kernel lacks a consistant device driver API. -Package distribution: associated dependency issues when building them. If you're smart about it, you can avoid this pitfall. -If you distribute source, you will come to realize that autotools aren't so great. The GNU autotools either need to be massively reworked or replaced with something better.
Sun 09 Nov | Brad Wilson | 'Wasn't one of the original goals to put an end to the fragmentation that made UNIX such a nightmare?' No. Linus' original goal was to re-create Minix, but with source available.
Sun 09 Nov | HeWhoMustBeConfused | The problem with widgets, drivers, etc., combined with the X-Windows stupidity that seems embedded in Linux forever, is the major impediment to desktop acceptance. Compared to a Windows environment on an equivalent configuration, X SUCKS. And I don't want to tell you what I *really* think :) You won't get good, commercial RAD until there is a stable and desirable desktop environment for its development. This was the core of the Kylix problem. It felt like one of those PC products ported to Macintosh, which retained the PC feel. It crashed too often, and wasn't able to be run as the various (fragmented!!) portions of the operating environment were upgraded. Borland deserve credit for trying, but condemnation for not trying hard enough. Linux also deserves blame for being an unco-ordinated pile of crap masquerading as a competent desktop environment.
Sun 09 Nov | Enjoy Cocaine | Borland made two mistakes: 1. Name Delphi with unpronounceable K*!%x. Yeah... it must be similar (but it's just similar, nothing more) to Linux. 2. Instead of bringing Delphi for Mac OS X, they did it for Linux. They could've done it for Linux too, it would be nice-to-have. But, it seems Borland marketing was making decisions by reading way too much slashdot where the posters (mostly) have not the faintest idea of real world problems and have enough time to wage a war for or against Linux (or Microsoft for that matter).
Sun 09 Nov | andrew m | 'If only a big name development company would make great development tools for Linux wue would all buy it' the masses shouted. So Borland (you expected microsoft to do it maybe?) did just that. Result -- no sales. 'What does that tell you?' It tells me that marketing departments are entirely composed of morons. It also tells me that anyone who thinks that the performance of a business plan based on that idea is an accurate guide to the performance of business plans based on accurate information is equally intelligent. Here's a more accurate version of that statement: 'If only a big name development company would make great development tools (where 'great' includes 'does things we simply can't do for free already') for Linux some of us would buy it' the masses actually thought. Furthermore, real sales were likely to be to professional developers, rather than amateurs, who will have significant incentive to not change langauge and development environment at one time, and thus would be likely to pay for a quality GUI designer and IDE that uses their existing compiler, but would not pay for an entirely new language and development environment. An IDE that requires the use of nonstandard extensions to the compiler, or a compiler for a proprietary language, is unlikely to succeed. The most likely people to pay for a commercial development environment were the ones who, due to the choice of language, were the least likely to actually pay for Kylix. This isn't because the language is bad, but because it was new to Linux - and existing Linux developers don't use Delphi. Porting Delphi to Linux was doomed from the start. Porting the IDE to Linux and adapting it to use the gcc compiler could have worked, and would have provided a base from which to develop a Delphi compiler that could use that IDE.
Copying Software Ideas | Fri 07 Nov | Guyon Morée
Just wandering about this... Lets say I was able to create something very similar to Citydesk. The only thing different are the some gui-elements, but besides that its the same.... How (il)legal will that be? ps. no... i am not doing this :)
Fri 07 Nov | Tim Sullivan | If you're writing it from scratch, there isn't anything legally stopping you. See: Apple v. Microsoft, Lotus v. Borland.
Fri 07 Nov | Patrik | Exactly mimicing exact functionality is not against the law. Stealing code is. Compaq got away with this when they did the first BIOS implementation for their PC clone.
Fri 07 Nov | name not available | don't just rewrite it, add your own ideas as well. make a good competition for fogcreek. in that case they will respect you, and won't delete this thread :)
Fri 07 Nov | Tom Vu | do you think citydesk or fogbigz was an original idea?
Fri 07 Nov | www.marktaw.com | Joel was very aware of Ethan Winer & Frontier / Manilla / Radio, but I have to say CityDesk is a pretty novel idea. As far as I know, there are no other players in the desktop content management space, otherwise we'd be talking about cloning CityDesk and/or something else. Fogbugz does look like 'yet another bugtracking software package,' but Philo tells us it's very good.
Sat 08 Nov | H. Lally Singh | Macromedia Contribute?
Sat 08 Nov | Jarred | I doubt that City Desk makes significant money.
Sat 08 Nov | windows hacker | 'no other players in the desktop content management space' Dude, google is your friend. There's a ton of products out there. Even some that work as a desktop app that ftps to a server. No one owns the space though.
Sat 08 Nov | Tim Sullivan | Jarred, Fog Creek is able to pay some impressive rent, do renovations and keep a number of staff members paid with FogBUGZ and CityDesk. I suspect they're doing alright.
Sat 08 Nov | www.marktaw.com | windows hacker, I don't doubt that there are programs out there that can be run from the desktop and programmed to FTP files up to your server, but I haven't seen a lot of products that really 'occupy this space,' as you say. DMOZ / Google pointed me to this page: Computers > Software > Internet > Site Management > Content Management > Desktop Applications (11) http://directory.google.com/Top/Computers/Software/Internet/Site_Management/Content_Management/Desktop_Applications/ Manilla I mentioned, Globescape requries a server install, Cyberteams has no product information and crashed my browser, EditLive! looks like it might do this, but I'm not sure. Those are the products mentioned above CityDesk. I know someone who configured PHP Nuke to produce static HTML pages and FTP them, but that's not exactly how it's supposed to be used. I'd definately like a look at anything you'd have to offer.
Sun 09 Nov | mb | Movable Type (and probably a bunch of other blog software) could also be used this way--run local, then mirror the resulting pages to the server. You could even imagine building an installer which packaged it up with a mini web server + ftp synchronizer, which is what Radio Userland is. But that's not the target market.
Is Linux more Secure Than Windows? | Fri 07 Nov | Joel Spolsky
This topic is a preemptive haven for people whose immediate reaction when asked how to build a reliable Windows server is "Use Linux." Thank you dear. Tell me why here, and use the other topic for talking about what I asked about.
Fri 07 Nov | Wayne Earl | OS-religion issues aside, as someone who worked as a sysadmin for close to 10 years, and works with both Linux and Windows servers on a daily basis, I would say that neither is more secure than the other, 'out of the box'. No system is secure when first installed. That being said, Linux is more capable of being secured - it's configuration is less opaque and kernel and user space are better segmented from each other. The fact that it comes from a unix design heritage (as opposed to the desktop single-user model that Windows has evolved from) leads to much better system administration tools and practices. Computer security is really the act of progressively raising the bar to protect the system from compromise. No system can be provabily secure. Under Linux, I can raise the bar higher, making compromise much more difficult, in less time, with less effort, and less cost than under Windows. I can say that Linux is demonstratibly more stable a platform than Windows, and I say this with far, far more Windows admin experience than Linux experience. Windows is a very, very complex platform to administer - the simple interface masks a great deal of complexity, and creates the illusion of ease of use. Many solutions to system problems don't lend themselves to logical deduction - they are single solution problems that are solved by following Microsoft kb articles. Complexity is the number one opponent to security. With Linux, you can strip the system down, so that it does one thing and one thing only. Under Windows, this is very difficult, if not impossible to do. For this reason alone, Linux is much more securable than Windows.
Fri 07 Nov | Alyosha` | That was an insightful, reasoned, and fair treatment of the two operating systems. I don't want to see any of that here again ever.
Fri 07 Nov | just watching | Topical (CNet): An unknown intruder attempted to insert a Trojan horse program into the code of the next version of the Linux kernel, stored at a publicly accessible database ... only developers who used that database were affected--and only during a 24-hour period, he added. http://news.com.com/2100-7355_3-5103670.html?tag=nefd_top
Fri 07 Nov | Steve | Insightful? 3 paragraphs of fanboyism without a single fact to back up a word he says? Insightful on slashdot maybe.
Fri 07 Nov | Wayne Earl | I think you missed the point. My post was to state that in my opinion, Linux is more 'securable' (that is: better able to be secured) then Windows, not that it is more 'secure' I base my opinion on my own professional experience of administering significant numbers of systems of both OSes. Each type of system has it's place - use the one most appropriate for the particular problem you are facing. Base your decisions on the facts at hand, rather than OS religion. In Joel's case, if he has to personally admin the system, then Windows is almost always the correct choice, simply because of his level of expertise with the platform. Admin experience is a significant factor in determining the appropriate platform to run the task at hand. On the other hand, perhaps I was trolled by a Disciple of Bill. Not all zealots read Slashdot or use Linux. :-)
Fri 07 Nov | no name | just watching - yeah. Makes one wonder a - if it has ever been done before (if so it hasn't been detected) b - if something similar has ever been done to Windows (you'll never find out)
Fri 07 Nov | Glyph Lefkowitz | Personally, I prefer Linux, but I think that any admin worth their salt will tell you the same thing about security: you have to keep up with patches or your system will be compromised. The question is: how do you make that maintenance cost low? Joel: if you want to administer a Linux server without having to mess around with the usual garbage associated with re-compiling and re-installing system services, might I recommend http://www.debian.org/ ? Debian's update system is automatic, free, reliable, fast, and (if you use the 'stable' distribution) designed *specifically* for administrators who don't want to spend a lot of time messing around with running systems. The caveat is that the system can be quite difficult to install initially, especially if you have esoteric hardware. However, beyond the initial installation, *no* upgrade (barring the use of new kernel features) should require re-installation or downtime. I have been using the same installed image continuously for almost 5 years now, and I've twice duplicated the system by copying the drive onto another machine and tweaking a few system settings, then upgrading or installing new packages. In fact, you can totally automate the installation of security patches. Debian comes by default configured to install security updates, so if you tell a 'stable' machine to 'apt-get update && apt-get upgrade' on a nightly basis, it will get any new security updates and install them while you sleep. (Understandably, you may want to be present to observe this process. In practice, however, I have never seen a security update fail.)
Fri 07 Nov | Martin A. Boegelund | Cool, a Joel-Troll! Now I've seen everything! When answering the question '(why) is Linux more secure than Windows?' you will have to define what Windows is, and what Linux is. These systems are in a constant flow of change and highly configurable, and it only takes 1 'insecurity' to make the system as a whole vulnerable, so when you finally finish defining what you mean by 'Windows' and by 'Linux' and ask the 'why..?', you will get answers that will include new vulnerabilities and new patches that emerged after your definition was completed. So the short answer to '(why) is Linux more secure than Linux' is: Don't ask! Nobody will actually tell you why, but you will still get a million answers, and the most usable answer will probably be: Don't ask!
Fri 07 Nov | Li-fan Chen | Probably depends on the software you are trying to deploy. If the software is backed by simple 90s stack (webserver<->major language<->database<->os) then I suppose going with you are competent with. If it takes you N hours to figure out how to get Perl to filter out malicious sql text out of dynamically created insert strings. But it takes you 15 minutes to figure the same thing out in VB.Net.. it's no competition. Why N hours? It probably takes the same 15 minutes to translate the regex, but can you determine for sure the behavior of your Perl's regex in the face of other (like ones that forces your regex engine to hang itself parsing forever) attacks? Which regex engines do you know best? Maybe you happen to know vbscript's regexp engine inside and out and happen to know how to work around the issues better than you know Perl's. It works the same the other way around. Know BCP and DMO is blazing fast for exports? How do you do that with Postgres? Love Apache's mod_rewrite? How do you do that properly with asp.net and IIS6? An admirer of OpenBSD's security audits but uses windows? Can you find someone to make time to read a good book on ISA Server/Checkpoint and a good book on Windows Internals? Are you ready to dig into registry and reorder TDI drivers? So in my opinion, It really depends on where your competence rest. And what problem you are trying to solve. You mix that with the project limitations and you should get something figured out. I think some of us here are too quick to make fun of Wayne.
Fri 07 Nov | fw | Look, userland and kernel are different. If everybody was to count the number of problems on anything that ran windows, that would be different. Remember, linux is just a kernel, most problems they are counting are in the userland, should I count one for windows if I make a c program that uses strcpy for input and I can overflow the stack? Anyway, anybody can quote numbers until the cows come home. Use whatever you are happy with.m
Fri 07 Nov | Lennart Fridén | 'No system is secure when first installed.' Secue as in 100% secure is an unobtainable dream, but some default installs are more secure than others. For that very reason I've chosen OpenBSD to power my server. That the install isa breeze and comes with almost everything I need AND nothing more than that (no, not 1005 pointless image viewers, not 567 text editors, not 382 window managers, and not 47 implementations of ping) is a huge plus as far as I'm concerned. Less is truely more in my case. essentially, if you need a server and aren't going to limit yourself to MS-only products - do yourself a favour and have a look at the BSDs and not only Linux.
Fri 07 Nov | christopher baus (www.baus.net) | I'm thinking about this transaction log shipping thing. I don't care how much you patch. You are crazy if you open 1433 toward the internet. You're just asking for trouble. Three words. VPN, VPN, VPN...
Fri 07 Nov | Esteban Manchado Velázquez | Just a note about Debian security updates: Glyph, you say you can totally automate security updates. Somehow it's true, BUT I don't think it's a very wise thing to do. Sometimes you have to restart some service linking to an updated library, or you have to check something. Anyone using Debian security updates should read the DSAs (Debian Security Advisories) before upgrading, for at least two reasons: 1) You could find valuable information about the upgrade, as things to do before/after it. I admit that most of the times you have to do nothing, but anyway... 2) Reading security advisories makes you learn about your system. And that is good (at least, from a security point of view). A random Debian Developer,
Fri 07 Nov | Laszlo Marai | I would also suggest Debian (or any other Linux distribution with frequent security updates) if you wanted a (Linux) system that is easy to keep update. With Debian, the announced security holes are fixed typically in a few (usually 1) day after the patch is available. The patches for the programs are also published very quickly (say usually in 24 hours after the discovery of teh bug) by the developers. This means that on the avarage you'll have a patch in 2-4 days after a bug has been announced. Now copmare that with windows: 2-3 SP/year? The installation is also quite easy with Debian - two commands issued on the command line. Now compare that with windows: you download the patch for a certain application for the website of the vendor(*) using a browser, then you click on the icon, then a GUI starts, then you click 'Next>>' a few times, and in the end you most probably have to restart (or not). (*): Let's don't forget, that when we refer to Linux, we usually mean a distribution, which contains all the software you need to run a server (if you are luck enough - Debian has more that 9000 software packages). At the same time, you have to acquire the needed applcations separately for windows, which means that probably you also have to look for the patches at different websites.
Fri 07 Nov | Laszlo Marai | Oh, and one more thing - I don't want to convince you about using Debian, or linux, where I was trying to get at is that you might have had a hard time with linux, because you didn't use the right tool/distribution and yopu shouldn't judge based on those experiences.
Fri 07 Nov | Philo | Laszlo, I'd recommend you not speak of that which you don't understand. Windows hotfixes come out every few weeks. Security hotfixes are generally available within a week of the announcement of the vulnerability, and *obtaining* and installing a hotfix for Windows is five mouse clicks (I just counted - did an update while typing). As for automatic update services, I'd have to seriously question a sysadmin who allowed automatic updates on their server. Philo
Fri 07 Nov | Stephen Jones | I've just been updating the laptop, as holiday time is coming up again. I went to Office updates. To download the MSDE security patch I first of all have to go from Windows update to Office update, then install everything else, reboot, and then go to Windows Update and Office update as well. I then get click a couple of times, and click on a button called install. After half an hour I check to find that the button called install has taken me to a page which tells me I'm on the wrong MS site and has a link to another SQL page. There are various links on that page and I click on the likely one. A few minutes later I check progress to see that the link has sent me to an error message. I go back, down the page, and start to install the full SQL .exe. I then go back, and read more carefully; for the fun of it I click on the link I got the error message on before and this time it takes me to the right page. I abort the other installation and click on the other link which then starts the 11MB download, which it appears doesn't actually check if you have anything that needs patching until you have downloaded the same patch. Yep, just like you Philo, I install MS security patches while typing. This no doubt explains why both of us have hundreds more posts than most other frequent posters :)
Fri 07 Nov | fw | >Security hotfixes are generally available within a week of the announcement of the vulnerability, and *obtaining* and installing a hotfix for Windows is five mouse clicks (I just counted - did an update while typing). One week? and you find this acceptable? To be vunerable for a week?
Fri 07 Nov | fw | vulnerable even
Fri 07 Nov | Portabella | Security is a topic where there are no saints. Look at the OpenSSH exploits for example: this is open source, and a lot of the developers and architects are crypto-weenies, and *still* we have new exploits, and 'do not use *any* version older than....' warnings. So, my claim here is more in the nature of an anti-claim: we cannot establish who's the 'most secure' by using a has-no-security bugs criteria. We also cannot establish it by using the severity of bugs.
Fri 07 Nov | Bah humbug | 'Now copmare that with windows: 2-3 SP/year?' Obviously not a Windows admin. Wednesday is patch day at Microsoft, and there are new 'critical' security patches to apply every week, along with many others. If you are maintaining more than one or two computers, this gets old very fast, especially since every patch needs to be researched and tested to make sure it doesn't break mission-critical software x. Realistically, once a week is about as much as anyone can keep up with. Being vulnerable for a week is not the end of the world - and applying a patch that's going to break things is much worse. Historically, most attacks come months after the original patch is released, so if you can keep up to the patch schedule your risk is low enough. The real question is not how many SPs and/or patches are released per year, but how many vulnerabilities are discovered per year.
Fri 07 Nov | Evgeny Gesin /Javadesk/ | Joel, what about your current development/production environment - Microsoft software not run on Lx: no VB, MySQL, IIS, etc. Is your staff know Linux shell and development tools? Linux default installation is not* secure. Your system administrator can create very secure Linux.
Fri 07 Nov | Portabella | > Linux default installation is not* secure. Of which distribution? Mandrake now (since 9.1 at least) has security options for installation. Choose 'Paranoid', and (whilst humming the Black Sabbath tune) install away. RedHat has the same. Or try Trustix.
Fri 07 Nov | Brian | Dell has no interest in taking sides in the OS wars. In fact, they are probably more tied to MS than any other OEM. They're very faithful--they have rarely dealt with a non-MS OS (partially because, unlike HP, Compaq, and IBM, they don't have their own in-house OS) and they have not jumped onto the Linux bandwagon nearly as loudly as others. They're also very monogomous; note that they're the only major OEM that has *never* shipped an AMD system. (Up until last time I checked; don't know if they're doing or will do any Opteron stuff.) They aren't interested in making a point about OS superiority, they just want to make as much as they can from whatever product they sell. So why do you suppose they charge $149 to host a site on Windows and only $129 for a similar site on Linux? http://www.dellhost.com/dhproduct/overview.aspx?segment=dedicated&category=web&sku=d2800 Why would they offer yet another platform to maintain at a *lower* cost? Can't be feaures--the Linux site comes with MySQL and the MS one doesn't have any database at all, not even Access.** Hmm... *scratches head* ** and don't go on about MS-SQL vs. MySQL; I think we can all agree that any database (even the lowly MySQL, which powers Slashdot's ~2 million hits/day) is better than no database at all.
Fri 07 Nov | Brian | >we cannot establish who's the 'most secure' by using a has-no-security bugs criteria. We also cannot establish it by using the severity of bugs. Really? We can't agree that there's a difference between the script-kiddie-launched, self-replicating, network-overflowing MS mail/web/sql virus du jour and an obscure SSH flaw that has to be manually exploited on a per-machine basis? Eh, no reason to, I guess. Bill Gates thinks security is not an OS's responsibility; instead, users (who don't know the difference between a real error message and a web page designed to look like one) should set up and properly configure firewalls, as well as regularly install multi-MB patches over a dialup line. http://www.itbusiness.ca/index.asp?theaction=61&sid=53897 Of course, he forgets to mention that sometimes one patch breaks another, thus adding another layer of difficulty to the question of whom do you trust and when... http://www.siliconvalley.com/mld/siliconvalley/business/columnists/gmsv/5049501.htm?template=contentModules/printstory.jsp But I'm sure they've got that all worked out now. MS would never make the same mistake twice. Oh, wait... http://www.theregister.co.uk/content/6/33814.html
Fri 07 Nov | Nat Ersoz | My experience is that Linux is more securable than windows. 1. Buy 'Real World Linux Security'. The only reference you need to lock Linux up tight. Unfortunately most distros (I'm certain of RH 7 thru 8) deliver X with tcp port 6000 open. Although there may be no known holes in XFree at the moment, X is too huge (and I consider myself rather knowledgeable about X's low level and internals) to be certain that leaving the tcp port open is a good idea. Its not, and should be disabled - especially when you're on the road, connecting to non-firewall protected networks. 2. The heart of Unix security and Win32 security exists in the fact that kernel space can only be accessed by root or administrator authorization. Unix, out of the box, provides a well defined multiuser environment which provides a well defined context with respect to who can install device drivers, who can change permissions, and who has access to what. The FUNDAMENTAL problem with Windows security is that users are accustomed to running administrator privs 100% of the time. This is a 'usability enhancement' which allows users to install any/all programs without performnig the pesky task of swithing from 'my account' to admin, over and over, when you want to install software. Additionally, installing any software, not just user mode software becomes a priv'd task in Windows. Correct me if I'm wrong (for I'm no Win32 expert), but would not a user mode application install have full access to the registry, able to wipe it clean if the app were malicious or poorly designed? Why RealPlayer and Quicktime can 'steal' the file associations at will? The Unix analogy is the /etc/ directory (much maligned by Windows devs/users). However, in Unix, /etc/ is fully protected from access by non-root access (which is all users 99% of the time - it takes a deliberate move to make yourself root). So no matter how malicous or poorly designed the program, if the OS integrity is intact, then no user mode application can corrupt /etc/. System setting remain consistent, and can only be changed by root. 3. There appears only one place for programs to be installed in Windows: the '/Program Files' directory. Out of the box, windows XP gives you only 2 options: the user is admin (can do everything, all the time), or the user is a moron (cannont install anything at any time). There is no differentiation between a user installing a pure user mode application and a device driver No matter how malicious the intent of a user mode app, if the OS is secure and intact, the user mode app can only affect the user that installed the program and the file which he has access to. Not so when you are admin, you can easily and unknowingly destory the entire system. While Win32 maintains a very robust kernel and chacl capability, the security is almost universally overridden by the default installation of assining all users as admin. And this because the usability of windows has not followed the same clean design as the kernel was given. 4. On a corporate network, Windows is hardly remotely adminstratable. That is, for an admin to maintain blocks of machines, all amdin tasks must be made through GUI manipulation. While theoretically possible, it is practically not feasible, to remotely admin windows boxes. You know the windows admin, because he carries CD's and floppies around from desk to desk, installing or upgrading software. The Unix admin maintains cron jobs on his users' computers which poll for updates and install when necessary. A practice which has been useful and honed over decades of use. Yes, windows can be maintained by remote GUI desktops - but again, it goes one at a time. Of all these, the fundamental problem of Windows security is that all users run as admin all of the time. That is the worst and most exploited of all Windows security sins.
Fri 07 Nov | Evgeny Gesin /Javadesk/ | >> Linux default installation is not* secure. > >Of which distribution? >Mandrake now (since 9.1 at least) has security options for installation. >Choose 'Paranoid', and (whilst humming the Black Sabbath tune) >install away. RedHat has the same. Ok, default installation of RedHat gives some basic firewall rules: close* all ports, open some* ports, open all* ports. But that is not enough! I'd like to address you to excellent book 'Building Secure Servers With Linux' by Michael D. Bauer. It worsts money!
Fri 07 Nov | Willie Abrams | Actual counts of security issues and the severity of each issue is my empricial basis for stating that one system is more secure than another. I believe this is the only rationale that will convince you that system ____ is more secure than Windows. How many security updates have you had to install on your Windows servers vs. how many updates do you have to install on other OSes? The answer is probably the only one that is free of religious arguments and personal preferences. Our experience is this: we have two server plaforms in our company that are similar to your situation; SQLServer on Windows 2000 Server and MySQL on Mac OS X Server. Our findings based on my fundamental premise: MySQL on Mac OS X Server is more secure than SQLServer on Windows 2000 Server. We also use MySQL replication and it works very well. (An aside: this reflects our usage of FogBugz. We host the database on MySQL on Mac OS X, while we host the frontend on Windows. We delayed our FogBugz purchase for at least 6 months, because of the reliance of Windows/IIS as the host for FogBugz. This was based on the security issues and problems we had with another application that was (and sadly is) completely tied to Windows Server/IIS and SQLServer.)
Fri 07 Nov | Nat Ersoz | Port State Service 22/tcp open ssh 139/tcp open netbios-ssn 6000/tcp open X11 FYI: A typical Redhat 8.0 distro after a default install, with no hardening. Note: not all ports are open, only the ones which were opted for (mostly). This box should be hardened, if running in 'the wild', by turning off X11's TCP connection (flag -nolisten tcp). The netbios port was intentionally turned on (samba to allow for SMB sharing),but should also be turned off when running in the open. SSH is the only exposed port which should be allowed open when running outside a firewall. Other services can be enabled, FTP server, HTTP server, etc. But the install and config should be specific to a server dedicated to that purpose.
Fri 07 Nov | Herbert Sitz | To preface my comment, I should say that I don't really have much technical knowledge of security issues in Linux and Windows. I do my desktop computing on Windows boxes. It seems to me that at least part of the question over which OS is more secure is unrelated to how secure or securable each OS is. There are many more Windows systems out there than there are Linux systems. It seems to be the case that more hackers write viruses/worms/etc. to attack Windows systems than to attack Linux systems. I don't know whether this is because there are many more Windows systems (and so more havoc for the hacker to wreak) or because the Windows systems are made by Microsoft (and more hackers are MS haters). In the end, though, I don't even think the reason matters. Even if Windows is slightly more secure or securable (on a technical level) than Linux, the number of hackers writing exploits of Windows security weaknesses makes me think I'd be more secure on Linux. Hackers devote more resources to hacing Windows. I'd rather be on a different system (even if slightly less secure) where there isn't as much efforts being devoted to hacking my system. If Linux is as secure/securable or more secure/securable than Windows, that simply tilts the decision even more in favor of Linux. And yes, I do realize that there are plenty of hackers trying to exploit Linux, too. But I very much doubt that their efforts amount to even a small fraction of the efforts being devoted to hacking Windows.
Fri 07 Nov | Portabella | > We can't agree that there's a difference between the script-kiddie-launched, self-replicating, network-overflowing MS mail/web/sql virus du jour and an obscure SSH flaw that has to be manually exploited on a per-machine basis? I didn't mean that there were no differences at all, security-wise... and I agree with a previous poster that a security bug *count* is probably the best way of establishing the differences. Since security is a hot topic, though, there will be all kinds of political arguments over the proper way to count :) I do think your example is a bit specious. What's stopping someone from automating the SSH flaw and distributing it to script kiddies? If the difference is only 'that someone hasn't done that yet', then the claim of better security is on pretty shaky ground.
Fri 07 Nov | S.Kedem | I think you should divide the question into three: 1. What do I need for a dev machine on the intranet ? 2. What should I use for an intranet server? 3. What should I use for an internet server ? And the answers are: 1. whichever OS you like, but update it centrally from time to time and *don't* let anyone from within your intranet computers use internet access (this is not a joke, look at what happened to valve. you can, however, use linux user mode from within such a machine: http://www.gentoo.org/doc/en/uml.xml ) 2. This is a tough call, using windows server in an intranet is pretty nice and fluent as long as you don't try the wacky stuff (workgroup + domains + IIS + apache + MS directory + other file sharing techniques), installing linux requires knowledge but read point 3 and you'll see linux is your only option anyway... 3. As far as I can tell using linux should be the best option for an internet server. I mean a server which supports a decent web server (apache), a nice DB (oracle, mysql etc.) , perl etc. and has a firewall. Bill gates latest 'we don't supply firewalls, for that you will need to buy a firewall software' remark is bad, it is bad because it shows the utter lack of understanding of the nature of a hack. first and foremost - kernels are hacked, not higher layers of software. if the kernel is secure (see 'good netfilter/iptables config' pseudo entry in any FAQ) the OS is secure as well. True, from time to time a 'cultural hack' is found, like the I love you letter but most of the time the high level hacks, the ones which do actual damage are kernel level hacks (offcourse you can always argue that by not securing the kernel this becomes a user land problem but that would require all different apps to try and stop the same malicious source, which is stupid). So, linux (or other open source maintained distributions like OpenBSD) is the way to go, it has plenty of virtues (open source, good community, fast response, good track record, don't undermine the user). But then again, remmember that using linux requires LOTS of hours learning, tweaking and understanding what you are doing while with windows its all point and click (you can never know what this point and clicks end you up with, but thats good old MS)
Fri 07 Nov | Clutch Cargo | OpenBSD, baby. Screw Linux.
Fri 07 Nov | Myron A. Semack | Security is a PROCESS, not a PRODUCT. Any system is only as secure as the admin. There is nothing in Linux that makes it inherently better (or inherently worse) than Windows. I think the only OS that can be called 'inherently more secure' is OpenBSD, and it accomplishes that by sacrificing a lot of functionality, which diminishes the surface of attack.
Fri 07 Nov | Myron A. Semack | nat, 'The heart of Unix security and Win32 security exists in the fact that kernel space can only be accessed by root or administrator authorization.' Gotta call bullshit here. A user-mode process under Windows can't touch kernel memory, even if it is running as Administrator. Using the SYSTEM accounts, it's possible. But you can't log in as SYSTEM. 'Correct me if I'm wrong (for I'm no Win32 expert), but would not a user mode application install have full access to the registry' The registry has security controls on it, just like the filesystem. Regular users can not arbitrarily write to random parts of the registry. Now, to install an application that has sytem-wide effects, you do have to run it as administrator (no different than Linux). And you don't even have to log out to do it. You can simply use RunAs, which works like sudo does under Linux. 'the fundamental problem of Windows security is that all users run as admin all of the time.' No, they don't. Not in any kind of corporate environment, anyway. Active Directly has a very powerful approach to security, which is considerably more granular than the simple UGO setup that *nixes offer. In a home environment, most user's run as administrator, and rightly so. It's their computer, and they can do whatever they want. On a Linux system, you shouldn't be logged in as root 24/7 because one typo can bring a system crashing to a halt. However, Windows Administrator is NOT the same as Linux root. Now one suggestion that's been made over and over again is 'Why not keep user accounts running as regular users, and have it ask for the admin password when they want to do something like install software?'. OSX does something similar. The problem with this approach is that it gets users comfortable with the idea of entering their Administrator password whenever something asks for it. It's only a matter of time beofre someone makes an application that looks just like the 'Enter Admin Password' dialog, and then you'd have a whole new class of security breaches. 'There appears only one place for programs to be installed in Windows: the '/Program Files' directory. ' Not true. Applications can be installed anywhere. It's just very convenient to keep them all in one place. It's no differen than the /bin and /usr/bin directories in Unix. 'On a corporate network, Windows is hardly remotely adminstratable.' Again, wrong. There are tools like SMS and SUS for remote administration. You can use GPO's to manage the registry of client machines (inlcuding grabbing updates from a network). If you want something more sophisticated, there are tools like Altiris. Also, Windows is fully scriptable, just like Unix. The Windows Scripting Host is a very powerful tool. Coupled with the Task Scheduler (equivalent of cron), you have all the same automation tools available to a Unix admin.
Sat 08 Nov | Michael Koziarski | I don't think that 'more secure' is even a question you can answer. I use linux, I use it on my two desktops and my router / webserver etc. For me, there's no question that it's the most secure option available. Windows is not an option. *but* This is *only* because: 1) I've used linux for a long time and am familiar with updating and hardening it. 2) I've not really used windows in a 'hostile' environment. Web forums aren't really going to answer the question, there's the odd whackjob who equates linux and mozilla with the apocalypse (see most linux posts here, there's always someone). Then there's the other extreme who call all windows users idiots (see everything ever written on slashdot). Personally, I think linux is an excellent server platform that will continue to eat UNIX's lunch and continue to threaten Windows' dominance. But I take a long term view, and I realise that it's all a matter of personal preference. Having said all that, microsoft's shoddy client software has ruined email, I'm sick to death of those damned 400k virus attachments filling up my mailbox. That doesn't fill me with confidence in IIS, SQL Server 2k and co.
Sat 08 Nov | Stephen Jones | You're right on most tnings in your last post Myron, but I would take issue with you over the virtues of Windows scripting language. There is nothing comparable in Windows to the flexibiltiy of the command line in Unix; by combining commands you can do pretty well everything, and there are more than thirty years of collected commands to play with.
Sat 08 Nov | Myron A. Semack | Have you actually used WSH? It's downright amazing. It's not just a glorified batch file (ala Unix shells). WSH gives you an amazing amount of flexibility. Check out: http://cwashington.netreach.net/ and look at the automated stuff that's possible. Before I discovered WSH, I though there was no real scripting solution for Windows (without a third party). Boy was I wrong.
Sat 08 Nov | Portabella | As someone who's used Unix shells extensively, my perspective is that the most important thing about the shell is that it's 1. standard 2. bullet-proof It's *not* very high-level, but 'glorified batch file' is manifestly wrong. If the shell isn't sufficient you can always use Perl or Python (or other languages) and generally the API integration is very good. Interestingly, the Linux developers resist, tooth-and-nail, attempts to move to a higher-level language like Python. Wisdom or stupidity? I've only dabbled in WSH, but I must ask why Microsoft is coming up with *yet another shell* in the Longhorn push. Clearly *they* see some inadequacy, real or perceived.
Sat 08 Nov | Stephen Jones | WSH lets you use VB script or Jscript. Both are great and I've seen whole applications written in Jscript, but I think you have little idea about how powerful Unix shell commands are. It's not just that there are hundreds of pages of them; it's the fact that you can combine them to pretty well do anything you want. They represent thirty years of experience doing things with Unix systems. VB sript and Jscript were not written with sysadmins in mind.
Sat 08 Nov | Clay Dowling | Portabella, UNIX programmers refuse to move to higher level languages because of stubbornness. As a UNIX programmer who avoids python at all costs myself, I can sympathize. Some of this is because you have a lot of very experienced programmers with a massive investment in C. I don't have this same massive investment of ten to twenty years, but I have to confess that I keep making a heavier investment because I haven't found anything that offers me as much capability or flexibility. The religious flame war about system security is kind of funny to watch though. I've gotta side with the folks that say security depends on the quality of the admin. Even my favorite server OS, OpenBSD, can get hacked from time to time. Keeping it secure requires keeping the system up to date and watching what's going on, just like any other system.
Sun 09 Nov | Nat Ersoz | 'Gotta call bullshit here. A user-mode process under Windows can't touch kernel memory, even if it is running as Administrator. Using the SYSTEM accounts, it's possible. But you can't log in as SYSTEM.' OK, perhaps I simplified ever so slightly. A user running as admin can install a device driver, and then access whatever they like through a user mode app which accesses the newly installed driver. The bottom line is that a user with admin privs can access kernel memory. Done. Same in linux, same in windows. Admin privs are compromised when users run as admin as a matter of fact.
Sun 09 Nov | Shlomi Fish | Joel, in regard to your comment about two clicks to securing the Windows system: in many Linux distributions (such as Debian or Mandrake), you can automatically install updates from the command line, (or even from a graphical utility). While you still have to wait for the update to become available, it is usually shorter than the Windows update becomes available. With Windows, you always rely on Microsoft to provide the update, while on Linux you have a choice to circumvent the vendor, and install the package from the source before it is available from the vendor.
Sun 09 Nov | Stephen Jones | I'm not quite with you on this Nat. To the best of my knowledge you are dealing with a ring system. Kernel mode is ring 0 and user mode is ring 3. Now some drivers, video drivers, for example, have to access the kernel, so I suppose it would be theoretically possible for a virus to install a device driver which then accesses the kernel. As all it could probably do would to to blue screen the machine I don't see the point. There is much more harm it can do in rewriting the registry or the file system or whatever. Running in user mode, or using the compatibility template if absolutely necessary, would stop some viruses from installing, but as has been said, in a corporate network everybody is normally running as a user with limited rights. You certainly shouldn't run as Administrator with a DSL or cable connection - Ah, if only I could get one how gratefully I would downgrade myself to mere user!
Sun 09 Nov | Nat Ersoz | Stephen, Even though a device driver may not access the kernel, there is nothing to prevent a driver from accessing the kernel. If I am a virus writer, and you are a user without admin privs, the worst I should be able to do is infect/delete the files which you have access to. If however, you're running as admin, I can install a simple device driver which allows me to map any physical page, read/write any device, and delete any file. As an added bonus, I won't show up in the process list when a user hits Ctrl-AltDel for the Taskman.
Sun 09 Nov | Stephen Jones | Not sure it's that clear. You can probably delete any file without touching the kernel, since admin normally owns the whole machine. To do this in kernel mode you would presumably have to write an alternative I/O driver - a bit of a sledgehammer to crack a nut. And there's still the question of Windows File Protection. Bear in mind that we are talking about home and SOHO machines here; anything in a company will be on a domain and running in user mode. If you run as a user all your important files are going to be owned by that user, so a program could overwrite them anyway I would have thought.
Sun 09 Nov | Portabella | > UNIX programmers refuse to move to higher level languages because of stubbornness. That I can believe..... > I have to confess that I keep making a heavier investment because I haven't found anything that offers me as much capability or flexibility. ... but this I can't. Bourne shell lacks both structures and arrays. Stuff I can do in 2 seconds in any high-level development language is tedious and difficult in shell. I think shell is used with a kind of 'less is more' attitude.
SQL Server hot backups in a different City | Fri 07 Nov | Joel Spolsky
For you reliable SQL Server mavens out there... Suppose I wanted to build a Win2K-based web service using SQL Server to store the data. But Im a reliability nut. So obviously Ill use industrial strength servers with RAID, two power supplies and network cards, etc, and theyll live in secure colocation facilities. To further minimize failure points, Ill have a hot backup. But the twist is that I figured as long as Im paying for a hot backup, it would be more reliable if it was somewhere else, say, on the other coast. So heres the plan Im working on. Server A in New York, with IIS and SQL Server. Server B in Vancouver, with IIS and SQL Server. Server A is somehow writing through any database changes to server B. I know I can do this with transaction log shipping; is this a good way to do it? Is there a better way? Then if Server A blows up, I simply ask my ISP to route the packets intended for Server A to Server B. (I assume they can do this if its their backbone). Ideas? Suggestions? Comments?
Fri 07 Nov | ko | Sorry, i'm not a sql server expert, but we have our's clustered, so that if one goes down, the other one picks up the load. they're right next to each other in a computer room. i don't know how far you can cluster sql servers. my apologies if i'm just showing my ignorance of the whole matter, i'm better (maybe not much) with oracle questions.
Fri 07 Nov | Damian | I haven't tried it yet, but this product claims to do what you want : http://www.xosoft.com/products/f_WANSyncSQL.htm
Fri 07 Nov | Matthew Lock | I wonder how much it costs, there are no prices on the web site.
Fri 07 Nov | Damian | Ahh, I knew there was another one I had seen... http://www.incepto.com/
Fri 07 Nov | Robert McLaws | You can have a SQL cluster through different networks using VPNs on Windows 2000 / Windows Server 2003. I would highly recommend using WS2K3 instead of Win2K. It's much more reliable and runs SQL Server and IIS faster.
Fri 07 Nov | Greg Baker | If you're writing the front end, why not just maintain two database connections? Make sure that every time you need to store something, you do the operation on both connections. (What if you fail on one, but not on the other? Dunno. There might be an obvious answer to this in the nature of the applciation.) And you also make sure that you only read on the local database connection, rather than the other one. And rather than getting one ISP to reroute traffic, you could just have a very short refresh interval on your DNS zone - and get something to automatically update your website's A record when your primary server goes down. (Or, if I'm allowed to suggest an alternative configuration, try Erlang's mnesia database, which handles all this sort of thing quite transparently in the API. Of course, it's an entirely different story, because it's a non-SQL database.)
Fri 07 Nov | Ankush Narula | Evidently, log shipping requires SQL 2000 Enterprise Edition. I hope you're making a ton of money selling your wares - or maybe you still get that juicy discount at the MS Employees Store? (http://www.microsoft.com/sql/howtobuy/default.asp) ;-) Seriously though, if you can't afford SQL 2K EE, it might be wise to examine vanilla SQL 2000 replication. If that doesn't work for you, I might suggest modifications at the application layer - by creating a facade that impersonates your database component(s) and in turn it serializes the calls over some sort of message oriented middleware like MSMQ. You then have a listener on both servers that receives and processes this call (as a queued message) in a single COM+ transaction. Then again, maybe log shipping is the way to go. ;-)
Fri 07 Nov | no name | 'I assume they can do this if it's their backbone' I think you should find out, first. And if the same company is running both, isn't that in itself a danger?
Fri 07 Nov | Li-fan Chen | >If you're writing the front end, why not just maintain two database connections? Make sure that every time you need to store something, you do the operation on both connections. (What if you fail on one, but not on the other? Dunno. There might be an obvious answer to this in the nature of the applciation.) The drive, the network and the database will both introduce high lags. The drive? It will, because you are running raids (especially raid 5), and what takes one drive write to disk in no time takes a lot of time on another server. The network? Japan has much higher lag to a NY/US based web app server than a Canadian one.. and a New York one is just a bit lower than a Vancouver one. You add up both lags and there's a good chance it will average out to overall higher updates and insert times in ADO/ADO.net. There's also no guarantee that 2 databases are without locks at the same time. Sure do a test, I am just stating the obvious. And it might not be fun writing a thin wrapper between your code logic and the actual ado calls to allow for dynamic deployment of DML calls to all available servers. Probably better to let SQL Server do the almost live transaction synchronization for you.
Fri 07 Nov | David A. Ulevitch | The auto-failover routing thing is best left done in the application or DNS depending on your timeframe for failover. Doing routing changes to accomodate failovers tends to be 'interesting' on cross-coast setups. When you're failing over to a machine one port over, it's a bit simpler. just have your software deal with slave and auto-promotion to master in the event the current master falls of the planet. Then just order your slaves.
Fri 07 Nov | christopher baus (www.baus.net) | My hosting service can do what you request (www.redundant.com). But I've chosen to push the redundancy up a level in the abstraction stack and handle it myself. I hand off a proxy to our clients. It asynchronously checks the status of our main site and our back up site. They are maintained by separate companies, on separate networks, and in different states. If traffic can't be routed to one server farm for ANY reason, it automatically fails over to the second. Not only do I have a hot standby server, I've got a hot standby cluster in a totally different location. For cheap I might add. This is good enough for major financial service firms and again it is dirt cheap compared to paying the host to do it with something like network peering.
Fri 07 Nov | christopher baus (www.baus.net) | I might add that most of our down time comes from our service providers, not from our servers failing. That is one reason I don't trust this 'peering, automatically reroute traffic stuff.' The one time our provider need their routing failover to work (when that huge Cisco bug came out earilier this year), guess what. It didn't work. Oh keep in mind you best have a VPN between these two sites if you plan on shipping data over the internet. Leaving those replication ports facing the internet could make some fun for the script kiddies. (Slammer anyone?).
Fri 07 Nov | n/a | in the last 2 years 3 of our raid controllers failed
Fri 07 Nov | christopher baus (www.baus.net) | Actually we had a raid controller go in one of our Dell rackmount database servers.  Lost all the data.  That was a lot of fun. 
Fri 07 Nov | Colin Whittaker | Doing the failover is tricky and whole industries are based arround it. Products like distributed director from cisco or akamai's dns service. Doing geographical failover / loadbalancing (once you have two servers why not have west coast users hit the west coast server farm) is pretty tough and for tcp based services is best done with DNS records with zero TTL.
Fri 07 Nov | Mike | Look into an EMC CX200 or an IBM FastT600, I believe both of them will sync with another across a network. You won't have to worry about sql replication or log shipping, this syncing happens at the disk level. Plus, these are reliable raid solutions and have insane i/o levels. 'Throw some hardware at the problem because at the end of the day the high end consultant costs as much as the hardware and you get to keep the hardware.' Just heard that somewhere and it makes some sense.
Fri 07 Nov | Rob VH | I was recently on a project where we needed similar capability. We ended up using a product called DoubleTake. I was not the guy who set it up, but my understanding of the product is that is sits in the file I/O layer, and just ships the I/O on the database and log files over the network, and it is echoed on your hot standby server's datafiles. It seemed to work pretty well, and it rarely fell too far behind in the updates. I thought it was a lot slicker than log shipping. It works on regular files, too. http://www.lyonware.co.uk/DoubleTake/DoubleTake-Software.htm
Fri 07 Nov | MR | Sybase Replication Server works with SQL Server and should do what you need. http://www.sybase.com/products/highavailability
Fri 07 Nov | Wade Winningham | One key factor is how 'hot' you want your backup to be. Replication is pretty easy to setup. Someone mentioned posting the same information to both servers simultaneously. I did something like this years ago, but it was done using stored procedures. After the proc ran successfuly, it just called it's counterpart on the other server with the same parameters. The only server that would do this was the primary server so we didn't get into an endless loop of updates. I also worked on an election system which required absolutely no loss of data. I was only dealing with a few tables, but for it, I created a trigger on our main database which would take inserted values and insert them into the appropriate table on our backup server. I only had to deal with inserts, though since a vote could not be deleted or changed. Replication does not have anything to do with the actual failover though. You could just provide two connection strings and use one as primary and if it goes down, just switch to using the backup. Optimistically, your backup would handle the load until you can get the primary server running and sync'd up again.
Fri 07 Nov | Bob | We use transaction log shipping and it works just fine. We control which server is hot through our own routing though, that way we don't have to rely on a provider.
Fri 07 Nov | Cody Powell | The easiest way to do it would probably be to use Transactional Replication, like you said.  One alternative would to use Distributed Transactions with the MS DTC and Distributed Queries to make sure the data gets distributed between the two.  You just link the servers by using sp_addlinkedserver, create some logins with sp_addlinkedsrvlogin, and you're ready to roll.  Probably not as easy as transactional replication, but the possibility is always there.
Fri 07 Nov | Dann Sheridan | Joel, if you want ultimate reliability, give Akamai a look.  They have the ability to cache record sets or even entire databases in their network.  All you need is one server, in NYC or Vancouver, to act as the authoritative server for everything -- web pages and databases.  This is a bit of a paradigm shift, but it works very well.  The cost is about as much as a 1.5Mbps commitment at any hosting provider.  Just a thought.  I'd be happy to discuss this further with you if you are interested.
Fri 07 Nov | Neville Rowe | I'll start by saying I'm no expert in this but I've always felt it can be a can of worms. To paraphrase one of Joels articles every layer of abstraction just adds more exceptions to handle...... Doesn't another article discuss developers who think distributed systems are simply a bigger version of standalone systems.... Transaction log shipping and rep server (from Sybase or others) both do what you asked for (keep two databases in sync), more normally rep-server type products for near real time synchronisation and transaction log shipping for bulk delivery (e.g. every 1/2 hour). Normally these will only pick up committed transactions so for automated failover what happens if client commits a transaction on the primary, there is then a failure at the primary site before the replication, client starts using secondary site (which didn't receive that transaction). Is this an acceptable situation for your application. Rep server type products can often be set to treat the replication as part of the initial transaction however this has a cost in response time. Next question - you are talking specifically about internet connectivity. The internet being the glorious system that it is it is possible for two different clients to have different views as to which db is primary, depending on the connectivity between the clients and the databases. The problem is the solution to these all come down to application level decisions - without knowing the product space there are no hard and fast rules to guarantee a highly reliable, performant system. Depending on application requirements, quite often a low-tech solution of a read-write primary, a read-only secondary and a manual process to switch from primary to secondary (ensuring synchronisation, shutting down the primary and enabling read/write on the secondary) is adequate - particularly because you can allow the users read/only access whilst the switch over is handled. If you need better reliability than that, having the client communicate to both databases and explicitly commit on both is often the most performant solution, the client can then gracefully give up on one if it goes down. The problem then is handling when the system gets split into two. If you go to a 3-tier solution (with two or more middle tiers for redundancy) you can be cleverer still as you can put more logic in the middle tier regarding what a failure is and what to do about it. The advantage with this is it is no longer down to the client as to which db is primary - clients talk to any middle tier, the middle tier components talk to eachother and (probably) all databases (so no use of rep server or log shipping) and the inter-middle-tier communication controls what to do if one or more middle tiers is unavailable. Also since the inter-middle-tier communcation is within the system, depending on your infrastructure it may be more reliable than the public internet. Too many questions, all from a paranoid point of view, but it comes down to what do you want from high availability.
Fri 07 Nov | Geoff Noden | Joel, I'm pretty new to the SQL world myself, but I have found great information in books like Inside SQL Server 2000 (MS Press, Kalen Delaney). Also, there is a pretty good article 'High Availability Solutions' in the October 2003 issue of SQL Server Magazine ( www.sqlmag.com ). It gives a good summary of the three HA options for SQL Server, and commentary on what is appropriate in different situations. The primary factor is what version of SQL Server you are running : Standard vs Enterprise. Enterprise is the only edition that allows Clustering. Based on your description (servers located on opposite coasts), Clustering isn't a good option anyways (due to network latency). Log Shipping or Replication are your two other choices. The difference is that with Log shipping, you will need to point your app to the different SQL Server unless you are putting in some sort of front end proxy to check which server is currently the 'lead'. It sounds like Log Shipping is a good choice. Basically, Server A writes a copy of the transaction log to Server B. The caution is that Log shipping does not automatically detect if Server A has failed, and to bring Server B online is a process which requires some manual intervention. I have heard of people writing monitoring software (pulse detection) and using Alerts to send the DBA a page/email if the server is not responding. Good Luck!
Fri 07 Nov | Rob Meyer | Presumably this SQL server is not a user-level service; it's only used internally by the web application that is seen by the users? Are you just looking to fail over the SQL server, protecting against a single-system hardware failure but not worrying about a fire/sprinkler/poweroutage in the cage scenario? After failover, I'd be worried about WAN latency/reliability and how the database drivers and application could handle it. Usually apps aren't designed defensively with respect to the database connections, because typically the database calls are reliable and of a pretty short duration. Start introducing widely variable response times and intermittent drop outs and you can have a lot of 'interesting' user experiences... Before spending a lot of money on a hot-swapabble database, I'd test the application under the usage levels you expect with the database hosted in a remote location. Whatever you do, develop as detailed a procedure as you can for what to do in the event of a failover, test the crap out of it, and test it regularly as well. No point in implementing all the hardware if you're not ready to use it at all time; that's the key peice that people forget when trying to implement highly available systems. ISP's changes routes, lose firewall rules, systems get out of sync in patch levels...if you don't test, you can't have any faith that the thing is going to work when you need it.
Fri 07 Nov | Phil Haack | I've managed a scheme like this just as you described. In our situation it was slightly different. We had merge replication between the east and west coast data centers and geographic load balancing. However, if one coast went down, they'd be routed to the other coast. There was potentially a slight latency issue with the user's data potentially not being on the other coast in time, but we never ran into that problem. In your scenario, I'd recommend transactional replication because you may also want to apply schema and stored proc changes on the primary server and have those replicated to the other server. I do not believe (and I could be wrong. It's happened once) log shipping supports that.
Fri 07 Nov | Mike | Why use software solutions when hardware is available to do the job? You will only increase the failure rate.
Fri 07 Nov | Jeremy | We use log shipping on SQL 2000 Enterprise Edition and it works pretty well for warm backups. The one thing to watch out for is that you can't use any non-logged operation or it breaks the replication. (e.g., TRUNCATE TABLE) Also, failover isn't automatic. It requires some intervention but doesn't usually take too long. Then you'll have to repoint your application to the new database server. Redundant computers with Microsoft cluster server and common disks makes failover faster but that doesn't matter if your disk crashes.
Fri 07 Nov | Kevin Moore | Joel, I would recommend using SQL Server merge replication to satisfy your requirement in this instance. We use it to sync two databases that are approximately 150 miles apart. Across the continent should work ok, even if the link goes down, replication will continue to log changes and then publish them once the link is back up. I wouldn't recommend transactional because it uses in essence a two-phase commit and if the second server is down, the first server won't be written to. I learnt alot about replication using links from the following URL www.mssqlserver.com, the owner's name is Mike Hotek and he seems to be a good source of replication information. HTH. Also I am located in Vancouver, BC Canada and would love to help out on this project if I can. Drop me an email at Kevin@MooreSSI.com. Kevin
Sat 08 Nov | Mike Hotek - Solid Quality Learning | Yes, no, all of the above, and none of the above. I've been doing replication for over a decade. I've been doing 'log shipping' long before it was ever called that. I also have several hundred clusters in production. I also teach SQL Server High Availability, wrote the article referenced in SQL Server Magazine, and do consulting day in and day out on that stuff. Enough of the background stuff...... You can do a 'normal' cluster at a distance of 80 - 100 miles. Why the limit? The LooksAlive test (a simple ping from one node to the next) has a requirement of 250 ms on the round trip before it is considered dead. Therefore, you are limited to 80 - 100 miles when using a dedicated, dark fiber link between the two servers. You can extend this significantly further using Geoclustering, but unless you have a pair of EMC SANs (one on each side), have SRDF installed and running, etc., you can't do it with a simple cluster. You can in fact do log shipping without having to have the Enterprise Edition. The log shipping utility in the BackOffice Resource Kit 4.5 will work against SQL Server 2000. There is also a simple log shipper in the SQL Server 2000 Resource Kit. Or, you can simply create your own. This isn't rocket science. If you can take a transaction log backup, copy it to another machine, and restore it, you are doing log shipping. Log shipping can extend the range pretty much indefinitely, but it does have latency. ALSO, you can't simply redirect the IPs in the event the primary fails, because you have to take the manual step of recovering the database after all of the tran logs you can get have been restored. You are vulnerable to twice the interval at which your backups run AT A MINIMUM. The further you displace the two servers from one another, the higher the latency and greater the potential risk. While I do a LOT of replication, I do not recommend it as the first solution. It looks really nice and pretty, until you flip the switch and promptly watch your entire production environment melt to the ground. That is NOT a problem with replication. Your entire application and entire infrastructure need to be FULLY tested with replication in place, BEFORE it is ever deployed. That means you need to unit test every type of transaction through every single component involved in your application, they then need to be load tested, if they pass those two, they then need to be fully disaster tested to ensure that you aren't going to have any surprises when you go to production. For HA implementations, unless you have a LOT of experience doing replication, I VERY STRONGLY recommend sticking with transactional replication. 95% of the replication I do is with merge, but the learning curve for merge is 100 times as steep as it is for transactional replication. There's a reason that in the 1 day seminar that I teach as an intro to replication, 1/2 of the day is spent on merge and that barely scratches the surface while the other methods can be adequately introduced in an hour or so. So, for you implementation, I would recommend the following (assuming you have full access to the servers to do this and you don't have heavy budgetary constraints): 1. Cluster your primary location 2. Log ship to a secondary location The cluster requires Enterprise Edition and you only license those instances of SQL Server which are running. For example, if you have a 2 node, single instance cluster (1 instance of SQL Server installed), you buy licenses for 1 instance of SQL Server. It doesn't matter how many pieces of hardware you have in the cluster. If you are using Log Shipping out of the box, you need Enterprise Edition on the secondary. If you are using a variant, Standard Edition will suffice. What does this look like during a disaster? Node 1 fails. The SQL Server shuts down and ALL connections to the database server are terminated. The cluster fails over, SQL Server goes through restart recovery, and it comes online. Once back online, clients have to reconnect. If the entire cluster were to die, then you would have to manually finish restoring all of the transaction logs to the secondary and then recover the database to make it available for connections. (Failing it back once the cluster is operational again is a nontrivial operation which requires an outage window to accomplish.) If you are comfortable with and have FULLY TESTED transactional replication, you can implement that from the primary site to a secondary site. In the event of a failure at the primary, your ISP can do a redirect to the secondary. (It will have a different name and IP, so you have to account for this yourself.) Failing it back is also a non-trivial operation. If you deploy transactional replication, make certain the distributor is either on a 3rd machine or is on the same machine as the SECONDARY. This was a VERY simple dissertation. There is a LOT more to consider, but I don't feel like writing a book. In short, there is no free lunch. Each approach has its pros and cons. Each approach, used by itself, can be killed VERY EASILY. Even using multiple approaches together, if the drawbacks are not fully understood and planned around, can be killed VERY easily as well. I'd strongly recommend reading the referenced article in SQL Server Magazine, but keep in mind that is a very brief intro to a very complex architectural problem. Even covering HA at a base level with respect to SQL Server takes 3 FULL days in a classroom.....and that isn't your typical class where an instructor reads slides.....it is a class that can be best described as 'open wide, because we're going to shove about 15 days worth of material into 3 days'.
Sat 08 Nov | Kostya Kulikovsky | Round trip time from coast to coast is 80-90 ms, using vanilla Internet, not a dark fiber link. Packet size 32 byte. Round trip time from the West coast to Central Europe is roughly 200ms. So, why do you think 80 - 100 miles is the limit for a 'normal' cluster?
Sat 08 Nov | Stephen Jones | Presumably because you're quotiing average times and he's thinking of maximum times. Incidentally I can't get any ping outside of Saudi to come within the 250 ms he mentions. And pinging inside the country comes well under but with lost packets. Anybody remember the 500 mile email failure by the way?
Sat 08 Nov | Ryan S | Look into merge replication.  It's a pain to setup correctly but I've had good success with it and sounds more appropriate for your situation.  I spent months learning it for a client and am somewhat of an expert with it.  I'm the only person I know that has used it in production )that includes MS support staff).  Shoot me an email, I'd love to help!
Sun 09 Nov | Mike Hotek - Solid Quality Learning | You can, but I would NOT recommend merge replication without a SIGNIFICANT amount of background. The guesses about use are inaccurate. I have over 150 systems in production that are running merge. I know of at least 20 systems that MCS (Microsoft Consulting Services) has implemented. I know of another dozen that have been done my other groups within Microsoft. I also know of more than 800 different people around the world who are using merge and have it running in production. So, it is VERY widely used, but it is about as close as you can get to a nearly vertical learning curve for at least the first 3 - 6 months. It is not a pain to configure. It is a very complex technology that doesn't allow you to 'just turn it on' and see what it does. It can and will blow up rather spectacularly if you don't do it properly.....and that is from VERY hard experience. As for the 80 - 100 miles, it comes from Microsoft recommendations. It can be found in the clustering documentation, in the High Availability courseware, in MOC courseware, in Books Online, and you can also get to a discussion about it on EMC's website where they discuss geo-clusters.
Sun 09 Nov | Jonathan Fieggen | I'm not a SQL Server expert, and this might even be off-topic for this discussion, but if you are planning on doing this with the server setup detailed in the 'New Server at Peer1' article you might want to take another look at that lil' Linksys switch you bought to connect all the server's ports to the one ethernet drop you're getting from Peer1. Right now, if its power supply is fried or something else happens that incapacitates it, your server is dead in the water. No connectivity, no management capability, nothing. While the Linksys might turn out to be reliable enough, I would not want to have it as a point of failure between an expensive server and redundant data center infrastructure. Instead, I would try to have them all connected to the Peer1 network directly, to different switches if possible, so even a port failure on Peer1 switches won't leave you without connectivity to your server. My apologies if this turns out to be off-topic, redundant or something :) Good luck with the SQL Server replication.
Sun 09 Nov | Alex Jacobson | How much performance are you willing to sacrifice for integrity and durability? How much complexity are you willing to accept to reduce the tradeoff? You want to do transcontinental failover because of a concern about a disaster taking out the primary location. Your failover location cannot start until it gets the last log entry from the primary location. You define log writes to be complete only when you have verification that they have been replicated at the secondary location. Your primary location is now vulnerable to latency and disruptions in the connection to your secondary location. You reduce the latency by installing multiple log relay servers 80-100 miles away and defining a write to be succesful if it hits any of these relays. You write to the relays in parallel. But you are still at risk if the secondary location happens to be down when the sending relays attempt delivery. So you have a layer of receiving relays throughout the country that accept deliveries from your sending relays. Question: If you anticipate a disaster with a blast radius of 50-100 miles from your primary location, what else should you be worrying about?
Incredibly Stupid Question | Thu 06 Nov | Too Embarrassed To Put A Name To This
I keep reading the phrase "free as in beer" but I dont get it - beer isnt generally free. What does it mean?
Thu 06 Nov | Bored Bystander | MAKE MONEY FAST WITH YOUR COMPUTER. I WRITE IN ALL CAPS BECAUSE I AM A MORON WITH NO LIFE. I SPAM MESSAGE BOARDS BECAUSE I SUCK AND AM A FOOL. CAPS CAPS CAPS CAPS WILL YOU LISTEN TO ME AND SEND ME YOUR MONEY CAPS CAPS. etc. Sorry! Here is the working understanding of the OSS catchphrases 'free as in beer' and 'free as in speech': http://en.wikipedia.org/wiki/Free_as_in_beer
Thu 06 Nov | Bored Bystander | Uh, sorry, that was my parody of the spate of get rich quick spams that inundated JOS today. Nothing about you. Hope the "free" link helps.
Thu 06 Nov | Steve P | It's the example used to distinguish between different senses of the word 'free'. The examples always given are free speech versus free beer. So people start talking about whether something is free (as in 'free speech') or free (as in beer). It's not that beer is usually free, but if someone tells you 'hey, free beer' you generally understand what notion of 'free' they are talking about.
Thu 06 Nov | Ron Porter | I believe it generally means 'without cost', 'gratis', in the way that if someone offers you a 'free beer', you don't have to pay for that beer. 'A round on the house.' As with real free beer, software that is 'free as in beer' sometimes comes with strings attached so that you might actually prefer to not accept the offer :) The reason the phrase gets used at all is to distinguish it from the other sense of 'free' that suggests 'freedom', 'without strings or other attachments', etc. As with life, so with software--sometimes 'free' means 'gift' and other times it means whatever you want it to mean :)
Thu 06 Nov | Dan J | It's a phrase used by the open source community to described their view(s) on software. In general, there are two ways that software can be 'free': 'Free as in speech.' This is 'open source' - anyone can see the code and tweak it, but people still reserve the right to restrict the license to it and charge money for it. This has not proved to be the winning strategy you might think. 'Free as in beer.' In addition to offering free speech, some open source people have taken things even further (and are known as the 'free software' movement) to offer 'free beer'. Like you said, beer is not usually free - neither is software. But the free software people are morally opposed (yes, morally opposed) to the idea that someone might charge money for bits and bytes. They claim you can make money on 'services', but... whatever*. So, to recap: 1. Free as in speech = open source, but we still like money. 2. Free as in beer = open source, but software wants to be free, man. 3. I think the whole thing is ridiculous. * and they're not talking about IBM level services - usually it's end-user support for WhizBang Linux 3.4
Thu 06 Nov | Philo | The open source advocates use a phrase 'free software' which can be ambiguous, so some wog came up with two ways to signal which type of 'free' you're talking about: 'Free as in speech' - This most likely refers to the DeCSS case, where the source code for the DeCSS DVD decryption algorithm was suppressed. So the argument is that it shouldn't be possible to suppress source code, and source code should be available for software. 'Free as in beer' - no, beer's not free, but we'd sure like free beer, wouldn't we? This refers to 'free software' meaning software you don't have to pay for to use. Unfortunately, most open source advocates really have no idea what they really want except that they really like getting something for nothing and making it seem noble. [grin] Philo
Thu 06 Nov | Too Embarrassed To Put A Name To This | Thanks everyone. Hey, free beers all round!
Thu 06 Nov | JasonB | DanJ, the Free Software movement advocates the first sense of free (speech), not necessarily the second (beer). In fact, that's the whole point of the distinction. jason
Thu 06 Nov | MR | p.s. It's a gradual shortening (with the obvious problems) of 'free as in free beer'.  When said correctly, it makes a whole lot more sense (same with 'free as in free speech').
Thu 06 Nov | M | To continue with the bar talk. Is the 'free as in beer' supposed to imply that there is a round on the house - you do not pay, but the bar owner ultimately pays for it. You may think it is free, but somebody is actually picking up your tab. To bring this back to software, I may get the software for free, but somebody had to put in time to create it. How is giving away time/money to non-non-profit a political/philosophical statement? Are we saying our skill is meaningless (the production of software), only the ability to answer questions about our work (support) has value? What am I missing?
Thu 06 Nov | . | From the horse's mouth: 1. Free software is a matter of the *users'* freedom to run, copy, distribute, study, change and improve the software. (Note: *users'* not the guys who create it.) http://www.fsf.org/philosophy/free-sw.html 2. The emotional argument goes like this: ``I put my sweat, my heart, my soul into this program. It comes from me, it's mine!'' This argument does not require serious refutation. The feeling of attachment is one that programmers can cultivate when it suits them; it is not inevitable. Consider, for example, how willingly the same programmers usually sign over all rights to a large corporation for a salary; the emotional attachment mysteriously vanishes. By contrast, consider the great artists and artisans of medieval times, who didn't even sign their names to their work. To them, the name of the artist was not important. What mattered was that the work was done--and the purpose it would serve. This view prevailed for hundreds of years. The economic argument goes like this: 'I want to get rich (usually described inaccurately as `making a living'), and if you don't allow me to get rich by programming, then I won't program.' http://www.fsf.org/philosophy/shouldbefree.html
Thu 06 Nov | Devil's Advocate | So much confusion, so little time... Free (as in speech) software is software which is released under a license which allows a customer to modify and/or redistribute it (i.e. which grants freedoms absent in most commercial licenses) Free (as in beer) software is software which is released under a license which does not ask for money in exchange for the product (e.g. demos and evaluation copies of commercial software) Much free (speech) software is available at no cost, which results in some confusion as English does not have an easy way to distinguish the concepts (e.g. libre vs. gratis in Latin) I can't say why a given person would choose to release their software at no cost (perhaps to gain market share) or free (as in speech) (perhaps as a philanthropist). Each person has their own reasons.
Thu 06 Nov | . | It all gets back to the fact that giving away the source code means giving away your software and your work. These distinctions about free beer are academic.
Thu 06 Nov | . | By the way, I can't help noticing that the only people dumb enough to fall for this open source crap are the programmers. Documentation writers won't work for free; project managers won't work for free; usability people won't work for free. I remember reading somewhere the oss geniuses were working out ways to put up money to pay those people to contribute. (Separate from IBM's efforts of course.)
Thu 06 Nov | Devil's Advocate | Not necesarily. Microsoft 'gives away' their code as part of their Shared Source Initiative. There must be some compelling reason to release the code at some point to certain people. The decision then becomes to whom, and under which conditions. Some people may see an economic advantage to an unconstrained release including potentially the benefits of using code already released under a compatible license, or the cost of enforcing stricter licensing agreements.
Thu 06 Nov | Matrix sucks | Have and operating system. Don't cost nothin'.
Thu 06 Nov | ...a cynic writes | In the beginning, computers & software were restricted to academics (mathematicians mostly) who swapped ideas and code freely but where insistent on attribution being correct. Later they became the controlled by business which saw them as products. It's a basic philosophical difference - software as ideas or as product. Richard Stallman's point about Free Software was the reaction of an academic upset at the loss of a community which shared code freely. In Free & Open source the community returned. For Free Software advocates it's all about Freedom, so 'Free as in Speech'. Open Source came later, as an attempt to make it business friendly by people who were more concerned with it as a distributed development method. To implement this there are a wide range of licenses with the BSD /MIT style just insisting you preserve a copyright notice through the GPL& LGPL on to things like the Q license which only allows you to distribute modifications as patches. Then there are proprietry companies who make the code available to customers (like Frog Creek I believe). In my view it's swings and roundabouts. You are unlikely to make vast sums of money as a pure free software company, but if your main business isn't software then it can lower your development costs markedly, by sharing development with other organisations. Possibly the question you have to ask is how you see software personaly - is it a list of instructions or is it a product. Those of us who make their livelyhood making software as a product are resonably clear that FOSS is a bad thing. Those for whom it's way to get the job done tend to go the other way.
Thu 06 Nov | M | 'The feeling of attachment is one that programmers can cultivate when it suits them; it is not inevitable. Consider, for example, how willingly the same programmers usually sign over all rights to a large corporation for a salary;' The 'feelings of attachment' to one’s software has little to do with the exchange of money for their skill as far as I can tell. 'the emotional attachment mysteriously vanishes.' Is there any mystery in a factory worker who assembles widgets to loose any attachment to the assembled goods in order to retain a wage? This is the basic economy of humans. 'By contrast, consider the great artists and artisans of medieval times, who didn't even sign their names to their work. To them, the name of the artist was not important. What mattered was that the work was done--and the purpose it would serve. This view prevailed for hundreds of years' I am going out on a limb to guess that these artists were either paid or were enslaved to do the work. If they were paid, then would this still fall into the 'emotional attachment mysteriously vanish[ing]' category? If they were slaves, why would this be a good example? I always had a hunch the free software stuff was a load of crap, but thanks for posting links so I can read and verify my hunches. Where is the Free Grocery Foundation when I go to the store to buy food? Isn’t free food a good use of the criteria 'the prosperity and freedom of the public in general'.
Thu 06 Nov | Adam | I think my favorite take on it went something like this: A:How much? B:Free. A:Is that free as in speech or free asd in beer? B:Free as in Free Quid, Govnah
Thu 06 Nov | Little Red Book | > How is giving away time/money to non-non-profit a political/philosophical statement? m, this is correct. The political statement is that the intellectual/educated class should not be paid for their work. Who do they think they are, acting like they are better than the people? Power to the people's revolution!
Thu 06 Nov | . | > Not necesarily. Microsoft 'gives away' their code as part of their Shared Source Initiative. Don't be so naive. That's not giving away source code in the sense the free software people want. Microsoft's initiative keeps source code under tight control ( and also happens to undermine one of the criticisms of the OSS people, because it lets governments see there's nothing strange in the code.)
Thu 06 Nov | Li-fan Chen | What we need to do is turn all the indexable spam messages into links. *lol* Okay here's the deal. Say there's a giant spam database. With digests of sentences. Searchable. Now you have JOS, take each post, index each sentence, get a hash digest and query the 'giant spam database', if it shows up then put it into a link. You don't see it, it isn't banned, you have to click on it to see it. But that's how the democrates would do it, the republicans will solve the link idea up gore's ass and plain out strip out messages like that.
Fri 07 Nov | EW | From the historical perspective on the phrase 'free as in beer' ... In the late 19th and early 20th century, it was common for politicians to increase attendance at rallies by offering food and free beer. The beer was typically of the lowest quality, and the price one paid was listening to a lot of speechifying. The free beer promotion was sometimes extended to election day itself; politicians hoped that voters would support the candidate who supplied the booze or that the beer would make voters more susceptible to influence. This type of campaigning got so out of hand that many states instituted laws that forced bars and taverns to close while the polls were open. That law is still enforced in some states (for example, Pennsylvania), although the restrictions have been loosened and restaurants are allowed to serve alcohol if food is the primary business. So it boils down to this: 'free as in beer' generally means you don't pay cash, but the product is probably inferior and there's usually some sort of catch.
Fri 07 Nov | tapiwa | Would folk please stop politicising everything. Free as in beer means free to consume. Period. That the beer might come with speechifying (or adverts) is incidental. That not all the free beer is good quality again is incidental. So both winamp and apache are free as in beer. One's source is closed, and the other open, but they are both free as in beer.
Fri 07 Nov | Dennis Atkins | There's a large number of freeware (as in beer) apps I use regularly. Oddly, they are among the most stable and easy to use of applications I have.
Fri 07 Nov | GML | I thought free beer was the name of a band that plays at bars. e.g. "Free Beer Thursday at Joe's Tavern".
Fri 07 Nov | Just me (Sir to you) | I always make the free as in http://www.online-literature.com/orwell/animalfarm/ association myself.
Fri 07 Nov | Just me (Sir to you) | ... but that is probably more due to http://www.newspeakdictionary.com/media/128k/1984-lunch-syme.mp3 than to this particular work.
Fri 07 Nov | Alex | Beer isn't free, but you can sometimes *get* it for free.
Fri 07 Nov | odinprotectsus | Boy, SO MANY wrong answers! The links to the source explain it best, but longest -- but here's the short form: Free as in beer: there is no monetary charge. But this says *nothing* about your rights to use the software; in fact, the distributor often tightly controls the rights. This is basically a 'loss-leader'. It's how MS distributes Internet Explorer -- you don't pay for it. It's free as in [free] beer -- but you get no source code, no right to hack it, modify it, redistribute it. Free as in speech: unrestricted, unencumbered. Software that's 'free' in this sense has nothing to do with money -- one my charge for it (depending on the license), but the salient point is that the license in some way will allow you to freely examine and modify the software to suit your purpose. Most Open Source software is free as in [free] speech -- you may pay for it in some cases, but it's meant to have minimal or no restrictions around it. As in most things (free beer and free speech included, the phrase is a bit hyperbolic. Even with free speech, you'll generally find certain things forbidden -- slander, incitement to riot, etc. And with free [as in speech] software, the common encumbrance is that copyright is retained by the original author. Free as in [free] speech is the Open Source high road. Free as in [free] beer usually comes along -- but on its own, it's the marketing low road. IE is free as in beer, but not free as in speech. Apache is free as in speech -- and, by the way, free as in beer, too. OK, not as short as I'd thought. But does this help clarify? Anyone vehemently disagree with the characterization? (I'm NOT asking if you agree with the philosphy -- plenty clear who's on what side of that already!)
Sat 08 Nov | I Was Wondering The Same Thing | Too Embarrassed To Put A Name To This, It is often said that regardless of how stupid a question may be, there is at least one other person with the same question. For the record, I was that other person. But now I understand the expression.
Sun 09 Nov | Brian R. | Funny, I thought about that expression just last week (bored) and figured out what it meant, as opposed to freedom of speech.  How many brownie points do I get?  lol.  This expression is a core cultural value of Linuxers.
Sun 09 Nov | I had no idea either | Too Embarrassed To Put A Name To This, and I Was Wondering The Same Thing, I wanted to know too! Just how many of us are there???
software license management @ your comp? | Thu 06 Nov | Jacky Soeryana
How do the software license situation in your company ? In the place I work - 2000+ personnel - we always play catchup with the licenses - at the end of the year we usually purchase the delta between the installed base with the current number of licenses that we have - and due to budgetary constraint sometimes the number at the end of the year is still not match exactly. I know this is not ideal, but its hard to predict the number of licenses required for next year and to enforce it (for example: telling the hot headed drilling engineer hey we dont have the license therefore you cant use this software - in our case we install and we buy later at the end of the year)
Thu 06 Nov | n/a | this is a normal practice usually
Thu 06 Nov | Gareth McCaughan | For 'not ideal', read 'illegal and dishonest'. If you accept the legitimacy of 'intellectual property' at all, then what you describe your company as doing is pretty much like walking into a shop, taking the stuff you want, and paying for at the end of the year -- except that 'due to budgetary constraints' you don't actually pay for all of it. It seems to me that 'due to budgetary constraints' is weasel-speak for 'because it's cheaper to steal than to buy'. Now, I have a lot of sympathy with people who say that 'intellectual property' is bunk. And I have a lot of sympathy with people who say 'well, we just wouldn't have bought this at all if we hadn't been able to copy it for free'. But that's plainly not your company's situation. You need the software, you are prepared to pay the price for most of your copies, ... but it's cheaper to steal than to buy, so you don't bother paying for all of them. If you need to be able to install new copies at a moment's notice, then buy them in advance so that you can do so. It may be 'hard to predict' the exact number that you'll need: so buy a couple extra and replenish when you're about to run out. This is not rocket science. But, still'n'all, it's cheaper to steal than to buy. (I'm sure this isn't your fault personally, J.S.)
Thu 06 Nov | david feitl | My company is similar with the poster. We tried to do prediction by having discussion with IS coordinators (or business representatives) every October to have their inputs for what kind of software their department might need for the next year. These all added up to get the budget, add some for provision, confirm the budget to the big boss, and trim accordingly. Even by doing this the actual license condition never match the actual usage, because we usually buy bulk licenses every 3 months. To be honest (or dishonest) usually at the end of the year we are 90% off than the total we have to pay actually.
Thu 06 Nov | Li-fan Chen | Gareth McCaughan: not so nice opinion piece, although I do know some people who feel the same way you do. What technical solution or policy change do you think will solve their problem if buying-when-you-need them doesn't fit their schedule?
Thu 06 Nov | Simon Lucy | The problem is not a function of buying too few licences but of the inability of organisations to come to terms with buying licences when they need and those organisations they buy them from having flexible enough licencing to allow them to buy them when they want.
Fri 07 Nov | Gareth McCaughan | I already suggested a change: buy enough that you are confident of having enough when you need it. The same as you do for things you can't copy so readily as software. What's so difficult about this? I can see a situation in which this might hurt more than is reasonable. Suppose there's some kind of software you need rarely (say, an average of a couple of licences per year) and unpredictably (sometimes no need for three years, sometimes three all at once), and that it's terribly expensive (say, $100k per seat). In that case, having a stash of spare licences might not be feasible. But I can't think of any such software that you'd need in such a hurry that you couldn't buy it when needed. What am I missing here? (Oh, and why 'opinion piece'? What did I say whose truth -- as opposed to convenience -- is seriously in doubt?)
Sat 08 Nov | Philo | 'what you describe your company as doing is pretty much like walking into a shop, taking the stuff you want, and paying for at the end of the year' In most businesses this is accepted practice. It's known as a 'line of credit' Mind you, it would be cheaper to actually pay for the license when you need it. If there was a streamlined purchase process in place so people could buy what they need when they need it then you wouldn't have to blow all those manhours at the end of the year audit. Philo
Sun 09 Nov | Gareth McCaughan | Well, sure, you can buy things on credit. So do the same thing with your software. Is *that* what the original author was talking about? It didn't look that way to me. Especially not the 'only pay for some of them' bit. And yes, if the fundamental problem is that the company's purchasing process is so elephantine that they can't buy something in less than (say) 3 months, then maybe they should look into fixing that :-).
Matrix Revolutions | Thu 06 Nov | Phil Crompton
Came without any expectation. Never been too much excited about this philosophicalside of the flicks, therefore not so disappointed like the guy sitting next to me. Will not see the movie twice, but will buy the DVD later. Cant wait for the Return of the King though.
Thu 06 Nov | MX | I don't know how 'Matrix - Revolution' is, but Matrix Reloaded was way better than the original Matrix. The first movie in the Matrix series was made from very classic science-fiction elements. I mean, to somebody who doesn't read a lot of sci-fi, it seems like an original idea when in fact it is not. But the secod one was a lot more original and a lot better.
Thu 06 Nov | Philo | MX - did you see a version where the fifteen minutes of talking head was cut? Because I was *so* ready for Neo to just shoot the guy and keep walking. Philo
Thu 06 Nov | martydud | I didn't like the end of the 'Matrix Revolutions'... but i guess i won't say anything about it here, since it would ruin it for some people:) Though first movie was the best one of the trilogy. Sure 2nd and 3rd had some nice moves and combat scenes, but still the story was the most reasonable one in the 'Matrix'.
Thu 06 Nov | MX | LOL! Matrix - FPS edition :) (FPS = First Person Shooter) BTW - the Matrix game SUXX. :-(
Thu 06 Nov | uncronopio | I enjoyed the first Matrix.I thought that the second one was crap: incredibly long, the philosophical side was at primary school level, and the combat scenes were a loong yawn, looking a lot like a commercial for the game (which I have never seen or played by the way). The third one? I doubt that I will spend any money in a ticket.
Thu 06 Nov | Nick | <copy and paste what uncronopio said here>
Thu 06 Nov | ScottB | Please. Have some good special effects doesn't make a good film, it's the story and actors that count. The story was paper-thin pub philosophy at best (>3 pints), and most of the actors couldn't act their way out of a (wet) paper bag. I've not seen 3, will go and see it next week, for the big screen experience, but from the advert I'm not holding my breath. Here's hoping Agent Smith gets more screen time.
Thu 06 Nov | ScottB | Apologies.  Should have be 'Having'.  But you knew that.
Thu 06 Nov | Nick | Actually - add to that: I've got kids, so I never made to the theaters to see Reloaded. Rented it on DVD when it came out recently and was severely disappointed. They went Hollywood on us. Not since Rocky to Rocky II+ has a film series dropped so far from grace. What the hell was that rave scene? And the orgasmic desert the blonde ate? Generally I'm all for sexxing things up, but this was lame. Jada Pinckett-Smith was completely wooden - like someone trying to act cool, tough, and confident but overdoing it. I'm just afraid she'll have a bigger role in Revolutions and ruin what little hope I have for that flick. I re-watched the original Matrix the other night on TBS. I was never a big Carrie Ann Moss fan, but after re-watching it I am. Not only does she kick ass with style, but the lady exudes cool, tough, and confident.
Thu 06 Nov | no name | Give the reviews I have read I can't say I will go and see it. Maybe rent it on video when it comes out.
Thu 06 Nov | suckers suck | Aren't there other boards more suited to this conversation? This IS a board for software development. Just because some film company over hypes some POS movie doesn't mean you have to discuss it on every goddam board on the Internet.
Thu 06 Nov | Matrix sucks | 'I don't know how 'Matrix - Revolution' is, but Matrix Reloaded was way better than the original Matrix.' No way!. No story. 15 minute fight scenes which are stupid because no one really gets hurt. The whole movie was 'what can we do with special effects in a fight scene?' More Hollywood drivel.
Thu 06 Nov | Li-fan Chen | > Aren't there other boards more suited to this conversation? This IS a board for software development. If you can write an auto moderator that moderates threads like this 100% with 0% false positives out I would be very very very very very very interested.
Thu 06 Nov | Counter-Shill | Most of the posters, whose names you've never seen before, are paid shills for the studio, trolling for suckers in tech oriented newsgroups. And that's a fact.
Thu 06 Nov | Simon Lucy | Bum, I forgot it was Wednesday yesterday, I could have gone to see it.
Thu 06 Nov | Neo | Counter-shill: That's just what They want you to think. Don't you know that software development is the career path for all the rebellious humans? They're just messing with us, dude.
Thu 06 Nov | Johnny Bravo | 'This IS a board for software development.' I thought this is a backup board when /. is down.
Thu 06 Nov | Brian | I saw it on IMAX last night. It's really not very good. The dialogue is bad. Like how-can-they-say-the-lines-with-a-straight-face kind of bad. The action isn't that great either. There really is no internal consistency to what physical feats people can do in the matrix. It's like the characters can do whatever is in the budget. There are regular bad guys in Revolutions who can stand and walk on the ceiling. Why? Because the SFX guys figured out how. And holy crap is it loud! Loud, bad music. On the plus side, I didn't think the religious themes were so prominant or heavy-handed in Revolutions.
Thu 06 Nov | Mikayla | A way better experience than Reloaded. Of course, I went into that one wanting it to be awesome, and ended up with the whole *cringe* 'Is this scene over yet?' *cringe* 'No you have not proven that point, you've just said it a bunch of times and shown something else entirely, and I refuse to believe you actually intend me to take this seriously.' This time I wasn't expecting much. Vaguely hoping it wouldn't slide into even more complete suckitude. It didn't. Still not as good as the first one. But it ended with a sense of resolution rather than a big fat 'to be continued' screen. Good enough.
Thu 06 Nov | Matrix sucks | Next up. Matirx Retarded
Thu 06 Nov | Jim Rankin | 'The whole movie was 'what can we do with special effects in a fight scene?'' What's wrong with that?
Thu 06 Nov | dave feitl | 'The whole movie was 'what can we do with special effects in a fight scene?'' What's wrong with that? The problem is that for their huge budget they should make it much awesome and/or interesting than this.
Thu 06 Nov | Surrounded by morons | While all such 'art' is highly subjective, it seems that I must be the only one here who liked the series of films. Actually, I *really* enjoyed them. So I can only figure that if you didn't enjoy it, then you were too stupid to understand the principles, concepts, and philosophy. And you must be getting really old, as your bitter age is shortening your patience as well as mental capacity. (And the guys walking on ceilings were Vampires you idiot.)
Fri 07 Nov | Alex | The first Matrix I think was better. The break-in into the military facility scene was amazing - I think I must have viewed it 20 times in one day (from the CD) just to get my eye candy fix. yes, I was disappointed by the Reloaded although the 'architect' speech kept me 'processing' for a while :)
Fri 07 Nov | Guy Incognito | Equilibrium http://us.imdb.com/title/tt0238380/
Sun 09 Nov | www.marktaw.com | > Just because some film company over hypes some POS movie doesn't mean you have to discuss it on every goddam board on the Internet. < And if I don't go to other forums? At some point a forum is just that - a place for discussion, and yes there are specific topics that are apropos, we'd never talk about what color to paint the walls or the best way to locate real estate until Joel posted something about his new office. Chill dude, just skip this thread. As for the movie, I still think the 1st one was best, it was the most internally consistent, and had the best plot. The problem with these two is that nobody told the Wachowski Brothers that you should introduce plot elements early on instead of solving them 15 minutes after introducing them. To make an example from the 2nd movie (since I'm assuming you've all seen that and I won't spoil anything for you) 'Oh, there's this guy called the Keymaker and you have to find him.' 'Okay, how do we do that?' 'Well you go to this random address.' etc. In any case, the fight scenes did drag, as did some of the non-fight scenes, but I think Revolutions was much better than Reloaded. It had more plot, less thinking, and there were no 11 herbs and spices scenes... Or at least the ones they had were interpsersed with fighting. 'Wait, can it really be Ranch Dressing?' (punch) 'No, I hear it's just Salt and Pepper.' (kick) Also, the fight scenes in this movie seemed to make more sense. They weren't 'well, let's stick Neo in the mountains so the other characters have something else to do.' If you're going to see it, you might as well go all the way and do the IMAX version. I saw Reloaded in IMAX and wow, I saw Lawrence Fishburn's pores the size of my head, Carrie Ann Moss' ass larger than my apartment, Monica Bellucci's somewhat leathery skin, the bad makeup on Keanu Reeves that changed from scene to scene, etc.
Sun 09 Nov | www.marktaw.com | Oh yeah, and when I saw the guys walking on the ceiling I thought to myself "Cool, they thought of a new visual trick to use here rather than it being the same old same old over and over again."
Class action lawsuits for unpaid overtime | Thu 06 Nov | Nikolai
I have seen a couple websites now like this one. http://www.faceintel.com/overtimeclassaction.htm Are these websites started by crank ex-employees with a grudge? Or are they serious? Is anyone aware of a case where a company has been forced to compensate its *salaried* workers for unpaid overtime by a court? How about specifically programmers, and specifically in CA? I believe that my employer has been unfairly doing the same thing, but I am wondering if there is any legal basis for standing up. My gut feeling is no.
Thu 06 Nov | ChrisO | Just say "Sorry I cant work back tonight"? Or is that not possible in your state? - If you think you should be able to sue them into paying you, why not just refuse to do it in the first place.
Thu 06 Nov | Nikolai | It's not that simple. You don't work alone, of course. If everyone else is there from 9am to 10pm, and you leave at 5, then they can't get things done without you. Thus no one will trust you with important things, give you any responsibility, etc. -- and your performance reviews suffer. It doesn't help when you are handed a schedule that is not doable without overtime, and have no say to change the schedule. It doesn't feel good for a good worker to constantly be behind schedule. It is pretty much a psychological game with the schedule. It is part of the culture of the company. The genius of the managers is to have brainwashed everyone. Have you ever worked in such a place? Why does anyone work overtime when they don't want to?
Thu 06 Nov | ktm | 'Have you ever worked in such a place? ' yes. 'Why does anyone work overtime when they don't want to?' fear and wimpiness.
Thu 06 Nov | Philo | Just another plug for 'Philo's definition of 'exempt'' 'You must be paid as your vacation time is deducted.' In other words, if you come in two hours late for work and you're required to take two hours 'personal time' to compensate, then you get paid for every hour you work past 40/week. Philo
Thu 06 Nov | Nikolai | Huh? I didn't get the your definition Philo... please explain. Also, about the other posts -- what is this, usenet? The issue is not whether I'm a wimp. The issue is whether there is any legal basis for such lawsuits.
Thu 06 Nov | no name | What Philo is saying is that if the company want you to work late and not pay you, then they should be prepared to pay you when you take time off, for example to go to the doctor, visit your mistress, go for an interview for another job, etc. Essentially, the arrangement should be fair. At least, I think that's what he was saying :)
Thu 06 Nov | Robert Jacobson | The short answer is, yes there is a legal basis for a lawsuit to collect overtime, but it depends on the particulars. Under U.S. law (the Fair Labor Standards Act, or FLSA), lower-level employees are entitled to time-and-a-half for any hours worked above 40 hours per week. But 'exempt' employees (those with significant management or professional responsibilities) aren't entitled to overtime -- just a salary. Whether programmers qualify as 'exempt' is rather fuzzy, and really depends on the individual employee's specific job responsibilities. But as Philo suggested, the employer can't have it both ways -- if the employer treats you like an hourly employee regarding doctor's appointments, lunch hours, etc., you're probably entitled to overtime. When in doubt, contact an attorney.
Thu 06 Nov | -- | Basically, if they start treating you like an hourly employee ... penalizing you for an hour here and an hour there (even though on average you're doing more than 40 hours/week), they are in danger of also having to pay you like an hourly employee. If you want unpaid overtime, you should be willing to allow for some paid undertime.
Thu 06 Nov | Simon Lucy | Contract Law doesn't apply?
Thu 06 Nov | Frederic Faure | Effectively, when the job market sucks, no, contracts don't apply :-) It's all about supply & demand.
Thu 06 Nov | Philo | BTW, to clarify - that's *my* personal opinion on how overtime should be treated. It is NOT law or a legal opinion. Current law uses the definition of 'exempt' to determine the requirement for overtime. In general, most IT workers are 'exempt' so there's no Labor Law relief for unpaid overtime. After labor laws, then yes contract law applies. Now go read your employment contract and see what it says about overtime or working hours. It's a sure thing the manager that's making you work overtime hasn't. Let's say the contract says 'Your workweek will be 40 hours.' Then when a manager consistently makes you work longer you might be able to argue that management has modified the contract through their actions. Or that management is in breach of the contract. Philo
Thu 06 Nov | Bored Bystander | Anyone who says that it's simple to just say no has only worked in high demand areas and is rather naive. I'll expand on this topic in my usual pompous bombastic way. ;-) The sort of companies that demand unpaid overtime from engineers and developers tend to be located in tech-poor areas where the techies have few, if any choices for comparable employment. In my area, just about every company that hires programmers works them into the ground or makes other outrageous or harrassing demands. Isolation: the fact that a given area is not tech-aware is part of the syndrome. Constant overtime, as most clueful developers know, is a symptom of bad management and even worse technical leadership. The technical people in a given 'flyover' area who work under these terms tend to only see things done very badly. So there's no culture of doing things properly. Hacking, all nighters, and moronic 'professional work ethic' pressure are all part of the deal. One last thing. The 'exempt labor' legal label is probably the biggest lie and ripoff of engineers and CS people that has ever been invented. People who work in slave labor circumstances rarely have much real discretion in the type of work they are permitted to do. When programmers are being told to work the weekend or else, that's about as 'blue collar' treatment as I can imagine.
Thu 06 Nov | Nick | I used to work for a company that got sued for back wages by an exempt employee - and LOST. He was a mechanical engineer working on a new product introduction. The had him working 80+ hours per week. After a while, he decided to keep a log of his hours. After the product was released, the company let him go. He decided to get a lawyer and sue for overtime wages. Even though he was an exempt employee, the court found in his favor. The ruling was basically that there are reasonable limits to exempt status. After that, the company mandated that all exempt employees work a straight 40 hour week. I've never heard of another case similar to this, and I don't know all the details of the case. I was an intern at the comapny and was told about the case after getting 'caught' working late one evening by my manager.
Thu 06 Nov | Philo | Isn't it funny that they still didn't get it? Instead of forcing everyone out at 5pm, just start paying overtime and getting managers to manage their P/L. Philo
Thu 06 Nov | Bored Bystander | Forced overtime is the refuge of lazy, stupid managers who refuse to budget appropriately for projects.  There is no incremental cost associated with unpaid overtime. It's easier to tell someone to work unpaid to make up for bad planning and crappy methodology than it is to have your sh*t together as a business to begin with.
Thu 06 Nov | Nick | >> Isn't it funny that they still didn't get it? Instead of forcing everyone out at 5pm, just start paying overtime and getting managers to manage their P/L. << Actually, they were surprisingly competent about it. You could work extras hours if you really needed to. You just needed to talk to the department manager about it. That way they could keep excessive hours in check, and they would provide comp time instead of OT pay. They just expected projects to be managed to a 40 hour work week - a policy everyone liked.
Thu 06 Nov | Mikayla | I actually had this conversation over lunch: coworker A: 'What if coworker X leaves, and the boss asks you to do his work?' me: 'Whatever. There's still only 40 hours in the work week, and only one highest priority on my list.' A looks blankly at me for a minute. A: 'Huh. I guess you're right.' A: 'Well, what if X leaves and the boss asks incompetent coworker Y to do his work?' me: 'Well, it's his funeral.' A: 'You gonna tell him that?' me: 'If he asks, yes. Otherwise, I'll be polite and assume he knows.' A position of strength is a wonderful, wonderful thing.
Thu 06 Nov | Simon Lucy | In the EU we have the Working Time Directive which is intended to ensure that no one is forced to work more than 35 hours a week. In practice there are so many exclusions and employees are encouraged by one means or another to give up that limit that it probably doesn't make that much difference. Although there are mumblings about the exclusion of doctors being removed in 2005 which some are saying would mean wards and casualty units would close at some times. Which will simply mean they won't close and there'll be a more subtle set of exclusions. Apart from the Working Time Directive, an employment contract here might include vague terms such as 'work as and when required' but then custom and usage tend to be taken into account.
Thu 06 Nov | Feels good | I know cases where people received overtime through the intervention of a union. (So it was a lot cheaper than a class action.) The people had been hired under an agreed award and the company was aware that it was reneging on that agreement.
Thu 06 Nov | Noname | >'There is no incremental cost associated with unpaid overtime.' Or more accurately, there is no *directly observable* cost associated with unpaid overtime. If the overtime is excessive and frequent, the costs will manifest themselves in higher defect rates, badly structured code, increased turnover, and of course the risk of lawsuits.
Sun 09 Nov | David Roper | Just caught up with this one. Simon Lucy is wrong. The EU Working Time Directive, which was introduced under health and safety regulations, limits employees to working an _average_ 48 hour week, unless there is a negotiated opt out. The regulations also insist on a minimum of an 11 hour rest period during any given 24 hours and for weekly rest periods of at least 24 hours in each 7 day period. There is nothing in the directive about pay, so if you're working over your contracted hours you'll have to rely on contract law. I personally think that any one _dismissed_ for refusing regularly to work beyond their contracted hours, particularly if unpaid, would have a good case for unfair dismissal. I've seen so many cases of employees having physical breakdown as a result of excessive pressures put upon them that I would be interested to hear if anyone has ever just walked out and subsequently brought a succesful action for constructive dismissal.
Where Did You Go To School? | Tue 04 Nov | Chi Lambda
The topic of higher-education has been making the rounds here and proving to be good conversation. So Im curious where you went to school: Me? B.A. Political Science, 1997 University of Minnesota - Twin Cities Campus (I work as a web-developer.)
Tue 04 Nov | tapiwa | http://www.commerce.uct.ac.za/managementstudies/undergradprogs/undergradindex.html Started in Actuarial Sciences, then switched to Finance. Class of '98
Tue 04 Nov | John Topley (www.johntopley.com) | Branston School and Community College. 1992. I work as a Java developer.
Tue 04 Nov | n/a | no school :) started working at age 18 as a developer
Tue 04 Nov | apw | Univ at Buffalo (SUNY) EE->Math->English->CS
Tue 04 Nov | apw | oh.... didn't finish  (yet)
Tue 04 Nov | someone | Carnegie Mellon University Thomas Nelson Community College Old Dominion University No degree yet.
Tue 04 Nov | Myron A. Semack | Penn State University B.S. In Computer Science I'll go back for graduate work when they offer a Software Engineering program.
Tue 04 Nov | A cynic writes | BSc Chemistry - 1988 (God I'm old) University College Cardiff (now called Cardiff University) Professional Certificate in Management The Open University Business School (1996-2000)
Tue 04 Nov | Chris Winters | University of Pittsburgh B.A. in History Currently a Java (day-job) and Perl (fun open-source-job) programmer
Tue 04 Nov | DBC | Carnegie Mellon University (now called just Carnegie Mellon) BSEE/BS CompE - 1990 Also 1 more undergrad from CMU and a Masters from Berkley, but I'd rather not say what in :) Fell into computers while building simulators for avionics systems.
Tue 04 Nov | GiorgioG | SUNY @ Buffalo College ('Buff State') Finished 11/02... Just moved to Boston last month.
Tue 04 Nov | Tim Sharrock | Cambridge University (UK) BA in Engineering 1982 PhD in Computer Aided Design 1986
Tue 04 Nov | Alyosha` | University of Arizona; Bachelor's in Computer Engineering, 2000.
Tue 04 Nov | Klodd the Insensitive | Electronics Engineer, Instituto Militar de Engenharia, Rio de Janeiro, 1987.
Tue 04 Nov | Andrew Hurst | Bachelors of Science, Computer Science Engineering 2002. University of California at Davis Working on a Masters in Computer Science at UCD as well, should finish in mid 2005 (taking one class a quarter, while working)
Tue 04 Nov | Joe Grossberg | The Johns Hopkins University, B.A. Anthropology 1998 Yes, that's right. Anthropology. Joe http://www.joegrossberg.com
Tue 04 Nov | Lauren B. | Penn State BSCS 1988 North Carolina State University MSCS 1994
Tue 04 Nov | Walt | Bachelor's of Computer Science, Brigham Young University, 2000.
Tue 04 Nov | Rick | BSEE MIT '90
Tue 04 Nov | Martha | BA in Applied Mathematics from University of California at San Diego.
Tue 04 Nov | Patterns Guy | BSE in Computer Science Engineering University of Pennsylvania 1997 Working as enterprise architect
Tue 04 Nov | Visitor | Oregon State University BS Industrial Engineering, 1991 Oregon Graduate Institute MSCS, 2005 (projected)
Tue 04 Nov | Billy Boy | University of Western Ontario http://www.uwo.ca/ BSc in Math and Comp Sci. Stopped attending in '93, elected to graduate in '95 with a 3 yr degree instead of the 4 yr honours degree. Work as a Senior Developer/Team Lead
Tue 04 Nov | Chris Tavares | BSEE, University of Connecticut, 1991 MSCS, Rensselaer at Hartford, 2001
Tue 04 Nov | tester | Hopkins 2001, BS in CS
Tue 04 Nov | matt | University of Florida B.S., Software Engineering
Tue 04 Nov | Philo | BSEE US Naval Academy, 1989 JD Georgetown University, 1999 Philo
Tue 04 Nov | John Rosenberg | B.A. in Computer Science and Psychology, Yale University M.B.A, Harvard Business School Ph.D. in Economics, Massachusetts Institute of Technology (MIT)
Tue 04 Nov | Chris | BS in Computer Science, University of Maryland (College Park)
Tue 04 Nov | runtime | BSCS University of California, San Diego, 1996 MSCS University of Washington, Seattle, 1999
Tue 04 Nov | Mongo | B.A. Philosophy (Honours) University of Calgary, 1996 Grad Certificate in Strategic Mgt UC San Diego / Alliant Int'l University Joint Program Currently Attending Part Time
Tue 04 Nov | Prakash S | BE in Comp Sci & Engg - Univ of Madras, India - May '01 MS in Comp Engg - Rutgers Univ - Dec '03
Tue 04 Nov | Robert Jacobson | What are the chances -- two schools in common: B.A. Political Science, 1995 University of Minnesota - Twin Cities (Two years before chi Lambda -- same major even) J.D., Georgetown University, 2000 (One year after Philo) Small world.
Tue 04 Nov | flamebait sr. | Crazy go nuts university (Not the one in Canada)
Tue 04 Nov | CGNU Alumni | Go Dumples!
Tue 04 Nov | Jason Watts | California State University Northridge BS MIS 1995
Tue 04 Nov | Nat Ersoz | > BSEE > US Naval Academy, 1989 Way to go Philo!
Tue 04 Nov | Nat Ersoz | Oh yeah, BSEE, Rose-Hulman Inst., 1983
Tue 04 Nov | ko | Bachelor Information Technology, grad 1999 Queensland University of Technology australia.
Tue 04 Nov | Jim Rankin | BS Logic and Computation Carnegie Mellon University, 1992 MA Linguistics University of Pittsburgh, 1998 I see a couple CMU and one Pitt alum out there :).
Tue 04 Nov | Jim Rankin | Ok, stupid question. What's a JD?
Tue 04 Nov | Chris Tavares | JD = graduated from Law school.
Tue 04 Nov | Mongo | I believe that means, e.g., 'Doctor Philo' to us peasants ... As in Juris Doctor Philo?
Tue 04 Nov | H. Lally Singh | BSCS & MSCS from VT. Taking my last class & finishing the programming work for the thesis by Dec. Go Hokies.
Tue 04 Nov | Philo | JD = Juris Doctor = (USAian) Law Degree As for 'Dr. Philo' ... A JD requires 83 credits of post-undergraduate study. So it's as many hours of study as a Master's and PhD combined. It does *not* require a thesis. Traditionally, despite the 'Doctor' in the degree, JD's are not referred to as 'Doctor,' though some may try to be called 'Dr.' as an affectation. I aspire to earn the title 'Counselor' :-) Philo
Tue 04 Nov | no name | <LAWYER JOKES>
Tue 04 Nov | Prakash S | so, what's the average no of years one studies to get a JD? does that include passing the bar too?
Tue 04 Nov | Philo | 3 years full time, 3.5-4 years part-time. That does not include the bar exam. There's an eight week crash course for the bar soon after graduation, and the bar exam is 2-3 days (depending on the state) Philo
Tue 04 Nov | Guy Incognito | 1978 to present - School of Hard Knocks
Tue 04 Nov | Dosen | Electrical Engineering - Control System electives graduated in 96 Institut Teknologi Bandung, Indonesia
Tue 04 Nov | DBC | Jim Rankin: Study under Wilfried Sieg? That guy's Logic and Computability classes rocked.
Wed 05 Nov | Mahesh | B.Tech. Mech Engg IIT Madras, India, 1996 M.S. CSC IISc, Bangalore, India, 1998
Wed 05 Nov | richard | Hull University (UK) BSc Software Engineering
Wed 05 Nov | John Ridout | "Went to one of the great universities, I suppose: Oxford; Cambridge; Hull" ;-)
Wed 05 Nov | Ran Whittle | Indiana University Mannes College of Music
Wed 05 Nov | Fernanda Stickpot | University of Oxford, BA (Joint Hons). Modern Languages, and eventually (I hope) MSc in Software Engineering.
Wed 05 Nov | Jim Rankin | 'Study under Wilfried Sieg? That guy's Logic and Computability classes rocked.' Yes, I did actually! Goedel's law n'at were real mind benders (still are, of course). It was fun being part of such a small major, too. My parents got to speak with all of my professors personally at graduation. Ah, memories.
Wed 05 Nov | Aussie Chick | University of New England (Armidale Australia) B. Comp Sci (Acc.) Graduate in April this year. ko -> do you live in Brisbane? Go to highschool there?
Thu 06 Nov | LesC | < smartarse reason='study for exams'> Do you mean school or University. It's not the same thing you know :) < /smartarse> BA (hons) and MA in Applied Japanese Linguistics (!) Monash University 1993 GradCertIT, Swinburne University of Technology (last exam today) Uncompleted AdvCertCivilEng, Barton TAFE plus (and I'm surprised no-one has mentioned this sort of thing) Oracle 8i (DBA) training, Oracle Education, Melbourne
Sun 09 Nov | Mark Ghosh | Physics Major, Computer Science and English Minors: The College of Wooster, 1999 Computer Science and Engineering, Masters Degree: The University of Toledo, 2003 http://dinki.mine.nu/weblog/ Love your Website and your Ideas, Joel. You have a huge fan and supporter here.
Any seen this? | Sat 08 Nov | TW
I was running some VB 6.0 code through the IDE today and when I clicked on the Toolbar on the main form all that showed up were grayed out buttons with the label Hack Alert. So I paniced and checked my firewall and ran a virus scanner all to no avail. I then thought someone hacked my project. So i searched through it for Hack plus a couple other phrases and nothing turned up. Has anyone seen this? What is it?
Sat 08 Nov | Frederic Faure | Did you run your anti-virus lately? :-)
Sat 08 Nov | Fairlight | Have you used a 3rd party component in your VB6.0 project ?
Sat 08 Nov | Chris Altmann | Google for hackalert and MSCOMCTL.OCX or hackalert and Toolbar Doesn't say why it happens, but it might give you a direction to investigate.
Sat 08 Nov | TW | My guess is that a coder at Microsoft added this text as a "hack" or an improper way to code something (they hacked it together) and sometimes it just shows up in your program.  I'm just glad it's not a virus.
Matrix vs. Project oriented organizations | Sat 08 Nov | I Hate The Matrix !
Hi everybody, Just wanted to hear your opinions on the subject. Im currently working in a matrix oriented organization and it seems to suffer from the following illnesses: 1. There is a constant conflict of interests between project management and the software group. To me it seems that the software guys sometimes refuse to do the right thing for the project because of pressures arriving from their direct manager (which is not the project manager). 2. Lack of commitment to the project (again - from the software group). In my experience - developing software in project oriented organizations proved to be much simpler. Not because it was technically easier (I suspect that this is the main argument of matrix supporters), but because of the negative psychological effects caused by the matrix method (lack of commitment, conflicts of interests etc). Do you have a different experience in the subject ? If so - how did you manage to avoid the pitfalls of the matrix ?
Sat 08 Nov | Neo | In The Matrix, I am "The One"
Sat 08 Nov | Agent Smith | Mr. Anderson, welcome back. We...missed you.
Sat 08 Nov | Andrew Hurst | We have a matrix setup where I work, and I think it works out better. you're always going to have conflicts of interests and guys that don't want to do stuff. But where the matrix setup comes in handy is in how each department doesn't need its own technical staff, you have one big department with that staff, and they go out and do work for every other department as needed, charging them by the hour. Saves money, I would think. Also, if the boss of someone who is matrixed is still telling them what to do on projects, then that boss is in the wrong. As we run it when you're matrixed the people you work for tell you everything what to do, and the only thing your 'real' boss does is make sure you're on the right career development path.
Sat 08 Nov | David Fischer | I work in a matrix organization. My project supervisor sets priorities and technical guidance for the project tasks. My manager sets work priorities (which project do I work on, determining priority when two different projects contend for the same resources). It seems to work pretty well.
What ever happened to "shrouded" source code? | Sat 08 Nov | Bored Bystander
This question is inspired by the thread on Kylix abandonment. What ever happened to the concept of selling shrouded source code? Did any company ever do this successfully with commercial products? This is source code where all identifiers have been bulk replaced with randomly assigned names, all whitespace has been compressed out, and expressions may have been replaced with functionally identical but hard to understand expressions. The company that made PC-Lint (a tool that inspected C code for correctness) years ago had a product that created shrouded, obfuscated C from readable and formatted C code. Im just curious if this was ever used by real companies. I never heard of products distributed in this way. It seems to me that the degree of mangling that this implies would be useful even to keep a compiled binary product from being reverse-engineered, since the table of exports, etc would be unreadable in the executable.
Sat 08 Nov | EastIndian | There are several commercial obfuscators for .NET since the .NET assemblies (MSIL code) can be easily disassembled. Infact VS 2003 has one in-built.
Sat 08 Nov | Julian | There are lots of Java Obfuscators out there. http://directory.google.com/Top/Computers/Programming/Languages/Java/Development_Tools/Obfuscators/
Sat 08 Nov | Dan Maas | Why ship obfuscated source code when you can just ship a binary? NVIDIA sort of does this with their Linux driver. Most of the code is shipped as an unlinked object, but with the symbols obfuscated out. This is because the linking step depends heavily on kernel configuration, so they couldn't just ship a linked binary.
Sat 08 Nov | jm | Most people are aware, but some might not be, that Java 'binaries' can be decompiled right back to source using standard tools that ship with the JDK. So lots of people already use obfuscators to try to jumble up the names and relationships in the source. Same thing for .NET.
Sat 08 Nov | Bored Bystander | Ok, these responses make me feel properly clueless. ;-) Thanks for dragging me into the 21st century.
Hacking & Learning CSS | Sat 08 Nov | Bored Bystander
Hello, I am adapting Postnuke for a non-profit organizations web site. Postnuke has several skins (themes), one of which I butchered for the style of the site. In order to control the look and feel of the site, I need to modify the style sheet that comes with the theme. My problem is severalfold: - Learning CSS. - Identifying and implementing a style that will be accepted and understood by the users. - Debugging what I come up with. - Managing the many styles that Postnuke uses, most of them undocumented. My biggest problem with the existing style sheet is that, in true geek fashion, the default fonts used for stories are too damned small. If I could have just fixed that I would have been fine. When I tried a bulk replacement of the font size x-small with small in the .css file, I ran into the first major problem: all of the links on the home page that were unvisited stayed x-small, and the hover effect caused them to expand. Not attractive, very distracting. This is saying that the existing anchor specifications were fragile and broken. One issue is that the existing style sheet implements many anchor pseudo class styles for slightly differing appearance of links in different contexts. So one thing Ive been trying in order to tame the complexity is to use the macro processor m4 to generate the style tags from specifications. This has worked OK but I keep running into exceptions that break the macros I write. I have Hotmetal 6.0, which has an OK CSS style previewer/editor. Since this is a freebie I dont feel like buying a $50 piece of shareware or commercial ware to manage the styles. Ideally, I would like to enumerate all of the anchor functional classes (use for different types of Postnuke content) and attach to each a set of attributes for its links in each of the link states. It would also be nice to have a tool that showed which attributes of tags were inherited from which style. Also, it would be REAL nice to have a tool that essentially debugged the effect of CSS styles. I like what Fogcreek has done with their links on the home page, but its been difficult to dissect and understand whats going on. Im quite willing to use an unrefined command line tool to manage this stuff. While all this probably sounds ridiculously simple in the context of real languages like C# or Delphi, its aggravating and time consuming because there are no real tools out there besides twiddling the styles and seeing the effect when you refresh.
Sat 08 Nov | Andrew Hurst | Not related to css, of which I've always battled with. I would suggest not using PostNuke if you can help it. Its been plagued by developer arguments since it split from phpnuke, at leats in my watching from the perl Content Management System camp. I would suggest Drupal, http://www.drupal.org/ . The guy that runs it has it together, and the design of the system is very good, from what I've seen. Anyway, now that thats out of the way (as I know it was probably annoying, I'm sorry), I've never found a better way to change things in CSS other than editing the .css file and reloading. Its slow and painful yes, but it gets the job done. I've just started using Dreamweaver though, and it has a wizardish interface for creating new CSS styles, where you can choose the font, size, color, etc etc all from an easier interface than a text file...
Sat 08 Nov | Matthew Lee | Whatever CSS you learn to hack on PostNuke can hardly be considered a good example of CSS. In fact, PostNuke is a bad example of pretty much everything- Avoid it at all costs if you can. You're looking for something canned- what's your feature set? How much do you need?
Sat 08 Nov | Stephen Jones | Is there anything to stop you simply editing the CSS files by hand? They are no harder to edit than standard HTML, although the syntax is slightly different. And doing it that way will stand you in good stead for next time. Greenspan's comments on 'middleware' come to mind here.
Sat 08 Nov | uncronopio | I recommend reading Jeffrey Zeldman's "Designing with web standards" (ISBN: 0735712018), skipping the first 150 pages - where he tries to convince you of using standards, reading the CSS stuff, and editing all the style sheets by hand (with your favourite editor).
Sat 08 Nov | Tom Vu | I usually just copy a site's css sheet that I like.
Sat 08 Nov | JD | Let me suggest you following blog entry from Simon's weblog. http://simon.incutio.com/archive/2003/06/03/bookmarkletsAndCSS [In general, if you want to get useful info about CSS, add his blog to your blogrolll.] Maxdesign has some EXCELLENT tutorials. Check http://css.maxdesign.com.au. They currently do not have kind of tutorials you need (font sizes/anchors etc.), but if you go through them they will HELP you a lot as far as your CSS knowledge is concerned. Their tutorials have steps which you follow in order to learn one particular trick. I highly recommend it. JD http://jdk.phpkid.org
Sat 08 Nov | JD | Okie, Correct URL for Maxdesign CSS tutorials is http://css.maxdesign.com.au JD http://jdk.phpkid.org
Where to Buy Visual Studio | Sat 08 Nov | C# Noob
Im an independent contractor who is moving from Delphi to C# after using the $99 Visual C# for a while and liking what I saw. It turns out this package doesnt allow you to connect to SQL Server, so I guess I need to spend about $1000 for Visual Studio. Since I am footing the bill for this myself, where can I get the best deal?
Sat 08 Nov | Brad Wilson | Buy an MSDN subscription online. You'll pay approximately the same price for the MSDN sub level as you would for the included Visual Studio package.
Sat 08 Nov | Philo | Definitely - you can get MSDN Universal for around $1300. That also includes just about everything MS makes as well as five developer incidents. Philo
Sat 08 Nov | Beef | Developer incidents... had to laugh at this one.  Found out the Jet Engine doesn't support bitwise operators this way.  Too bad the program was in production and no one even noticed, until I said 'Hey guess what, this doesn't work!'
Sat 08 Nov | C# Noob | Thanks - it looks like MSDN is the way to go. From what I can tell, MSDN Professional is $1199 (-$110 for DVD) while Universal is $2799 (-$300). Can I do better if I don't buy directly from Microsoft? http://msdn.microsoft.com/subscriptions/pricing/default.asp
Sat 08 Nov | Brad Wilson | You can definitely do better not buying from Microsoft. I have, in the past, seen MSDN Universal for ~ $1100.
Sat 08 Nov | Robert Jacobson | You can get Visual Studio for much less than the official Microsoft price. This search on Pricegrabber turned up prices as low as $629: http://www.pricegrabber.com/search_getprod.php/masterid=703621/search=Visual%2520studio/ut=0cd2eab808e5c69d
Sat 08 Nov | Kyralessa | Take a course at a local college; then you can buy the academic version for a lot cheaper.
Sat 08 Nov | Philo | ...of course, you can't *use* it for anything... Philo
Sat 08 Nov | Robert Jacobson | >...of course, you can't *use* it for anything...< This topic was raised in a newsgroup post a few days back. Apparently there aren't any restrictions on using the Academic version for commercial purposes (if you buy it at retail.) http://groups.google.com/groups?hl=en&lr=&ie=UTF-8&oe=UTF-8&selm=bod3gv%242p8%241%40ctb-nnrp2.saix.net (complete thread)
Sat 08 Nov | somebody | When I was a student, I purchased the boxed Academic edition of Visual C++ 6.0 and can confirm that the EULA (as well as the rest of the product) was identical to the Professional version. From that newsgroup post, it looks like this still applies with Visual Studio .NET (though I think they actually add some extra stuff to the Academic edition now?). Note that the Academic edition is VERY different from the Learning edition. The Learning edition lacks a bunch of features (such as compiler optimizations) and outputs EXEs that pop up a message on startup identifying the EXE as unlicensed for distribution.
Plone | Sat 08 Nov | whoa...
They mentioned Plone on Slashdot this morning. Anybody here try Plone? Its an open source content management system. How does it compare to CityDesk? http://www.plone.org/ I havent done a comparison, but from the looks of it, I think Joel needs start really beefing up CityDesk to compete well against projects like that. At the very least, the design of their site is quite an inspiration, coming very close to the ideal clean beautiful site. Much better than that CSS Garden mentioned on Joels blog.
Sat 08 Nov | Sven Hohage | Plone is based on Zope. Zope is an application server mainly written in Python.
Sat 08 Nov | Guyon Morée | hmmm, plone looks really nice... but i think that the strength of CityDesk is that it's actually a nice alternative to something like plone or any of those other server-based cms. the fact that you _only_ need Citydesk and a ftp connection gives it the potential of being very usefull for the millions of people who've never heard of Zope, php, perl, server-side (...)
Sat 08 Nov | Phoenix | Do you have an idea what trouble it is to set up Python, Zope and Plone on a $2/month hosting with a minimum-wage admin who has just started to deploy PHP, let alone mySQL? While CityDesk *Just Works*.
Sat 08 Nov | Wayne | Yeah, but Nasa uses plone! http://www.plone.org/about/sites
Sat 08 Nov | Frederic Faure | CD and Plone aim at two different users: The former offers a WYSIWIG interface to generate static, self-contained files; The latter is a CMS, that generates on the fly pages. BTW, Plone seems a bit heavy :-)
Sat 08 Nov | Tim Lara | Seems like Plone is more along the lines of Moveable Type than CityDesk...
What Ballmer meant to chant | Fri 07 Nov | I can't wait
Desktops, Desktops, Desktops. Desktop is the shiny new thing that lures otherwise smart CIOs into a Windows environment. MMMM shiny. Longhorn shiny. If we make it pretty they will use it. Client server and fat client computing is long overdue to exit the corporate environment. Microsoft knows this and is clawing to hang on with fancy desktops.
Sat 08 Nov | Li-fan Chen | I dunno, sure will miss my fat clients unless something really good comes up.
Sat 08 Nov | Philo | What would you rather see in its place? Philo
Sat 08 Nov | Mike Treit | This brings up a mild annoyance I have whenever there is a new Windows OS release in progress. Typically, there are tons of improvements to the OS kernel and base services: stability improvements, API enhancements, new underlying technologies, etc. Yet many of the reviews focus exclusively on the UI changes, because they are in your face and obvious. It's lame when there are tons of things going on under the hood, yet sites that discuss the OS progression invariably complain that there don't seem to be a lot of changes since previous builds (for example, when comparing a previous beta build to the latest one), just because the UI has not been significantly updated. A similar argument is the one above that says 'Longhorn shiny' in a disparaging way, just because there are a lot of slick UI updates. Just because the UI is pretty and eye-catching does not mean that there are not also major changes and improvements going on under the hood. Go read the PDC SDK material for Longhorn, which covers many of the fundamental changes being made to to underlying OS APIs and services, before complaining that it's all about the eye candy. It's not.
Sat 08 Nov | H. Lally Singh | We've had the thin client for years; it's called the web browser :-( Beyond that, there's not enough money in it to make anyone interested in selling a good one. Also, I'm not sure it's worthwhile: network latency's going to stay terrible for a while, and as long as we have that, nobody's going to want to do their work on a network-mounted disk*. * Unless CODA's better than I expect it to be.
Sat 08 Nov | M | 'If we make it pretty they will use it.' Apple seems to have made a pretty good living out of this concept. Aesthetics is a common way of choosing one good over another.
Sat 08 Nov | Stephen Jones | You're right Mike, but quite wrong to blame the reviewers. It's the MS PR machine that draws attention to the shiny bits, which are normally the very things you hate about the change. It often takes weeks or months of use to find out the small improvements under the hood.
Sat 08 Nov | Philo | Stephen - here's the 'what's new in Office 2003' page: http://www.microsoft.com/office/editions/prodinfo/compare.mspx I just skimmed it, but I don't really see any 'looks prettier' features - they're all pretty functional. Yet every Office 2003 review I read starts with a commentary on 'the facelift' IMHO, MS doesn't push the look and feel changes because they don't have to - they're obvious when you open the app. The reason we read about the chrome more than the engine is that a LOT of tech reviewers aren't techs - they still think 'oooo, pretty' is a significant change. Philo
Sat 08 Nov | Frederic Faure | Besides, if the UI didn't change between releases, users wouldn't understand why they need to upgrade.
Can Windows ever be secure? | Fri 07 Nov | Nat Ersoz
http://www.eweek.com/article2/0,3959,5264,00.asp http://news.com.com/2100-1001-900905.html?tag=fd_top Old news (May 13, 2002), but not .that old Jim Allchin [that vi guy], Microsofts senior vice president for Windows, warned in testimony Tuesday that too much disclosure of technical information in the wrong areas would benefit hackers and create more opportunity for virus attacks. Compare this disposition to that of open sources many eyes philosophy: http://www-106.ibm.com/developerworks/linux/library/l-oss.html Certainly begs the question can windows ever be secured?. Certainly in the thread Is Linux more Secure than Windows nothing was offered by the MSFT fan club other than Security is impossible, so quit whining Which is in keeping with the party line coming out of Redmond these days. Can a Windows workstation install ever be secure without a 3rd party (most likely linux or BSD) firewall guarding the door? If so, then what references would a person read to insure security on a single workstation install? (Several references were given in the Linux thread)
Fri 07 Nov | no name | Alchin's warning doesn't derive from Windows being more vulnerable than Linux, but from disagreeing with the premise that exposure equals security. Although Schneier and other luminaries favour disclosure, it's also possible to consider the way, for example, presidential itineraries and many other security issues are handled. Intelligence agencies don't reveal the names, addresses and routes-to-work of their operatives.
Fri 07 Nov | Tom Vu | I doubt it. Windows is a product from a large company that makes alot of money. Their goals differ. I ask, can linux/bsd ever be profitable?
Fri 07 Nov | MX | > Certainly begs the question 'can > windows ever be secured?'. I wonder - was 'ultimate security' a design requirement for Windows? I think not. I think that they wanted to have as much features as possible, in order to sell as many Windows licenses as possible. Features usually sell products. If MS has to decide between improving the graphics of a certain widget, which all people see, and improving security, which few people see and acknowledge, they do the former. So - I belive that, until now, security was a very low priority for Microsoft. Because of the current PR programs regarding Windows security, they consider it more important, now. And, because they consider it more important, they shall secure it. I mean, it's that simple. The only problem is that they can't do this in one month - it will probably take more than a year.
Fri 07 Nov | Frederic Faure | There's always a balance between security and usability. The best way to secure your computer is by putting it in a safe. Very secure... but not very productive :-) It wouldn't hurt if Windows came with a good stateful firewall, turned on by default, along with an anti-virus + anti-spam package.
Fri 07 Nov | Mister Fancypants | Uh, can Linux ever be secure? Last I checked there were security breaches still being found in Linux and other UNIX operating systems on a regular basis. Sure, they tend to be found more in Windows these days, but if there's a new Linux hole found every month and three Windows holes found every month, that's still plenty of insecurity to go around, and none of the systems currently deployed can really be considered 'secure' as some sort of absolute term. Security is always a balancing act with convenience and cost. Clearly Windows biases things a bit more towards convenience, which I think is the right choice for them. Most UNIX vendors bias more towards security, which is right for them (but means they'll never take over the mainstream desktop user market).
Fri 07 Nov | Myron A. Semack | There is no solid evidence that the open source 'many eyes' development model is any more secure (or any less) than the closed source model. People can argue what they 'feel' is a better approach, but that's about it. There's pleanty of examples of both models failing (SQL Slammer, sendmail exploits, etc). Also, a closed source development model does not necessarily preclude review of the source code by outside parties. I know that Microsoft regularly has third parties review their source code. And, to answer your question about leaving Windows exposed to the Internet without a firewall: Yes, you can. As long as you have your patches up to date, and you don't have unnecessary services turned on. A firewall is not a substitute for good secuirty practices internal to your network. That's true for ANY platform. 'Hard and crunchy' on the outside, 'soft and chewy on the inside' doesn't work. Just think of all those corporate laptops out roaming around. Any one of them could be compromised, and then cause problems once they're connected behind your firewall. There are pleanty of resources for locking down Windows. Microsoft's Baseline Security Analyzer is the best starting point.
Fri 07 Nov | Philo | 'nothing was offered by the MSFT fan club other than 'Security is impossible, so quit whining' Which is in keeping with the party line coming out of Redmond these days.' Last time I checked, a security expert saying that *any* system on the internet could be '100% secure' would be grounds for firing him. Or, to put it another way, 'the only way to make a system 100% secure is to take out the network card, unplug it, and lock it in a vault' If there's a need for internet packets to go from the wild to your server, you've got a security vulnerability. The issue has always been risk analysis and risk mitigation. Also, IMHO, asking 'I have to choose between Windows and Linux - which platform is more secure?' translates to 'I have no idea what I'm doing, but I'm going to hire a lot of people and throw money around until we're bankrupt. Can you help?' Choosing a platform (Windows or Linux) has a thousand variables - what do you want to do? What internet access do you need? Where are your vulnerabilities? What scalability do you need? What are your data storage requirements? What will affect your TCO most? What talent pool do you have access to? etc, etc, etc. Asking 'which platform is more secure' is a bald-faced indication that you have no idea what you're doing. In addition, poor sysadmins or security policies will render either platform's security abilities worthless, and that's where a vast majority of breaches come from. Now, given all that, I really think that arguing over which platform is more secure is a flat out waste of time. The concern is 'how do I best secure what I have?' Philo
Sat 08 Nov | Not heading for Linux either. | '' 'Security is impossible, so quit whining' Which is in keeping with the party line coming out of Redmond these days.'' Exactly. If not this drivel we get 'blah blah more popular, larger target blah blah that's why it has more holes blah blah' On another note. Microsoft can't even seem to make their servers work correctly until the 4th service pack. Case in point, just put in a new x445 with 10 gb ram. I enable /PAE to use the extra ram. Looking through knowledge base I see that it is only SP4 on Win2k Advanced server that makes this even work correctly. 'We're enterprise quality. Really we are. Really. I'm serious. Really.' I've fired Microsoft. I can't stand working with their broken shit anymore.
Sat 08 Nov | H. Lally Singh | IMHO, MS won't get serious about security because it can't. Its culture is based around competition (which isn't too bad a culture for a business), not engineering. As long as they spend their time worrying about their competitors, they can't spend the time needed to make really solid releases. Spend 3 years working on another system, be it Unix or OS X or what-have-you. Then go back to windows. Every time I tried (and I really did try to give them a fair shake, several times), the flaky engineering got to me. This is obviously subjective, but it's the only measure I have. My feelings using windows alternates between wanting to vomit and to throw the machine on Gates's head*. Others seem to get along fine by it, but I personally don't know one person who's spent more than a couple of months on another OS and happily came back to Windows. I honestly get the feeling that the MS fans I've talked to credit them with all the innovations of the entire industry, because they've never seen the 'real world' of computing. It's an ecosystem and MS seems to put a hood over its users, telling them that MS is the center of the world. Between their machiavellian business strategy and the thick layers of BS, I just can't stand them. Sorry for the rant. It just flows whenever 'MS' and 'engineering' come to me. * I'm just a naturally violent person. It's in the blood.
Sat 08 Nov | Dan Maas | I don't think most Windows customers are willing to pay the marginal cost of good security. A Windows license is currently something like $100-200. Securing Windows to the same level as OpenBSD would probably double that at least. MS would lose a lot of sales if the basic Windows client was $400.
Sat 08 Nov | Xxxxx Xxx | Comparing Windows against Linux is unfair. Windows is a platform and Linux is just a kernel. You have to include the security holes of Linux plus the security holes of Apache, Php, Mozilla, Thunderbird, Perl, the hundreds of shell utilities and perl modules. The default installation of a RedHat distribution needs plenty of patching.
Sat 08 Nov | Xxxxx Xxx | The biggest security flaw is poor password management. Most users choose an English word as their password. Just launch an attack using words in the dictionary and the site is doom. Hundreds of web sites get defaced that way everyday.
Sat 08 Nov | Not headed for Linux either | 'Spend 3 years working on another system, be it Unix or OS X or what-have-you. Then go back to windows. Every time I tried (and I really did try to give them a fair shake, several times), the flaky engineering got to me. ' That is exactly what I mean. Maybe I am too much of a perfectionist, but when I choose a server product I wan't performance and reliability and security. I don't want to wait for the 4th service pack to have something as big as highly touted as /PAE to finally work. That is unacceptable. I also detest the Windows design paradigm assuming a user is going to watch the screen at all times and be only too happy to click on the plethora of dialog boxes that pop up. Case in point. Reading a book on SQL Server Backup and Restoration the author cites a company that didn't have good backups because no body logged on to the console to notice that the tape backup software was waiting for a response to a yes / no dialog box. I am not sure if it was Windows backup or a third party backup software. My point is how the hell is that enterprise ready software? Server products should NOT be written to expect a user to tell it what to do. It should be set it and forget it. It is all these damn desktop programmers that extrapolate their design practices to server products. Those design practices are fine for the desktop but have no place on the server.
iTunes and iPod | Fri 07 Nov | Philo
Didnt someone complain about not being able to put their iTunes downloads on their portable MP3 player? Turns out this is by design: http://www.theregister.co.uk/content/6/33850.html So now we have it on record: the music store is a loss leader. Jobs said Apple would pay its dues to the RIAA, then seek to make money where it could, from its line of hardware accessories. When the conversation turned to rivals such as eTunes and Napster, Jobs said: They dont make iPods, so they dont have a related business where they do [make money]. ***************** Apple doesnt WANT iTunes to work on anything but iPods, because thats where they plan to make a profit. IMHO, Jobs just single-handedly killed iTunes. I think that if this little nugget becomes common knowledge, nobody will use it. In fact, this could hurt iPod sales if the reverse implication (that iPod can only play iTunes, which isnt true) becomes a common assumption. Philo
Fri 07 Nov | Prakash S | a couple of days back I saw a new Rio player that can d/l songs from i-tunes windows and mac. so much for apple's policy!
Fri 07 Nov | Interaction Architect | Apparently Steve Ballmer is a big iPod fan... http://www.iwantmyflashtv.com/macboy/ballmersipod.swf
Fri 07 Nov | abe | But everyone knows you can only play iTunes music on your iPod.  I just don't see what the big deal is.
Fri 07 Nov | Chi Lambda | Hmm, usually it's the other way around. You buy the hardware but it's the software the real money maker. PCs and MS Windows are an example. Video games are another example.
Fri 07 Nov | M | I would fathom that the windows iTunes will do some good things for iPod sales overall and good Mac advertising for windows users, so they will get their ROI. Loss leaders do seem to work pretty well. Don't underestimate the religious potential of Mac-zealots. Even if iTunes for windows fails, they all see it as a big win for their cause against evil Bill. I personally use iTunes - love it - and use my phone/PocketPC-pda as an MP3 player. I find the $.99 price to be a good enough deal to mess around with the formats a little to bridge the gap. I have always wanted an iPod, and sure, I'll admit, want one even more now. Yes, I am the same guy who will buy a Sony DVD just because I have a Sony TV. I am reminded of the old Japanese proverb: 'He who has a CD Player must also have CD's.' In the case for Apple, it is the reverse.
Fri 07 Nov | Myron A. Semack | So, Apple is commoditizing their compliments (the music service is a compliment to the iPod). Not too much of a shock there. Now, here's a question: Apple isn't making money from the music store. Other music services (MusicMatch, etc), are trying to offer prices that are competitive with the iTunes. Are these services making a profit? If they are, how? Most of them don't have a hardware business to prop up their sales. Are they doing something special to keep costs down that Apple can't do? If they're not making any money either, then it stands to reason that this online music store fad could evaporate pretty quickly, except for companies that are using it as a complement to their hardware business (Apple and Dell).
Fri 07 Nov | ktm | Only Sony can kill the Ipod.
Fri 07 Nov | Brad | You really don't like iTunes, do you?! Okay, so music that you buy from the iTunes music store can only be downloaded to one kind of MP3 player, the iPod. But: 1. You can burn CDs from the music you buy from the iTunes Music Store, and those CDs will play in any CD player (portable, home stereo, computer, etc.) 2. You can also use iTunes as a jukebox on your computer, playing tunes that you buy or tunes that you rip from CDs. So really, the only drawback is if you want to play that music on a portable MP3 player, and if your portable MP3 player isn't the iPod (currently the top-selling portable MP3 player by a long shot), then you're out of luck. Fine, then don't use iTunes.
Fri 07 Nov | Prakash S | http://reviews.cnet.com/4520-6450_7-5102324-1.html
Fri 07 Nov | GenX'er | I was the original 'complainer' Update..... 1) I had to burn the songs that I bought through ITunes to a CD. 2) I then proceeded to rip the songs back to ITunes as a Mp3 (This is the point at which I was hoping for a better solution). 3)Now that I have the song in Mp3 format I can copy it to my Pocket PC memory cards or burn another CD with MP3 encoding so my car stereo (which supports Mp3) & my DVD/CD Stereo in the house (which also supports Mp3) can play it. I can work around the silliness but my point is: I bought the song - I own it - therefore why punish those of us who do it legally? Meanwhile those of you who ilegally download the same songs via LimeWire / Kazaa etc - don't have to do any work arounds!!!! Just doesn't make sense......
Fri 07 Nov | Fred2000 | I understand the problems with the iTunes Music Store, DRM, and mp3 players, but I don't really care at the moment. I use a Mac with an iPod, and it works so well that I can't complain.
Fri 07 Nov | ktm | Fred2000 hit the nail on the head. For those that care, they figure out how to download from kazaa, re-rip, re-burn, and further fudge about until they get what they want. However, most users don't care.
Fri 07 Nov | Philo | 'You really don't like iTunes, do you?!' Actually I have zero opinion about iTunes in general. I *do* support the licensed downloading of music for small fees, though I think RIAA should've been concentrating on that instead of their jihad/crusade against p2p for the last five years. What I *don't* like are companies with good products making stupid mistakes. Like setting up a restrictive DRM regime and not prepping your support staff to treat confused customers gently, or having the CEO openly admit that he's trying to lock his revolutionary online music service to his hardware so he can make a profit. Even if that's the plan, IMHO it's a mistake to openly admit it. But then, Jobs is an arrogant idiot, so this isn't really any kind of surprise. Philo
Fri 07 Nov | NC | Geez man. Loosen up. You have one third-hand account of someone who wasn't impressed with the Apple service, and a story from the Register (ugh) where some writer thinks that Steve Jobs is a lousy businessman. So he's not making money on it. Big deal. So Joel doesn't make money off of having these forums. Big deal. They each have their reasons for doing so, one of them likely being advertising. Think broader, how much is it worth to Apple to have millions of Windows PC's with AAC-formatted music on them? I don't know, but it's certainly worth something. Of course he's locking it to the iPod. Apple is primarily a hardware company, and a very good one. How much do you think it would cost to get the same amount of publicity as Apple got from porting iTunes to Windows? Lots. How much is it worth to them to have me using their software on Windows, and looking at their logo everyday when I run iTunes? Lots. By the way...your grocery store probably sells milk at a loss too....ssshhhhhhh....
Fri 07 Nov | Philo | So pardon me for pointing out what I consider to be bad business moves when I see them. This is a discussion board and you're saying I shouldn't discuss things? Yeah, the grocery store probably sells milk at a loss. I'd still say it wouldn't be too bright for the owner of that store chain to proudly say in an interview 'yeah, we sell milk at a loss to suck people in so we can make a profit on everything else we sell' And of course I have to apply Philo's 'Our sales would plummet' law here - would iTunes do as well if it said in large friendly words on the home page 'WARNING - ITUNES MUSIC CAN ONLY BE CARRIED ON IPOD MP3 PLAYERS'? ;-) Philo
Fri 07 Nov | Dennis Atkins | The original article states that all music copyrights are held by a greedy cartel of 5 labels. Is this a fact or something they made up? I know that no cartel owns the copyrights to the songs from our punk band - it's a small indy label. And looking thorough my record collection, I am skeptical that many of the small labels represented there are really owned by one of 5 giant corporations, all of whom are evil.
Fri 07 Nov | NC | Philo, I'd be the last one to suggest that you or anyone limit the discussion. I'm just saying that I don't think he's an idiot for trying to take a long-view at things. Using a product as a loss-leader is perhaps risky, but it does work in many situations. I used Musicmatch until iTunes came out, and I won't go back anytime soon. The next time I look at an portable player I'll consider the iPod, and if I'm using iTunes at the point it will certainly affect my decision. Why is it bad practice to announce your intentions? Would you still come here if Joel announced that these discussion groups are a way for him to get cheap advertising for his products? I would imagine so. It's a very good way for him to sell products and services, and more power to him. Besides, iTunes music doesn't have to be just for the iPod. It rips my music to MP3's just fine, and plays my existing MP3's very well. It's not a huge lock-in. Then again, I'm in Canada, so the online store doesn't work for me.
Fri 07 Nov | Philo | Here's a list of the labels that are members of the Recording Industry Association of America: http://www.riaa.com/about/members/default.asp That's just one of the five label organizations. Philo
Fri 07 Nov | elmay | IMHO, my iPod is my "gadget buy" of 2003. I travel a lot for business & for personal reasons -- my iPod and a good paperback make those long international flights in coach almost bearable. I like the size of the iPod, the 40Gb hard drive, the nifty buttons and the fact that my 40+ year old eyes can read the screen. I have never owned a Mac, so I was very happy when iTunes for Windows came out. I haven't played with it a lot, but I like the smart playlists and it is fun to browse the music store. For me, it's a winner.
Fri 07 Nov | woodb | Geez Philo, you seem upset about "having the CEO openly admit that he's trying to lock his revolutionary online music service to his hardware so he can make a profit." Are you only upset by hardware lock-in?  Microsoft's business model is all about software lock-in, but that' OK?  I find it ironic that someone that promotes Microsoft as much as you have in this forum is bothered by Apple's easy to get around iPod lock-in.  I wish I could easily export Microsoft Access (or substitute with any number of Windows only applications/games/etc)  to work on my iBook.  They even tried to lock out other web browsers from msn.com, but as long as it's not a hardware lock-in it's OK?  What a hypocrite.
Fri 07 Nov | Philo | [sigh] I don't have a problem with lock-in. The whole point of my post was that I thought it was silly for Steve Jobs to openly admit iTunes is all about forcing people to buy iPods. Maybe it's just the lawyer in me, but I'm always amused when a corporate CEO freely admits to committing a possible antitrust violation in print. I would think it equally silly if Bill Gates said in an interview 'well of course our entire goal with giving away IE is to lock people into Windows' Philo
Fri 07 Nov | Dennis Atkins | Philo, the RIAA does not own all those labels! They are members of the RIAA, not owned by it. Nice try though.
Fri 07 Nov | Philo | Ah, sorry - I was thinking 'five groups of labels' (except that doesn't make sense either, since I think there's only 1-2 minor players other than RIAA). My fault. The author is talking about the 'big five': http://musicians.about.com/library/big5/blbig5.htm Philo
Fri 07 Nov | abe | In other shocking news, my bic refills don't fit in my Uni-Ball pens!!
Fri 07 Nov | woodb | And the "Initiative for Software Choice" isn't about software choice.  Now I find that silly.
Fri 07 Nov | Andrew Murray | If I'm correct, there aren't any other players on the market which implement the AAC coded. All music downloaded from iTMS is in AAC, so it seems obvious that no other players can play it save the iPod. Wait until some companies implement AAC support in their devices, somebody will hack a way to get music on them.
Fri 07 Nov | Dennis Atkins | Wow, a whole third of my cd collection indeed is from big five companies. At least I think so -- I mean these 'independent' labels like Rounder, Caroline, etc are really independent, right. What if a big five only 'distributes' the cd and the publisher is someone else -- like Peter Gabriel's Real World label is 'distributed' by Virgin. Does Virgin own Gabriel? Is he jsut their shill or is it really his label that he controls and thus 'out' of the Big Five?
Fri 07 Nov | Walter Rumsby | I remember seeing the breakdown of the .99 was something like 20 cents to Apple. So this doesn't mean that Apple is losing money "per song", it's just that it's not a point where all the networking, hardware and software costs are being covered by sales. Isn't what Apple is doing like Amazon, B&N and Borders trying to achieve profitability in the online bookseller space? Also, it's not like traditional music stores (or even chains) make that much money at least now.
Sat 08 Nov | rz | who actually makes the money in the music business? puff daddy and his lawyer? it seems like the margins are razor thin at every step in the chain, whether the music is distributed digitally or through a shop.
Sat 08 Nov | Philo | Check out the Capitol Records building when you're in LA. The money goes to the record producers. A handful of 'superstar' acts get wads of money thrown at them now and then, but that's a bell curve that burns out quickly (either they end their fifteen minutes or else they're successful enough to start their own label) Philo
Sat 08 Nov | Zealot | I've read the same report in a number of places and one of them (but I can't remember where) said that the actual transcript emphasises that iTMS just breaks even and apple makes money on iPod sales - the competition are price competitive with iTMS and are unlikely to make as much money on downloads or on hardware sales (as the other players are lower margin devices); therefore the competition need to find revenue from elsewhere or will go under. 
Sat 08 Nov | Walter Rumsby | I'd be guessing the store is running on Apple hardware/software (e.g. rack-mounted G4s, OS X, etc) so Apple's hardware/software costs have to be less than their competitors. Of course once you source the hardware/software it's a sunk cost. And economies of scale aren't what they are in the 'physical' world when you're dealing with streaming/downloading bits - i.e. costs don't necessarily shrink.
Work  Relationships | Fri 07 Nov | easy
Usually Human relationships are build on comforts rather than rights or wrongs: You both quickly reach some conclusion which is agreeable by both party and more often you do so, more mature the relationships could be. Is there any study or survey or ideas about how office relationships are build up. How about relationships with your programs/software? Idea is not obsession. Idea is to live in comfort zone.
Fri 07 Nov | anon | [How about relationships with your programs/software?] My IDE once complained that I wasn't trying hard enough to satisfy it's emotional needs. So I bashed it with a crowbar, real good.
Fri 07 Nov | sgf | I feel that way about VC 6.0 every day ...
Fri 07 Nov | Ged Byrne | It's time of month for my PC at work, so I have to be extra nice to it.
Sat 08 Nov | H. Lally Singh | I just stopped editing text in my IDE (Codewarrior hosted on Mac), and use my favorite text editor externally.  So, work relationship?  I left it and found something I liked better, talking to it only when absolutely necessary.
Sat 08 Nov | Bored Bystander | >> Is there any study or survey or ideas about how office relationships are build up. How about the movie 'Office Space'? It's about as accurate a portrayal of how management thinks of employees as anything I've seen.
Any free SSH Server for Windows? | Fri 07 Nov | Li-fan Chen
Is there a fairly well managed free-as-in-beer SSH Server for Windows by the open source community? Or do you have to go with SSH Communications for the commercial stuff? I just thought I ask because I used to use alternatives and I want to try SSH out in a production environment to compare the differences in options. I have seen two major ports at the moment: 1. Cygwins port of OpenSSH 2. and Network simplicitys OpenSSH (which they no longer maintain so its now mirrored at Michael Johnsons http://lexa.mckenna.edu/sshwindows/). My understanding is that Network simplicitys work is merely a separate and independent packaging of Cygwins port of OpenSSH to ensure ease of installation. Should I worry about the safety of what Michael Johnson has compiled? Should I try to install Cygwin and look for binaries produced by Cygwin team? Are there other free ones to be aware of? The commercial ones are time limited for commercial use.
Fri 07 Nov | Devil's Advocate | cygwin has an ssh server (/usr/sbin/sshd) which I use occasionally to sftp files around my home network.
Fri 07 Nov | RP | You have crackers on your home network?
Fri 07 Nov | Devil's Advocate | sftpd is preconfigured under cygwin, whereas ftpd is not. For that reason, if I have to move files between machines running different operating systems, sftp is more convenient.
Fri 07 Nov | abe | re: crackers/hackers If you're running a wireless home network, ssh is a must
Fri 07 Nov | Dennis Forbes | Use IPSec
Fri 07 Nov | Li-fan Chen | Oh a related note, are there any open source projects providing a serious firewall driver for the windows platform? I would figure a few university students would take on these kinds of project with some interest, no?
Sat 08 Nov | Dan Maas | If you need a basic firewall just buy one of those "cable modem router" products. It's going to be more reliable than a software-only firewall anyway.
Using a Thesaurus | Fri 07 Nov | Quixotic
I find myself using a Thesaurus sometimes while coding in order to come up with variable and function names.  So I usually keep a copy of Word open so that I can quickly switch and get a synonym/antonym.  Does anyone else do this or am I just crazy.
Fri 07 Nov | Philo | You're just ape, barmy, batty, berserk, bonkers, cracked, crazed, cuckoo, daft, delirious, demented, deranged, dingy, dippy, erratic, flaky, flipped, flipped out, freaked out, fruity, haywire, idiotic, insane, kooky, lunatic, mad, maniacal, mental, moonstruck, nuts, nutty, potty, psycho, screw loose, screwball, screwy, silly, touched, unbalanced, unglued, unhinged, unzipped, wacky, whacko. Philo
Fri 07 Nov | Quixotic | Yup, that's me :-(
Fri 07 Nov | MSHack | Philo - you kill me. However, I do question the original poster's sanity. ;) Why would you want names that mean the same thing? I must be missing your point because I would be afraid of code with methods like: assignRate allotRate assoicateRate allocateRate giveRate consignRate dispenseRate
Fri 07 Nov | no name | Philo, You crack me up man :) LOL
Fri 07 Nov | Quixotic | Why would you have all of those different function/variable  names when you're just trying to come up with one unique name?  Never happens.  I simply can't believe no one has done this.  Unbelievable.
Fri 07 Nov | MR | Our code standards require that function names follow the same sort of convention verb{_noun+}, e.g. find_my_keys, put_money_in_my_wallet etc. The part that is fuzzy is the get/put -- as long as we use the same convention for verb parts then we're OK. Like another user wrote, I'd hate to have programmers using different verbs when they really mean 'get' (fetch, select, locate, return, etc.). And with classes/namespaces in .NET I don’t need to worry about having two functions called getName provided I’m using the right class it’s no big deal; and of course overloaded functions could be used such that the input parameter(s) type would decide which getName to fire. So no, I’ve never used a thesaurus…
Fri 07 Nov | Quixotic | That's not what I'm saying. Those are standard routines common to any database class. Getters Setters etc... I'm not talking about standard naming conventions. Let me give an example. I had a structure that I initially called (to simplify things) 'Symbol'. I knew that it didn't totally describe what I wanted but at the moment I was busy coding the contents of that structure. Now I knew that symbol wasn't what I wanted so I went to Word and/or Thesaurus.com and typed in symbol. Lo and behold the word 'Glyph' turns up. This word more accurately described the structure and the intended goal of what the structure is used for. Sometimes while coding you just can't think of the exact word you want to describe something, so I look it up in a thesaurus. Your arguments of naming conventions and such are not relevant to using a Thesaurus to come up with a better descriptive name. It is a given that if I would then create a class 'CGlyph', I could make member functions 'GetGlyph', 'SetGlyph', 'SaveGlyph' etc etc. This is standard industry practice. What is not a given is that had I left the structure called 'Symbol' it would not have accurately described it's intended purpose. Now you may be saying that this should be described in the specs and you shouldn't have to rename anything. Well sometimes it's not in the specs and sometimes you don't have specs and sometimes the specs are wrong.
Fri 07 Nov | MR | Ah, I see what you mean now. If that's what you meant to say you should have said it the first time. :) You're right, there have been times in which I don't know what to call something... Generally though it happens early enough in the development process that I end up thinking of a better term before too much code is written that relies on hard-coded function names. What I try and do when I encounter a 'fuzzy' descriptor is just write the function prototypes and leave it be for a day or so whilst I code up less fluid sections of the code. Usually my subconscious will think of a better term by the time I'm ready to come back and flesh out the functions. Of course, your coworkers are generally helpful in this regard. I ask other programmers/tech writers/managers (probably in that order) what they think; even if they don’t come up with a perfect name it’s usually enough to get me started down the right path.
Fri 07 Nov | Quixotic | You're right, I apologize for not making myself clear.
Fri 07 Nov | Gerry Shaw | I've used a copy of Microsoft Bookshelf 98 for years now.  Copy the contents to your hard drive so on newer computers it starts instantly and gives access to a Thesaurus as well as other reference books.  The 1998 Internet Directory isn't much use though!
Fri 07 Nov | runtime | I do this too. I first heard about this suggestion from Alan Cooper's book 'About Face: The Essentials of User Interface Design'. I think having better verbs and nouns can make your intention must clearer.
Sat 08 Nov | Wayne | I use http://www.m-w.com for this all of the time. Sometimes I use the dictionary, sometimes the thesaurus. Coding is all about words man.
Sat 08 Nov | name not available | sometimes we make up just funny names, eg how to call a prev next, you are on 2 of 10 pages, 1 2 3 4 5 more >> links bar on the page? you can give any name, like 'simher'
Can MS sell the lock-in? | Fri 07 Nov | Johnny Simmson
http://news.com.com/2009-1016_3-5103226.html?tag=nefd_lede Talks about Microsofts strategy of trying to steer developers into developing browser apps designed to take advantage of longhorn APIs. I dont see anything that will prevent it from occuring. It seems that it would be too disruptive to become accepted, but everybody seems to be creaming over it. Maybe I read too many weblogs. On the other hand, Apache has gained even more over IIS in the latest netcraft survey. Will developers go for this? Will tech managers/decision makers?
Fri 07 Nov | . | It's an interesting crystallisation of the conflict that often appears here - between client oriented developers and server oriented developers. Server oriented is less demanding with respect to usability and non-administered operations, which is why Java, open source and similar themes predominate in those environments. So making the focus on the client more explicit is clever and sustainable as a strategic move.
Fri 07 Nov | son of parnas | One thing i wondered is if you want to develop for microsoft you can use the current tool set. Why would anyone move to web type tools that only work on microsoft? It doesn't make any sense.
Fri 07 Nov | Mike | How about a truce. MS leaves the server market and only makes desktops. Seems the best of both worlds to me.
Fri 07 Nov | Philo | A lot of people would rather pay for Windows Servers than get Linux for free. Seems to me the market is disagreeing with you. :-) Philo
Fri 07 Nov | Stephen Jones | NT server and NT workstation used to be exactly the same; MS just crippled the workstation. MS is unlikely to leave the server market because the profits beat the marginal costs of extending the desktop version to a server version. As to Philo's comment about the market thinking different I rather suspect a large number of the MS servers are bought, not because they are better than Linux servers, but because the companies need other MS software, such as MSSQL or Exchange, that will only run on Windows software.
Fri 07 Nov | Kyralessa | 'It seems that it would be too disruptive to become accepted, but everybody seems to be creaming over it.' I've heard tell that once there was a time when people could make their arguments without the use of crude metaphors.
Fri 07 Nov | Nat Ersoz | 'A lot of people would rather pay for Windows Servers than get Linux for free.' Netcraft can be manipulated - and has been in the past. The recent surge in Apache servers is actually an unwinding of manipulation in the past. What apparently appears to be an MSFT ploy to have 'parked' domain names run IIS has evaporated, and now the domain name percentages are again well over 2:1 in favor of apache. I think the actual active web server count is a better number, and it has consistently run >2:1 in favor of apache for several years. So, regardless of what MSFT publishes in terms of IIS sales, the actual user facing http servers out there are acurately accounted for by Netcraft. A number that, yes can be (has been by MSFT to inflate their numbers) manipulated, but is still the best objective indicator out there.
Fri 07 Nov | Philo | Uh, that means that 1/3 of those people are paying for Microsoft Servers instead of Linux. Is something about that not clear? Philo
Fri 07 Nov | Dennis Forbes | 'Netcraft can be manipulated - and has been in the past. The recent surge in Apache servers is actually an unwinding of manipulation in the past....A number that, yes can be (has been by MSFT to inflate their numbers) manipulated' I think you need to check the oxydization on the tinfoil hat - it's interfering with your judgement. If you're going to call it manipulation that a couple of large domain parking services switched from IIS to Apache (which makes total sense - they simply serve up 'XYZ coming soon' type static pages - Even a no-module Apache setup is far too complex for this task) - then is it fair to say that 'Apache is manipulating the results' now that the domain parkers use Apache? Of course it isn't. Note that the same sort of vast swings happened when a large domain hosting company switched from Apache to IIS about a year ago. Slashdot is a very poor source of factual information.
Fri 07 Nov | Just me (Sir to you) | Netcraft is a joke. One registrar or ISP changing a domain parking server causes massive fluctuations. I bet >50% of their numbers come from just a few dozen domain parking hosts.
Fri 07 Nov | Mike | One other thing, arguable you need fewer linux servers than windows servers so that inflates the number of windows servers sold. Build something inefficient so people need more and then rave about the demand for your products. It works as long as you have an ignorant marketplace.
Fri 07 Nov | Nat Ersoz | OK, I stand corrected - umm, more lke irrelevant. It would be nice to see an objective metric which crawled the web server 'fabric' and reported an objective HTTP server stat. Wishful thinking on my part.
Fri 07 Nov | somebody | >> It would be nice to see an objective metric which crawled the web server 'fabric' and reported an objective HTTP server stat. << Why? How is that information at all useful? Would you really make a decision between systems based on who wins the popularity contest?
Fri 07 Nov | Bob | 'Would you really make a decision between systems based on who wins the popularity contest' That's actually how a LOT of software decisions get made.
Fri 07 Nov | Chris Hoess | Philo: counterpoint. Netcraft seems to have stopped publishing OS statistics in their web server reports, so I had to use dated stats (June 2001), but at that time Windows was 49% and Linux 29% of the computers serving web pages. The active site statistics were Apache 62%, IIS 21%, and others, 17%. So 55% of people serving web pages on Windows then downloaded and installed something besides IIS...
Sat 08 Nov | Chen | 'Seems to me the market is disagreeing with you. :-)' The Sodomites disagreed with God too, what is your point?
The best font for programming | Fri 07 Nov | Sire404
Over the years Ive tried most fonts claiming to be great fonts for programming: ProFont, Lucida Console, Oloron (yuck!), Andale, ofcourse Courier New and several others. Its a hard battle between the extreme legibility required of the font, while not being distracting when scanning large amounts of code. My Quest for the Holy Programming Font has now ended: Proggy Clean (http://www.tactile3d.com/tristan/) Its has perfect proportions, is extremely easy to scan while still very legible. Hallelujah! Runner up: Andale Mono. Previously called Monotype.com and released for free by Microsoft in the core web fonts pack, can now be found at http://www.zeuscat.com/andrew/software/corefonts/. Just as good as Proggy, I find it tiny bit harder to scan. Download both and choose your favorite.
Fri 07 Nov | Mr Jack | Might I also suggest this font: http://rossm.net/
Fri 07 Nov | Tom (a programmer) | I'm using "Monospac821 BT", whatever that is.  Profont didn't seem to like Vim's bold syntax highlighting...
Fri 07 Nov | Tom (a programmer) | Oh yes, and I'm also a fan of "Lucida Console".  Recommended.
Fri 07 Nov | r1ch | Thanks Sire404 - 'Proggy Clean' is perfect for me!  I'm running at 2560 x 1024 across two 17 inch LCDs and I think that it's the perfect balance between size and readability.
Fri 07 Nov | Sebastian Wagner | Gosh. Never occured to me it might be a good idea to change the font for programming. Enlightment struck me! Thanks Joel and everybody!
Fri 07 Nov | christopher baus (www.baus.net) | I don't know. This ProFont is a bitmap font. I don't really find it much better than good old Manaco. But what do I know? Well a little bit I guess. You can read my font programming series. http://www.baus.net/archives/000008.html Fonts, fonts, fonts.. aghh.
Fri 07 Nov | Mr Jack | Personally I use MS Sans Serif - fixed space fonts are so last century.
Fri 07 Nov | Nick | What's wrong with Courrier New? I kinda' like that one...
Fri 07 Nov | Ged Byrne | Personally, I've never had any problem with Courier New. Is a monspaced font needed for code? I find a proportional font much easier on the eye. The only time I use a monospaced font new is to view SqlServers.rpt files.
Fri 07 Nov | David | I recently installed OpenOffice - and found it came with a lovely monospaced font (which despite being 'so last century' is the only way to make all your tab indenting work and the comments line up neatly!).  It is called Bitstream Vera Sans Mono.  Visual Studio will only let you select the ugly bold version, but you can then go to the registry entry and change the name to the correct one.
Fri 07 Nov | - Roland | I second Bitstream Vera Sans Mono, and I hadn't any problems using it with Visual Studio. My problem, however, is that this font looks extremly nice on my 19'' screen, but sucks on my low-resolution (1024x768) notebook LCD. *sigh* Nothing is perfect.
Fri 07 Nov | Mr Jack | CodeWarrior correctly lines up tabs in variable spaced fonts, hopefully VS will catch up sometime.
Fri 07 Nov | John Topley (www.johntopley.com) | I quite like the Raize font, see http://www.raize.com/DevTools/Tools/RzFont.htm
Fri 07 Nov | Stefan Haubold | I tried many fonts and eventually got addicted to FixedSys. It's ideal for my needs. Just looks weird when bold, but I can live with that. FixedSys rules!
Fri 07 Nov | David Jones | What's wrong with the standard X11 'fixed' font? Fire up an Xterm, Ctrl-Right-Click and select 'small'. It doesn't have the slashed zero that ProFont does, but it seems to have all of the other desirable features.
Fri 07 Nov | MR | I’ve been using whatever the TextPad defaults are (just checked, Courier) and have had no problems… But now I’ve taken a look at different fonts. Verdana and Arial Unicode MS seem to be very pleasing to the eye (ClearType on XP rocks!) but I really need my fixed-width fonts (am I the only one that likes to line up blocks of code?) The Proggy font looks neat but for some reason I can’t select a font size other than 8 in TextPad. Anyone know if that is a limitation of the font or of TextPad?
Fri 07 Nov | Nate Trost | Am I the only nut who uses Terminal 6pt on Windows?
Fri 07 Nov | NathanJ | I don't understand why monospaced fonts are such a big deal. I don't mean this as a flame - just offering my opinion. The only place where I care about lining up my code is the indentation at the beginning of a line. Where else are you people lining up code? Comment blocks also line up because they always start with // (or with a '*' using the /* */ style comments). Proportional fonts let me squeeze more letters into the same width (so I can either have more letters on a line or have two editor views side by side). I used to be a monospaced coder, but a coworker got me hooked to a plain serif proportional. At first it's weird to write code that isn't monospaced, but work with it a few days and you get used to it.
Fri 07 Nov | MR | Nathan, I like to do things like (this obviously won't work on the message board since this is proportional, but..): Somevar = 1235; someothervar = 12345; sdfsa = 1234; ... or: somefunctionwithmanyparameters( abc, cdf, ger, asfsa, wer, afads ); or if( myvar = 123 and yourvar = 1234 and foovar = bar and ... many more ... ) And the biggest is in SQL statements (which I write a ton of) SELECT * FROM joe WHERE happy = '123' AND feeling = 'fine' etc.
Fri 07 Nov | Tim Sullivan | A lot of people are asking 'what's wrong with...' Here's the answer: if you want to maximize the amount of code you can see on a screen, you need to shrink the font down really small. Courier New, for example, gets foggy when it gets really small.
Fri 07 Nov | Clutch Cargo | Fixedsys, baby.
Fri 07 Nov | Cletus | Put me down for a second vote for Raize font.
Fri 07 Nov | runtime | I just installed the ProFont and Sheldon fonts. I dislike most of the monospaced code fonts because they have HORRIBLE kerning. The whitespace between characters is too huge, making it different for my eyes to glob characters together into words. Other code fonts are too serifed, trying way too hard to differentiate between 1, l, and I or 0 and O. My eyes get tired seeing so much serif. I wish there was a tiny, monospaced version of my favorite font, Arial. The Sheldon fonts have a 'Sheldon Narrow' that seems promising. It's non-serifed and has tight kerning. I'm now considering making my own code font, that will suit my needs. It seems like there is a big demand for a good code font. :-)
Fri 07 Nov | NathanJ | MR, Actually I used to do that stuff too - but I've been using a proportional font for a few years so I forgot. Now that I think back those issues bugged my a little at first. But here are my justifications for why you don't really need them... :) 1) int x = 123; int abc = 23; You can get the previous to line up nicely in monospace, but if you change x to be xyz or something then you have to spend time realigning your code. I've also found on larger teams that some people are lazy and don't bother to reformat when they change variable names so then it starts to look messy anyway. 2) somefunctionwithmanyparameters( abc, cdf, ger, asfsa, wer, afads ); I've found with a proportional font I can fit a 3rd or 4th variable on one line and usually avoid the problem. If I need multiple lines for variables I prefer to do this: somefunction( int x, int y, int z ); same thing with the if statements. I guess that wastes more space in the long run, but I like the readability. 3) SQL - ok, SQL is harder to format without monospacing, but I don't do much complicated SQL so it doesn't bother me as much.
Fri 07 Nov | Rick | I like Comic 12 pt
Fri 07 Nov | Peter Meilstrup | I just installed ProFont, ran it for a few minutes. Didn't like it so much, the balance of whitespace seems to be all wrong, and the exaggerated features were too distracting. I never really liked Monaco anyway. It's too 'squat' which is a problem I have with a lot of monospaced fonts. After some hunting I found Windows version of the X-windows standard fonts--6x12 and 6x13, which I've been using on Unix forever. I guess it might just be a case of liking whatever you're used to. http://www.ank.com.ar/fonts/
Fri 07 Nov | Alex | I'll now be sticking with ProggyClean, thanks for telling about it! Anyway, you're going to laught at me, but try Georgia Ref 12pt.
Sat 08 Nov | Justin Johnson | Final proof that programmers have no sense of aesthetics. :) The only fixed-width font I've been able to look at for any length of time is Courier New, and only then since I got an SXGA laptop with Windows XP, so I can put the font size at 12pts with Cleartype on. Perfectly sharp, perfectly legible, and not bad looking. But lately, and I recommend everyone try this, I've been switching to proportional fonts. Arial Unicode 10pt is excellent--good kerning, clear looking braces and brackets. Also Lucida Sans Unicode 10pt. I've stopped lining up =; the only indenting I do is on the left, and the code still looks good--better, in fact, in a proportional font. Overall, much more legible.
Sat 08 Nov | Dan Maas | If you can get access to an SGI system somewhere, the IRIX X server comes with a really nice family of monospaced fonts called 'screen.' I'm not a font guru but they look basically like ProFont to me. IMHO they are much superior to the 'fixed' family in XFree86. I'll have to try the proportional thing too...
Amazon Sucks Now | Thu 06 Nov | www.marktaw.com
All results for: stranger in a stange land All 224 results for stranger in a stange land : 1. High Performance Goal Setting : Using Intuition to Conceive and Achieve Your Dreams by Beverly Potter, Dr Beverly Potter (Paperback - March 2000) Avg. Customer Rating: Special Order List Price: $9.95 Buy new: $9.95 Used & new from $5.95 • Excerpt from page 7: . . . simply know it. In Robert Heinleins 1961 science fiction novel, Stranger in a Stange Land, grok is a Martian word mean- ing to drink and . . . See more references to stranger in a stange land in this book. 2. Immigrants on the Land: Agriculture, Rural Life, and Small Towns (American Immigration and Ethnicity, Vol. 4) by George E. Pozzetta (Editor) (Hardcover - May 1991) Special Order List Price: $105.00 Buy new: $105.00 Used & new from $25.15 • Excerpt from page 8: . . . A New Oslo on the Plains: The Anders L Mordt Land Company and Norwegian Migration to . . . Der- woodJohnson, Norge 1 Texas (Stange, Norway, 1982). The best study of the Swedes remains Ernest . . . See more references to stranger in a stange land in this book. 3. Personal Property: Wives, White Slaves, and the Market in Women by Margit Stange (Paperback - January 2003) Editions: Hardcover | Paperback Usually ships in 24 hours List Price: $17.95 Buy new: $17.95 • Excerpt from page 131: . . . job that requires her to smile affably at throngs of strangers, reflecting their prospective fulfillment in a contemplated purchase that is . . . See more references to stranger in a stange land in this book. 4. Animal Eyes (Oxford Animal Biology Series) by Michael F. Land, Dan-Eric Nilsson (Paperback - February 2002) Avg. Customer Rating: Editions: Hardcover | Paperback Usually ships in 24 hours List Price: $44.50 Buy new: $44.50 Used & new from $39.95 • Excerpt from page 102: . . . an insect to make fast corrections for pitch and roll (Stange 1981). The defocus then makes . . . for 0O of 4.7°. Even stranger, the rhabdoms, which in all . . . often. Summary 1 Life on land provides animals with a potential new refracting surface - the . . . See more references to stranger in a stange land in this book. 5. The Curse of the Bambino by Dan Shaughnessy (Paperback - October 2000) Avg. Customer Rating: Editions: Hardcover | Paperback | Audio Cassette (Abridged) | more... Usually ships in 24 hours List Price: $14.00 Buy new: $11.20 Used & new from $5.88 • Excerpt from page 100: . . . start Darrell Brandon, the 1967 equivalent of Denny Galehouse. Lee Stange would have pitched the playoff game. Stange was 8-10 in . . . See more references to stranger in a stange land in this book. 6. The New Bill James Historical Baseball Abstract by Bill James (Author) (Paperback - June 2003) Avg. Customer Rating: Editions: Hardcover | Paperback | more... Usually ships in 24 hours Also available for in-store pickup today. List Price: $25.00 Buy new: $17.50 In-store Pickup: $25.00 Used & new from $15.99 • Excerpt from page 10: . . . 3.12 7 John Wyatt, 1967 10-7 20 2.61 14 Lee Stange, 1966 7-9 3.35 9 Lee Stange, 1967 8-10 2.77 13 . . . See more references to stranger in a stange land in this book. 7. Art Now by Uta Grosenick (Paperback - September 2002) Avg. Customer Rating: Usually ships in 24 hours List Price: $39.99 Buy new: $27.99 Used & new from $21.99 • Excerpt from page 484: . . . Erkenntnis suchten. Oft schon zogen Menschen in ein vermeintlich „gelobtes Land, auf der verheißungsvollen Suche nach einem Paradies. Hierbei scheint die . . . See more references to stranger in a stange land in this book. 8. Five Points: The Nineteenth-Century New York City Neighborhood That Invented Tap Dance, Stole Elections and Became the Worlds Most Notorious Slum by Tyler Anbinder (Hardcover - September 2001) Avg. Customer Rating: Usually ships in 24 hours List Price: $30.00 Buy new: $21.00 Used & new from $8.00 • Excerpt from Back Matter: . . . 1888, p. 10; Riis, Making of an American, 193. 11. Stange, Symbols of Ideal Life, 5-6; Evening Post, February 28, 1888; . . . See more references to stranger in a stange land in this book. 9. Pharmacotherapy : A Pathophysiologic Approach by Joseph T. Dipiro (Editor), et al (Hardcover) Avg. Customer Rating: Editions: Hardcover | Paperback | more... Usually ships in 24 hours List Price: $155.00 Buy new: $155.00 Used & new from $123.95 • Excerpt from page 1169: . . . from an able- bodied companion or parent to a dependent stranger. Any attempts at therapeutic management must take into account the . . . See more references to stranger in a stange land in this book. 10. German Boy: A Child in War by Wolfgang W. E. Samuel, Stephen E. Ambrose (Paperback - October 2001) Avg. Customer Rating: Editions: Hardcover | Paperback Usually ships in 24 hours List Price: $15.95 Buy new: $11.17 Used & new from $9.94 • Excerpt from page 348: . . . Trauen. There was little for them to do. Soon a stranger from Hamburg built a tavern across the street from the . . . See more references to stranger in a stange land in this book.
Thu 06 Nov | Philo | Heinlein's book was my #1 result. Philo
Thu 06 Nov | somebody | It helps if you spell "strange" right.
Thu 06 Nov | www.marktaw.com | Oh. Is that my problem. Hilarious. Instead of telling me I made a type-o, it found a couple of hundred books with the same type-o.
Thu 06 Nov | Alyosha` | I am so tempted to create a new thread: MarkTAW Sucks Now. The problem with computers is that they do what you tell them to do.
Thu 06 Nov | RAH fan | That's a pretty funny one. More interesting though, marktaw, how did you come to not have read this book by now?
Thu 06 Nov | Doh | Yeah - the next rev of the Amazon search engine won't only search the text of the book, but all possible misspellings as well...
Thu 06 Nov | Robert Jacobson | That's why I love Google -- it's saved me from my own typos so many times. Google: Stranger in a stange land Did you mean: 'stranger in a strange land' Absolute magic.
Thu 06 Nov | obvious | Well, just you wait until you use the rich client for Longhorn, then we'll see who sucks, buddy
Thu 06 Nov | www.marktaw.com | Alyosha` - ha ha. Then I'll start a thread called Aloysha` sucks now. The problem with people is that for the most part, they only know what you tell them they know. RAH fan - Who says I haven't? Okay, I haven't but I have read War & Peace, have you? It seems they're improving the search engine on an ongoing basis, a week ago searching for the best selling titles that matched a certain phrase turned up completely random books with those words in them - but now they at least put the 'Most popular results' on top no matter how you sort them. I guess I'll become good friends with Advanced Search and Power Search. Sorry for my type-o thread.
Thu 06 Nov | somebody | With the exception of the first book, it didn't find typos -- it found the word "Stange", mostly as author last names. 
Thu 06 Nov | somebody | By the way, if you want a good example of how Amazon's search engine has sucked all along, try doing a search for "Don Knuth".
Thu 06 Nov | Funny Stuff | 'try doing a search for 'Don Knuth'. ' I loved him in the Andy Griffith Show
Thu 06 Nov | RAH fan | Uh... no... no I haven't. But I did read both Gulliver's Travels and Moby Dick, and neither one for school.
Thu 06 Nov | Matt Latourette | The misspelling doesn't change the truth of the original statement. The latest incarnation of Amazon's search engine leaves much to be desired. Mainly, I hate that you can't search for an exact phrase. For example, if I do an Artist Name search in the Popular Music category for the musical group 'Blue Six' I get the following irrelevant results, even when I put the search term inside quotes: The Read Deal - The Best of Today's Swing Music Blue Harlem, Big Six From Vienna With Swing Blue Note Six Salute to Satchmo Various Artists - Jazz - Swing/Big Band, Blue Note Six Midnight Blue Art Hodes That's four out of ten results that did not satisfy the intended query, not a very good signal to noise ratio. This is a real pain when you're trying to find something that has only common words in the title or solo artists with common first and last names and you get over a thousand irrelevant results. It shouldn't be that hard for a customer to find something when they know the exact artist name or title (unless you don't really want to make the sale).
Fri 07 Nov | Jack of All | In one of the other topics someone (sorry I forgot who) suggested a GREAT tip for searching websites. use google: for example: site:www.amazon.com 'stranger in a strange land' site:www.amazon.com music 'blue six' or even site:www.amazon.com 'don knuth' Me loves google me does, ahuh, yup...
Fri 07 Nov | www.marktaw.com | It is cool being able to read a page or two out of the book near your search phrase. One search I did turned up a few pages in a bathroom reader, so I was able to read 2 pages of a 3 page story. Unfortunately, it wouldn't let me read the 3rd page, but that was easily fixed.... I just searched for a phrase I found on the 2nd page and was able to read a couple of pages more. I don't know if there's a limit to how many times you can do this, maybe you can get through the King James Bible or War and Peace this way. Just think, you could have the entirely O'Reilly Reference Library at your fingertips, one page at a time. I'm sure the folks who designed the DMCA would be very displeased at me.
Fri 07 Nov | Philo | Don't worry, Mark - the literary guild isn't nearly as afraid of the internet or as powerful as the RIAA. Philo
Fri 07 Nov | Jason Watts | MarkTaw, There is a limit to how many pages you can read. Wired has a fine exposition on the whole idea and Bezo's future plans. http://www.wired.com/news/business/0,1367,60948,00.html
Fri 07 Nov | Elephant | So, I have to agree that Amazon does suck despite all commentary above. A search for 'tiff' in their bookstore brings back absolutely nothing related to the image format. I get a whole slew of books on parenting in the 'bit of a tiff' sense. Search for jpeg, I get a whole slew of books on web publishing because the extension apperars all over the text of the book. In a word. . . Terrible.
Fri 07 Nov | Kyralessa | Actually, the text search is a brilliant idea. The problem is replacing the regular book search with it rather than making it a separate option. I can't fathom why they did that.
Fri 07 Nov | Fred2000 | Why is it terrible that searching for 'tiff' doesn't bring up a book about the image format? How many books about TIFF are out there, and how many zillions more books that use the word 'tiff' for its original purpose are there? How should Amazon know which one you mean? Searching Google for 'tiff' brings up anything you would want to know about TIFF the image format. This is probably because they have PageRank and people tend to talk about image formats online more than they do in Amazon's collection of books.
Fri 07 Nov | Alex | they should have made a separate field for 'search inside the book'
Fri 07 Nov | www.marktaw.com | I agree with Alex. Default 'Search inside book' is the antithesis of Google's default AND searches. You should turn up the standard results, and then on the results page get a 'Search inside book' link. As it is, you have to 'Search inside book' and THEN click on Advanced Search - and notice that none of the fields are pre-filled, so you have to re-type your query. I guess it's the difference between 'Here's the whole world, do you want to get more specific?' or 'Here are a few items that match your search, maybe you want to expand your search?' Something about searching for a book and finding 2,345,678,901 results intimidates me. 'Wait, which one of these books really will help me 'Get rich quick?' Getting the right 1 in 20 is much easier than getting the right 1 in 2,345,678,901.
Sat 08 Nov | Bella | Is it markTAW  or marcTAW?
How to translate "gunslinger"? | Thu 06 Nov | Pedro Vieira
Hi! I am translation one of Joels articules to Portuguese (The Joel Test: 12 Steps to Better Code). Can anybody help me on the term gunslinger? I know that literally is A professional killer who uses a gun. But is there any special meaning in the software context? Can it be transalated like adventurous? Is it related to sense of elite? Using google, I found lots of references in software and programming newsgroups. And its possible to imagine a team of gunslingers that doesnt do any of this stuff(...). Thank you.
Thu 06 Nov | Joel Spolsky | People who pull out guns and shoot without thinking beforehand.
Thu 06 Nov | Stephen Jones | Spanish "pistolero" if that helps.
Thu 06 Nov | Matt Latourette | Is there a Portugeuse word for "cowboy"?  That's probably the closest to the spirit of the usage of the word "gunslinger."  It's primarily a reference to the rugged individualism of the American Wild West, specifically the disregard for conventional social "rules" that was a part of living in an unsettled land where there weren't any laws yet or a government to enforce them.
Thu 06 Nov | Pedro Vieira | Thank you all! I will translate as 'pistoleito desregrado e indomável' (untamed gunman that does not follow rules). I think our image of 'cowboys' is 'cleaner' that yours. I mean, the cowboys are the 'good guys', despite the fact use guns! The indians are the 'bad guys'. At least this is the impression left by the classical wild west movies.
Thu 06 Nov | Mike | There is a whole different meaning in the context of prison life.
Thu 06 Nov | Prakash S | IS El-Mariachi close?
Thu 06 Nov | Simon Lucy | Think of any of the Seven Samurai, or if you prefer The Magnificent Seven, I'm the one that looks like Yul Brynner from the front.
Thu 06 Nov | Doh | Fondio
Thu 06 Nov | Contrary Mary | One thing that is missing from the above is that a gunslinger is hired outside muscle. If you had a problem, you (big cheese) would hire a gunslinger (outsider, skilled with weapons) who would fight for you, for money alone, and leave when the problem was solved. If they got killed in the process, tough cookies. Gunslingers are usually the bad guys in a western.
Thu 06 Nov | Right? | So a gunslinger is a mercenary in the badlands.
Fri 07 Nov | tapiwa | Can I ride shotgun? please ...
Fri 07 Nov | Ged Byrne | The first of Stephen Kings's Dark Tower series was called 'The Gunslinger.' Was this book translated into Portuguese? How was the title translated?
Fri 07 Nov | Pedro Vieira | That Stephen King's book has been translated as 'Pistoleiro' (kind of 'man with a pistol'), at leans in the Brazilian Portuguese version. So I think I did the right choice!
Sat 08 Nov | GP | Incidentally, the book was also called "Le Pistolero" in French.
Quit SlashDot today! | Thu 06 Nov | MX
I am writing this just to share a link with you. http://www.cs.washington.edu/homes/klee/misc/slashdot.html for those of us who (like me) are Slashdot and forum junkies! :-)
Thu 06 Nov | n/a | who wants to do a similar for jos?
Thu 06 Nov | Stephen Jones | ---'#3. Gullible editorial staff continues to post links to bogus pseudoscience articles by crackpots. At the time I quit, the editors were posting links to theories of alternate consciousness, unified theories of the universe made up by people in their garages, and the like at a rate of two or three a week.' On JOS we don't even need editorial staff for this.
Thu 06 Nov | tapiwa | He forgets to mention the *BSD crowd that claim they are the PHDs to Linux's BAs
Thu 06 Nov | Rob VH | Isn't it funny that the karma system, which was initially hailed as such an innovation, has ruined Slashdot? The group-think is so powerful there that I have to imagine it would be easy to write a script that could produce highly moderated posts. I've always liked to believe that SlashDot was the inspiration for the adage: 'Getting into an argument on the Internet is like running in the Special Olympics: even if you win, you're still retarded.'
Thu 06 Nov | Phoenix | On the serious side: start reading news in an RSS aggregator, not in the browser. This has helped me a lot.
Thu 06 Nov | MSHack | ' I have to imagine it would be easy to write a script that could produce highly moderated posts' The selection of who moderates is fairly random. And while someone could create 10,000 email addresses, and the /. accounts, hoping that at any point 'X' would be available to moderate, why would they bother? No one gets a prize for being a '5', other than personal feelings of worth. If this is what someone needs to do for personal worth, /. moderation is not going to help.
Thu 06 Nov | Simon Lucy | I gave up moderating at /.  then I gave up reading /.
Thu 06 Nov | Walt | I've never thought that much of SlashDot. They have always seemed to me to be composed of fanatics, and high-school hackers that fit the definition of being 'Linux Nazis'. Post a comment about the security of Linux, and justify it using their own materials and patch availability, and you get a childs 'Uh-Uh! Linux Rulz dude!' Having studied OS design in college like the article suggests, I have come to understand that creating a flawless OS is near impossible for MS, HP, or the open source community, and no one has yet to do it.
Thu 06 Nov | Andrew Burton | Hrm.  Well, I disagree with him in the "Sites Just As Bad" category.  The Register has the BOFH, which proves they at least have good taste in office violence.
Thu 06 Nov | Rob VH | I guess I didn't state my theory very clearly. I meant that it would be easy to write a script that would write posts to attract points from moderators. I agree that being modded up has value(?) only as an ego boost for some. But because there is so much noise at SD, many people read it at +3 or higher (at least I did when I read it). Dissenting opinions tend to be quickly modded down, or just not modded up to begin with, and they disappear in the background noise. You end up reading the same B.S. over and over again --completely the opposite of JoS ;-D
Thu 06 Nov | Johnny Bravo | Never was aware JOS forum audience equals Slashdot audience.
Thu 06 Nov | Stephen Jones | Andrew, You're correct about the BOFH. It's the only thing on the Register I read now. I used to read the Reg every day, but it has slowly got worse. The poster's got it wrong, it wasn't based on the tabloids, it was based on the 'Private Eye' model, but that requires a large number of sympathetic sources, as well as talented writers, and if your site gets worse then you lose the sources and a downward spiral starts.
Thu 06 Nov | Mark Hoffman | I tried reading SD..I really did. When that became too painful, I tried an RSS aggregator. That was better, but the content still seemed to largely focus around 3 points: 1. MS sucks and Bill Gates is quite likely the Anti-Christ. 2. Linus Torvalds is the Messiah. 3. Anyone who doesn't agree with Points 1 & 2 is a heretic. Yes, I know there are other discussions, but many were hardly news-worthy or they were often quickly drowned out by the almost religious fanaticism displayed by many of the posters.
Thu 06 Nov | Janome | I quite /. a long time ago. Never got into Kuro5hin. This board has just about lost all it's appeal to me. It used to be a lot more fun when Bella posted often.
Thu 06 Nov | flamebait sr. | I actually haven't had the group-think problem with my postings in slashdot. I post at +2 always and have 'Excellent' karma. Of course, that may just be because I'm part of the group-think. I'm not sure. I run Windows, only hate Microsoft some of the time, and use BSD, not Linux, so I'm definately not a total hardliner. I have gotten modded down as overrated, but not especially often. The problem is that the karma system is the cheapest way to handle a site of that hugeness where there's not any good way to divy up topics like in the Usenet.
Thu 06 Nov | runtime | I still like Slashdot, but I only read +5 comments. I have also tweaked my filter preferences so useless "funny" posts are modded down -2 and the juicy "informative" posts up +2. This greatly improves the S/N ratio.
Thu 06 Nov | uncronopio | I used to read Slashdot and got bored by the noise. Then moved to AlterSlash ( http://www.alterslash.org/ ), a SlashDot digest, and then just stopped reading any SlashDot related material. Too much noise.
Fri 07 Nov | Mr Avaya | I agree, bring back Bella. Is Bella a he or a she?
Fri 07 Nov | JD | Agree, Bring back Bella. Also, Bored Bystander's posts are really great! JD http://jdk.phpkid.org
Sat 08 Nov | Mr Obnoxious Man | > Is Bella a he or a she? Both
How to automate testing of non-class code? | Wed 05 Nov | Entrepreneur
Hi, I recently read the Pragmatic Programmer (excellent book!) and am starting to automate more of my testing. Ive seen posts on Vunit and Junit for UNIT TESTING. However, my understanding is that these are for testing COM interfaces (CLASS interfaces). Therefore, they couldnt test normal procedures and functions. Now, most (90%+) of my code is non-class. Just plain old functions and procedures. Do most people automate testing of every procedure and function? If so, any suggestions on this? Im thinking Id have a test harness (really just a form in my project) and a test function for every procecure or function. Ex: for Sub Foo () Id have Test_Foo () which tests Sub Foo(). Then the test harness would call all of these functions. This seems straight forward, but clearly the vUnit and Junit, etc. do more than that, otherwise you wouldnt need the mysterious *Unit for testing. 1. How do people write automated tests for proc/funcs 2. Any suggestions to make that testing easier? Thanks!
Thu 06 Nov | Portabella | > Therefore, they couldn't test 'normal' procedures and functions. Have you tested this theory?
Thu 06 Nov | Chris Winters | Most unit testing frameworks can test whatever you want. If you can call it from code, you can test it, and the framework will help automate it for you. A typical unit test will exercise your public interface -- how others will use your class/procedure -- rather than every internal implementation detail. Also, the Pragmatic Programmers have just put out a couple of additional books focused on particular topics[1], and one is on unit testing. (The other is on Version Control, a frequent topic in these parts.) You might want to check it out. [1] http://pragmaticprogrammer.com/starter_kit/index.html
Thu 06 Nov | anonQAguy | What I'm going to say is hardly startling, but it is commonly ignored. Do not start by worrying first about test software or languages or equipment. Start by making sure you have an analytically sound and validated set of requirements for the system. Without this, all else is egregious bullshit. From valid and unambiguous system-level requirements, decompose the system by sub-system, component, and to class to ensure that requirements at these levels are verified **and** validated. It's easier to write automated tests at the unit/class level because it's easier for the one person working on that class to flesh out the requirements for properties and behaviors. The developer was probably handed the typical shitty set of lousy requirements to begin with. 'Knowing' that they'd never get anyone to prepare a proper set for them, they make whatever assumptions and decisions they have to to 'fill in the blanks' in the crap they were handed. All the stuff they made decisions on when they coded is still fresh for them, so it's easier for them to write tests. At the component and system level, however, requirements are rarely any better, and because it's not the responsibility of a single person, too often nobody ever fleshes out the requirements at that level enough to permit meaningful and efficient automated testing. QC/QA people will try to because they, like the developer at the class level, will have to fill in the blanks for the system properties and behaviors before they can write any code to test aggregated behaviors and properties. Automated testing tools do not handle the ambiguity present in most requirement sets. The human brain does, which is why automated testing is so often mis-applied. In fact, trying to write meaningful automated tests at any level forces everything to be disambiguated just because you have to be specific when you write the test code. This is one thing that the XP folks have correct -- write the tests first. Tests and requirements are the same thing, so when XP folks say to write tests first, what they're really saying is to ensure you get the requirements specified, then code to them. Duh. How much more logical can you get? Of course, remember that just because a developer has made assumptions, decisions, and whatnot to effectively 'fill in' the requirements they got so that they can implement something, does not mean that what they implement is valid, even if it is verified. You can generally only determine validity at a lower level of abstraction by ensuring you know what valid behavior at the higher level of abstraction is, else all you've ended up doing is correctly solving the wrong bunch of problems. Doing this normally requires applying some sort of logical model to the situation, as well as the time and resources to crunch the analysis. All too often, this whole part is left out. This applies to tester-types writing automated test code for system-level tests -- with shitty requirements, they assume, decide, and implicitly 'complete' the requirements themselves, though their tests may not be valid, even if they run and pass (and, they may make different assumptions/decisions than the developers did, which is one reason it's so important to keep the QA/QC folks dialed into what's going on during the project, especially early-on when many of the assumptions/decisions get made). They need to be testing against what the system behavior is **supposed** to be. When nobody decides in common on the team exactly what that means, then there's no way to tell for sure if your're wrong -- or right. So to automate tests of non-class code, first make sure you know exactly what it's supposed to do. Once you have truly good requirements for the higher levels, then you can worry about how to write the automated tests and what to do it with. If you can't get the requirements problem fixed in your shop above the class level, then you're probably better off to stick with manual, largely ad-hoc testing at the sub-system and system level at least, lousy and painful as that normally is.
Thu 06 Nov | anonQAguy | Ooops, sorry - I reacted too quickly. I just went back and re-read the initial post more closely. My previous comment presumed you were talking about automating code testing at above-class levels, not for lower-level code that simply isn't written in classes. So, I just committed an example of a verfied, but invalid implementation. I answered correctly the wrong question. Damn. Happens all to easily -- 'ready, fire, aim.' Apologies.
Sat 08 Nov | Entrepreneur | Portabella, I have not tested this theory. The unit testing programs seem to be quite complex and I have BEEN TOLD, by people who used them, that they test only COM/Class interfaces (documentation states the same). Therefore, it would take a lot of time to confirm that this is not an efficient thing to do. (Since Classes are such a small part of my code, a high overhead tester would be an inefficient use of my time). If someone comes along and says there IS an automated test for ANY old function/subproc then I'll investigate that. So far, none mentioned.
Sat 08 Nov | Portabella | > would be an inefficient use of my time Well you're in the perfect spot, then: surrounded by people who are willing to spend *their* time for some money. Put up some cash, and I bet you'll get all the details you need on how to do it. Or is 'Enterpeneur' a mis-nomer?
teamate becomming team manager... how to handle ? | Wed 05 Nov | Olivier B
At present time Im a web developper (part of a team) but non officialy in charge of the team coordination. I would probably be promoted in few days to completely handle the team. Even if I have good ideas to make the work done, I really dont know how to place myself in relation to the existing team. I was part of it, how can I become in charge of it ? Many people say that a team manager cannot be a part of the team... but at the same time I fear that breaking the actual team will cause it unjell, people think ok now hes a manager, hes no more shit as we are...hes forgetting us blah blah blah... So whats your experience about such a problem ?
Wed 05 Nov | Philo | See if you can get your hands on a copy of season two of 'The Office' to see how it can be handled well and some reactions you might expect from former peers. Philo
Wed 05 Nov | PHB | Fire them all and hand-pick a new team of people who won't question you or challenge your authority.
Wed 05 Nov | Rick | Instead of being a "manager", I've found it's best to just take on the role of "the guy who has to go to all the meetings. " This way your job is to insulate the rest of the team from office politics, deadlines and schedule pressures so they can do their work... and be willing and glad to take all the blame for the screwups, whether or not it's your fault, and everyone will appreciate you for it.
Wed 05 Nov | Philo | Well, that *is* a manager's job. But don't be their buddy. At some point you're going to have to make them work Saturday, stay late and miss their kid's softball game, and other popular mean things. Philo
Wed 05 Nov | Tom Vu | cream rises to the top. but your questions seem to suggest you are not cut out for the new position.
Wed 05 Nov | flamebait sr. | My manager used to be a teamate, now he's my manager. The thing is, he was already senior to the rest of us and well respected. The first level of management above a team of folks is often just the guy who has to take responsibility for things and go to all of the meetings. I disagree with Philo about not being their buddy. In a properly gelled 'buddy buddy' team, you don't want to let your teammates down, thus your manager shouldn't *need* to ask you to work Saturday, miss their kid's softball game, etc. because you should realize this on your own accord. You just can't let being somebody's buddy get in the way of overruling, reviewing, or firing somebody. Things *can* go the other way. Instead of turning into 'one of them', it can be the case that they have 'one of us' managing things. If the way things are works and is gelled, make sure that it's clear that things will stay that way and you are there to help them work. Crack jokes about growing pointy hair and having your development tools confisgated.
Wed 05 Nov | www.marktaw.com | Philo, I disagree. Continue to be their buddy. Adversity builds bonds - if you're on their side 'against upper management' then they'll be on your side. When you ask them to work on Saturday you won't want to, and you let them know that, but management is really pressing to have this project done by Tuesday. Also, to keep their 'respect' you have to work as hard as they do. Most employees think that managers sit around and do nothing all day and just tell them what to do. If you work hard and get everything you need to get done, done, you'll keep their respect. Then you're not asking them to work harder than you, when you ask them to work harder, it's obviously because it's needed. So in general, work hard, and when you ask them to do something, be sure to give them a reason so they don't think you sit there twiddling your thumbs thinking of bizarre things for them to do that are out of touch with what they're doing.
Wed 05 Nov | www.marktaw.com | Definately grow pointy hair. Too bad halloween already passed.
Wed 05 Nov | Philo | You can be cordial, treat them with respect, and work side-by-side with them. But if you are in a management position then you can *never* be their 'buddy'. The problem is that how you handle this depends on the person. Some people can be practically friends but maintain that professional distance. Others will grasp at the first sign of friendship and assume you'll let them get away with anything. It's a delicate, dangerous game. Be prepared for the dynamics to change when you become their boss. If you were already somewhat senior and acting as a mentor (as noted above) then this may just be formal recognition of what was happening anyway. But if you were 'one of the gang' then there are potential problems. One possibility - you get a guy who figures since you're his buddy, he can fudge his time sheets, get some extra pocket change. You find out and counsel him on it. He nods, then smiles and says 'okay, you've done the 'official warning' thing - I'll try not to get caught in the future.' How do you handle that? You now have to let him know that no, it's not okay. He'll refuse to take you seriously until some point where you smack him down, and now you have a resentful jerk who's going to start undermining your authority... Mind you, none of this may surface. Everything may be smooth sailing, in which case it's simply good practice. But if things *aren't* hunky-dory, then when you see the problems resulting from in appropriate relationships, then it's too late to fix them gracefully. But you can't be their buddy. That's asking for failure. I've seen it too many times. Philo
Wed 05 Nov | www.marktaw.com | Philo, good points. Now the question is - who do you go to lunch with?
Wed 05 Nov | Philo | Ideally, a parallel manager. However, going out to lunch with the team is doable, depending on the dynamics. Of course, if you regularly go out to lunch with just one or two members of the team you get to watch out for feelings of favoritism among the others. Once again, not necessarily - but it's something you have to be mindful of. Philo
Thu 06 Nov | Alyosha` | Some suggestions: 1. Earn your teammates' trust and respect of your technical competence. 2. Be approachable. Buy your team donuts. Do a little Management By Wandering Around. 3. Ask, don't command. 4. Focus on the end goal, not the path to get there. Get your team excited about the finished product.
Thu 06 Nov | Guy Incognito | 5. If morale does not improve schedule regular beatings.
Thu 06 Nov | Clutch Cargo | >cream rises to the top. but your questions seem to >suggest you are not cut out for the new position. Where do you work?? Everywhere I've been the dickheads rise to the top, not the cream.
Thu 06 Nov | no name | It's scum that rises to the top of any pond, and fool knows that. Oh, and Philo, they've shown The Office in the US? How did it go down? Did they remake it with American actors or did you get the originals?
Thu 06 Nov | Better than being unemployed... | I've only ever seen one episode of 'The Office' ... but part of it was a manager 'pretending' to a fire a junior for stealing stationary, thus reducing her to tears. This really happened at somewhere my other half used to work and was in incredibly poor taste. It's the worst piece of junk I've had the misfortune to watch in ages. Anyway, moving back on topic ... unfortunately from what I've found there always seems to be someone who won't accept your authority when you get promoted. This happened to me a while ago when my team mate got promoted to manager. I wasn't sold on the idea but we eventually reached a compromise where I'd be responsible for the technical and architectural sides of projects, and she'd look after people and resources. It was manageable (if you'll excuse the pun).
Thu 06 Nov | Peter WA Wood | Read Leadership Effectiveness Training by Dr Thomas Gordon. It contains the best advice I've seen on how to become the leader/supervisor of a team of your erstwhile peers. It covers both how to avoid unnecesary conflict from the start and how to deal with conflict if it does arise.
Thu 06 Nov | Joe AA. | One of the worst mistakes I have seen with new manager types is to deny your own authority, responsibility and accountability for providing direction to YOUR team - by claiming every 'order' or action the team takes comes from some other higher-up individual and you are only the messenger pass-through. The second somewhat related mistake is to do as some of the postings here have suggested - be a buffer between your team and other management. As a manager you are a member of two different teams, and you will never be effective if you act in a manner that suggests both of your teams are adversaries and need to be isolated from each other.
Thu 06 Nov | Matt H. | 1) Read PeopleWare 2) I would suggest 'The Practice of Management' by Peter Drucker. IT's a bit ... dry ... but Management By Objectives (MBO) is definately the way to go. 3) I would suggest you shoot for the player/coach role. You are a team lead, not a a manager. You are a member of the team, but you have different responsibilities and a slightly different role. Try to continue to find ways to write a little code. 4) You should not go out to lunch with the guys every day, or even every other day. Get over it. 5) Try to be a good boss. Think about all of the ideas for boosting morale on the cheap that you had that were rejected. Try them. good luck! Simply put, most people would be happy to trade for your 'problems ' ...
Thu 06 Nov | Rick | Joe AA -- I've found in a large organization sometimes the only real way to get things done is to break off into a tiger team, so sometimes you DO in fact want to insulate the rest from the large but necessary bureaucracy. You go to all the status meetings and fill out the weekly TPS reports so they don't have to.
Thu 06 Nov | Philo | The first season of The Office did pretty well on BBC America - the original. We're working through the second season now. I'll admit, David Brent is a lot like watching a car wreck - horrifying but you can't look away. Philo
Thu 06 Nov | Just me (Sir to you) | 'Fire them all and hand-pick a new team of people who won't question you or challenge your authority' PHB might have written this in jest, but it is a pattern I have observed quite a number of times over the years.
Thu 06 Nov | Portabella | > but it is a pattern I have observed quite a number of times over the years. Yep... Like Dilbert, it's funny because it's so true to life.
Thu 06 Nov | Olivier B | thanks for all the replies... 'You are a team lead, not a a manager' yes it's exactly what I wanna be. I think i don't have (for the moment) the required qualities to be a complete manager. I will only be the one that coordinate the projects, assist all the meetings, ... but not my actuall boss replacement, not the person the rest of the team will ask for a pay raise... 'You should not go out to lunch with the guys every day, or even every other day. Get over it.' That's the hard part. At present time the team is the only people with I'm close enough to lunch with everyday... don't you think the fact to stop 'lunching' with them will build the idea I hate of the superior man, promoted, so he cannot continue to lunch with working-class. 'your questions seem to suggest you are not cut out for the new position.' It's not completely false. I would have prefered a not so radical transformation, but the situation offers me an opportunity. The person that this role would have suited the best leaves the company... and the 'subsitute' will probably be a junior person... so I will naturally be promoted to handle the success of the projects... I'm reading peopleware... 20 or 30 pages left :-)
Thu 06 Nov | Matt H. | It's awesome that you are reading peopleware. If memory serves, I think 'Debugging the development process' http://www.amazon.com/exec/obidos/tg/detail/-/1556156502/qid=1068142492/sr=1-9/ref=sr_1_9/002-0515097-5868803?v=glance&s=books Has an entire chapter on leadership and the role of the player/coach. It was pretty good. I think you're right about the lunch thing. It might be best to phase it out. ALSO, I would get someone at a higher level to clarify your 'promotion', specifically with an email, but also an annoucement at a meeting with a different purpose. That way, people won't say 'He's my peer, how dare he!' and you won't have to declare yourself to be boss. (A great way to destroy your respectability) JMHO ...
Thu 06 Nov | flamebait sr. | Philo, not to endlessley flame on this one, but I don't see how your 'fudging timesheets' example holds true, either way. Fudging timesheets is stealing from the company and quite unprofessional. If I caught a friend doing that, I'd be questioning their ethical standards for quite some time to come. I think the whole thing is that if you work with a buddy *in general* you had better be prepared to have your relationship go south over work-related things. It's a risk of being friends with a co-worker. I've heard of more than one case where a pair of friend-entrepeneurs have become worst enemies. Both times in recent memory that folks have been fired, the friend has been inadvertantly ejected from co-workers' circle of friends because it's just too awkward on both sides.
Thu 06 Nov | Philo | You make a good point, but 'don't be buddies with your coworkers' would probably be a good way to lose all credibility - it's almost impossible (esp. if you have a gregarious nature). My point is that there are people who will think that 'friendship' equals 'leverage' and won't mind taking advantage of it. That's what you need to avoid. Philo
Thu 06 Nov | The Humor police | 'I've only ever seen one episode of 'The Office' ... but part of it was a manager 'pretending' to a fire a junior for stealing stationary, thus reducing her to tears. This really happened at somewhere my other half used to work and was in incredibly poor taste. It's the worst piece of junk I've had the misfortune to watch in ages.' This is a typical case of american's not getting british humor. I'm sorry but far too many american's have abolutely no sense of irony, dry wit or sarcasm. You keep friends, we'll keep The Office
Thu 06 Nov | anon | Philo's correct in his observations and advice. I've got somewhere between 10 and 15 years in leadership/management positions, in and out of the military (US Army), so I've got a pretty fair bit of experience with this area. The Army, at least, handles such promotions 'properly' (or at least the easy way), by usually transferring a person to a different unit when they get promoted to a position of leadership (e.g. guy makes squad leader, it's > 50% bet he's going to transfer to a different platoon, maybe even company). At least that's the general practice, some variations/exceptions do occur, and peacetime/wartime practices often vary as well. It also helps that there's normally a 30% or better annual personnel turnover; more, of course, if people are dying or are on short rotations, so after a while, the people in the unit are not the same ones who were your 'buddies'. Also, since assuming leadership positions is often accompanied by actual promotion, the individual wears a new insignia of rank, and military folks instinctively learn to 'read' somebody's uniform, so it's obvious (to us at least) where the other person stands. Unfortunately, the corporate world doesn't really have any of these luxuries of personnel management available to them--they're just not practical to apply. Unfortunate, because the Army does these things specifically to avoid some of the issues other posters here have raised, and it's normally successful. But, this is the corporate world. As a result, the observations Philo makes are very real possibilities and you need to watch out for them. It is very important for your new position to be announced and acknowledged 'publically', which 'legitimizes' your authority as the new guy in charge (an email is fine for this). It's correct that the old saw about 'familiarity breeds contempt' is true, but you need to understand colloquially what that means: 'contempt' doesn't really mean what it sounds like -- but that's the principle behind what philo was talking about in his example of somebody trying to take advantage of the situation. Your people must respect your authority, hopefully they respect your abilities already. In a technical area such as software development, right or wrong, developers won't respect anybody without 'cred' technically. Just the nature of the beast. What will likely happen early-on, is some situation will arise that will give you an opportunity to establish the 'new' working relationship with your former peers as their 'boss'; I can't tell you what it will be, but you need to watch for that little moment of truth and act fairly but decisively to establish your authority. It might be something as simple as being a bit short with somebody you might normally have just chatted with because you're working on something, or being a bit pointed with somebody over some issue, but it could be something far bigger. You'll have to watch for it. In general, you probably shouldn't be too heavy-handed about it (though there's times for that as well), but while you want people to feel free to disagree and discuss issues with you from a technical perspective, you want to make sure they do not question your authority. No, it's not a good idea to foster an attitude that all management above you and the team are stupid idiots, and you're just passing orders through. After the discussion and debate are all over, your people have made their positions known to you and you've made a decision, they need to follow the direction you set because YOU set it, not because you're some transparent interface and they're just following what others have told you to tell them--that completely undermines your authority. In fact, they often don't need to know that some issue has 'come down from above'; you don't necessarily have to give that much information. Depends on the situation, but keep it in mind. Besides, if it wasn't your idea (whatever it was) to impose it on the team, they'll probably find out later that it wasn't your idea, but you don't always have to tell them that you're just reacting to what you were told. You want to reinforce your image to them of one who **sets** direction for the team, not one who's simply reacting--either to their whims or those above you, even if you might sometimes be. Perception is critical. Your people are your most precious resource for getting anything done--always. We used to say 'mission first, people always', and it's true. By far your biggest responsibility is to take care of your team--not just because they're great folks who are really nice and you really really like them, but because they're a vital resource for the company to accomplish its missions. You're responsible for part of that mission accomplishment now, and your team are your primary tools for doing so--that's why you have to take care of them. Not to dehumanize it, but like a valuable piece of equipment--use it, maintain it, fuel it, and repair it. OK, so yes, you must take care of your people, and that may often mean doing battle to insulate them from some things you know to be bullshit, but don't undercut the higher-ups to them in doing so. Related to the point above, it should not be obvious to them when you're in the act of insulating them from bullshit, it should just be apparent to them at some point that there's crappy stuff they're not having to deal with. If they're reasonably sharp, especially if there are other teams around they can compare themselves to, they'll put 2 and 2 together and realize that it's you who's creating the 'BS-free zone' for them. You need to be careful when protecting them from the higher-ups, though, so you don't shoot yourself in the foot with the power structure. Despite what anyone here may want to say about them, your promotion was granted by the authority of that power structure, and can be revoked by them as well (they'd probably just get rid of you if you alienate yourself from them too much), then you become irrelevant to the situation, at least with the current company/team. Don't be a sop to your higher-ups, either, though, or THEY won't respect you, and that's about as bad as not having your people respect you. Taking care of your people does not mean they always like you or what you do, or have them do. Be prepared that sometimes people will think of you as an asshole, and that you'll find people talking about 'the boss'. Well, now that 'boss' will be you. Generally, you shouldn't do anything about this--it's natural. Just be prepared for it because it can be a bit disconcerting until you get used to it. You are definitely in a spotlight when you're in charge. It's difficult for civilians because there isn't any formal training in how to manage or lead. That's another advantage the military has (well, the Army and Marines, at least, since they're more people-focused than the AirForce and Navy who are more technology-focused, I don't know about them); there's considerable formal training and practice in leadership along the way. Civilians tend to just get thrust into a situation after a time (like you) and they're often left with no more help or mentoring than they can get from some popular books on their own. However, that's the corporate reality. If you're beginning to get the idea that effectively leading people is like walking a tightrope, then you've got the right idea -- it's a careful balancing act. Some are naturals at it, but many folks who do it well learned it. Since you're talking about a first-line 'leadership' position, this next suggestion may not resonate very well with you, especially if you don't like or in any way relate to anything military, but the movie '12 O'Clock High', with Gregory Peck, is a classic depiction of leadership in action. Leadership roles therein occur at a much higher and more serious level than most folks will ever reach, and it's all in a WWII context, so it's not a great teaching vehicle for some folks because it's too hard for them to extract the 'leadership design patterns' (to coin a phrase) used in the movie and see how they might apply to their corporate environment. But you might want to give it a try. It's not just me saying this, either, I've come across other references to the movie being used in this context, and I used to work with a guy who had his own executive leadership/teambuilding consulting company and he used the movie in his leadership classes for just the reasons I mention. Last couple of things: 'know yourself, know your people, know your job.' 'The troops aren't happy unless they're bitching about something. It's when they stop bitching that you have to start worrying.' Best of luck to you
Fri 07 Nov | Philo | Even the Navy uses 'Twelve O'Clock High' as a leadership training movie. That should tell you something. :-) For leadership reading, I can recommend http://www.amazon.com/exec/obidos/tg/detail/-/1557505969/ 'Naval Leadership: Voices of Experience' It's slanted towards combat, but the only real difference in the cube world is that you know who's shooting at you. Of course I may be biased - my Naval Leadership class was taught by the author... Philo
Sat 08 Nov | GP | Whether you should stop eating with them may depend on your country. If you happen to work in France, this might be a _bad_ idea.
physics | Wed 05 Nov | The Real PC
There was a Nova TV show on recently about string theory (which has evolved into something called M theory). I dont see how any of you materialists can hang on to the belief that science already understands the laws of physics, or that reality is ultimately constructed out of subatomic particles. String theory and M theory have not been proven by experiments, but physicists at Cern and elsewhere are working on trying to gather some evidence. I think a lot of materialists are going to be eating their hats one of these days. Even if they dont find any evidence soon, watching shows like this (and reading all the physics for the layperson books) should make any materialist stop and wonder if their beliefs might be simplistic and limited.
Wed 05 Nov | Philo | Forgive me for missing the previous discussion, but in what way are you using the term 'materialist'? Philo
Wed 05 Nov | DJ | I just saw that program last night - it was past my bedtime but I couldn't turn it off. Very good program. I also have read a book about strings as well. I don't know why you are trying to turn this into a religous debate. I think strings are just another theory of matter. Along the lines of Einstein's energy = matter. This is just another level of detail in finding the ultimate (as far as we can tell) manifestion of matter. First it was atoms, then protrons, electrons, then quarks and now strings.
Wed 05 Nov | Mr Jack | Real Science = Doesn't Know Everything.
Wed 05 Nov | Builder | The Real PC: I'm beginning to think that Bob Noxious - the music guy - wasn't the most annoying person at your workplace. I watched that Nova program, and while there are some physicists who were scientifically skeptical about string theory, no one on the show came off with your attitude.
Wed 05 Nov | Alyosha` | Yes - as DJ said, string theory does not displace classical particle physics, but rather it's a model that unifies the different types of particles we know about, predicts what happens at higher energies and at shorter distances. It proposes that particles are 1-dimensional loops, not 0-dimensional points; and that at the subatomic level space has either 10 or 26 dimensions. As such, it is an evolution, not a revolution in thought.
Wed 05 Nov | B# | I prefer to adhere to theories and forego beliefs.  So much harder to change beliefs.
Wed 05 Nov | John C. | Real PC, I do believe you're setting up a strawman. I can't recall having encountered any materialist who even remotely believes that science already understands the laws of physics, let alone is 'hanging onto' that belief. But the reason I'm really responding is to urge people interested in string theory and so on to pick up Brian Greene's book 'The Elegant Universe'. Although I didn't see the show, I did read the book last weekend, and given the sticker on the front that says 'A major Nova special on PBS,' I'm guessing there's some connection ;-) Actually, it's not entirely fair to say 'I read the book last weekend'. More accurately, I read about the first half and skimmed the second half to get a feel for things, because I know I'm going to need to go back and read it again much more intensively to extract a fuller understanding. Or perhaps it was because I was nursing my third pint of Guinness by that point. Anyway, if you're looking for an apparently solid (at least to a non-physicist like me) yet still relatively accessible introduction to the various forms of string theory, an understanding of why they seem to require 10- or 11-dimensional spaces and involve Calabi-Yau manifolds, how they attempt to reconcile quantum mechanics with general relativity, implications for cosmology, and other juicy topics, it's an excellent overview. Question for folks who saw the show: Is Brian Greene the next Carl Sagan, in terms of his ability to be a charismatic popularizer of science?
Wed 05 Nov | Ged Byrne | Theres a great transcript from an old BB2 Horizon program from 2002. It reads like Douglas Adams in places: MICHIO KAKU: There was a war between the tenth dimension and the eleventh dimension. In the 10-dimensional bandwagon we had string theorists, hundreds of them, working to tease out all the properties of the known universe from one framework: a vibrating string and then we had this small band of outcasts, outlaws, working in the eleventh dimension. NARRATOR: While String Theory was in its ascendancy, few took seriously the eleventh dimension, but the super gravity guys never gave up hope. http://www.bbc.co.uk/science/horizon/2001/parallelunitrans.shtml I wouldnt put to much faith in these guys.
Wed 05 Nov | Philo | Uh, where do the Red Lectroids figure into this? Philo
Wed 05 Nov | John BigBoote (pronounced BigBootay) | Still working at Yoyodyne.
Wed 05 Nov | Dr. Emilio Lizardo | Laugh while you can, monkeyboy!
Wed 05 Nov | The Real PC | One of the important things about string theory and M theory is the idea of higher level dimensions. In M theory you have membranes, or branes, existing on the various dimensional levels. Witten, the M theory genius, says the M stands for Magic, Mystery, or Matrix. Please don't try to convince me there is nothing mysterious or amazing about all this. In case you know anything about Bohm's theory of implicate orders (and Bohm is one of the mystical physicists, by the way), M theory seems to be compatible.
Wed 05 Nov | Grumpy Old-Timer | What's that watermelon doing there?
Wed 05 Nov | Justin Johnson | I'll tell you later.
Wed 05 Nov | Alyosha` | Actually, the 'M' stands for 'mother of theories', which relates the four or five variants of superstring theory into one cohesive whole. [ Source: http://superstringtheory.com/basics/basic6.html ] If some advocates want to sex it up in the popular science world by using the words 'mystical', 'matrix' or 'mystery' instead, that's their perrogative; personally I think those words obscure rather than clarify what's going on underneath the hood. Whether it's an 'amazing' theory is a bit of a subjective judgement. Likely you think it's 'mysterious' only because it's new - much like quantum mechanics and wave-particle duality was considered strange and amazing before being so widely accepted. Some folks like to ooh and aah over the latest theories and ideas - that's their right.
Wed 05 Nov | Devil's Advocate | Real PC - Is everything you learn evidence for the ignorance of those who disagree with you?
Wed 05 Nov | The Real PC | [If some advocates want to sex it up in the popular science world by using the words 'mystical', 'matrix' or 'mystery'] Those were the exact words of Witten, on the Nova show, which I guess you didn't see. Since he named it M theory, I guess he knows what the M stands for! And anyone who doesn't thing M theory is mysterious is just a die-hard reductionist.
Wed 05 Nov | Builder | Tally: Alyosha - 2 Real PC - 0
Wed 05 Nov | Ricardo Montenegro | http://fusionanomaly.net/mtheory.html > Witten calls this deeper understanding of strings 'M theory,' with M standing, he says wryly, for 'mystery, magic or matrix, my three favorite words.' http://online.itp.ucsb.edu/online/plecture/witten/ > 'M' stands for magic, mystery, or matrix, according to taste. Some of these developments will be explained in this lecture. Builder & Aloysha - 0 Real PC - 3 heh heh! Suck it up Aloysha and Builder!
Wed 05 Nov | Alyosha` | 'And anyone who doesn't thing M theory is mysterious is just a die-hard reductionist'. Wow. I've been given a label. That's *almost* a refutation! 'M' stands for magic, mystery, or matrix, according to taste. Ah, well, then, if it's according to taste, then my taste is 'mother of all theories'. (Also, Alyosha`s Law of Online References states that any URL that egregious violates well-accepted UI principles (e.g., ransom-note fonts and animated GIFs) is to be discounted automatically =-).
Wed 05 Nov | hoser | I had read Elegant Universe some years ago, and found it fascinating. Anyhow, some time ago, had asked our resident physicist (PhD from U. Chicago) for his opinion on string theory. He was very luke warm, and his answer was something like: 'While it may be an interesting theory, string theory has yet to predict any phenomena and has shown no applicable use. Unlike quantum mechanics and relativity, you can get along quite nicely without string theory. There may be paradoxes that exist in the models of quantum mechanics and relativity, but they don't begin to compare to the self conflicting contradictions that string theory brings in.' I'm in no position to question support or contradict his statement and opinions, but he was a skeptic.
Wed 05 Nov | The Real PC | String theory and M theory are new. It's probably hard to get evidence for them. Just give it a chance, keep an open mind. Narrow-mindedness is not scientific! Some people just like to stick with the old ideas. You know, like the southern guys with their confederate flags. Sometimes you have to upgrade.
Wed 05 Nov | Confederate Dean Fan | And how many years did slavery exist under YOUR flag?
Wed 05 Nov | Builder | Sorry, I'm just feeling like an a-hole today. When someone starts a topic with a chip on their shoulder, I'm going to discount everything they say. Right or wrong, it's just my nature. Then I remembered that The Real PC was the guy with no cajones that whined about his cube neighbor's music for days on end, and I decided he was definitely a flake. Alyosha, on the other hand, made several unheated, objective comments - much more my style. So while The Real PC argued belief, Alyosha argued science. I don't know anything about String Theory or M Theory other than what I saw on Nova the other night. But I do remember that many of the physicists conjectured that even if String Theory were true, there may be no way to test it. And if you can't test it, then it's just philosophy.
Wed 05 Nov | Simon Lucy | The programme I think was also transmitted on Channel 4 (UK) at the weekend. It was a reasonable attempt (apart from the interminable so Einstein, blah blah blah blah for the umpteenth time). There's another one this Sunday so maybe its been split up into 3 hour programs. Unfortunately they did a really bad job at explaining how strings became superstrings and so acted as particles and waves and set up the atomic system. It kind of just is man. The one thing they didn't say was that string theory meant they lived in some non-material cubby hole. Strings aren't anywhere else they're right here and they compose everything (according to the theory). As was mentioned also in the programme there's not a whole lot you can do to set up a proof or disprove experiment on this there's no observational way to do that and there's no side effect ('oh look a particle of smoke moved Professor'), that couldn't also be described in non string terms. So it becomes an ontological philosophical theory. Now if they could discover the 'address' of a string I'd be seriously impressed and we could go ahead and use the theory without caring whether it was true or not and translocate ourselves wherever we liked in the cosmos. Oh and those of us that can do the 'rewrite a string backwards in its own space' would earn beaucoup moolah.
Wed 05 Nov | Jim Rankin | 'Some people just like to stick with the old ideas. You know, like the southern guys with their confederate flags.' Is there a variant of Godwin's law that allows substituting confederate flags and slavery for Hitler?
Wed 05 Nov | Jim Rankin | ps If there were all the Democratic presidential debates would be shut down right now, not that this has anything to do with anything.
Wed 05 Nov | Skeptic | > And if you can't test it, then it's just philosophy. So macroevolution is a philosophy, right, since you can't test it?
Wed 05 Nov | Alyosha` | Nah, it's a reference to presidential candidate Howard Dean's recent comment that he wanted to be the candidate for not only northern liberals but 'people who have a Confederate flag on the back of their pickup truck'. That gave the other nine candidates ammunition to attack Dean - I'm not sure why, since you only have to listen to Dean for five minutes to find out he's no closet racist, but at any rate some folks down south equate the Confederate flag with the Nazi swastika as a symbol of racism. At worst he can be accused of a bad choice of words, but the point is pretty clear - he wants to be the candidate for all Americans, not just ivory-tower intellectual liberals. (sorry. Another Dean fan up here. We now return you to your normally scheduled programming)
Wed 05 Nov | B# | Jim... Salad Cream!
Wed 05 Nov | The Real PC | [he wants to be the candidate for all Americans, not just ivory-tower intellectual liberals.] Yeah he wants to represent the really dumb guys also. The ones who don't even realize the civil war is over.
Wed 05 Nov | The Real PC | The Nova show last night said they can test M theory by seeing if a graviton escapes our membrane into a higher dimension as a result of a particle collision. They are working on this experiment at Cern and elsewhere, I think. They will know if a graviton suddenly disappears, I guess. Graviton strings are not anchored in the membrane, but other particles are. So gravitons, according to the theory, should be able to escape. Lots of physicists are working on string/M theory now and it is a very hot topic, according to the show. So the progress might be pretty fast. Of course the theory could turn out to be a dead end. But that doesn't seem too likely considering the math makes sense to so many physicists (I have no idea what the math is, I have to admit. But neither do most of you here I bet).
Wed 05 Nov | Bill Nye | And how would they know if a "graviton suddenly disappears" seeing that gravitons are purely hypothetical and have never been detected in the first place?
Wed 05 Nov | The Real PC | I think we just have to trust the physicists to figure that out.
Wed 05 Nov | z | Suppose they do find evidence to support string theory.  Then what?  Then it won't be mysterious, it will just be another materialist  theory along with Newton, Maxwell, QM, etc.
Wed 05 Nov | Burma-Shave | A graviton Done gone away Why that materialist Had led us astray Salad Cream
Wed 05 Nov | ktm | whoah. genius.
Thu 06 Nov | Stephen Jones | Sting theory is hardly new; it's certainly older than some of the posters to this forum. There is a serious problem with experiments in particle physics and any attempts to prove the Unified Theory, and that is that the costs get higher and higher, and the real word benefits get lower and lower. And even on a theoretical basis it seems that its the frontier being pushed further back, rather than definite answers being round the corner. The suggestion that strng theory is a smack in the ey for 'die-hard materialists' is a strange one. One would have thought that Quantum Physics would have been quite strange enough. And one is literally losing a sense of proportion here. Standard 'mechanistic' physics and chemistry works fine for the atomic and molecular level, which are the units matter on this planet are arranged on. It would annoy Real PC much too much if I suggested that the M really stood for Materialism, so instead I will compromise and suggest Mayonnaise.
Thu 06 Nov | The Real PC | Yes quantum physics does make one question materialism. What about the idea that two particles can still influence each other even when there is nothing to connect them? As for materialist explanations still working on our level -- well that's why some people still hang on to materialism. But that is not the underlying construction of reality. Reality is not built from solid little particles, and that idea is the foundation of materialism.
Thu 06 Nov | The Real PC | By the way, I found a page on skepdic last night that I think you (SJ) will like. I'll try to find it again later.
Thu 06 Nov | Joe AA. | 'Now if they could discover the 'address' of a string I'd be seriously impressed ' Heck... you can even do that in cobol SET STRING-POINTER TO ADDRESS OF STRING.
Thu 06 Nov | Burma-Shave | A call for evidence Is just spurious We'll believe If it's mysterious Salad Cream
Thu 06 Nov | Simon Lucy | I knew someone would take me literally...
Thu 06 Nov | Alyosha` | 'Reality is not built from solid little particles, and that idea is the foundation of materialism'. BZZZZZZT! Wrong. Thanks for playing. Schroedinger showed that matter is not comprised of 'solid little particles' in 1925, and materialists have had no problem accepting that.
Thu 06 Nov | The Real PC | So how do they define "matter?"
Thu 06 Nov | Devil's Advocate | M = E/(C^2)
Thu 06 Nov | Alyosha` | http://en2.wikipedia.org/wiki/Matter breaks it down pretty well: matter is comprised of particles (specifically, fermions) which are believed to be fundamental (you can't split them) and exclusive (no two particles can share the same quantum state, according to the Pauli Exclusion Principle). The Rutherford/Bohr view of matter as 'solid little particles' is a bit off in that particles do not have a fixed size, nor even a certain location (the uncertainty in a particle's position multiplied by the uncertainty of the particle's momentum is always less than some constant: Heisenberg's Uncertainty Principle).
Thu 06 Nov | Simon Lucy | Bohr also fell in love with his 'planetary' theory a kind of post-modern version of the Qabbalah, As Above, So Below; in that he considered the atomic structure to mirror the planetary structure of a solar system (vice versa) and in this way gravity could be considered a special form of the electro-magnetic bonds presumed in the atomic system. It kind of lost favour both with QM and the discovery of the problematic strong and weak atomic forces. And we're still stuck with describing gravity and how it works, gravitons are just a simile for a black box or some kind of universal constant. It will no doubt turn out to be entirely different and simpler and twisted at the same time. We'll still be living in a Material World though.
Thu 06 Nov | Alyosha` | One of the leading minds in the field of philosophy of science, Madonna Ciccone, said it most succinctly in 1984, "We are living in a material world.  And I, am a material girl".
Thu 06 Nov | The Real PC | [We'll still be living in a Material World though.] The word 'material' is pretty useless. According to David Bohm's theory, the matter of our universe unfolds from the matter of a higher dimensional level (which unfolds from a still higher level, and so on). His theory could be called materialist, because everything that exists on all these infinite levels is some form of 'matter.' According to digital physics, everything is made out of information. However, you could easily say that information is a kind of matter. I mean, it's ridiculous to say you either are or are not a materialist. Everything boils down to some kind of relationship. Nothing is 'solid' when you look closely enough. The word 'matter' got its meaning long before relativity. It's time to get some better terminology for what we're trying to talk about.
Thu 06 Nov | Nat Ersoz | Anyone can create a lexicon of bullshit, combine it with a littany of unverifiable conjecture, and when questioned regarding its verification and application merely claim that the skeptics merely 'don't get it'. BFD.
Thu 06 Nov | Simon Lucy | Information is fundamentally matter. So is everything else. That is the point. And at no Point Does the need Arise for anything That does not matter.
Thu 06 Nov | Mike McNertney | The original post reminded me of an important distinction that people often forget. Science is not about faith, and blindly believing what other scientists have 'proven.' Science is about the method of learning about things, and attempting to convince yourself that your ideas match your observations. Real scientists should not be challenged by new ideas that come along, if the results are achieved using the scientific method. Science doesn't claim to know all there is to know about things. It only attempts to use strict methods and observation to describe the phenomenon we see. People didn't dismiss Newton when Einstein and others discovered that things aren't as simple as Newton thought. Newton's theories and discoveries are still important, and they are still useful to describe what is happening on a large scale, even if we now believe that this is not telling us the whole story.
Thu 06 Nov | Alyosha` | If 'material' is a useless word, then it's even less informative to say that everything is made out of 'information'. I can point to a lump of matter. I cannot point to a piece of information, unless it has been conveniently encoded onto some material media. We've used the word 'matter' for a long time now -- and we're still refering to the same thing now as we did back then. Everyone knows what I'm talking when I use the word 'matter' - I'm talking about stuff like protons and electrons and tau neutrinos and so on. The only thing that's changed over the years is that we have a better understanding of the low-level details of how matter behaves at the subatomic level.
Fri 07 Nov | Devil's Advocate | Information, unlike matter, typically has neither mass nor energy.
Sat 08 Nov | Dave Hallett | We don't know what information is. Nor do we know what matter is. (If you look closely, it's mostly made of absolutely nothing.) You can say it's a form of energy (Einstein did) but we don't know what energy is either. A lot of physicists would like to know more, especially re. information, which is a very hot topic right now. If you like to have your head spun, check out the Nov 1 issue of New Scientist, where one of the founding fathers of string theory talks about strings, the cosmological constant and the anthropic principle. A good read. If you like that sort of thing.
Microsoft moves to RISC | Mon 03 Nov | Robert Jacobson
A strange tidbit of news... Microsoft chooses to use IBM PowerPC chips for its next-generation Xbox. It will provide compatibility with the original Xbox using a VirtualPC emulation layer. http://news.ft.com/servlet/ContentServer?pagename=FT.com/StoryFT/FullStory&c=StoryFT&cid=1066565587439 This seems rather bizarre, since the current XBox is basically a Wintel PC. This was a major selling point, as it supposedly makes game development much easier. Perhaps the new Xbox will be based on the .Net Framework.
Mon 03 Nov | Robert Jacobson | Of course, Pocket PCs are based on RISC processors, and Microsoft has the .Net Compact Framework running on them.  Strange to abandon the x86 line for a game machine, though.
Mon 03 Nov | MX | This is really strange. Microsoft should have compatibility - XboX II MegaTurbo should run the games that run now on XboX 1. I have just played 'Halo - Combat Evolved' at a friend's house. The graphics are very bad, compared to graphics that can be achieved on a low-end PC with a low-end graphics card (for example GeForce 4 MX440 with 64 MB RAM).
Mon 03 Nov | no name | The PC version of Halo offers no better graphics.
Mon 03 Nov | Mister Fancypants | Halo came out in 2001, so comparing it to current PC games is a bit misleading. Having said that, I still think it looks better than 99% of current, modern high-end PC games. Few PC games make use of bump-mapping and shader assisted pixel effects (like light blooms) as well as Halo did. While the Xbox's graphics chip is only a GeForce 3.5 (pretty much a GF3 with an extra texture unit), since it is a fixed platform developers have made much more use of what horsepower is there in their games. Until very recently, most PC games have been programmed to run on systems as low as a TNT2 and the overall graphics have suffered for it. Try looking at some newer Xbox games like Crimson Skies -- the graphics are breathtaking. (Also, use a good high-resolution capable TV for best results).
Tue 04 Nov | Tony Chang | Yeah, they are switching over to the PPC long term too; that's why they had to acquire VirtualPC. The intel architecture is at the end of its growth due to insurmountable heat and speed problems that have stalled out its developmeth. Future versions of windows will run on PPC risc chips, which still have quite a bit of overhead to go. Longhorn will be released on both PPC and Intel versions, but the next generation will be PPC only.
Tue 04 Nov | ChrisO | *Checks calendar* It aint April 1
Tue 04 Nov | Robert Jacobson | According to some comments on Slashdot, the Windows NT 3.x kernel was developed to run on multiple platforms, including the PowerPC, so in theory it shouldn't be a huge amount of work to port the Xbox OS (a stripped-down version of Win2000) to the PPC. However, the $64,000 question is _why_ Microsoft would want to break from the tried-and-true x86 line. Maybe it's the heat, or maybe they simply got a better deal from IBM. These game consoles are built on razor-thin margins (the actual hardware is a loss leader), so if Microsoft gets the chips for $20 less apiece from Intel, for example, that could make the difference with profitability. However, it threatens some damage to MS's credibility. First, it broadcasts that the x86 platform supposedly isn't 'good enough' for serious gaming/multimedia (and plays into Apple's claims that G5 machines are the fastest available.) Second, the Playstation is also built around a PowerPC, so there's less to differentiate the Xbox. Long term, I have a hard time believing that Microsoft could shift the PC market (as opposed to a closed-system gaming console) to a PowerPC architecture. Apple managed to pull that off in the early 1990s when it migrated Macs away from the 68040 processors, but I'd imagine that it be much harder (both technologically and with the marketplace) to do that with PCs.
Tue 04 Nov | Walter Rumsby | Maybe by moving to a platform closer to PS2 they hope developers will develop for both consoles simultaneously (and easily). The supposed ease of porting (or at least the supposed similarities) from Windows to X-Box doesn't seem to have the expected benefits.
Tue 04 Nov | Laverne | 'However, it threatens some damage to MS's credibility. First, it broadcasts that the x86 platform supposedly isn't 'good enough' for serious gaming/multimedia (and plays into Apple's claims that G5 machines are the fastest available.) Second, the Playstation is also built around a PowerPC, so there's less to differentiate the Xbox.' ALL true. Now will the x86 is the best architechture ever bigots please shut the hell up.
Tue 04 Nov | Robert Moir | Why does Microsoft picking what they see as a good hardware platform for something play into Apple's hands? Even when they need a hardware platform to run it on, they (Microsoft) are still a *software* company. They don't make processors. Its not their fault or their problem if the 32bit x86 stuff either ain't going to cut it long term, or even just isn't the best for the XBox project. Its their problem to make the best products they can.
Tue 04 Nov | Phoenix | The Playstation IS NOT built around a PowerPC. The Playstation2 has a MIPS RISC core plus some wacky vector units plus a dumb-and-fast rasterizer plus an entire Playstation1 tacked in for backwards compatibility (but the PS2 games are using it, e.g. for streamloading of data and audio). The damn thing has no L2 cache and only something called a 'scratchpad' which is like a cache you manage yourself. The Playstation3 will be built around some even weirder massively parallel chips with the mystic 'Cell' name. If you ever wonder if there's a company that not only HATES its developers but goes out of its way to hurt them bad, look no further than Sony. The Playstation
Tue 04 Nov | Dennis Atkins | > I have a hard time believing that Microsoft could shift the PC market ... to a PowerPC architecture.... I'd imagine that it be much harder (both technologically and with the marketplace) to do that with PCs. Robert, technologically it's already been done -- that's why Microsoft paid a hefty sum to acquire VirtualPC -- the software that completely emulates a Pentium and runs Windows on a PPC. It works. It's done. Marketplacewise, it will be simple -- as long as people's software runs, they are happy. And their PC software runs fine on the PPC. Strategically, if Dell starts building hardware that can run MacOS, this move will have the intriguing side effect of destroying Apple's business model of selling hardware.
Tue 04 Nov | Robert Jacobson | Thanks for the clarification Phoenix. It sounds like the Cell processor for the Platstation 3 will be based on the PowerPC architecture. (It's described in this article as 'a large number of PowerPC microprocessors on a single chip.') http://www.siliconvalley.com/mld/siliconvalley/7177598.htm This might give the Playstation 3 better bragging rights, since it will be a custom chip. It sounds like the Xbox 2 processor will be closer to an off-the-shelf G5. Dennis, you're right about the Virtual PC. I'm not sure about the marketplace issues, though -- Microsoft can't simply decree that all new computers will be PowerPC-based, as Apple was able to do. Microsoft can create a version of Windows that runs on the PowerPC and includes emulation for x86 programs, but it will have to continue supporting the x86 platform too. There may be gradual movement to the PowerPC platform, but it can't happen overnight as it did with Apple. Also, re. Dell, Apple has some very strong intellectual property protection in its boxes. (It used to have copyrighted code that was burned on a custom ROM... not sure about today.) The only way Dell could build a box that ran MacOS would be if entered into a licensing agreement with Apple. Apple allowed some competitors to build Mac-compatible computers in the mid 1990s, and it was a disaster for the company (ate into its profits.) The ironic thing is that Apple has supposedly had an in-house project to port the MacOS to an x86 platform. Now, the market's possibly moving in the opposite direction.
Tue 04 Nov | Stephen Jones | ---'Now will the x86 is the best architechture ever bigots please shut the hell up. '----- None of the x86 fans, such as myself, have ever claimed that. In fact, we will cheerily admit that x86 is the worst archtitecture ever, and that is because of the killer feature that blew everthing else out of the water - backward compatibility.
Tue 04 Nov | flamebait sr. | I doubt that Microsoft is going to move wholesale to PowerPC. There's enough fun in the market with MS now supporting x86 and 2 different 64 bit codebases and what that's going to mean for everybody else. Until they are able to get people over to the CLR, they need to keep the number of supported platforms down enough so that enough folks will start porting stuff to the Itanium and/or Athlon 64 so that at least one of them catches on. I mean, look at PocketPCs -- They've cut down the number of supported processors to just the ARM because nobody wanted to deal with supporting SH3, SH4, MIPS, and ARM. The reason why MacOS on the x86 hasn't been released is generally attributed to being that it would kill Apple's way of doing business the same way that Mac clones did. Microsoft has always made sure to keep their options open, however, so it makes perfect business sense to make the next XBox a PowerPC machine if the numbers work out well enough. The thing I'm finding interesting is the potential of the PowerPC platform as an alternative to the x86 in some spaces, as evidenced by the AmigaOne and Pegasos ATX-format motherboards. A large enough collection of alternative OSes (Linux, several BSDs, etc) and some attempts at new OSes run on them, making them less likely to be a doorstop before their time.
Tue 04 Nov | Portabella | > Until they are able to get people over to the CLR Yes, that's exactly what it's about, isn't it? Sun re-invents the Virtual Machine to use against Intel, and Microsoft likes it so much that they have to make one that they control.
Tue 04 Nov | Jim Rankin | 'The ironic thing is that Apple has supposedly had an in-house project to port the MacOS to an x86 platform.' Actually, the rumor is there's been an x86 version of OS X running inside Apple since before OS X was released. Remember, OS X's parent NextStep was already running on x86 way before Next acquired Apple.
Wed 05 Nov | Albert D. Kallal | For new games, we are talking native code here. It is not a big deal that the “old” system will be emulated...since the cpu has a enough speed to do this (what, the current Xbox is a 750 mhz Pentium...and that will take some real juice to emulate...but I guess he new processor has enough to do this). It is for me very much a surprise move in MS’s part. For sure, if the developer tools do NOT need to be changed, then this is not a big deal. However, if the development tools do need to be re-written, then I am most surprised here. Anyone got a better explanation then some issue of heat on the chip? I mean, regardless as to how you slice and dice things...the Pentium is rather fast at what it does. I don’t see any possibly of the system working on a no native code, since one needs ALL THE SPEED one can get out of a game system. There is NEVER enough processing when it comes to games. Hum...perhaps this is just a cost issue? Or, perahps MS feels they can get more performance out of a risc. Albert D. Kallal Edmonton, Alberta Canada kallal@msn.com http://www.attcanada.net/~kallal.msn
Wed 05 Nov | Steve P | Or simply that Microsoft may be trying to get Intel to come to the party with better prices. Remember X-box 1 was originally slated to run on AMD CPUs. The change to the code base may or may not be an issue. Remember Windows NT used to support Alpha, PPC, ...
Sat 08 Nov | Brad | http://discuss.fogcreek.com/redirect.asp?http://www.siliconvalley.com/mld/siliconvalley/7177598.htm
Belkin routers | Fri 07 Nov | Nathan
I just read about the new feature in Belkin routers - they redirect your computer to an ad for their parental software once every 8 hours until you click the box saying, No, I dont want this. Original complaint is here: http://groups.google.com/groups?selm=3FA87D03.E1C44EDE%40DutchElmSt.invalid Eric Deming from Belkin replies here: http://groups.google.com/groups?selm=c91e821d.0311051525.70aa9920%40posting.google.com
Fri 07 Nov | Alyosha` | Outrageous!
Fri 07 Nov | Robert Jacobson | Agreed.  Check out the rants on Slashdot about this -- for once I agree with them.  <g>
Fri 07 Nov | sgf | So they're giving them away free ... right?  :)
For Toronto-Area Joelsters Only | Fri 07 Nov | Reginald Braithwaite-Lee
Okay folks, there seems to be interest in a Toronto get-together for fans of Joel-on-Software. Ive created a Yahoo! group for organizing a meet-up: http://groups.yahoo.com/group/jostorontonians/ If youre interested in getting together with fellow Toronto-area folks, please add yourself to the group. Please do not use thsi forum for that purpose: join the mailing list and lets make it happen. p.s. Yes, Im aware of specialized meeting organization software. But emails a good way to get the ball rolling, and everyone knows how to use it.
Fri 07 Nov | Reginald Braithwaite-Lee | p.p.s. To join directly: http://groups.yahoo.com/group/jostorontonians/join
Fri 07 Nov | Li-fan Chen | Thanks for setting it up.
Fri 07 Nov | Alyosha` | Wow, a bulletin board all about posting on a bulletin board. Can't get any more metareflexive than that! =-)
Fri 07 Nov | anon | Will you change the group's settings so that it's not "Listed in directory"? I currently belong to two groups that aren't listed in directory, and get no spam....
Fri 07 Nov | Li-fan Chen | I would second that, if there's no need to allow emails to be listed or harvested that would be much appreciated.
Fri 07 Nov | Reginald Braithwaite-Lee | If you have a comment for me personally, the link on every message I post on JOS works just fine. Please don't post here unless you feel everyone is interested. FWIW, the relationship between spam and Yahoo groups is probably interesting to everyone who uses Yahoo groups. So much so, I'll probably start a thread about it later.
digital music licensing | Fri 07 Nov | ktm
This is reasonably off topic (perhaps not as off topic as the M-theory voodoo), but maybe the lawyer turned developer types know something about it. If I have a coffee shop that offers free wi-fi, can I set up a server with all my CDs on it, such that the iTunes users can listen to the music using the shared music/rendezvous feature? Alternatively, I know that if you want a legit streaming audio channel, you are supposed to license all your music. What if I just want to set up the streaming audio channel within my coffee shop, so that users in the coffee shop can listen to the tunes whilst at their laptops?
Fri 07 Nov | Philo | In the US, you'll need a broadcast license. Check out ASCAP or BMI for more information. Philo
Fri 07 Nov | ktm | even if the server is located within a single coffee shop, and the music is only being broadcast to nodes in the coffee shop network?
Fri 07 Nov | RocketJeff | You're using the music for a public performance, you need the license Philo's talking about. If you have any sort of music system where the public can listen to it (be it a bar/book store/etc), the license is needed.
Fri 07 Nov | Philo | You used the word, didn't you? ;-) Seriously, yes - you'll need a broadcast license. Philo
We're gonna hack the gibson, man! | Fri 07 Nov | Philo
http://tactile3d.com/ Practical? Ill have to wait and see. Uber-cool and make visitors think youre the love child of Crash Override and Acid Burn? Absolutely! Philo
Fri 07 Nov | tapiwa | Can't download. Can't comment
Fri 07 Nov | no name | Anyone who complains about the FC website wants to kop a load of that. Jezusfuckingchrist.
Fri 07 Nov | Simon Lucy | At last Tetris for the Office environment...
Fri 07 Nov | no name | How can I download it?
Fri 07 Nov | Philo | Apparently you can't, yet. Could be vaporware. Definitely a massive drain on CPU and resources. But it sure *looks* cool. Philo
Fri 07 Nov | Kevin | Hmm.  I'm not sure I remember the last time I thought to myself, "I wish I had better *sound effects* in my file manager."
Fri 07 Nov | Tim Sullivan | >Definitely a massive drain on CPU and resources.< Not if you've got a 3d accellerator card. I suspect it could run at close to 0% CPU and minimal resources with a modern card, even with lots of fancy-schmancy eye candy. And, it becomes more interesting when Longhorn's Direct3D desktop becomes the norm...
Fri 07 Nov | ...a cynic writes | 3d interfaces are not exactly new. If you do want to give them a try there's several at http://www.nooface.org/ for example. I've never fancied them myself - but then I run DesktopX with a theme called 'Bluegrid' ( http://www.wincustomize.com/window.asp?Cmd=PREVIEW&source=http://skins.stardock.com/BoXXi/dx/bluegridSS.jpg ) which isn't exactly shy and retiring.
Fri 07 Nov | www.marktaw.com | I thought... No, that can't be a reference to William Gibson, but I guess it was. When can we plug in & move around and feel and smell and taste this fully 3d environment? Or as a certain virtual someone is known to say 'Woah.'
Fri 07 Nov | Philo | It's an indirect reference to him, via 'Hackers' Philo
Fri 07 Nov | obgy10 | who is william gibson
Fri 07 Nov | RocketJeff | >> who is william gibson http://www.bestwebbuys.com/books/compare/isbn/0441007465
Downloading over a WAN Intranet | Fri 07 Nov | r1ch
I work for a company which, like many others, has a lot of offices spread around the world. Quite often, due to the time differences we realise that we need to get some big files from a server in another office when theres there. So typically wed just browse the windows shares at the remote office and copy it across. But this isnt much fun when the office is so far away - however much bandwidth you have the ping time makes browsing remote (say 5000 miles or so) shares painfully slow. So I was thinking... Is there some intranet solution out there that could improve things? How about if you had a webserver running at each site which was running some code that allowed users to browse shares via interactive HTML. When the user found what they wanted, it could automatically zip up the files/directories on the server and allow the user to download them. Does anyone know of a solution like this thats out there already? Ideally, the user would be able to enter the name of any server they would like to browse and any authentication details that are required. I know that we could use terminal services or ssh or whatever, but it would be nice to have a fast easy to use GUI for the less technically inclined... If there isnt anything like this out there then I might have a go at putting it together myself.
Fri 07 Nov | no name | like passthrough?  cool idea.  make it!
Fri 07 Nov | r1ch | I think I might just do that - being able to have searches performed on the server side would be a handy feature too.
Fri 07 Nov | no name | a modern gopher eh? please make this a web app, so you just deploy it on a webserver and it is easy to use. A client-side app, whilst maybe more efficient and possible to make more useful, might force a homogeneous network architecture. Hey, what happened to gopher?
Fri 07 Nov | no name | Don't know if this will fit your bill or not. It's a nice gui for SSH. http://winscp.sourceforge.net/eng/
Fri 07 Nov | Simon Lucy | gopher became an endangered species and is now kept in special breeding stock locations such as CERN, MIT and UCSD.
Fri 07 Nov | MSHack | Winscp is one option and I see it here. However, as the process appears to be somewhat predictable, what if you just kept each other up to date? Rsync now supports constricted bandwidth. So it will allow you to say only 'X bytes/second' of transmit. Setting up an interface to it, and putting a line in to zip the file first should pretty much do what you are asking. If you wish to do this right off the drive menu, it is a bit more complex (ok, quite a bit). However, if you build the interface through a web page it would be straight forward, and you could even send the person an email when the file was relocated. Or.......you could just use rsync to sync everyone with everyone else as they go off-line for the night. If the files are truely random and it does happen a lot, this would be the best option. (fyi- unless you force it to, rsync only moves files that change so no wasted sending of duplicates)
Dynamic SQL Queries | Fri 07 Nov | DB Troubled
I want to hear about ways that people talk to SQL Server from a web application when using a great number of distinct queries over the same set of data. Situations where youre selecting data from a table, and sometimes you join that table with one or more other tables, or you filter by a varying set of columns in the WHERE clause, or you order by a varying sequence of columns, etc. -- all of which resuls in a vast number of unique queries. The two ways Ive done this are: 1. Build the SQL query text dynamically in the web script, usually in an entity class that separates the presentation layer from the data layer. For example, create an object of class Users, indicate the joins, the filters, the ordering, etc., via object methods, and then use the object to execute the query and return a data structure to the presentation layer. The SQL string is all built dynamically within the object -- and clearly the number of possible SQL string permutations can be quite large. 2. Use stored procedures which contain relatively static queries. Make each SP as flexible as possible, but generally wind up using multiple stored procedures that do very similar things. Stored procedures are the established best practice in this scenario (compiled, faster, keeps your data access logic out of your business logic, etc.), but Ive never been able to achieve the flexibility of option 1 with stored procedures in option 2. Is it that Im just not proficient enough with stored procedures? If so, what am I missing? Is there ever a good time not to use a stored procedure? Is there some kind of mixed approach of the above two options that works best?
Fri 07 Nov | n/a | go with stored procedures: - you will have better sql knowledge - prevent sql injection - improve performance (not on your mom's site of course)
Fri 07 Nov | henrik | You could use EXEC ('sql string built with template and prameters') this also alows you to do DDL stuff in stored procedures, if necessary/desireable. The downside is that you the T-SQL parser will evaluate your statement at run time instead of compile time, which is normally a 'Bad Thing' (TM). So you have to weigh the benefit provided by using dynamic SQL againts the cost of delaying and complicating error detection. if you use dynamic sql, you might want to consider using some kind of home grown assert mechanism to verify input params before executng the sql string. hope it helps
Fri 07 Nov | Matt Conrad | Looks like its time to post a link to Erland's page again: http://www.algonet.se/~sommar/dyn-search.html You can make a stored procedure that accepts two dozen parameters and uses an arbitrary six of them to generate a new SQL statement. If you use sp_executesql to execute this statement you will be safe from SQL injection, and can potentially get query plan reuse too. (Getting query plan with sp_executesql reuse requires fully qualified table names, though, see BOL.)
Fri 07 Nov | Wade Winningham | I use the trick in the example below to incorporate a variable number of filter parameters. SELECT * FROM people WHERE (@Name IS NULL OR Name = @Name) AND (@Email IS NULL OR Email = @Email) Assuming @Name and @Email are parameters of the query, you can path both, either or neither of them and still get results. If you pass email but not name, @Name IS NULL evaluates to True and ignores the Name=@Name piece. This does have performance issues for tables with millions of rows in them, but the trade-off of performance to maintainability may be worth it. Sorting is another story, especially when the fields you sort by could be of varying data types.
Fri 07 Nov | Phibian | We use the non-stored procedure approach. Why: -SQL Server optimizes frequently used queries automatically. We've never found the 'speed' improvements of stored procedures *that* significant. -Stored procedures are not easily portable. All of our code currently works on multiple platforms and databases, without code changes. -Building the SQL dynamically in a template provides much more flexibility, and can result in simpler / faster queries. There are things you can handle at the SQL level (eg the example about @NAME being NULL or not), but you can often dramatically simplify your SQL if you do the logic in advance based on whether you have those parameters or not. -We've also found that a lot of logic for the dynamic SQL for what we are doing is business logic anyway. So the argument to keep business logic and data access logic separate is a bit of a red herring. -If you are working on a web application and you realize that your SQL has to change (say to return a few additional fields), it's much easier to open a template containing SQL and make those changes than it is to log into the database and update your stored procedures. My 2c
Fri 07 Nov | CharlesC | Agree with everything Phibian said. The performance gains from having a SP compiled are negligible with modern sql servers and hardware.
Fri 07 Nov | my 1.5 cents | Fire up Profilier and check for yourself. That is the only true way to tell. Even stored procedures can cause recompiles depending how you write your code. But, isn't that the *one* true answer in coding... depends? In my opinion if you are using enterprise level DBs stick with stored procedures. If portability is really an issue it is easier to change a sp. then recompiling an app. that has sql queries hard coded. And sp can be safer and more secure.
Fri 07 Nov | EastIndian | Would just like to add two things on that: 1. SP's form the core data access layer in any n-tier architecture. Its secure and efficient by that means. Highly recommended by the very designers of the MS SQL Engine. 2. SP's have the execution plan precompiled, so for complex queries and complicated logic it most certainly performs better than 'raw TSQL'. The performance boost is negligible for simple SELECT statements.
Fri 07 Nov | M | Can anybody point to any documentation showing that SP's are indeed more secure? Yes, they lend themselves to isolation of functionality from a Server login and role perspective, but I have rarely ran into a case where I let individual users do their thing via SQL. So, is the real security benefit? Since SQL Server 2K, as Phibian points out, common SQL execution plans are parameterized, query plans are generated and saved just like for SP’s. This gives you all the same benefits of an SP, granted not with the initial queries. (Reference Pg. 79 Inside MS SQL Server by Kalen Delaney) I prefer a well thought out DA layer in the BL code so I don’t have to hunt and peck all around the architecture for enhancements and bugs.
Fri 07 Nov | Almost Anonymous | I use a series of classes (Select, Insert, Update, Delete) that completely encapsulate building queries. This prevents SQL injection just as well as stored procedures and is far easier than messing around with string concatination all the time. Pseudo code: query = new Query_Select query.Field('AVG(Total)', 'AvgTotal'); query.Join('Invoices.CustomerID', 'Customers.CustomerID'); query.Where('Customer.Name', 'Bob Smith'); query.WhereGroup(); query.Where('Invoices.ID', 5, '!='); query.OrWhere('Invoices.ID, 6, '<'); query.CloseGroup(); query.GroupBy('Customer.CustomerID'); query.HavingGroup(); query.Where('AvgTotal', 200, '>'); query.CloseGroup(); resultset = query.execute(); It's a pretty flexible design. And I include a lot of high-level where-like functions for handling a range of situations. Couple of advantages: * Encapsulates the SQL language for portability among different SQL platforms. * Queries can be passed around and manipulated. The last advantage is pretty cool. I have functions which apply filters to any existing query. I just pass the query object by-reference to the function.
Fri 07 Nov | Dennis Forbes | There is no one right answer, and for all the gains there are plenty of losses. However the procedure approach is valuable for the following reasons: -The account context used to access the database only needs to be given rights to call the stored procedures you identify as the entry-points -- Even if someone ownzorz your web box, or a malicious employee put a back door in a component, or you leave a gaping hole injection attack opportunity (which is ridiculously common), in this scenario they can do nothing more than execute the entry stored procs. Compare this to the app needing access to the tables, etc....SELECT * FROM cust_credit_card. Look up 'ownership chaining' in the docs to understand this. -Stored procs are like a first layer of data abstraction objects - If you constrain all data requests and insertions/updates to them, with no client access to the schema, you can do wholesale changes with no visiblity to the users of the db.
Fri 07 Nov | somebody | How about performing the dynamic processing on the client?  The simplicity of WHERE and ORDER BY can make it easy to overlook this idea but nothing prevents you from doing the filtering and sorting in the client code. 
They call me NERD!!! | Fri 07 Nov | Jack of All
Ive been working some magic on the backend of my site engine lately and have managed to squeeze an average of 500ths of a second off of the page build time... Its now currently running in the vicinity of .35 of a second. My little heart is pounding, and a manic grin has made itself comfortable on my head. This is what I love about my job. Im a nerd, I admit it, but damn it, I love what I do!!! So, one and all, tell me what makes you tick! What have you done lately thats really blown your hair back?
Fri 07 Nov | Matthew Lock | Put an index on a query that made a query go from 60 seconds to 0.25 seconds.
Fri 07 Nov | Nick | I spent half the day writing code that generates code. It's for a class and we're working on optimization. The code generates several hundred versions of the same function, then runs and clocks 'em. The instructor was able to get a speedup of 1.8 over the original and considers that a pretty good number since he also 'considers himself a pretty good coder.' I'm at 2.5 and rising.
Fri 07 Nov | Matthew Lock | That's a pretty cool idea Nick, generating code to try possible permutations of an idea, then test them.
Fri 07 Nov | christopher baus (www.baus.net) | Considering high performance server architectures that use Asynchronous I/O to process requests. BTW if Ori is still here, I figured out how those Python guys wrote a single threaded web server. Python supports co-routines which are similiar to user mode threads like NT fibers. At least the problem can be broken down that way. It makes the state machine MUCH easier to program. Engelschall's Pth allows a similar mechanism. It is a smart way to build a server, but it isn't exactly what I thought. I was thinking more along the lines of Doug Schmidt's Proactor pattern. I took a look at Schmidt's JAWS web server, and realized he buffered a lot of data before processing it. That's the easy way out, and a good way to get yourself into a buffer overflow problem. But anyways.
Fri 07 Nov | Li-fan Chen | At high saturation AIO help give you that 30% boost if jobs for AIO and thread based workers can be handled pretty quickly. For long running jobs the benefit disappears. For tiny jobs with thousands of clients waiting AIO really shines. For single thread jobs with 4 consumers, don't even bother with AIO.
Fri 07 Nov | Li-fan Chen | There are maybe 3 key caching methods that's of any interest to the overworked web coder who has no time for any decent infrastructure. There's cmd_memoire, which builds a shared-memory hash string structure in the web server that caches the answers (especially long answers) of the Most Recently/Often Used distinct queries. Where the key lookup is context|command_name|command_parameter or something like that MD5 digested. This is pretty cool as long as you have an weekend to code this up. It does two things: identical queries made by the same web server will have instant answers from memory without hitting the rdmbs. You have to figure out the expiration policy ofcourse. Source: found it in Arsdgita Community System (go check out OpenACS) The second method is basically an enhancement of the first method, you add triggers to the database and a rule system that helps you figure out what sort of updates to your database system should result in the proper expiration of an memoired answer. The third method is basically trying to make blade systems work with tons of hardware redundancy and scalability at the tcp level none of us has any kind of access to. Check out research by akamai and ibm olympic website team (circa 1996,1998) If you want to go N level.. you'll have to look at one of my college friend's work on connection resumption between the network access point at any given server in the server farm. That basically allows you to scale even more--probably even better than the way google does. See http://www.ieee-infocom.org/2002/papers/794.pdf But then if you care about this kind of competence you probably already read the article and talked to the author back early last year.
Fri 07 Nov | Li-fan Chen | The common theme from my previous 2 posts are this: look at the nature of your data. If you have been asking an inefficient framework to do a lot of file shuffling you'll waste a time doing a lot of bandwidth wasting, disk seeking, memory block copying, internet explorer icon spinning before your server get any chance to do the intersting stuff. So if you apply even one of the rules from above. It will probably allow you write web apps that wont' have to get stuck in the RDMBS/network file acess mud.
Fri 07 Nov | Li-fan Chen | Think about CityDesk for example. What does the free version do? Pre-parses 1) some custom logic from you and use those directives to do something interesting with the latest 2) almost live data and fresh enough creatives/templates/copy and then punch out <50 3) html pages that no browser/webserver/database in the world has to cough up a single extra cycle of dynamic processing to push out. Static push all the way. Now multiply your 20 custom directives by 200 programmer man years. Multiple those creative by the number of staff at AP Press, and then multiply your 20 hits a month by a few million a day. And you got yourself a situation where you are plenty thankful you preparsed everything. And could do it (in a batch job) fashion again 60 seconds from now. And again--so on and so forth--providing almost live coverage of whatever the hell is going on in the world that's keeping millions of house wife up at night--without wasting an astronomical amount of database access or network file sharing or memory copying or visit thumb twiddling... I know we are talking about CityDesk here, not exactly ready for AP just yet--but that's how the IBM olympic website does it; they have a big team of people who created a custom job that basically does what CityDesk does (pre-parsing, generating almost live data)... and some how plug it into their farm. That's how they serve 5 million hits a minute--should they ever need to. So if you are even mildly successful at scaling one of the three factors (many visitors per second/many live content/many directives).. you'll appreciate something like CityDesk right away. I realized something like this 5 years ago, and that was a good day.
Fri 07 Nov | ajs | Getting a credit card check digit calculation to run 1/4 second faster. Yes, a whole 0.25 seconds. Mind you, the system only ran at 32 instruction per second. Not a misprint.
Fri 07 Nov | no name | 32 instructions per second? Pah! In my day we had to write the instructions by hand and send them in by carrier pigeon.
Fri 07 Nov | son of parnas | Take a look at erlang's lighweight process architecture for performance. http://www.guug.de/veranstaltungen/ffg2003/papers/ffg2003-armstrong.pdf Yaws is a erlang web server http://yaws.hyber.org/ that kicks ass. http://www.sics.se/~joe/apachevsyaws.html
Fri 07 Nov | protect the guilty | The most recent thing that blew me was blonde, six foot something, and certainly worth the climb
Fri 07 Nov | Mr Obnoxious Man | > The most recent thing that blew me was blonde, six foot something, and certainly worth the climb What was his name?
Fri 07 Nov | John Topley (www.johntopley.com) | In my last job they were using a training administration system that took about eight hours to run budget reports (I kid you not). I wrote a little system in Access that programmatically coped the relevant data files, indexed them and ran the reports. It turned out to be at least 15,000% faster! That felt pretty good. Now I work with J2EE and all I can do is try to keep up with whatever the latest open source fad-of-the-month is! ;-)
Fri 07 Nov | Phizo | I convinced a billion $/year Chemical company to finance my vaporware (albeit, modestly) for 3 years in exchange for 100 licenses. I had no background, experience or training short of writing some macros in AutoCAD and I actually ended up with a product. That was a very good day.
Fri 07 Nov | christopher baus (www.baus.net) | Phizo, can you do my marketing?
Fri 07 Nov | tapiwa | Phizo never mind the marketing. lets do a post Google IPO. Easy money here we come!!
FC Logo | Thu 06 Nov | B&
Was there ever an explanation for the FC logo?  Fog on a Creek or am I halucinating.
Fri 07 Nov | Joel Spolsky | It's abstract.
Fri 07 Nov | B& | An abstraction inspired by what is the question I should have asked.
Fri 07 Nov | Philo | uh, it's a fogbank over water. Fog - creek - get it? Philo
Fri 07 Nov | B& | So, I get the Fog part, but can you go over the Creek thing again? <g>
Data Access Functions | Thu 06 Nov | Dave B.
I have two central functions which I use to access data from a database. (FYI - I am speaking in the context of ADO/DAO and ADO.NET on an IBM PC.) They are - OpenRS and ExecuteSQL. These functions also trap and display errors that occur while accessing the database. OpenRS takes an SQL string as an argument and returns a read only - forward only recordset, directly from the connection. This function returns success or failure. ExecuteSQL also takes an SQL string as an argument and returns (via parameter), depending on the SQL statement, the number of records affected, a singular value representing the ID of a new record or the value of a single aggregate function (i.e. SELECT Count(*) FROM tblSoAndSo WHERE ....). All statements executed in this function are executed inside a transaction. This function returns success or failure. Anything more complicated and I have to use a recordset. At any rate, Id be interested in hearing what centralized data access functions you guys/gals use and maybe a short description of how they work or are structured. If you structure your data access differently, how do you it? Does anyone have a function that updates recordsets? (I did but found it was too unwieldy.) Maybe some of you just use the recordset outright (i.e. in each individual function) each time you need data access, is there a reason for this?
Thu 06 Nov | Sam Livingston-Gray | I likewise use GetRS and ExecuteSQL, although my GetRS returns a connected recordset, and I use it a lot more than ExecuteSQL. Basically, for changes to individual records I just use the recordset because I found it easier to call .Update than to write a pair of update/insert statements for every table. For mass changes, I use a SQL statement. Of course, I mostly do single-user desktop apps, so haven't had to deal with the concurrency management stuff that might prompt a more SQL-oriented approach.
Thu 06 Nov | Philip Dickerson | I have a data access component with methods like this... ReadRS(DBident, query, ...) [non-transactional] - returns disconnected, static, read-only client-cursor recordset GetRS(DBident, query, ...) [transactional] - returns disconnected, static, Batch-Optimistic client-cursor recordset GetNewRS(DBident, table-name, ...) [transactional] - returns empty, disconnected, static, Batch-Optimistic client-cursor recordset UpdateRS(DBident, recordset) [transactional] [passing in recordset previously obtained from either GetRS or GetNewRS method and modified/added-to] - connects to database, sets recordset ActiveConnection, and calls UpdateBatch The return values from the methods are recordsets (not true/false or success/failure) and status is indicated by raising errors for anything other than 'success'. I also have an ExecuteSQL method, but rarely use it - I have found it better in many ways to use ADO recordsets rather than directly executing SQL queries, and this also makes it easier to support multiple database vendors with the same code.
Thu 06 Nov | Andrew Hurst | I wrap the results in an object. For instance, for a person, I might call getPersonList( args ). That would return a PersonList object, which is (of course) a list of Person objects. Person objects are mostly just accessors, and PersonList objects include such handy functions as sortBy(), sortByTwoValues( value1, value2 ), sortByThreeValues( value1, value2, value3 ), getCount, getCountByValue, getCountByTwoValues, etc. Everything I know about VBA I learned from the first few chapters of a 'VBA for Excel 2000' book, and frequent searches on google. My setup here works fine because everything I do with this data is reporting, so I don't have to worry about updating the database after changes. Which is also why I have all the sort* and getCount* functions, handy for summarizing results that Excel's built-in sheet summarizing functions can't handle well.
Fri 07 Nov | Tim H | Like some of you guys, I have QueryRS for disconnected and ExecuteSQL. ADO stays at my data-layer only. I pass data up to my applications as variant arrays, or more recently XML! I never use ADO for updating recordsets. When saving data I always translate to INSERT/UPDATE statements. For complex multi-table stuff in MSSQL, I consider using stored-procs using prepared ADO Commands. Which is nice.
Fri 07 Nov | Dave B. | Thanks for the comments guys.  I now have some idea as to how I can improve my "Data Access Functions".
Google Deskbar | Thu 06 Nov | Matthew Lock
This is pretty cool http://toolbar.google.com/deskbar/
Thu 06 Nov | Philo | This is cooler: http://notesbydave.com/toolbar/doc.htm Philo
Thu 06 Nov | Matthew Lock | Mmm that is cool!
Thu 06 Nov | Jack of All | Personally, I didn't really like Dave's Quick Search Taskbar Toolbar Deskbar Thingy... it's functionality requires that html pages are opened by a browser (it creates a html page with a search form embedded in it and opens that, calling a submit form javascript function). This is fine for 99.9999% of most people (if they've got javascript enabled), but by default I open html files in an editor...
Thu 06 Nov | Jack of All | My loss, aye? :)
Fri 07 Nov | Greg Hurlman (blogs.squaretwo.net) | I've seen a few links pointing to these recently, and I've had this functionality for a while now, I guess I'm the only one that does this... I've got a double-high taskbar at the bottom, with the Quick Launch & Web Address toolbars on the top line, with my programs underneath... makes it easier to jump to a page. I've also got TweakUI, which allows you to define new IE search keywords (e.g 'google term1 term2'). So, I've got 'mskb ', 'google ', and 'msdn ' set up there. I just enter the keyword & my search into the address bar, and off I go... quick, easy, simple.
Fri 07 Nov | odinprotectsus | OH, NO, IT'S EVIL GPL-WARE! Somewhere, Baby Jesus is crying, a kitten just got drowned and a programmer is being slowly starved to death because Dave Bau is giving away his software! Yep, I'm feeling trollish today. Don't feed me.
Suggestions for buying an ISDN modem/router? | Thu 06 Nov | Alfonso
One of my clients wants me to be connected to their network via ISDN. (Lets not debate the merits of that; been there done that.) I havent used ISDN in years...Who still makes ISDN modems? I used to have an Ascend Pipeline 50, but Ascend was gobbled up by Lucent and has disappeared. I just need something to plug into my new ISDN jack at the house. What to buy, and more importantly, where to buy it?
Thu 06 Nov | Mike Swieton | This information is a bit out of date, but as of a few years ago CompUSA carried a 3Com one for 219.99.
Thu 06 Nov | Bored Bystander | http://www.streetprices.com/x/search.cgi?query=ISDN I use the Diva Lan Modem, a 4 port 10 mb/sec hub. Dated but works fine for me and was straightforward to set up. Provantage has it for ~$350 which seems extremely overpriced. Also, there's Ebay, of course.
Fri 07 Nov | no name | AVM - http://www.avm.de/en/index.php3 I use one of their cards and have had no probs apart from it sometimes doesn't seem to wake up properly when the computer comes back from power saving mode. I really don't know too much about the merits of one card or another, but they were recommended to me by a friend who does.
Fri 07 Nov | no name | Sorry. Missed the last bit of your post. Unless your home, office, whatever is connected for isdn you need to get your telco to sort that. Then your normal phone will not work with the new setup (analogue vs. digital, see?). I think that you can buy yourself a PBX to sort this problem though. The 'thing to plug in' you are thinking of is probably an NTBA.
Fri 07 Nov | Bored Bystander | Alfonso can have ISDN installed as a second line from the phone company and keep the existing POTS line. That's what I did. If ISDN at the employee's house is an employer requirement, they should pay for it.
Fri 07 Nov | Alfonso | Thanks for the posts. 'Unless your home, office, whatever is connected for isdn you need to get your telco to sort that.' It's wired for ISDN. Seperate line. (That my client does in fact pay for.)
Fri 07 Nov | David Roper | I use a 3-com OfficeConnect LanModem 3C891A. It combines a 4-port 10baseT hub with an ISDN modem and two terminal adaptors into which a standard telephone/fax can be plugged. The hub provides DHCP and NATS and can be configured via a web browser. The modem supports on demand channel bonding so you can get 128Kbs (ish) when needed. Reasonably priced and very reliable for those if us deep in the countryside where ADSL will never reach. David P.S. If you're in the UK and BT won't install Home Highway, rattle their cage and demand ISDN2e. They are obliged under their universal service obligation to provide it.
SourceGear Vault Single User... | Thu 06 Nov | christopher baus (www.baus.net)
I just noticed that SourceGear Vault is out for single users. This seems like an insanely good deal when you consider it comes with a year of support according to SourceGears web site. htttp://www.sourcegear.com/ I wish they would have come out with this a couple months ago as Ive set up subversion http://subversion.tigris.org/ since vault was cost prohibitive. I finally got tortoise SVN working, and the latest build looks pretty good as well. But no year of technical support. BTW, I have no relation to SourceGear. Just having fun watching both Joels and Erics companies as they both have an open management style.
Thu 06 Nov | Nick | I liked the look of it too. I had trouble getting WinCVS set up on my PC, got sidetracked, and never went back to finish the setup. I'm thinking of bagging it and just buying the Vault. Eric has a few comments on it in his blog ( http://software.ericsink.com/index.html ). If you go over there to read them, make sure you check out his October 27th entry. Classic!
Fri 07 Nov | Mike J. | How does this compare to Perforce, which is free for two users?
What's on your quicklaunch? | Thu 06 Nov | Philo
Trying to lighten the atmosphere a little. It still amazes me when I go to a production Win2k web server and the IIS Configuration applet isnt on the quicklaunch bar (or at least on the desktop). The first things that usually go on mine: Dev Studio (whatever Im using at the time) Event Log Calculator Services IIS Ultraedit URLRun Lately XMLSpy and Terminal Services as well. Philo
Thu 06 Nov | JR | Total Commander Delphi 6 Visual Studio .NET 2003 My Documents (shortcut to folder) WinAmp iTunes The Bat! 2.01 MyIE2 Microsoft Word 2000 FlashGet Nero Burning ROM 6 Paint Shop Pro 8 NetLimiter 1.22 Control Panel (shortcut to folder) Advanced Uninstaller Pro 6.01
Thu 06 Nov | JR | I like to have my quick launch bar docked to the right side of the screen, so I can have a lot of things on it.
Thu 06 Nov | Michael Sica | -Netscape Mail Compose (short cut to actually writing an email, Netscp.exe' -compose) -Netsend utility (for quick messages to co-workers) -Schematron Validator -SecureCRT (telnet) -CMD window (short cut to cmd.exe) -CuteFTP -Dreamweaver MX 2004 -TopStyle Lite -Crimson Editor -Note Pad (i love the pad) -Opera 7 -Netscape 4 -IE6 -Netscape 7 -Firebird .7 -Show Desktop -My Documents -Folder shortcut for another 'working' folder -My Computer I also have 2 folders that act as menus. One for larger applications that I don't want to accidently press. Adalon, Photoshop, Flash MX 2004, and 2 other work applications that take a long time too load. The other is my Desktop. (So I can not see my desktop, yet still get to all the stuff on it.) ---- My home PC has about half of those apps on it. Plus JBuilder 9 Personal. ---- I hate using the start menu. I'd have to click, 'start', 'programs', then find the maker of the software, then find the icon for the software. Me likes the quicklaunch very much. me likes....
Thu 06 Nov | Brad Wilson | Why not just arrange your start menu to suit, instead? That way, you can get to things with a few key presses instead of having to move your hand to the mouse. For example: Visual Studio 2002 is: Start / 2 / 1 / d http://dotnetguy.techieswithcats.com/junk/startmenu-example.png
Thu 06 Nov | Michael Sica | because big button on the bottom of my screen are easier to find and click on. :) (i use 'large icons' for my quicklaunch)
Thu 06 Nov | John Topley (www.johntopley.com) | Let's see... - Show Desktop - Windows Media Player - A little Delphi app I wrote to clear the Documents menu - A shortcut to fast user switch* - Command Prompt - Paint Shop Pro - Word - Excel - PowerPoint - Access - Outlook - GXExplorer * The command is %windir%\System32\rundll32.exe user32.dll,LockWorkStation
Thu 06 Nov | Matthew Lee | I'm a minimalist. -desktop -my computer -RDP client -putty -SQLEM -My Documents -TextPad -Outlook -IE
Thu 06 Nov | MR | IE, Show Desktop, SecureCRT, SecureFX, TOra (free TOAD look-alike).
Thu 06 Nov | Evgeny Goldin | Have no quicklaunch, use a WinKey instead. The power is in the fingertips, you know ..
Thu 06 Nov | Brad Wilson | 'A shortcut to fast user switch*' Hold Windows key, press L. Also, +1 for WinKey. Excellent utility (the shortcut above is a system shortcut, not a WinKey shortcut).
Thu 06 Nov | Almost Anonymous | I guess I'm the only true minimalist here: 1. Show desktop 2. Base Music folder 3. Windows Explorer -- I also run the classic start menu and put all my programs above Program Files rather than in Program Files.
Thu 06 Nov | Giovanni Corriga | I use GNOME on Linux, but I use a panel on the right side of the screen with the most used apps: -terminal -Anjuta C/C++ IDE -DDD Debugger -Glade UI Builder -Eclipse -VisualWorks 7.1 -shortcut to current Squeak Smalltalk project -shortcut to the folder containing all my Squeak projects -Mozilla 1.5 -Ximian Evolution -Pan News Reader
Thu 06 Nov | Evgeny Gesin /Javadesk/ | Brighter day: Mozilla KMail Xine ICQ :-) --------------------------
Thu 06 Nov | Mark Hoffman | 'It still amazes me when I go to a production Win2k web server and the IIS Configuration applet isn't on the quicklaunch bar (or at least on the desktop).' Hmmm...Why is that? What are you having to reconfigure so frequently?
Thu 06 Nov | r1ch | tcsh vi DevStudio Perforce Client IntelliJ Idea Mozilla Firebird PuTTY X-Thin Pro Shortcuts
Thu 06 Nov | Simon Lucy | Well I use Object Desktop and DesktopX but I guess the equivalent list to the Quicklaunch would be the single click icons I have. From left to right in the main set Calypso, email client Mozilla Visual Fox MSDN Cygwin Ultraedit Citydesk (hmmm that's from my original installation of it, not used now) Command Window Icon Workshop BestFTP In the system tray All the usual IM junk OpenOffice Semag etc, etc And going down the right hand edge just two Photoshop Pueblo
Thu 06 Nov | Philo | Mark - Setting up and debugging, and then new sites after that. Philo
Thu 06 Nov | Dave Rothgery | I use a two-line taskbar so that I can have the QuickLaunch in one line and open applications in the next, but... Show Desktop IE OE EditPlus Outlook Access Excel FrontPage PowerPoint Word VSS VS.NET 2003 (shortcut to 2K2 is on the desktop) SQL Server Enterpise Manager SQL Server Query Analyzer IIS Admin Command Prompt Windows Media Player Mozilla SharpReader
Thu 06 Nov | John Topley (www.johntopley.com) | ''A shortcut to fast user switch*' Hold Windows key, press L.' Yeah, I know. I just like having an icon of some keys on my Quick Launch bar! ;-)
Thu 06 Nov | Nick Brosnahan | Even more important, do you have http://www.dqsd.net/ installed?
Thu 06 Nov | Vince | Yay! I win for smallest list! IE Textpad Absolute FTP Putty OE Win CVS
Thu 06 Nov | runtime | My QuickLaunch: IE Command Prompt Show Desktop and here some helpful keyboard shortcuts: Windows key + D = Show Desktop (aka Minimize All Windows) Windows key + E = open a new File Explorer window
Thu 06 Nov | Jason Watts | I will now start numbering all my shortcuts ala Brad Wilson.  Thanks for the tip.
Thu 06 Nov | Damian | DQSD Is a MUST! I keep my quicklaunch pretty minimal : Desktop Outlook IE Winamp and use XP's smart menu keep my most often used programs within easy reach. At the moment it's : Notepad Remote Desktop Query Analyzer VS.NET Homesite FileZilla When HomeSite or VB6 get too high in the list (like now), it's a good sign that I'm not doing enough interesting work :)
Thu 06 Nov | uncronopio | Desktop IE Context (text editor) Explorer Genstat (statistical software) Splus (statistical software) VS.net 2003 Groupwise (email, calendar, etc == sucks) Musicmatch
Thu 06 Nov | Dave Hallett | Rather a lot. I have it as a second line under my taskbar. Here goes: Shortcut to Desktop, Shortcut to Control Panel, URL to Google, Mozilla, IE6, Editor2, MailWasher, Outlook, Access, Word, Iphile, StartupCpl, SQL Service Manager, Regedit, Fax Service Management, a CD player, .NET documentation, C#Builder, SharpDevelop, SpGen, ConText, RegCleaner, and currently three pop-up menus (should be about 6/7, really must get round to setting the others up) courtesy of the wonderful little app Short Popup. No, I don't like the Start Menu much! How did you guess?
Thu 06 Nov | Tom Vu | what's quicklaunch? Is it the right mouse button?
Thu 06 Nov | Dave Hallett | Uh, "Mozilla" in the above list is actually Firebird, if anyone really cares...
Thu 06 Nov | Nick Lassonde | Finder, Safari, Mail, iChat, Xcode, iTunes, Dreamweaver MX, System Preferences Aren't there any Mac OS X users out there?
Thu 06 Nov | Jack of All | Show Desktop Outlook Express Opera 7 IE 6 Mozilla Firebird Explorer Trillian Pinned to my start menu are: CuteFTP Paintshop Pro 6 QVCS Ultraedit32 Autoruns FastDefrag
Thu 06 Nov | Nat Ersoz | . gnome-terminal . mozilla . xmms . ethereal . RPN calculator
Thu 06 Nov | Philo | where'd you get the RPN calculator? Philo
Thu 06 Nov | Prakash S | outlook notepad excel xml spy visual studio i-tunes sharpreader putty
Thu 06 Nov | ko | too much... 43 different icons. i keep the taskbar on the left hand side of the screen and my quicklaunch is the top third of that. Summary: editors (editplus, pfe) custom build apps for business (5 different ones) oracle apps (dba studio, top sessions, procedure builder, sqlplus), business objects apps x3 some excel docs for passwords and/or bank details sql server apps (enterprise manager, query analyzer) word docs on business processes telnet clients (to five different machines) x server for windows development tools (vb, vss, vmware) some basic tools (word, outlook, excel etc) terminal services icons (three different machines) finance app helpdesk app and there are a couple of things i go to the start menu for most days, incl awasu (rss reader)
Thu 06 Nov | Nat Ersoz | http://galculator.sourceforge.net/ Ya gotta have gnome libraries to use it. Long ago I wrote a windows RPN calc - but was never happy with its usability. In fact I've been unhappy with all computer based calculators, but ya gotta have it... I might go check out the new HP49's one of these days.
Thu 06 Nov | Groucho | FWIW, Calc98 also does RPN. I'm not a big fan of the UI, though. http://www.calculator.org/
Thu 06 Nov | JG | Show Desktop Windows Explorer I put all my frequently used apps in the Start menu, above (not in) the 'Programs' menu item. I nixed the 'Documents' menu item (TweakUI?), and use the large icons so each menu item is a good-sized target, easy to pick. Not that you asked.
Fri 07 Nov | H. Lally Singh | Safari, Mail, iChat, BBEdit, Terminal, iTunes, Default Folder X, LaunchBar, and six folders with applications in them.  These are on my Dock, pinned to the bottom-right.  I've got three drawers on the bottom-left of my screen with another dozen apps.
Fri 07 Nov | Andrew Lighten | There are 43 applications on my QuickLaunch toolbar. Nope, I'm not going to list them all.
Fri 07 Nov | Sum Dum Gai | At home: Nothing. :)
Fri 07 Nov | Phoenix | Outlook, MSVC, SourceSafe, Scite, Treepad, FlashFXP, Nero, Remote Desktop connection to our headless build box, Araxis Merge, an in-house tool for editing graphics, a shortcut to my download folder, Foobar2000, Photoshop.
Fri 07 Nov | MugsGame | Nothing. I prefer to have the screen space. I do move common progams to the outer Start Menu (great when others are trying to use my PC!).
The Guerrilla Guide to Interviewing | Thu 06 Nov | Klodd the Insensitive
http://www.joelonsoftware.com/articles/fog0000000073.html Dont you think Joels The Challenge technique is forever spoiled for candidates who happen to be regular readers of joelonsoftware.com? Me, Id quietly lay an extra layer of stubborness upon myself if he happened to start passionately defending weird opinions during the interview. Ah, and by the way I am one of the Chosen Few who GETS POINTERS!!! Bow before me.
Thu 06 Nov | anon | Who cares if they've read JOS? I've interviewed people who wouldn't disagree with me, even if I stuck a gun to their head and told them the sky was pink. If a candidate has read the guide and has learned something, then mission accomplished.
Thu 06 Nov | Practical geezer | I would not disagree with you either, if you held a gun to my head...
Thu 06 Nov | Mr. Russel, contractor turned software inventor | #6 is a trick question. I have put a lot of effort & thinking into designing houses that appeal to the mass market in the midwest. I've thought and discussed with colleagues things like recommended amount of lighting per square foot, triangle design, color schemes, cubic feet of storage, ... Let me tell you son, the business of business is to make money, and I know how to design a house that will do that. If you wouldn't hire me because I started out with a square on the whiteboard, then you're just playing semantic games and I've got no use for you.
Thu 06 Nov | J. D. Trollinger | 'I would not disagree with you either, if you held a gun to my head... ' Heh, heh -- funniest comment I've read here all week.
Thu 06 Nov | Air Marshal Carlin | I've designed a few houses myself and if you're the same type of developer as you were a wood butcher... good riddance.
Thu 06 Nov | anon | [I would not disagree with you either, if you held a gun to my head... ] Doh! I knew that didn't come out right... But I might have hit upon a way to reach a quick consensus in our meetings.
Thu 06 Nov | Philo | I'd hold some personal reservations about the actual gun part, tho - does that count? Philo
Thu 06 Nov | Philo | Like most simplistic rules, I take issue with this: 'Which brings us to #7, The Challenge. This is fun. Throughout the interview, you look for the candidate to say something that is absolutely, positively, unarguably correct. Then you say, 'wait a minute, wait a minute,' and spend about 2 minutes playing devil's advocate. Argue with them when you are sure they are right. Weak candidates will give in. No Hire. ' Really? What if you accidentally, in playing devil's advocate, give them an aspect they hadn't thought about, invalidating their position? For example, it's 1994 and they mention how all libraries should be COM .dll's, since it eliminates versioning issues. You take the contrary position, and something you say makes them realize that if someone else accidentally releases an earlier core dll with a later version number, you could wreak havoc on the IT world. So the candidate realizes that COM is a house of cards and maybe we should find another solution, like digital signing of code libraries... You're going to 'No Hire' the guy who discovered dll hell before MS and accidentally invented the .Net Strong Naming convention? [I'm fairly certain that Joel puts more thought into it than a simple 'oops, you changed your mind, you're out of here', but I'm taking issue with the absoluteness with which he states the rule] Philo
Thu 06 Nov | Stephen Jones | Dear Contractor, I wouldn't hire you if you started with a square because the plot of land I've got needs a rectangle. I've just spent countless hours designing my own house and sending the building plans off. What makes you think the house is in the midwest? Or that you are going to make any money trying to sell your mass market design to Joel's mate, the investment banker. The question is designed to weed out people who jump to conclusions, which is what you just did.
Thu 06 Nov | Mr. Russel, contractor turned software inventor | Don't be a dumbass Stephen, you're talking about a custom house on an odd lot and I'm talking about developing the mainstay of a product line.
Thu 06 Nov | no name | If you asked me to design a house, I would automatically assume you were talking about designing my own house. Why? Because that's what I'm doing NOW!!! I guess I'd lose, but this is all I've been able to think about for the last several months. :)
Thu 06 Nov | Mr. Russel, contractor turned software inventor | You wouldn't have been able to hire me anyway; I only worked with land developers in the mid market range. See, you're doing just what I did: Jumping to conclusions. The question was 'design a house', not 'design a house for Stephen'. But, you are right, I wouldn't build without a spec, and I am just being a little onery today.
Thu 06 Nov | Stephen Jones | Well as far as Mr. Russell is concerned you'd lose because he would presume that you must design a house for an undefined product line in an area he hasn't told you about for a client you don't know; and if you can't read his mind you're a dumbass. The point of course Mr. Russell is that you don't know what kind of house the person who asked you to design one wants, so you are wasting time if you go ahead without asking for more details. And where I'm building you wouldn't make much money with square houses as a product line because most houses are rectangular. Blank, I sympathize with you :) I know the feeling. But if you are so pre-occupied with your house do you think you would be a good hire :)
Thu 06 Nov | Devil's Advocate | One shouldn't design a house by initially drawing a square because the customer always knows exactly what he or she wants, and the use of visual aids to elucidate feedback is just plain silly.
Thu 06 Nov | Rob Van Hoose | I live in a square house. Never make sweeping generalizations about anything.
Thu 06 Nov | Air Marshal Carlin | I prefer those extra dimensions...  easier to put away the groceries.
Thu 06 Nov | Janome | The point is, we all operate under certain assumptions. Joel is operating under the assumption that the programmer wasn't involved in the house construction industry. Open your minds, and flip it around a little bit. Imagine if you asked a Doctor how he would design a clinic. He probably has done this in his mind a million times, and has a pretty good idea what it should look like. He's lived & breathed this world for years. He knows what he wants. Trick. I meant a clinic to treat sick reptiles located in Guatemala.
Thu 06 Nov | flamebait sr. | I hate playing games with recruits. My general preference for checking out personality and assertiveness is to either ask them a really really hard problem that they 'should' know but generally don't or see how they react to being told that they are wrong. The first is great. My best ones have been the really hard questions that can be scaled back to something that somebody will know. Watching to see if they give up, grab for a lifeline, get an attitude problem and start talking back to you (that one's a definate classic horror story for me), or what is quite instructive about how they handle the hard stuff. The second one is great, too. Especially if somebody seems a little egocentric, if they are egomaniacal to the point where they can't handle being wrong, I don't want to work with them. None of these require outright lying to the recruit, which in my mind is a little unf