last updated:22 Mar 2004 13:17 UK time
Joel On Software Discussion Forum
JOS Statistics - Recent Comments
(Comments added for week ending Sun 14 Mar 2004) | View Other Weeks
Validating HTML... in bulk | Sat 13 Mar | Joel Goodwin
So I just converted my entire site from broken HTML into XHTML 1.0 Strict. On my test pages everything was fine. However, once the site was automatically regenerated by integrating the original web site content into the new templates, all sorts of evil invalid HTML started creeping in. Ive looked around the web for HTML validation tools, and there are plenty of ways to validate one page. But Id like to do a clean sweep of my site, so I can mop up any invalid stragglers that are still around. I cant find any way of bulk validating a site. The only solution Im looking at right now is writing a program that will use the Tidy DLL to run through a local copy of my website. Question is, is there any service or tool out there I might have missed?
Sat 13 Mar | Sum Dum Gai | You didn't say what operating system (I'm assuming windows from the .dll reference), but under Linux you can use this: http://www.htmlhelp.com/tools/validator/ It has a command line version that you should be able to script pretty easy. I don't know if it can be compiled and made to run under windows. Perhaps through cygwin?
Sat 13 Mar | KayJay | http://arealvalidator.com/features.html http://www.htmlvalidator.com/htmlval/whycseisbetter.html http://www.flfsoft.com/html/html_validators.html http://www.alliedtesting.com/Services/Link_checkers.htm and more at http://www.google.co.in/search?hl=en&ie=UTF-8&oe=UTF-8&q=website+html+validation+windows&btnG=Google+Search&meta=
I just got this message from Quicktime... | Sat 13 Mar | Almost Anonymous
...and I just had to share: No installation was necessary. The required software appears to be already installed. [Ok]
Sat 13 Mar | Ignorant youth | Good thing it didn't have a [Cancel] button too.
Could this installer be any worse? | Fri 12 Mar | .
Im currently installing VS.Net 2003 from the MSDN DVD, and I happen to be installing on a laptop with a rather loud DVD drive. This fact has made me aware that this must be the worst installation in the history of mankind. Okay, thats a bit of hyperbole, but its not that far off the mark. The fact that its a nasty installer is evident by the fact that it often takes several hours to complete -- this on systems where a bulk read of an entire DVD would take less than 5 minutes (and the entire install is a small subset of that anyways), and the writing of the same to the harddrive would take even less. There are two apparent faults with this installer (one of which carries over to the uinstaller as well): -Is it _really_ necessary to write every blood file name on the screen, even when the file is trivially tiny? Could you perhaps just subset down to sections: Installing sample code. Uninstall takes a notoriously long time as well, I suspect largely because some self important moron decided that it looked really cool to synchronously draw every one of the tens or hundreds of thousands of filenames on the screen. -Is it really necessary to deal with every single file individually from the CD/DVD? Because of this lame ass, unbelievably amateur coding, I can hear my DVD continually reseeking for every one of these thousands of files. Would it not have been possible to read a large block into the massively copious amounts of memory sitting around in memory, and then pull the files out of there? This is absolutely absurd. This is a multi-hour install that shouldnt take more than 12-15 minutes, tops. How embarrassing this should be for the team involved, but I suspect that they probably think its really great.
Sat 13 Mar | Matthew Lock | I must be the only person who can't even remember installing VS.NET. I hear you that it takes a long time, but 1 year later I can't even remember how long it took.
Sat 13 Mar | Kyralessa | I've done it recently enough that I recall it taking a good hour at least. But that was from CDs, and that was installing absolutely everything, including stuff I'd realistically never touch (e.g. J#). Makes me think of Access VBA routines I've written where doing (for instance) a counter Debug.Print on every line of a 5000-item loop, it goes absurdly slow, whereas doing that only every 500th line or so makes the routine way faster. Perhaps the install really is that slow because of all those filenames on the screen. But after all, you'd think it would be multithreaded...
Sat 13 Mar | Chris Ormerod | (Excuse my ignorance of threading concepts...) But, even if it were multithreaded wouldn't the 'DrawStupidFileNamesOnTheScreen' thread still have to interrupt the 'ImportantInstallTheProgram' thread? And my understanding of threads is that it would probably be slower if it were threaded because when it switches threads there is the context switching penalty. They would be much better off doing what the previous poster suggested to just list categories 'Installing Samples...', 'Installing Help...' etc.
Sat 13 Mar | Sum Dum Gai | You need a new video card if the redraw of file names is what's causing it to slow down. I'd say just drawing the filenames to the screen one after another would probably take closer to a second than an hour. The reason it's slow is really because there are lots of little files. Copying 10000 files of 1K each takes way, way, way longer than copying 1 file of 10000K, due to the way filesystems and drives work. Secondly, it does a hell of a lot of registering of crap at the end. Lots of registry updating and stuff, which always is going to slow you down. I believe Microsoft are trying to improve this. For example, it's rumoured the next version of Windows will come with a runable image on the CD, which will be copied straight across, and then configure itself on first boot. This saves them having to build up the complete registry from scratch, I assume. Perhaps they're working on something similar for the Visual Studio install (perhaps unpacking and registering files on first use, I don't know), because they have said they're working on reducing the install time. However, it's a big, complex, seemingly somewhat monolythic peice of software, so how much improvement they can make remains to be seen.
CMM Level 5 - does it mean anything anymore? | Fri 12 Mar | T. Norman
http://www.cio.com/archive/030104/cmm.html
Fri 12 Mar | flamebait sr. | Well... By rights, it never did. It's really a flawed system, from the most basic levels. It assumes that there's one proper way to engineer quality software that works. And, heck, that doesn't even work for the fully-engineering fields of engineering. There's the military-and-big-contractor way to build aircraft, with documentation and everything. Then there's the Skunk Works in their heyday, who would put out equally good (if not better) designs with a much more lightweight process that resulted in better stuff faster. There's Scaled Composites now, same deal. The problem is, it's Cargo Cult process. By doing this and that and shaking the talisman at the right points, quality software is produced. It's just as easy to fake CMM5 for a few weeks while the inspector's there as it is to fake happieness when you've got an unwanted house guest. I'm predicting that 10 years down the road, CMM Level 5 produce the same sort of snickers that Ada, Fourth Generation Languages, PL/1, and others produce today.
Fri 12 Mar | veal | 10 years down the road?  How about *already*?
Fri 12 Mar | Elephant | When I look at a company, I try to make sure that the letters CMM aren't in their methodolgy vocabulary.  If I hear CMM, I run the other way (snickering).
Fri 12 Mar | T. Norman | I worked for a company that had a single division -- a location with about 300 developers - assessed at Level 3. (Like the article said, most places only have a division assessed but speak of their rating as if it applied to the whole company). I went through rounds of CMM training and read the 300+ page handbook. We had an SQA team that audited all projects for process compliance before software was released. From my experience, in my opinion I have to say that in large organizations the CMM is quite useful -- if actually followed. For example, Level 2 includes (but isn't limited to) Requirements Management and Software Configuration Management. Most decent software organizations would have a good handle on those. Level 3 includes Peer Reviews (code reviews for programs, document reviews for designs and requirements documents) and having a training program. Again, sensible practices that are hard to disagree with. But like the third normal form, I don't think it is useful to go beyond CMM level 3. However, the SEI is so slack with the people who do the assessment and the people doing the assessment are so slack when they do it. The SEI is also very slack with allowing companies to make unqualified declarations of their CMM level (there is no accessible list of every company that was assessed and the result, scope or date of their assessment) and there is no need to be reassessed. All that slackness means that it is unlikely that anybody at level 3 or higher is actually following the CMM at that level. Getting your own company assessed might be useful for gauging where your own company stands internally, like having my brother time me with a stopwatch is useful for a personal judgement of how fast I can run a mile. But you wouldn't put money on my ability to run a mile unless you timed me yourself or you read of my performances in strictly officiated races.
Fri 12 Mar | jm | Here's a story of a software disaster involving an Indian offshorer: http://www.nwc.com/shared/article/printFullArticle.jhtml?articleID=15201900 And, no, CMM-5 doesn't mean much unless you've got business toads running your business.
Fri 12 Mar | veal | One of the unspoken truths about CMM and ISO type efforts is that the organizations that tend to pursue such things tend to be truly, deeply, astonishingly screwed up at the start. So it's not all that surprising when they make some modest gains, which they and their CMM or ISO brothers-in-arms will declare to be sensational. When you're face-in-the-mud, you only have one direction available: up. If you haven't enjoyed the pleasure, tee-ball is a sport featuring very tiny baseball players, absurdly young ones to be specific, who hit a stationary -- rather than tossed -- baseball off a post called the tee. Now a really awful tee-ball team might take some modest benefit in batting advice from a pimply 15-year-old skateboarder not talented enough for his high school's baseball team. Yet from this we can make no positive predictions about whether same fourteenibopper might improve the batting of Sammy Sosa or Barry Bonds. I'll suppose I could end here and merely leave as an exercise delivery of the moral of that metaphor back to software. But I won't. I'll toss in yet another aspect I like to describe with metaphor. Driving a racecar requires insight, stamina, sharp reflexes, and courage. Bumper cars at the amusement park are more forgiving of horrid ability, primarily because they travel so much slower, and to some extent owing to their abusable construction. Likewise CMM style process efforts tend to slow things down to the speed of the participant's sluggish wit, thereby reducing the velocity of mistakes. But to try to put David Coulthard in a bumper car at Monaco would be a travesty.
Fri 12 Mar | perturbed | 'It assumes that there's one proper way to engineer quality software that works.' I'm not certain that this is really correct. CMM is about building processes, not software. The goal is to build processes in such a way that they can be systematically improved over time. When applied intelligently and correctly, there are some good learnings to be had. I think a lot of the trouble comes from incorrect/incomplete understanding of what CMM tries to do (on my part as well no doubt) and when the advice it offers applies to a given situation. In and of itself, I don't think it's a bad thing. What's bad is all the hype, misunderstanding, and so on that surrounds it. Some of these issues have been addressed in the newer CMMi work, but as long as it holds buzzword status, it's going to be difficult to separate the wheat from the chaff.
Fri 12 Mar | indeed | I tend to agree with Peopleware that "process improvement" initiatives carry with them a sort of Heisenberg effect.  That is, companies that drive to improve their CMM level, tend towards taking on projects that help them maintain it.  It's just basic politics: if CMM is so important to a company, then noone wants to take on risky projects that might endanger it.
Sat 13 Mar | Dennis Atkins | CMM 5 isn't about any particular methodology or process. It's about having a meta-meta-process. You don't just have a process. And you don't just stop at having a process that codifies and measures the process. You have a process that measures the process that is measuring the process. By the way, I have CMM level 9 certification so I know what I am talking about. I defy anyone to prove that I am not level 9 certified. Oh, you say there is no level 9? Well it is so advanced that it is kept secret. Anyway, is Microsoft CMM certified? Is Joel? Is Borland? Is a single development shop that produces well known quality innovative software certified? No? Well then what does that suggest to you about having a meta meta process? Now every single two bit backwater joint in India is CMM 5 certified. And retards like the CIO of that insurance firm mentioned in the article won't accept anything but the finest firms that are fully CMM 5 certified. What an absolute wanker. If he wants results, he should hire someone who is level 9 certified. We are the only people who know anything at all.
Framework and "big code" obsessions - a data point | Fri 12 Mar | Bored Bystander
The blog entry Does Good Code Matter? is relevant to me personally. I just ended a business relationship with a client, an ISV, that among other things has an obsession with grand designs and frameworks. Not for web sites, but for simple, stupid-assed, accounting related data entry applications. This is mainly the owners doing. The owner is a CPA and self educated code hack who would probably design a framework for Hello, World and cant imagine just writing a program. The guy has developed immense libraries for a new (and a will never be done pipe dream) that seem to serve no purpose other than duplicating the built in features of the development language. Enormous, multi-hundred line procedures with many input and output parameters; unknowable variable lifetimes and initialization and termination conditions; and, layers and layers of ad hoc class abstraction. Basically the stuff is like a science fair exhibit of the syntax capabilties of Delphi. Really, really evil code that deserves FORMAT C:. One often banal truism in our industry is that the stupid and really bad programmers create the biggest and most complicated code. Having a high energy level and being dedicated to using that energy for coding is not often a good thing. The thing I found with this guy, though, is that he was mesmerized by his own creation. He absolutely could see no direct or simple ways to do *anything*. And he could not be persuaded that every part of his code was anything but absolutely necessary. I believe, from observing this person and from seeing others get wrapped up in the same kind of activity, that the problem of big, bloated code is often (not always) due to professional ego and narcissism, with perhaps a martyr complex thrown in. IE: the designer simply makes an ongoing decision that his ideas are always correct and can never be simplified or abstracted - he stands alone in his demigodlike wisdom. The martyr complex comes into play in that the work of dealing with unnecessary complexity becomes so difficult, unrewarding and thankless that he and his people come to believe that coding must be pure pain and sacrifice.
Fri 12 Mar | Sum Dum Gai | I don't know about the stupidest creating the biggtest and most complicated code, but I do know that the stupid can sometimes produce massive volumes of code. The reason is they never seem to think anything through at all when they write code. Reading their code is like reading a stream of conciousness. They just start typing straight away, and keep on typing code until it works, and never bother to go back to tidy up after themselves. So the worst part is that they look very productive to people who don't know any better (look how much code X wrote!), and tend to get promoted instead of fired. :(
Fri 12 Mar | x | I once worked at a company where a programmer rode this sort of nonsense all the way to VP Engineering. After which, the company imploded - because nobody could actually get anything to work... I was long gone by then; the company _was_ a solid company with a great product, right until this guy decided to build his career using a hideous 'framework' that was all about 'elegance' and had nothing to do whatsoever with the company's product or its business.
Fri 12 Mar | indeed | Ah, this is a favorite topic of mine. Personally, I've studied design patterns and OOP for the better part of six years, and I've ceased to be fascinated with the architectural mentality. Good programmers see their craft as a surgical exercise, and the purpose of architecture is to compartmentalize and componentize what works, that it may endure for posterity. That means: short, iterative design-and-code cycles. Where 'short' is defined as 'as short as possible.' Small projects will have much shorter cycle times than enterprise-scale applications. Only in short cycles do the really useful, _working_, requirements-meeting bits of code that _should_ be saved exist to begin with. Otherwise the architecture is nothing but pure conjecture about what may happen. And only in such cycles is the design updated enough to capture the learned knowledge about real customer requirements in its framework. Otherwise, Bored, I think you're just describing architectural astronautism at its finest. It's a fallacy: that if the architecture accounts for everything, then the architect is a master of everything. Nowhere in that fallacy is time or cost taken into account. And it's antithetical to real work on customer requirements, because typically that work _disproves_ the purity of the design. It's impossible for an egotistical astronaut to move forward because reality hurts. Good programmers and architects take reality into account early and often.
Fri 12 Mar | Joel Goodwin | Plus: I'm sure building a grand-encompassing framework to serve a Greater Good (tm) can earn more career points than someone just trying to get today's job done. Frameworks can easily do more harm than good, cost more than save.
Fri 12 Mar | Bored Bystander | >> Otherwise the architecture is nothing but pure conjecture about what may happen. I think this is what has pretty much driven me out of software development. Almost all the work I've done for someone else in the last 15 years seems utterly senseless. It has no impact, it helps no-one, it just pays me while some misguided twerp flushes his money down the drain. So, guys, what do you think of a company owner who creates a mess like this? Generally, in discussions like this, the emphasis is on the employee who is justifying their actions. In the case I described, it's a company owner who himself is preaching 'customer benefits' on one hand while creating something that no mortal can comprehend and which never gets 'done'...
Fri 12 Mar | indeed | 'So, guys, what do you think of a company owner who creates a mess like this? Generally, in discussions like this, the emphasis is on the employee who is justifying their actions. In the case I described, it's a company owner who himself is preaching 'customer benefits' on one hand while creating something that no mortal can comprehend and which never gets 'done'... ' Well, I suppose the cliche answer here is 'market forces will take him down.' If only. :) I don't want to hijack the thread, but I should clarify your experience with something I've learned from working for a small company: We always romanticize small companies as being the bastions of individual, rugged enterpreneurship. And sometimes they are. But they're also often unchecked, feudalist cultures where one ego controls the direction of his own little world. That's because small company owners often have no obligations but to feed themselves and their family; they don't have to satiate outside investors, and there's noone that can give them a good ass-kicking (except perhaps the occasional customer, but that usually gets passed down to the employees). This architectural astronautism is a symptom of a bigger problem, which is just plain, old unchecked power. I suppose it's not the worst way for him to vent his ego, but I imagine it's not a nice or productive working environment, either. Programmers who 'own' projects really experience the same thing. They're given a lot of power to create castles in the sky, and it takes a very long time for that power to be checked by any outside authority. By that time, they've surely achieved their short-term objective of being paid well for mental masturbation.
Sat 13 Mar | son of parnas | > Frameworks can easily do more harm than good, >cost more than save. Is there anything you can't say that about? Is there anything you can't say the reverse as well? Poor execution is poor execution. There's nothing in creating frameworks that requires poor results.
Sat 13 Mar | Joel Goodwin | Yes, sure enough my statement on 'cause more harm, increase costs' is so ultimately general it can be applied to teapots too. My intended point was that the belief that having a framework will solve all the developmental ills is akin to believing that the waterfall approach to project management is sound. The waterfall approach *can* work yes, but it has a tendancy to cause a lot of harm particuarly in larger projects. That doesn't stop armies of managers dictating the waterfall method, because it's 'safe'. I feel the same about grand frameworks which are often initiated at the drop of a hat, because they're a 'good thing to do, will save developer time in the future', without realising this is like the Mother of All Waterfall Projects. Getting it right takes a lot of time; getting it wrong will cost even more time.
Sat 13 Mar | Sum Dum Gai | Frameworks are well meaning really. People have the idea that it will simplify things. An admirable goal. Another goal is that they'll allow reuse - you can just take the framework and write multiple projects on top of it. Once again, an admirable goal. The only problem is that neither of these are usually achieved by frameworks: they're more likely to be achieved by libraries. Of course, the issue is what starts out as a library can easily become a framework. Libraries are, in my mind, a great thing. They're probably the only thing we know are reusable. A great big object framework is questionable, but a simple library function that takes X and produces Y is much simpler and easy to use without commiting your program too much in one direction. The other win for libraries is that they're easy to plug into later. Want to use LDAP at some point in the future? Using an LDAP library is easy. Using a framework built around LDAP after the fact is almost certainly impossible: you have to modify your whole archetecture to suit it. The problem is, one you write a library, the framework seems to become the great temptation. In a moment of programming hubris, the programmer sees how good their library is, and thinks of how much better the world would be if everything in the project was based on it. Our job as developers in such a situation is to 'just say no'! Don't give into the temptation of over generalising. :) Personally, I love writing libraries. It's what I'm best at, since I find it easier to write good UIs from programmers (eg APIs) than UIs for users. I get a real kick out of knowing I'm making everyone else more productive because I've abstracted the details away into a library that they can treat as a black box. I've given up trying to write frameworks though. I've tried to make good frameworks, really I have. I'm convinced that good framework is almost an oxymoron. There have been a few I've seen (Delphi's VCL for example), but for every gem, there's at least 100 duds. It's just too difficult to strike the right balance between being generic enough to handle enough cases to be useful, and specific enough to not make it more effort than just writing to the underlying APIs directly. Once you consider the flexibility costs you incur by commiting to a particular framework, it just doesn't seem worth it to me. So I'll stick to writing libraries. If I could only find a job where I specialised as a library and tools programmer, I might even find some joy in my job. ;)
Accessibility Question | Fri 12 Mar | Prakash S
One of my students is visually impaired, and has a hard time following the things I do in class. The class scenario is something like this: I do some stuff which is displayed on the projector and the students do the same on their computers. For this student, I changed the desktop settings to High Contrast (Large) (I tinkered with various appearances – this was the best according to her), but her problem is that she cannot see the mouse pointer/ cursor, whatever the appearance. Any suggestions?
Fri 12 Mar | Philo | Google on 'Section 508' - that's the US Federal Requirements for enabling software for people with disabilities. Something regarding a 'how to' or 'tips' should surface. Philo
Fri 12 Mar | Sam Livingston-Gray | Could she see an animated cursor, or possibly a laser pointer?
Fri 12 Mar | Prakash S | Philo - thanks. Will google it. Sam - thanks for the reply.. Animated Curosrs - have not tried - good idea. The laser pointer would help only to an extent - since she will need to see the mouse pointer on her screen as well.
Fri 12 Mar | Christopher Wells | On Win2K for example, 'Control Panel/Mouse/Pointers' and set Scheme to 'Magnified (system scheme)', or to one of various other enlarged schemes. http://www.microsoft.com/enable has other information (not specifically about cursors).
Sat 13 Mar | Robert Jacobson | Could you hook up a second monitor just for her?  Something she could sit right in front off?
What is a software developer? | Fri 12 Mar | Stevo
Seriously! This is a sincere question. Four years ago, my boss came up with specifications for an application he would like. For the past four years, I have been turning his specifications into a reality. As the only *programmer* of this application, Ive done all the design from high-level down to writing each line of code. Getting ready for our big release, my boss has helped out by doing all the testing, writing user documentation, and providing me feedback of how to improve the application (ie. more specifications). Recently I wrote an internal memo which indicated me as the developer of this application. My boss took issue with this saying that he is also a software developer since he has worked so hard on the project this last year. He said that rather than the developer I should indicate that I am a developer of this application. I never meant to make my boss feel bad. He has contributed greatly to the success of this project. His specifications have been very good, and Im glad he has done so much testing and documenting. But, on the other hand, Im concerned about having too loose of definition of software developer. Yes, my bosss specifications have greatly shaped how I design the software, but has he crossed the line into actually developing software? Ill admit it: I take a certain amount of pride in being called a software developer.
Fri 12 Mar | Chris | Tell him he's a Software Designer.
Fri 12 Mar | DJ | " turning his specifications into a reality" - that definitely is a software developer's job. Kudo's to you. The problem is you didn't give him enough credit and an an important sounding title. He is more of a Project Manager, or Chief Business Analyst and Director of QA. :-)
Fri 12 Mar | Chris | Actually... what you really should do is, not care and let him sall himself whatever he pleases.  It's not an issue worth thinking twice about.
Fri 12 Mar | The real Entrepreneur | The higher you promote HIS title, the higher YOURS gets promoted. Make him Lead Software Architect, or whatever. Glory. Reward. Enjoyable job. Pick any two.
Fri 12 Mar | bodhi | Manage Up It's the only way to fly ;)
Fri 12 Mar | x | Sounds like he was the Tester and maybe the Documenter. He was not the Developer, anymore than you're an accountant just because you take your receipts to the accountant.
Fri 12 Mar | Bored Bystander | Stevo, your boss is ignorant. In software development, a developer *is* the person who develops the software by doing hands-on coding. A developer *may* also do design, analysis, or perform other related roles, but developers write the actual code. Anyone who put no hands on effort into programming is not 'the developer'. But... he is your boss and it sounds like he's pining for ego massage and for credit and recognition. The Real Entrepeneur had an excellent suggestion. However, I would start lower, say by suggesting that he was the Analyst and Designer. Which much more correctly denotes his role.
Fri 12 Mar | Aussie Chick | I agree, it is a sad world where you have to get involved in office politics of calling the boss something he isn't just to make him happy enough to give you the credit you deserve. Software Architect? Software Designer? thank him for doing the documentation, give him a line in the credits for doing some beta testing, but aside from that isn't he just the end-user, the client?
Fri 12 Mar | Ignorant youth | Chief Software Architect! Isn't it obvious? :)
Fri 12 Mar | veal | I see two sides to this. It all really depends on your relationship. If you trust him well, and believe he would go out of his way to help your career, then it might be wise to help him advance his own in the ways he wishes. At least in large organizations, helping a trusted boss climb the ladder usually garners reward for you too. If you're ambivalent or don't feel so trusting of him, then maybe not. Regardless of how you finally choose to cope with his desire for titular pomp, I'd be wary, and ensure he isn't taking too much credit when you are not around to keep him honest -- weighing what I said above against this cost to yourself. Assuming you don't want him to take an unfair share of credit, take every opportunity to talk to other people about your roles and his, couching the discussion as praise for your boss and his visionary conceptualizing. Publicly praise his contribution, but make sure to precisely communicate who did what whenever discussing this project. So long as you also manage the possible misconceptions about your own role, I'd tend to follow the tack of Demosthenes who, when Alexander demanded the Greeks recognize his apotheosis as a Son of Zeus, joked that so far as he cared, 'Alexander could be the son of Zeus -- and of Poseidon as well!' For the record, 'software developer' seems a popular term by which the people who *build* the software are called. I've always found 'developer' too wishy-washy myself, potentially including nonprogrammers, so I prefer the clarity of 'programmer' which indicates that one can perform every facet of software creation. I may imagine and request a glorious souffle, naming a superb and precise list of ingredients I'd adore eating, but if I cannot *cook* I was certainly not the chef.
Fri 12 Mar | x | Having recently told my architect what sort of house I want, and then commented on various designs, I insisted he credit me as the architect.
Fri 12 Mar | Stevo | Thanks for the feedback, everybody. Many of you had great sarcastic analogies which really drove the point home. ie. I'm going to make a list of things I want in my next car, so now I guess I'm a new car designer. :^) I decided to pour out my thanks to my boss for the part he played in helping me to develop the software. He was helpful, so he deserved atleast that. Perhaps he can loosen his grip around who gets credit by just giving him what's due him. I told him that by saying I'm 'the developer' that I in no way meant to minimize the contribution of others like him. But rather I just acknowledged that my definition of 'software developer' is more narrow than his. There's no reason to argue over semantics. I'm just going to avoid saying I'm 'the developer' so as to avoid the friction with him, but also, to be true to myself, I'm never going to call him 'a developer' when he only offered a list of suggestions (specs), and never did any actual design.
Fri 12 Mar | Bored Bystander | Stevo, your proposed approach is reasonable. Instead of appeasing him you stay mute on attaching a term to your role that offends him. It's also frikking pathetic that someone in an authority position has to be so petty and ignorant at the same time. But typical.
Sat 13 Mar | Aussie Chick | >I've always found 'developer' too wishy-washy myself, potentially including nonprogrammers, so I prefer the clarity of 'programmer' which indicates that one can perform every facet of software creation That is the complete opposite to the way I look at it, ditto for your use of the chef/cook analogy. You seem to place the cook/programmer in more able positions, yet I see them as less able. (though that is really neither here nor there). >It's also frikking pathetic that someone in an authority position has to be so petty and ignorant at the same time. But typical. I agree with BB, the original post has, of course, opted for the sensible 'give the boss what he wants' approach, and the title probably doesn't mean anything, but it can still knock of a touch of it all when you achieve something great and someone else things they have more claim then they do.
Sat 13 Mar | Sum Dum Gai | Realistically, titles vary from one organisation to another anyway. You might be called a project manager in one place, and a team leader in the next. In other places, team leader might be used to designate the lead programmer. Or the chief designer. Or whatever. There's no standardised job titles. Which is probably why resumes are filtered by spelling mistakes and other trivia - you can't just look at them and decide what a person was actually doing by the role they list! So really, I'd not worry what other people want to call themselves, or what they want to call you. It's all pretty wishy washy anyway.
Sat 13 Mar | FullNameRequired | 'my boss has helped out by doing all the testing, writing user documentation, and providing me feedback of how to improve the application (ie. more specifications).' thats a _huge_ contribution, for any reasonable sized project. (and if its taken you 4 years to develop Id say it must be a reasonable size) why didn't you give your boss any credit in the first instance? seems to me that you have been implementing _his_ ideas, risking _his_ reputation as much as your own and moving _his_ project forward. If that was his contribution then Ill be willing to bet that he has had as large an impact on the final product as yourself. I have a client for whom I/my company does a reasonable amount of work, maybe 10-15% of what we do now is to develop his projects and it used to be even higher. He markets himself as a 'software developer', making sales and in some cases gaining venture capital thereby. He has ideas, arranges the testing, contracts developers to do whats required (us :), drives the project forward when it needs it, makes the 'tie-breaker' decisions on the design when its required (selecting from the possibilities we give him of course), has good ideas about where to go next, arranges everything from graphics to websites (for some clients we arrange such things ourselves, in this case he does it). I have _never_ doubted his right to call himself a software developer...he couldn't write code to save his life (and is even smart enough to know this), but there is no doubt in my mind that he is the single most important force behind his applications. _dont_ be stingy about giving credit where its due, and _dont_ fret over the definition of what a 'software developer' is, its just a label. Ive always disliked people who battle over giving out credit, for any reasonable, mature adult there is _always_ enough credit to go around, and for everyone else there is _never_ enough. From your original post Im picking you as the person with the ego problem, not necessarily your boss....or, to put it more clearly, maybe your boss has an ego problem and maybe he does not, but _you_ certainly do. shame on you :)
RentAcoder | Fri 12 Mar | ChickenLittle
I followed a link at embedded.com http://www.embedded.com/showArticle.jhtml?articleID=18311972 to the RentACoder site. It would seem that this service makes outsourcing viable to any business (regardless of size) that requires software. Doesnt this shrink the market even further for US software develoers?
Fri 12 Mar | K | Are you kidding?  If that's the direction that this outsourcing blitz is going in, it's fantastic!  Did you read the example problems put up for bidding?  Who wants to do that kind of thing?
Fri 12 Mar | The EE/CS Guy | Hi Chicken and K, Yeah, I totally agree with K's point. There has been a major buzz about the whole outsourcing issue in the recent past (including articles stating that bangalore, the so called 'silicon valley of India' has overtaken the silicon valley). But I think, outsourcing can never take away the real value of the American computer/ sofwtare/ IT industry and its professionals. When I say 'real value', I mean the 'spirit of innovation'. The kind of software professionals that most of the outsourcing countries provide are people specialized in particular programming languages (as an example) and not in engineering. They are NOT people who can see 'the bigger picture' to things. It is this difference that will always keep the US economy (eg. the silicon valley) ahead of the outsourcing competition. http://blogs.chip-india.com/readmore.php?entryid=135&blogid=1 http://in.rediff.com/money/2004/mar/03guest1.htm
Fri 12 Mar | Kyralessa | I imagine in a place like Romania or India you could make a good living off that site. Teaching English part-time in Romania I made $100+ there; that could be one or two coding projects. Do one a week and you'd be living relatively well. (But I wonder how you ensure that they pay you once you deliver...) (Hmmmm...I wonder if this is what Alex.ro does for a living...)
Fri 12 Mar | Bored Bystander | Rentacoder seems to be a collection point for ridiculously elaborate RFPs that have tiny budgets. What I find amusing are the 'terms' posted by the clients that are so adversarial that they border on the comical. Presumably the work posted to Rentacoder is all B2B, and any business owner *expects* to pay appropriately for something that is valuable to their business. On one hand, yeah, it's important to save money. But it seems 'retarded' to try to buy a clone of Ebay.com for a couple of hundred dollars if you're basing your entire business on it. Somehow, it just doesn't seem like a purchase that would pass any standard of due diligence in a real life business. What I wonder is just how many of the posted projects on Rentacoder are sincere, if someone is even willing to pay for the work... the vibe I always get is that 95% of the 'clients' there are fracking liars.
Fri 12 Mar | Mike | ' Need a strong ASP programmer to fix an error in our Mail Sending form script so it actually works. Max bid $20. I have an html file that passes data to a php script--that data is written to a mysql db and is supposed to be passed to a perl script. It's not writing to the db and the data is not passing into the perl script--should be a quick fix. ' Max bid: $5 ' In all fairness these are commodity skills. You want premium prices for your work, learn non-commodity skills. Can you find any C++ jobs out there for $5? How about assembly coding for $10? If you actually pay someone $5 for coding something for you you don't even deserve a batch file.
Fri 12 Mar | no name | Rent-a-coder is a nexus for bottom feeders.
Fri 12 Mar | C | RentAcoder is another business model for software development. Someone saw an open niche and decided to take advantage of it. Can't fault 'em for that. They hook up people who want cheap fixes with people who will do cheap fixes and take a cut. Brilliant actually. A lot of this sort of thing is probably a payback for multi-million dollar projects that never saw the light of day. How many of us worked on projects and made decent money and the project simply died? If I were paying the bills, this would concern me. I would look into ways of making the process more affordable and able to work better. Offshoring, rentacoders are in some strange way a product of our failures. If we could have efficiently created software that worked from the beginning, there probably would have been no reason for the bottom feeders. I don't like it anymore than the next developer. But it's happening, we need to learn to deal with it.
Fri 12 Mar | _ | It's the programmers version of Google Answers http://answers.google.com .
Fri 12 Mar | Phil Larson | RentACoder is not all bad. What if you're a college student taking an overload of units so you don't have time for a "steady" job? You can still make some cash on RentACoder and get some experience doing different things.  Where else are you going to find such a wide variety of projects that need to be done so you can get your feet wet.
Fri 12 Mar | Aussie Chick | Phil, I thought the same thing when I first ran across rentacode some time ago. I signed up and owuld look at the projects that came in, but the max bid prices were ridiculise. For a time there the other bidders details were being displayed and they were so cheap. Hald of them would go and complete the project before placing a bid in an effort to undercut someone else. This is all okay if you have time for this, and maybe $20US translates well in other economies. During univeristy I placed a few bids on that site, only sometimes knowing full well it would go to someone who was willing to work for peanuts.
Sat 13 Mar | Phil Larson | Are there any other avenues for a college student with strange hours?
Software for spec'ing ...software ? | Fri 12 Mar | The real Entrepreneur
Hi, Everytime I sit down to spec out some software I run into the problem that there doesnt seem to be a good way do the following: Draw a picture of what youd like the screen to look like if it were magic (to borrow from Alan Cooper) - So having the ability to draw simple widgets easily (checkbox, list box, etc.) Create annotations that can be clicked on. Ability for someone else to modify the above, so that we can collaborate. Ideally, ability to launch to a new page when you click on something. I know this seems dreadfully simple, but I cant find anything that works well for this. I could use MS Words VB forms to do the drawing, and even make a vb form that executes with buttons for more info... click here. But thats a LOT of complexity which interferes with my flow. I want something simple. Maybe an HTML editor is the easiest way to go. BTW, Ive seen text specs and I just cant program from a text only spec, nor can I specify that way. I think very visually.
Fri 12 Mar | GiorgioG | Visio can draw UIs...
Fri 12 Mar | Mr. Fancypants | I was going to develop something like this but I couldn't find a good tool to help me spec it out.
Fri 12 Mar | Aaron F Stanton | What if you had a form editor that created defauly code for any clickable object that automatically pops up - "code to be added here"?
Fri 12 Mar | Philip Dickerson | You could try this tool, although it is intended more for web site UI design than for desktop application UI. The concepts are nice, but I found the tool awkward to use (it may be better with a pen or Tablet PC for input, rather than a mouse), and the tool's navigation and menu style is unusual. 'DENIM is a system that helps web site designers in the early stages of design. DENIM supports sketching input, allows design at different refinement levels, and unifies the levels through zooming.' http://guir.berkeley.edu/projects/denim/ It hasn't been updated for a year, so the authors may have given up on this.
Fri 12 Mar | _ | SmartDraw http://www.smartdraw.com
Fri 12 Mar | Philip Dickerson | This article from the 'IBM developerWorks > Web architecture' series discusses using paper prototyping for the purpose of designing user interfaces and screens: http://www-106.ibm.com/developerworks/usability/library/us-paper/ Especially, see the sidebar 'Why not just use Visual Basic, HTML, etc.?' for some reasons to prefer paper prototypes over prototypes developed using PowerPoint, Excel, HTML, software, etc: '2. Avoid nit-picky feedback. A polished-looking design can actually encourage the wrong kind of feedback. If you're trying to make sure you've got the right content and functionality, you may not want to hear comments like, 'Hey, those fields don't line up,' or 'I don't like that shade of green.' Paper prototypes avoid that kind of feedback because it's obvious to users that you haven't specified the look yet. This encourages users to focus on the concepts and functionality.' '3. Encourage creativity. Our brains respond more creatively to things that look somewhat unfinished. And users -- especially non-technical ones -- are often less intimidated by paper prototypes than by computers, so they'll feel more comfortable exploring your design.' '[...] While it may seem counterintuitive to test an interface without using a computer, paper prototyping lets you get maximum feedback for minimum effort. After a few usability tests with a paper prototype, you'll have confidence that you're implementing the right thing.' '[...] Paper prototyping is especially useful for gathering data about the following kinds of problems: * Concepts and terminology. Do the target users understand the terms you've chosen? Are there key concepts they gloss over or misconstrue? (I've seen these types of usability issues in virtually every interface I've ever tested.) * Navigation/workflow. If there's a process or sequence of steps, does it match what users expect? Do they have to keep flipping back and forth between screens? Does the interface ask for inputs that users don't have, or don't want to enter? * Content. Does the interface provide the right information for users to make decisions? Does it have extra information that they don't need, or that annoys them? * Page layout. Although your scribbled screens may not be pretty, you'll still get a sense of whether users can find the information they need. Do you have the fields in the order that users expect? Is the amount of information overwhelming, not enough, or about right? * Functionality. You may discover missing functionality that users need, or functionality you'd planned but users don't care about.'
Fri 12 Mar | Jeremy | Phillip makes some good points. Still... the practical benefits of drawing on a computer can't be ignored. Is it possible to make a series of widets in Visio that look like they're hand drawn? For example, llines aren't perfectly staight, corners don't meet exactly, and so on. The advantage of using Visio is that it provides images of real widgets. When the design firms up, you could simply replace the hand drawn widget with the real-looking widgets.
Fri 12 Mar | The real Entrepreneur | Good article. I've read that before. Paper protyping is great if you're doing this all one-on-one with a non-techie. But I'm trying to spec out one program for myself and another one for another programmer. In that case a lot of the benefits of paper prototyping are lost. But when youre doing it via the internet, you end up doing a LOT of scan-print-comment-scan-email. I wonder if a lot of the demand for pen computing is managers who can't type and a lackof software to let you easily sketch something out :-) I have Smart Draw and that's not bad, but my copy doesn't have any build in widgets for controls (buttons, etc.). It seems that my venerable vb 6 IDE might be the best way to do this.
Fri 12 Mar | David Roper | Try the GUI palette in Omnigraffle Pro, but you'll have to buy a mac...
Fri 12 Mar | x | Paper prototyping is pushed as something marvelous by people who can't write software. If you have the ability, use the best tool.
Fri 12 Mar | _ | The real Entrepreneur , SmartDraw has a GUI widget symbols as part of the Pro edition, or you can buy them as an add-on package. http://www.smartdraw.com/resources/collections/software/index.htm Anyone considering Visio should take a serious look at SmartDraw too.
Fri 12 Mar | pdq | Use VB or VBA and don't put any code behind the UI. Take screenshots and write up what the UI is supposed to do.
Fri 12 Mar | Aussie Chick | Perhaps there is an opportunity to write some sort of VB add-in. Something that allows you to add notes etc on the actually form, that disappear at compile time?
Fri 12 Mar | mb | haven't tried it, but you may be able to do that in C# (and maybe other similar languages). all the stuff 'drawn' on the form is code. stick it in an #ifdef and it'll go away. mind you, the IDE would need to understand this.
Fri 12 Mar | The real Entrepreneur | Hmmm.. Aussie Chick- good idea. Maybe there's an even easier way to do this: 1. Create an array of RTF text boxes (I'll call them RTFboxes). So you'll have RTFbox (1)...(2)...etc. 2. Create a routine that cycles through all of the rtfBoxes and loads 'em from a file at run time and saves them when the program exits. Each box's contents get saved to : formname-controlname-index#.rtf 3. You could set each rtfbox to be 'minimized' when you actually run the program, until you click on it, then it expands. Benefits here are that the developer and the user both get to easily make comments. User doesn't need any special viewer. Developer can make comments while in design time, although. You just make the rtf box invisible when you ship, or just remove it from the form.
Sat 13 Mar | KayJay | With VB you could also have the app. actually write out a .FRM file to a text file, in all its entirety, and use the app. as a sort of shell script to execute, compile, open for design,  etc., using "VB6.EXE" and its myriad arguments.
Sat 13 Mar | KayJay | Also take a look at http://www.mztools.com/ for some neat extensions to VB. The source is not available, but some really good stuff.
Collaboration Software for Remote Development | Fri 12 Mar | Thinking Hard.
I have a couple of developers abroad that I would like to collaborate with (code walk-throughs, application demos, etc). Id like some sort of conferencing/application sharing/whiteboard solution that doesnt cost thousands of $$$. Voice and video would not be necessary. Obviously there is Netmeeting, but am I overlooking some other possible solutions? Are there any open source solutions that would fit the bill? Thanks in advance.
Fri 12 Mar | Christopher Wells | Windows XP has some kind of remote control built-in, but I don't know what exactly. My peers try to invoke it using MSN IM, but that doesn't work with me because I'm running Win2K.
Fri 12 Mar | The real Entrepreneur | By 'Netmeeting' I assume that you mean MSN Messenger 6.1 ? Haven't looked at NM in years, but I *think* the features (white board, app sharing, video conferencing, etc.) have been folded into MSN Msgr. It works pretty well over two computers with DSL/Cable internet connections. I just did it the other day with audio conferencing and app sharing. Worked great. I've been saying for years that what we need isn't VIDEO conferencing (for collaboration) it's a shared whiteboard and app sharing. If I'm protoyping something to someone that I know reasonably well, It's more important for them to see the APP, not my face.
Fri 12 Mar | Thinking Hard. | Is the latest version of MSN Messenger available for all versions of Windows, or just XP?
Fri 12 Mar | Philip Dickerson | NetMeeting is still available, and can be downloaded from: http://www.microsoft.com/windows/netmeeting/ 'NetMeeting delivers a complete Internet conferencing solution for all Windows users with multi-point data conferencing, text chat, whiteboard, and file transfer, as well as point-to-point audio and video.'
Fri 12 Mar | The real Entrepreneur | New version doesn't have whiteboarding. That astounds me. Seems like a very valuable and relatively easy feature. 'Previous versions of NetMeeting included Whiteboard functionality. We regret that we are no longer able to offer Whiteboard in this version of NetMeeting. ' From: http://www.microsoft.com/windows/NetMeeting/Features/default.ASP
Fri 12 Mar | Dennis Forbes | You most certainly already have it, though for whatever markertroid reason it's being hidden. Start/Run/conf.exe Microsoft has some sort of other new collaboration software that they're promoting. It's the commercial where a bunch of people meet on the top of a mountain I believe. Never really paid attention to it so I'm not sure which one it is.
Fri 12 Mar | Farid | Groove?
Fri 12 Mar | Christopher Wells | > Is the latest version of MSN Messenger available for all versions of Windows, or just XP? I'm using Messenger 6.1 on Win2K, but its built-in collaboration is disabled; to collaborate I would need to use stand-alone NetMeeting. XP provides additional functionality, for example I think that XP Home has something builtin that allows peers to tech-support each other.
Fri 12 Mar | C | webex - has a pay as you go plan.
Fri 12 Mar | Mike Swieton | Have you considered just using a version of VNC?
Fri 12 Mar | Philo | Microsoft's current online meeting solution is LiveMeeting: http://www.microsoft.com/office/livemeeting/prodinfo/default.mspx 30-minute free trial on a hosted server. What have you got to lose? :-) [caveat: I am a Microsoft employee] Philo
Sat 13 Mar | christopher baus (www.baus.net) | 30 minutes.
How Should a novice start learning C++. | Fri 12 Mar | N Aeron
Hi, I am a young software professional who wants to learn C++. I have tried reading several books. Then I came to this site and read the discussion and I was impressed by the depth of knowledge and commitment. I dont want the name of the books. What I wanted to know is that what thought process should i nurture to learn the subtelities of C++. Waiting for Response, Regards, Aeron
Fri 12 Mar | T-90 | Some advice: - Always try out things that you learn. Not only things that you read, but also the possible permutations/combinations around that. E.g. if you read about constructors, try using them in various scenarios like with parameters, using inheritance, making virtual and any other random idea that comes to your mind. - After doing that, reason out the behaviour in each case. I.e. if some program produced some output, why did it produce that output. Is it a documented feature, an undocumented feature, a bug; basically what was the concept behind that output. This is important because you might forget the exact code and output, but you should remember the concept that produced the output. HTH
Fri 12 Mar | Just me (Sir to you) | I always found this book http://www.research.att.com/~bs/dne.html helpfull in understanding the 'why' questions on some of the oddities in C++.
Fri 12 Mar | _ | 'Accelerated C++' and 'Essential C++' are IMHO perfect. Wish I had learned it with those... http://www.amazon.com/exec/obidos/tg/detail/-/0201485184/103-9123437-3304642?v=glance http://www.acceleratedcpp.com/
Fri 12 Mar | David Jones | I don't know your background or how much OO experience you have, but if you are totally green, then: Learn Java (or C#) first. The benefits of OO and good OO design are best illustrated by a rich, well-designed class library. Java and C# have these. C++ doesn't.
Fri 12 Mar | Mr Jack | Whatever you do, don't learn C first. C will only teach you bad habits, and bad ways of working. (Note: writing the C way in C is fine if that's your bag; writing C++ likes it's C is not).
Fri 12 Mar | Mike | I've heard good things about this book http://www.wiley.com/WileyCDA/WileyTitle/productCd-0470863986.html
Fri 12 Mar | Clay Dowling | The most important thing is to get your hands dirty with some code. I recommend against things that are tied to a certain compiler, such as the Borland or Visual C++ specific books. These are great tools, but learn the language, not the tool. I also strongly advise you to understand the Standard Template Library and how to use it. Once you're up to it, I also recommend learning everything about templates that you can. It's all the rage at the moment, and there's definitely a lot of power available through templates. My own lack of understanding is holding me back from some jobs I'd like to have.
Fri 12 Mar | Paulo Caetano | Since (almost) everyone else is mentioning books :) - C++ Primer, by Stanley B. Lippman & Josée LaJoie - Thinking in C++, by Bruce Eckel (www.bruceeckel.com)
Fri 12 Mar | Clutch Cargo | You don't learn the subtelities of C++ first, you learn the basics first. The only way to learn a language is to use it, so pick a small project and write it in C++.
Fri 12 Mar | Christopher Wells | > I don't want the name of the books. What I wanted to know is that what thought process should i nurture to learn the subtelities of C++. C++ has several kinds of 'subtlety': * Subtelties which you can't begin to understand, because you're unable to read them, because you don't understand the syntax: for example, 'templates', 'overloaded operators', etc. * Subtleties which if not understood cause your program to behave unexpectedy and incorrectly: for example, 'copy constructors', 'virtual destructors', etc. * Subtleties which if understood cause your program to behave correctly with less coding effort: for example, 'smart pointers', 'encapsulation', etc. * SUbtleties which are related to the C++ libraries that you're using: for example 'why std:auto_ptr<> isn't appropriate for using as elements in a collection', 'how do I use VC++/MFC 'Wizards'', 'what's a good library to use to implement multi-threading', etc. * Subtleties which aren't necessarily specific to C++ but are more related to object-oriented programming in general: for example, 'design patterns', 'analysis', etc. > what thought process should i nurture If I had to pick a single thought process, it would be 'how does this feature of (or use of, or example of) C++ help me to write (or design, or maintain) a (or this) C++ program 'well'?'
Fri 12 Mar | i like i | The C++ Annotations is an excellent online book: http://www.icce.rug.nl/documents/cplusplus/
Fri 12 Mar | Danil | 'What I wanted to know is that what thought process should i nurture to learn the subtelities of C++.' Like most of the others here, I'd encourage you to avoid the subtle areas in your initial studies, and learn the well understood bits. But you didn't ask that.... Learning C++ by doing is, I think, a dangerous approach. I reach this conclusion from years of experience dealing with code written by those who learned in precisely that way. The common denominator in most of this code is that it seems to do what was intended most of the time. http://www.accu.org/bookreviews/public/reviews/0hr/beginner_s_c__.htm http://www.accu.org/bookreviews/public/reviews/0hr/advanced_c__.htm At the other end of these two links are lists of books 'Highly Recommended' by the ACCU. I encourage you to stay in these lists until you have compelling reason to do otherwise. Also, start reading news://comp.lang.c++.moderated on a regular basis - I encourage staying in the moderated group to get the best signal. My own approach, which seems to have been effective, was to start by reading Scott Meyers. That is, I learned the common mistakes and how to avoid them FIRST, then later learned the basics. So I got a lot out of 'Windows Hothouse', because I kept looking at the code samples and seeing mistakes that I recognized from Meyers. For the real subtleties of the language, crank the warning level of your compiler to the max. You might even consider investing in Lint. Each time a new warning appears, go research it. Most important principle to keep in mind: code will often work, without being correct.
Fri 12 Mar | Christopher Wells | > My own approach, which seems to have been effective, was to start by reading Scott Meyers. Meyers' (mistakes to avoid) were the second books that I read; but the first was 'Thinking in C++', because I needed to learn C++ syntax (how to read C++) before I could read Meyers.
Fri 12 Mar | Elephant | I always liked the Dietel and Dietel books because they could both be read, and served as a reasonable reference for the future.
Fri 12 Mar | Bill W. Davis | The 'Thinking in C++' books are available on-line, downloadable and in print form. http://www.mindview.net/Books/TICPP/ThinkingInCPP2e.html
Fri 12 Mar | christopher baus (www.baus.net) | Actually I don't think C is a bad place to start learning how to program. It very closely abstracts the underlying machine. Why does C get such a bad rep? Hell with a struct of function ptr's it can do 90% of what I want C++ for. C++ can create some really bad habits as well (ie super deep inheritence hierarchies). Want to write some code no one will understand try using boost::tuples and boost:any... etc. I'm going to go out a controversial limb here and say inheritence is one of the most overrated language features ever invented. It causes insanely tight coupling which is almost never good. Interfaces: great. Love 'em. Inheritence: If I have to look another class that inherits from CWnd 6+ levels up, I'm going to scream.
Fri 12 Mar | Danil | C can be both (A) a reasonable place to start learning to program (B) a very bad place to start learning C++ Notice that MrJack carefully drew this distinction.
Fri 12 Mar | Tom Vu | http://www.topcoder.com Get an account and try to solve some puzzles. Then learn design and development from the books and build something.
Sat 13 Mar | _ | > I'm going to go out a controversial limb here and say > inheritence is one of the most overrated language features > ever invented. It causes insanely tight coupling which is > almost never good. Ooooh, how cutting-edge... except everyone's been saying that for years, starting with Stroustrup...
How to collaborate on commercial sw proj? | Thu 11 Mar | The real Entrepreneur
Hi, Lets say you have a small group of programmers who want to collaborate on a program? This would be (potentially) a for-profit project. Therein lies the problem. These people dont know one another. Theyre on different continents. How do you protect eveyones rights to a fair share of the profits? One thought I had : create the parts of the program in modules which are combined only in compiled form. Each programmer would own his piece. They could negotiate share of profits after theres actual money to be made. There are technical downsides to this, but it might work. BTW, Im just interested in the process and Im participating only as an advisor. So, Im not interested in part of the profit. BUT the folks doing the programming deserve thier fair share. This seems like a good spot for Philo, our resident lawyer and programming guru, to pipe up. Philo?
Thu 11 Mar | Nigel | Sounds like an interesting experiment. Who leads? Who does the documentation? Who decides when a developer isn't up to snuff? Who makes the final design decisions? Who pays for the advertising out of pocket (if any)? Who decides who has access to the CVS/Subversion/whatever tree? Really not trolling here, genuinely interested. From my experience, open-source projects are generally started and controlled by one person, who would that be?
Thu 11 Mar | Philo | Hold on, I'm watching Elimidate. Be right back. Philo
Thu 11 Mar | MT | If you're really on different continents then no problem, everyone gets rights to sell the finished product in their respective continent and nowhere else. 
Thu 11 Mar | entell | > If you're really on different continents then no problem, > everyone gets rights to sell the finished product in their > respective continent and nowhere else. If there is one webpage per country to buy the same product, and a customer say from USA goes to a webpage being hosted from England, how will you steer that customer to the 'correct' one so that the creators' boundaries aren't crossed? IMO, without proper legal framework, a joint venture with monetary interests is a time-bomb ticking. It will blow eventually. Especially if the product is a hit and the money starts rolling in. Money changes everything and turns people against each other.
Thu 11 Mar | The real Entrepreneur | 'Hold on, I'm watching Elimidate. Be right back. - Philo' ROTFL !!! I think Philo is, understandably, hesitant to give legal advice. Isn't it ironic that anyone can give legal advice without consequences EXCEPT for the experts : lawyers.
Fri 12 Mar | The real Entrepreneur | Nigel, All good points. I was planning to decouple the selling for the coding. Now I'm thinking that the very best way for this to work is to have one programmer. Everyone else is an unpaid advisor. Who's in charge? How 'bout we make 'The Donald' the PM for this week's challenge? Seriously, though, in the above scenario, the programmer would be in charge. Now I know why I went into business with my wife :-) And why people go into business with family members: trust. It's not just a 4-letter word.
Fri 12 Mar | Kyralessa | IANAL, but I agree that a legal framework is the best way to handle this, if only because disputes are less personal and thus potentially easier to resolve.  Instead of "You're cheating me!" with everyone disputing over what the rules really were, you have "You're not following the legal framework we laid out" and it can be clearly shown whether this is correct or not.  And a legal framework doesn't get its feelings hurt.
Fri 12 Mar | The real Entrepreneur | Yep. Point of a contract/agreement is a 'meeting of the minds'. The idea is that you've reached an understanding and the contract just spells it out and makes it binding. IANAL too.
Fri 12 Mar | Aussie Chick | > If you're really on different continents then no problem, > everyone gets rights to sell the finished product in their > respective continent and nowhere else. who said that? You have got to be kidding. I mean for a start, would this mean only 1 person has rights per continent? What happens if the person is from some tiny continent (like a really big island or something *grin*) but developed a huge amount...Of what if someone gets the US/UK continents but does zip during the process...
Fri 12 Mar | entell | > who said that? You have got to be kidding. > I mean for a start, would this mean only 1 person has > rights per continent? What happens if the person is from > some tiny continent (like a really big island or something > *grin*) but developed a huge amount...Of what if > someone gets the US/UK continents but does zip during > the process... Papers are flying in the air already and there is not even the sight of the product on the horizon yet!!!... :)
Fri 12 Mar | Aussie Chick | I am guessing you are refering to the JoS collarboration idea in a thread earlier this morning. The same thoughts have crossed my mind. Really you have to envision a worst case scenario. ie programmers who program bad code, never meet deadlines, but expect alot in return. Who can accurately say how the load has been shared. The only way I think would possibly work is to stop thinking of the profits as deserved, and more as a prize. think Survivor or some other reality show. The ultimate goal may not be one person with all the rights to the program, but at the end of the 'game' the rights may be apportioned according to everybodies opinion on how helpful everyone else has been. ....Okay I am not really serious about this, just thinking outside the square a little. The point has been made, a bunch of people from different companies, with different attitudes, no defined leader, no accountability.... Wait, how about --->give the profits to a charity. That would be cool.
Fri 12 Mar | Aussie Chick | >Papers are flying in the air already and there is not even the sight of the product on the horizon yet!!!... :) FYI, I was being intentionally ranty, just because it is fun sometimes (but I think you picked up on that!!)
Fri 12 Mar | Philo | 'Isn't it ironic that anyone can give legal advice without consequences EXCEPT for the experts : lawyers.' Well, not really. If a layman gives legal advice, they're practicing law without a license, which is actionable. Of course, anyone can offer opinions about anything. Picking up a law license changes the picture. First of all, if people know you're a lawyer, then 'offering an opinion' on the law or a legal situation is presumed to be legal advice unless disclaimed and written very, very carefully (you'll note that when I comment on a legal situation I try to speak in the abstract) One final note - I'm only licensed to practice law in Virginia. If I offer legal advice to someone in New York, then I'm conducting the unauthorized practise of law (UPL), and since I have a license, I'm expected to know better. (Side note: many attorneys are unhappy with this state of affairs, due to the 'net explosion. We'd like to see UPL softened to allow us to give 'legal guidance' to people outside our jurisdiction with appropriate disclaimers) Philo
Fri 12 Mar | Philo | Now, as to the proposed venture, obviously I strongly recommend each of the participants contact a local attorney, preferably someone with international contract experience (or at least corporate contract experience). The safest way to proceed is to form a corporation. I have no idea which country would be the best to incorporate in - that's where the international experience comes in. Best of luck. Philo
Fri 12 Mar | MT | >>who said that? You have got to be kidding. No, not at all. Most software has to be purchased from local distributors who have obtained exclusive distribution rights for their locale.
Fri 12 Mar | The real Entrepreneur | No more casual collaboration. That sucks. How do you find people you enjoy working with unless you can try out lots of people? It basically means that you can't casually work with someone. You need a legal framework, which has an 'activation cost' (cost just to get started). That means the project and commitment have to be serious enough to warrant that activation cost. It's unfortunate because it means you get no chance to casually collaborate with people in order to find someone who you DO want to collaborate with. Analogy: it's like: if you couldn't date anyone; you can only MARRY someone. That means you can't 'play the field' in order to find someone good to marry.
Fri 12 Mar | no name | That's a good example of a lawyer's advice. Useless. Entrepreneur, you have a business problem, not a legal problem.
Fri 12 Mar | Simon Lucy | Happily not all jurisdictions restrict legal advice to quite such a small closed shop.  In England and Wales you can give legal advice, there are only a few reserved activities.
Fri 12 Mar | The real Entrepreneur | 'No, not at all. Most software has to be purchased from local distributors ' That's not always true (isn't for my company's international sales*), and there's no enforcement if the software is being delivered online (i.e, activation code for shareware). If I have an email bubba@hotmail.com you don't know WHERE I am. ----- * Our prices are higher than in some of the countries we sell in. So, if someone orders from US then the assumption is that they haven't seen the local country's website, so WE get the sale because it was through our efforts. If it's at all ambigous WHO attracted teh customer, then the local distributor gets the sale (that's only fair)
Fri 12 Mar | Kyralessa | 'No more casual collaboration. That sucks.' Who said that? No one's saying 'no casual collaboration'. We're just saying it's not safe to try to make money off casual collaboration. 'Analogy: it's like: if you couldn't date anyone; you can only MARRY someone. That means you can't 'play the field' in order to find someone good to marry.' A more apt analogy might be that you can date as much as you like, but you shouldn't go having kids until you've made a permanent decision. In both cases it's _possible_ to have success without commitment, but your chances of success are low.
Fri 12 Mar | The real Entrepreneur | 'Who said that? No one's saying 'no casual collaboration'. We're just saying it's not safe to try to make money off casual collaboration. ' Here's the problem I have: I'd like to participate with the design of a program, but I find that OSS projects *seem* to be one person's pet project. They're satisfiying thier needs without considering the needs of a larger audience. That makes sense in OSS. Why care about anyone else? Satisfy your own needs. Nothing wrong with that. It seems that only a commercial venture will consider something besides the needs of the programmer because it's only by meeting MANY people's needs (including mine) that money will be made. I also enjoy working on a project that I think will benefit a larger group, even if I'm not making money off of it.
Fri 12 Mar | Philo | 'Analogy: it's like: if you couldn't date anyone; you can only MARRY someone. That means you can't 'play the field' in order to find someone good to marry.' That's a very good analogy. You can date girls all you want. Date a different girl every day. Have unprotected sex on random occasions. Pick up girls in bars and have one-night stands... ...right about now your mental alarm bells are going off, right? You said 'date' and thought 'nice happy walks on the beach.' All I did is throw a dose of reality on it - that often 'date' leads to 'sex' and hurt feelings. There are also STD's and pregnancy to think about. Ditto collaboration - you're thinking 'hey, we'll just all hack on some code together and we'll drink beers and have fun.' Which is great until you accidentally discover how to cram 10Gbit/sec down a pair of copper wires with no distance restrictions and a Telco offers you $15 million for it. (or one of the team takes the code and installs it at work, where it corrupts an entire bank's data) It's all risk and reward, and every action has consequences. In general, lawyers are about risk mitigation - spend the $600 to form a corporation and in general you are protected against *both* situations above. And by the way, I'm not making anyone take my advice - you can still collaborate informally with no legal construct in place; there's no law against it. (Note on international collaborations - you might have to check on encryption and/or export laws, but that would be the work of your elected leaders, not lawyers) Philo
Fri 12 Mar | Rich | 'If a layman gives legal advice, they're practicing law without a license, which is actionable. Of course, anyone can offer opinions about anything. ' From this post, I can only conclude that the words 'legal advice' have some magical meaning that is foreign to me, since I don't see any difference between offering my opinion (i.e., advice) on a matter that is legal in nature (i.e. legal advice--or an opinion). Like, 'I think you should sue him!' There is a semantic distinction here that I don't think anyone understands but the lawyers. :) At least I don't!
Fri 12 Mar | entell | > There is a semantic distinction here that I don't think > anyone understands but the lawyers. :) At least I don't! No magic at all. 'Legal advice' means you can get the advice in writing with the advisor's signature on the paper so that if somehow you screw up, you get to point to the advisor and say 'I was told so. It's not my fault'. To do this, the advisor has to be knowledgeable so that he doesn't himself in trouble. Of course this kind of transfer of responsibility comes with a very high price tag, hence the outrageous fees for lawyers, CPAs, or anyone that takes the responsibility from you for that matter...
Fri 12 Mar | entell | Legal advice can also be thought as something that will hold up in court. For that you need names, signatures, proof, etc... Once again, let me add that I am no lawyer, so take what I just said on an 'AS-IS' basis and dicuss it further with your lawyer! ;)
Fri 12 Mar | . | Legal advice hold up in court? You're killing me. It means nothing much at all. Good luck if you think you can sue a law firm for poor advice. Legal advice is just marketing. Lawyers have created this great idea that their utterances are more valuable than those of others. You don't see any open source lawyers, that's for sure.
Sat 13 Mar | entell | > Legal advice hold up in court? You're killing me. It means > nothing much at all. Then what good is it? Why bother talking to a lawyer at all if what you get may be wrong and may lead you down the wrong path? > Good luck if you think you can sue a > law firm for poor advice. Sometimes bad lawyers give bad advice, and they get sued. Nothing wrong with suing lawyers. I've seen it happen many times. Suing people or firms has to do with how much money you have to get a better lawyer to defeat the other side (find loopholes etc) and how much time you have to waste on the whole thing.
Lower Wages Is The Solution | Thu 11 Mar | anon
The solution to stopping off-shoring is for programmers to accept lower wages. This may seem obvious but nonetheless no programmer that I know believes they are worth less. I remember during the dot com boom when an HTML Programmer from California was making $120,000 a year and he rather haughtily said, I will not accept less. I wonder what that - then recent high school graduate - is making now, if in fact he is employed as a programmer of sorts. On the news today, I saw Haitian people eating clay from a river bed because they did not have anything else to eat. Even the clay patty cost them 2.5 cents which some did not have so they went hungry. This is not meant to invoke apathy for anyone or anything, but it does help put a perspective on how good we have it. If you used to make $80,000 a year and now can only find a programming position for $40,000 a year... then why not take it. Im sure raises would follow. I have personally never been able to obtain a full time job that pays more than about $27k per year (w/ benefits). When I send out a resume, I always think that I shouldnt undersell myself, but it seems that I am overselling myself by asking for $14/hr. in my area of the country. Now it seems that I have to accept full time programming positions at $10-$12 per hour or perhaps $11 - $13/hr w/ benefits . This seems to be more normal where I live. I think the reality of things sinks into management faster that it does into us programmers. Im not saying set your sights low, but I am saying be reasonable when negotiating your salary.
Thu 11 Mar | The real Entrepreneur | 'I saw Haitian people eating clay from a river bed because they did not have anything else to eat. Even the clay patty cost them 2.5 cents' Why did they have to pay for clay from the river bed? Did somebody truck the clay from the river to someplace where people couldn't get edible clay? BTW, one other solution is : create value commensurate with your salary. If you want to make $80k a year, generate that much revenue (plus the overhead the company incurs hiring you). If you create that value uniquely, then you don't have to worry about offshoring. One option is to start your own business. It's a lot easier than programming, but requires a lot more flexibility. And, of course, you have to actually deliver value, not just convince someone with a big budge that they need video conferencing ATM machines.
Thu 11 Mar | Good idea | I bet if we all accept 50 cents a day off shoring will stop.
Thu 11 Mar | Lou | Accepting less pay for the same job won't solve the problem presented by off-shoring. It may save your job, but the problem remains. There are talented people in the world accepting less money for the same job. You can either accept less money or become better at your job. I know which one I prefer.
Thu 11 Mar | David Freeman | Two comments 1) 'acceptable salary' is totally dependent on where you are in the world. I work currently in Hong Kong at a salary 6 times higher than my 'base' in New Zealand. However both rates are fairly good in their home territory. 2) When people, sorry but mainly Americans, bitch about outsourcing do they ever stop to think that every time one of the 5.75 BILLION other people in the world buy an American product they are doing themselves out of a job. One recent poster wrote of doing work for a company in South American. I didn't see any complaints from South Americans about this. Why is that? David
Thu 11 Mar |   | $10-$12 per hour or perhaps $11 - $13/hr w/ benefits is a wage given to university students and sometimes to people with little or no experience. Granted, many programmers probably are over paid, however, can't the same thing be said about most white collar jobs? Don't you think the management class in our society is overpaid?
Thu 11 Mar | no name | The reason is that the US has long had a massive trade deficit, i.e. we buy much more from y'all than we sell ye.  Of course, if outsourcing keeps up, at a certain point we won't be able to keep importing like we have.  Hmm, maybe we better start lining up now for them WPA jobs.
Thu 11 Mar | . | Bwahaha. Priceless. Is this a manager that's pissed that the locals aren't lining up to work for $13 an hour? Here's a clue -- there are a lot of software developers/architects (yes, mostly senior, experienced people) who are demanding, _and_getting_, six figure salaries as we speak: The fact that you're whoring for $11 an hour says more about you than about anyone else (as a sidenote-many offshoring firms charge from $20-35/hr for their work, and that's not even including the additional expense of collaborating with an outsourced company). It really makes me laugh that you mentioned that 'managers get it' given that most executive levels pay well more than 6 figures for a commodity that is basically commonplace (your average MBA grad with good networking skills). I love when bitter, spiteful people point back at the .COM boom, always mentioning the 'only high school' kid as their sample, caustically dreaming that they're now filling the unemployment lines. The funny thing is that there's a lot of those .COM people who knew how to optimize the situation who are now running their own company (often nothing to do with IT), or sitting on a beach somewhere. This dream that they all made the big bucks and then lost is all is every envious wankers one wish, but it wasn't always the case. I didn't capitalize on the .COM boom, but I've kicked myself many times that I didn't.
Fri 12 Mar | sid6581 | Your wage isn't even a living wage where I live. There's no way I would even consider programming as an occupation for that little money. There are far easier ways to earn more money than that, occupations that are less stressful and that will leave me with enough energy when I get home to do programming as a hobby or as a side business. If you really are making that little as a programmer you must live in the middle of nowhere, or have no skills. Sorry, but I can't think of another explanation. No decent programmer should have to accept such a low salary. Even part time jobs working for the university when I was a student paid as much as what you're making.
Fri 12 Mar | Kyralessa | Anon, I think you could benefit from what Joel said on the Ask Joel board about pricing: 'Pricing sends messages. Expensive products...'seem' like higher-quality products than cheap ones...even if they aren't. People believe that 'you get what you pay for.' A new high price may INCREASE your unit sales if the old price sent a message of 'Cheap!'' You are pricing yourself too low, and I bet it's as common a mistake for beginning programmers as pricing your product too low is for beginning companies. You have to research salaries, set a limit ('I will not work for less than X/hour'), and stick to it, even if it means passing up some jobs and seeing your savings seep away for a while. If you don't, you're sending the message that you're a rotten programmer. I made the same mistake back when I lived in Romania; $100 a month is quoted as the average salary, so for English lessons with a native speaker (me) I charged just over $1 per hour, which I thought reasonable. In fact it was way too low; a friend of mine joked that I'd spoiled the market. In return for my affordable prices I trekked to students' homes to give lessons only to have them not show up and not have the courtesy to tell me beforehand. That taught me something. In future offers of lessons I raised my prices and fared much better; I had more respectful students who didn't cancel all the time. To me it seems unfair in a country with such a low average salary to charge so much; but I had to come to terms with the fact that I was offering a premium service, and not everyone can afford it. Whether I liked it or not, the going rate for a native English speaker was $4-5/hour. If I charged less, all I was doing was indicating that for some reason I was a subpar native English speaker and deserved to be considered such.
Fri 12 Mar | Julian | Lower wages is the consequence, not the solution. Because of outsourcing, programming will be a less lucrative career for Americans. Despite that fact, I'll remain in the field, since with my strengths and experience I'll earn more as a programmer than in any other career that comes to mind.
Fri 12 Mar | Eli Bendersky | This may look outrageous to some of you, but I don't understand why 12$ a hour is considered a low wage. That's about $2200 a month. I realize one won't become rich from it, but isn't it enough for a good standard of living ? Naturally this refers for 'beginners' wage, but why should someone expect $50/hour right out of college ? One should promote his/her way up the ladder by proving some worth, so $12/hour doesn't seem too low for a beginning...
Fri 12 Mar | Fernanda Stickpot | If you think it's natural and right for people to be eating clay, then yes, we should feel lucky and grateful to be earning $12 an hour. Encouraging workers to cut back or accept lower wages is a great way to cause suffering, too. When populations cut back so far that the next step is eating clay - ooh, say, like in Haiti - it's great because that leaves more money for landowners, especially since you can distract workers into arguing amongst themselves that even the clay is too luxurious and it's possible to survive for several days on water alone, provided one doesn't get too greedy. Yes, the solution to poverty is more poverty, accompanied by a PR campaign telling you you never had it so good!!!
Fri 12 Mar | Stephen Jones | $12 an hour is a low wage. Firstly it's not $2,200 a month. That would presume that you worked all twelve months of the year. It comes out at $480 a week. Multiply that by 46 to allow for six weeks vacation (including Christmas, Easter Thanksgiving and so on) and you get $22,080 a year, which is $1840 a month. Now if that money is gross then there are a load of expenses to take off, including medical cover. And then there is the quesiton of accomodation. In New York you wouldn't get any change out of your salary if you wanted your shoe-box furnished, but no programmer works for that kind of money in NYC. However it would be reasonable to consider an outlay of $700 - $800 a month for a one bedroomed apartment in a mid-tier city in the States. If the guy is talking about a contractor's rate, tnen it's even worse. And remember that graduates in the States have a fair amount of college loans to pay off (though many default). Since student grants all but disappeared in the UK starting salaries for graduates are in the £22,000 - £25,000 range (that's $38,000 - $45,000 range but the dollar is artificially low and the pound artificially high at present). The original poster is either pitching himself way too low, or as I suspect in the wrong area.
Fri 12 Mar | Stephen Jones | People eating clay and paying for the privilege seems like someithing made up by unscrupulous journalists. ----'When populations cut back so far that the next step is eating clay - ooh, say, like in Haiti - it's great because that leaves more money for landowners'---- I doubt it. The main dream of landowners in a Third World country is to own a pizza outlet in LA or Dale County. Being a big fish in a small pond loses a lot of its allure when there is a drought and the water is polluted with toxic waste.
Fri 12 Mar | Fernanda Stickpot | Okay then, it leaves more money for whoever stands to gain from workers' not asking for too much.
Fri 12 Mar | donna | You people are pathetic and make me ashamed to be loosely associated with you through the programming profession. Why are you people so clueless about business? Did you never run a lemonade stand or mow lawns as a kid? Why is it so hard for you to understand value? Jeez, the 7-11 pays $10/hr.
Fri 12 Mar | no name | 1. Why should programmers be forced to accept $12 per hour when managers with no technical skill get $500,000 plus bonuses? 2. Even if you accepted a low wage, offshoring would still go ahead. It's driven by the Indian firms. They would just start saying American programmers are no good, and keep paying money to the politicians.
Fri 12 Mar | Aaron F Stanton | People in this state (Indiana) tend to value physical labor over mental labor, as is evidenced by the substantially higher average wages gotten by people in blue collar jobs. This reliance on manufacturing in particular has really managed to get the entire state into a rather sad situation. The grade- and high- schools are for the most part really sad here, and the halfway decent colleges are not very innovative. Tech companies have no incentive to locate here because the state of education is so lame, and those with a decent education leave because there are no tech companies. Because the companies that are here don't really 'get' the value of tech, they don't pay well at all. Basically, it's way past time for me to move out of this state. If it wasn't for having a very solid social support system (i.e. friends and family) I would have a long time ago. Lower wages are not the solution. Being able to add value is, but it's also necessary that those hiring are actually capable of understanding the value you can add. If they don't know what to do with you, you actually aren't being allowed to add the value that you are capable of adding, and indeed, to that particular company you aren't worth very much.
Fri 12 Mar | no name | 'People in this state (Indiana) tend to value physical labor over mental labor, as is evidenced by the substantially higher average wages gotten by people in blue collar jobs. ' The high wages are probably because of the unions.
Fri 12 Mar | Kid Vicious | Wouldn't allowing workers to telecommute save companies money?
Fri 12 Mar | Aaron F Stanton | 'The high wages are probably because of the unions.' Yup. I was going to mention that, but it got lost in my rant somewhere. Unions were useful at one time in improving working conditions, and they have a couple minor uses here and there, but overall I despise them. Collective bargaining...feh. Why do you need a frickin' union for that? What a union does is eliminate an individual's ability to bargain, and if that individual is above par then they should be able to negotiate better pay, conditions, whatever. Why would a sub-par worker deserve to be paid as much as even an average one? Can't people understand even the most basic economic principles? Artificially raising wages above their value will cause inflation. Lower wages for tech people is not the solution, because if they are actually doing what they should be, more valuable products are being created, and they should be paid well for that. Sorry...my Libertarian is showing. (take a deep breath, Aaron...)
Fri 12 Mar | no name | The thing is ... You are now dealing with individuals that in many cases are above par. Indian companies staffed with degreed engineers and operating at CMM level 5 willing to write that ERP app for 1/10 of the cost. The days of 'I'm a superstar and can negotiate better on my own' are frankly quite dead.
Fri 12 Mar | Aaron F Stanton | Then there's no point at all in writing software in this country.  Period.
Fri 12 Mar | . | 'You are now dealing with individuals that in many cases are above par. Indian companies staffed with degreed engineers and operating at CMM level 5 willing to write that ERP app for 1/10 of the cost. ' Yes, and that's why the operating system, ERP, database, shrinkwrap, enterprise ware, etc, markets are overrun with Indian based software company applications. Could you please name a couple? Oh right, there is pretty much none. Don't claim that this is a recent thing, either -- while it's getting press because of the duldrums in the States, India has had a vibrant software development outsourcing industry for well over a decade.
Fri 12 Mar | Dennis Atkins | Aaron, you state there is no point writing software in this country. Perhaps this is true. And if so, then the system where the talented individual negotiates one-on-one certainly doesn't seem to work, does it? Given that, would you consider supporting a union if it could restore the wage leverage of talented workers?
Fri 12 Mar | Kyralessa | If _you_ ran one of those companies, would _you_ advertise that your most recent version of software was programmed in India? Supposing Company X has had great success in cutting costs and shipping faster by outsourcing to India; why would they tout it and invite all their competitors to enjoy the same great success? You're making an argument from silence, and such arguments don't prove anything. (I'm not in favor of outsourcing; I'm just in favor of logic.)
Fri 12 Mar | . | 'If _you_ ran one of those companies, would _you_ advertise that your most recent version of software was programmed in India?' You mean like the latest, absolutely disastrous version of Quark, that has led to a fullscale migration and impending doom for the company? 'Supposing Company X has had great success in cutting costs and shipping faster by outsourcing to India; why would they tout it and invite all their competitors to enjoy the same great success?' Public organizations are just that - public. Private organizations have employees that blabber. It's rather hard to keep a secret in this industry. In any case, organizations have been outsourcing to India for YEARS. This is hardly a big secret. I will say one thing, though: I have no doubt that the big Indian outsourcing firms, the ones that are making the big bucks on the backs of the Indians, are engaging in some widespread astroturfing (of course they are -- it is big business). From hearing about the great (and _laughable_) CMM standards to the productivity and error free status of Indian programming. Whatever. As an aside -- certifications, such as CMM, are what you get when you have no other proof of your capabilities (like a history of successful products). Instead you get CMM or ISO certifications, padding the pockets of trade standard boards and consultants, and stick that in as big of letters as you can to show that you can push paper like nobody's business. It is absolutely laughable that this is held up as proof of the greatness of Indian software firms, yet I know of absolutely zero software firms here questing towards CMM. They're not trying and failing, they've just recognized it as certification-masturbation and have ignored it.
Fri 12 Mar | Aaron F Stanton | Absolutely not. As I said, artificially raising wages above true value only serves to cause inflation. Net effect being that the buying power of people whose wages have been so raised is reduced to where it should be by market pressures. Adding true value is the only way to make real money. The answer is to either get out of the business of writing software or to find a way for the American software writer to be more productive than those competing for the wages. I was watching the dot-com boom and saying to myself that nothing was being produced, so how was there anything being done to create such insane market values? There wasn't - while services are useful, they are only useful to the extent that they enable someone else to create a product of value. Very little of true value was being created, so the market had to correct itself. It's thermodynamics applied to economics.
Fri 12 Mar | Aaron F Stanton | whups - sorry bout that...the "absolutely not" is in response to supporting unions for programmers...just a clarification.
Fri 12 Mar | no name | The rumors of my death has been greatly exaggerated. Thank you, American Programmer
Fri 12 Mar | Kyralessa | Who decides what's artificial and what's real in wage adjustment? For instance, perhaps the H-1B program could be considered an artificial _lowering_ of wages.
Fri 12 Mar | Aaron F Stanton | 'Who decides what's artificial and what's real in wage adjustment?' The market as a whole. It is indeed possible that exporting IT jobs could cause deflation. Inflation isn't much good, but I believe deflation is worse. Companies get locked into a spiral of price wars and trying to increase profit margin, and when you combine the two it exerts tremendous pressure on their suppliers (both physical suppliers and services/labor) to lower their prices, and so on down the road. Also, if you have deflation, money becomes worth more in the future than it is now, so there is no reason to buy things now, lowering consumer demand for additional products. This means that companies can't emven move the stock they have, so they have to lower prices just to clear inventory to make new products. This enforces the death spiral.
Fri 12 Mar | Chris | If software developer wages drop too low the problem will be even worse, because the only people remaining as software developers will be the people too stupid to get a higher paying job. Then jobs will really fly overseas where the software dev jobs are relatively high wages attracting smart people. If wages for software development are on par with wages for being a UPS guy or other low skill jobs why on earth would a smart person want to go into that field? It's true that during the .com boom there was wage inflation among some of the companies which no longer exist, but Software Development is a professional job and it should be treated as such, both in salary and reputation. Lower wages is not the answer.
Fri 12 Mar | Jeremy | 'artificially raising wages above true value only serves to cause inflation. ' Actually, most economists would argue that raising wages above the market reduces employment. Inflation is a product of changes in demand and the real value of money. Presently, many businesses can't raise prices because their customers won't pay much more. Thus, we have had relatively low inflation lately. In fact, the tech sector has been in a deflationary period since almost the beginning, at least in hardware. The price for the same device drops as newer equipment is produced. But somehow Dell and Intel seem to make profits anyway.
Fri 12 Mar | Jeremy | 'If wages for software development are on par with wages for being a UPS guy or other low skill jobs why on earth would a smart person want to go into that field?' First off, UPS drivers make bank. The package sorters are definitely not well-off but many many UPS employees do very well. Second, the issue of the cost of doing business in the USA is about more than wages. Remember that a company has many other costs, many of which are regulatory. For example, to employ me my company has to pay half of social security and medicare taxes (7.65% of wages from the employer, an equal amount from my paycheck), state unemployment insurance, state disability insurance, tax to the city for employing someone (I thnk it's characterized as a street use fee), and more. Additionally, the company provides health care benefits, which is a non-trivial cost and has been increasing faster than inflation for at least the last 10 years. And don't forget the 35% federal tax rate on corporate profits plus any state income/business taxes. (Washington state doesn't tax profits - they tax revenues, to the tune of 1.5% whether or not the business is profitable. This is great for a high-margin company like Microsoft but is very tough on lower-margin businesses.) Wages are certainly one component of the expense and unattractiveness of doing business in the USA, but are not the only ones. We can't afford to ignore the regulatory environment that created much of the high cost structure including healthcare.
Fri 12 Mar | Dennis Atkins | 'artificially raising wages above true value only serves to cause inflation' Aaron, I thought that inflation was caused when the government orders the Federal Reserve to print more money. The money supply is inflated and higher prices result because the true value of the dollar has gone down.
Fri 12 Mar | Aaron F Stanton | 'I thought that inflation was caused when the government orders the Federal Reserve to print more money.' That's one of the factors that can cause inflation, true. However, there are two ways in which an artificially high wage causes inflation. One is that the excess availability of cash in the hands of the person being paid means that they are likely more willing to pay more for items than they would have otherwise. The second is that the company that pays them the higher wage not only can charge more for a product (because the purchasers have more money) but they indeed must charge more to maintain profit margins, since a larger portion of their expenses is going to labor. It is both a push and pull mechanism. The Fed can affect this by printing more money or raising or lowering the prime rate, to be sure, but there are many factors above and beyond this. Regarding artificially high wages and unemployment: To some extent this is true - a situation where a company is not willing to pay a high wage will result in overworked salaried employees, but when the company is forced to recognize that it has passed the point of diminishing worker productivity, they will bite the bullet and hire more people to get the job done. Their first choice is to hire people at the lowest wage possible, which in many cases can boost productivity for unskilled work, but is detrimental for skilled labor such as programming. The next step (and I've seen it happen) is the panic as deadlines are broken is to hire contractors at a much higher rate than a regular employee would have cost in the first place. Eventually, to meet deadlines in the mid-term, the company hires employees at the lowest prevailing wage for someone of those skills necessary to be trained to do the job. If these wages are high, the product or service will cost more, and this too will result in inflation as the company not only pays for the current wage, but the mistakes made by the initial unskilled people and the overpaid consultants. Most (but not all) companies do not think long term. Most are only concerned with the quarter's cash flow sheet.
Fri 12 Mar | x | Aaron, unions don't stop good people getting paid well. They do stop managers underpaying people at the bottom of the heap, or sacking them because the boss made a pass at them, or whatever. Also, you say you despise unions. Do you despise the accountants, lawyers and medical bodies? They function as unions, protecting their members' interests.
Sat 13 Mar | Aaron F Stanton | One of the things that I despise about unions is seniority. A person with seniority can easily claim a prime job over someone with better merit. It genuinely does not matter if the person with seniority can do the job better or worse than a person with even slightly less seniority, they get first dibs. There are quite a few companies where it is not possible to get a job without being in the union. It doesn't matter if you are willing to do without union benefits or protection, you are not able to become employed there. In a situation like that, individual negotiation is a literal impossibility. It does not matter if the individual could do a better job than everyone else there - again, the value of individual merit is negated. I do believe that cooperation is useful, even necessary to getting certain things done. I believe, however, that work is done by individuals - frequently individuals working together - but not by groups. A group is an artificial construct, and it frequently benefits the undeserving at the expense of the best. There are certainly cases where a person with a lot of potential is just starting out and with a little help they can repay what was given to them and go on to do fantastic things - if this were not the case there's no reason to have kids, because in the short term they require tremendous effort. However, when an individual truly cannot perform a job that pays an arbitrarily high wage, then that person should not be paid that wage. If the teamster's union, for example, suddenly and arbitrarily decided that all truck loaders should have their pay tripled and called for a strike until it occurred, what do you suppose would happen? UPS would be crippled until they either broke from the union or gave in. This would cause a great deal of shipping in the US to come to a halt, which would in turn cause serious problems in our economy. I'm not saying that it would necessarily happen, but that's a what if. Econmoically, it is not worth it for truck loaders to be paid triple their current wages, but the teamster's could force a substantial pay increase for no increase in actual work done. Would the loaders have earned it? No. Would they load more boxes per hour after the wage than they did before? No. (Intermission: I am not against pay increases that serve to negate inflation - Despite the fact that a cost of living raise is not merit based, it does not make sense to erode a person's real purchasing power simply because time has passed and inflation occurred. Also, since in the US tax brackets increase as one goes up the income scale, a pay raise can in some instances actually cause a decrease in available cash flow, and the raise given in that case should be enough to increase the net take home pay. This is one of the many things that a skilled accountant is good for. Intermission over.) A union is a formalized system of giving up individual power that could be done without such formalization. If people in a non-union shop decided to go on strike to improve working conditions or pay, there's no reason they couldn't bring the company to its knees until it listened to their demands. However, if someone felt that they personally had no issue with conditions or pay, they could just go about their business. Essentially, a union is a government outside the legally sanctioned governmental system. If people want better working conditions, then laws can be created, and if a company violates the laws they can be penalized and/or criminal charges can be pressed against those responsible. I really can't imagine what benefit a union can bring to its members that laws and individual negotiation could not. It's late, I'm tired, and I tend to ramble in conditions like these. I wind up a bit short tempered, and I apologize if I come off elitist or arrogant or something equally annoying.
The Apprentice (spoilers) | Thu 11 Mar | Philo
*Awesome* to see Versacorp trading on the relationships theyd made over the past few months. Also interesting to see Protege stop in the middle of the day to evaluate and regroup; Im not sure wed seen a team do that before. Troy communicates the business lesson of the week - passion sells. When he stepped back into himself sales took off. Nick gave a full refund for a 50% loss - thinking strategically in a tactical game. Will it pay off? Wicked spin on Troy - he figured the heat was off because he didnt have to pick anyone; Trump would do the firing. Instead Trump made him pick one person, which obviously *completely* caught him off guard. Im not sure Troy will make it to the end - hes a nice guy and it looks like he cant make the hard decisions. He only picked Kwame to go upstairs because he was his buddy, not for a concrete business reason. On the other hand, hes definitely got the charisma and self-esteem... Damn - George called Troy on hedging when he had to pick someone. And Heidis gone. To be honest, I cant say I fault Trump on this one at all. I also think (hope?) the shows going to be more of a character show from here out. Finally, brava to Heidi for walking out like a champion. A smile and a handshake, and head held high. Philo
Thu 11 Mar | Wayne | You're Fired.  (insert hand movement here)
Thu 11 Mar | The real Entrepreneur | I was very impressed with Troy's ability to reassess his strategy. That takes a lot of insight and confidence. I was amazed that Protege' sold so much advertising. All I can figure is the people buying the ads thought they'd end up on TV. I've bought advertising before, I don't think an ad on a rickshaw is worth the paper it's printed on. But... I could be wrong. Maybe we'll see ads on rickshaws from now on.
Thu 11 Mar | no name | Past performance and team behavior was probably taken into account (same thing happened last week) when Troy picked Hedi. Also, Kwame picked Hedi as the weakest link while Hedi picked Troy. Troy, the only person who doesn't have a college degree is the one I am rooting for. Imo, there are too many business people out there who graduated somewhere in the top 20% of their class, however, they haven't done squat since. While I have a degree, I believe people should be hired based on merit and not on their grade point average or which university they attended.
Thu 11 Mar | Lou | This past December in NYC I swear I saw a sign on a rickshaw that looked just like one of those prepaid cards.  Can anyone in the city verify that?
Thu 11 Mar | Name withheld out of cowardice | The whole kangaroo court aspect of things really gets on my nerves now. Trump asks Troy how it was and he is positive. Asks if he thinks he won (and how the fuck would he know?) and he is cautiously optimistic. Was it still a positive experience if he lost? You can't take the day away and he had fun. Trump- losing would ruin my day (or something like that). What a douche-bag. This game where you keep trying to figure out what the top guy claims he would say in your situation but can always turn it around on you sucks.
Thu 11 Mar | Nigel | I was surprised that Troy wasn't picked. Heidi and Kwame didn't seem to make any mistakes, and did what they were supposed to do. The team fails, so the leader goes. Was really hoping that the other team would lose though. All that whining from Erika about 'boo hoo...nobody listens to me...I'm not playing anymore'. I wanted to see her butt canned.
Thu 11 Mar | Philo | Nigel, weren't you paying attention? She *hates* it when people want to see her butt. Philo
Thu 11 Mar | Nigel | I hate the whole LOL thing Philo, but sometime's it's appropriate. Isn't this woman from the same team that offered kisses for money in the first week or so? I also seem to recall services being offered in return for low gold prices in a later episode. Can't stand fickleness; at least Omarosa was consistently bitchy.
Fri 12 Mar | The real Entrepreneur | 'This past December in NYC I swear I saw a sign on a rickshaw ' How cold was it when you were in NYC? It looked fairly warm for December in NYC. They weren't wearing coats, as I recall. Nor were the folks on the street.
Fri 12 Mar | Nick - but not The Nick | Troy dropped way down in this episode. When called on the carpet, he looked meek. He's starting to look more like the guy you'd want heading up your sales team, but not like the guy you'd pick as CEO. I've been picking Bill and Amy since early on, and this time they were the winning combo. Amy's ad idea was good on it's own, but probably wouldn't have worked without Bill's idea to pursue their previous contacts on the show. That said, I think Nick is starting to look stronger. All the little comments The Donald drops make me think he's looking for someone as arrogant and comptetitive as he his. That would be The Nick.
Fri 12 Mar | www.marktaw.com | The task itself was relatively mundane - run a business. One team got the strategic advantage by coming up with a killer plan. If they had more than a day to compete we might have seen a different story once the other team learned their strategy & emulated, or improved on it, or maybe came up with their own. However, the game is what it is, so we have to judge it on it's own merits. There are certainly times where coming up with a great idea early on can win the day. Winner of the If At First You Don't Succeed Award: Kwame for giving rediculously high bonuses to the top sales people both at Planet Hollywood & at the Pedicab company. Other than that, the personal foibles of everyone involved was more interesting to watch. Really only Nick & Amy came out of this looking like winners. Nick for returning that guy's money, and Amy for coming up with the idea to sell advertising, and otherwise keeping her nose clean. The Bill & Katrina drama wasn't one sided, and a good leader wouldn't just disregard the complaints of one of his employees, especially on such a small team. Heidi, as always got emotionally invested first, leading with her 'feistiness' and not with her head. Troy and Kwame performed about the same as always - strong interpersonal skills, but not the master strategists. Regarding Trump, I do have a dislike for open ended questions that can be discounted by the person on the other end of the table. Probably a trick he learned to keep other people off balance. It really only works if you care what he thinks, and these people obviously care. After the 'outtakes & behind the scenes' show they're going to Atlantic City. Is it a sign for people to start betting on the final 6 in their office pools? It looks to me like Katrina is the last of the 'lead with your emotions' group, and coincidentally, the 2nd to last woman. Depending on how the dice fall (she couldn't be eliminated this week because her team won), she'll probably be next to go. Kwame and Troy seem to have formed an alliance - make me the PM and I'll keep you out of the board room. I'm going to guess the same is true for Nick & Amy. Bill and Katrina don't seem to have such alliances, but now that the board room is 2 people, once you get in, you have to defend yourself - you can't gang up on someone or sit back while the two more explosive personalities implode. Side Note: Has anyone else noticed the splicing together of two different sound sources? First when Nick was talking to Trump in his penthouse, second tonight when Trump was talking to Heidi in the boardroom? It's like they re-recorded a bit in a sound studio. It was obvious both times from both the sound shift and the fact that the person talking wasn't on camera. I wonder how much of Trump's performance is actually post mortem - clever editing, reshooting scenes, etc.
Fri 12 Mar | Nick | Re the Bill & Katrina spat - did anyone catch the ideas that she suggested and he disregarded?  I must have missed it, because I didn't hear her come up with anything.
Fri 12 Mar | The Ted | Katrina is a joke.  She didn't mind selling her body the first several episodes.
Fri 12 Mar | Lou | T.R.E. - it was bitter cold in December when I was in NYC, this show must have been filmed in the early Fall. Nick made a relatively poor call in returing all of the money, however I can't fault him too heavily for it. The alternative is to sit down with the store owner and say, 'Well, you had two signs, we lost one half way through the day, so we'll return 1/4 of the advertising cost, plus however much a sign costs... how much is that?' Instead he says, 'We screwed up and don't want to ruin our business relationship for the future. Here's your money back and as a bonus we'll keep your other sign on our cab for the rest of the day.' If there's another episode where they need buy-in, that guy will definately work with Nick, and probably pay a premium to do so because he knows he isn't going to get taken advantage of. Heidi and Kwame came up with no ideas except for Kwame's continuing theme of paying people exteme bonuses that are entirely out of line with potential returns. 'Here's $100. Since you normally bring in $100 a day in profit each, I'll simply wipe out the profit of two of my riders for brining in an extra $10 in profit.' Hello? A much smaller incentive would have worked well, and no incentive at all is probably the smartest move of all - how much extra profit would any incentive have actually created? As these people live for tips they are trying hard already. No one asked any of the riders what the most profitable routes were or what seemed to work in the past and what didn't. They should have spent $30 and taken two of the top riders out the night before to a light dinner and gotten additional ideas that way. Take advantage of the people who know the business.
Fri 12 Mar | html tag user | Nick should've asked the guy how much he thought that advertising was worth, and accepted it. 
Fri 12 Mar | Clutch Cargo | Obviously a great idea by Amy. But then she reverted to her old schtick by trying to sell $50 rides for a two block trip. Katrina wallowed in bitterness the whole episode but did have one good line about Amy: 'She thinks every man is in love with her and every woman wants to be her best friend.' Honestly, I don't think any of these people should be running a company.
Fri 12 Mar | The real Entrepreneur | '...take.. two of the top riders out the night before ... and gotten additional ideas that way. Take advantage of the people who know the business. ' Yes, I was wondering the same thing. I didn't think of the advertising or punch cards, but the above occurs to me everytime they try to take over a business for a day. HOWEVER, while I always have ideas for improving companies I worked for in the past, perhaps most long time employees don't have those ideas. Otherwise they wouldn't still be employees. But it could work like this ' you give me yoru best ideas. If we use 'em, I'll announce it to the world'. If I had a good idea, I'd give it away free to get the credit (unless I could implement it myself).
Fri 12 Mar | Nigel | Troy did say they talked to the professional drivers to get an idea of the best routes and locations.
Fri 12 Mar | Lou | Nigel, I think that was primarily to determine the locations to put on the cards.  Because subsequently Kwame rode around all morning without picking anyone up.
Fri 12 Mar | no name | It looked like most of the coolies were white. Kwame didn't have a chance.
Fri 12 Mar | no name | Anyone notice how Troy broke the fourth wall in the boardroom.  When George criticized him for offering an explanation, he looked a bit confused and said something like "But I thought thats what you wanted now".  Trump jumped in and said something like "yes, but your explanation was boring".
Fri 12 Mar | no name | What's the fourth wall?
Fri 12 Mar | Philo | Talking to the camera, or to the concept that they're on TV instead of pretending there's nobody watching. Philo
Fri 12 Mar | no name | Do people resent Troy because he has a southern accent and no degree?  It seems that way to me.
Fri 12 Mar | no name | Although Kwame, the Harvard MBA, likes him.
Fri 12 Mar | KS | Heidi does not have the temperament to be an Executive - I expected her to go after the fiasco with Omarosa.  She does not have the patience to deal with people like Omarosa
Fri 12 Mar | Lou Franco | Do you think Troy and Kwame are smart enough not to pick Amy for their team next week?  Who do they pick.  Picking Bill or Nick is almost as bad -- strengthens their hand.  I say pick Katrina and make her PM.  If you win, great.  If you lose -- she's getting fired no matter who goes in with her.
Fri 12 Mar | anon | Looking at the next week's trailers, it looks like they picked Katrina.
Fri 12 Mar | anon | They may have picked Katrina just make her PM and get her fired, in case they loose. Or it could be because they can't pick Amy (since Trump already commented about both the teams picking Amy) and they have to have a girl in thier team. They always lost when it was all male team.
Fri 12 Mar | Phillip J. Eby | I was impressed that it looked like both Troy and Heidi *learned* something about themselves in the boardroom. Both looked very thoughtful about some of the things they were told, and I thought I heard Heidi say as she left, something to the effect of not wanting to be in management. It's hard to get Troy to be negative about *anything*. Even in his selection of Heidi to stay, he was trying to make it be a selection of Kwame to go. When asked if Heidi was a leader, he said she was a great salesperson. *Man* that guy is positive. The funny thing is that both he and Heidi do well at sales, considering that she seems almost uniformly *negative* about everything. I would have expected a negative attitude to be counterproductive for a sales person, who needs to continually face rejection. Troy, however, never sees rejection, he only sees wonderful people who just haven't gotten to know him well yet. :) George had an interesting comment about explanations weakening you as a leader. It was really fascinating, once I understood what he meant. You might think it's a superficial comment about one's relationship to subordinates -- and maybe he even meant it that way. But what I took away from it was different. He seemed to actually be saying that if you make out that external forces are compelling you to decide a certain way, then you are giving up your personal power. If the circumstances are what decide things, then there is no need for a decision *maker*. Or to put it another way, sometimes what makes leadership is deciding to do things that go *against* what external circumstances or common thought seem to say, so trying to 'explain' your decisions just weakens you as a leader. Not because of what other people do or don't think of your explanations, but because making a habit of justifying all decisions is a good way to ensure that you only make justifiable decisions. Not good ones, necessarily, just ones that you can justify!
Fri 12 Mar | www.marktaw.com | Don't be silly. After Troy's lecture from Trump - I expected more from you - They're not going to throw a game just to get rid of THE OTHER TEAM's liability. Troy and Kwame are buddies, they're going to choose another buddy. Trump already told them not to choose Amy so they will choose either Bill or Nick, whichever isn't PM, though I suspect Amy will be PM next week. They would be smart to choose Bill (brains) because they already have the brawn. Nick is just another mindless sales drone. Amy is off limits because of Trump's comments. Katrina... If they choose her it's because they want some 'feminine energy' on the team, or because they were told to do it by the show's producers. Troy, Kwame, and Katrina would be so heavily handicapped from the starting gate that... Well, it would be like watching this weeks massacre a second time.
Fri 12 Mar | Lou Franco | http://www.joelonsoftware.com/articles/fog0000000072.html 'If you hire all A people, he said, they'll also hire A people. But if you hire B people, they'll hire the C people and then it's all over.' I say they choose Katrina.
Sat 13 Mar | www.marktaw.com | If I'm an A person, then what am I doing hiring B people to begin with?
Whidbey and Yukon delayed...again | Thu 11 Mar | Dennis Forbes
http://news.com.com/2100-1012_3-5172166.html?tag=st_lh
Thu 11 Mar | Simon Lucy | Apart from the 3 year upgrade licence debacle, and its unlikely any MIS manager will look favourably on signing a similar deal again, it raises the issue of the product lifetime again in that SQL 2005 will only just be getting established before support is removed for SQL 2000. If products are going to die in this way then its going to seem reasonable to some large organisations that they get critical source view of those products.
Thu 11 Mar | Chris Nahr | Now if they had told me three months back I would've saved that MSDN subscription fee for 2004...
Thu 11 Mar | Peter Ibbotson | I wouldn't worry on the MSDN front, I'm pretty sure there will be another beta this year. My guess is July for TechEd europe.
Thu 11 Mar | Just me (Sir to you) | Maybe it is time to decouple the schedules for Whidbey from Yukon if that would help. I can live with SQL Server 2000, but I would love to have Whidbey out sooner. I know I know, it would probably lead to .NET 2.1 coming out 6 months after .NET 2.0, which has its downsides also.
Thu 11 Mar | Richard Sunarto | Oooh, this morning I just attended Whidbey and Yukon introduction at Microsoft Singapore. They said that the release date would be announced this week. I don't believe that it will come up this fast. I like the new features from Yukon, the integration of SQL Server and dotnet framework. Therefore I can use C# class to manipulate the data directly in SQL Server (no longer have to depend on T-SQL). For the whidbey, most of the improvements are cosmetic. They have applied some features from Webmatrix, where now you can work directly on the code (no longer code behind), also built-in webserver, etc. They also give code snippets (about 200-300 snippets) to make the life of developer easier. The master page template is also useful (although it is not fantastic) Too bad!
Thu 11 Mar | Krag | Maybe if they marketed less and coded more.
Thu 11 Mar | Elephant | That's an intelligent statement Krag, because I bet the coder's are the ones doing the marketing.
Thu 11 Mar | Richard Sunarto | The presentation and code will be posted on www.activedevelop.com By the way, I am not associated with those trainers. They are Independent Software Consultant who often do presentation in Microsoft Singapore to evangelize dotnet. note: If you visit the website, you will find a picture of of cruise liner. Yes, they will have training on the ship for 4 days. Any takers???
Thu 11 Mar | Krag | 'Maybe if they marketed less and coded more.' They meaning Microsoft as an entity.
Thu 11 Mar | Dennis Forbes | Indeed, a cynic might note the fact that when delays are announced, the new date is just about a year off -- so don't delay signing up for another year of SA, or getting an MSDN subscription, or signing up for Empower...then 8 months later it's delayed for...but will come out in about 12 months. Microsoft has a very long history of overreaching and then underdelivering (relative to what they initially promised). The tight coupling of Whidbey and Yukon is a questionable choice -- while it's nice that SQL Server shops that immediately upgrade will have the new functionality, the reality is that -A lot of VS.Net users target Oracle, or non-database backed systems altogether, but they'd love a lot of the enhanced functionality of Whidbey. -Of the SQL Server shops, the vast majority won't upgrade to Yukon for at least a year (especially given that it is vastly changed from SQL Server 2000, while 2000 was a mild improvement of 7). There are a tremendous number of shops still running SQL Server 7.
Thu 11 Mar | no name | If the marketers at MS did any part of the coding I would guess the delays would be much, much longer. Or are you proposing the 'hiring 9 women to get that baby in one month' solution?
Thu 11 Mar | Dennis Forbes | 'I bet the coder's are the ones doing the marketing.' The coders aren't doing the marketing, but a lot of the development work they do is to support the marketing. Now I've got to go use that voice recognition feature of Office XP that was so heavily promoted...
Thu 11 Mar | MacSqueeb | 'Maybe if they marketed less and coded more.' Way OT here, but I heard an interesting comment once that Microsoft is actually not a brilliant marketing company, but rather is a brilliant merchandising company. I guess meaning that they don't employ brilliant advertising psychology to make consumers *desire* their products (everyone I know dismisses their addspeak as hype anyway), instead they are able to position their products as the strongest competitor in their relevent channels of consumption--witness buying a new PC at , for example. Sorry... it's early for me.
Thu 11 Mar | Steve | It's worth it to me as long as they solidify the best feature in whidbey: ObjectSpaces
Thu 11 Mar | hoser | Whidbey is my favorite island here in the NW. AFAIK, it has been around here since the ice age, and has beatiful open sandy beaches to walk on. Unlike the San Juans where beaches and tide waters are 'owned' privately and snobbery prevails. Also, Whidbey is easily accessible, whereas the SJ's are a pain in the a$$ on a holiday. If you want some Whidbey, its right here and not going anywhere soon. :)
Thu 11 Mar | Richard P | Why the fuck do I have to wait for generics because SQL Server isn't ready yet? This infuriates me. Right now I use my own strongly-typed collections. However, it's a laborious process. It stings to know that when .NET 2.0 is released, all the custom strongly-typed collections I've been making will be wasted effort.
Fri 12 Mar | Chris Nahr | At the risk of repeating myself... http://www.ericjsmith.net/codesmith/
Fri 12 Mar | Richard P | Yay. I already have a macro recorded and fine-tuned for generating strongly-typed collections. The problem is that for each strongly-typed collection, I still have to add an additional class. That class takes up space in the documentation and in the developer's RAM, so-to-speak. It's another class that the developer has to learn. Furthermore, since CollectionBase implements IList, there's nothing you can do to stop people from trying to add any Object they want at run-time. You can implement IList.Add(Object) yourself, but you either have to throw an exception (runtime error) or silently not add the Object the caller just added. Generics will be a huge, huge help here. I'm pissed that I have to wait for generics because MS doesn't have SQL Server ready.
Sat 13 Mar | Chris Nahr | Richard, did you look at CodeSmith? CodeSmith collection templates do NOT use CollectionBase, they're built from scratch and they don't accept objects that are incompatible with the collection type. You'll get an InvalidCastException if you try that. And while you do have to generate & add a separate class for every element type, they all work identically so I'm not sure why the developer would be bothered. 20 differently typed ArrayLists aren't any harder to use than a single untyped ArrayList.
Hard Disk warranty | Mon 08 Mar | Gwyn
One of my hard drives head-crashed last week. An IBM Deskstar 40Gb. Its less than 2 and a half years old. IBM tell me, that for IBM hard drives not bought with a machine, that the warranty is only 12 months. Do any other manufacturers supply decent warranties with their products????? Its not exactly comforting that whilst you would expect that a hard drive should last virtually forever that the manufacturers will only guarantee it for 12 months.
Mon 08 Mar | r1ch | The IBM DeskStar has quite a history of failures - there are even some class action suits about it since there are allegations that IBM knew there were problems and kept on shipping the drive anyway. http://www.detnews.com/2003/technology/0310/15/technology-297930.htm
Mon 08 Mar | T.J. | Hard drives do _NOT_... NOT NOT NOT NOT NOT NOT NOT NOT NOT _NOT_ last forever! Ever heard of MTBF? Mean Time Between Failures? This is an estimated AVERAGE of time before a certain hard drive fails. A year is 8,760 hours. 3 years is about enough to start on the low end of HD's MTBF ratings (25,000 hours). Back up your data FREQUENTLY!
Mon 08 Mar | Gwyn | Yes I know that they don't really last forever, but they are supposed to have a reasonably high MTBF. Also, disks in a desktop will spend a lot of their time idle; even if the desktop isn't powered down the hard disk will be. I reckon this would account for 50% of the time at least. So now your 3 years is more like 6. Which seems more reasonable. Anyway IBM support passed me onto IBM technical who passed me to Hitachi Tech Support. Who couldn't tell me didly squat about the warranty except that the drive I have was supplied by Dell. Except it wasn't. I bought it from Simply so unless Dell offloaded a load of Deskstars when they decided not to use them anymore then there is something strange about this! Any, so Hitachi said to email their 2nd line support with the info. So I did and got a message back from their mail server saying that the Lotus Notes mailbox I was sending to was corrupt and could not receive mails! I really can't be bothered for the sake of a 40Gb drive, but it's a matter of principle, so I'm going to send the failed drive to the home of one of the IBM UK directors with a little note about it and I'll his department do the legwork.
Mon 08 Mar | TJ Haeser | Stay away from IBM when it comes to storage, dude. You'll thank me. Now go fill the action suit #97384636
Mon 08 Mar | Gwyn | So what about Maxtor? I have a couple of their drives and they seem fine. But are they REALLY any good? I was going to buy an external maxtor with the 'one touch backup' button.... but I'm not sure if I should be looking elsewhere.
Mon 08 Mar | Gwyn | > Stay away from IBM when it comes to storage, dude. You'll thank me. Coming from many years of Systems Programming against MVS running on IBM mainframes I came to understand that IBM equipment was good quality... we certainly had very few problems with 3380/3390 failures. Now presuming that the same storage technology that we have in our PCs is that which is now being used to fill RAID racks that simulate good old 3380/3390 disk packs (and still working in a mainframe environment from time to time I don't hear of massive amounts of failure) I am surprised at this statement.... although I'm becoming happy to believe it!
Mon 08 Mar | RH | Seagate and Maxtor are probably your best bets for PC hard drives these days. They both have long track records without the kind of fiascos that IBM (not Hitachi) and Western Digital have had. As far as comparing PC drives to those in big iron, consider that most big iron uses SCSI or other advanced interface drives, where capacities are generally conservative, RPM and seek time paramount, and prices are significantly higher. A 7200RMP 120GB Seagate ATA or Serial ATA drive is pretty much mainstream and you can get one for $100. A 10,000RPM SCSI U320 drive of 36GB capacity is in the $160 to $175 range. Some of the difference probably pays for quality.
Mon 08 Mar | doesn't work for Maxtor | I've used Maxtor drives for probably 10 years and have had only 1 drive fail.  Most of their HD lines carry at least a 3 year warranty.  Mine was in the latter part of year 3 when it died.  I called Maxtor, gave them the serial number and they shipped out a new drive immediately.  The new drive they sent me was larger than my dead one since they didn't make drives that size anymore.   
Mon 08 Mar | Stephen Jones | It really is quite rare for a desktop HD t fail. Somebody who was sysadmin at a Canadian university with neraly 4,000 IBM desktops said that he had less than half-a-dozen failures in the four or five years he was there. Our college has about eight hundred to a thousand computers. Hard drive failures are rare after the first few days. Dead soon after arrival is quite common. i've just sent back two Compaq's out of a delivery of two hundred. In general if an HD gets past its first couple of months it's highly unlikely it will fail. And it is those early failures that bring down the MTBF. None of this applies to laptop dirves of course. And, yes, SCSI drives are more expensive because of attention to quality. An ATA drive is always better value than the equivalent SCSI drive, but at the top end there are no equivalent ATA drives.
Mon 08 Mar | James U-S | The Western Digital special edition drives (part numbers WDxxxJB I think) have three-year warranties as well as 7200rpm and I think 8mb cache. I have personally used about 10 of these drives in various computers and can't fault them.
Mon 08 Mar | Dan G | Generally speaking these days - 2mb cache drives have 1 year warranty, 8mb cache drives/SATA have 3 years. And yes, the Deathstars were always useless drives, there was a firmware patch released for people with dying drives to be able to keep the drive going a bit longer so they could salvage their data
Sat 13 Mar | ozzie oldfart | most drive manufacturers' websites eg: http://seagate.com/support/service/procedure_drive.html will tell you when your warranty expires. (Unfortunately not when the disk will). Be aware the disk must be back at the factory (generally in Singapore) before the warranty expiry date. Your drive spec and serial # will lead you to its dropdead date. HARD DISKS *DO* FAIL so back them up, like the man said. I have had two die - different outcomes: 1) Quantum (may they expire in a bucket of green goo) insisted 'we don't deal with enduser - go see your dealer' then nixed the deal when the drive wound up in Singapore 1 week late. 2) Seagate took a month to return, to my doorstep, a replacement 20Gb HD for a flake drive in the last month of its 3 year warranty. PS My Thinkpad just died. Boots then freezes.
Another critical fix from Microsoft. Again | Fri 12 Mar | karthik
Here we go again. This is actually a critical fix which caused a different critical problem. http://news.zdnet.co.uk/software/windows/0,39020396,39148314,00.htm Wonder why you never hear StarOffice (rapidly catching up) or Linux announcing patches like this. If linux has 10% of windows installations (its more probably), you would assume that you get critical warnings atleast 10% of the time. But i cant seem to remember a single article with the word critical regarding linux, star office, lotus 123, apple, corel etc. etc. There has to be some other explanation other than Microsoft is the most used. Even if you assume 90% market share, you still expect that you would hear critical flaws about other products atleast 1% of the time (Yes, atleast 1) And no, i am no linux advocate. In the same page, you also find 1)Outlook flaw upgraded to critical 2)MSN Messenger flaw opens back door to hard drive 3)Access hacks hit UK Plc
Fri 12 Mar | karthik | A very simple google search: security flaw 'msn messenger' yields 25000 hits security flaw 'yahoo messenger' yields 5000 hits
Fri 12 Mar | . | These security problems are unacceptable, and must be thoroughly embarrassing for Microsoft (not to mention having a serious effect on their bottom line). Having said that, there have been plenty of critical faults in Linux -- critical generally means 'remotely exploitable and with elevated privileges', and there have been dozens of such exploits for the core Linux package (of course Linux apologists will always claim that its not really 'Linux' unless it's the core kernel, but by that token you can only count the flaws that occur in the core NT kernel [which I believe have been zero]).
Fri 12 Mar | DJ | More googling: linux security flaw problem fix - 54,400 hits microsoft security flaw problem fix - 69,900 hits
Fri 12 Mar | Philo | Here's the StarOffice patch from last week: http://sunsolve.sun.com/pub-cgi/retrieve.pl?patchid=116520&collection=fpatches It's a 26MB patch which fixes the following bugs: Problem Description: 6205 field commands are not properly updated 7216 OpenOffice.org crashes when I attempt to start it or any of its components. 8432 failure to display unusual .ttf fonts in OOWrite 8482 Document with a style named 'default' has problems importing in OO 9081 DocBook style XML export produces many empty lines 9358 Loop when counting sum in the table 9456 Crash when comparing two documents 9834 OOo does not start because of the font foxjump.ttf 10101 Impress drops images when many/large images have been inserted 10841 OUtline formatting/numbering corrupted when saving as .doc 11018 Unknown characters replaced by question marks 11844 WW6: Writer crashes on importing Autotext from template 11927 Can not turn off some 'AutoFormat while typing' 11929 Page border disappears when saved as Word97 12160 ComboBox errors in dBase forms using dBase tables as lists 12175 Unable to open Word 6 documents 12488 'wrap through' frames taller than available text area move to next page 12799 Loss of Autocorrect Table 13229 Macro record records date field insert but rems it out. 13249 formula bar get's completely distorted when in a RTL paragraph 13255 showing nonprinting characters in a RTL paragraph wreaks havoc 13262 Hebrew MSword files unable to load on OpenOffice 13957 numbering of the paragraph is not exact 14173 OOo spreadsheet and writer crash under WinXP when opening documents created under Win98 14729 clicking on OOo file opens 2 windows 14795 Turkish chars in a Word 95 document doesn't handle correctly by OpenOffice 14844 Open Office Writer Locks up with memory leak 15201 loop when deleting records from MySQL table (not all records visited yet) 15268 Each DDE-Link to a cell in a spreadsheet opens a new copy of the spreadsheet 15287 Unable to import .doc files created by 602Pro PC SUITE 15342 Writer table row height wrong on conversion to DOC 15437 Distorted Text in Palatino Linotype Text 15712 Loop when creating Master document from existing document 15971 [calc] incorrect short Hebrew date format for the month of June July 15991 incorrect tooltip display for RTL footnotes 16050 Word document bullets and indentation 16195 Text printed double when transparency is used & font is not available 16278 WW8: CTL table direction property is 2 bytes not 1 16297 Password appears when I load a doc with the autopilot and save the doc. 16372 OOo doesn't align all the words to the right 16470 = appears as - in text files 16535 state-changed:enabled events are not passed 16537 Editing of read-only documents via API has to be blocked 16573 Wrong line spacing of text in draw objects 16577 date field calendar/form dropdown vanishes as soon as drawn 16580 hard crash on program launch/document open 16610 printer margins wrong in landscape case 16612 Popup menus claim to be focused after closing it 16613 Java bridge is not loaded at starting spadmin 16643 Exporting highlighted Hebrew text from OO to word incorrectly changes font sizes 16706 Text direction buttons in the 'Object Bar' do not change the alignment 16846 Crash by clicking Tools-Options-Language Settings-Languages 16847 Crash when switching off Navigation bar before Print Preview 16977 No suitable GUI font found in zh_CN.EUC locale (GB2312) for chinese OOo 17011 Toolbars do not have states HORIZONTAL/VERTICAL 17014 getTextAtIndex(LINE) returns wrong value 17015 getTextAtIndex(LINE) returns wrong value 17046 Writer freezes when loading a word document that loads in 1.02 17098 PDF Export places glyphs incorrectly. 17174 Right table border comes to the left at any column-resize by mouse 17186 Outputs invalid PDF documents (when embedding bitmaps - no endobj) 17190 email URL not exported correctly to Docbook 17196 MS Word Doc Does not open and eats up all CPU cycles 17222 Date 4/13/2003 17297 Insert graphic inside table cell result in incorrect table height 17359 Crash on the text-style font selection. 17413 crash on opening file 17440 Printing Spreadsheets converted to MS Excel 2000 Format 17456 Freeze: Open Word97 doc and save as .sxw 17496 Paragraph Mis-Formatted (Shifted Left) 17509 Incorrect rounding for integer values 17600 Mail merge to files can't support numeric fields as file name 17629 Graphical objects in header and footer are incorrectly displayed when converting sxw to doc 17676 'Repair' removes all user settings. 17695 Writer freezes when editing a document 17713 webdav save xml invalid character at document end 17731 printed glyphs from symbol font are missing or incorrect 17772 Crash when floating Data Sources window when 'X Windows Look & Feel' is set 17837 Complete Crash when adding graphical object to clipboard 17841 unzip exporting crazy global symbols ... 17870 Menu can't be updated after a Floating Frame deleted 17915 Place holders persist into report creation 17952 MS Word Doc Fails to Convert 17969 Table of Content Error When using Vertical Writing 17989 Paragraph Formatting Error 18103 page break of table in section lets OOo hang 18125 Math formula in RTL context gets erased 18163 Carriage Return Hang from outer-space in 1.1RC2 18218 If a background color is chosen for a style OpenOffice crashes 18255 Crashes in recorded macro 18273 Writer crashes on attempt to insert spreadsheet with a chart 18280 Repeated paste primary selection causes crash (100% cpu) 18312 Conversion of text to table and then back to text behaves incorrect 18319 MS Word import: Crash in OOo 1.1RC3 but not in OOo 1.0.3 18364 Paste after undo causes crash 18419 field shading is turned on when adding/updating index 18497 Openoffice.org writer 1.1 series unable to open certain openoffice.org 1.0.x series files 18515 MS doc filter problems 18522 Lock up when applying wrapping to graphic 18529 Graphic Alignment lost opening Word DOC 18542 Typographic apostrophe at right margin gets hyphenated and de-margined 18559 fonts in PDF export problem -- Text Following Apostrophe Not Properly Rendered 18596 PDF creator does not set document creator field in created PDF 18599 Some characters overlap glid lines and some glid lines are thicker on PDF outputs of vertical Text Grid 18622 No document can be closed while StarBasic is running 18625 OOo crashes (with error mail handler) on opening this document 18671 Background color in linked paragraph style lost in WW8 roundtrip 18683 regression: option buttons with different names handled as *one* group 18775 The formula editor's selection window is too small 18788 OOo ignores Faroese dictionary completely 18898 Basic macros not executing on 'Open Document' 18931 unrecoverable error after copying a graphic and then jumping to a page using the 'page preview' 18934 A large sxw file crashes 18964 diacritic symbols are not exported to pdf 18994 [FEATURE] allow to link form controls to spreadsheet cells 19056 Numbered styles broken in 1.1 RC3 from 1.0.3 19067 import/export form control bindings in alien documents 19079 Subtotals /1st 2nd 3rd Groupings lost after saving / reopening 19121 Error when open a RTF 19235 PDF export error with D's and O's and circles in imported .wmf files 19278 OLE in OLE: On Close the object is disposed and then saved 19315 New office instance hangs when started with -accept and a different port number 19323 Regression in formatting .doc file numbered list moves to right 19381 The file cannot be saved: IO error 19390 spreadsheet filter top ten gives OOo error 19393 Spellchecker deletes footnotes 19442 flash export fails when exporting a 2nd time 19457 Writer loops on load with this file 19458 Font corruption of a boilerplate document (WORD) 19520 general input/output error 19559 XY chart saved in Excel format gains symbol ticks 19569 Hidden Paragraph fails when provided a numerical field 19588 DnD of paragraphs/headings in Navigator does not work 19591 Font subst semantics does not match specs (helpcontent doc) 19616 Some embedded EMF files do not convert to PDF properly 19667 Opening a doc document fails 19711 Error executing macro for close the document 19717 crash when selecting 'update' in template->organize dialog 19734 spadmin SEGFAULT while adding New fonts 19737 Section endnotes wrongly placed 19813 writing in bold in Hebrew does not export correctly 19823 crash on pressing enter (shift-enter) with focus between two structures 19919 Line missing on printout but present in Print Preview 19975 Zoom Entire-Page can loop the application 20040 report wizard result is not correct with number and text values 20085 wmf image badly exported to pdf 20178 using a CheckBox to hide/show sheets in calc freezes OO under windows... 20282 Drag drop in the formula text area crashes OOo 20288 OOo cannot open this file and stalls 20540 general input output error on saving to OOo format 20620 'size' ignores numbers after comma 20647 Firewall detect OOo trying to connect to the internet when start people can think it is spyware 20686 Greek extended Unicode characters do not display correctly in the Find/Replace dialog box 20690 Word-file cannot be opened at all - program hangs 20830 out of memory + error importing a MS Word document 20861 Can't save -- get General Error. General input/output error. 20888 Failure to hyphenate and/or wordwrap bolded words in 2 column 20942 Writer crash when changing numbered list indentation. 20997 OOo 1.1.0-de crashes when editing speedbars 21029 Writer can't close -that- document it contains a Drawing object 21036 Cut row and paste special crashes Calc 21052 Opening document makes OO hang/stall 21113 ms word doc file causes openoffice to hang 21125 'group by' bug 21193 Opening of rtf document crashes and gives a 'Main memory shortage' error message. 21317 Memory Leak when loading and disposing PowerPoint presentations 21457 second inner area in table in outer area: hidden flag not loaded 21573 Any inserted graphics disappear after exporting to .doc 21716 spoiled array-formulas 21775 Postscript printing fails on file that printed fine in 1.0 21826 Setup application of ProductPatch is not accessible 21844 readonly config for kde 3.1- user-installation 21951 document is printed incorrectly (overlaps) 22014 Crash in page preview when editing printer settings 22019 WW7-: certain doc crashes 1.1.0 but in 1.0.3 it works 22032 Cannot insert non-Latin characters with Legendum font 22050 Relative hyperlinks in spreadsheets become absolute when 'Save As .xls' 22135 crash on insert chart 22184 XML import filter does not show up in 'Open' Dialog. 22235 Embedded Graphics Disappear Randomly in slides (also in Writer) 22244 Textbox inserted into header doesn't print on each page. 22407 RTF file containing many hard formats crashes OO 22452 Export to PDF output cannot be imported by Adobe Reader for Palm OS 22464 saving doc as excel causes excel to crash. 22575 inconsistent image scaling problem 22585 bullets receive the alignment of the containing paragraph 22601 Crash on Word .doc import 22603 Memleak/crash on attached document 22683 MS Word freezes while opening a document saved by OOo 22858 Program crashes when using ?undo? with 3d view 23137 WW8: When adding extra styles to TOC consider styles which inherit their outline level 23202 Reversed Hebrew brackets/prentasis on printing when using type1 fonts 23238 Heading numbering and alignment different from MSWord 23563 Can not enable form checkboxes (document imported from Word) 23597 Too small metrics from reference device 23847 4 pages OOo doc save to MSO opened in Word become more than 1000 pages 23876 WW8: text background color in table sometimes exported wrongly regression 23978 writer document saved as word document can not be opened in word 23979 crash: word documents makes OOo crash 23980 WW8: attached document makes OOo1.1.1a crash (REGRESSION) 23982 template crashes Windows completely 24001 Regression: table of content wrong regression from OOo 1.1.0 24166 Crash under Word Processor when moving tables to next page 24303 Problem with tables extending over page border 24348 Wrong placement of bullets in bullet list function 24584 Missing header graphics after the first page 24796 Opening of MS Word document freezes both linux & win xp version of OO 1.1.1 24824 undo splitting up tables without heads 24881 soffice crashed upon invocation 25137 Formula error 25322 vertical oscillation in PDF text export 25339 Table in Writer hangs when trying to expand over page border 4849144 Crash when importing MS Word doc (bugdoc) 4894474 Data source doesn't show all content in report 4908450 StarOffice creates non-printable pdf document 4912019 Imported text is outside the page boundaries 4913988 Double-byte comma can't be pasted correctly in Staroffice Text document. 4923135 Staroffice icons slightly overlaps. 4942529 Error message while Updating from SO 6.0 to 7 : Kill Patch - line 37 4953558 Repeated paste primary selection causes crash (100% cpu) 4953559 Paste after undo causes crash 4953561 Drag drop in the formula text area crashes StarOffice 4953564 Cut row and paste special crashes Calc 4953584 Document bound macros not executed on document.close event 4953588 the report result is not right when only one single field is grouped 4953591 report wizard result is not correct with number and text values 4953658 i/o error when I delete a OLE and save the file 4953661 Password appears when I load the doc with the Autopilot and save the doc 4953673 graphics disappears when saving a password protected file 4954332 Firewall says, SO trying to connect to the internet when it start 4954952 StarOffice crashes when autosave occurs will editing chart data 4955095 Hidden sections reappearing after save, close and reopen. 4955749 Handling of chapter numbering needs improvement for better interoperability 4955752 Switching between source view and browser view makes Japanese HTML garbled 4961058 star office help screen close button not functioning 4963600 PickListSize uses default non-zero value 4966921 StarOffice 7 crashes when open a MS Word document 4968365 staroffice dialog starts minimized. 4968427 After a new style application of the file ; it loses its original form 4968511 StarOffice crashes when open a RTF file 4969106 Performance problems with document with a background graphic 4978314 PP1 breaks saving of StarSigma charts 4981098 RealPlayer 8.0 PlugIn does not work with StarImpress Philo
Fri 12 Mar | Christopher Hester | --StarOffice (rapidly catching up) Any refrenece to back this up??
Fri 12 Mar | Kyralessa | Ooh, ooh, can I play? I love this game! Let's Google on... apple iie security flaw fix We get...only 117 hits! *Damn* that sucker is secure!
Fri 12 Mar | karthik | Philo, Come on man :-) :-). You arent being fair. Which among them is 'critical' and allows someone to take hold of your computer. You want me to make a list of ms office bugs? Every product has bugs. But only MS sounds the alarm every other second .
Fri 12 Mar | yoga-man | > This is actually a critical fix which caused a different critical > problem. Uh, the problem it caused was not critical. In fact, the last line of the article reads, 'Sunbelt Software has released an updated version of iHateSpam that solves the problem.'
Fri 12 Mar | P" | google: BestOSfromP security fix 0 hits. I call that ... secure
Fri 12 Mar | Eric Debois | Philo... a link would have sufficed... Anyway, I dont see why linux has to come into the picture at all. Certainly not in a general sense anyway, because its basicly too much to make general statements about. (If you plan on arguing on the pros and cons please specify distros and versions and so on) My opinion is that these patches sucks, and that it sucks regardles of how other OS/products are. Considering what they are charging for, and earning from windows I expect a better deal.
Fri 12 Mar | AMS | I just ran windows update. This is what it found: Critical Update for Windows (KB833407) Download size: 309 KB, < 1 minute This item updates the Bookshelf Symbol 7 font included in some Microsoft products. The font has been found to contain unacceptable symbols. After you install this item, you may have to restart your computer. So, removal of a font that contains a swastika glyph is 'critical' ??
Fri 12 Mar | John Topley (www.johntopley.com) | 'These security problems are unacceptable, and must be thoroughly embarrassing for Microsoft (not to mention having a serious effect on their bottom line).' Is there any evidence that it's affecting Microsoft's bottom line?
Fri 12 Mar | Eric Debois | >>Is there any evidence that it's affecting Microsoft's bottom line? Not directly I guess, but the launch of their security initiative probably had finacial motivation.
Fri 12 Mar | Christopher Hester | 'Every product has bugs. But only MS sounds the alarm every other second . ' Why shoulf MS be critized for taking care of it's customers? and... Affecting their bottom line, no evidence....
Fri 12 Mar | Code Monkey | The resident JOS Microsoft apologist Philo said : >Here's the StarOffice patch from last week: >http://sunsolve.sun.com/pub-cgi/retrieve.pl?patchid=116520&collection=fpatches Well atleast they are open about what they are patching and they do not need to patch their patch or they do not come back later and say '.....um.......you readlly did not need the patch' http://www.pcworld.com/howto/article/0,aid,111108,00.asp
Fri 12 Mar | Joe On Software (Joe) | You must remember: When Microsoft issues a fix for a problem it's proof that they are evil an imcompetent. When a fix is released for Linux, or any other Open Source program, it's proof that Open Source is wonderful.
Unrelated Workex on resume? | Fri 12 Mar | The EE/CS Guy
Hello All, I have a (mostly fresh grad) resume related question. If someone has coursework, projects and interest in one area (and quite obviously intends to work in that area) but it just so happens that the work experience he has had so far, is in a slightly different area, is it good to mention that experience on the resume (and, if yes, is it good to state it up high on the resume, or lower down, after more relevant projects, despite the fact that they are not real world projects) As an eg. for this is my case. I am a fresh grad (MSEE), interested in a full-time position in embedded systems/ software development, Network Systems and related (mostly system level) positions. But my work experience has been as a web programmer/ network admin for an on-campus department. Any suggestions appreciated! Thanks
Fri 12 Mar | no name | It's all related.  I was in tech sales before programming and I have that listed on my resume.
Fri 12 Mar | NathanJ | Sounds like you have related experience in non-work projects. And your work experience is not related a lot to what you want to work on. In that case you can create two sections on your resume. The first section (near the top) would be Skills. This section describes relevant skills and experiences that would be useful in your job. The second section is Experience. This section merely lists the jobs you've had. Any description of skills learned/used on jobs goes in the first Skills section. This type of resume is very good at showing off skills gained outside work. I used this format successfully for my first job out of college.
Fri 12 Mar | Lou | I agree with Nathan. This type of hybrid Skills/Chonological resume is a real winner when you want to emphasize a skillset. Just make sure you really talk in an educated manner about your coursework. Do NOT list class names/numbers. You aren't summarizing a list of classes, you're describing the knowlege you have. Break it down into relevent subject areas and describe the type of work you've done in each. For example: Skills: Bathing: Extensive experience in pre-wash rinse, lathering, final rinse. Some experience in towel drying. Teeth Brushing: Some experience with toothpaste and floss. Pants: Extensive experience with putting right leg in first methodology. Created a pair of cut-offs under strict laboratory conditions which met international hangy-string requirements.
Fri 12 Mar | The EE/CS Guy | Thanks Nathan and Lou for comments and suggestion. I think they should be pretty useful to me. Yeah Nathan, thats exactly the kind of situation I am in. I work as a web programmer only because it is 'just a campus job', but after doing that for over a year now, I have realized that is definitely not something I can do on a more longterm/ career basis. Lou, that was a very cool way of conveying your point about the resume skills section. Infact, I think I have something similar going on right now. I have one section called 'work experience' where I list my (may be not so related, but real world jobs) and another section called 'project experience' where I list my (mostly) academic projects. Further I have the projects section broken down by area (operating systems, Networks et al). What do you guys think of that? Thanks!
Fri 12 Mar | Lou | I think your differentiation between work and relevent experience is a bit vague. I suspect you can do a chronological listing of employers, but rather than listing bullets which say, 'Built PHP based site for Finance Club', say things like 'Lead developer on ...' You can really highlight the intangibles, just make sure you list some good nouns so questions can be asked. 'You say here you were the standards advocate during the design of the Library's search system. How do you see that work relating to developing a Whatchimacalit?' It sounds like you're on the right track. Just really work on your word choice and make sure it's all positive and puts you in the best light possible. Get it reviewed by everyone you know.
Is anyone using CruiseControl.NET? | Fri 12 Mar | Aaron F Stanton
or any other continuous integration tools?  What experiences have you had with them, good or bad?
Fri 12 Mar | Brad Wilson | Using it. Love it. Build with NAnt, tests with NUnit, SCCS with Subversion.
Fri 12 Mar | Aaron F Stanton | Cool.  Tell me, can Nant be used with a variety of build rules - such as different compilers, build steps, etc?  I've only tinkered with it a little bit.
Fri 12 Mar | mb | yes. using it with nant + nunit + CVS. it's not perfect but it is a massive step forwards from the manual process we were using before. a new build was released today, i'm checking it out right now. looks like they have a wiki set up now too. http://ccnet.sourceforge.net/wiki/HomePage
Fri 12 Mar | mb | nant can be used with anything... a bunch of our projects have build rules like this: because the 'solution' task doesn't quite do what we wanted and it wasn't worth the effort to make the build tasks 'real'. other projects use the 'csc' or other tasks to build. note that the visual studio solution itself has a 'nant' project which lets us build from within visual studio; in some cases devenv doesn't quite do what you'd expect and calls nant which calls devenv on an infinite recursive loop.
Book on interface construction | Fri 12 Mar | Eponymous
Im building interfaces on Windows platforms using VC++, COM, ALT, WTL, not so much MFC. Im starting to get the hang of messages and controls, but it seems like there are a ton of little details that can trip me up -- things like WS_CLIPCHILDREN and WS_CLIPSIBLINGS or control repaint order. Is there a good book I can read thatll give me all the nuts and bolts on this stuff? Thanks in advance.
Fri 12 Mar | PBS Fund-drive freeloader | Based on the issues you mentioned, you might want to check out Win32 Programming by Rector and Newcomer. Rector is the co-author of the excellent ATL Internals, which you are probably familar with if you are working with ATL/WTL.
Adobe Designer 6.0 vs InfoPath | Fri 12 Mar | Nathan
Anyone heard of Adobe Designer 6.0? http://www.adobe.com/enterprise/designerbeta.html Is this supposed to be an equivalent to InfoPath? http://office.microsoft.com/home/office.aspx?assetid=FX01085792
Fri 12 Mar | tapiwa | no. never heard of it
Fri 12 Mar | Joe Hendricks | You know, Adobe better decide what business they are in ! They stop LiveMotion and ImageReady development to retreat from internet products, but now this ? Very mixed message they are sending, IMO.
Interesting take on outsourcing? | Fri 12 Mar | Hmm
Yes, its been beaten to death... http://money.cnn.com/2004/03/11/commentary/dobbs/dobbs/index.htm
Fri 12 Mar | no name | How can doctors and surgeons be outsourced?  I know reading x-rays is already being outsourced, but doctors and surgeons?  I don't understand.
Fri 12 Mar | jm | Telemedicine: the doctor sees you through a web cam. There have already been performed surgical operations from a large distance. Please excuse my poor English - it's not my native language, and my head hurts like hell after 20 hours of continuous coding.
Fri 12 Mar | Just me (Sir to you) | http://news.bbc.co.uk/1/hi/sci/tech/1552211.stm
Fri 12 Mar | Offshore Brain Surgeon Working on Your Grandpa | > my head hurts like hell after 20 hours of continuous coding I know what you mean! I've been up for 118 hrs now with no breaks doing brain surgery remotely. I only get $5/day but at least I have a job.
Fri 12 Mar | Bill W. Davis | I've also read about the possibility of putting the paitents on a plane to be sent to a foreign country for expensive surgeries, this was a serious article btw.
Fri 12 Mar | no name | 'I've also read about the possibility of putting the paitents on a plane to be sent to a foreign country for expensive surgeries' I've heard that too. HMOs could send people to india, then disneyland and still save money. (in some cases)
Fri 12 Mar | Christopher Wells | > Our trading problem is an externality What trading problem? > As a society and as a country, we experience many costs from outsourcing We also experience benefits: cheaper goods and services, and a better return on the money we invested in these companies. > Loss of jobs reduces ... Displaced, unemployed workers have higher ... I thought that the idea of the state trying to control its own national economy went out of fashion with the fall of the Berlin wall; that there's no benefit to society in having full employment if the country itself isn't competitive in the global market.
Fri 12 Mar | Stephen Jones | The US has long benefitted from Health tourism: that is to say rich foreigners coming to the US for dental or medical treatment. It can work the other way round. American citizens going for non-urgent operations to countries where health care costs are much cheaper than in Europe, and a fraction of the bloated prices in the US. In the UK it is already standard practice for many operations to be routed to France or Spain, where the waiting lists are shorter, and for many types of operation it would definitely be cheaper to fly people out to India. The most expensive private hospital in Sri Lanka is a branch of the Indian Apollo chain, and it charges under $300 a day for its intensive care unit. Most westerners I know in Sri Lanka reckon they will get better treatment there than in their home countries. I need to get some dental work done. I can do it here in Saudi or in Sri Lanka. Obviously I'm going to get quotes from both places and then decide. Of course we are only talking about a small proportion of health care being outsourced since the greatest expenses are in emergency cases and their aftermath, drug costs, and long term geriatric care. With regard to the latter it might indeed make more sense to send the old dears off to the residence of the carers than to wait until they enter the developed world as illegal or legal immigrants to work in hospices and nursing homes. Incidentally one activiity that could well be outsourced is economic schooling for undergrads; the 'associate professor of finance' has produced one of the most ridiculous articles on offshoring I have ever seen - and that is difficult.
Fri 12 Mar | RocketJeff | >>The US has long benefitted from Health tourism: that is to say rich foreigners coming to the US for dental or medical treatment. Yes, that's why Rochester, Minnesota has Arab and Japanese programming on their cable TV system... The Mayo clinic does a lot of advertising overseas to bring in foreign patients. The tend to be wealthy and to pay cash (and not to demand discounts like HMOs and Medicare do).
Fri 12 Mar | old_timer | Only way to ever get action on the whole outsourcing issue is to export several congresspersons jobs. Think about what they do and tell me they couldn't do it from the moon as well as they do it here.
Fri 12 Mar | The real Entrepreneur | I talked to my brother in-law (an orthopedic surgeon who coincidently owns a software company for orthopods) about this. He said the robot controlled scalpels, where the surgeon doesn't have direct feedback from 'feeling' the patient doesn't work very well because the patient isn't immobile. The surgeon has to move around a bit to compensate. So having a surgeon do it remotely means the surgeon is losing a pretty important sense: touch. (Even with the microsurgery with the long rods they poke through small incisions, I think they can feel some feedback). But, then lots of doctors who don't understand programming think IT can be outsourced easily :-)
Fri 12 Mar | Keith Wright | Apparently someone attempted outsourcing the job of congressional aid to Iraq.
Fri 12 Mar | Inside Job | A lot of Congressmen have already outsourced themselves to India. They do what the Indian outsourcers tell them to do in return for campaign financing. Think I'm joking? Look into it.
Disable WSH using Group Policy? | Fri 12 Mar | Javier Jarava
Hi all!! Another of my PITA questions. I have to find a way of disabling WSH using Group Policy. Ive had a look on the templates provided with the Local Security Policy on my computer (W2000 Server), and I cant see any ready made policy for that (cant logon to the server ATM). Ive been googling, and the only liekly thing Ive found would be on: http://users.iafrica.com/c/cq/cquirke/riskfix.htm#FindAndKill As I see, having a batch file that renames the WSH interpreter would be a way.... But that strikes me as unelegant, so I was wondering if there is any cleaner way to do it....
Fri 12 Mar | Just me (Sir to you) | http://msdn.microsoft.com/msdnmag/issues/02/05/wsh/ might help you out.
Fri 12 Mar | Bob Riemersma | I always wonder where the locking down of boxes is going to end. Why not just put all of your users on WebTV and take away their PCs? I love how 'admins' love to do their job by making their jobs trivial at the expense of the rest of the organization. It reminds me of last summer during the 'slammer' storm. The SQL Server box admins and the desktop admins sat outside for weeks on their Nextels smoking. 'Patches? Patches? We don' need no steenkeeng patches!' Slammer hits big, and after a few days management kicked their butts to get 'em moving. As soon as things were just about cleaned out and patched, the network admins decided to block port 1434 between segments all over the network. Nothing could get to the SQL Server boxes (among other things) anymore and it took another two days to get it ironed out. Just yesterday the network idjits blocked another port or addres range and we have no OWA access anymore. Plus several major ISPs have been blackholed so we don't get email from a bunch of outside clients now. So yeah, don't let me automate tasks for my users via WSH or HTAs guys, just block everything so you can relax and have another Marlboro.
Securing W2000 on a domain "Against" admin? | Fri 12 Mar | Javier Jarava
Hi all!! As the local he knows a bit more than we do, so he must be an expert guru on CompSec, Ive been asked the following: Is it possible to secure a computer so that the information thats handled / stored in it is *_secure__*, when the computer is on a W2000 Domain? The computer user is _not_ the domain Admin, nor does he has Admin privileges... And the idea would be to log on as a Domain user... My gut feeling is cant be done, but Id like to be proven otherwise, or to be given a reason thatd finish the argument (someone said it could be done, as the Domain Admin user group could be taken out of the local Administrator group, but it kind of sounds wrong)... Yes, I know it sounds weird, but any pointers to good overviews on how to secure workststations on a Windows domain where you might not fully trust the admin... would be _very_ welcome. Thanks a lot
Fri 12 Mar | Christopher Wells | Perhaps disable the "Net Logon" service and/or the "Server" service: I think that would prevent anyone from logging in to the computer from the network (they could only login from the physical keyboard).
Fri 12 Mar | Stephen Jones | Take the domain administrators out of the local admin group. Then to be really sure set NTFS file permissions on all dirives so that only the local admin and your friend's user account and system can access the files. And then change the lock to your office, since anybody can log onto an NT machine and then take ownership of all files, using varying floppy utilities available on the web, including a Linux program. Passport securing the Bios and changing the boot order might do as a temporary expedient until materials provide the new lock. First though, I would advise your friend to get cosy with an employment lawyer unless he's high up in the food chain.
Fri 12 Mar | Just me (Sir to you) | AFAIK there is no strategy that can save you from a rogue admin. The system can make it harder for the rogue admin to cover his tracks, but not protect you from it. see also: http://www.microsoft.com/technet/prodtechnol/windows2000serv/technologies/activedirectory/plan/addeladm.mspx#XSLTsection124121120120 Domain owners always maintain the right to access data stored in a domain or hosted on computers joined to a domain. The service administrators of a domain cannot be prevented from viewing or manipulating the data stored in a domain or on computers joined to a domain. This is a consequence of the following characteristics of Active Directory: • The Builtin\Administrators group on a domain controller can take ownership of any object in the domain and then read, modify or delete it, regardless of the previous ACL on the object. This feature gives service administrators a way to correct errors in ACLs on objects. Therefore, organizations that store data in OUs of a domain must trust the domain owner. • A service administrator can maliciously modify the system software on a domain controller to bypass normal security checks. A service administrator can use this procedure to view or manipulate any object in the domain, regardless of the ACL on the object. Consequently, organizations that store data in OUs of a domain must trust the domain owner. • A service administrator can use the Restricted Groups security policy to grant any user or group administrative access to any computer joined to the domain. This feature ensures that an administrator can always gain control over a computer joined to the domain, regardless of the intentions of the computer owner. Therefore, organizations that join computers to a domain must trust the domain owner. • If a user or group in a domain is granted access to data stored on a computer joined to the forest, the domain owner of the user's or group's domain might reset the user's password or manipulate the group's membership and by so doing gain access to the data. Consequently, organizations that join computers to a forest must trust every domain owner in the forest.
Fri 12 Mar | Javier Jarava | Thanks for the advice... The person in question (not my friend, but a client) _IS_ high on the food chain, as a matter of fact, the 'alternative' is having the IS dept. 'build' a network only for himself and his secretary, and get them a dedicated GW to the 'net, etc... What I was wondering is, you do that (user accounts, groups, NTFS permissions), and then the admin creates a script that copies all the files in My Documents, or that creates a new admin account, or whatever, and then uses Group Policy to have the script run on the next logon (for example?) It's just an idea...
Fri 12 Mar | Just me (Sir to you) | Sorry Javier, perhaps I am missing something but I fail to see how anything you propose makes a difference. The enterprise admin has all the powers to control every last bit of the authentication and authorization system. So either you cut the ties (not join the domain), or trust the admin.
Fri 12 Mar | Javier Jarava | >perhaps I am missing something but >I fail to see how anything you >propose makes a difference That was precisely my point. My 'gut feeling' was that it wasn't possible, but I wanted confirmation (I have been known to be mistaken sometimes ;) My last post was written _before_ your highly informative (thanks!!); when I hit 'submit' I saw my questions were already answered... It was just that I lost on the 'race condition' Again, thanks very much for the incredible responses!
Fri 12 Mar | no name | Couldn't "your friend" just fire the PITA admin?
Fri 12 Mar | Dennis Forbes | If this is a data integrity issue, take a look at PGP-disk or similar disk encryption utilities. Of course this doesn't preclude the administrator from installing a keylogger and getting into it that way, but an action like that is much more explicit (and criminal) than casually browsing to \\system\c$\documents and settings.
Fri 12 Mar | i like i | A linux box, so you can still use samba to play with the standard file shares but it is an island as far as the local disks are concerned?
Fri 12 Mar | Stephen Jones | How does the domain admin get access to the machine in the first place if he doesn't have the NTFS permissions to read the Hard Disk? Frankly it would be easier to use PGP and/or use a removeable hard disk which he puts in his briefcase every night.
Fri 12 Mar | Michael Kohne | No name: In all likelyhood what's going on here isn't a 'I don't want the Admin to see my stuff', but rather 'It's secret and the Admin isn't on the need-to-know list, therefore we have to setup security so he can't see it'. Good security practice is to make sure that NO ONE who doesn't need to use the information can possibly get at it. In most organizations you balance this against the extreme utility of having IT personel able to fix anything without delay or difficulty, and you decide that having an administrator with total power is worth the risks. This situation would appear to be a bit different. In this case, a domain is perhaps not the right security model (at least for the client). Sounds like the client needs to give up being on the domain.
Fri 12 Mar | Just me (Sir to you) | I am not too knowledgable about this but you could probably make life difficult and do EFS on a local volume without any data recovery agents and keeping the user keys on a smartcard. Even so it is just obstruction. You can't keep out a determined enterprise admin.
Fri 12 Mar | Stephen Jones | Yea, looking again I see the point. When the other guy logs in the admin can run a script making the user an admin and using the users new permissions to take over control and put the admin back in the local administrators group and also change the file permsiions. Beginning to look like an arms war. Why doesn't he and the secretary access the internet through a modem? Configure the machine connected to the domain with a second network card that joins to the bosses machine that is connected to the internet, so he's got a private connection and the public one.
Fri 12 Mar | Christopher Wells | Perhaps disabling the 'Net Logon' and/or the 'Server' service would do: my machine is like this, so I can connect to other machines but they cannot connect to mine. It would mean that his secretary couldn't connect to his machine (except by logging into it locally); they could exchange their selected files via email or something.
Fri 12 Mar | tone-lowerer | All this so he can surf porn without being blackmailed??
Fri 12 Mar | Stephen Jones | If you log on as a local user you can still access domain resources. You merely need to provide a domain password. Now setting up Outlook could be tricky, but I am sure it could be done.
Fri 12 Mar | GiorgioG | Well...you could run a VMWare/Virtual PC 2004 instance of win2k (not on domain set passwords accordingly) on your desktop (which is on the domain) - store/copy all the data on the VM....for added security at the end of the day, take the firewire/usb hard drive with the virtual machine home with you.  No, not ideal...but it accomplishes the goal partially methinks.
Conducting A Training Prog. - nervous/confused | Fri 12 Mar | KayJay
My bg: 1) Ex-middle-management-hotelier. 2) Self taught Computer Programmer. Reasonably competent. Or so I am told. 3) Currently (hoping to be known as) an entrepenuer in the S/W field. Me and this client - 1 year old association: 1) Successfully debugged (actually, implemented from close to scratch, the existing code was obtuse, to say the least) an online sql/asp setup to display examination results of a pretty large educational setup. 2) The above assignment was done as an individual, and I was comfortably compensated for my efforts, but the payment was off the record. 3) Sundry coding assistance to the man in charge, Mr. X, free of cost, both telephone and in person. Now, my company has been asked to provide training for one section of the Mr. Xs dept. in basic webpage authoring, officially. The traget audience is semi-computer literate, mostly middle aged women, engaging in data entry work. Problems/Issues 1) We are not a training shop. 2) None of my colleagues can do the training, to be spread over 5 days, as they are all held up for other reasons. 3) If we take this up, *I* will have to do it. 4) Ive never attended, let alone conduct a live CS training session before. One to one, no problems. Presentations, Training, per se, I am comfortable with. Just that with Software/Computers, due to my lack of formal exposure, Id rather my code speak for me. 5) I _want_ to take this up, as the educational organisation in question is a very large consumer of S/W services, and I want a decent size of the pir for my company. This could be as good an official entry as one can get. So, do I just buck up and practice before mirror and my collegues, or hire a final year student from some college, or...what? Regards KayJay
Fri 12 Mar | Stephen Jones | ---'I'd rather my code speak for me.'---- Kay Jay, you're dealing with middle-aged women involved in data entry. Their eyes will glaze over if you show them any code. Choose a tool, like Front Page and show them how to set up something simple using it. Don't use any speciific Front Page extensions and switch every now and again to HTML view so they get the idea that the program is creating mark up language. Even get them to come to the front and use bold tags or something, and then show the result on screen. Think in terms of a few basic things before you start - like how they link to a picture and the use of tables. And I suggest you ask the customer exactly what he wants. Is it just a taster or does he want the women to do a specific task, such as update an already written web page?
Fri 12 Mar | KayJay | Just a taster. In fact Mr. X himself does not exactly know what to ask for. I have a fairly long rope to do as I please, and therefore have to be that much more careful. ;)
Fri 12 Mar | Stephen Jones | Look at the HTML in 24 hours by SIMS. It should give you some useful ideas. I still like the idea of getting them to do a sample web site in Front Page. Just don't show them any java script :)
Fri 12 Mar | d&rfc | Whatever you do, you are going to need resources for it. A room with lots of desks. Computers as identical in setup as you can possibly manage. Etc. Etc. The effort involved is not small. Hey, why don't you offshore it ;-)
Fri 12 Mar | GH | To follow on from Stephen's post, remember it's perfectly ok to teach from a textbook - eg Learn HTMl in 24 hours or something even more basic (Web Design For Dummies?). If you can't run to buying a textbook for each student, I'm certainly not going to suggest you photocopy pertinent pages and create a set of worksheets for each lesson - obviously that would break copyright. Use FrontPage or even Word.
Fri 12 Mar | KayJay | D&rfc, LOL! Scroll down! What I was thinking of was something like the following. Frontpage? OK. Will do so. 1) Content finalisation. 2) Frontpage. Notepad to show that it is after all only a Markup. .....2a) Content entry .....2b) Basic formatting .....2c) Minimalistic page layout with tables and maybe frames .....2d) Hyperlinking including downloading of non-textual data 3) I was thinking of some basic Forms handling, using Frontpage's wizard to send emails. 4) FTP commands to put into operation the whole jing bang. Presentations on a PC hooked up to a projector, with paper handouts as a sort of a ready reckoner, and a sandbox in one of the dept.'s server. Each person already has access to a machine of their own. The above setup was thought of to setup a basic 'blog', as in a personal web page, to share information among co-workers. Kids photographs, 'e-post-it' notes, sharing of files, etc. The dept. has a dedicated server that can be configured to handle this additional stuff. I want them to actually use what they would be building, rather than just showing slide after slide and then hand over those very same slides on paper. Regards KayJay Chennai India PS: Where do I offshore to?
Fri 12 Mar | d&rfc | I hear China's cheap this year... On a more serious note, I think the actual doing is at least as important as your slides (hence my mention of having a bunch of computers they can use), but then that might be just my personal learning style.
Fri 12 Mar | Should be working | They'll have to do things to learn them. And they'll have to do them repeatedly. And they'll start from 'ground zero'. Make your first three lessons dead simple. Then make them even simpler. Your goal is to give them early confidence in their abilities. Tell them web page authoring is simple, that your 10-year-old kid could teach this course. Focus on end-user tasks, not on terminology. Teach one thing in each lesson. If it builds on something taught in a previous lesson, the exercise for that lesson should require them to use the previously taught knowledge. If it introduces something new, you need two exercises: one that lets them learn how to do the new thing in isolation, and one that forces them to tie it in with something they already know.
Fri 12 Mar | C | There are several qualified training organizations that exist for this sort of thing, so you could outsource to one of them. For example New Horizons, Executrain... or search Microsoft's website ( http://www.microsoft.com/learning/training/ ) for other training providers. These companies usually have their own cookie cutter material which can usually be 'enhanced' for custom classes to include client specifics (usually at am extra cost). It's not the material that makes a good training session. It's the instructor. The instructors knowledge AND their ability to get the information out there in an way that makes sense.
Help with Sharepoint Portal Server(OFF) | Fri 12 Mar | Jon in Doubt
just in case someone found this error message before, can you give me a hint ? Kind of event: Error Source: SharePoint Portal alert service Category: None Id. : 155 Date: 01/03/2004 Time: 19:20:56 User: Not available Machine: SERVER_WEB Description: Damaged message: It can be a problem with one or more of the email headers. I´m trying to help the tech people here in our company, they say that MS doesn´t have records about cases like this??? Thanks a lot, and sorry if this looks like not the correct place, but I respect too much your opinions here so this is my last resource. regards,
Fri 12 Mar | no name | philo, it's your job
What is the logic behind mail in rebate? | Fri 12 Mar | JD
Hi All, Just recently I arrived in US from India. One of the most surprising thing in US for me is this mail in rebate. You have item worth 50$ and if you send snail mail back to the seller, he will give you as much as 100% of your money back! Now this is something unbelievable. Why would one like to sell their products for free or say half the price. I am pretty much confused about how this mail-in rebate things works in the first place. Could anyone care to throw some light? JD http://www.phpkid.org
Fri 12 Mar | Brad Wilson | 1. Some people will forget to mail it in. 2. Some will get lost in the mail. 3. Some companies are dishonest and only pay some people; some will even wait for you to call up and complain before they pay you. 4. Having the use of the money for a short period of time can sometimes make a difference.
Fri 12 Mar | Nigel | 5. Gives stores (Best Buy et al) a good excuse for putting a deceivingly low price in their flyers, while burying the real price in the small print. 3b. Yes, still waiting for my $40 from Epson. Crooks.
Fri 12 Mar | Kyralessa | There are two different kinds of mail-in rebate. The first is where you buy something and get a portion of the price off, say $20 on a $100 purchase. The logic is that (a) a company wants to get a product moving when retailers already have it on their shelves and people aren't buying it (at least not fast enough), and (b) the simple fact is that a lot of people buy the item and then never send off for the rebate. (Sad to say, I've done that a few times myself.) There are also some companies that simply stall or use various tactics to make it practically impossible to get the rebate in the first place; these days if you really want to get a rebate, you should at a minimum make copies of absolutely everything before you send it off and mark on a calendar (or a PDA) when the rebate should have come by and how to contact them if it hasn't. The other kind of rebate is a buyer's program where you buy things at grossly inflated prices and then get rebates for the full amounts or close to them. So far as I know, having just read about it tangentially, this is a scam or at least nearly so and is best avoided.
Fri 12 Mar | Li-fan Chen | Well originally the goal was to preserve the general sense of value a manufacturer would like to install in buyer's mind what an item is while temporarily giving a mutually beneficial illusion of selling at a loss (which is actually a gain, because the manufacturer moves the product in the end, and retailers are kept happy) or giving an highly competitive discount. Unfortunately it's a real genuine pain in the butt: the uncertainty of whether you'll be one of the lucky ones to not lose their packaging/part number cut outs to the winds of US Postal Service/Canada Post or be lost in a SELECT statement--will generally NOT build consumer loyalty in any customer. If you are a knowledgable marketing geek, please expand on this :-)
Fri 12 Mar | Wayne | They also take the personal information that you put on the rebate form and sell it. There is a lot of money to be made from tracking your buying habits.
Fri 12 Mar | Li-fan Chen | In some countries, privacy laws are being put into place because retailers and corporations has been asking for much more personal and private information than is necessary to conduct business for the transaction at hand.
Fri 12 Mar | Tayssir John Gabbour | This is Nagle/Holden's take; looks pretty interesting. A company wants to do 3 things when doing a promotional deal: - make a price cut benefit the buyer, not the distributor. - it should be a special offer, so the buyer doesn't think the product's cheap quality. - they want to direct the deal to first-time buyers, and minimize repeat buyers from taking advantage of it. Trial offers and coupons can fulfill these objectives to varying degrees of success. Rebates are for things that cost enough to justify mailing the thing. One advantage is they get a mailing list of deal-prone customers. Also supposedly it avoids various coupon frauds. (I'd think a problem though is most companies just get unsupervised minimum wage guys to send out rebates, because they're not in the business of shipping out money. So no one trusts these damn things.)
Fri 12 Mar | Elephant | This was always just a hypothesis, and I'd really like anyone that knows to give or take away weight from it.  I always thought that the purpose of mail in rebates was some sort of earnings trick.  Sell the product for $X and now it looks like our total sales and revenue is higher.  Then pay the mail in rebates from a different pot of money.  Kind of a way of artificially making total sales appear higher on paper unless someone actually takes the time to figure out that they aren't.
Fri 12 Mar | OneKidney | I don't think anyone is considering the real genius behind the rebate and that is (cue horn section)...most companies don't have to pay them. Folks either don't send them in or send them in incorrectly. I have PERSONAL experience on this. Bought a laptop from BestBuy, understood it had a 200 hundred dollar rebate, never sent it in. Part of it was my extreme sense of procrastination (and the other part appears to be my ever prevelant sense of stupidity). Bottomline: retailer can advertise a lower price for goods knowing that a certain percentage of the public buying those goods will never redeem their money. I would venture to say that percentage is quite large.
Fri 12 Mar | moses whitecotton | I wondered the same question, how could a copy sell a item and then have a rebate for 100% of the cost? I was finally able to rationalize after reading 'the goal'. Bottom line , in this case a factory had spare 'time' that if unused would actually cost them money, so by making something during the spare time, even if they broke even, they were not losing money. Weird huh? Maybe not the real reason why a rebate can work, but it soothed my mind.
Fri 12 Mar | Tayssir John Gabbour | Incidentally, if you really want to spend time with rebates... http://www.consumeraffairs.com/consumerism/rebate_madness01.html
Fri 12 Mar | Dennis Forbes | The real winners of mail in rebates is the government, that taxes the total purchase price (which is often double or more the original selling price), retailers that can claim highly bloated sales figures, and the postal service that yields millions of letters to deal with rebates. In the end the consumer is the loser.
Fri 12 Mar | JD | Hey John, That was a great link! Thanks! Now I know what this rebate hoopla is about and how can I save myself! :) Regards, JD
Fri 12 Mar | Kyralessa | 'the uncertainty of whether you'll be one of the lucky ones to not lose their packaging/part number cut outs to the winds of US Postal Service/Canada Post...' Interestingly, in the last fifteen years or so I haven't had ANYTHING I've sent through US mail get lost...except rebates. Odd, that.
Fri 12 Mar | The real Entrepreneur | Hmmmm... I don't think we've ever missed a rebate (always through OfficeDepot/Max) but I've had other mail get lost (about a .5% failure rate) where customers didn't recieve a product or catalog and called about it.
Fri 12 Mar | techie for a marketing company | The money for funding rebates is usually put up by a marketing group. Instead of spending the money on additional advertising, the funds are escrowed and drawn from to pay rebates. Advertising the rebate in the existing channels is a low-cost affair that does lift the sales of the item, and the ratio of rebates collected to rebates offered is considerably less than 1.0. It works. In some cases, the rebate is an enticement not to sell the hardware, but to sell the service the hardware enables. A typical 'give away the razor but sell the blades' strategy. FOr example, rebates on cable modems are not funded by the manufacturer of the modem, but are instead funded by the cable MSOs who are trying to acquire the customers. The modem manufacturer gets increased sales, and the cable company considers the rebate money part of the cost of acuiring a customer (acquiring a customer is not free!), which they generally make back within X months of billed service. As for rebate checks being slow to arrive, I can only say from my experience (my employer has run hardware rebates as part of our marketing efforts for our clients) that the firms that do rebate fulfillment are, in general, way, way, way back on the technology curve and none too efficient. This is because they have to keep their services cheap (they are a per-transaction drag on the rebate's margin) and their own margins are pretty slim.
Fri 12 Mar | flamebait sr. | Also, for items where they are free after rebate, it could be that the manufacturer is offering the rebate and the company is selling it as a 'loss leader' to get you into the store to buy something else. i.e. you go in to get the floppies or CD-Rs and you come out with one or more other purchases that you were thinking of. It's also a cash-flow game. If you are sitting on some extra cash for 60 days before you pay it back, that is about the same as getting a loan from the people who purchased your product, except it doesn't show up as a loan on the balance sheet and not everybody ends up requesting their money back. It's good psychology. It helps them track who is actually buying it because nobody sends in the registration cards. So there's really a lot of different disparate things that make it a good idea to offer rebates.
Fri 12 Mar | Ron | At a previous company of mine we'd only get 30% response on the rebates (around $10 off a $40 software product). So as somebody else pointed out, its value is in be able to advertise a product for $30 but really sell it for $37.
Fri 12 Mar | Richard P | Rebates do get lost more than other mail... ...because they mail them as checks WITHOUT AN ENVELOPE. I got my mail in rebate. It was a $70 check printed on a postcard. Very ripe for stealing.
Fri 12 Mar | pdq | Considering that 5% of my mail is for the guy with the same address on a different street, i can guess that 5% of my mail is going to him. (yes, if it looks important i get it to him)
Fri 12 Mar | Bored Bystander | I tend to agree with the idea that mail in rebates are a marketing gimmick and that vendors probably pay off on relatively few of the low dollar value rebates (say, those $20 or under.) I wonder exactly what the fulfillment rate is in real life. A mail in rebate allows the store to advertise a net price that many buyers will not have the self discipline to reap. Costco has the 'best' rebate procedure I've EVER seen that appears to be a good faith effort to make sure that the consumer uses it. Costco prints the rebate coupon directly onto your receipt with an address to mail it to. All you have to do is sign it and put it in a stamped, addressed envelope with the UPC code.
Does good code matter? | Fri 12 Mar | Crimson
Fate Hani gives a very interesting (and hillarious) rant on this issue. Its not so much a question as to whether good code matters, but whether all the methodologies, frameworks, and other bells and whistles that are *supposed* constitute good code matter: http://jroller.com/page/fate/20040309#is_good_code_relevant I think he may go a little overboard, but I dont think he goes *that* overboard.
Fri 12 Mar | Sum Dum Gai | The bit about jobs being so boring that people are compelled to make them interesting by inventing frameworks is spot on.
Fri 12 Mar | Aussie Chick | I am glad someone else said that, I am sure I learnt about how to write a framework to write a framework at university. I always wanted to know how much of it was rubbish.
Fri 12 Mar | Julian | There are two ways of defining 'good code'. From the pragmatic black-box perspective of an outsider, good code possesses the desired functionality, few bugs, high performance, and allows rapid bug fixes and enhancements. In the alternative definition, a purist reads the source code and judges it be some standards of how code should be written. In my last job, where we had intense deadlines, the end-users were quite happy with my code while other coders criticized its implementation. In my current job, where I have a more reasonable schedule and I've learned the value of refactoring, my code does fairly well by both standards. It's best to disregard the purists who criticize your code while creating stuff that doesn't work correctly, is unmaintainable, or is way behind schedule.
Fri 12 Mar | anon | Sometimes, results are the only thing that matter. I used to manage a department and had a programmer whose primary job was to develop and maintain software for in-house electrical test systems. The programmer did a great job, and I gave the person a good annual review and raise. My boss, not a technical guy, just didn't get it. Everything the programmer did wasn't visible, so with cash flow tight at the company the boss overrode me a lowered the raise. The next year the programmer performed the same. But that year, the programmer wrote a small VB app that took a couple of weeks to write. The entry validation sucked, the readibility was awful, and the code just wasn't that 'good'. But it saved the people in one department a lot of time and fixed a major quality problem. Come review time, cash flow was even tighter that year, but the boss managed to bump up the raise a few % points over my recommendation. That's the difference between quality and perceived quality.
Fri 12 Mar | HeWhoMustBeConfused | This guy Hani writes to offend, but is usually deadly accurate in his comments. I first came across his writings when searching for people with similar (bad) experiences with Tibco software. I laughed for ages when I read the way he described the same things I'd been bitching about for months. Now I delight in watching him skewer JBoss and the rest of the Java mythology.
Fri 12 Mar | Tayssir John Gabbour | The thing with Java is you hit the wall of dinimishing returns quick. Because the language guards you from doing anything dumb... or clever. I feel for those guys on the messageboard. I remember how boring Java was, how much I hated programming and how it was just for the money. The problem is that a programmer is out to automate things. But usually the language itself isn't seriously programmable unless you step outside the system and develop tools that take the program as data. Not all languages are like this. I totally agree with this: 'Their work is simply....too....boring. All these frameworks and web doodahs are more often than not simply the product of a hopelessly bored mind desperate to inject some sense of meaning into their daily grind.' The people who write these frameworks seem to be Smalltalkers who wish Java/C# and XML weren't the 'hip new tools.' But at least Java was an enormously important language that ushered in other important languages like Ruby and Python.
Fri 12 Mar | anonymous | Java officially announced: May 23, 1995 First public release of Python: 1991 First ruby release: December 1995 (development started in 1993) If anything Java ushered in C#.
Fri 12 Mar | Tayssir John Gabbour | I mean in terms of mainstreamness. As I understand (and I could be mistaken because this was before my time), Python greatly benefitted with the influx of Java people who were fairly agnostic WRT garbage collection/refcounting, and who placed a premium on usability over bare-metal coding. I actually did hear Python predated Java. From reading old usenet posts, it seemed that people in some nonmainstream language communities felt like they were in some dark age where programmers had enormous biases against different ideas. For example, the 2nd oldest surviving language family had dynamic typing, but only now do people stop claiming it can never scale in an engineering sense. Complementary 'technologies' like Test-Driven Design that seemed to rise to popularity during Java, make people more comfortable with these ideas -- Bruce Eckel was famous for a while for declaring how TDD made Python's dynamicity preferable to Java's static typing. A number of influential authors switched; I don't know if this would've been possible had Java not made people question their beliefs, overpowered by newbies raised on Java.
Fri 12 Mar | anonymous | It seems to me that Perl had the biggest part in driving Python's acceptance.  A good number of Python programmers were formerly Perl programmers or do both.  I'm in the latter camp (I get paid to write Perl, but rather use Python after learning it recently) and it seems that just about everyone who knows Python knows Perl.
Fri 12 Mar | Ken | I have to say I'm surprised that so many programmers here agree with the assertion that programming is boring. Personally, I find it to be extremely interesting. Satisfying too, in the same way as if you built something concrete. I'm a heck of a lot better at building things with my mind than with my hands, so I thank my lucky stars that I live in a time where programming for a career is an option. WRT to the idea of writing 'good code' being worthwhile, I guess for me it's always been a matter of personal pride more than anything. I like to look at what I've done and admire it. At the same time, I've always felt that good code is more maintainable and easier to debug than bad code, so that justifies the extra time it takes to construct.
Fri 12 Mar | son of parnas | People who dump on frameworks are just pissed because their framework isn't popular. Cause their half ass hack of an attempt is surely god's gift. If you actually make anything you open your self up to critcism. Doubly so if you publish it. I wish more people had the balls to put their self out there instead of hiding behind an oh so easy cynicism.
Fri 12 Mar | Zealot | good code only matters in the long term.  most people only code in the short term
Fri 12 Mar | Woodentongue | The term 'good code' depends on context. This is a management issue. If you have a small, well defined problem and no requirement to extend functionality and no performance issues, then you can hack together the perfect, cheap solution and walk away. If your problem is not well defined, if your market is growing or changing, if you support 100 users now but don't know what the top end is, if your functionality is likely to drift, last for years, undergo technical earthquakes: then you need frameworks, excellent design, and long, long pen-sucking sessions. The art is knowing where you live on that spectrum, setting that expectation and managing the people who want to build the Petronas Tower for you to keep your dog in. So, good code matters, knowing what good code is matters more.
Fri 12 Mar | Clay Whipkey | Assuming you set these definitions as universal for good code: * it works (i.e. minimal to no bugs) * it is as fast as it can be (while still working right) * it is maintainable and extensible I would say beyond that, the rest of the definition can be set by your own shop. Your group will be the one supporting it, so you decide what syntaxt conventions to use, what approach to use, commenting style, etc. etc. As long as your group is all on the same page, and it meets the important things listed above, who cares what anyone else thinks. I feel a lot more pride in producing a product that has high value and quality than I do from the *skillz* it took to build it.
Fri 12 Mar | NathanJ | I don't think as fast as possible is a requirement for good code. If the program runs fast enough to be usable then that is good code - even if it uses a suboptimal algorithm. The other two definitions - bug free and maintainable make sense. I think a third definition is the 'value add'. I can write very bug free and maintainable code that doesn't add value. In this regard I think frameworks can be good. If many people are using/working on a framework then the framework can become well-tested and robust. I for one am glad that I'll probably never parse http parameters directly off a URL string again. That is what the frameworks are for. Likewise - the same process can backfire. Wide adoption of a framework can cause the standard to become bloated or broken in regard to simple applications. Also, many frameworks just don't add value. If it takes more lines of code to use a database query framework than it does to just write raw SQL then you might not be gaining anything.
Fri 12 Mar | Roland Rodriguez | When does good code and a well thought-out framework or elegant design matter?  When you least expect it, that's when.  I consider these things insurance for projects gone wild.  There are many ways to implement specific functionality.  The idea behind patterns and frameworks are to anticipate and meet change gracefully.  Given a well-seasoned developer, anticipation for change can be built into your system at the function level when the requirements/design phase has helped you identify potential areas of change.  Those unidentified sleeper cells of changes in mid-development or after release are the requirements that tend to cause the most significant schedule and budget headaches for solution development.  In my opinion, a good solution designer knows what he or she knows, is aware of what he or she doesn't know and creates a solution taking into account the unknown.  Therefore, when attempting to begin a development cycle on a project where the requirements were not allowed to be completely fleshed out (i.e.- political issues, budget, etc), make up your own requirements.  Identify all the areas of the solution where there are giant question marks and make your solution a flexible framework that will cushion the inevitable changes.  This type of insurance has saved me on multiple occasions and kept a leash on risky projects that had the potential to get away from me.
Fri 12 Mar | Me | I read the rant.  I wonder what the author does.  I didn't see. I wonder if he has spent his time just working on his own code.  I know that I've spent most of my career working on code written by other people. As a contractor I've often had to finish or fix bugs written by others. I was the first programmer hired full-time by a couple of guys who heretofore had outsourced all their work (about 200 websites) to DIFFERENT programmers. I was first programmer at an ad agency that had outsourced. I was then taken on to work on a CMS that everyone in the company HATED to work on. I will tell you this, good code does matter if things change.  Anybody who says otherwise is showing their inexperience. BTW, I find coding to be good work, not boring at all. If I encounter something that is boring I write a script to do it. What is bothersome is working on BAD CODE, not a question of boring. Now that I think about it I've told a customer that I simply will not work on his code base bacause it is so awful.
Fri 12 Mar | . | 'I don't think as fast as possible is a requirement for good code. If the program runs fast enough to be usable then that is good code - even if it uses a suboptimal algorithm.' Interesting. The majority of software project reworks or outright failures come about because of performance issues. It's always fascinating that grand visions of frameworks beats out performance so frequently, when in real world use performance is often the critical factor.
Fri 12 Mar | Noname | By "usable" I think it was meant "as fast as necessary so performance isn't a problem, even though it could still be faster."
Fri 12 Mar | Clay Whipkey | Yes, the issue of performance can actually make an interesting impact. Maybe at first, if a programmer is used to a style that is inefficient as far as performance, it takes time to learn and/or write the more efficient code (and maybe not). This might end up costing some in the development stage. BUT... if you produce a product that has demands an unnecessarily higher overhead in system requirements, you either turn the potential customer off (I don't want to upgrade my memory just to run this software) or pass additional cost onto your customer (I have to pay an extra $50 for more memory so I can run this software). I would think it would be worthwhile in the majority of cases to spend the extra development time writing the fastest code for the functionality you are delivering. A faster product will not only be easier to sell, but it will bolster the reputation of the dev. co. On the subject of 'value-add', I would think value is really more of an attribute of good design, not good code. If you are deciding on the value of a feature in the coding stage, you probably have bigger problems than defining good code.
Fri 12 Mar | Chris | It's all a bunch of rubbish.
Fri 12 Mar | Eddy | here is a nice comment on this piece http://fishbowl.pastiche.org/2004/03/11/frameworks_good_code_and_the_opposite_of_yagni
Simple content management for PHP | Fri 12 Mar | PHP ain't so bad
Im overhauling a web site with a new content management system. It has to be in PHP and I dont want to make it from scratch. I dont have terminal access so I can do anything really fancy. The system needs to be simple, open source (Im probably going to have to change some things), and database independent. Suggestions? Thanks a lot!
Fri 12 Mar | Gavin van Lelyveld | http://www.opensourcecms.com/
Fri 12 Mar | Just me (Sir to you) | Mambo is pretty decent. http://www.mamboserver.com/
Fri 12 Mar | tapiwa | http://www.drupal.org
Fri 12 Mar | tapiwa | Can you let us know a bit more about what you want to do? There are literally hundreds of CMS systems out there. All with differenct strengths. How big is the site going to be? How many people updating content? How often content is updated? Do you want one with a Windows client for updates? etc etc etc Check out http://www.hotscripts.com Look in PHP scripts, and specifically the Portal Systems, and the CMS categories. hope this helps
Fri 12 Mar | Fred | In addition to Drupal and Mambo, take a look at Pivot, which is also open-source but doesn't require a database. Might be good enough for what you're trying to do. http://www.pivotlog.net/
Fri 12 Mar | Thinking Hard. | PhpWebsite is about as functional and easy to use as they come. Try out their demo and see for yourself : http://phpwebsite.appstate.edu/demo/0.9.x/ Here is a good resource for PhpWebsite addons and documentation. http://www.phpwebsitemanual.com It's GPL'ed.
Data generation | Thu 11 Mar | Nigel
Im looking at a relatively short contract for doing some minor ERP integration work, and its a bit out of my usual experience. Is there an application for generating a whole pile of data that I can use for testing the database? There is about 15 tables, with standard customer/contact tracking, manufacturing, sales tracking, etc. Id like to just throw a few hundred customers in, with realistic phone numbers, etc., and have a little bit of customizability in regards to manufacturing and sales data. Is there anything like that out there? I was sure there would be, but google isnt giving me much. Thanks,
Thu 11 Mar | DJ | I did something like that (in Access mind you) I created a First Name, Last Name Middle names tables. I then filled them in with fictious names. Then I used a cartesian join to produce every combination and appended to another table - for example it might have produced 10,000 combinations. Then I created a simple function that randomly picked from the full sample data to produce a nice subset of test data that was inserted into the test system. You could do the same with company names, addresses and phone numbers. YMMV
Thu 11 Mar | Nigel | Sounds like a good start. I was hoping there would be a tool that would also allow specific distributions for the data, such as sales. For example, I could throw in sales data where quantities and dates were distributed on a slight exponential curve. Probably not necessary for testing, but it would look good on sample reports that I'd be throwing together for the Client.
Thu 11 Mar | Kyralessa | Sounds like a market niche to me.
Fri 12 Mar | Nigel | I've done something similar in the past, but it was much more specific. You could specify a poisson distribution, or whatever your heart desired. As well, each text field had a length specifier and length distribution, so that you could specify 80 characters max for a last name, with a mean of 20 chars, for example. In this case I was (or am) just so sure there was (is) something out there like this already.
Fri 12 Mar | Greg | You could take a look at http://www.upscene.com/ at their Advanced Data Generator.
Fri 12 Mar | Nigel | Thanks Greg.
Fri 12 Mar | Ron Porter | http://www.interbaseworkbench.com/
Fri 12 Mar | Andrew Hurst | http://www.quest.com/datafactory/
What configuration is suitable to learn C#? | Thu 11 Mar | LI
Can somebody advise what would be a best configuration of PC to learn C#? (not just that, but any .NET) It should not be too advanced and expensive. The one with all nesessary features , that allows to run application with average speed. I have an old machine with NT 4 , but I need it for different purposes and will be too slow anyway even if I reinstall OS. Thanks.
Fri 12 Mar | Nick | Windows 2000 or XP Pro.  Don't go XP Home since you won't be able to run IIS.
Fri 12 Mar | Robert Jacobson | For a learning setup, you don't need the latest high-powered computer. Visual Studio runs fine for my on my P-4 1.6 Ghz notebook with a slower hard drive. You could probably get by with even a 1.0 Ghz machine. (Of course, the faster the better.) There's no particular hardware that you need. Visual Studio can take up a lot of screen real estate, so a larger monitor is good. Otherwise, a basic desktop or notebook is fine.
Fri 12 Mar | Sum Dum Gai | RAM is important. I've used VS.NET on a 600MHz machine and it's still quite usable on a machine with 512 megs of ram. However, drop down to 256 and you'll be rather displeased with the performance. So the CPU isn't really an issue, anything under 5 years old is workable. But make sure you have enough ram.
Usability improvement of an SQL tool | Thu 11 Mar | karthik
How useful would this feature be?. We often keep typing large number of queries such as SELECT EMPNO,ENAME FROM EMPLOYEE WHERE ENAME=SOMENAME I plan to implement Intellisense to improve the usability and make it real fast. (Now, whether it can be defined as usability is probably controversial). Intellisense is automatically sensing what the suer is typing and giving suggestions, like Visual Basic. Anyway, on typing FROM, if a list pops up with all the table names and on typing WHERE, another list pops up with all the column names, how useful will this feature be? Also i plan to add a proprietory syntax. When the user types and executes the statement USE EMPLOYEE Then he types, SELECT, the list will show all columns belonging to EMPLOYEE. The USE command is because when he user types SELECT, i wont know which table he wants to select from. In sum, the user types USE EMPLOYEE; <> SELECT <> Would it be a killer feature?. The implementation, even for ANSI SQL is pretty challenging. Just wondered whether this would be a killer feature that would make people like my freeware program. Thank you for your suggestion. Please, your suggestion is very important for me to decide how deep i want to go.
Thu 11 Mar | karthik | Also, if some guru could comment a little bit about the implementation challenges, it would be greeeat!
Thu 11 Mar | eclectic_echidna | So far, you have the easy part how about when writing select * from tablea inner join ___ Now at the ___ I want to see a list of tables that have defined relationships so when I choose table b then the stuff in 's would come up. select * from tablea inner join tableb ''on tablea.id = tableb.fk'' And finally. save I have a query select firstcol, secondcol, max(thirdcol) from table group by ___ ___ should fill give me the option to fill so it turns out like firstcol, secondcol, select firstcol, secondcol, max(thirdcol) from table group by firstcol, secondcol Impossible I know, but you asked...
Thu 11 Mar | FullNameRequired | careful about showing the entire column list for a table, some tables are pretty big. If you wanted to be smart about it, show only the 5-10 most commonly used columns in the first popup, but then as they type the first 2-3 letters narrow it down to those columns starting with...etc
Thu 11 Mar | Rhys Keepence | What you really want is something like the live templates feature of IntelliJ IDEA. That would really kick arse. Live syntax checking would also be great.
Thu 11 Mar | Wade Winningham | Check out a demo of mssqlxpress at http://www.mssqlxpress.com which has what you're trying to do. Maybe you can get some ideas from it.
Fri 12 Mar | René Nyffenegger | TOAD, which is a tool to administer Oracle databases, has such a feature. I HATE IT every time it pops up. But then again, I usually know what fields are in a table and how they are called - and am a fast typer.
Fri 12 Mar | Patrik | >I HATE IT every time it pops up. Naw...Its sometimes annoyning in SQL if you know the datamodel really well, but pretty useful if you do use packages. The publicly callable procedures gets listed as well, with their parameters and types - very useful.
Fri 12 Mar | Andrew Hurst | The part the bugs me about TOAD's intellisense, is that its wrong sometimes. For instance, the following is an example query I execute often (though more likely in a join context): select p.first_name from people p where p.peop_id = 36367; I only used the abbreviation p, because if I were to join it'd be handy to have a short name for the table. TOAD remembers the abbreviation that you use often, and can suggest columns based on that. The problem comes up where I use the same abbreviation in another query, for a different table. select p.price, p.name from potted_plants p where price > 10; After typing the first 'p.' TOAD hangs for a few seconds while it thinks up responses, then gives me a list of people table columns. *very* irritating, mostly because its slow.
How to start Java programming for mobile phones? | Thu 11 Mar | jm
I am a desktop applications developer. I use mainly Delphi and Visual C++ to work on products. Id like to start writing some Java applications (midlets?) for mobile phones. Since I use Delphi in my everyday work, Im used to a powerful IDE, and I usually expect such a thing. What do I need to download in order to write some apps for my mobile phone? Id like a good IDE, with integrated help, debugging, etc. Thanks!
Thu 11 Mar | Koz | IBM's websphere studio has a mobile edition. However be prepared to sell your children. Have a look at eclipse. It's the foundation for Websphere studio, but free. You'll have to do the launching of emulators etc. yourself but you'll save enough money to buy a couple of phones.
Thu 11 Mar | Richard P | Step 1) Obtain a large mallet. Step 2) Put your most sensitive body parts against a hard surface. Step 3) Have a friend bang away full-tilt for 2 minutes. After that, reading the MIDP documentation won't seem so bad. Okay, I'm exagerating a little bit, but not much. MIDP development is a PITA. It's a case where you first have to understand it all before you can accomplish the slightest little thing. Their goal was write once, run anywhere EXTREME!!!111 As such it's abstracted to hell and back. It's nothing like Delphi.
Thu 11 Mar | HeWhoMustBeConfused | Argh! Please don't! The idea of bloated, slow, ugly applications taking over my handphone just scared me wide-awake.
Thu 11 Mar | Robert Jacobson | I've also been thinking about playing around with Java for mobile devices. I'm strictly a .Net developer right now, and I'm a bit perplexed by all of the different Java variants. From what I've read, J2ME seems like the best way to develop for handhelds. Some of the Palm devices are marketed as including J2ME, but others are not. Is it possible to use J2ME applications on these other Palm devices as well? (E.g., if the users install MIDP or some other VM?) If not, is there another way to develop Palm applications using Java?
Thu 11 Mar | Tom Vu | Nokia offers a SDK that adds to J2ME. Also, nokia will offer a python interpretor with their phones soon so you might not need to go the java route.
Thu 11 Mar | x | Development for mobile phones doesn't seem to pay well. It's low price stuff. For commercial work you have to get your games validated by the carrier and pay a fee for it. Also, the phone companies are running lots of 'competitions' to get people to write stuff for free. (Of course, they don't give their phones away. An old story.)
Thu 11 Mar | MT | JBuilder is great for J2ME. Good visual design tools and its easy to integrate the different manufacturers toolkits. Nokia has a lot of great documentation on their site at www.forum.nokia.com.
Fri 12 Mar | Arron Bates | Robert, Apps written in Java for the palm pilot are all MIDP. Change the VM, and it'll most likely be a MIDP VM. ie: the new IBM VM is MIDP, as well as the old Sun provided one. There are similar-to's, like SuperWaba, but it's not directly a Java thing. You can write in Java syntax, but it's not a Java distributable.
Fri 12 Mar | Kevin | I've developed some J2ME games for my sprint pcs phone. I use Forte for Java with an SDK from sprint. The SDK is free, and Forte was free when I downloaded it, I think its now part of Sun ONE studio and I'm not sure if its free anymore. Do a google search for your phone and 'j2me' you should come up with some stuff. Basically you will download and install some kind of SDK for your phone. Sprint phones are different from verizon, tmobile, etc. The SDK will contain some libraries for your phone like how to make it play sounds and vibrate, and it should come with an emulator, some docs, and sample apps.
Fri 12 Mar | Chris Kessel | I've actually looked at J2ME for a class research project this term, specifically sending SMS messages. J2ME comes with an emulator, or at least the Wireless Toolkit does. It also comes with KToolbar to manage your projects. Simple to build and run. Eclipse has an EclipseME plugin for J2ME. EclipseME is pretty lame though, just launching the emulator. I use IntelliJ and it was pretty trivial to edit the code there, then click 'build/run' in J2ME's Ktoolbar project manager. I didn't write any games, or GUI really (again, my focus was messaging), but J2ME was pretty simple to use. It also came with a number of sample applications, so it was easy to get started.
Fri 12 Mar | i like i | Java apps on mobile phones are best written in a normal text editor. I use jedit, but you might prefer notepad or what not. Any embedded programming, including J2ME, is best done with slowly and surely, rather than RAD. If you want RAD, and you are doing business apps, you might prefer playing with Appforge.
I've been blogged... | Thu 11 Mar | Not sinking to the same level
By a strange coincidence, I just ran across the blog of a guy who used to work at the same company Im still at. Specifically, a page that was about me. Now Ive read plenty of threads here that are like, Theres this guy at work... and sometimes people joke about how that guy might be somewhere blogging about you. Now it appears its really happened to me, except that Ive never blogged about the guy or had any problem with him whatsoever. But now I find hes made three posts about me, two of which were rants about my eating habits, and one was a rant about my lack of interest in using his preferred toolset in place of one which was already available and in use, not to mention snooty comments about my preferred programming language. At first I thought it was just a big coincidence, and that maybe this was somebody writing about incidents that resembled incidents I was familiar with. But then I did a whois on the site, and connected the dots to find, yeah, this was a former employee. Weird. So, I keep being tempted to like post on the guys site, except that that would be silly since the posts in question are over a year old, and it seems like it would be unprofessional to sink to his level. If he still worked for the company, Id also have been tempted to point out to HR (or at least his supervisor) that I dont appreciate people from other departments whining about my departments choice of tools to the world at large while spilling details to the net about internal projects. Ah well. I guess I just wanted to vent. There probably isnt a damned thing I couldve done about it then or now that wouldnt have made things worse. Indeed, if I hadnt run across the site at all, I couldve just continued on remembering him as a friendly, competent guy who I had a few short conversations with on that particular project, and if Id ever run into him again Id have been civil, and even friendly. Sheesh. Okay, let the unrealistic revenge-fantasy advice commence. :)
Thu 11 Mar | FullNameRequired | if he didn't mention you by name, then suck it up big guy.... why should you allow your opinion of him to be affected by his opinion of you?
Thu 11 Mar | I want to see the car crash ... | You can't post something that juicy and not link to the blog ...
Thu 11 Mar | Not sinking to the same level | He didn't mention me by name, but he was specific enough that other employees of the same company wrote comments on the posts. When I rant about something, I don't do it in a way that allows such trivial identification of the person(s) involved, and definitely not the company involved. And I describe things in general terms that make it sound like it could be anybody anywhere, whereas this guy literally has posts describing what I had for lunch on different days and what he disliked about it! (And no, I'm not gonna provide a link. That would be sinking to his level.. duh. I'm sticking with the theory that I can maintain a thin veneer of moral superiority by making it as difficult as possible for anybody to be really sure of who I am or who he is.)
Thu 11 Mar | Aussie Chick | >You can't post something that juicy and not link to the blog ... Absolutely agreed!! It is an interesting thing though isn't it. I mean I doubt you would have much legal recourse, even if he did post your name (unless he was being seriously defamatory). Surely we all have a right to have a whinge about someone, something, some tool. But I agree, it wouldn't be nice finding such a negative blog about yourself. I think fullnamerequired is right, the best you can do is 'suck it up' and be thankfull he didn't use your name. I wonder if he did use your name, and a potential employer googling your name came across it....things are so much more complex then they used to be.
Thu 11 Mar | Aussie Chick | On the same note. I have a blog, and my full name is used as the title, so after reading a few posts there is no doubt that I am who I am. It is doubtful that anyone I know will ever stumble across this blog, but who knows maybe a potential employer will, then hire me but keep an eye on the blog all the same. I say all kinds of stuff in it. I don't think it is out and out mean, usually just a rant, and I never name names, but again it is obvious who I could be talking about. Maybe there is just something wrong with keeping diary-like information online, and yet I enjoy it, I do keep a 'work-from home/university student/startup' theme, and alot of the other things just become on topic. It doesn't seem wrong, but I guess who hasn't had a whinge in the lunchroom about the boss. Is more 'wrong' then that?
Thu 11 Mar | Almost Anonymous | 'I have a blog' Found it. ;)
Thu 11 Mar | Sum Dum Gai | The great thing about the net is that you have a right of reply in these things. Start your own webpage and respond to the allegations if they really bug you. But really, does it matter? So he wrote some stuff about you. You yourself said you had to do a bit of work to track down and confirm it was really about you. What's the chances of some random person finding out? Slim to none. Revenge seems a bit over the top anyway. Out of the three posts, we have the two eating habit ones: you didn't deny them, so I'm assuming they're true, and hence not in need of revenge. The third is just an op-ed piece about your choice of tools. Big deal. There are thousands of web pages that praise tool X and say that people should use it instead of tool Y. It's nothing personal about you, it's about the tools you're using. Don't take something personally when it isn't, life's easier that way. :)
Thu 11 Mar | Bored Bystander | I'd confront this guy and let him know that you made him. The impression I get from these discussions on blogging about coworkers is that you're supposed to either create an employment policy fiasco and get the person terminated, or you are supposed to blog in retaliation. I think either is disproportionately risky in terms of possible backfiring. If you are recognizable to anyone other than the blogger from the description they post of you, then this kind of thing is just plain rude. I handle most rudeness 1 on 1, not by going and telling the local authority figure. I'd handle it the way I would hand someone shoving me in public or mouthing off at me for no reason. Confront the behavior and demand cessation. If that didn't work, then you do have more risky alternatives.
Thu 11 Mar | not Elephant | I'd find the other 4 people that read his blog and tell them he's full of it.
Thu 11 Mar | Manly Man | Sheesh. Be a man. Suck it up. Don't post back unless you have something incredibly funny to say that defuses the whole situation. > could've just continued on remembering him as a friendly, competent guy who I had a few short conversations with on that particular project, And you still can!
Thu 11 Mar | Not sinking to the same level | Actually, the tools rant was one of the nicer ones; he actually used the word 'competent' in reference to my team, and by implication, myself. In contrast, the rants about my eating included a statement that implied he would like to see me dead and out of the 'gene pool'. (The worst he said about the tools thing was to accuse my team of being apathetic for not wanting to invest company resources in something that wasn't an actual requirement. But I digress.) In any case, I don't argue for the most part with the portions of his posts that deal with the facts of the incidents. But his online editorializing, when I was right there to talk to in person if he had a problem... that just ticks me off. If I'd had a problem with him, I'd have told HIM, not the rest of the freaking world. Further, as best as I can tell, the issues he had with me are based entirely on my failure to be like 'everybody else'. I apparently had the sheer unmitigated gall to not only have different taste in food and programming languages, but also lacked the good taste to hide my preferences from persons with attitudes like his. Sheesh. The irony, I'm finding, from reading his blog, is that unbeknownst to each other, we both promoted the same unpopular technology for a particular purpose, for similar reasons. (Except it appears that my arguments for it carried the day, as I actually had some specific arguments for why the technology would be more suited to our customers' needs, as opposed to just ragging on the popular technology.) And, as I find out from reading his blog, his eating habits aren't particularly mainstream either! (Pot, meet kettle.) Amusingly, the more I read his blog, the more I find things that we AGREE on about work or the world in general, despite some definite showstopper differences of opinion. Funny the things you can learn, huh? As for identification, the only reason I had to do any tracking things down was because it was my first visit to his blog. There were plenty of pages that listed the company name, I just didn't enter the site via one of them. All I did was get a whois to find out his real name (which also was on the site, but it was easier to get with whois), and then look him up in an employee database to make sure he was an employee, because I didn't recognize his name right off. (I had, after all, only had one or two conversations with him in his whole time there. He left the company last year; I'm guessing voluntarily but who knows.) Had I seen his resume on the site, or one of the posts identifying the company, I'd have known right away who he was, and anybody who worked in the same part of the facility would've known who I was. And apparently did, because there was at least one other person from the company who posted comments, unless the guy likes to comment on his own posts under pseudonyms. So it's not merely that I'm identifiable from his posts -- it appears I was in fact identified. True, not by a 'random person'. But oh well. I'm discovering his rants section has many more nasty things to say about many other people who I still work with (or at least pass by in the halls each day), so I guess I shouldn't feel singled out for his special rage. Anyway, what happened to all the wonderful fantasy revenge advice people used to post here? I already know what the sensible and responsible thing(s) to do (and not do) are; I posted this for help in therapeutic venting. :) P.S. to the guy I'm talking about: You see, THIS is how you rant about a fellow employee online. You say 'a technology' or 'a language' being used for 'a reason', rather than naming the specific things involved. You don't name the freaking company. You don't describe the application, the meetings, or the contents of the people's lunches. Thank you.
Thu 11 Mar | Chris | It sounds like you need to change your diet and start using a different toolset. You must be extremely sensitive if you can't handle someone criticizing what you eat. I'm not sure that is something worth 'getting revenge' over.
Thu 11 Mar | Bored Bystander | >> rather than naming the specific things involved. You don't name the freaking company. You don't describe the application, the meetings, or the contents of the people's lunches. You *do* if you're a narcissistic blogger developing a 'following' by trashing people that you deal with in real life. Like your 'friend'. Sorry. I have a problem with 'masturbatory' blogging, the twits (like this guy you originally posted about) who vent online and create their own little personality cult.
Thu 11 Mar | x | I would add replies at the appropriate places in his blog, and also point out to him areas where you dispute his interpretation of events. Also, you shouldn't automatically dismiss the possibility of a libel suit. If you're identifiable and defamed, there's no reason why a suit couldn't be mounted. Obviously it would depend on how badly you were defamed and other things appropriate to the jurisdiction you're in. People get new swimming pools out of careless paragraphs in books all the time.
Thu 11 Mar | DJ | Aussie Chick - you have been outed (CT) :-) Hope your meeting on Friday with the Librarians goes well.
Fri 12 Mar | Aussie Chick | Hey. I was wondering who did the search the google search for RefMate. The meeting got called off two hours before it was supposed to go ahead, has been rescheduled for Monday. I only got 3hours sleep last night I was so busy.....
Fri 12 Mar | Sum Dum Gai | 'Also, you shouldn't automatically dismiss the possibility of a libel suit. If you're identifiable and defamed, there's no reason why a suit couldn't be mounted. Obviously it would depend on how badly you were defamed and other things appropriate to the jurisdiction you're in.' I'll give you one reason: to sue over this sort of trivial bullshit is what's wrong with the legal system. Boo-hoo, someone hurt his feelings, and now people are telling him to sue over it. Get over it! Didn't you people learn in kindergarten 'sticks and stones may break my bones but words will never hurt me'? I think it's sad that someone can't even express an opinion without people crying lawsuit. Whatever happened to people just working their problems out for themselves, without getting a judge involved?
Fri 12 Mar | Stephen Jones | The possibilities of winning a libel suit in the States on something like this are near zero. I doubt if you'd even win it in the UK, which is Paradise for the rich libel-suit-wielding bully (maximum compensation has now been fixed at around $200K, which doesn't normally cover legal costs, so ordinary people genuinely defamed by big media organizations don't normally stand a chance). How about trying to grow up instead?
Fri 12 Mar | Kyralessa | I am dying to know exactly what he said about your eating habits.
Fri 12 Mar | Not sinking to the same level | Update: I showed the site to some folks at work, and we all had a good laugh at the other bloke's expense.  Mission accomplished.
Suggestion for simple, free discussion board? | Thu 11 Mar | The real Entrepreneur
Hi, Can anyone suggest a cheap (or free!) simple discussion board thats easy to use? If found a few. Best one so far is runboard.com Surely theres something better out there.
Thu 11 Mar | The real Entrepreneur | Oh... and a couple of things I'm looking for: - Visual threading, so you can see the 'tree' of the discussion. -Ability to see the thread tree while viewing an article/message. Thx!
Thu 11 Mar | The Not-So-Philosopher | I have used phpBB for a number of sites that I work on. http://www.phpbb.com Very easy to use and setup. I have successfully used it on $5-10 per month web hosting services (they just need PHP and MySQL support) for years.
Thu 11 Mar | K | How about scoop? http://scoop.kuro5hin.org/
Thu 11 Mar | The real Entrepreneur | Wow that was fast! Hmm... maybe all of JoS will just be wired into one big matrix. Scoop looks cool, but more complicated than I need. Also, I'm looking for something that is hosted. I just want to do some quick collaboration. Don't want to get caught up in the complexity of the tool.
Thu 11 Mar | Li-fan Chen | Dave B had a thing that worked like fogcreek's JOS forums, but he isn't hosting the zip files anymore.
Thu 11 Mar | Sam Livingston-Gray | There's a PHP-based clone of this board at: http://www.johnsadventures.com/backend/DiscussionForum/APHPDiscussionForum.html No threading, though. (=
Fri 12 Mar | $!/|/|0|=@ | forum.onecenter.com
Good places to buy configurable PCs online... | Thu 11 Mar | Crimson
Any good ideas?  Im currently being screwed over by a Dell order, so theyre out.  Ive heard bad things about Gateway too (though they were good when I purchased from them about a decade ago).
Thu 11 Mar | Joe Hendricks | Dell's been terrific for me for 10 yrs now.  You might give them another chance.
Thu 11 Mar | Junkster | Lots of people like http://www.abspc.com I'm still happy with Dell, though.
Thu 11 Mar | JWA | Other than our Macs we only use HP PCs and laptops and have had VERY good experiences with them for both sales and support. Their support has actually been the best I've ever seen, in fact. You can custom configure on their site. --Josh
Thu 11 Mar | Crimson | Junkster, Usually they've(Dell) been good for me too, but I've been waiting for 6 weeks for an order to go through and they just called to tell that it's going to take *at least* another 3. So they've kind of forced my hand here.
Thu 11 Mar | Robert Jacobson | + 0.5 for ABS.  I bought a PC from them several years go, and was generally satisfied.  Customer service was OK, not great.
Thu 11 Mar | Chris | Alienware: http://www.alienware.com/
Thu 11 Mar | Happy | http://store.apple.com :-)
Thu 11 Mar | Philo | Alienware doesn't answer their email. What kind of PC? I've been shopping Monarch Computers, which has a slew of good reviews all over the 'net, and really nice configurators. *And* the time I saved a configuration as a quote, I got an email the next day from one of their techs validating the configuration. However, I haven't ordered from them yet, so can't give a full-up review. Philo
Thu 11 Mar | Crimson | I decided to go with HP. It's been so long since I've shopped for a preconfigured PC for work from someone other than Dell, I didn't even consider HP. I got a pretty decent system at work for a pretty decent price. Thanks for the help guys. Crimson
Fri 12 Mar | Clay Whipkey | I'll be in the market for a pretty much top of the line laptop in the near future. I'm leaning towards Alienware, since they are the only laptop manufacturer I know that has upgradeable video cards. I'm assuming a lot of the suggestions here are focusing on desktops. Anyone have any hidden gems for laptops?
Need to run a Windows application remotely | Thu 11 Mar | Fred
Since itd be too costly to rewrite a whole application for just a couple of customers who need to run our stand-alone app remotely... Im thinking of those three solutions: 1. A good remote control application, either NetSupport Manager or Radmin (but the latter seems out of business; their web site hasnt answered for several days now) 2. Windows Terminal Services 3. Citrix metaframe on NT Terminal Server 4. Other? Could anyone with good experience with this kind of tool tell me which to choose, considering the two locations are on ADSL (1024/256Kbps where the app will run, and 512/128Kbps from where the user will drive the app), and the customer is running Win2K servers at the main location? Thank you.
Thu 11 Mar | K | How about VNC? http://www.realvnc.com
Thu 11 Mar | Christopher Wells | > remote control application I've used pcAnywhere. 'Symantec pcAnywhere, the world's leading remote control solution*, ...' *Source: 2002 IDC Worldwide Remote Control/Remote Access Software Product by Vendor by Market Share report
Thu 11 Mar | Fred | For the record, I just spend half a day checking the different remote apps that were recommended here in past discussions, and the vast majority either sucked (web based, too slow, ugly video), where not available for trialware, or were too expensive. VNC has to be the worst when it comes to performance, so there's no way a customer will work 8 hours a day through this thing. PCAnywhere: I can't find how to download a trial version on this page: http://nct.symantecstore.com/0001/pca11_trialware.html Anybody with good experience with TS or Citrix?
Thu 11 Mar | RocketJeff | I second the suggestion of VNC, but take a look at the various VNC programs before deciding on one. Besides RealVNC there is: http://ultravnc.sourceforge.net/ http://www.tightvnc.com http://perso.wanadoo.fr/samfd/esvnc/ http://www.btinternet.com/~harakan/PalmVNC/ - A VNC Viewer for the Palm OS! Don't laugh it works. http://www.uk.research.att.com/vnc - the original VNC (the original developers now work on RealVNC, however) As to PC Anywhere, I try to stay away from it. Depending on the system, I use VNC, PC Anywhere, Citrix and Terminal Services to connect to work for support duties. Bwtween VNC and PC Anywhere, VNC is the winner - hands down. Citrix and Terminal Services are nice too, but looking at cost/benefit/support issue, I still like VNC better.
Thu 11 Mar | Wayne Earl | PCAnywhere, VNC, gotomypc, and CarbonCopy all function as single user software - that is, they work as if a single user was sitting at the desktop, using the computer directly. As such, the computer would be unusable for other work (you actually see what the user is doing directly on the monitor) Both Terminal Services and Citrix would be the better solution. Actually, Citrix is the best solution, because it is higher performing then terminal services, and can deal better with the higher latency you will see on a DSL line. Citrix is particularly better if your client is not using XP Professional, as there are significant differences between the remote desktop client with XP and terminal services clients on 95/95/Me/NT/2000. It is more expensive, but in my mind, it is the best tool for the job.
Thu 11 Mar | QA911 | Check out: http://www.remoteworkplace.com (secure VPN solution) Try the demo link where you can test drive some MSFT applications that reside on their server. I don't work for them but a friend of mine does.
Thu 11 Mar | Wayne Earl | By the way...I do a lot of consulting work with companies that have distributed offices. If you want to discuss things further, feel free to email me through the forum.
Thu 11 Mar | Fred | if PCAnywhere is slowed than VNC, this is scary :-) Wayne: Any idea about the price for a single user for Citrix or TS, and how easy it is for a complete newbie to those things it is to set up?
Thu 11 Mar | Christopher Wells | > PCAnywhere: I can't find how to download a trial version on this page It seems you click on the 'Buy now' link: their idea of a 'trial' is that you pay $20 for a 30-day license.
Thu 11 Mar | Wayne Earl | Single user licenses for Terminal services are relatively cheap.  For Citrix, you need to purchase a 5-license pack with the media. Prices differ - you want to go to www.citrix.com, where they will refer you to a local reseller.  Citrix XPs (the standard edition) should be fine for a single server with little load.
Thu 11 Mar | Fred | Thx Wayne. I'll see how to set up Citrix or Windows to act as Terminal Server (I assume "Terminal Services" means the same thing?), and give that remote control app a try.
Thu 11 Mar | Canuck | Fred, What kind of connection are you using VNC with? We have use it for remote support of our clients for the last two years over ADSL with no problems.
Thu 11 Mar | Fred | Standard 512/128. I tried RealVNC, UltraVNC, and TightVNC. The former seems OK, but all feel pretty sluggish, ie. I certainly wouldn't work 8h a day through this thing.
Thu 11 Mar | Herbert Sitz | You might try 'Remote Office', some fairly new remote terminal software that's made available to Delphi developers for incorporation into Delphi apps, but which also has fully capable prepackaged versions. I've heard good things about it. You can try it out for free at: http://www.deltasoft.hr/remote/
Thu 11 Mar | Sassy | I use PCA, / RDP / TS / CITRIX and TightVNC on a daily basis on the LAN and via residential DSL over VPN. * PCA is utter and complete crap. Don't bother. there is a flaw in that software in which it will overwrite the default MS Login screen (MSGINA / AWGINA) It killed one of my machines. * VNC is decent but too definitely too slow. The only plus is that it's a bit lighter on system resources than the others. * RDP / TS / Citrix is the way to go, we moved all our remote machines from PCA to TS and couldn't be happier.
Thu 11 Mar | Jeremy | Windows XP has built-in support for RDP, so you wouldn't need to install Terminal Server on Windows 2k.  And the client is free.  I don't think it's encrypted though and neither is VNC.  But you could tunnel over a VPN for that too.
Thu 11 Mar | Motown (AU) | I'll throw in for TS (or Citrix). VNC, PCA etc feel 'average', to put it mildly, if you're used to TS. BTW it is ordinarily encrypted.
Fri 12 Mar | KayJay | http://msdn.microsoft.com/library/default.asp?url=/library/en-us/termserv/termserv/remote_desktop_web_connection.asp Windows Terminal Server and Remote Desktop Web Connection. Pretty fast, in my experience. (Being ActiveX, its as good as a 'client'.). You can roll out your own access point over the web, and your clients can use your application from anywhere. I use it heavily to access my colo box, both from work and home and on the move. Regards KayJay
Fri 12 Mar | Just me (Sir to you) | The RDC client is a free download and works on Windows 2000, Windows 95, Windows 98, Windows ME, Windows NT, Windows Server 2003, Windows XP and Windows XP Media Center Edition. It works extremely well, even over 'bad' connections. I have used VNC also, and really there is no comparison. VNC feels like stone age tech compared to RDC. http://www.microsoft.com/downloads/details.aspx?FamilyID=a8255ffc-4b4a-40e7-a706-cde7e9b57e79&displaylang=en
Fri 12 Mar | Fred | Thx everyone for the tip about TS :-) For those interested, XP comes with the TS server. All you have to do, is activate this part on the XP host, and download the RDC client here: http://www.microsoft.com/windows2000/downloads/recommended/tsac/
Fri 12 Mar | Karl Perry | Fred, I've rercommended/installed/used Terminal Services at several clients and at my own workplace, starting with Win NT 4.0 Terminal Server Edition and now using WIn2K3 TS. It works very well. For what you are trying to do, that would probably work great. TS is a dumbed-down version of the Metaframe technology that Microsoft has licensed from Citrix. Citrix gives better load balancing, server farming, remote printing, and the ability to copy files between the host and remote computer (I can see an option to connect local drives in RD setup, but I don't see how it works). Citrix also costs about $5,000 to buy on top of your Windows Server license. With Win2K and Win2K3, TS is built-in and licenses are about $100 each. For your needs, I don't see that Citrix will be necessary. HTH,
Fri 12 Mar | Fred | Thx Karl :-) I'm so glad we seem to finally have found a solution, short of rewriting the app to make it low-latency-compatible. We'll try to test the connections over the two ADSL lines this week.
Novell interview | Thu 11 Mar | pds
http://www.adtmag.com/article.asp?id=8957 Most of the time in an interview, you have to sift through the marketing-speak to get to the meat. Here, the guy lays everything out there. Some interesting quotes: About losing market share: --- We’re not dropping NetWare. That’s always been the issue. You’ve got to be sensitive as to how you say it. NetWare is on a 13% decline per year and it’s been going that way for years. We don’t try to hide that. That’s the reality. So we have to do something about it. Adding features to it doesn’t improve that. It doesn’t stop that from happening. What we just did might. It’s early to tell. But that was the goal -- to try to stabilize that. --- About moving the corporate HQ: --- Q: Your headquarters are in Waltham, Mass., now but we haven’t been writing about that. A: We filed our 10K in February, and part of the requirement that the SEC had -- this is all part of the new governance rules -- is that wherever the majority of the executives are should be the corporate headquarters. We didn’t make a big deal about it. We were proactive about it. We called the politicians and talked to them. We didn’t ask everyone to get in their car and drive to Boston the next morning. There are 2,000 people in Utah, and it’s going to stay that way. It’s just more of a formality. --- You dont usually get interviews this candid, this raw. I already like this guy, whoever he is.
Thu 11 Mar | Good idea | I'll bet his true hope is to get hired by Novell and then stolen away by Microsoft.
Fri 12 Mar | Stephen Jones | ---'I think Linux has an enormous amount of opportunity to provide two alternative desktops, whether that desktop is a general business desktop or verticalized for health care or [another] marketplace.'----- He's getting the right idea here. An immense number of desktops are basically only running one corporate app, plus possibly internal email and the intranet.
Feel of working at FogCreek while being ... | Thu 11 Mar | Tarek
Joel, This picture kick ass : http://www.joelonsoftware.com/items/2004/03/04office.jpg I was just wondering if you could publish the same picture but in high resolution, I woud love to have it as my wall paper. I just want to have the feel of working at fogcreek while being stuck in a rat hole ;-)
Thu 11 Mar | karthik | <> I sympathise with you man. Completely understand.
Thu 11 Mar | christopher baus (www.baus.net) | It blows my mind that anyone would want to have a picture of an office as their wallpaper. Beautiful woman, mountains, beaches. Maybe.
Thu 11 Mar | Kyralessa | Those we have already.  :)
Thu 11 Mar | old_timer | Let's see now. Out my window I see about 100 cars parked below me, an industrial laundry, a derelict bldg with bricks crumbling off the facade, another old factory bldg with a for sale sign and a supply yard with tons of rusting structural steel. And this is a nice part of town.
Thu 11 Mar | Bleh | Out my window (Which is the glass with wires running through it);  is the back of the next building;  and a bunch of air conditioning vents.
Thu 11 Mar | SF Peninsula anonymous cowardly coward | Worked at a place, we were on first floor but upper floors had million dollar views of the mountains west of San Mateo, CA. I could see that one of the upper floor offices had cubicles with the partitions BLOCKING THE WINDOWS for this gorgeous view. I found that very sad.
Thu 11 Mar | Aussie Chick | I see the house across the street, and the man whose motorbike I nearly run into whenever I back out. Seriuosly, that picture does have a very soothing quality doesn't it.
Thu 11 Mar | Tarek | The only Windows I've got is my operating system :-(
Thu 11 Mar | no name | 'It blows my mind that anyone would want to have a picture of an office as their wallpaper.' Take a picture of *your* cubicle and use it as wallpaper. Now that is even sicker.
Thu 11 Mar | braid_ged | At the moment I set at the front desk facing a wall of glass that faces the enterance area shared by the three companies on this floor. My desk has a high back wall so I do get some privacy. I do get so see some cool things though. Like the time the 40ish receptionist from opposite walked in with the 20ish young intern at 7:30am, he pats her on the bum and she squeals 'somone will see', scans her head around only to lock eyes with me, then scurry into their office. Yeah I know, I am lame.
Thu 11 Mar | Aussie Chick | reminds me of the time I walked into the toilets to see the bosses daughter scurrying with her pants around her ankles from one cubicle into another (she was after toilet paper). I politely backtracked, and tried not to laugh. We have all done dumb things, it just isn't fun to get caught. (yes, this is lame too). An I must be the queen of the off-topic posts tonight, I have not gotten any sleep and I am using JoS as a crutch to stay awake and finish debugging.
Thu 11 Mar | Philo | The one good thing about Camel: my desk was in front of a huge window and I could see the Washington Monument and Cathedral from my desk. Philo
Thu 11 Mar | Alexander Chalucov (www.alexlechuck.com) | I can see a parking lot with palms and some other office buildings from my window. Also, all the delivery trucks (FedEx, UPS, USPS) stop in front of my window. It’s first floor. I am trying to get used to trying to focus at faraway objects from time to time during work. Joel mentioned that focusing on faraway objects is good for the eyes. But I usually forget ….
Thu 11 Mar | christopher baus (www.baus.net) | > Take a picture of *your* cubicle and use it as wallpaper. Now that is even sicker. Would that be like looking into two mirrors back to back?
Thu 11 Mar | Unfocused Focused | No window, in the basement, in the cube by the receptionist.  Sometimes it's GOOD to have a reason to go visit the clients.
Fri 12 Mar | a cynic writes... | Since we appear to have wandered in Arts student world* One window - next door's roof (ideal for those up to date weather reports.) The other window - an internal lightwell and a clear view of my boss's office door (which comes in handy at times). *Old joke - q: Why doesn't an arts student look out of the window in the morning? a: They'd have nothing to do in the afternoon
Fri 12 Mar | tim | You guys have desks? 3 months at my company, no desk in sight. Doesn't really bother me though since I will be spending an avg of 3 weeks/month on clients sites doing installs. Actually, that 3 weeks/month avg will come about sometime in the future. I don't really forsee being at the corporate hq until June. Desks, bah! Btw, I'm writing this from a desk at some software training. My view? Nice touch panel, control system, laptop, other trainees, and 2 projected screens. Just out of curiousity, who ever looks at their desktop when they're working anyways? I never get away from IDE's or IE.
JOS and spam | Thu 11 Mar | Jeroen Jacobs
Hi, Look at the following email I received today === From : frank johnson [frankj_2004@yahoo.co.uk] To : Subject : Why do people still use MS Outlook? Dear Sir, Due to my careful search for an honest,reliable and sincere business partner,i got your contact via the internet,and i ask if you can be trusted not to break,an agreement? Still,it took me time to make up my mind to contact you and to offer you this proposal of mine of which my whole life depends on. Dear,my name is frank johnson the son of the late penny johnson the former minister of (REPUBLIC) OF LIBERIA I am 24 years old and presently residing in DAKAR-SENEGAL in West Africa under political asylum My mother happens to be a nurse whom the late minister had an affair with during his life style as a play boy,and the affair resulted to my birth,but it was unfortunate that the late minister did not marry my mother legaly and as a kind of settlement, for my mother and i,my father deposited the sum of twelve million one Hundred thousand USD cash($12.1 million us dollars cash) to my mother for my life inheritance.my father stashed these sum of money and deposited it in a finance house here in daker senegal and my name appears as the next of kin. After my father was killed by his body guard ealier last year 2002, and my mother died also ealier this year after my fathers death, and at the age of 24 years old,i am left with this huge sum of money and i need a partner who will help me transfer this money oversea for immediate investment as i have made up my mind to invest in your country. Moreover,your compensation for your immediate assistance is 5%of the total money as soon as it arrives your country while 2% will be for any local and international expences that will occur during the transfer. I will like truth and honesty to be our watchword in this business. Yours sincerely, frank johnson === This looks the typical Nigerian scam spam, but look at the subject ! It looks like it was entered from this forum. Look at this link : http://discuss.fogcreek.com/joelonsoftware/default.asp?cmd=show&ixPost=122809&ixReplies=23 Is this forum used by spammers ? Jeroen
Thu 11 Mar | Aussie Chick | What a painful way to spam? I thought it was all done automatically these days? But, no I have never gotten any spam through here.
Thu 11 Mar | Jeroen Jacobs | Maybe they spammed me because I said I worked with Lotus Notes :-(( I know how much people hate Lotus Notes, but that's no reason to spam me... ;-) Jeroen
Thu 11 Mar | Stephen Jones | This does happen every now and again. You must remember that most Internet cafes in Nigeria are full of youngsters sending off 419 spam. So much so that many reckon it is the boost that will make Nigeria the next India. They guy was probably searching 'JOS' to combine business with pleasure. Either that, or he reckoned that software engineers had a load more money than common sense, and so ought to make an easy target. Or they've developed an 'whineometer' that finds out what forums have the highest proportion of people moaning they are underpaid and need to make more money, and target those.
Thu 11 Mar | John C | I got one of those spams through the contact page on my website the other day so I guess it's just another tactic these people are using.
Thu 11 Mar | MacSqueeb | High performance, custom hand-rolled spam:  it takes longer to develop and lacks the re-useability of existing spam objects, but it is extremely well tuned for its intended purpose.
Thu 11 Mar | Karel Thönissen | I try never to get involved with informal investors who do not get their punctuation right. Karel Thönissen www.hello.nl
Thu 11 Mar | Aaron F Stanton | I got the same email from the same person - replied with a brief but scathing note.
Thu 11 Mar | Michael H. Pryor (fogcreek) | Don't REPLY!!!! If they send it through the forum they can only spam a few people at a time ... plus they have to use the form (it boggles my mind that they waste that much time). And they NEVER get your email address. But if you reply, they'll get your email address.
Thu 11 Mar | Kyralessa | Hope that e-mail address you replied from wasn't one of your favorites, Aaron.
Thu 11 Mar | Stephen Jones | It will be when he finds all the marvellous business opportunities that come flooding into his inbox!
Thu 11 Mar | Aaron F Stanton | I know, I know, never reply to spam - ESPECIALLY don't click on the remove button. I already get a crapload of spam every day - the fact that this one didn't bounce suffices to get me on the list. I'm pretty sure that's how spam works these days - if they send one and it doesn't come back as no such user or some such, they keep you active and proceed to fill your inbox, whether or not you reply. Thinking of switching ISP's anyway at some point. Maybe to one with a decent server-side filter...if such a thing exists.
Thu 11 Mar | Joe Hendricks | 'Maybe they spammed me because I said I worked with Lotus Notes :-((' LOL ! ..nah, they spammed you because they know Lotus Notes gurus are RICH :-)
Thu 11 Mar | Andrew Hurst | --- If they send it through the forum they can only spam a few people at a time ... plus they have to use the form (it boggles my mind that they waste that much time). --- It wouldn't be hard (30 minutes) to write a script with LWP::Perl to email everyone that ever submitted a comment to this discussion forum with some spam. They wouldn't need to load any pages, just POST directly to the email submit form and increment the ixPost number. I doubt they did it by hand.
Thu 11 Mar | Stephen Jones | I'm sure they did do it by hand. I have posted over 2,300 comments to this forum at last count, all with the email link, and never have I received a 419, or any other spam, through it. Of course they may have been smart enough to realize that anybody who makes that number of posts to JOS won't have the time left to make any money, and programmed the script accordingly.
Thu 11 Mar | Michael H. Pryor | You could write a script... But it would take you years to spam all the people on the board. I don't want to go into why, just that a script in this case isn't going to help.
Fri 12 Mar | Jeroen Jacobs | Joe, Lotus Notes gurus are supposed to be RICH ??? Damn, I need to talk with my employer :-) Jeroen
Fri 12 Mar | Seun Osewa | >You must remember that most Internet cafes in Nigeria > are full of youngsters sending off 419 spam. So much so > that many reckon it is the boost that will make Nigeria > the next India. Factually incorrect. Being a Nigerian, I spend _all_my_time_ in a Nigerian cafe. It is full of middle-aged Nigerians checking mails (on yahoo or hotmail), younger ones chatting with Yahoo Messenger, visiting dating sites, students using google to fill in for the total absence of public libraries. The people that send such spam are determined _professionals_ not bored kids. Cafe operators have to watch out for them by spying on their customers, which means there is no privacy in a Nigerian cafe. These professionals move from cafe to cafe and change email addresses to avoid getting caught. Regards.
Fri 12 Mar | Stephen Jones | Dear Seun, My post was tongue in cheek. However, just as the Internet in the west would never have progressed as fast as it did if it wasn't for the demands of the pornography industry, I wouldn't like to discount the booster effect of 419's. I did read that you had a new public official who was trying to crack down on it. I'm somewhat puzzled why he thinks spying on people in internet cafes is the way to do it, when the really big killings, in both senses of the word, come when the unfortunate mark comes over to Nigeria and is show around the offices of high-ranking officials in public ministries and government banks. Wouldn't have anything to do with the fact that it is so much easier to be tough on those who can't fight back?
Fri 12 Mar | Tayssir John Gabbour | The fortunate thing is there's a finite number of malicious people. Because the more people talk about measures and countermeasures, the more likely someone will turn the email system into a game with two people augmented by computers having a go at each other. Until someone disables the game. God, what will the world look like in a hundred years? Or millenia?
Fri 12 Mar | Stephen Jones | ----'The fortunate thing is there's a finite number of malicious people. '---- Yea, but does that matter when the number is in the billions? :)
Fri 12 Mar | Cosmo Kramer | 'I have posted over 2,300 comments to this forum at last count' Dude you must be rich to be able to spend this much time on this forum, if that's the case are you seeing someone? ;-)
Fri 12 Mar | Ignorant youth | There is a whole clique of anti-419ers who devote time to baiting the scammers... http://www.scamorama.com/ They get the 419ers to send snapshots of themselves holding signs like 'IAMAGIPSY' and 'IAMADILDO'. Hilarious stuff. Some even get money *from* the scammers.
Opinions on demand-driving product design? | Thu 11 Mar | The real Entrepreneur
One approach to product design is to try SELLING the product *before* you build it. I.e., a sales/marketing directed product development. This is more likely to develop a product that is sellable, more likely to please the customer, and more likely to generate income. One of the issues making this collaboration easy. Doing this over the internet seems like a good idea. Has anyone ever tried this? Do you think this idea has promise? For example, I (and I think many people) have a need for one program to organize: projects, task list, and a knowledgebase. Ive looked for one for years and found nothing. I dont have time to write such a program but Id be willing to participate in a design discussion. Perhaps if enough customers could discuss and agree on a feature set someone might come forward to build it. (If we come, they will build it). JoS discussion of the above program. http://discuss.fogcreek.com/joelonsoftware/default.asp?cmd=show&ixPost=122635&ixReplies=19
Thu 11 Mar | Brad Wilson | You can't sell something before you build it. So, to get around this problem, the common thinking is to build as little a possible, that is still saleable, and then sell that while learning what you did that was right and wrong. Let the early customers and/or rejections dictate the next phase of project life. There is some danger in this. Not all customers will want the same thing. It takes a lot of work to try to sell to enough people so that your sampling yields meaningful results. You can't simply do what the first paying customer wants, thinking that everybody else will want that. And, most importantly, you need enough money for the very long runway it takes for a process like this, which almost assuredly means very few people making almost no money.
Thu 11 Mar | Elephant | 'Perhaps if enough customers could 'discuss' and 'agree' on a feature set someone might come forward to build it. (If we come, they will build it).' Why don't you build it? Or why doesn't the JOS community build it? I've often wondered how a company comprised of just the JOS community would operate. Part of me wants to say that it would be a total success for the simple fact of being smart and getting things done. The other part of me says too many Type A personalities getting in the way of doing anything productive. I bet we'd all just sit around and talk about the best way to do things and not get anything done. If you spec it out. I'll build it.
Thu 11 Mar | no name | > You can't sell something before you build it *cough*Microsoft*cough*
Thu 11 Mar | The real Entrepreneur | Problems mentioned above (and responses) 1. You can't sell what doesn't exist. You can get an advance order. The goal isn't to make money on the sale (immediately). The goal is to get SOLID marke research. It's one thing to get someone to SAY they want something, but another to get them to (at least tacitly) agree to BUY it if it has ABC. Then you turn them into a beta tester. I worked for a company that did exactly that. We sold one bank of the idea of a video kiosk. They paid for a prototype. They were a *partner* who paid for the product and was a beta tester. He then sold more companies on the idea, with each company adding some feature that they wanted (and that others might want). Here's a whole inc magazine article about that. (GREAT article, BTW) http://www.inc.com/magazine/20020201/23855.html 2. Can't get customers to agree on features. Agreed, this is difficult. That's why I was asking about how one might do this online. I think that if you had lots of SMART early adopter programmer types, you might be able to reach consensus. Some sort of multi voting, with discussion. The HARDEST part of creating a successful sellable product is knowing what the minimum feature set is. Elephant - are you really serious about building the product if I can spec it out?
Thu 11 Mar | Elephant | Send me an email with details, I'll let you know if I'm serious after that.
Thu 11 Mar | Aussie Chick | If you are serious about a JoS thing, count me in. The concept could absolutely fail, but it could also be fun trying. Kind of sourceforge-ish, and yet without all the fanfare.
Thu 11 Mar | Elephant | I was dead serious about that Aussie Chick.  Send me an email too.
Thu 11 Mar | Justin Johnson | I work at a manufacturer of household goods. There's a common flip-flop in our industry between the textbook definitions of sales-driven (sell it, then build it) and marketing driven (build it, then sell it) orientations. One of the problems inherent in sales-driven organizations is that the market doesn't provide *coherent* direction over the long term: the aggregate of all your market data telling you what to sell will be a confused, reactionary mess. So you'll sell lots, but your overall product base will have little rationality to it, and with that comes increased costs for managing the business and sales. The marketing driven approach tries to correct that with strong internal design of a product line--the drawback, of course, being that you're not selling people what they asked for, but what you think they need. That's great if you're prescient, but you're really risking warehouses full of dead inventory. In software terms (and in terms of the project being born here), that means that the risk is a confused spec without long term direction. Always scratching the immediate itch will make you end up with a kitchen sink application that has no clear personality, theme, style, or principle, that becomes a maintenance nightmare down the road when you're trying to add yet another customer request. So, Elephant, I'd urge you to do your best, when taking the specs you receive, to find some underlying principle or design goal in what you're building. You don't have to even tell your customers, just have it available so that the project is always, from the inside, clearly organized.
Thu 11 Mar | The real Entrepreneur | USE JOS AS A FOCUS GROUP A commercial version of Sourceforge I've always liked the idea of the open source collaborative projects at Sourceforge, etc. BUT.... they're never oriented to making $$ so the projects tend to stall because they're hobbies. Would it be possible to collaborate on the *requirements* and design of a sellable product, using JoS as a focus group. The JoS folks are early adopters who are able to envision a product that doesn't exist. A perfect group for market reserach. So, rather than collaborating, for free, on the PROGRAMMING, collaborate, for free, on the specification. Then whoever writes it gets to make the profit, etc.
Thu 11 Mar | The real Entrepreneur | 'I'd urge you to do your best, when taking the specs you receive, to find some underlying principle or design goal in what you're building.' GOOD advice. Use the market feedback as SUGGESTIONS. I view customer requirements as needles through which you're trying to thread a program. The goal is to shift the needles around enough and wiggle the thread enough to get as many needles threaded as you can with the minimum amount of program. (I.e., stretch X program into as many needles as you can)
Thu 11 Mar | The real Entrepreneur | Argghhh... Aussie chick beat me to the punch on the Source forge comparison. Actually, I wrote it before she did, but I was interrupted by a sales call . Well.... great minds run in the same path.... or fools think alike :-)
Thu 11 Mar | The real Entrepreneur | SUGGESTION FOR THIS PROJECT We need to have some way to : 1. List goals 2. List features to attain those goals 3. Discuss them via the internet. 4. Do this as easily as possible (without a lot of overhead). We don't want the discussion tool to interfere with the discussion. I like JoS's board, but I think it's too hard to keep track of something ongoing like this. Suggestions? (Simple discussion board, each feature is one root topic?)
Thu 11 Mar | whatever | Hands up everyone who is willing to actually attempt to sell this product. On the phone, or in person. Anyone? If no one volunteers, then you can all just forget about making any money off this venture. Treat it like a fun hobby if you want, but don't kid yourself there will be any money in it.
Thu 11 Mar | The real Entrepreneur | I will. If we can create a product that I think will sell well and that folks on JoS (my test market) are interested in, then I'd be willing to set up a website, online ordering, and credit card payments, etc. But that's a little way down the road. It think we should take this a step at a time and regard it as a hobby until we see what's being produced. HOWEVER, I think the person(s) writing the program should have ownership of the source code and THEY get to decide what's done with thier program. They can sell it, give it away free, or I can market it for them (for a %) or help THEM market it (for free or for a smaller %). BTW, I think the market for this is just emerging. This is the perfect setup for some one man company to own. A big company won't be able to maintain the cash burn rate to wait for this to be a million dollar niche. But a small company can survive on $100k a year in sales. But take it a step at a time and HAVE FUN WITH THIS to start with.
Thu 11 Mar | Burninator | Real Entrepreneur, have you looked at the open source project, Chandler? http://www.osafoundation.org/Chandler_Compelling_Vision.htm From the article: Chandler lets the user keep track of lots of concurrent, ongoing activities. Managing activity extending over time requires the ability to collect just the right sets of related items. It doesn't do exactly what you want, but it's likely to be sufficiently extensible to be made to meet your needs.
Thu 11 Mar | entell | If I remember correctly, Joel commented on the Chandler project in one of his articles and it wasn't positive. I think he said they created too much hype and now are trying to catch up with it all... Not that it's a bad thing if you like the product.
Thu 11 Mar | The real Entrepreneur | Burninator, Yes, I'm familiar with Chandler. I tried it once before and couldn't get it to run. Just tried it again. One two XP computers. Same result. This is either an indictment of Chandler or of using Python (which introduces extra complexty) I don't know of anyone who's actually tried Chandler. It certainly *seems* like it might be useable. Honestly, my *impression* of chandler, which I first heard about a couple of years ago I think, it that it's a big beauracracy. They have all of the elements of a real software company. Except for...ummm... a product. Thier website has been around for a couple of years (since mid 2002) and still not product I can get to run. I started my company the opposite: none of of the overhead of a software company EXCEPT for the product. A lot of fluff but nothing actually usable seems to come out of it. I think the best innovative products come from small groups of smart people. (I know Mitch Kapoor is probably a smart guy).
Thu 11 Mar | Rich | 'So, rather than collaborating, for free, on the PROGRAMMING, collaborate, for free, on the specification. Then whoever writes it gets to make the profit, etc. ' This is an interesting point. It's often mentioned here that ideas are cheap, it's implementation that's hard. Well, we can throw around the spec for free, and then get down to work. Assuming, of course, people actually do this. -Rich
Thu 11 Mar | Rich | 'Would it be possible to collaborate on the *requirements* and design of a sellable product, using JoS as a focus group.' Unless you're making something for programmers, I doubt you want JoS to be your focus group. 'I like JoS's board, but I think it's too hard to keep track of something ongoing like this.' It's kinda out of scope, don't ya think?
Thu 11 Mar | Aussie Chick | >But that's a little way down the road. It think we should take this a step at a time and regard it as a hobby until we see what's being produced. I think it is a cool idea. And I agree, the thing that has always stopped me from ever joining a sourceforge product was that is was only a hobby, ie if I am putting in effect I want something in return. But JoS does, IMO, have something that SF doesn't, it is as far better site for networking, perhaps this is a good enough motivation for now. JoS (ie one forum with topics that disappear at the end of the week) is a shocking place to run a project like this from, but doesn't it just sound fun! There wouldn't even be a central place to store file. Lovely. It would be an incredible show of teamwork.
Thu 11 Mar | The real Entrepreneur | 'JoS (ie one forum with topics that disappear at the end of the week) is a shocking place to run a project like this from' Hmmm.. a 'sliding window' would help keep the project moving, eh?
Thu 11 Mar | Aussie Chick | good point. *grin*
Thu 11 Mar | Aussie Chick | Nb. If this gets done (or even attempted) someone better write an essay on the process, it could make a good read....bunch of anonymous people attempt to design and create a brilliant niche piece of software, revolving around a simple message board with disappearing messages, and no shared file space. This is not sourceforge, they could make money, they don't know who would get the money, and the whole thing could dissolve into a bunch of lawsuits as the money is divvied up and identities are revealed....but boy they had fun in the beginning.
Thu 11 Mar | The real Entrepreneur | GET TOGETHER TO WORK ON THIS Ok, if you're interested in working on this, either spec'ing or coding, email me. Let me know if you're interested in the spec'ing or in the actual programming. I have one programmer who wants to write this program. He'll keep all rights to whatever he creates. If we have enough people interested in spec'ing the software, then I'll set up an online message board where we can list all the features, etc. Thus begins the great experiment with collaborative specification......
Thu 11 Mar | x | I would prefer that you didn't clutter JOS with this project. I don't come here to design products for other people. Set up your own off-site discussion forum.
Thu 11 Mar | Elephant | 4 people including myself interested.  I do my own hosting, so I'll put up a message board (from the ones suggested) and we can continue the conversation there.  I'll let you know when I've gotten it up.
Thu 11 Mar | Elephant | I've posted some completely awful board software for the discussion to continue offline from JOS.  If you have a desire to participate or want to know where I've posted it, shoot me an email and I'll set you up.  I dog food everything I do, so I don't want to post the link here to generate any unnecessary traffic.
Thu 11 Mar | fool for python | Yes, Chandler is playing catchup to the hype. No it's not even near a 1.0 release. Mitch Kapor 2/26/2004: 'This week we released Chandler 0.3. The team did a great great job; my hat is off to them. If we were building a house, we'd be at the point of having a foundation, the framing, and the plumbing roughed in. Now on to the interior partitions and finishes.' and this: ...'using Python (which introduces extra complexty)' s/b ...using Python (which *reduces* complexty)
Fri 12 Mar | Just me (Sir to you) | How are we doing with the spec and the coding? I just sold a copy.
Fri 12 Mar | Aaron F Stanton | I very strongly suggest that you target an extremely specific market that has specific needs. Otherwise your customer driven spec will go berserk. Also, just because a few people scream loudly about needing a given feature doesn't mean you should automatically do it. Personal anecdote (yeah, I'm prone to those): I was on a committee that was supposed to be attemptng to standardize data formats across the pharmaceutical industry. We were moving along the requirements phase pretty well, but there were a few requirements that popped up from a rep from one company that's pretty big. There weren't many objections, so most of them we kept, but every now and then we got 'Well, we absolutely have to have this in the data, and we have to have it this way.' Sometimes this directly conflicted with another company's needs, but we worked around it mostly. It wasn't until this had been going on for nearly two years when I thought to ask the entire group 'So, once we get this done, we have committment from your company to start using this, right?' It turned out that the larger companies who had the most sway in the group were the least likely to actually use the thing. The smaller companies with less invested in the old way of doing things could rapidly switch,. but they had less of a say in how it got done. So...just because someone apparently big and important screams for a feature, it doesn't mean they will buy it. When confronted, they may just say, 'No, we already have a lot of money invested in our internally developed system and won't be switching.' They are not going to be a client, so their input isn't as important as they think. Sure, they may have solved that problem already, so they may have some useful input, but not as much as they want you to believe.
Fri 12 Mar | Rich | 'How are we doing with the spec and the coding? I just sold a copy.' Sorry for lowering the SNR here, but that was hilarious!
Technical Recruiters that bad? | Thu 11 Mar | saberworks
I was reading through this thread: http://discuss.fogcreek.com/joelonsoftware/default.asp?cmd=show&ixPost=122641&ixReplies=15 I had a 9 month contract at Real Networks in Seattle. I was contacted through my resume posting at Monster.com by a company called Volt. The person who contacted me from Volt asked me a few questions over the phone, then asked me to send them my resume in MSWord format (as opposed to the HTML one monster.com provides). The next day, I got a call from Volt again, and they scheduled an interview for the next week. The people at Real were impressed with the code samples I brought (and I guess the fact that I brought SOMETHING impressed them as well), and they also recognized my name from some open-source work I had one. They thanked me for my time and sent me on my way. Less than a week later, I was again contacted by Volt with a job offer of $25.00 an hour. That sounded great to me, as my previous programmer position was paying $12.00 per hour (I knew it was a low wage when I took it, but it was close to home and I needed some experience on my resume). I accepted the position and they told me I could start the beginning of the next week. The next day, I again got a call from Volt, and the lady told me that they had negotiated a higher salary and that I would actually be getting $30/hr. She also told me not to come in Monday, but to delay till Tuesday so they could get my computer set up and whatnot. Anyway, about 7 months in, the lead developer quit (he was actually an employee of Real Networks and not a contractor). I of course inherited all his work, so I was doing more than what I was originally hired to do. I talked to my Volt representative at Real Networks (actually an employee of Volt with an office at RN). I told him what was going on, and the next day, I got a raise to $35/hr. During this time, I was offered a full time position, but I didnt take it because the pay was significantly less. After 9 months of working there, the division I was in was shut down. I got notice of my end date, and started looking around for another job. About two weeks before my end date, I was approached by the Volt representative who got me a job interview for a permanent position inside Real Networks. By then, I had already accepted another offer, but facts remain: I was very happy with my experience at Volt. Everyone I talked to was very professional and seemed willing to help me. I have an open invitation to come back any time I need work. Also during that time, I helped interview candidates for my replacement (after I was moved up to lead). We got candidates from quite a few recruiting agencies. Most of them looked really good on paper but didnt have it where it counted. However, the guy we ended up hiring worked out very well. I guess I just wanted to show the flip side of the coin. I didnt feel cheated or anything like that. Sure, they take a large percentage of what Real was actually paying, but in exchange, I got a regular paycheck, raises, medical insurance, 401k, and they spent time trying to place me after the contract was over. If I ever leave my current job, I will not hesitate to work with them again.
Thu 11 Mar | tapiwa | YAA?? Yet another advert??
Thu 11 Mar | tapiwa | Apologies for the post above. Reading 'testimonials' on the web has made me very cynical. Maybe Joel should have a BigUp board where people can wax lyrical about their great experiences. Actually skip that thought... a wee while ago I was complaining about all the whinging posts on this thread. Need to think this one through! :-)
Thu 11 Mar | no name | I don't know about where he lives but 30 or 35 dollars an hour doesn't sound good to me.
Thu 11 Mar | no name | saberworks, you're the type of sucker that keeps recruiters rich. You got an extra $5 per hour after your promotion? I bet the recruiter got an extra $20 per hour. You got a job? But you would have got that anyway. What did the recruiter do that benefited you, that would not have occurred if there was no recruiter?
Thu 11 Mar | Dan Brown | I've had good experience with a few recruiters. 
Thu 11 Mar | Bill Rushmore | Finding a good technical recruiter is as hard as finding a good programmer.
Thu 11 Mar | Joe | What can you do about it... It's very hard to get them out of the picture. And, many consulting companies operate just like recruiters - they're just body shops - you get the job and all they have to do is bill the client and cut you a check. What's your solution?
Thu 11 Mar | Steve | As the originator of 'technical recruiters are scum' thread, i feel inclined to comment. Obviously, recruiters DO place candidates (because enough of us have expressed our discontent with being 'lead on' only to find out a 'candidate has already been selected'). I don't doubt your positive experience best rest assured there were at least a dozen others who were falsely lead on and got, basically, reemed when striking for this same position. . But realize this; the going rate for technical recruiting is, at least, '**30% OF YOUR ANNUAL SALARY.' That is one helluva sales commission . . . and for what? Technical recruiters amount to NOTHING more than a human acronym filter. You see, what they have is a list of terms that matchup with acronyms. For example, if you list MFC on your resume ... you obviously must know what 'CObject' is responsible for ... if you list C# (w/ OOP), you surely must know the difference between 'abstract' and 'virtual.' Most technical recruiters are failed technicians themselves. Most do not have college degrees. Most are cons. Listen: We must work to AVOID technical recruiters. All of us will be in an increased technical capacity position and/or managers in the next decade ... once we reach those stages the honus is on us to force our opinion of the ineptitude of technical recruiters. The scum will be scraped off and they can back to selling used cars and we can get back to hiring quality candidates. I do review candidates and do personal phone interviews to filter through them. This only takes a few hours/week to this process and, low-and-behold, I save my company 10s of thousands of dollars and obtain highly qualified individuals.
Thu 11 Mar | Joe Hendricks | If you seek clients solo (like me) don't forget the significant marketing costs (mailings, phone calls) which really add up.  I am not saying that recruiter fees are completely justified, but they do save you marketing expenses.  If the employment picture was better, you could avoid marketing and just respond to newspaper want ads; those days are over and not coming back, imo.
Thu 11 Mar | Matt H. | 'Finding a good technical recruiter is as hard as finding a good programmer' This is true. 90% of everything is crap; that does not mean that the individual thing is nessecarily bad. I do agree that, in general, recruiters are over-compensated for the value they add. In general, technology recruiting is in serious need of disintermediation. (Take the middle man out of the picture.) Then again, this economic cycle has hit recruiters hard. Sure, they still get 30% of your annual salary, but that ain't so much big bucks when they only place one personal quarter ...
Thu 11 Mar | son of parnas | My introduction to pay issues was at one very large company i was getting $X/hr. It turns out they were billing me at 5 times X. That was an education. It matters because if your are dim star and they are epecting a super star then they won't be happy.
Thu 11 Mar | Michael Sica (michaelsica.com) | My company almost exclusively uses a consultanting company to hire people. It usually goes: Hire someone on a 6 month contract, if they are a good fit for the company, they get hired. If they don't work out, our company doesn't have to 'fire' them. They just end the relationship. I went through that process and I'm almost at 2 years with my present employer. I'm not sure that is how I'd run my own company, but I never felt like I was getting the short end of the stick. The consultanting company's people were always nice and professional. No complaints here!
Thu 11 Mar | no name | 'Everyone I talked to was very professional and seemed willing to help me. I have an open invitation to come back any time I need work.' saberworks, you are to Volt what a high roller is to a casino. You will always be treated with respect by almost every company that can make a huge profit off of you. 'I told him what was going on, and the next day, I got a raise to $35/hr.' And how much more money did the staffing firm get? The problem is you don't know. 'I got a regular paycheck, raises, medical insurance, 401k, and they spent time trying to place me after the contract was over.' No doubt $30 an hour is better than $12. Medical insurance is always nice to have. The only benefit of the 401K is that the money you put in isn't taxed. I am sure that Volt didn't contribute a dime to this retirement account. Staffing companies will always try and place their most profitable commodities. The deal that you got with Volt sounds pretty good when you take into consideration where you came from. My guess is that you might not feel the same way about such deals several years down the road when you have extensive work experience under your belt.
Thu 11 Mar | Tony Chang | So, people are getting $12 and $30 /hr to do contract programming in SEATTLE? Let's start that 'help me find a new career' thread again. You can't even live in a cardboard box in Seattle for $12/hr as a contractor - that's the same as $6/hr as an employee. For $30/$15 you can at least live at the shelter and pay bus fare to get to work. Mortgage payments on a modest house anywhere near Seattle run $2500-$4500/mo. Where do people live?
Thu 11 Mar | not Elephant | Really.  Might as well work at starbucks.  At least you'd get benefits.
Thu 11 Mar | Bored Bystander | My intuition is that the original poster of this thread is sincere - that he actually did have a reasonable experience subcontracting to Volt. A little perspective: First of all, if 'most' contractors or fulltime employment candidates had the sales and self marketing ability to land new work consistently, then there would be little market for recruiters. The fact that they exist, even with their sliminess, informs us that they do fill a role in the job ecosystem. All the talk about the guy getting $35/hour, 'hahahhah what did your agency get, huh huhuh huh?' is a red herring. It neglects the important point that the agency found the work and the worker did not. Bottom line: if you want to control your career and you want to be considered a good value 'and' valuable to clients or employers, then become your own recruiter - find your own work. Otherwise, given the desperation of most clueless job seekers, expect to be shopped out by agencies and to work for cheap compared to the billing rate. Secondly, I posted in the other recruiter thread that brokers and headhunters are basically 'outsourced HR'. Think about it. They are the gatekeepers. They are the ones acting like it would be a cardinal sin to submit a well qualified person who lacks a buzzword. They are the bad guys in the view of both candidates and companies. So, this leads me to suspect that companies use recruiters in order to distance themselves from the 'bad karma' and bad feelings generated by frustrated job seekers. The recruiter can use many ways to appear to drop the ball so that a candidate is simply never considered, while the client actually has their own prejudice or unfair policy that is blocking the candidate. So, blame is redirected to a party that 'everyone' knows is blameworthy. The point of all this is, blaming just the recruiters is naive. I pointed out in the other thread too that the technology industry has its own head trips that are apart from the normal arrogance of recruiters. Some (many?) techies placed in a recruiting or interviewing role tend to be insufferably elitist arrogant weenies and to let it be known continually that they are chosen of God. And companies are the recruiter's clients - companies have a choice, if only they would exercize it. Which I believe that they do. Recruiters 'serve' companies, period.
Thu 11 Mar | no name | Bored, you don't understand. Recruiters do not create jobs, and they do not find jobs. What they do is gain control of the jobs, so people like us can't get them without going through those weazels. If recruiting in its current form was controlled by legislation, then we would still see the jobs and still get selected for them, but we would all get paid more. Sometimes a lot more. Also, there would be much better feedback for expertise. People worth $250 per hour would get that money. Rely on the recruiting industry to scream about any attempts to control them through legislation.
Thu 11 Mar | no name | Actually, you DO understand. But I just wanted to add that one point.
Thu 11 Mar | Savage | Several years ago I went to two job interviews at a certain well-known company in London. The interviewers liked me. I was going to get a job offer, but the interviewers found out their director made a deal with one agency that bound them to only get software developers through them in return to a discount. The deal was made either just after my first interview or at about the same time so the interviewers didn't know about it. So I didn't get the job in the end, despite the time and expense of going to two interviews just because I didn't go through that agency the director made a deal with. I also applied direct to one investment bank in London. I got a letter back from them saying their passed my CV (resume) to the agency that does all recruitment for them. I never heard anything back. A few months later the agency the bank passed my CV to phoned me in connection with another job. I phoned the agency back only to get an obnoxious man laughing at me for being unemployed. At the time I had just lost my job at a company mainly funded by venture capital. Obviously nothing went further. It seems to be getting common that you can no longer apply directly to an investment bank in London. If you try Human Resources will just bounce your CV to their preferred agency.
Thu 11 Mar | Bored Bystander | Blank, >> What they do is gain control of the jobs, so people like us can't get them without going through those weazels. >> If recruiting in its current form was controlled by legislation, WFT are you talking about? The clients - the hiring companies - GIVE this power to the recruiters. The hiring companies delegate selection of candidates to the recruiters. Savage posted an account that pretty much sums it up. Not just 'evil recruiters' but also 'companies that use evil recruiters'. Why do companies do this? See my reasons above. Companies *like* to use recruiters. I'm not saying that I am have the unified field theory on this stuff, but I think that the rationales I posted match what we candidates deal with pretty closely.
Thu 11 Mar | Jeremy | I was recently hired at a company that I used to work for. Long story, but anyway, the result was the *I* found the job, which was going to be a contract to hire setup, and the company /required/ that I go through an agency. But what was I going to do? Refuse and not get the job? Sure, the company paid the recruiter a fee even though I did the legwork of finding the position but I'm sure they have their reasons. In the end I was rehired as a full-time regular employee and everything worked out well.
Thu 11 Mar | no name | Bored, OK. It's certainly true that employers benefit from what recruiters do, which is one reason the practice survives, even though workers derive no benefit from it and are actually harmed. What I meant was that the reason we often have to go through recruiters is that recruiters spend all day looking for jobs or possible jobs, then advertising them or calling workers and offering those jobs. The busy work of the recruiters means employers don't advertise the jobs directly. Thus it denies many contract workers the opportunity to negotiate directly with the employer. As you say, employers love this because it lets them escape their responsilibilities. Recruiters love it because it lets them keep a lot of the money. Workers get screwed by it.
Fri 12 Mar | Bored Bystander | Blank, I believe we agree. It's a twisted symbiotic relationship. Companies prefer the distance from candidates and they're willing to pay for it.
MSFT breakdown | Thu 11 Mar | hoser
Day 1 of capitulation says Cramer I havent seen this level of fear in over a year (with respect to the entire market, not merely MSFT). The precipitous event seems to have been GE floating 188 millions new shares into a market perfectly ripe for tipping over. BOOM! MSFT broke down through $26, a key support which was the bottom of its previously upward trading channel. Where does it stop? Worst case is $22 where MSFT put in a long term double-bottom (12/01, 7/02). There is significant technical support @ $24, and Im guessing it likely will rebound from there - but not with certainty. On fundamentals, the analysts are having a field day: But Microsoft investors dont value the software company like a staid fund manager. The company is trading at a respectable 32 times trailing earnings and 20 times forecast earnings. Thats impressive, considering how anemic the companys growth has been. You have to go back to the late 1990s to find Microsoft growing on par with its current price-to-earnings ratio -- that is, at more than 20% per year. And you have to go all the way back to the mid-1990s to find the company growing at more than 30% per year. In other words, Microsoft is not a growth company and hasnt been for some time. -- Paul Kedrowsky @ RealMoney.com As the market is a predictor of things to come, are investors abandoning the notion that Microsoft is the dominant player of the future? Could there ever be a proxy battle the like the one going on at Disney over Eisner? Demands for Ballmers resignation? One one other note, SCOX is testing support at $9-$10 and IMO will be headed for $4 very soon. Good ridance.
Thu 11 Mar | BC | Nah, MSFT is just changing from a growth company to a value company as was bound to happen sometime anyway. Not a good short-term bet, but will probably be a good long-term investment. Also see: http://management.itmanagersjournal.com/article.pl?sid=04/03/10/2127249&mode=thread
Thu 11 Mar | tapiwa | Investment advice?? Now where did I put that baseball bat? Seriously though, you could discuss this ad nauseum, but you still could not tell me definitively tell me what the stock is trading for in 6 month's time! Makes for good bar banter though.
Thu 11 Mar | BC | Of course not, that's why I put away some of my savings every month into index funds. There is a difference between investment advice and speculation though (you are describing the latter).
Thu 11 Mar | Rob VH | As someone who works in investments, may I say that when I read anything containing the phrase "x dollars, a key support level", I immediately tune out. What crap. The jerk who wrote that can't tell you if the S&P 500 will be up or down on the year. Do you think he knows where Microsoft shares have "good support"? Whatever that means.
Thu 11 Mar | no name | The entire stock market will be in decline for the next few decades as our economy restructures itself.  It may stay there if nothing arises to replace "knowledge work" and everything is done in India et al.  As we notice that foreign investors are wary of investing in the US because of our debt, we need to be aware that we may wind up worse than Japan and the market may never recover.
Thu 11 Mar | Chris | I'm glad I sold the remainder of my ESPP I had been holding onto...  As others have pointed out, there is just no way Microsoft can sustain the growth they've had in the past.  There won't be new employees becoming Microsoft Millionaires due to stock options anymore (in fact MS doesn't offer stock options anymore).
Thu 11 Mar | Krag | 'The entire stock market will be in decline for the next few decades as our economy restructures itself' NOT
Thu 11 Mar | no name | If Warren Buffett says stocks are overvalued, I say stocks are overvalued.
Thu 11 Mar | Ray | I also agree with W.B., it is difficult to find good under-valued stocks right now (so keep some cash ready for when things go 'on sale', which *might* be starting to happen right now). However, there are still some speculative things out there that have some strong upside in them. Also, there are things out there that have a very nice dividend yeild where depending on your goals you might not care too much about the capital gains that you don't get... I have to agree with Krag though. These nay-sayers talking about a Japan-like situation developing and a potential depression coming are pretty far out on a limb. The election this year is really distorting things in the short term (i.e. before November) but I don't think that everything is going to suddenly fall apart after that.
Thu 11 Mar | Dan Brown | While some of it may seem to be "out there", W.B. himself has actually been investing in foreign currency because of the state of our union.  Take that for what it's worth.
Thu 11 Mar | Name withheld out of cowardice | I think most of you are missing the point of the original post. The question is 'is the stock market saying that Microsoft's dominant (monopoly?) position and power is a thing of the past'. The high valuations of microsoft in the past were because of high earnings. Microsoft had incredible earnings for the level of revenue (in the 1990s) and the stock price reflected this and the expectation that this could continue. These earnings were based on their near-term ability to charge 'monopoly rents' on their products. The stock market is saying that people don't think they can do that for much longer. As for the dope who thinks that the stock market won't be higher a few decades from now, other than the idea that anything is possible, would you care to offer some evidence? As for the person who believes whatever Warren Buffet says, beware the overrated expert; past performance is no guarantee of... BTW yes stocks are very high proced relative to past PE ratios but the question one needs to ask is never 'are stocks overvalued' or even 'how overvalued are stocks?' . It is 'how far in the future are stocks valued?'
Thu 11 Mar | Chris | MSFT isn't suffering because MS's position of dominance is in the past.  MS is dominant in the present and future, it's just that they can't sustain the growth rates they had in the past.  People will continue to use windows and office, but since everybody already is using that software there isn't a lot of growth in those markets.  I haven't seen anything come out of Redmond for market sizes near those products.
Thu 11 Mar | Dan Brown | People seem to believe prima facie that 'past performance is no gaurantee of future performance', yet then claim that the stock market will eventually recover because over the previous 90 year period it has gone up. Unbelievable.
Thu 11 Mar | Name withheld out of cowardice | Dan: I think you are missing a subtlety here. The 'past performance' saw is with respect to individual stock pickers and short periods of time and usually has to do with showing performance not with respect to the market (e.g. S&P 500 index). For the stock market as a whole, long term, past performance has been a pretty good indicator of future performance for at least a century. Can things change? Of course they can. If you were to place bets on whether the stock market will have at least average gains over the next twenty years you would have a 90% of being right. Not so for a particular mutual fund beating the market averages over that period (the chance is less than a third). BTW, if the stock market is down in twenty years, we will be in the midst of a huge economic problem and, I dare say, it won't matter where you had placed your money over the previous twenty years.
Thu 11 Mar | Keith Wright | To some degree the stock market has to keep going up in the long term, because otherwise it ceases to be a product that anyone would be interested in.  It would be like trying to sell a bond with a negative interest rate, at par.  If the stock market stops having any prospect of going up, it will collapse in on itself.  Then again, it does just that from time to time, doesn't it?
Thu 11 Mar | hoser | Rob VH - who works in 'investments', eh? Yet another CFP who claims 'you can't time the market', purchasing 4%+ loaded mututal funds for the clueless. So, I can't tell where SPX will be with certainty? SPX will be up for the year 2004 merely because there is so much money waiting to get in. I looks likely that SPX will hold support 1125. It holds both 2 month and 1 year support levels (3/10/03, 11/21/04). But, then again I thought MSFT would easily hold support at 26, and I was wong on that one. Old support becomes new resistance and the stock behavior has now changed - a new, lower trading channel will have to be defined. Want one word of investment advice, which you CAN take to the bank? Stay away from fund sellers, period. 2nd bit: stay away from loaded funds period. Investigate the funds you own and find out of they were scamming you by selling gains to special hedge groups/investors 'after hours'. Bastards. Bar room banter? What else were you looking for here?
Thu 11 Mar | not Elephant | 'past performance' actually refers to both individual stocks as well as the entire stock market. ppl in japan have been thinking that things will get better in a few years for 2 decades now.
Thu 11 Mar | JeffMac | Microsoft is a little different than your 'average' company in that they are sitting on PILES of cash...At the drop of a hat they could buy nearly any other growth company they want. This is why I enjoy watching their behavior as the industry changes - will they pull an IBM and piss away a huge advantage, or will they continue to change their organization so that they're in a continuing leadership position? I'm betting on the latter, personally. The fact that they might not be as aggressive a growth company as they once were is just one aquisition away from being false. Disclaimer: I reserve the right to be wrong at any time without any prior notice. JeffMac
Thu 11 Mar | Rob VH | Sorry hoser, you missed your mark. I'm not a financial planner, and I don't sell mutual funds, especially not the ones that charge 3%. I agree that there are many many fund managers who take large fees for little to no value added. I didn't mean to sound so nasty in my earlier post. I'm just extremely sceptical about technical trading systems. I have seen no evidence to lead me to believe that looking at 'channels' or moving averages, or whatever is currently in fashion, is a sensible way to construct a portfolio.
Thu 11 Mar | hoser | I agree its not, and I don't. But it does give insight into panic sells and sell-offs and is a decent way of getting your best price. Fundamentals for stock choice, some T/A for getting my best price. Sorry for nasty-ing back. Bicker, bicker...
Thu 11 Mar | no name | Past performance may be no guarantee of future perfection, but it's also no guarantee that a person who has spent several decades being a reliable expert will turn into a gibbering idiot 5 minutes after I click the 'Post Message' button here. Occasionally people are called an 'expert' in a particular field because, um, er, they know a little bit about that field? Nah, that doesn't sound right at all.
Fri 12 Mar | Stephen Jones | ---' Occasionally people are called an 'expert' in a particular field because, um, er, they know a little bit about that field? Nah, that doesn't sound right at all. '---- Sounds fine to me, just as long as you don't miss out the 'Occasionally'.
Not all public servants are evil | Wed 10 Mar | Philo
I was in continuing legal education today [yawn]. However, the lunchtime session was with the clerks of court for Fairfax, Alexandria, and Arlington Counties. These are the administrative heads of the courts, and really some fairly powerful people. The main topic of conversation was putting public records on the net. Each of them said theyre working to make as much information as possible available online, but theyre taking their time to weigh the privacy implications of the information they make available. For example, land records are only available by subscription (cheap fee - $50 for unlimited access for a month), property tax records are freely available as they always have been, marriage licenses will likely never be online, and theyre putting long, hard thought into how to handle court cases. Overall, I was simply impressed with their approach to the entire issue - I think wed all be a lot better off if we had more elected officials like them. Philo
Wed 10 Mar | Perpetual Newbie II | I've been a Snivel Servant for 30 years (crap ... has been that long!) and it's been my experience that there are way more people that will go 'above and beyond' than those that give (all) of us the bad rap. We certainly do have 'the work to rule' (or less) wankers but in general, WE give them a harder time than you 'civilians' ever could - we have to deal with them too :( The tax payers are actually getting excellent value for the dollars that manage to filter down to us :)
Wed 10 Mar | the artist formerly known as prince | the problem is there are far too many of you doing jobs that government shouldn't be doing in the first place, and there are far far to many useless manager types in government
Thu 11 Mar | braid_ged | After much contemplation on the reasons for the pervasive problems of government organisations in Australia here is my list of causes : - Responsibility without authority. People get in trouble when something breaks or when a problem occurs even though they arent given authority and control over enough of the system involved to change it. This leads to nervous 'dont get involved' people who are scared to death of getting in trouble and try to do as little as possible. - Committees. Committees are simply there to avoid any personal responsibility for anything. They mean decision making takes much longer. They mean decisions are much poorer because although the committee itself is in theory responsible for it's decisions no-one on the committee will get involved with the details of the issues at hand. - Bad people cannot be fired, only moved. - Customer/school-child mentality. Because so much of the information and resources government employees use is controled and administered by some distant unknown entity government employees often suffer from learned helplessness. If they want something new or something old to change they complain and act as though somone somewhere should be doing it for them. - Zero positive feedback. Government employees seem to be punished for mistakes but never rewarded for positive work. This is what causes much of the organisational problems. People have learned that doing nothing is the most successful strategy. Innovation in government is treated like a bacteria, the internal immune system attacks it. - Processes not People. Governments dont believe in empowering or trusting people, they believe in processes. Regulations, documented complications. This benefits the organisation as a whole as people often move around and no person becomes particularly valuable. The Prime reason that government organisations often seem insane to people who work in the commerical world is that the goals of a government organisation are very different to a commerical organisation. Governmental organisation Goal Number 1 - Do not fall over. Do not collapse. It doesnt matter if it's 10 times more expensive or 10 times longer or takes 10 times as many people. If there is no disaster, if the minister isnt embarrased, that's all we need.
Thu 11 Mar | w.h. | Our Chief Elections Officer is one of the folks leading the cause against electronic ballots.
Thu 11 Mar | Perpetual Newbie II | > if the minister isn't embarrased ... Rules ALL!
Thu 11 Mar | x | That's crap, braid_ged. Government work invariably involves doing something for the common good, which means some people will be screaming all the time. One group says they're approving too much development; another says they're not approving enough. As a result, government workers must be masters of diplomacy and caution. It's easy to characterise this is as being slow, but it works well. For alternatives, try Afghanistan, where uncles and Kalashnikovs run government.
Thu 11 Mar | Sum Dum Gai | Governments are just like any other large organisational structure. You really think that the huge multinational companies trust people more than process?
Thu 11 Mar | Aussie Chick | I agree with alot of what brad_gaid said. My mother works in the admin department of a regional hospital system. She tells me work stories, and they always involve meetings, and meetings and resolving issues between people, and calling unions, and filing formal complaints because someone sneezed the wrong way. I am always wondering how on earth they get anything done with all the petty bickering that goes on. I get annoyed in my job when someone sends me a 'How long until you can come fix the computer problem I asked you about last week' and then feels the need to carbon copy this email to my supervisors. (Hello honey, that only gets you put to the bottom of the to-do list). The imagine of public servants, albeit garnished largely from my parents both being public servants, makes my cc problems seem like standard pettiness that public servants all engage themselves in for amusement.
Thu 11 Mar | Elephant | This is a stupid topic that has nothing to do with software so it should be deleted.
Thu 11 Mar | Aussie Chick | *grin* that is the best response I have heard all night, to any topic. so straight forward, you have to appreciate that!!
Thu 11 Mar | tapiwa | Like someone else said, the problem is govt doing what they really should not be doing in the first place. The main problem though, is that you don't have alternatives. You might not like the service, but you are forced to use it. Throw in the CYA attitude that pervades most govt departments, and the bosses empire building ambitions (protect their own), and you have a real recipe for disaster.
Thu 11 Mar | David B. Wildgoose | There was a lot of truth in what braid_ged says, but Tapiwa hits the nail on the head when he talks of the lack of alternatives. How come monopolies are rightly despised and criticised in the commercial world, but not when they're in the state sector? It's true that there are some things which are 'natural' monopolies, one court system, one police force and one army for example. But Education? Health? Refuse Collection?
Thu 11 Mar | Aussie Chick | Actually I heard the prime minister addressing some kindergarten children the other day. One of the children asked 'why do we have to have taxes' and 'why did we have to go to iraq'. His answers were simple and honest. It is the governments job to find the right balance between having a wonderful infrastructure (roads, schools, supporting industry etc), and having an infrastructure that can be afforded by the people. 'Why did we have to go to iraq?', we thought a bad man had some bad weapons, we haven't found those weapons yet but we are still glad the bad man is gone. The government has a tough job pleasing everybody (reminds me of a fable about a man, his son and a donkey). There job is to do the best they can.
Thu 11 Mar | Stephen Jones | Dear Auusie Chick, I am glad you and the kindergarten children are so easliy satisfied. With regard to .c.c ing your superiors this is can be doing you a favour. If you go complaining to your superiors that you have too much work they just tell you to do your best. If soembody else is complaining they may stand up and take notice. For anybody using the tactic there is one thing you must do: c.c. YOUR superiors as well. It's your superior who can bring up the inefficiecy of Aussie Chick's department at meetings, and her superior will start to be worried in my opinion. And how the heck is somebody left without a working computer for more than a week anyway? I thought that only happened in Saudi?
Thu 11 Mar | Elephant | I've got to stand up for myself there.  That is not me that posted the b*tch about the topic.  I wish the impersonations could be quelled somehow on this board.
Thu 11 Mar | Aussie Chick | [I only meant that as a passing comment, but her computer worked fine, just a particular program refused to print the first time it was asked to.]
Thu 11 Mar | Name withheld out of cowardice | 'Government work invariably involves doing something for the common good...' Um- are you sure you know what 'invariably' means?
Thu 11 Mar | no name | > we thought a bad man had some bad weapons You could justify an invasion of the US with that argument.
Thu 11 Mar | Elephant | No wait, it really was me.
Thu 11 Mar | Aussie bloke | Aussie Chick, John Howard hasn't uttered an honest answer for many years. If he was in a kindergarten, it is because the new Labor leader has been so successful with children. If we're going to talk about a bad man, we've got one right here in Australia. We've got a jerk who tries to split private schools against government (while providing increasing amounts of money to private schools.) We've got a jerk who thinks its great to send jobs to India and helps the Indians do it, while a gullible media nods its head as if it understands.
Fri 12 Mar | Jack of All | and there are far far to many useless manager types in government That should really read 'there are far far to many useless manager types.'
Fri 12 Mar | Ignore my ignorance | Not all microsoft employees are evil, either. scnr
Best IDE for php | Wed 10 Mar | the artist formerly known as prince
I am looking for a php ide for under 100 dollars should be able to: auto complete, have a file level view of the project. Built in server would be nice (so I can view my work) pretty basic stuff
Wed 10 Mar | the artist formerly known as prince | ps... development will be on windows
Wed 10 Mar | Samo Fredorski | I tried that Zend Studio once and found it decent. I don't want to sound like one of those Java people that have have never worked on a real project and always just tell people to shut up and use vim, but I find PHP simple enough to just use vim. It's not like Java where I can't remember my own API, let alone Sun's, and need completion and project management.
Wed 10 Mar | the artist formerly known as prince | I am "one of those java people" but the problem is a) I am not experienced in php, b) I really hate cluterring up my head with "memorization type stuff" c)I really dont like using notepad ...
Wed 10 Mar | Samo Fredorski | I think you misunderstood... By 'one of those Java people' I meant the Java people that consider vim to be a useful tool to manage a large scale project. These people have never had to manage a project with hundreds of classes, many developers, and a deadline. I'm saying I can get by with vim for PHP even when doing a large project because PHP just isn't as complex.
Wed 10 Mar | blargle | check: http://www.activestate.com/ might do something for ya ...
Wed 10 Mar | the artist formerly known as prince | isn't that perl?
Wed 10 Mar | Clay Whipkey | Primarily I'm using Dreamweaver MX right now, because I already own it and I also do all the GUI stuff for my group. It has nice color-coding and FTP features, but it doesn't really have that much great code support for PHP, and its a monster resource hog (about a 30mb process). When all I want to do is code, its a bit of overkill. I am trying out an IDE called Visual SlickEdit, which seems to be the way I may go in the future. I haven't had a chance to use it for PHP yet, but I've been told that its code hint (like intellisense in VS.NET) and code completion tools are very nice. As far as if you have an object initialized and you type the name of the object, it gives a list of its methods and properties. That kind of thing. Since I'm writing PHP almost completely in an Object Oriented fashion these days, that would improve my speed quite a bit. I haven't quite gotten the hang of the hardcore mouse-free coding style. The bummer about SlickEdit is that its $270 for the elc. download. If you are only doing PHP, then that might not be worth it. Crimson Editor is a workable free editor. Its like notepad, but has some FTP tools and color-coding and other stuff. SlickEdit appeals to me because I'm also interested in getting into other languages, and it supports a ton of them. I'd be interested to see other suggestions that might include some of those features and possibly be cheaper than SE. I try to write PHP in as much object oriented styles as I can, and a feature like intellisense where I can access all my methods and props inline would be very cool.
Wed 10 Mar | Clay Whipkey | oops... didn't mean to drop that OO thing in there so redundantly, I just spaced out in the middle of that post and forgot what I had already typed. *note to self: re-read before hitting submit.
Wed 10 Mar | Ben | You can give PHPEdit (http://www.phpedit.net) a try, but use the one of latest development builds. It's free, BTW.
Wed 10 Mar | MacSqueeb | The activestate product (called Komodo, btw) supports PHP, Perl and Python.  They offer a personal use license for $29.99.  I would put it in the "it rocks" category for the most part, but I'm currently test driving SlickEdit for comparison.  I'm not totally convinced yet, but I'm leaning toward Komodo (sorry Clay :-) ) because it has a nice PHP debugger.  If there is one in Slick, I haven't found it yet (yeah, I could read the docs / help).  That, plus that the professional license is a few bucks cheaper ($225, IIRC), might be the deal sealer for Komodo for me.  On the other hand, if the "intellisense" in Slick Edit really ends  up working as well as in VS.NET, I could still be swayed.
Wed 10 Mar | Tom Vu | http://www.slickedit.com
Wed 10 Mar | Miffo | The best IDE for php I've seen, is a) install Apache and PHP on your machine b) UltraEdit w/PHP syntax highlighting c) Code, save and reload your browser. Can it get any more complicated?
Thu 11 Mar | Cletus | Try QaDram (Delphi like IDE for PHP) http://studio.qadram.com/
Thu 11 Mar | saberworks | Big fan of editplus (http://www.editplus.com/), but it doesn't have all those fancy features (who needs them?). Honestly, if you need a debugger in PHP you really need to re-examine your coding style.
Thu 11 Mar | Just me (Sir to you) | I used a combination of PHPEdit and UltraEdit. I used earlier versions of Komodo but at that time it was unstable, slow and consumed HUGE amounts of memory. For those that belittle the need for a debugger for PHP: I guess you never had to dive into really big ugly and complex code. I would say due to PHP's language 'features' there is a higher need there for a debugger than e.g. in Java or .NET. As I have stated before: If this is a big project you are going to start, you might want to consider not using PHP.
Thu 11 Mar | Jeff | I have used Zend and several other free editors for PHP they all start to fall apart in the area of code completion when you have arrays of pointers to objects etc. Not sure they can ever really fix that problem since that same array can be filled with things other then pointers to objects or pointers to different objects (why you would do that I am not sure, but you can). I liked using zend for framing out my classes because of code completion etc, but I would just wind up using vim to finish it up.
Thu 11 Mar | Rob VH | I'm using Komodo 2.3 for Perl and PHP, and it's great. It supports remote debugging of PHP scripts. The current version is 2.5, but it seems to me to be a bit quirky (syntax checking seems a bit flaky at times, and they changed some things about the UI that I didn't like. Overall, a pretty good deal at $30, I think.
Thu 11 Mar | Wade Winningham | I tried Zend Studio and didn't like it too much. I then used PHPed for a while, but I think both of those are above your $100 limit. I've been using Maguma for a while (www.maguma.com) and like it a lot and it's definitely under the $100 price tag. I've been beta testing their new v2.0 product and while it's a way's away from release, it's looking even better than their existing product. I used HomeSite for a long time, but was looking for something with an integrated debugger and profiling.
Thu 11 Mar | Clay Whipkey | '...it doesn't have all those fancy features (who needs them?)' Nobody said anything about 'needing' anything. Its just nice to have. I don't personally feel a need to reaffirm my professional self-esteem by making my job harder than it has to be. If I can get an edge, and then next guy denounces my status as a 'real' coder because of that... I'm not going to cry in my beer. Lat I checked, nobody gets a job because they insist on coding everything in notepad. Its just about getting the job done, isn't it? Whatever floats your boat shouldn't matter to anyone else.
Thu 11 Mar | MacSqueeb | Just You (Sir to Me), Komodo may still be as much of a hog--I haven't really checked to see. I haven't really had any beefs about stability though. Does PHPEdit have anything like the 'start' page in Komodo? It's a silly thing, but I like it. How does its 'intellisense' like prompting compare? It's pretty lame in Komodo--seems to only randomly and infrequently pick up stuff I've defined. How does the debugger compare? I can't seem to get Komodo's to stop at breakpoints (I could just be really dense though). I guess I could try it out myself and see. Off to find and download...
Thu 11 Mar | Just me (Sir to you) | I don't think the version I used had any 'Intellisense' (at least non that I used). I liked the code browser and the syntax highligting. One thing that I hated was the way text selection completely lost it in horizontal scrolls if you happend to move off the line by accdent. No start page I can remember. The reason I complemented it with UltraEdit was because of the superior search of that editor. I quickly looked at the sites of some of the other IDE's mentioned in this topic and I think I would check out of few of these over my old setup if I had to do much PHP again.
Thu 11 Mar | Nicholas Franks | Editplus. all the way
Thu 11 Mar | charles | I used to use Emacs, and it's great for just plain banging out code, but I really missed the features of an IDE -- not to mention the fact that it's butt-ugly. UltraEdit is pretty decent, and I use it for my PHP coding.
Thu 11 Mar | Seeker | I am surprised no one mentioned phpeclipse (http://phpeclipse.sourceforge.net/). It is the PHP plugin for Eclipse (http://www.eclipse.org). It has a weak form of intellisense, still kind of quirky. It has an in IDE browser for previewing your work. And it does a great job of syntax highlighting and outline view of your php functions. (it also will stop and start your mysql and apache processes if you choose to). Best of all, eclipse integrates with almost any other tool you can think of, including databases, CSS editors, HTML editors etc.
Thu 11 Mar | Seeker | Forgot to mention, all of that for free. Also, I like UltraEdit for any advanced editing... so another vote for UltraEdit as well.
Thu 11 Mar | Jussi | > I am looking for a php ide for under 100 dollars should > be able to: auto complete, have a file level view of > the project. Take a look at Zeus for Windows: http://www.zeusedit.com/lookmain.html Zeus has project/workspace management, class browsing, syntax higlighting etc. etc. Also when a workspace is used, it offers automatic ctags integration, code completion and intelli-sensing.
Thu 11 Mar | Me | I'd love to find an IDE that really helped. 8 years later and I'm still using Textpad on windows, but mind you I use Perl to auto-gen a lot of stuff when necessary and a lot of my PHP consists of arrays and methods to generate/validate code. At home I use linux (mepis.org preffered distro for me) and I ssh into my personal server and run X apps locally so I run konqueror and emacs, shell etc. You can run etags and generate a file emacs will read so you can zip to methods in different files, that is very handy. Of course emacs has a bookmark system as well and you can drop to a shell in emacs for things which I'm always doing and then I've got at least 2 different browsers running to check code. About debugging PHP. I gotta say I never had to run a debugger in either Perl or PHP but maybe I'm missing something. I've inherited code which included literally hundreds of files (not OO, or partially so with an unfortunate taste for using globals) and I never did see how I debugger would have helped me. One thing, which I'm sure everyone does is use strict, use warnings for Perl and error_reporting(E_ALL) in PHP ... that will cut down on a lot of bugs (and no globals).
Thu 11 Mar | Clay Whipkey | I agree.  Setting the error reporting to E_ALL (on the dev server only) has helped me *immensely*.  I completely reccomend doing that.
Fri 12 Mar | Jonas B. | If someone not necessarily needing to run windows looks at this; try Quanta for KDE (http://quanta.sf.net/). It's like Homesite, only a lot better. Plus the integrated PHP stuff rocks, and works perfectly with CVS. This summer it will get a great PHP debugger integrated too.
Hackers too? | Wed 10 Mar | Alex
Im curious. All of you here are most likely software developers. How many of you would consider yourselves to be hackers as well? By hackers I dont mean Richard Stallman or Paul Graham, I mean 2600, Phrack, Emmanuel Goldstein, Phiber Optik, etc?
Wed 10 Mar | Chris Tavares | You mean 'crackers', i.e. computer criminals? Nope, don't do any of that stuff. I have enough trouble getting my OWN computers to do what I want, let alone somebody else's.
Wed 10 Mar | Brad Wilson | Sure, I did that stuff. You know, then I grew up and decided it was pretty stupid to risk jail just to avoid paying for a call at a pay phone.
Wed 10 Mar | Vince | haha, so true brad.  We did a lotta that stuff in high school.  A couple of my good friends got caught changing attendance (they weren't as careful as the rest of us).  They got suspended.  Once we turned 18 and are out of high school, the rules change.  Its not worth risking jail time for a prank, when you could spend the time doing something productive.
Wed 10 Mar | Steve | Obviously, you haven't used the product I develop. ;) Still a hacker . . . always will be.
Wed 10 Mar | son of parnas | I have a bad cough and my golf game sucks. So yes, i am a hacker.
Wed 10 Mar | Nigel | Please, no messages about golf until all this snow has melted. Thank you for your kind consideration.
Wed 10 Mar | Brad Wilson | 'Please, no messages about golf until all this snow has melted.' Bah, we play golf year round in Denver. It was 75 yesterday when I was running errands. :)
Wed 10 Mar | Sassy | Guy in the cube next to me did a year in the pen for cracking an NSA box. He's a social reject.
Wed 10 Mar | SteveA | Sweet jesus, you still have snow? It was 87 degrees on the way to work today. 
Wed 10 Mar | Nigel | Sigh. Yes, there's still a foot of snow here. Or should I say 30 cm?
Wed 10 Mar | Philo | I used to crack various systems, but it's mostly repetitive work, so I outsourced it to India. Now they do the cracking and tagging and just send me status reports so I can tout my 733t status. Philo
Wed 10 Mar | Nigel | I cracked into your inbox Philo. Us 733ts outsource for free.
Wed 10 Mar | fw | Actually that's interesting. Where do you draw the line? Say a friend of mine develops something in c, leaves it listening on a socket on his home machine (say on dsl), gives me the source and I find a buffer overflow, i'll probably write a little exploit or DoS (if it isn't important or he isn't showing anybody...) and probably leave him a diff to stop that buffer overflow. It's playful joking. I made a little php site in work lately and was under extreme pressure to get it done (like in the next 30 minutes type of a thing) and move onto something else. I totally forgot input validation (well, enough), so somebody placed a url redirect in there. I found that funny, while using it later I was redirected to a site on input validation in php. If I didn't know these people, I'm sure they wouldn't like what I was doing, same goes the other way around. Anyway I think you'll find a huge percentage of people who would be in the clue how to do such thing, simply send in a diff to fix the problem and forget about it. The only person who would even see themselves as this type of a 'hacker' is a script kiddie (I mean 99.999% here). It really depends on where you would draw the line.
Wed 10 Mar | Tony Chang | We did phone phreaking back when I was 10 years old. How else were we to make 12 hours of prank phone calls to Saudi Arabia, Bulgaria and Cambodia each and every night during summer vacation? Never did any cracking though. Didn't seem anywhere near as entertaining as the prank phone calls.
Wed 10 Mar | dir at badblue dot com | i've always considered myself a hacker for the forces of good.  i've developed consumer-focused, shrink-wrapped products as well as various nifty stuff for the government.
Thu 11 Mar | Aussie Chick | Does sticking a straw in the payphone to make it refund the money and still place the call count as cracking? Nope, well I guess I never did any hacking. But I did think the hackers movie was really cool at one stage. 12Mb of RAM was a screamer of a machine that laptop was.... Actually, I didn't do the phone thing either, I actually got cranky at my friends and told them off for being unethical. I am a real straight person. My dad has wondered out loud at the fact that I manage to turn corners....due to me being a very very straight person.
Thu 11 Mar | Just me (Sir to you) | Decades ago you had to as a student since you were not 'allowed' on the fancy mainframe (this was before PC's where commonplace) as firstyears, and even later you did not get enough of a CPUtime budget (yes, you only got the few seconds they deemed enough for class assignements) to do anything interesting. What can I say? Youth, and times were different.
Fri 12 Mar | Jonas B. | If someone 'calls him/herself a hacker' it's a sure sign they aren't. It's a title you can only give others. And it doesn't count if it doesn't come from someone who is it. ;)
Getting around the technical recruiter | Wed 10 Mar | Steve
Heres advice for everyone that I have used to get around the evil technical recruiting empire. Im sure youre already aware, but just in case: 1) Be Smart: At a minimum, the job posting will state were looking for X,Y,Z and located at City, State . . . google for software city, state . . . tweak your googling by adding technologies X,Y,Z or those related. Yes, youll return a great deal of listings, but its WORTH the work to work around them and I guarantee youll be able to narrow down to the company (if not, youll definitely narrow down other opportunties as well). 2) If the job posting contains industrial relations (ie, medical software or financial industry), obviously tweak your googling appropriately. 3) Go to the technical recruiters website ... many times, the scum will advertise they have worked with firms X,Y,Z . . . couldnt get any easier than that, eh? :) 4) Please, add to this thread your own advice! Do your best to NOT contribute to this blood sucking industry any longer . . . if youre currently employed, recommend they do NOT hire the services of recruiting firms. Volunteer your time to screen candidates. . . anything other than dealing w/ the scum. ;) And, if you are a technical recruiter, please do flame this thread . . . Im ready for a fight!
Wed 10 Mar | Burninator | Alternative approach: Start a recruiting type company, but instead, focus on the programmer as the client, rather than the employers. In other words, like a talent agency, it would be for helping the software guys manage their career. Only top-notch, hard-core developers would be accepted as clients of the firm. To the software guys, the value added is that the firm keeps in touch with them and stays well acquainted with their specific goals, skills, etc - and works with them to help them keep their careers on track, build goals, provide professional advice etc. At the same time, they are there for them when they feel like a change. The firm also acts as an advocate for the client. Companies wanting to hire affiliated software developers would contact the firm and IFF a suitable match exists, that fits with a client's career goals, then perhaps some discussion might take place. Hiring developers this way would be very expensive compared to normal recuriting shops and I'm not convinced the hypothetical firm would do enough volume to stay in business... but we can all dream, right? PS: And yes, I know this is isn't a particularly original idea, since such concepts were discussed at the height of the .con boom. But I never really saw any serious focus on the top talent.
Wed 10 Mar | Christopher Wells | > Start a recruiting type company, but instead, focus on the programmer as the client, rather than the employers. So the programmer, not the employer, would pay the recruiter?
Wed 10 Mar | pds | Burninator, I have only one response to your idea: SHOW ME THE MONEY! I LOVE BLACK PEOPLE!
Wed 10 Mar | Karl Perry | > start a recruiting company ... around the client. This has already been done, about five years ago. Can't remember the name of the firm. Tell you something?
Wed 10 Mar | Li-fan Chen | > Only top-notch, hard-core developers would be accepted as clients of the firm. You'll have to qualify this (which I guess if you are a business man--this would be easy). Unfortunately chances are current recruitment firms already do this. They probably won't take your files seriously unless you look really good on paper, they can afford to take equal care of all clients on file.
Wed 10 Mar | Bored Bystander | Middlemen almost always make as their clients whomever has the money in a transaction. Trying to create a business around a supply of a commodity that has only a weak salability is not realistic. The idea of a 'boutique consultancy run fairly by actual technical people, not shallow marketing droids' is VERY old. Every programmer who gets resentful about the fact that sales people control the playing field gets this idea. It takes a while to grow out of. And you do have to get out and sell something. A bunch of programmers saying 'yeah! down with recruiters, they're arrogant pricks' sounds real good (and is pretty much true). But it is basically a bunch of programmers waiting for someone to pay for something. Ain't gonna happen.
Wed 10 Mar | Burninator | Yeah - I figured it had been done before and couldn't make any money. But we can all dream, right?!
Wed 10 Mar | Bored Bystander | Burninator, one thing I've experienced is that recruiters fill the role of 'outsourced HR manager' for many companies. The following may read like a ramble, but stay with it. It also addresses the original poster's question, how to get around the recruiter. Basically, instead of the client sticking the cattle prod up your ass during the selection and hiring process, it's the agency recruiter. I've seen marketing blurbs for recruiters (the audience being the client company) that point out that a particular recruiter excels at 'controlling candidates'. Now, what is 'control'? Basically, it's any means that can be used to make sure that the candidate does what the client and the recruiter deems necessary. Basically, manipulation. Every recruiter I've dealt with, bar none, enforces a tenuous grasp on a three party relationship that they add absolutely no lasting value to. So how do they do this? Primarily by downing the self esteem and the self confidence of the candidate. A recruiter's schtick is generally something along the lines of: -------- Be grateful I am honoring you by considering you for this job. Your skills in PQZ are rusty. You do not deserve the salary/rate you thought you would get. You only have coursework in ABX, and not real life experience. Even though you used YPJ before and I know it is similar, I will not submit you for ABX. You will fail if you try to look for work on your own. Me and people like me set the playing field, and we have special relationships with our clients to look past people like you. ------ See the pattern? They ALL do this. Even the ones posturing to be the knight on the white horse. And if you were a middleman attempting to make some money off of placing someone far smarter than you, you would manipulate their ego too. My conclusion: your best 'ally' in the job search is a healthy and appropriate self esteem. Period. If you know you 'deserve' the job for objective reasons, everything else will fall into place.
Wed 10 Mar | Sum Dum Gai | Recruiters are like real estate agents. They prey on fear. They know that people need a job to pay the bills, a house to live in. So they feel they can be arseholes because you need them. People say the recruiter is working for the business as their client, and you're just the necessary evil. I think that's rubbish. The recruiter doesn't care about the company any more than they care about you. All they care about is getting paid. The fact the compnay is paying them means that they act like they're working for them, but really, they don't care if the company gets the right candidate. Any candidate that gets them paid does the trick, doesn't it? So I think the key to dealing with these people is one of attitude. Don't let them bother you. I know it's hard when there is your livelihood at stake, but you really have to try. After all, it's they who are acting with selfish intentions, so it will be them who have their own karma they've created come back to bite them in the future. Don't envy them. :) Besides, if you live sensibly, saving a good chunk of the larger than needed to live wage that you most likely earn in the IT industry, you take away their power. You no longer have to have a job to pay the bills tomorrow. You can get one when it comes along. Perhaps that's the real key to dealing with recruiters: to actually plan ahead while you do have a job so that you're not so vulnerable. I see a lot of people who could easily save half or more of their income constantly living from paycheque to paycheque, down to only they money they have in their wallet on payday. Is it any wonder recruiters have such an easy time generating fear under such circumstances?
Wed 10 Mar | Bored Bystander | Sum Dum Gai, you explained the situation perfectly in a different way. What I have against recruiters is that they use negative tactics to control a business relationship, and *all* of them believe their own arrogant condescending bullshit. As they are talking down to you they try to convince you that they are your solution, and if they can't help you, then you are a loser and it is not their problem. A recruiter is to your self-esteem as a magnet is to a floppy disk. Incompatible. Avoid.
Wed 10 Mar | Joel Goodwin | I've been reading the comments on the thread with some interest. I wondered what you guys might think of the other extreme: I've recruiters more than once tell me that 'you're just perfect for this' and suggest that I might *just* be the second coming... but then never get back to me and pretend I was never born. I would guess this is manipulation too, to make one focus on the position being offered at the expense of other recruiters' possibilities.
Wed 10 Mar | Bored Bystander | >> this is manipulation too, to make one focus on the position being offered at the expense of other recruiters' possibilities. Recruiters that are describing positions to the candidate can run the gamut from indifferent to 'excited' and 'proactive' as you describe. So, when a recruiter has gotten unduly 'positive' with me, I figure that something is not right. Again, I have found that this is a deliberate manipulation - it's the recruiter 'control' of the candidate. Sidelining you with a distraction and a supposed sure thing. I've wasted weeks as a result of this gambit. In return, a candidate needs to practice 'fire and motion' and keep moving and ignore the flattery. Money (a real offer) talks and bullshit (anything a recruiter says) walks.
Thu 11 Mar | Trollumination | I'm between jobs, having just gotten my PhD and currently searching for a proper postdoctoral position, and all I want is to work some temporary post in the meantime. I don't live very large, and although I live in an expensive college town I could quite easily pay my bills off of a $10/hour fulltime job, although I would be happy to work at something ambitious. Naturally I figured that a temp agency would be the best thing, but all I've gotten is rudeness, arrogance, insults, and manipulation of the sort you guys are describing. So far I've applied to three temp agencies in town. Results have been disappointing - it's been 6 weeks so far, and not so much as a day's work scrubbing toilets has come out of it. The first agent was pleased to spend half an hour with me discussing possible job openings he would submit me for - and that was the last time he's condescended to spend working with me since. We've had phone conversations which are like pulling teeth to get a word out of him - see, he's a busy man working with other applicants all day - and he keeps throwing up my own words in my face with a smug tone in his voice, seemingly proud to not be able to find me work. Oh, I've got a PhD, and I'm not planning to be in town for more than a year, and that screws everything up. See, his clients MIGHT want to take an employee permanent and he can't even take the slight risk of giving them anyone who isn't fully committed - now if I'd said I'd be in town for a couple years, he might be able to get me a 2 month position somewhere, but now he can't trust me to be reliable enough for that. His tone of voice carries a sneer, an ugly undertone of someone who doesn't like stuck-up college boys and considers me to be one of them, implying that he'd sooner leave a job shoveling turds unfilled than risk his reputation by submitting me for it. And he certainly can't waste his time or his confidentiality (it's all secret, the clients insist, don't I know?) by letting me come and look through job postings with him again. More crap at another agency the first time I showed up - despite that I had a prior appointment, the recruiter refused to even speak to me unless I spent the next 90 minutes (as estimated by the desk girl) filling out an inch-thick pile of stupid forms I'd been previously given. He shouted at me rudely for about 20 seconds, crumpled my resume up and shoved it back into my hands, and strode off proudly ignoring me as I asked him to wait. This left me alone with his receptionist who cringed as if I was about to start smashing up the office or rushing after Mr. Suit ready to slug the fucker. I think she has to deal with that a lot - riled clients who are ready to deck Mr. Suit, and then this girl gets to try to soothe them down. Couldn't they just get a less assholey recruiter? I managed to leave without making a scene, though, I'm a gentleman after all, not like the smug bastard who has a job while I don't and gets to treat me like dirt because of it. Another temp office - really part of my former University - treated me with a bit more courtesy, and after three weeks somehow managed to call me in for interview and typing tests (on which I did well, how strange) and told me I'd be interviewing for a $11/hour fulltime position that would basically be the answer to all my immediate problems. That was two weeks ago, the position was 'withdrawn' or so I'm told now, after playing phone tag extensively just to get a word back. Yeah, these recruiters must think that it's good business to deliberately humiliate their candidates and to be assholes. The sick part is that my friend is a trucker, between jobs now, and his agency finds him usually 35-50 hours of work a week and doesn't treat him like this. I guess you don't fuck with truckers, but it's alright to treat techies like dogshit. Less risk of a tire iron knocking out teeth, right? Maybe we just need a less wimpy reputation, maybe that's the only answer. I mean, starting a programmer or techie or science-centric agency is a good idea in principle - but sales folk will have to be hired, they'll realize just what they can get away with, and it'll become just like all the other agencies. The 'competancy tests' suggested above will just become yet another ritual humiliation - failure on any small segment will be rubbed in gleefully, while success will be followed by promises of immediate interviews and weeks of stony silence. And every time unemployement goes up a little, the recruiters will realize that they can abuse most of their inoming programmers without adversely affecting their business at all - will do this with the hope that those who take it with a smile will work for the cheapest price - will build up a backlog of long-term unemployed techies who will work for starvation wages just to feel productive - and, being salesdroids, will happily lie to their supposed 'programmer' bosses without any guilt or difficulty about what they're doing. If this agency does succeed, it will either become just like the existing agencies - or be bought out by one.
Thu 11 Mar | Burninator | You're a better man than I am, Trollumination. I would have yelled blue goddamn murder if someone treated me the way that recruiter treated you (shoving the resume back into your hands). It's very hard to get me riled up, but that would have been seriously, seriously provocative; behaviour like that isn't acceptable and in my view, it's perfectly reasonable to take immediate steps to ensure that such behaviour is never, ever repeated.
Thu 11 Mar | Vlad Gudim | burninator, your 'top-notch programmers agency' idea won't work simply because a happy programmer-star doesn't change jobs as often as good companies hire people. In addition, companies as clients have greater spending power. Lets say you expect a $85 000 revenue per recruiter per year. Lets say a good company hires 2 candidates per year and you get 20% (something like $12 000 in $$$ equivalent) of first yearly salary for every successfully placed candidate. You will need only 7-8 such companies per recruiter. Then lets assume a happy programmer would change a job once in three years (if not much less often) and is willing to pay at most $2000 for his successful placement. It makes more than 128 programmers per recruiter to meet the revenue requirements, moreover administration costs are much higher.
Thu 11 Mar | Aaron F Stanton | I've made the mistake of being more than a little bit naive and letting a recruiter do some looking for me for positions at Lilly. Big shock, it hasn't panned out. She tells me that she thinks I'd be a good match for a position and could she just get a little more information so they can decide soon...then nothing - I don't hear from her for way too long, so I call or email, and 'Oh, that went to another candidate.' So I search the recruiter's website, and amazingly, the position is still listed - in fact, there are three openings for the same position listed. There's even another position listed that I would be a better fit for than the one she presented to me. I apply to them online and send her an email about it. I get back a pretty panicked email from her the next day asking if I could call her to make sure she can present me for the positions properly. Man, what a total waste of time. Recruiters seem to be yet another buffer layer between the person wanting the job and the person doing the hiring - along with receptionists, HR, and personal assistants. I don't want to slam receptionists, because for god's sake don't you dare replace them with yet another frickin machine that makes me run through a maze of buttons that you can't back up in, but HR people are useless when it comes to figuring out who should be doing what job, in my experience. Personal assistants only serve to keep people out of their boss' office, so from the boss' perspective they are worth their cash, but to someone looking for a job they are just a pain in the ass.
Thu 11 Mar | no name | > Recruiters seem to be yet another buffer layer between the person wanting the job and the person doing the hiring Actually I think you mean 'bluffer layer'. The number I have encountered who have anything vaguely resembling a clue is very small.
Thu 11 Mar | Ken Klose | The best way to get jobs in our industry is through our peers. Period. Exclamation point! What we need is a site, ala this one, where people like us can say 'I'm a java guy avail in Central NJ', and someone can say 'We've got a java opening'. Etc. Problem is, no one will participate in it until THEY need a job. If you're a technical employee and you refer a hire you might get a referral fee of $1K to $3K, hardly worth your time. But if you're a vacuous sub-human recruiter and you place a $90K/year developer, you might walk away with $20K-$45K.
Thu 11 Mar | Though it seems IJH is also taking please for jobs... | Not so much an IJustHeard.com as a ICanDoThatGizzaJob.com, you mean?
Thu 11 Mar | Bored Bystander | Damn, some of you guys hate recruiters even more than I do. Which I have no problem with. Trollumination, you said: >> The sick part is that my friend is a trucker, between jobs now, and his agency finds him usually 35-50 hours of work a week and doesn't treat him like this. I guess you don't fuck with truckers, but it's alright to treat techies like dogshit. This got me thinking. Maybe part of the problem is that recruiters mirror the elitist tendencies of our industry. The attitude being that if you're not 'in' or not k3wl, you're sh*t. The snotty, passive-aggressive, condescending treatment you guys are describing comes sometimes from some techies and managers who work in IT or IT related job roles who are vetting candidates. I recall calling a small company advertising for programmers back in the early 90s. The guy that I talked with was some head geek there. He was dripping with condescension. It was like I was the lowliest of the low, he would say or promise nothing, I was ooooobbbviously untalented because I did not have his job. The guy deserved a longneck beer bottle smashed in the middle of his face, followed by a really good asskicking. So, while technical recruiters (and most of the temporary staffing industry) do tend to be scum, don't ignore the field they're working with. We - our culture as programmers and IT people - may be partially to blame.
Thu 11 Mar | i like i | Recruiters seem ruder and ruder the less and less jobs they have available. I've always had more success by finding companies that I want to work for and approaching them direct. I've moved three times, and each time this has been successful. I also know a recruiter (for another industry). Nice person, she never intended to be a recruiter, it was just a position she applied for. Standard procedure beginning the 'relationship' with a agency: ask you about all your current applications. Will question whose side you think they are on if you hold back anything. But basically, if you go get those jobs without them they won't get any commission; so they will follow up the jobs you are applying for by approaching those companies with their 'services' and portfolio. That way they hope to get the commission for those jobs, whilst stopping you getting a job so that the job you do get is through them and they get commissions then too...
Thu 11 Mar | Gator | Here are 3 classic moves from the recruiter's playbook. Can be used seperately but usually combined. 1. The Pump Up 'An associate of yours that I'm currently representing told me I should contact you about this opening.' This person got your name either off the web or milked it from someone you barely know. When you ask who, he/she declines due to company privacy policies. Most times this person doesn't actually exist but makes you feel like a rock star and that people are whispering great things about you behind your back. Every human wants that. 2. The Correction After you tell him/her a few places you've worked, the recruiter picks your last place of employment and tosses out the bait as, 'Ahhh... XYZ Corp. Is Paul Smith still the Dev Mgr there?' There is no such person as Paul Smith. You feel it's your duty to correct him and say, 'Uhh, no actually it is Jack Jones.' As he scribbles down this info he apologizes for confusing it with another place. The next day he calls Jack Jones and repeats step #1 above. 3. The 2-for-1 Special Once he determines that you're serious about leaving your current place, he finds out who your manager is. Typically through using #2 above on someone else. Then the next day he calls your manager for a simple introduction and explains if he can ever be of service, etc. While he is trying to find you a new position, he is also priming the pump with 3-4 other folks that he'll pitch to the manager once you have left. Typically it will be another 'just checking in' call when he learns from the manager that there is now an opening. He acts surprised and quickly offers his 3-4 candidates to make a quick replacement.
Fri 12 Mar | no name | Here's an example of the 2-for-1 Special. In advertising agencies, people typically work in pairs of writer and art director. One day a writer contacted a recruiter looking a new art director to work with him. The recruiter said she would get straight onto it. Then she rang the writer's boss and said she didn't have an art director, but did have a writer/art director team that was available. So the ad agency sacked the writer and hired the team.
Anyone else frustrated tracking projects+knowldg? | Wed 10 Mar | The real Entrepreneur
Hi, Is anyone else frustrated by a need to: * TRACK projects, organize them in an outline (thinking in the outline) *VIEWING outstanding projects items (ignoring done and future and maybe do projects/tasks). * Searching through projects for a problem you fixed previously? I get an idea and I like to jot it down somewhere so I can refer back to it ONLY if I need to later (Maybe do...). But then Ill be chugging away on a project and something will come up and the project gets tabled for a few weeks or months. Having the project nicely organized on the computer makes it easy to get back to that project. Id want to see a list of things I need to do today, without the clutter of projects on hold, or that dont need to be done for 6 months. Or I might have ideas like when my daughters are 12 years old, remember to teach them about saving money, and read the The Bank of Dad book again. And, when I fix a bug (bugfix project) Id like to later be able to search on that bug to see how I fixed it last time. EACH PROGRAM SOLVES ONLY *PART* OF THE PROBLEM It seems that most programs fall into several categories: 1. Kowledgebase - used strictly for storing /retrieving information. Boolean searching, but No ability to schdule tasks. Outlining capability is mediocre. No ability to mark a task done, etc. 2. PIM - for storing addresses, email, etc. Mediocre search capabilities. Often difficult to organize thoughts (poor outlining, etc.) 3. Task organizer: Simplified PIM with some KB features. Lacks boolean search capabilities. Id like to schedule my projects and tasks and easily think in outline format, then track my current projects and search for existing projects and project information and past projects/information. (I.e., Oh, I fixed this bug last year.... how did I do that). Basically, Id like to be able to THINK on the computer so that its searchable, organizable, and shareable. DESIRED FEATURES 1. Boolean search on text of article. This is an easy feature to implement (I created it in a KB program of my own back in the early 90s) 2. Simple date scheduling Schedule a task or project for the future, so it doesnt show up till you need to worry about it. (I.e. April 1 : finish taxes, etc.). This doesnt even need to be a fancy calendar. I just want to be able to push back things to clear my plate so I can focus on CURRENT issues. 3. Easy to use tree style interface for outlining and moving tasks around. 4. Hyperlinks from one tree to another. 5. Group tasks into projects. Ideally, allowing a task to be linked to multiple projects. Virtual linking would be best. So, a task might be linked to Project sand off deck and context (or project) Buy @ Home Depot (This might be accomplished with the hyperlinks in #4) DOES ANYONE ELSE HAVE A NEED FOR ALL OF THESE? There are dozens of programs for each of the above tasks (Tasklist, outliner, PIM, knowledgebase). But nothing comprehensive. Anyone have any suggestions of programs? Or, perhaps this is a great idea for some out of work programmer to work on?
Wed 10 Mar | Lou | At work I've started using a private Wiki to track all that 'When I'm doing X, make sure to do Y and not Z'. It's freeform enough that pretty well and I can keep track of changes over time - that's nice. For keeping track of projects and to-do items at work I use a self-built tracking system. I modify it as I need to, it's pretty basic but it allows me to keep track of a running dialog and monitor things pretty easily. Both of these have a relatively low overhead and provide a substantial benefit to me.
Wed 10 Mar | Phillip J. Eby | Have you looked at LifeBalance? It has an outliner view, and a list view that shows only active items by project, ordered priority, and colored to show closeness to due date *relative to anticipated duration*. So, at 2 task durations before due, it shows up on your list in green, and it turns yellow once you're at 1 task duration before the due date. Overdue shows in red. You can define 'places' that represent contexts such as 'errands', 'phone calls', etc., and mark what context a given task occurs in. Each outline entry can have its children be either parallel or sequential, so only your 'next action' shows up on the to-do list, or all of them. Each entry can also be scheduled on specific dates, or set on a 'n days/weeks/months since last time' basis. 'Places' can include other places, so you could define 'Home Depot' as a place that gets included in the 'Errands' place. So, if you view your available tasks under Errands, the Home Depot tasks will show up. Assuming that Home Depot is open, of course... and you can actually tell it what hours Home Depot is open, and the tasks will only show up during those hours, unless you uncheck the checkbox that limits the list to items for places that are 'open'. About the only thing it doesn't do is boolean text search, although I believe it *does* have full text search. But I think somebody's working on an exporter to take its 'exchange' files and make web pages out of them. Anyway, it's available for PC, Palm, and Mac: http://llamagraphics.com
Wed 10 Mar | Fred | Take a look at the venerable Ecco. Its outline is pretty good, and is the main reason people stick to Echo over more recent PIMs. http://supportweb.netmanage.com/ts_viewnow/downloads/patchesUnsupported/ecco.asp
Wed 10 Mar | The real Entrepreneur | Yes, I've looked extensively at Ecco. Steep learning curve, but powerful. But it lacks the boolean search. Am I unusual in that, after I fix a bug or solve some problem, that goes from being a project ('fix network bug') to being a solution that I might later want to search for.
Wed 10 Mar | The real Entrepreneur | Phillip, Lifebalance looks interesting. It does have a global search, although for only a single word/phrase (no boolean). I like the concept of spreading your effort around. I (try to) do that instinctively, I realize now, with my business ('time to spend some effort on marketing', etc.) . health to extend that to PERSONAL as well.
Wed 10 Mar | anonymous | I've always thought that project management, bug tracking, contact management, feature requests, source control, and task management should be part of one system. Here is an overview of how I see the process flow happening: Bug report comes in attached to a client. Bug is assigned to a staff member and added to their task list. Bug is fixed and all source control transactions are attached. Bug is closed and client is contacted. Feature requests would work in a similar manner. Projects would be created for clients and tasks/features would be divided up and assigned. Bug reports could be attached to the project. The system should probably act as an email client as well with the ability to attach emails to clients, projects, bugs, and/or features.
Wed 10 Mar | Thinking Hard. | Take a look at ToDo list : http://www.codeproject.com/tools/ToDoList2.asp Don't let the simplified interface fool you. There are many config options without being bloated. Well worth an evaluation. It's free and the source is available.
Wed 10 Mar | Thinking Hard. | Let me also add this. ToDo list is the most popular project on CodeProject. Dan listens closely to all suggestions. If the program is lacking something you need, suggest it in the comments section (at the bototm), and it will probably get implemented fairly quickly.
Wed 10 Mar | Simon Lucy | The number of times I've started developing this kind of all encompassing tool probably equals the number of times I've become frustrated with using the assorted bits and pieces in whatever project and environment I've found myself in. And the problem always comes up that what is fine for me and useful, isn't for you and making a shrink wrap flexible enough to match all the squirrelly requirements of all the developers out there would likely end up in some kind of consultancy-ware zillion switch from hell. So having not developed the 'map the whole universe and make it as simple as a clockwork Thomas the Tank engine.' I go back to combinations of a collaborative web site/crm plus issues tracker, a spreadsheet or two and source control. Oh and a lot of use of msn, yahoo, talkers, irc whatever.
Wed 10 Mar | Mark Mac | At work, I used to use MindManager for a lot of this stuff: http://www.mindjet.com/ when I worked more on my own. Now that I need to collaborate/organise across a team we a Wiki, you can integrate it with Bugzilla - but we have to use a crappy in-house bug/enhancement tracking tool. The main reason that I stopped using MindManger is that it was my personal copy and my dept wouldn't go for lics for everyone. The other advantage of the Wiki is that all you need is a web browser to contribute.
Wed 10 Mar | The real Entrepreneur | I, too, use a combination of software programs. And it drives me *crazy*. Problems with that: 1. Can't search through all the programs in one fell swoop. My task list is in one place. Notes and such are in another place (where I can include pictures, web pages, hyper links, etc.). 2. it's too much work to move the information from the Project manager/list manager into a 'solutions' file. (So a bug stays in the proj list where you can't search for it.)
Wed 10 Mar | The real Entrepreneur | Is it just impossible to create a program that would meet the needs of a large number of users? What are the absolute MINIMUM features you'd need to see in a program? And how much would you be willing to pay for each feature?
Wed 10 Mar | The real Entrepreneur | ME: 1. Boolean search on text of article. $10 This is an easy feature to implement (I created it in a KB program of my own back in the early 90's) 2. Simple date scheduling $10 (Don't show this task until X date. Highlight it on X date) 3. Easy to use 'tree' style interface for outlining and moving tasks around. $10 4. Hyperlinks from one tree to another. $5 5. Group tasks into projects. $10 6. Ability to put project and task into a particular context ('Grocery Store', 'Work', etc.). And then display all tasks/projects for that context. So, if I were going to the Grocery store, I could look at everything I have to do there. $10 7. Rich text for article contents. $5 8. View tasks by Project, By context, with simple date filtering (Don't show tasks or projects that aren't due yet. Show only tasks/projects due today) $10 Total: $70. I'd happily pay twice that if it did all of the above well.
Wed 10 Mar | Philo | If you have access to MSDN, set up a SharePoint portal and try it out - I'm pretty sure it'll handle everything you need. I'd be interested to hear feedback from a dev team that tried out SharePoint for collaboration on their various projects... Philo
Wed 10 Mar | Clay Whipkey | I am about to have Sharepoint dumped on me at work.  I'll try to remember to post here about my experiences with it.  There is even talk of being sent to a training for it.  Oh joy.
Wed 10 Mar | mb | we use sharepoint portal server for some of this. i don't much like the UI in sharepoint. the issue tracking is a start but not very flexible, I'm writing some code right this minute to supplement how it works for a customer. how is your experience with searching? seems to be an important feature of any such system. we still use a combo of stuff--wiki, things in sharepoint, email, archived email, a bug tracking tool. hey philo, do you know how to read from an external data source (e.g. bug tracker) into a sharepoint view? other than writing a synchronization tool to keep the data in both places. that's one of the big problems--info in multiple places.
Wed 10 Mar | entell | It is interesting that you bring up the need for such an app. I was planning to write one up. As a matter of fact I had something bigger in mind. I wanted to tie together even e-mail and simple spreadsheet-oriented tasks such as keeping track of your finances. I was also thinking I could allow the app to have plug-ins for further improvements plus a way to launch external programs from within the app in case you just don't want to give up using some particular other app you are used to. Bringing together all your sources of information makes it easier to search for things in one attempt. Relating and linking all the information would be easier too if they were gathered at one place. So you could potentially fire up this app and leave it expanded on your desktop. It kinda replaces your desktop since it has links to all your other apps etc, notes, whathaveyou... One problem I immediately saw with this app was, why would anyone stop using whatever app they are used to, and start using this new app. E-mail would be one such component. I guess it would be easier if there was a way to import your current stuff into this app so that you don't lose what you already have. I did quite a bit of (google) research and found lots of solutions similar to this app, but most apps are not as inclusive as the one I have in mind. I still want to write it for my own use since I can't stand using 10 different apps for something which really requires centralization, but perhaps there is solid interest from others too. What do you think? Any suggestions?
Thu 11 Mar | Aaron F Stanton | entrepeneur - by your requirements - should a task/project be able to fall into more than one project/context at a time?
Thu 11 Mar | Ivan Erceg | entell, check out Zoe (http://zoe.nu). It can integrate itself into the e-mail route so one can still use his own e-mail client. I feel that Zoe is the right way to go - seemless integration, web access, boolean search. It also has some nice additional features like FTP access to all your e-mail attachments. However, it's e-mail-only so it doesn't directly help with project organization, taks nor anything else. It also lacks ability to add comments and new links to mails in the db. So, what I would like to see is something like Zoe with different objects (not just e-mail) all with different behaviours (like tasks can be scheduled, etc.), linkable between themselves and with other resources and on top of all that Wiki features (so that I can easily add, edit or delete comments) Since Zoe can be integrated into the e-mail route and works as a server, it can be made to automatically send scheduled emails, boolean query results (e.g. you do a search on unfinished tasks in groceries context and then send results to your partner's cellular :), etc. One could even post tasks, todos, etc. to Zoe directly thru email although that would open additional security issues.
Thu 11 Mar | The real Entrepreneur | Aaron F Stanton, A task could fall into multiple contexts, but probably just ONE project. My view (still evolving) is that a Project is where you organize a sequence of actions (and information) to achieve some goal. It's where the thinking and plannig go on. A CONTEXT is WHERE/WHEN the task is completed. So, a context might be : Grocery Store, Office, etc. Also, a context might be 'update Program #5'. The idea being that there's an overhead to getting in/to a CONTEXT (driving to the store, cracking open source code and subsequently testing changes to a program.). The idea is that you might want to do many tasks that are in the same context at the same time. Get all your stuff from Target or the Grocery store at the same time. Make all your changes to a program at the same time.
Thu 11 Mar | Philo | mb - create a dataview webpart in FrontPage 2003 - you'll have access to any ODBC/OLEDB data source you want. Hope this helps, Philo
Fri 12 Mar | Aaron F Stanton | Entrepeneur - I think I understand - contexts are tasks grouped to avoid overhead. A projects might have a set of tasks in different contexts, and by grouping tasks across projects you can make progress in multiple projects because all the tasks are related by the same context. I need to buy groceries to make chili, spaghetti, and chicken parmesan. I'm not going to make all three at once (different projects) but I will go to the same store to buy them (same context). Very interesting concept.
Fri 12 Mar | The real Entrepreneur | Exactly - the goal is to minimze 'startup' overhead. If I'm going to modify a program, I'll need to do through regression testing, whether I make 1 change or 50. Might as well bundle them all together.
Bizarre Situation | Wed 10 Mar | Nathan
I applied for a job with a lengthy application this past summer. Interviews went well (I thought) but after a week or so I got a form email saying no positions matched my skills. No problem, life goes on. A month ago this company calls me up and says they want me to interview. I told them I already applied, and I didnt get one then. Recruiter for the company said, Well, you were a recommend for hire from everyone that interviewed you, but because because we didnt have a recruiter, people fell through the cracks. He literally begs me to interview again, so I do. I ask if I can use application I used last summer, because it was a pain in the neck to fill out. He said no, send a new one. The interview goes great, and recruiter calls me back after saying theyll be making an offer in next day or so. A week goes by without hearing from them, and then I get the same form letter I got last summer. I call and ask the recruiter what happened, and he said that my second application wasnt as complete as the first application, and so I was dismissed by HR because I was obviously hiding something. He said I need to fill out the application again and send it in. I asked if I could have a copy of the first application I filled out so that Id be sure to not hide anything. He said hed see what he could do. Its been a couple days, and I havent heard from this guy (before I interviewed he was calling me 2-3 times a day). Im somewhat annoyed that they wasted my time, but more importantly I find this to be somewhat sad. The software guys are trying their best to hire good people, but crufty HR processes keep blocking them out.
Wed 10 Mar | no name | Sounds pretty disfunctional.  Might be best to stay away?
Wed 10 Mar | Elephant | Dysfunctional maybe.  I've seen simmilar behavior from the boys in Redmond.
Wed 10 Mar | entell | It sounds like an evil catbert is at work in HR! Ask them if they have any pointy haired bosses work there. :) Jokes aside, I second the post above. This much disorganization and distrust towards potential employees is not that good. Why couldn't they just call you up and ask about the discrepancy between the two forms? Did you apply to FBI by any chance? :)
Wed 10 Mar | Nathan | It's a job that requires a Secret Clearance.  I guess I assumed that the second application was an update to the first application.  I knew they had the first application, they knew I knew they had the first application (I requested they just use the first application), so I don't see how they could think I was trying to hide things.
Wed 10 Mar | Saleo | First off let me say that I can feel for HR these days. They have to deal with all the hiring/firing as well as insurance, employment regulations, training, etc. I think this overload is the root cause of why the HR function is no longer effective as it once was. My guess is the whole company is run this way, not just HR. If you have nothing to lose, send an e-mail to the software folks that interviewed you and tell them what you posted here. If they do something to bring you in through the back door then they're cool. If they toss it back to the HR person, then they're idiots and you know it was truly a waste of time.
Wed 10 Mar | Aaron F Stanton | I had one company send me a letter thanking me for an interview and saying that they had no open positions at that time...despite the fact that I had never been in for an interview.  After that I had a friend of mine do an end run around the HR department and get my resume' directly to his boss, which resulted in an interview and subsequent hire.
Wed 10 Mar | no name | What exactly did you leave off in the 2nd app?
Wed 10 Mar | Lou | It may be that the recruiter is to blame and not HR.  Is it possible to do an end-around and check with HR to get the straight story?
Wed 10 Mar | Nathan | There was a question about being involved in any lawsuits. I mentioned in the first application that I was involved in a class-action lawsuit against a former cell phone company. I bought stocks from them a couple years ago, and they lied on their books, and the stock price plummetted, and i *think* i'm part of the lawsuit... haven't heard anything about it in about a year. I actually don't know if the case has been dropped or is ongoing or what. I neglected to put that on the second application. I really didn't think much about it, and since I provided that information in the first application, why would they think I was hiding info in the second?
Wed 10 Mar | Nathan | Now that I think about it, I assume that's the only information I left off the second application.  I might have not listed as many jobs on the second.  I think I listed my past 3 jobs on the second app, and the first I probably listed more.  Not sure.
Wed 10 Mar | Clay Dowling | First, keep in mind that an HR person has an entirely different mindset than a programmer. The things that make them good at their job in general would be considered disqualifying deficiencies in a programmer. They're concerned with routine and proper filing and making sure everything gets done in the proper order. People who are really good at dealing with this get very flustered when the routine is broken, when chaos sticks its nose into their little corner of the world. Change the interface to the software that they use every day and you'll think that the end times had come. If they're good at it they'll have a strong need to feel in control of the situation and they'll become very annoyed when somebody does something that challenges that control. Their emphasis isn't on results, but on process. This isn't meant as a criticism. Their job is all about process, and if their brains don't think that way they'll have the company in deep trouble and the employees hunting for them post haste. But developers are definitely not geared that way. If the job could be boiled down to a fixed set of procedures to follow we'd all be out of work in a hurry.
Wed 10 Mar | Fernanda Stickpot | Tangentially, I would recommend that you take copies of every application form before you send it back.
Wed 10 Mar | Exception guy | The fact that they want to hire you but can't reminds me of 'Interviewing With An Intelligence Agency (or, A Funny Thing Happened On The Way To Fort Meade)', about a guy who tried to get a job with the NSA, but got jerked around for months about his clearance, and didn't get hired. Maybe you should reconsider applying to defense-type jobs, as I would guess that you should expect that sort of thing generally.
Wed 10 Mar | David Fischer | I had bad interview situation as well almost two years ago. I interviewed with a friend at a large company. Interviewers were late to my presentation, and late to meet with me. But despite the glitches, it went well and I was told informally that I'd receive an offer in a week or two. Two weeks go by with no contact. Two more weeks go by with no information I call and inquire as to the situation. I learn that I'm too experienced for the job and it's been given to a recent graduate. This is crazy! They knew I was completing my Ph.D. and there was no indication it was an entry level job! It takes two more weeks to receive the formal letter. Three weeks later, I receive an offer. :) What happened was the position was still be tossed around by upper management as to whether it should be an entry level or experienced-level position. It got switched to entry-level after my interview. And, they had too much work, everyone was overwhelmed, the main HR lady was out and someone was filling in for her and (mis)handling my case. They then opened a new vacancy appropriate for my skills. I later took a position at a different department of the same company. And on the inside I better understand how things could have gone wrong with my interview. Everyone was just overworked and spread thin. Managers were overloaded with day-to-day issues and trying to hire on top of that. Unfortunately, I know we've lost at least one good candidate because of a similar paperwork snafu. I now recommend working around the system when possible. Talk directly to the manager interested in hiring you to understand the situation. Call HR to directly address problems. Inquire repoeatedly for formal decision letters just to get things clarified.
Wed 10 Mar | Steve | It's because you're faced w/ the bottom line: 'Working through a recruiter HINDERS your ability to: 1) Get a job. 2) Get paid fairly for the job.' Notice I use the word 'hinders', which means it is possible to land a position and even a position at decent pay via recruiters, but understand recruiters first interests are NOT with you. Their first interest is getting the best qualified candidate as cheaply as possible. If a cheaper candidate, who's just as good, comes along at ANYTIME up until the point you have a 'signed offer letter' from the company in your hands, *you are expendable* Trust me and my experience, that IS what is happening. What you'll want to do is go ahead and get snubbed, again, by this recruiter and this opportunity . . . then, shop through the company yourself in a few months. The recruiter is no longer tagged to you at that point and you'll be able to negotiate your own salary. Technical recruiters are scum.
Wed 10 Mar | The real Entrepreneur | 'he said that my second application wasn't as complete as the first .... I was dismissed by HR because I was obviously hiding something. ' Wait a minute. If they HAD the first application, why'd they make you fill out ANOTHER one? Reminds me of a teacher I had back in high school. I left my name off my paper (she was a stickler for rules). She said 'I'm giving you a zero because you left your name off of it and that creates work for me.'. I asked 'how do you know it's MY paper?'. 'Because I saw you hand it in'. 'Then, how did that create work for you?' This is the same teacher, in physics explained ' 1 pound of feathers has more mass than 1 pound of lead because the feathers are more *massive* [waving arms]' I wish I'd thought to ask 'What's the mass of each one?' ahrrrgggg!!!
Wed 10 Mar | Nathan | Steve - I thought at first this guy would be different since he was a recruiter that worked for the company.  But now my impression of recruiters employed by a company has fallen to the level of my impression of technical recruiters in general.  I can't argue your position that they are scum.
Wed 10 Mar | Nathan | real Entrepreneur - i specifically asked if they could just use the first application.  They said no.  I'm not thrilled with HR departments.
Wed 10 Mar | Steve | Here's advice for everyone that I have used to get around the evil technical recruiting empire. I'm sure you're already aware, but just in case: 1) Be Smart: At a minimum, the job posting will state we're looking for X,Y,Z and located at City, State . . . google for 'software city, state' . . . tweak your googling by adding technologies X,Y,Z or those related. Yes, you'll return a great deal of listings, but it's WORTH the work to work around them and I guarantee you'll be able to narrow down to the company (if not, you'll definitely narrow down other opportunties as well). 2) If the job posting contains industrial relations (ie, 'medical software' or 'financial industry'), obviously tweak your googling appropriately. 3) Go to the technical recruiters website ... many times, the scum will advertise they have worked with firms X,Y,Z . . . couldn't get any easier than that, eh? :) Do your best to NOT contribute to this blood sucking industry any longer . . . if you're currently employed, recommend they do NOT hire the services of recruiting firms. Volunteer your time to screen candidates. . . anything other than dealing w/ the scum. ;)
Wed 10 Mar | . | It sounds like the recruiter / company has a policy of not hiring people who might, if they are wronged, exercise their legal rights. That is a pretty suspicious policy as wrongful lawsuits generally fail. In other words, an honest company has little to hide. Folks, the answer is to stop putting up with this shit from recruiters.
Wed 10 Mar | . | Just saw Steve's post and wish to endorse what he says. A lot of jobs recruiters present these days are actually selected off companies' public web sites. They're there for you to go direct if you just find them, and that's what everyone should do. Recruiters try to get companies to force all applicants to either go through them, or work through them, even if they find the job and apply themselves. If you encounter this, complain like hell to the CEO and your local politician. Recruiters are absolute scum and should be put out to pasture.
Wed 10 Mar | Ron | Hold on, there's some misconceptions here about recruiters. Recruiters work off an agreement with the hiring company, and are typically paid around 25% of the new employee's first year salary. So the more the new employee makes, the more they make... so they can't just pull jobs off of web sites, because they need that agreement. However, what is correct is that recruiters are scum. Because of the large amount of money they get, they'll 'advertise' all kinds of non-existant, sexy jobs in their ads or cold-call extensions at large companies. Once you send them your resumé, they then literally spam it to every company on their list, sometimes including your own. I guess if you're desperate, it doesn't cost you anything, and you get a job. But they're evil, evil people.
Wed 10 Mar | Nigel | The recruiters that I've talked to don't do a lot of spamming because it often doesn't pay off. They get 0 dollars if you've previously applied to the company yourself. They only get money if the company hasn't received a resume from you. That's just what I've heard though.
Thu 11 Mar | Inside Job | Ron, there are no misconceptions here. Recruiters manipulate and lie to steal as much money as they can. With staff placements, there's not much leeway for them to screw around because the employer knows how much he's paying the staffer, and thus what how much he's paying the recruiter. That's not the case for contracting, where recruiters pocket as much as they can. This can be up to 70 percent of the worker's pay, and even more, if the worker is uninformed or from a low-wage country like India. IT contractors used to think recruiters got them the highest rates possible, but it's actually the other way around.
Thu 11 Mar | Kyralessa | '[Recruiters] get 0 dollars if you've previously applied to the company yourself. They only get money if the company hasn't received a resume from you. That's just what I've heard though.' Which handily answers the oft-asked question of why every single company makes you fill out an application.
Fri 12 Mar | Jack of All | Tangentially? Who the heck uses words like tangentially? No offence ;)
your sleep pattern | Wed 10 Mar | entell
I have been experimenting with my sleep pattern for a long time. I have read about good sleeping habits which amounts to at least 7-8 hours per day every day, and preferably between the hours of 10:00PM and 6AM. Well, unfortunately my body doesnt like any of this advice. First of all, I cannot get myself to fall asleep at 10PM. I tried lots of things including exercising, taking soothing baths, etc... I followed these for months. No luck. I am incapable of falling asleep at 10PM unless I havent slept for a long time and I am completely exhausted. I am guessing this is a psychological issue. I think 10PM is so darn early. Secondly, I have trouble getting up early in the morning. I have always been this way. Even as a little kid, I just couldnt get up early. Not a morning person whatsoever. It seems like as long as I get up around 10am, I am in best mental and physical shape all day long. It almost doesnt matter what time I go to bed either. To get 8 hours of sleep, going to bed around 2-3am works the best. Obviously this is not acceptable for an 8-to-5 job. I used to work for a small company and this worked out wonderfully. I could come and go as I pleased, as long as I put in my hours. Now I work for a bigger company and I have to follow the 8-to-5 routine which is not that great for me. These days, I try to be in bed by 12 (not tonight), and get up at 7. When I wake up, I most often feel like I got hit by a truck. Unless I sleep the 2-to-10 interval, I always wake up this way. It usually wears off in about 30-45 mins, but I hate waking up like that. I am wondering how you guys are coping with your sleep duration and time interval, etc... p.s. In case you are planning to link my sleeping issue with my life style, even though I am not necessarily looking for advice, here are a few facts: I have no medical problems that my doctors know about, I do not eat after 8pm, I do not have bad eating or drinking (only decaf coffee) habbits and I take my vitamins. I try to exercise but no as often as Id like.
Wed 10 Mar | Michael H. Pryor | I'm in the same boat. I've always had trouble getting up in the morning and in fact all through high school I was nauseated every morning when I woke up. Eating sometimes helped a bit. But I even went to the doctor and had them do one of the most uncomfortable procedures I've ever had, just for them to tell me I was fine. I think my problem is more related to the number of hours I sleep though. If I get < 9 hours, I fall asleep in the afternoon. If I get > 10, same thing. Between nine and ten hours is perfect. Could be the heavy lunches too, but I'm in great shape and work out four times a week so I need to eat a lot. (Maybe it shouldn't be all at once though, split lunch into two meals or something). So now, I just go in to work when I wake up around 10... but it's usually 7 or 8 pm when I leave. After the gym and eats, it's basically 11 or 12 and there isn't much to do. So I waste that 12-2 period doing nothing and then start over again. I wish I could wake up earlier and go to bed earlier, but don't see it happening.
Wed 10 Mar | Aussie Chick | I am the complete opposite. Dmy final year of highschool, I would go to bed at 8pm every night. I would wake up nice and early too. I am still like it, I feel like I have slept in if the clock hits 7am. It is a great way to be with the typical 9-5 work hours. Everybody likes a sleep-in from time to time, but I usually take mine during the week, ie I might sleep in to 7.30/8am. I love it. I get up earliest on the weekend, definetly out of bed before 7am. This gives me a huge day in which to do heaps of stuff, I love having the entire day ahead of me. Bedtime used to be 11pm/12pm ie aiming for 6 solid hours sleep, + 1 hour tossing and turning trying to get to sleep. Things have changed a bit being married, my husband likes to be in bed by 9.30/10 and will sleep until 7am. 9hours sleep is too much for me and I end up feeling so bored trying to get to sleep. But I have increased to about 8hours sleep and am feeling alot healthier for it.
Wed 10 Mar | Sleepy head | Exactly the same 'problem' here. If I sleep 8 hrs - from 2am to 10am - I feel rested and with full stamina during the day. If I sleep 8 hrs - from 10am to 6am - I feel like a junkie on a permanent bad fix of adulterated shit during the day. So it's not a matter of sleeping hours. I really don't know the scientific reason for this (if any) bu it's driving me nuts, I have to wake up in the morning at 6, five days a week, since work starts at 7 and it doesn't improve with time (I've been waking up at 6 during the last 3 years), so neither is a matter of 'geting the habit', whatever it is. Good morning.
Wed 10 Mar | Crimson | I have the same problem. For me the solution has been one of two things. 1. Staggered sleeping patterns (ie, 8 hours one night, followed by 5 or 6 the next so that exhausted that night). The sucky thing about this is I feel crappy halfway through the days when I only got 5 hours of sleep the previous night and I'm convinced I'm less productive on average through the whole day. 2. However the best solution for me is regular exercise. The most obvious immediate benefit of regular exercise for me was more regular sleep patterns (never mind the other areas of general health).
Wed 10 Mar | Prakash S | some things to follow that might help you guys: -eat 5-6 meals everyday instead of 3 meals a day. eat in smaller portions. - don't eat after 8-9 pm, and don't sleep immediately after eating. -work out 3-4 times a week -try to sleep and get up at the same time everyday - even on weekends. -get a minimum of 7 hours sleep everyday. If you would like to ideally get up at 7am, and are currently getting up at say 10 am, try getting up 15 - 30 minutes every week till you reach your goal. Accordingly adjust the time you go bed. Also, set your mental alarm clock to get up at whatever time you want to get up. Cheers,
Wed 10 Mar | Prakash S | For some people whatever you try will not work simply because your biorhythms work differently from others. Its 4 in the morning as I type this !
Wed 10 Mar | Sathyaish Chakravarthy | Me too. I sleep the same routine - 2 AM to 10 AM mostly. When I am not doing more than 18 hours in the office, I leave the office at around 11 PM, reach home by 1:30 AM, read or watch TV till about 2 or 3 AM, then go to bed. From 8 AM to 10 AM, my folks usually will keep doing their best to wake me up. It'll be anything from screaming, to switching on the TV full volume (or anything that makes lots of noise), or sprinkling water on my face. But I'll usually get up at 10 AM or 11 sometimes. When I don't get disturbed in the 8 AM to 10 AM zone, I feel very relaxed during the rest of the day.
Wed 10 Mar | Just me (Sir to you) | Sleeping patterns have a genetic component to them. I remember from a BBC Horizon documentary this case of an Italian family where all of the family members just can't keep from falling asleep at 3pm, except for an unlucky daughter who did not inherit the gene, and that spends the afternoons at family gatherings all by herself. I used to be a 11am-3am person all my life, and given the opportunity I still tend to revert to that 'natural' state. Work obligations and family life have had me adopting a 7am-11pm pattern, but it took me about 8 years before it felt OK.
Wed 10 Mar | Extraveral | Please excuse my poor English - I am not a native speaker. Melatonin is excellent for regulating your sleep pattern. I have used it, and it helped me a lot. You can get it from http://www.melatonin.com/ It resets your internal brain clock. Let's say you want to go to bed at 10:15 PM. At 10:00 PM, take a Melatonin pill, for a week. Most likely you will fall asleep at 10:15-11:00 PM. After a week of this therapy, you will naturally fall asleep at 10:15. You will naturally get very, very sleepy, and fall asleep. One caveat: if you take too much melatonin, then you are going to sleep 20 hours, OR you are going to wake up after 8 hours and feel very bad for another 10 hours or so. If this happens to you, lower your dose until it doesn't happen anymore. I take about 0.5 mg doses. An 1.5 mg dose makes me sleep for 20 hours or so. Another caveat: say you want to set your falling asleep hour at 10:15 PM, but you stayed up until 2 AM. DON'T take melatonin. Take something else, like Valeriane (80 mg), etc.
Wed 10 Mar | Justin | You lucky, lucky bastards. I need about 7-8 hours to function normally. I have to get up around 6am. I currently go to bed around 10.30-11, if allowed. My wife keeps me awake until midnight/01:00 am. I usually get woken at around 2.30 either by the light which has been left on or the gentle rasping burr of her snoring, which to a tired person sounds like a wounded moose strapped to a cement mixer. I get woken again at around 4am by my 3 year old son demanding either the toilet or to sleep with Mum and Dad. He kicks me in the back for half an hour. I get often get woken sometime shortly before 6 by the fact that its freezing and the duvet has been taken by wife&son. Lie angrily shivering until alarm gives me a reason to get up. I live with the permanent buzz of a tiredness headache.
Wed 10 Mar | x | This is amazing. This matches my natural daily patterns too. I spent five years in a 9 to 5 job and was always tired. Nowadays I work till 2 am or later, till I'm tired, then fall asleep straight away, sleep well and wake around 10 am feeling like a million dollars. This pattern was actually useful when we had our child. I would handle the late shift, to about 3 am (if he woke up, wanted a bottle etc), then my wife would handle the early shift, because she always wakes up early. Makes you wonder about the corporate world and its stupid schedules.
Wed 10 Mar | Rob VH | I am not a morning person by nature. However, I was able to adapt by following this program: Step 1: Have children. Sleep as you now know it will cease to exist. Now that I'm a parent, if I get 6 hours of uninterrupted sleep in a night, I am ready to take over the universe when I wake up. Step 2: Get up even earlier. When I try to be up by 6:30-7:00, I oversleep consistently. Now, I get up at 5:00 every morning. My job requires longish hours, so I start work at 6:30 so that I can still leave by 4:30-5:00. Lastly, (maybe you're already doing this) Don't drink anything caffeinated (sp?) after lunch time. Good luck...
Wed 10 Mar | Dave Hallett | I'm one of the 'late' people. Going to sleep at about midnight, and getting up at about 8.30 am works well for me. Getting up too early makes me nauseous, like the other poster. I saw a science show about this once. Apparently, the 'larks' among us (people who like early morning, such as my wife) have very strongly-entrained Circadian rhythms. So even if they have a late night, they still wake up the same time the next day. Whereas the 'owls' (people like me) have easily disrupted Circadian cycles, and end up all over the place. Their advice to owls was to try to keep to very regular habits to try to get their cycles better entrained. Melatonin might well help with this: I've found it useful for jet-lag, but it should be avoided by anyone prone to epilepsy, as it can trigger a seizure, according to US health authorities. I personally doubt that that's the whole story, as even if I get very tired (four nights in a row with only 3-4 h sleep does it for me), I'm still far more likely to fall asleep in the late afternoon than in the middle evening. Nonetheless, I have done a job where I had to get up at 6am, and was OK. I just wasn't properly awake until about two hours later. Good thing I wasn't driving to work...
Wed 10 Mar | a cynic writes... | mmm...I'm a night person, my wife a morning person. It's not an ideal combination apart from dealing with our 5 year old - we do it in shifts. Being forced to get up I sleep 1-7am. If not it slips to 3 or 4 - 9 or 10. I agree with Rob - when they're really small kids will keep you up. When our youngest was newborn I only kept going through coffee and since when I had a cup I made it for the department as well you had me like the living dead and everyone else twitching.
Wed 10 Mar | Ray | Wow, lots of late people. I used to be like that as well. Work until 8-10pm, go home watch some TV be in bed at 11:30-12, up at 8:30 or 9, at work by 10-10:30. Of course there wasn't much time for anything besides work so as I got a little older (and smarter :) ) I decided that I should trim back my work hours a little. During this time I was living in one city during the week and working while my wife was at home going to school at the university close to our house (about an hour's drive from where I lived during the week). When my wife was done school we moved closer to my work, my wife got a job as a teacher and needs to be at work before 8am. We also tend to get a workout in before work 4 out of the 5 work days. So the alarm goes off at about 5:20am and I try to drag my ass out of bed before 5:30. When school is out during the summer it is much, much harder to get out of bed (might have something to do with not being yelled at by the wife to get out of bed :) ). I don't drink coffee after noon usually (and when I do I know it when I am trying to get to sleep) and I find it very hard to keep my eyes open past about 10:30 at night. Some times even getting past 9 or 9:30 is a challenge.
Wed 10 Mar | entell | Wow! Lots of late-night people! That's good to know. :) I personally would never take medicine to induce a sleeping pattern. If it is not happening naturally after much trying, it can't be good to force my body to do something it doesn't want to do. I used to feel bad for getting up late, but if I sleep from 2am to 10am, I still have the rest of the 16 hours in the day. It is just that my 16 hours are slightly shifted with respect to other people's... Besides, I love to work in the quiet of the night when everyone else is in bed and there is nothing but infomercials on TV!
Wed 10 Mar | The Ted | When I worked in the restaurant biz, I was a late person. Now that I have an office job, I'm a morning person. I used to go to bed at 6:00 a.m., now I get up at 6:00 a.m. Haven't had any problems adjusting to either one.
Wed 10 Mar | Go West | When I visited the west coast after living in central time all my life it was perfect. I got up at 6-7 AM  (8-9 CST) feeling refreshed and went to bed around 10-11PM (12-1 CST), so some might not recommend this but if it was ever possible moving a couple time zones west would do the trick.
Wed 10 Mar | Riley Lark | My sleeping patterns are flexible, which is nice - I can stay up until whenever and be fine after only about a day. The trouble happens when I don't have to be up at any given time. I stay up for about 18 hours and sleep for about 9 when left on my own.. over the course of one unscheduled month I went through a complete cycle (sleeping only 29 times in the 30 nights) in which I became completely nocturnal and then came back around to the daylight. So, I guess I'm an owl and a lark.. heheh.
Wed 10 Mar | JWA | I'm surprised how many of us are the same sleep-wise. I'm also perfect in that 2am-10pm pattern. The only problem is when (like today) I get a call from someone out in the business world who thinks that everyone gets to work at 8:00 or 9:00. Otherwise the 2-10 is *perfect* for me too, and what I usually follow. --Josh
Wed 10 Mar | early bird | I'm a morning person. Didn't use to be I don't think, though it's tough to tell. I took a paper route at age 10 and had to get up early to deliver papers. Kept that through college, so 'up early, sleep early' feels normal to me. I know I'll tend to slip to sleeping in when on vacation, so my early bird mentality is more a habit than biology. My experience is proclaimed night-owls are generally single, childless, and stay up late watching TV or playing computer games. Most folks with other responsibilities learn to adapt to a schedule that fits the rest of the world. Now, I'm not doubting certain people are truly night owls, but I'm pretty sure it's mostly a learned behavior. Want to get to sleep early? When the sun goes down, turn out all the lights in your house (and the TV and the computer). Your body clues in that it must be bed time (body cycles are tied to light/dark, ask anyone with light deprivation syndrome). Like most behaviors/patterns, it takes a while for your body to ingrain the shift.
Wed 10 Mar | Sassy | I think this night-owl tendency is probably linked to our occupation more than physiology. I think most people's sleep patterns are habitual, not physical. Programmers sem to enjoy working long, long hours late into the night. It's a part of their culture. I am of the opinion that the culture programmers (and to a degree, corporate America) have created for themselves is ultimately physically and emotionally damaging. Working 18 hours a day is *not* healthy, and sleeping opposite the diurnal cycle is probably not either. Anyway, I' up at 6AM, at work at 7, out the door at 5PM sharp. Bedtime is 10 or 11 or whenever I'm tired. I just found the SEC filing which states our executive compensation, and decided I will never, ever, work a late night or weekend again.
Wed 10 Mar | Ken Klose | Riley, I'm the same way. In fact I'm just bringing my sleep schedule back around to a 'normal' one this week. All last week I was asleep during the day, awake all night. I saw a documentary where they did a study of putting people in closed environment for 6 weeks or so with no outside clues as to what time it was (daylight, clocks, tv, radio) and found that they all quickly tended to get into a 27 hour day. I guess that means the solution to all our sleep problems would be to slow down the Earth's rotation a bit... I think if used the deflector dish to create a static warp-bubble we could...
Wed 10 Mar | Sassy | I saw that documentary too - but didn't the people also become depressed and physically ill?
Wed 10 Mar | John C | When I was a teenager I used to sleep for what seemed like 8-10 hours and I was still tired. Nowadays I can't sleep for longer than about 3 hours, so I'll maybe get a couple of 3 hours of sleep each night and I'm absolutely fine. I do loads of hardy exercise and never really feel tired. I had an ex-SAS history teacher at school who used to say he only slept 4 hours a night and I though he was a liar until I turned out the same way. I can't even remember what 8 solid hours of sleep is like. Must be about 10 years ago now...
Wed 10 Mar | Sgt. Sausage | Me too -- late sleeper. I have a 5 hour sleep cycle. Typically I go to be about 4:30 AM and I'm up and moving by 9:30, in the office by 11:00 AM. The 5 hour thing is a bit weird. If I get 5 hours (complete a full cycle), I wake up feeling great. Anything less and I feel like I haven't slept at all. The weird part -- it runs in a cycle so if I get up after, say, a 7 hour sleep that puts me somewhere in the middle of the nextcylce, I feel like total crap again, but if I sleep 10 hours I'm AOK. It's like I've got to get through the entire 5 hour cylce, and if I start another, I'd better complete it or it's not even worth it. Weird.
Wed 10 Mar | Dignified | 'The weird part -- it runs in a cycle...' According to a class I took in college* people do sleep in 'cycles', generally consisting of an hour and a half. It varies, of course, person to person, some lower, some higher. They explained the same things you did, waking up in the middle of a cycle, even if it's later, gives you less energy, than a complete cycle, even earlier. The professor went on to say that the most efficient (on what scale, I don't know) way to sleep would be 1.5 hours (or whatever cycle-length you had) at a time, and then awake for, say, 3 hours. Repeat. But for logistical reasons people don't do this. * As I remember it, the prof was taking crazy pills, so this whole thing could be completely inaccurate.
Wed 10 Mar | Stephen Jones | A few years back the research was all pointing to the fact that you didn't need to sleep, just to dream. Somebody woken up in the rapid eye movement stage of sleep would try and sleep again, but somebody woken up in the sleep between would be fine. It appears that sleep was simply a wrapper for dreaming. You dream about five times a night, so this explains the one and a half hour syndrome that was referred to. Like most of the posters here I am an 'owl'. Left to myself I do find I go to bed just after dawn, though even one a long vacation I find it hard to keep that pattern. If I have to get up about 8.00am I can manage it; for the last couple of years I've been on the 'late shift' at work, which involves starting at nine (and thus waking up around eight). I find I can manage the eight hours about three days a week, and grab six the other two, making up the difference at weekends. If I have to get up at six to start work at seven I am pretty tired by the end of the week, since I never get to bed before midnight, or even one. The interesting thing was when I had to get up at six every working day for four years; we used to finish by two-thirty in the afternoon at latest (one thirty in summer) so I found that I was living two twelve hour days. I would go to bed at two in the morning, wake up at six, go to work and then go back to sleep at three or so after lunch; I would then get up again at seven in the evening, and go to bed at two or so at night. I foloweed this pattern with complete regularity for four years. Incidentally, I don't think it is the occupation that produces the sleep patterns, but rather the other way round.
Wed 10 Mar | flamebait sr. | One question... Have you tried adjusting your sleep shedule slowly instead of all at once?  Often times, that gives better results.
Wed 10 Mar | VP | If you have a significant other, ask them if they've ever noticed you stop breathing while sleeping. Had some sleep tests done and it turned out I have moderate sleep apnea. For various benign reasons, you can stop breathing, which forces your body to wake up. It's never enough to make you conscious, but enough to keep you from getting deep sleep. So no matter how many hours you sleep, you never feel rested. For my type of sleep apnea, the most effective treatment is a CPAP machine which stands for Continuous Positive Airway Pressure. You basically wear a mask that's always blowing air, inflating your airway, keeping it from closing. It's good for freaking out my kids. It keeps them from coming into our room in the middle of the night. They can keep their nightmares to themselves while mom and dad have a peaceful sleep. I've only started it recently, so the verdict isn't in yet. But it makes me sad to think how many years I've lived with this. How many lost opportunities because I didn't have the energy for them. Of course your tiredness could be related to drinking too much caffine, not drinking enough water, or a ton of other things. I just wanted to point out another issue.
Wed 10 Mar | Mac | entell, I cannot put it any better than you did. I am exactly like you... Luckily I can still manage to sleep from 2am-9am (unless there's early meeting at 9) in my current job (official hour 10am), although not perfect but still damn close. I think this thread can be a great resource for anyone doing research in psychology. Someone can definitely write a PHd thesis for it.
Wed 10 Mar | christopher baus (www.baus.net) | I have to say my sleep pattern is directly correlated to the amount of exercise I get. Unfortunately our jobs do not tend toward getting much exercise. I took a week off last month and snowboarded and skied hard (http://www.baus.net/ for pictures!) everyday. I was asleep by 11 and up by 7:00. I felt good. During the work week, I'm up till 2:00 and wake up about 10:00. Less than optimal. I don't feel nearly as good. Working might have something to do with not feeling good.
Wed 10 Mar | Bleh | I need about 8-9 hours sleep a night; but at the moment, I'm sleeping from about 12 through to seven in the morning. My partner claims he needs about three hours of sleep a night; but since he's been sleeping seven-ish hours a night he looks a lot healthier.
Wed 10 Mar | entell | I did try slowly easing myself into an earlier sleeping schedule, but didn't work. I think I know part of my problem. I am always active. Being active medically means, my brain is constantly thinking... Apparently even reading books that excite you is no good. About 45mins to 60mins before bed time, we are supposed to decrease mental activity to ease the brain into sleep. Looking at a computer screen is apparently also bad (I learned this one just recently). There is no way I can stop activity completely an hour in advance of my bed time. I can barely sit still without doing anything, be it reading or watching or at least thinking, for 5 mins when I go to the bathroom.. :) Therefore I have to exhaust myself until 2-2:30, and then head to bed with my eyes barely open and crash into sleep in 2 seconds. I hate going to bed, tossing and turning and wasting precious time in the meantime. I do love sleep, but I admire the ones who don't have to sleep as much.
Wed 10 Mar | www.marktaw.com | Given no outside stimulus (i.e. work) I typically go to sleep in the early morning... in the 4am to 8am range, sleep until at least noon maybe 2pm, and if i wake up earlier will want a nap in the late afternoon, and won't feel refreshed until I do. This was my habit ever since I can remember, since I was 12 at least, maybe even earlier. However, one important exception to this is when i was backpacking. then I would go to sleep at a reasonable hour... midnight, to 2am probably, and wake up normally around 8 or 9 maybe 10. I attribute this to *wanting* to wake up in the morning. Actually having something to do that day that was interesting to me, and not just the normal routine. There was also an almost complete lack of stimulus - most other people were asleep, no computer, and i didn't feel comfortable watching TV in the common room of the hostels. Books don't really count as stimulus because they rarely actually keep you awake. Another common thing for me, especially in high school, was bike riding. I would ride my bike & listen to music, books on tape, the radio, all night long for 4 or 5 hours several times a week. I think if more of us adopted a tribal lifestyle - were consistently with groups of 10 - 200 people, rather than fragmenting our companionship between work, home, and out - we would be very different. The solitary electronic entertainment, that doesn't care what time of day it is and never goes to sleep is constant companion to too many of us.
Wed 10 Mar | Brad Wilson | There is no magic. You just need to do it. I was a late night person until I moved to Colorado. My now wife had to be at work no later than 7 A.M., because they were supporting people in New York, two time zones away, that worked a pretty strict 9-5 schedule. If you're forced to get up at 5:30 A.M. like I was, it doesn't take long until you're ready for be at 10 P.M. I suppose goign slow works, but going fast definitely works, too. No matter what time you go to bed, set the alarm for your intended wake up time. Put the alarm clock far enough away that you have to physically get out of bed. A day or two of being dog tired will convince your body you're serious about it. Just do it on one weekend so your weekdays don't suffer, and you should be cured of your late night hours. :)
Wed 10 Mar | Rob VH | If you really need help getting out of bed early, you could always do a stint in the army. In basic training they have professionals who will help motivate you to wake up early every day. :)
Wed 10 Mar | Ian Olsen | Physical activity has always been the key for me. Driving a desk, you just don't wear youself out sufficiently to be tired after 16 hours awake. When I work out hard, I'm ready to crash at 10. And I feel much more rested when the alarm goes off.
Wed 10 Mar | Stephen Jones | Saudi they wake up the recruits at 3.30 in the morning to run around the parade ground for an hour or two. then at six they send isnpectors round to the English classes to report any sleeping recruits (and their English instructors). Last war they were directly involved in (excluding the Gulf War where they were more of a hospitlity facility) was against the British in 1952, unless you count the one they lought by proxy in the Yemen in the 60's. Probably a good thing!
Wed 10 Mar | X the Owl | I'm an owl, big-time. Luckily I have very flexible hours at work, so I only get up early if I have a meeting or I get paged. I have been more aware of my sleeping patterns and protective of my sleep in general since I read this article on sleep's role in mental performance and learning: http://www.supermemo.com/articles/sleep.htm Hmm, I wonder how much better I'd have done in school when I was a kid if I wasn't forced awake every morning. Morning-time nausea is the worst. At least now I know it's not just me being lazy, but my genetics. I've worked some crazy schedules in the past, including the graveyard shift, and my body always returns to the same schedule of wanting to sleep from about 2am to noon. Actually, I've been invited to too many AM meetings lately, so I've blocked myself as 'Busy' in Outlook from 9a-11a weekdays until the year 2050. :)
Wed 10 Mar | Philo | Coupla thoughts: 1) First and foremost I haven't seen my #1 answer: exercise. I'm a 1am-8am sleeper except when I manage to get into an exercise regimen. When I'm working out, then I'm in bed by 11pm and up at 5-6am. In addition when I'm working out I drink a lot of water instead of soda, so I'm hydrated and not on quite the caffeine/sugar kick. 2) I think the thing about late nights is the keyboard. If you geek at home, then in the evening you're likely either chatting or working on problems, both of which will keep you involved and your brain active. So not only do you not want to go to bed, when you do your brain is firing on all cylinders. Spend the evening reading, relaxing, etc so your brain can start winding down. 3) Regarding waking up, I really really want to get a 'dawn light' - it's an alarm with a lamp on it. About a half hour before the alarm is set to go off the lamp starts coming on, getting gradually brighter and brighter, like dawn. In theory your waking up is more natural and restful than simply being jarred out of REM sleep by a loud buzzer or music. 4) Cut down on the carbs and eat more protein, also keeping your body in a more native state. Philo
Wed 10 Mar | www.marktaw.com | Lots of great advice Philo.
Wed 10 Mar | Martha | Early bird wrote, 'My experience is proclaimed night-owls are generally single, childless, and stay up late watching TV or playing computer games. Most folks with other responsibilities learn to adapt to a schedule that fits the rest of the world. Now, I'm not doubting certain people are truly night owls, but I'm pretty sure it's mostly a learned behavior.' Yup, you're an early bird all right. With completely good intentions, you're repeating all the hogwash that has been perpetrated by your ilk since time immemorial. In my experience, morning people simply do not understand that there are people who are not like them. Yes, we owls can learn to adapt our schedule to the mold forced on us by the rest of society. It doesn't mean that this is a good thing, nor is it the most healthy thing *for us*. 'Mostly a learned behavior' my ass. I don't know any night owls who used to watch Saturday morning cartoons as a kid. (Chalk me up as another 'it doesn't matter how many hours I sleep, as long as the last two hours are 8 - 10 a.m.')
Wed 10 Mar | Philo | I'm a night owl and I watched Saturday morning cartoons. So now you know one. :) Philo
Wed 10 Mar | Brad Wilson | Early through high school, late in college, early again now. And I watched cartoons as a kid. So there. :-p
Wed 10 Mar | entell | Philo, I would like to comment on the things you mentioned, but first of all, I have to tell you that every time I see your nickname, it reminds me of *Philo dough* which gets me hungry for pastries! Mmmmm... :) Ok for #1, I do exercises, however, the problem is that since I am not a morning guy, it is even more extremely painful to get up earlier for exercises. Therefore, I end up doing mine at night a little after dinner.. Usually around 8pm. Now, I do heavy duty stuff which really tires me out while I am doing them. Well they used to anyway when I first started. Now that I am used to the program, instead of getting me tired, it wakes me up even more! I used to play basketball everyday after school when I was in college and that was really great. I would play until I couldn't lift my finger and that was a really good way to go to bed early. I wish I had time to do that now. For #2, you are absolutely right. My brain is firing on all cylinders late at night. The problem is, I cannot wind down after I come home since I work on my own project. I would like to become an indie at some point and kiss my corporate America job goodbye. Therefore I have to work. Otherwise, relaxation would probably be easier. For #3, I did see those things advertised on TV. I really cannot comment until I try, but I doubt that it would work for me. I leave my curtains open so I can wake up with the real sun, but it doesn't work. For #4, no offense but I am kinda sick of the Atkins diet fad. I know you didn't mention it specifically, but I had to say it. I almost completely eliminated high fructose corn syrup sources (soda mostly), and sugary snacks (especially the ones with artifical sugar) from my diet. I don't drink diet stuff either since they have all that not-so-real substances in them which can't be good for anything. Our bodies do need carbs more so than proteins or at least just as much. Where people go wrong is what kind of carbs the body needs and how much. A balanced diet consisting of *real* food (no twinkies and cupcakes are not real) is, I think, the right answer. By the way, animal fat is really no better for you. Soybeans might be the way to go... They don't taste like much though. Off to another late, quiet, productive night.... :)
Wed 10 Mar | Andri Rasjid | I sleep at 10. Sometimes wake at 2-3 am to do sholatul-layl (night pray) then read the Qoran. Then I wake up again at 5 am - do the morning pray then take shower, eat breakfast, go to work at 7 am. I work usually until 6.30 pm and then go home. It's just a matter of habit. I've been doing this since my teens. If you nurture a habit of late night sleeping then your body and mind will adjust to it therefore it will be hard to adjust in later age.
Wed 10 Mar | Philo | Argh. I should've specified that I wasn't talking Atkins, which I strongly disagree with. Just that you should try to eat more protein. Check out www.fitday.com and track what you eat for a while. I was *amazed* at how little protein I was eating. And this is the dawn clock I want to try: http://www.hammacher.com/publish/70460.asp?promo=el_clocks Philo
Wed 10 Mar | Prakash S | Philo, that is a pretty cool product.
Thu 11 Mar | Stephen Jones | But it's still an alarm clock, and if you read the link to www.supermemo.com you will see that it is hte concept of an alarm clock itself that is evil. The link to supermemo given above provides some really thorough and interesting information.
Thu 11 Mar | Aussie Chick | I wish I could have your sleep patterns at the moment. 12.25midnight, hours more work to go. A deadline of 12noon. yucko.
Fri 12 Mar | bglenn | That dawn clock looks cool, i would definitely try it out, but it doesn't have a radio.
Software contracting | Tue 09 Mar | Alex
Does anyone have any links to sites with some good information on software contracting? Best practices, things to avoid, things to do, yadayadayada. Googling for this type of stuff is always hard -- all the links I get are for contracting companies, when Im not at that level yet. Thanks for any help.
Tue 09 Mar | Norrick | Asking for advice on 'software contracting' is like asking for advice on 'industry' in the late 18th century. What exactly are you trying to figure out how to do? Attract clients? Write proposals? Gather requirements? Run a project? Code? Test? Deliver? User support? Accounting? Recordkeeping? Branding your business? Incorporate? If you can throw out a more specific question, I'll bet there are some smart folks here who can answer it! ;)
Tue 09 Mar | Alex | Ah-hah, good point. I'm on the side of the project that has a big stack of abstract requirements and a general idea of what needs to be done. I can cut the project into pieces and layout what needs to be done, but what I need is some advice on 'how I go about finding contractors to do the specific tasks that I need done.' How do I find quality contractors? How do I write usable specs for the contractors? How billing is handled? And how does one deal with the problems that result, whether they be schedule slipping, poor quality code, etc etc. Basically, does anyone have any books or resources on how does one hires and manages a team of contractors and ensures that the end project is on time and Doesn't Suck?
Tue 09 Mar | Alex | And to further qualify what it is, its a development project that will involve some web/database/biling work coupled with a bit of semi-embedded work.
Tue 09 Mar | Clay Dowling | The best bet is to find somebody whose work you know already. Find another company who's hired outsiders to do some development work for them, and get their recommendations for who's good in your area. If you are a member of some sort of business networking group or the local chamber of commerce, that's probably the best bet. Barring those resources, drop me a line privately with your project concepts.
Wed 10 Mar | Everything sucks. | > ensures that the end project is on time and Doesn't Suck? The guy who wrote mutt wrote 'All mail clients suck. This one just sucks less.' Personally I think he could have said 'All software sucks. This just sucks a little less.'
Fri 12 Mar | Gerard | Alex: I'd recommend two books to read first:- 1. Leading a Software Development Team, Richard Whitehead. 2. Rapid Development, Steve McConnell (and have a look at the Construx website). Both have a good discussion of software project issues - the first is a very 'hands-on' treatment; I like the author's writing style too. I'm not sure exactly what you mean by 'contractors' - will you be hiring people to work under your direction, paid by the hour and probably all under one roof - or are you farming out the production of well-defined deliverables to be worked on off-site? If it's the former, you are responsible if things don't go according to plan - so you will be managing these people, more or less as if they are permanent staff. If it's the latter, you and your contractors will have to agree on terms for payment, delivery, conditions for whether the deliverable is satisfactory and penalty clauses. Regarding the hiring of paid-by-time contractors, whatever you do, don't just farm this out to an agency / internal HR and start filling up the vacancies with the first ones that get sent to you. You will regret this later as it is very likely that a proportion of these will be unsuitable. That's not to say don't use an agency or your own HR department, though: they are invaluable for wading through 100+ initial telephone calls with potential contractors - but you are going to have to get involved with the selection process yourself: and this will involve getting some code written by the contractor before and / or during an interview (preferably both). You will be astounded at the gulf between what is claimed on people's CVs and what they can actually do in practice. I'd pay a *lot* of attention to what I would loosely term as 'personality issues' during the interview - do you think they would commit to the work and would they fit into the kind of team you have in mind? I'm a firm believer in 'gut feeling' at the end of an interview - don't try to persuade yourself to hire someone if you have nagging doubts after the interview. If you are using an offsite contractor firm, look for a portfolio of work (and references to go with it). Get them to submit a bid and see how this is done, what questions are asked. I would be very wary of anybody who can automatically beat all of their competitors in price and time, or who just says 'yes, no problem' to all your requirements and contract terms. Enjoy the reading! Regards,
MS Word/Excel propensity to select w/mouse | Tue 09 Mar | pb_canuck
Anyone know how to fix my main usability peeve with Office? (I know, many possible funny answers to this lead-in). Heres what bugs me: if Im in an MS Word document, and use the mouse to select some text thats a little off my screen, chances are Word is going to go hog wild, and Ill wind up selecting many, many more pages worth of text than I want to. Similarly, in Excel, its all to easy to start out selecting a range of cells with your mouse, but *BOOM* as soon as you move off screen, youve now selected a thousand-plus row range (even if 1400 of the rows are blank). Now, I know if I use the keyboard, and PgDn, PgUp and (I forget) either ctrl or alt, that I can limit this...but is there anyway I can teach my mouse to be less selective - not accelerate so quickly in Word, or NOT select blank areas in Excel.
Tue 09 Mar | Viper Rage | Word and Excel selection sucks big time. For example, try selecting all the text in a Word table cell. Word somehow thinks it should select a lot more than you indicate. I used Lotus AmiPro and other word processor, and none had this problem. Hey, Microsoft, please fix the text selection problems in your products! Even WordStar, Word Perfect and AmiPro got this part right!
Tue 09 Mar | Jordan Lev | Yes this is very annoying. I know of no way to train the mouse, but you can train your hand -- when you are beginning to move off the screen, only budge it a pixel or two past the window. The farther off the screen you drag, the faster it scrolls. So if you only go a tiny bit off the screen it will scroll much more slowly. Also, there is a shortcut in Excel: Ctl-Shift-8 <--this will select an entire region of data. Sometimes it works well (although it is not always the proper solution to your problem). Good luck! -Jordan
Tue 09 Mar | Code Monkey | Well as you found out Word Selection sucks but here are a few shortcuts you might find helpful To select a 'word' just double click it or press F8 twice To select a 'sentence' just press ctrl key and click on the sentence or press F8 key thrice To select a 'line' click on the margin before the line To select a 'paragraph' doube-click on the margin before the paragraph
Tue 09 Mar | matt | Even on a smaller scale, MS programs exhibit this overzealous selection.  For example, when you try to select text in IE it will always grab the entire word the cursor is on and the whitespace after.  Very annoying!
Tue 09 Mar | David Fischer | 'For example, when you try to select text in IE it will always grab the entire word the cursor is on and the whitespace after.' The behavior is more nuanced than that. Click and drag in IE, and the first work is selected one character at a time. All subsequent words, though are selected as entire words. Similarly, if you start the selection inside a word, it selects charaters until you reach whitespace. Then it auto-selects the entire word. I generally find this useful, since I normally copy/paste entire words and not word fragments or individual characters. But it can be annoying if that's your goal.
Tue 09 Mar | John C. | I haven't found a good mouse-oriented solution, but I use the Shift+arrow keys alternative all the time, and that works pretty well for me. Alternately, put the selection bar at the beginning, scroll to the end, and then Shift+Click to select everything between the old location and the current location. To echo an earlier poster, I agree Word's 'logic' for selecting contents of table cells sucks hard.
Tue 09 Mar | mb | BTW, the way whole-word auto-selection is supposed to work is that you try to select a partial word, the tool is nice and selects the whole word (the 99% case), then you can back up (keep holding the mouse down), go over the word again, and it stays in per-character mode. this works in IE6 and Word 2003, and also previous versions though I remember it sometimes still insisisting on whole-word selection
Wed 10 Mar | richard | Slightly OT: Try selecting a word with the mouse, keep the button pressed down and watch your CPU usage shoot up to 100%. Use the keyboard and the CPU is unchanged. Use the keyboard
Wed 10 Mar | Ken Klose | So is does anyone know of a way to hack this in Office and/or IE.  I'm a java guy, not Win32, but could an enterprising Win32 programmer create some sort of plug-in that would let you configure the way text selection worked in MS Apps?  Or one thing not exposed on some level by an API?
Wed 10 Mar | Martha | mb, thanks for that tip! It does seem to work, though it takes a bit of practice to figure out exactly how. To explain it further, try to select 'oes seem to wo' in the sentence above. Start by clicking right before the 'o' in 'does'. Drag to the right, past the beginning of 'seem': both 'does' and 'seem' will be selected. Backtrack a bit so that only 'oes' is selected; now drag to the right again. This time, the selection will be 'oes seem'. Keep dragging to the right, all the way to 'work': the selection will be 'oes seem to work'. At this point, the instinctive thing (backtrack to the word 'to' then go back to 'work') doesn't work. Instead, drag to the right one more word (', though'), *then* backtrack to 'work' and select only the two letters you want. Ta-da!
Thu 11 Mar | Just me (Sir to you) | mb, you are my hero! Thanks for that great tip.
Thu 11 Mar | Stephen Jones | In Word you can simply turn off the feature by going to Tools|Options|Edit. Where it does come in useful is when you want to iitalicize, make bold or underline individual words. if you have the option to select the whole word turned on then you just need to click inside once and press Ctrl + I (or B or U).
Fri 12 Mar | ozzie oldfart | guys and gals, F8 used (once) nails a selection anchor and the next leftmouseclick (in Word or Excel 2K) selects the appropriate intervening block. Alt-click in Word selects a column block. Easy, but uncertain if this works in OfficeXP. (aside)-who remembers B or K? Borland rules ok! I think this outrageous behaviour is designed to help MSwheel mice sales. You can wheel up to your block endpoint if you have a wheel. Can be slow going, though. Thanks for reminding me of the one thing I hate the most about Word apart from clippy, the search/replace tool, autocapitalisation, the way corporates regard anything outside of a DOC file as nonexistent or invisible (such as test scripts, source code diffs, leave requests or my favorite - team meeting minutes) all saved with the grief made manifest by the LAN support rabbits' cookie cutter installation options. I mention this because there is little point in visiting Tool/Options unless you can control your own box. If the new order allowed futzing, then Office can be tamed into a useful form, but centralized procrustean (look it up) administration ethic brooks no individuality. Even the army quartermaster went one better with, 'We have two sizes, too big and too small.' Go figure. Do bring in your own mouse if you have to. (feel much better now)
The Future of Programming Languages | Mon 08 Mar | Dave
How do you think programming languages will evolve?  Will the continue to be character based?  Rich text based?  Will they demand a more robust alphabet with specialized symbols?  Will the be iconographic?  Will object oriented languages me the norm?  If not, how will OO evolve?  Will OO evolve, or simply be replaced?  With what?  Will there ever be compilers that allow the developer to input natural language and output assembly?  Will IDEs of the future contain expert systems?  (By that I mean, will the IDE simply have the developer say, "Sort that list", and then the IDE determines the most efficient sorting algorithm to implement.)  Whats the time frame?  Will we ever be rid of FORTRAN, C & COBOL?!?
Mon 08 Mar | K | What a strange fellow you are.  You ask for both the embrace and the rejection of Cobol.
Mon 08 Mar | TJ Haeser | "Future events such as these will affect you in the future"
Mon 08 Mar | Dave | >> 'What a strange fellow you are. You ask for both the embrace and the rejection of Cobol.' This is a interesting post... I've never written a line of COBOL in my life, so I am thoroughly and completely ambivalent to its existence. I am asking where you think computer languages are heading in the FUTURE. Use your imagination. Voice IDE interfaces? 3D GUI IDEs like in 'Minority Report'? Amazing new Iconographic grammars? Built in expert systems to optimize & automate algorithm selection?
Mon 08 Mar | T.J. | ETL tools. http://www.ascential.com This is just a part of the 'future' you speak of. DataStage, and other ETL tools use graphical representatives to illustrate how things progress. It would be AWESOME if C++/C#/Java can be visually representated graphically. Build a class, create (or use) an icon for it. Link away! (Yes, I work for them.)
Mon 08 Mar | Scott | Is that similar to DTS 'programming'? 'cause I hate that. You can fit a lot more text on the screen than you can icons. And the prctures don't tell half the story anyway, you always have to click on them to get the the real work, which is typically some kind of text. I think some people must like it, but I don't.
Mon 08 Mar | Tayssir John Gabbour | You may want to take a look at _Interactive Programming Environments_ by Barstow et al.  Crusty old '80s book containing essays about the cool old systems like The Programmer's Apprentice, object based noun/verb window systems, ambitious stuff.  Some casually explained how files sucked.  Somehow few of these things survived; companies went bust after a boom, Xerox didn't care, etc.  VCs in those days enjoyed stuff like firing the Steve Jobses of their companies;  I'm sure they've learned by now...
Mon 08 Mar | Tony Edgecombe | Graphical tools are good for simple configuration but as soon as you step over the line into programming they become too cumbersome. Some purport to offer end users the ability to prgram without needing programming experience, the trouble is if you don't understand the concept of a loop or conditional processing then it doesn't matter if its text or icons on a page you aren't going to be able to cope with it. My suspicion is that we are going to see more specialist languages and frameworks for certain types of applications. If you are doing any Windows GUI development then you will have to start looking at XAML as soon as Longhorn gets close to release. Tony Edgecombe http://www.frogmorecs.com Software for printing
Mon 08 Mar | David B. Wildgoose | Declarative Programming is the future. Don't say how, say what. There are already far more declarative programmers than any other kind, just look at how many end-users are able to create spreadsheets - declarative programming by any other name. Functional Languages like Haskell, OCaML, etc., and 'Logic' languages like Oz and Prolog are all declarative. Painfully explaining to the compiler how to program a loop is just that - painful. Much of what we do in day-to-day 'imperative' programming can be abstracted away. And that's only a start. Rethink mutability of data and use 'dataflow' variables and suddenly parallel programming is easy rather than a nightmare of race conditions. The future programming languages are already here, it's just that most programmers haven't realised yet.
Mon 08 Mar | the artist formerly known as prince | So David, so can you create an app like joels in Haskell yet?
Mon 08 Mar | flamebait sr. | The thing I'm noticing is that the advantages in readability of being able to use things other than ASCII to program is strongly outweighed by the disadvantages (the symbols aren't on the keyboard anyway, and if you aren't using plain ASCII, it's much harder to send around/grep/use any random text editor/etc. You can semi goof around with this (with results that haven't been particularly satisfying yet) by making the language ASCII-reducable but having a graphical editor. It also seems like the future for true power-programming is meta-languages, where they can take upon some of the aspects of a specially designed language. ML does this, as do most variants of Lisp, but you also have to consider fully standards compliant C++, with operator overloading, templates, etc. to be a language like that. It's interesting to see C# changing to offer many of the same sort of features that C++ has had all along. And it's doubly interesting to see the C++ gurus, most notably the Boost folks, writing good implementations of all of the big parts of Lisp that aren't in C++ already (because, as we all know, every large-scale programming project not in lisp contains an ad-hoc implementation of at least half of the Common Lisp standard) Specialist languages are good, but it seems like most working programmers don't want to create a full language set that comes with the tools you need to get your job done. To me, it seems like the meta-languages offer the same amount of power, without all of the extra baggage you would need to create the whole system. Especially when you are trying to work against CLR, COM, or huge C/C++ libraries, it's really not feasable to build a new system yourself.
Mon 08 Mar | K | The idea that declarative languages will completely take over is mistaken. Domain-specific declarative languages (or libraries for general declarative languages like Prolog) are useful, but they require a huge amount of imperative code to make them work. The difference between 'y is that number which equals x when squared' and the code for sqrt(x) is significant. The difference between a context-free grammar and the code that parses the language of that grammar is even more significant. As declarative language methods become more popular, imperative programming will become ever more important.
Mon 08 Mar | David B. Wildgoose | 'The idea that declarative languages will completely take over is mistaken.' Sorry, where did I say this? This is just a straw man argument. The compilers for declarative languages obviously have to be written in imperative languages, because that is the machine architecture the end product will be running on. Excel is written in C++, but declarative Excel macros are not. As for the comment about Joel's software being written in Haskell, well, why not? Are you trying to claim that Haskell isn't Turing complete? Take a look at the ICFP Contest tasks which include things like creating Ray-Tracers, a job normally given to C++ and its ilk.
Mon 08 Mar | Dave | >> 'the symbols aren't on the keyboard anyway, and if you aren't using plain ASCII, it's much harder to send around/grep/use any random text editor/etc.' Hmmm... Interesting points. My thinking, though, is that in the medium term future, we'll not be bound to use a keyboard - and freeing the developer from the keyboard pretty much frees us from ASCII. It takes an awful lot of characters to create simple loops that mathematicians scribble with a few sigmas, subscripts and other useful scripting conventions. You also mention regular languages. If we were to extend ASCII to include useful mathematical notations, we'd be able to specify our patterns in a much more coherent fashion. In textbooks, for instance, you'll never see pattern expressions with twenty escape characters. No escape characters necessary - just use boldface to specify literals.
Mon 08 Mar | Gaius | Very interesting article in this week's New Scientist concerning advances in genetic programming. It envisions a software development model that merges concepts of developmental embryology (i.e. growth at the individual level) with Darwinian evolution (i.e. fitness for purpose at the generational level). The suggestion is that we may eventually - meaning not sometime soon - treat the development of software more like selective breeding of plants (or genetic engineering?) and 'grow' software rather than write it.
Mon 08 Mar | Eric Lippert | If I had to hazard a guess, I'd say that: * there will be more xml-based, declarative, special-purpose languages -- like XAML, say. * _solutions_ will include code written in many languages, and in particular, traditional OO imperative languages will be used to customize the output of the declarative languages * graphical _languages_ will continue to be of only marginal interest, but graphical _tools_ will flourish. Design tools will produce as their output programs in declarative languages. I wrote a blog entry on this subject last week: http://blogs.msdn.com/ericlippert Eric
Mon 08 Mar | Joe Hendricks | Five years from now you will simply choose a metaphor and build the program within that VR space. For example, if you like the idea of building a starship, you'll use that metaphor, don your goggles and mits, and the VR app will add the code behind your starship construction steps. Hey, don't laugh, just read Gibson and Stephenson :-)
Mon 08 Mar | EAW | this article http://www.paulgraham.com/hundred.html by paul graham describes the future of programming. Essentially, he suggests that as processing power/memory/other resources increases exponentially, solutions will be judged by how fast they can be created in addition to how efficient they are. In other words, what's a little program overhead (since end users with their zillionhertz processors won't notice anyway) when it saves hundred of manhours through abstraction.
Mon 08 Mar | K | David, My argument is that the saturation of 'declarative' languages will not overtake 'imperative' languages. I don't think that you've made your case for 'declarative' languages being 'the future of programming languages'. By their nature they have a much more narrow focus than regular general purpose languages.
Mon 08 Mar | anon | Pardon the stupid question... What are ETL tools? 888
Mon 08 Mar | Ori Berger | I've said it before (specifically, in [ http://discuss.fogcreek.com/joelonsoftware/default.asp?cmd=show&ixPost=35501 ]) and I'll say it again - the future is, and always has been, Lisp. Other languages are slowly going in that direction, but I don't think they'll converge - every language will stop beforehand. 'graphical' programming or 'genetic breeding' will remain niche solutions, in my opinion -- the ideas may sound fantastic, but they lack precision and terseness that is needed, and available with textual descriptions. Movie scripts are always written as text; Then comes the storyboard - and the movie is made last. 'graphical' programming tries to do the storyboard _first_, (or somehow do away with the script altogether). Somehow, I don't think it's ever going to be the way to make movies. Get a glimpse of the future now - learn Lisp (really learn it - Graham's 'On Lisp' is an excellent book after you know the basics), and then learn APL (or K or J). Even if you don't use them, you'll be tremendously more effective at whatever environment you do use if you grok the (mostly orthogonal) ideas of these environments.
Mon 08 Mar | fool for python | And if you like declarative UI wothout Windows, try xul. www.xulplanet.com
Tue 09 Mar | David B. Wildgoose | Object-Oriented programming was invented with Simula in the 1960s. I think I can safely say that an obscure academic idea eventually came to fruition. Take a look at modern languages. Python has borrowed the concept of 'list comprehensions' from Haskell and Miranda, (two FP languages), and in fact also provides functional constructs like 'map' and 'lambda' expressions. Eiffel now has 'agents', or 'functional objects'. Perl has gained 'closures'. And so on. These ideas are all taken from declarative languages, and it is my contention that declarative programming is going to become more and more important. That's it. Not that imperative programming is going to disappear, (people still program in C as well as C++). Just that more and more programming will take place in a declarative fashion.
Tue 09 Mar | T.J. | >>Is that similar to DTS 'programming'? 'cause I hate that. You can fit a lot more text on the screen than you can icons.<< Sorta, yes. True, you can fit more text on the screen, but the graphical front end provide a much clearer organization of your throught process that you can demonstrate to laymen. >>Some purport to offer end users the ability to prgram without needing programming experience<< Ascential does not promote this as a 'idiot-free'. They just promote it as a 'much faster and clearer way to handle data transformation. >>graphical _languages_ will continue to be of only marginal interest, but graphical _tools_ will flourish. Design tools will produce as their output programs in declarative languages.<< That is exactly what Ascential DataStage (and DataStage EE) are. Graphical tools that is a front end for a very solid system (DataStage EE are both Orchestrate and C++ - you build stages using C++, and you use Orchestrate to link them all together.) This is a concept that can be taken much further into other fields. This tool is excellent for Data Warehousing, but definitely not useful for game programming. But I can tell that similiar concepts can be done for game programming -- switch to text when you want to hard-core your way out of a problem, and back to GUI when you want to build the framework. >>What are ETL tools?<< Extract, Transform, Load. Tools that handle Data Warehousing for companies. A focused tool can help optimize your development, debugging, and deployment. Writing something in C++ could take me about a week. An equivalent using DataStage would take me maybe 2 hours. Of course, it varies depending on the tasks. >>'graphical' programming or 'genetic breeding' will remain niche solutions, in my opinion -- the ideas may sound fantastic, but they lack precision and terseness that is needed, and available with textual descriptions.<< Why not have both? Why are you trying to focus on one or another when both would provide you with a dramatic benefit? DataStage provides both. Most people sticks with the GUI, but I love dropping down to code to debug code that resists any solutions on the GUI level. -T.J. (I may work for them, but I do not speak for them. All of this is my opinion only.)
Tue 09 Mar | Dave | >> 'Why not have both? Why are you trying to focus on one or another when both would provide you with a dramatic benefit?' Is it just where I've worked, or do programmers in general have an aversion to graphical tools. The first things I do when trying to handle a tricky problem are 1)make a list of all candidate patterns which might help and 2)jot down some UML diagrams. I would be in seventh heaven if there were a powerful graphical environment that would allow me to design using pictures and drill down to the source code - maybe dragging and dropping catalogued patterns where they fit. Maybe providing an expert system to suggest patterns I haven't thought of. Seems to me most math/sci/tech people think in pictures first, and refine top-down towards the equations/source code. Any opinions or comments? Are developers overly fixated on text? I've known many developers who laugh at UML & many data modelers who shun ERDs. In my opinion, pictures are certainly worth a thousand words (give or take an order of magnitude). For me, the source ain't the documentation! Will graphical/iconographic environments/languages cause the revolution I envision?
Tue 09 Mar | Tayssir John Gabbour | I strongly think we'll do more visual programming. For example, I tend to visualize the shape of the function stack when doing errorhandling or certain computations. I think the reason many languages are weak with functional programming is because people don't get to see it; the stack is this invisible thing programmers don't get great access to. If it were visible, everyone would probably use better errorhandling, some dynamic scope, etc. Another way is by analogy to html. The language itself isn't readable. But it is transformed into one which is. We could use languages which don't have much syntax, but are transformed into forms which do. And the syntax can be readable by nonprogrammers to match their own domain-specific syntaxes. A big question is how will graphics and text merge. Text is an incredible thing; they're little graphics to which we ascribe meaning. I wouldn't mind using nontraditional graphics mixed with normal text; within the scope of a piece of data, it would be represented in sourcecode by a picture but silently expand to text by the compiler. Or it will be linked to explanations of the domain it represents. Self-documenting data. Data-driven programming operating on things which visually look like the data. The mental stack can overflow with ideas... Incidentally about paradigms, I suggest Floyd's 'Paradigms of Programming' Turing Award lecture. Basically a nice chat about how certain patterns help people solve problems. Like the map/filter/fold stuff of basic functional programming really wows people with what they can accomplish. Incidentally, that stuff can definitely be depicted graphically... ;)
Tue 09 Mar | T.J. | >>Are developers overly fixated on text?<< Yes. We are all used to being able to manipulate things with our keyboards. That is why decades-old coders HATES DataStage. They lose the control they are so used to dig around with. Drilling down to the code were not very well known, so th