Stack OverflowAnti-Joel Test
[+255] [98] Vaibhav Garg
[2009-05-23 11:01:40]
[ polls joeltest ]

The Joel Test [1] is a measure of how a team performs with regards to the best practices in coding. What questions, given a 'yes' answer, would subtract from the the Joel test score?

(Assuming you don't simply negate the current questions on the 'Joel Test', ie: "Do you have no source control?")

For example:

(5) Terrific question. I will almost certainly apply this in practice. - User
(7) @Vaibhav Garg: Make it 10 upvotes then make it a community wiki please. Otherwise local farmers will likely close it. - User
Great question. One extreme reveals the other (Joel Test) - Jas Panesar
(7) It is good practice for the closers to explain why this post was closed - Kb
(2) I am also curious, Why are there 2 close votes for this? - Vaibhav Garg
(1) @Vaibhav: Subjective / Argumentative. - Shog9
(1) Great question, great answers. - Daniel Daranas
This seems like it could have just as easily been an extension of the list rather than an anti list - for example the current top answer makes just as much sense written in a positive way - "Do you have a development server where all development and testing are done before moving to production?" Then again, the current framing of the question encourages venting and raging, which is more fun than being constructive :) - Peter Recore
(1) @Peter- That's only partially correct. There are certain things whose absence tells us a lot more than their presence. Think about clean drinking water, and ask those who don't have access to it. - Vaibhav Garg
@Vaibhav Garg may be those two votes from Joel and jeff.. Kidding No offence.... - Mohit Jain
(3) This question should be migrated to Programmers.SE - Moshe
[+287] [2009-05-23 11:26:36] Neil Trodden

Do you do your development work on the live production server?

(30) +1, I physically cringed when I read your answer. - JaredPar
Like I did when I went to help a colleague with something and found that's where he was developing? :-) - Neil Trodden
(74) I can beat that - I once did a gig where they did their training in C++ programming on the production server. - community_owned
(7) @Neil B: That's utter insanity. But maybe we should be glad they're operating a software company and not running an Army firing range! - John Feminella
How about an architecture designed to do that? - Joshua
@Neil, I just don't know how to respond to that. @John came close to describing my reaction but insanity just doesn't go far enough. - JaredPar
(1) Any direct access to production at all is sub-optimal - Joel Coehoorn
At least that way you don't need a source control system... been there unfortunately. - Frank Schwieterman
It is one of the questions I actually ask my customers. - Kwang Mark Eleven
(7) Kwang, my experience is that people who do it know it is wrong and still do it even when they say "I know I shouldn't do it but..." The colleague who I said I caught doing it was told by me that I was not going to help them with their problem because it was just too risky - I found out that another colleague had actually set him up a mirror on another server. It must have been too much effort to connect to it. He won't install a dev db on his own machine because it might make it unstable. If you repeat that last sentence a few times, it might make your head explode. - Neil Trodden
..continued So my point is, the people who do it, won't tell you they do it - they are both ashamed but equally unlikely to ever change. - Neil Trodden
(3) Never, never try to teach UNIX process creation on a production server. With 30 students, guaranteed one of them will write a fork bomb. - Joshua
(1) Been there, done that. I once did contract work at a company that developed some inhouse apps like that. The reason, as far as I can remember, was simply that they didn't want to bother setting up a seconde system for development (or use virtualization, or at least different user accounts). - sleske
(1) Last time I ran into that, the manager seemed to think it was the natural way to do things. (Coincidentally, the only other employee on my team who had been there more than six months was at pains to tell me that things would be different if he were running things.) - David Thornley
[+215] [2009-05-23 12:57:25] Cuga
  • Do web filters block out forums making it difficult to research online?
  • Is the work environment noisy making it difficult to concentrate?
  • Is the work schedule an inflexible 8-5?
  • Do they expect tier 1 support in addition to your programming duties?
  • Does management have no true understanding of development?
  • Despite this, does management "think" they know development?
  • Do they fail to provide an outlet for being creative?
  • Do they fail to provide adequate development hard/software?
  • Do they deny developers admin rights to their own box?

(9) +1 for the management think they know enough about development, but do not. As The Colonel story daily WTF. - Jem
(14) I think giving admin rights to a developer for his own box when he requests it is a reasonable and good practice. - pts
(70) Developers admin rights to their own box? What's wrong with that? - David Berger
(33) I've worked places before where they did not grant developers admin rights on their own box. It made development extremely difficult and I would never put up with it again. - Cuga
(9) Quiet work environment is on the original Joel Test. - Cameron MacFarland
(2) It's one thing to give developers admin rights to their boxes. It's another for them to actively develop as admin. - Eclipse
(1) While developers typically need admin rights, I've seen a LOT of higher ups demand admin privileges and are typically the gaping hole through which viruses make it into the office. - Soviut
(2) If your developers are putting viruses on the computers that they didn't write they should be fired for practicing unsafe computing - Matthew Whited
(5) @"If your developers are putting viruses on the computers that they didn't write they should be fired" - so it's ok for them to put viruses on their computer that they did write? :) - nsayer
Developers who are writing viruses on their work computers might need more of a challenge in their day job... I'm don't think it should be an automatic fire for most developers, but there are work environments where it would be a major red flag - Colin Pickard
(4) +1 for "Do they expect tier 1 support..." That is the ONLY thing that I don't like about my job. I am not a tech, I wrote the software. Do NOT call me at 2 AM when the server cannot connect to the Database, or the file application is timing out trying to connect to another server, there is NOTHING I CAN DO!!! Unless you want me to write some code at 2 AM that goes right to production, don't call me. - amischiefr
(1) Oh, man. You couldn't have nailed it any better. - Alex
(3) Administrator rights are REQUIRED to attach a debugger to a process on Windows at least. - iconiK
If developers are writing viruses you promote them to manage security. - CashCow
[+185] [2009-05-23 11:22:58] JaredPar

Is there a dress code which includes a suit and tie?

(55) I see how programmers wouldn't like this (hence no downvote), but this as a reason to mark down a job sounds like being a primadonna. We should all dress professional and not like hippies and slobs, anyways. - Wayne Molina
@Wayne agreed people should not dress like slobs. I was more referring to places where they require programmers to wear 3 piece suits. - JaredPar
But apparently someone else thought this was worthy of a down vote. - JaredPar
Jared, I won't down-vote either but we have a dress code but it's simply 'business-dress', smart trousers, proper shoes and a shirt (no tie). We have customers who come to our place of business and our other areas have to dress like this so it would be unfair and hypocritical for us to wear jeans etc. - Neil Trodden
(4) @Neil, @Wayne, editted my answer to be more clear. I don't need a suit and tie to program :) - JaredPar
(6) -1 Isn't this a bit US-centric? I worked as a programmer in Japan with a suit and tie - it was the uniform everyone else wore and had no bearing on the position. - Elijah
(10) In the UK, I think you'll find that if you're required to suit-up to work as a programmer, then the company may well be more about presentation than performance. A previous job I had did have this requirement, and it was all about making the customer pay, then doing only enough to make it look like we had built what they asked for (even if it didn't work properly). - Codebeef
(8) It's kinda funny I used to have the same attitude when I was under 25 or so. But eventually I grew up and now I'm almost 30 and I take a lot of pride in the way I dress. The advantage of not having a dress code is that everyone else usually dresses like bums and you wind up looking more professional. - Josh Einstein
(65) I think that when coding, a tie is overkill. I find it hard to concentrate when my top button is buttoned up and I'm slightly uncomfortable. If programmers should be meeting with clients on a particular day then they should dress for the occasion but otherwise, there is nothing wrong with shorts and flip-flops in my opinion. - Simucal
(3) Heh... For those arguing against this, imagine if your other tools were designed to help enhance your appearance rather than your productivity: - Shog9
(75) With no further insight, if I wanted a piece of software developed, I would pick the company that employs nerds dressed in t-shirt, jeans and sandals over a company where the developers wears suits with ties, dress shoes and slicked back hair. - JulianR
(62) All the people here who think they're more professional because they wear a suit and tie crack me up. Mindlessly following rules that make people less productive isn't the professional thing to do. A professional is somebody who GETS STUFF DONE. - Chuck
(3) Yeah, keep those hippies out of the code! - Jay Bazuzi
(2) I can only code while lying on the floor. :)) kidding. - Mehrdad Afshari
(132) My father used to quip "the only use of a tie, from an engineer's perspective, is to limit blood flow to the brain". He was usually careful to follow up with how this might be a useful function in certain meetings... - leander
(1) @Shog9: "if your other tools were designed to help enhance your appearance rather than your productivity" ... we'd all be using Vista :) - gbjbaanb
@Chuck You are so right, I thought I was alone with that thinking! - André
(2) I think that this is a useless answer. We work at a place that requires us to wear a tie, but that is the only thing that bothers the developers. As far as everything else goes, it is the most organised place I've worked at and we are therefore hardly ever required to work overtime. - Trumpi
(3) IMO Jeans and t-shirts are enough, if you just take a shower regularly and cut your hair sometimes. :) - abababa22
(12) If I can fool you (about my skills) by wearing a tie, then I don't want to work for you. - Les
(2) Dude, you won't get the top contract rates in the city without wearing a suit. It doesn't make you stupid, it makes you smart. (And it's much easier to go to an interview without your boss knowing) - Chris Needham
(4) I don't see what the big deal is with this. It's just clothes. By the way, if you're having trouble breathing or circulation is being cut off to your brain, your shirt is too small or you're cinching your tie up too much. - Adam Jaskiewicz
(5) Besides, such a dress code gives you plenty of opportunities to bend the rules. Tan suit, orange shirt with white cuffs and collars, bright mint green tie, and basket-weave loafers? Well, it fits the dress code... - Adam Jaskiewicz
(9) Professionalism is about the WORK not the clothes. Would you ask a carpenter to wear a suit or a tie? A strict dress code at a software company means they are forced to pull from a limited talent pool (folks who are willing to work at a place with a dress code). Turns out, in the software engineering field this is a significant factor. - Wedge
(2) A programmer doesn't have the safety issues of a tie getting caught in a saw, either. A suit isn't a hindrance to getting your job done as a programmer; it is for a carpenter who has to carry around large, possibly heavy objects, and deal with power tools. It goes both ways; I don't see why companies feel the need to tell their employees to wear a suit daily, if it isn't likely they will be interacting face-to-face with customers daily. On the other hand, it really doesn't seem like a whole heck of a lot to ask, and I don't understand why people seem to have such a huge problem with it. - Adam Jaskiewicz
(2) I don't get it. The (Anti-)Joel Test is about software quality - how does the dress code influence the quality of the software you produce? I understand you may not like it for personal reasons, but do you actually believe that the someone wearing a tie produces worst software than that same person without a tie? - alves
(2) @WayneM: Disagree. In this world of IT and intelligencia, aren't we a little beyond grading people by their physical apperance? This "Professionalism" trait always seemed shallow to me. - tsilb
(1) IMHO "business-casual" attire is a measure of decorum that elicits a small/simple demonstration of respect for the company (it's goals, customers, and other employees). It can also regulate distracting personal expression; you're an engineer, not a fashion designer (or unemployed slob, for that matter). Also, though a culture may even exist in the workplace of not caring about attire, realistically there may be some that are inwardly turned off by your t-shirt with holes in it who may not provide you the references you need later on. - gWiz
(5) @alves - because suit and tie is a warning that this is a consultancy where they never actually produce anything but field lots of 'consultants' at a few $1000/day to clients that know nothing. = EDS, Cap-Gemini, Anderson + government IT contact - Martin Beckett
(1) Real nerds care about getting things done, not how they look. If your company requires suit and tie (at least in the US), they're not looking for real nerds. That is a danger sign. - David Thornley
(3) Never trust a programmer in a suit. - Carl Bergquist
(1) To produce good quality software programmers need to be confortable, so they can focus on their jobs. A manager may need to show the place of work to his clients. Coworkers prefers to interact to people which are clean and odorless :) and not socially too different from them. Whatever the political desicion about dressing should take this into account. Find (and mantain) a balance is difficult. Prioritize if it is too difficult. And some, they don't even bother (or care) finding this balance, they just prioritize ... - user347594
(1) @johncatfish: At one company, we were occasionally asked to dress up because customers would be in the building, and they didn't want to see anybody dressed like a first-rate software developer. - David Thornley
Seriously, who cares. It's the smallest of gripes unless they insist on a full suit even at the workstation and don't have A/C. - John
Got escorted from the building of a UK/Japanese car manufacturer because I refused to wear a tie in an office that was at 27 deg cel. - James Westgate
I keep seeing people trying to state that if you aren't wearing 'business casual' dress, you must be wearing rumpled and/or ripped and/or dirty clothes. I find clean, hole-free jeans to be both highly comfortable and good-looking. Unless you're a slob, I don't see the problem with casual dress. - Joshua Smith
[+178] [2009-05-23 11:29:18] Andrew Shepherd

Is the chief technology officer an accountant?

(5) +1 from me - VERY good. - duffymo
(1) ooh, yeah, that's a bad one - Martin DeMello
I certainly see the point, but I've only worked at one place where IT reported to the CFO, who was an accountant. (I guess my boss was the equivalent of a CTO, but the term didn't exist - at least I'd never heard it - back then.) I had no real complaint with the CFO, it was the CEO/owner who was the problem - he didn't know anything about IT, and it seemed he didn't want to spend any money in that area. - PTBNL
I report directly to a CFO, because of company size. Thankfully, he is very interested in the IT Department's input, and usually trusting of advice, acknowledging specifics points where his knowledge on a given subject comes short. - anonymous coward
this is an excellent answer. accountants can sink development ships. - Devtron
Or a Lawyer ... - Martin
(19) Is the CTO the son of the founder/owner whose experience comes from playing video games? - Martin Beckett
(7) As you get higher in the enterprise, the important thing is not so much whether the exec knows the technical details as whether he knows the limits of what he knows, and whether he trusts his staff or outside sources (magazines, vendors, etc.). - David Thornley
(1) I am continually amazed at how many companies have the IT function reporting to Finance - Matt
[+117] [2009-05-23 21:50:12] jalbert

Do developers have to account for their time in small increments?

(8) +1 - Micromanagement FTL - Wayne Molina
(5) No downvote, but I'm not sure I agree. I suppose it depends on what you mean by "account". Keeping track of time spent on different bits of a project allows for more realistic estimates and can be an early warning indicator that something's gone wrong. - Tom Wright
(5) Keeping track of time spent in minor increments means that everything takes three times as long to complete! - Peter Boughton
(5) As Peter Boughton said, if you start keeping a very granular time sheet, most of your day will be spent of the context switch from filling it out. - Spoike
(1) Keeping separate time sheets, even with good systems or software for the time sheets is really problematic if they are too granular. BUT if features/tasks/bugs are kept in some sort of issue tracker and the better ones of these have a simple to use time-tracking heuristic (FogBugz, JIRA, TFS, etc.) Usually it's as simple as clicking on a "working on" or "stopped working on" button. This works very well if developers are used to using the issue tracker in their work flow. - hromanko
What do you mean by small increments? 5 minutes, 5 hours, 5 days? - Kwang Mark Eleven
(10) Ugh.. I have to track my whole day in 15 minute increments. This is just one of three (yes, three) time tracking tools we're required to use. That thing is giving me ulcers since it's practically expected that 100% of our time is billable to a specific client request, and management has aliased the word "estimate" to mean "definitive number, god help you if you're one minute over." - Agent Conundrum
I think keeping track in 15m increments would be fine - and I've considered doing so on my own initiative, just not for the purposes of discipline/billability/whatever. With sympathetic handling, I think it could be useful to the developer (in working out practices that aren't optimal) and to management (in working out things that the developer's tasked with that are using up time in a way that wasn't expected). If you've got a developer who's productively developing all day, accounting for time in 15m increments is basically "32x15: development". Which doesn't seem onerous at all. - Jon Bright
I once worked for a company using a time tracking tool that we had to fill in every day, giving feedback on at least 7 h of work every day. Minimal time delta accuracy : 5 minutes. I've been fired for refusing to enter my day work for 3 days in a row. Best day of my year. - e-satis
(1) First professional job I had, they gave me a time sheet, and also told me how much time to put down for each task. In retrospect, that saved a lot of time. - David Thornley
(1) @Wayne M - Micromanagement Faster Than Light? Sounds like SuperMan!...ager. - Chris Lutz
The solution to this is of course to write down the last hour of every day as being spent on keeping timetables. - Joren
@AgentConundrum: Sounds like it's time to look for a new job. - Christopher Parker
For the record: FTL means "For The Loose" - Spoike
[+98] [2009-05-23 14:36:33] jalbert

Is refactoring discouraged?

Actually - one of the best questions. Many still don't get it that frequent, incremental refactoring SAVES time and not wastes it. - Arnis L.
(3) i have been told this before: "Dont refactor too much - it makes the source diffs hard to read" - Pondidum
Thankfully I'm usually told to refactor, refactor and refactor even more at my work. This really made me cringe. - Esko
(8) I was repeatedly discouraged to refactor code by my old boss, even when it fixed bugs. But he was probably right to do so, since we didn't have any unit testing... ;-) - Christian Davén
+1, but refactoring should be at least discouraged. - Pavel Radzivilovsky
[+89] [2009-05-23 12:33:10] ammoQ
  • Is the development team driven and controlled by sales people?

  • Do you usually promise to create the documentation after the software is finished?

  • Do you hire cheap people because they cost less?

  • Do you let inexperienced people create new products, but experienced people finish and maintain whatever is created?

  • Are strategic alliances (instead of technical merits) the main argument for resp. against the use of a technology?

I wonder if no documentation for the english language would exist until it was spoken for about 20 years. would something like this be valid until the documentation finally comes out: yeh teh docz are uzeless. Beware of such companies. - the_drow
(19) +1 for "Do you hire cheap people because they cost less" - stefanB
+1 for the strategic alliances q. - jmucchiello
(4) Devlopment driven by sales can be good. ie We have talked to customers and they really need this feature most vs. a CEO who read something about web2.0 in a magazine and wants to switch your embedded product to the web. - Martin Beckett
(2) mgb: I agree with you. Maybe I should have written "marketing people". Those who do not care about how happy the users are after the product is sold, but care a lot about how impressive the product looks in a power point presentation. - ammoQ
+1 for the inexperienced people create new products but experienced maintain them. - wheaties
(1) Development driven by sales can be good, provided somebody sits on the sales people and makes sure they're being realistic. I've seen what happens when that doesn't happen. - David Thornley
This is my reality +1 - Joe Philllips
"argument for resp."? What's resp? - Gabe
[+83] [2009-05-27 12:05:42] Tim Scarborough

Are you required to use Internet Explorer 6 at work and you do web development?

Guilty as charged. Ugh.

(7) I am required to use IE6... sob! - Kwang Mark Eleven
Oooh yes...been there - Lunatik
Being required to make stuff corssbrowser including IE6 - Jacco
Still there... shoot me please. - Brandon
We got FF 3.5 and TB ... love it <3 - ApoY2k
(4) I would be very worried about any web developer who doesn't test graceful degradation in IE6 - Mikeage
(2) Actually, being forced to using IE6 is a good thing. That way you don't accidentally create something that doesn't work with the crap, which can cost you weeks if you hit a bad bug. For most of us, not supporting IE6 is not an option. - erikkallen
(1) @erikkallen - except that you'll write stuff that doesn't work on any other browser - philsquared
(10) Required to support != Forced to use [for general tasks]. The former is OK. The latter is not. - Alex
I used to work at a place where they refused to move off IE6 and all the apps we supported had maintain their support for it. We only had to maintain 270+ user/partner developed apps. (I ran from there screaming) - JustSmith
If it only has to work on IE6 (internal apps) then I would say web-dev for IE6 ain't too bad, as long as you leave before they decide to upgrade everything to IE8 - John
[+73] [2009-05-23 11:10:50] John Feminella
  • Does management think that paying a consultant to teach on-site classes is the most effective way for developers to learn a new technology?

  • Is there at least one case where a single person unilaterally makes software architecture decisions for more than three simultaneous, ongoing, non-trivial projects?

  • Is the coding standard an inviolable straitjacket that serves to hinder rather than inform?

  • Is Stack Overflow blocked at work?

  • Would management view time off to speak at a conference or other technical gathering relevant to your work as suspicious and/or unconditionally refuse it?

  • Do developers feel frustrated or stymied by managerial/organizational problems more often than technical ones?

In regards to the second one, let me make sure I understand. You'd dock points if a single person were in charge of three simultaneous projects and was making all the key architecture decisions. I personally would agree but I just want to make sure that's what you mean. - Drew
Right. In other words, three seems to be about the uppermost limit for technical involvement -- beyond that, architecture decisions aren't being given the proper care and attention. Frankly, I think the limit is closer to one, but I can see two or three if their other involvement with the project isn't high. But then, of course, you run the risk of not being involved enough to make good decisions! - John Feminella
(2) Err... why would anyone block StackOverflow at work? - RegDwight
Can't say I agree with number 2. Do you really want every single developer making their own decisions and every single project architect completely different? I know I know, developers want their freedom. If you want to do it your way, be your own boss. I think having a single architect helps out, especially when you bring new developers on board. - amischiefr
@amischiefr » Hmm... I think you misread that point. I'm emphasizing that I think it's not a good idea to simultaneously be responsible for lots of projects and be the sole decider for those projects. A cross-project concentration of power is harmful in the long run, simply because you're just going to have too much on your plate to be focused enough. - John Feminella
(13) @RegDwight, Because obviously, it lets you cheat! - Alex
[+70] [2009-05-23 11:45:22] Martin DeMello

Does your source control consist of physically backing up your source tree into a source.backup.n directory every time you want to make too many changes?

(36) Isn't that what Subversion calls a branch? ;-) - richq
(22) This is gonna sound like flamebait, but I'd much rather that than the old version of VisualSourceSafe we've got at work... Would kill for management allowing us to use svn, but it is deemed as "beta software" and "not MS". :( - voyager
Oh my god. Before I installed SVN at my previous office, this was the preferred method of backing things up. Needless to say, overlaps were far too often for my taste. - Manuel Ferreria
(3) It's funny how VSS is used in companies with the motivation that it is a MS product even though MS aren't using VSS themselves. This issue is nowadays adressed by replacing VSS with the version control system in TFS. - Spoike
(4) To me, this is a variant on negating Joel's question #1. I take it to mean: "Do you use real source control?" - JeffH
I also had very ugly experiences with VSS around 2001, but my understanding is that today VSS is almost reliable ;) - Kwang Mark Eleven
(54) Bonus points if the copies are called "backup", "old backup", "old old backup" and "copy of Old backup" - Martin Beckett
(1) isn't this a dupe of #1 on the list? - Peter Recore
[+63] [2009-05-23 12:05:49] Wayne Molina

Did the last developer you hired leave quickly? Usually high turnaround in IT means at least one of two things: A) The code is wretched and unmaintainable, and/or B) Management has highly unrealistic expectations about programmers.

Also: Does the team not care about learning new things, experimenting with new technologies and at the very least check out what's "new" in their programming world? If they are like this then it means the team is a bunch of incompetent Morts and are mediocre at best.

(2) Yea, I tried to unveil the new great MVC (we are ASP.NET shop) to the director and our senior developer. Nobody really cared. - User
(5) I find there are two sigmas with people being unwilling to learn. One is with .NET developers who think anything outside Visual Studio is scary, the other are low level trolls who thinks all those new fangled high level languages are criminally inefficient. Polar opposites. Thankfully, there are many good developers who sit comfortably between the two, using whatever language or framework best suits the job. - Soviut
(2) Employee turnaround is a useful metric. - Kwang Mark Eleven
(1) Can also mean there is a core of developers who run the system and nobody new can really break in because the core are always "too busy" to show them the way or what needs to be done. The new developer is never given any proper new work to do and never understand anything discussed at team-meetings which are rarely if never technical anyway. - CashCow
[+59] [2009-05-23 11:22:12] JaredPar

Is the primary development language an in-house only product?

I have seen way too many Daily WTFs where people were stuck developing in a language that was designed, built and consumed solely within the company. That would be a -10 for me.

(30) So that would mean FogCreek software itself gets a -1? I am not sure Joel would be very happy with this one. :) - Vaibhav Garg
@Vaibhav, What language do they use internally? - JaredPar
(15) an abomination in the name of all that's decent. It's called Wasabi: - foljs
(1) @JaredPar They use a custom dialect of VBScript build to address the shortcomings of VBScript. The idea is only 25% crazy in the context how it happened-- but custom or extremely rare programming languages in business is still a bad idea in general. - MatthewMartin
(3) @Vaibhav, @MatthewMartin hadn't heard of Wasabi before but it sounds like more like a targeted somewhat constrained DSL than a full blown language like C++, C#, etc ... Still a huge undertaking but not 100% insane. This would still put me off from joining a company. The examples I was more gearing though at were places where they had custom COBOL like compilers or Joe Random Language that was invented, developed and maintained by one person on the team. - JaredPar
(15) Besides, is there a rule that people have to believe FogCreek is perfect? I like lots of what I hear, but no place is perfect. - acrosman
(38) Comment too small for the 5 page rant I need to get one experience off my chest. Let me sum up "a 10 year old C++ code base driving a web site, #pragma'd out the yazoo (and not cleverly either) to build on 4 different platforms (2 were defunct for 5+ yrs), 3 (I'm not joking 3) different in-house scripting languages in various stages of completely (but all in use!) to build html forms, and an XSLT "like" declarative language (why not use XSLT?), all controlled by a raving lunatic-control-freak that had started the product as a thesis project, started a company around it, (continued) - Binary Worrier
(38) Had been bought over twice. He'd never worked anywhere else and couldn't see anything wrong with the abhorrent behmoth he'd created. He once poured over a decorator I put on an existing smart pointer class for 40 minutes trying to find some reason not to allow it because "Design patters don't aren't always the best solution", actually it was because I was doing it in a way he wouldn't like. Worst work athmosphere I've ever encountered, I walked before my trial period was over. SO 4 different custom scripting languages, one of which was declarative, it was an absolute nightmare. BREATHE! ! ! - Binary Worrier
(5) @Binary, LOL. That sounds so bad I almost feel guilty taking pleasure out of reading it. - JaredPar
(1) Jared: Some night you can buy me a pint and I'll tell you all about it. Beware that I start foaming at the mouth about 10 minutes in though :) - Binary Worrier
(1) @Binary: This is so funny, if only it wasn't so sad... +1 for both :) - the_drow
(1) It doesn't have to be kept in-house for it to suck. I've witnessed more than a few really bad custom languages/environments/frameworks/WTFs that were treated as a product. - John Cromartie
Not that I think it's good for a company to use an in-house language, but it can cut both ways: I once had a friend work at a place where they used their own language. When she got an offer to go somewhere else, the old place gave her a nearly 50% bonus and 50% raise to stay, even though she'd only been there one year! Part of this - of course - was that she was good; however, it also would have cost too much to hire and train a replacement. - PTBNL
Depends on how well-designed the language is and what it's used for. I'm a fan of Sawzall. - Bob Aman
(1) We have our own in house ORM software for Java, it's called Abis, and that is about where it belongs. - amischiefr
You wouldn't want to work for Goldman Sachs then. Most of their development is done in their in-house scripting language called SLANG. - CashCow
@Binary Worrier, you just made everyone who read that realize that their own job isn't so bad. - HLGEM
[+52] [2009-05-23 15:19:10] Sam Saffron

Do I need to work weekends just before a big release?

Yup, sometimes you have to in order to not delay the release day. Just think of the costs of marketing to prospone the next release data of windows - the_drow
(18) usually thats due to poor project management and planning. - Sam Saffron
(26) That's software development. Might as well look for a tax accounting job where you don't have to work extra in April - MatthewMartin
(29) Just because bad planning is common... doesn't make it right. - Matthew Whited
(8) @MatthewMartin: That isn't software development, plenty of us can right code and keep a decent work-life balance. Weekends are my time. - Mike McQuaid
(13) What is this "project management" you speak of? - dangph
(1) @mike, "right code" as in right a wrong, or as in "I can right code but not english?" :P - Carson Myers
(3) Crunch times happen, and sometimes I've had to work overtime to make deadlines. The question I'd rather ask is whether I'm expected to work more than 40 hours a week in relatively normal circumstances. - David Thornley
Working one day on a weekend might be necessary now and then. But only the most incompetent manager/project manager expects people to give up their whole weekend. See how "great" your productivity is after working for 12+ days straight. - Ashley Henderson
[+45] [2009-05-23 14:52:56] Jeff Moser

Does the average developer have more than 3 hours of meetings a week?

(4) not sure if 3 is the magical number, but excessive meetings are definitely a productivity killer, +1 - Jimmy
Lower that to 1 - jmucchiello
(10) 10 minute scrums in the morning and an hour for a beer on Friday afternoon. +1 - cbp
[+43] [2009-05-23 15:20:19] Sam Saffron

Are working hours strictly enforced? Am I supposed to work 9-5 daily with no exceptions?

This is a big one. Developers should have "flex time" due to the nature of the work. - Wayne Molina
(2) If the best your boss has to say to you at review time is 'stop turning up at 10 past 9', then you could do with a better boss. I get way more done and voluntarily put in far more extra hours at my new company where I can start anytime between 8:30-10am. - cbp
8 - 5 more like :( - Pondidum
(14) +1 - countless times iv been told off for turning up 30mins late, yet no one seems to care when I stay 6 hours late finishing stuff off... - pzycoman
(39) I actually got reprimanded by a manager, with CC: the CEO for showing up 20 minutes late THE DAY AFTER I stayed THREE HOURS after work helping the SAME manager fix a database he destroyed. - Neil N
@Neil N: ouch :( - just somebody
(5) @Neil, be sure to go home on time. - Devtron
[+43] [2009-05-23 12:57:27] Anirudh
  • Is access to the Internet blocked at work?
  • Are they inflexible about letting you work from home occasionally?
  • Does the management do task effort estimation?
  • Was it too easy for you to get an offer from the company? (All you had to do during the interview was to explain quicksort)

(27) Explaining quicksort would be WAY more technical that anything I've ever had to do at an interview. - erikkallen
[+37] [2009-05-24 23:00:17] Maltrap
  • Do you only release a product if there aren't any more known bugs?
  • Is my manager non-technical?
  • Are there more than 3 people who can assign work to me without any approval?

(11) +1 on #3. I've been there before. - Jason Baker
I would say all the above is a norm in bigger companies :) - stefanB
Whys is #1 a negative? - Vaibhav Garg
Some people only code in bugs - Matthew Whited
Has there ever been a successful, non-trivial product with no known bugs? I think even the famous space shuttle people have a few known bugs. Working towards perfection is a good way to ensure your product is either far too expensive or delivered way after being obsolete - Colin Pickard
I somewhat disagree with number 3, depending on definitions. I like the process where any member of the technical staff can assign a case to any other. Common reasons: they feel that the other person knows the area better, they want the other person to comment on the issue and assign it back, fixing the issue requires skills they don't have (especially graphics/design/audio), etc. Ping pong could result in some cultures, I suppose, but hasn't in my experience. - Doug McClean
-1 A decent manager does not need to be technical, or evenly technically minded. - NimChimpsky
[+36] [2009-05-27 11:15:32] mika

Do you expect developers to serve support requests while doing project work?

(= Do you let the urgent override the important?)

(3) In moderation, this is actually a very good learning experience, provided of course that you give them time in their schedule to do it. I did it and it made a much more effective developer. - Ashley Henderson
+1 for urgent override the important. Some 'managers' run on urgency fumes year round, 24/7 and then berate for not making progress on big projects. - Jared Updike
[+35] [2009-05-25 06:40:15] Patrick Gryciuk

Is there no coffeemaker?   

We have coffee but milk is a rare commodity - Dave Turvey
(3) @Dave Black coffee has no calories, and is thus health food. - Adam Jaskiewicz
(2) This question is very important for me, but I know many programmers who dislike coffee. - Kwang Mark Eleven
I personally like prefer tea. Drinking something in the morning - that has caffeine in it - has become almost ritualistic for me though. - Patrick Gryciuk
(12) I think that crappy coffee indicates a lot. It says to me that a company would rather do the bare minimum to pacify employees than to spend a bit more and make them happy. I'm not asking for a cappuccino machine; just some coffee that doesn't taste like burnt cardboard that's been sitting in a warehouse for three years. - Adam Jaskiewicz
Adam, given that super-automatic espresso machines are less than $500 (not the best, but much better than Mr. Coffee), there is little reason why every office with more than 3 people shouldn't have one. - r00fus
Agree with this; coffeemaker is a good indicator. If it's a fancy schmancy coffeemaker, it's a good sign. If it's more basic but kept full throughout the day, it's hit or miss. If you have to bring your own then it's a bad sign. One of the better jobs I worked at had a coffeemaker hooked into the building's water and kept a near-endless supply of coffee available all day long. Even a crappier job had someone who always made sure there was a fresh pot of coffee. - Wayne Molina
[+32] [2009-05-23 11:21:30] FeatureCreep
  • Is the coding standard an inch thick?
  • Is Dilbert forbidden?

(2) Split this answer into three separate ones, and receive three votes from me instead of one. - Ola Eldøy
+1 on your comment for the strategy tip. Maybe next time... - FeatureCreep
Yes - working with legacy code is a pain - jb
I'm not really sure that a legacy cash cow is a necessarily bad thing. After all, it's good enough to make the company some bread, and you might be working to make it better. Other issues will determine if its actually reasonable to make it better. The other two are spot on! - TokenMacGuy
Yes, I see what you mean. Maybe that point does not really apply in this context. - FeatureCreep
(12) The Dilbert web site is blocked, but there several Dilbert books in the toilet. Partial credit? - Chris Huang-Leaver
Chris: So to enjoy an occasional Dilbert comic strip at your place one has to occupy the toilet for at least couple of minutes instead of just spending 10-15 seconds by looking one from web browser? Wow, management... :) - Esko
How does the joke about Dilbert comics go? If there are none at all, run - they may be banned. If there's a few, good to go. If there's a lot, run faster - the workplace is like a Dilbert strip. - Wayne Molina
[+30] [2009-05-23 14:25:09] Daniel Paull

Are your developers unhappy?

(5) This question is inappropriate. Everybody will always answer "Yes." - Kwang Mark Eleven
Unless they work for me! - Daniel Paull
-1 completely inappropriate question. - Metro Smurf
(1) @metro: In what way is it inappropriate? Unhappy workers, regardless of the industry, is a good indicator that something is wrong with the business. The converse is not necessarily true though! - Daniel Paull
(1) "Everybody will always answer Yes.", why? I've liked most of the places I've worked for! If that's changed, I've left. When I go to a new place I like to go and take a look around and "meet the team" and one of the things I try to sense is how happy and motivated people look in general. - Adrian Smith
[+28] [2009-05-24 10:04:54] Mehrdad Afshari

Do they hire developers primarily based on academic degrees?

(3) I believe the result of that would be massive over-engineered projects that implement every single Gang of Four design pattern in the book. - Soviut
@Soviut: Not really, I happen to have an academic degree, but I'm pragmatic enough to not apply GoF patterns on every single problem in the world. However I do agree that hiring developers based on attributes disjoint with the work they're going to do is a very dangerous thing to do. - Spoike
Google does that, doesn't it? ;) - Lakshman Prasad
(4) The keyword here is "primarily." I doubt Google is willing to hire anyone just by seeing his/her PhD. - Mehrdad Afshari
(5) @Soviut, I disagree ! In my country (France), it results with people who doesn't know what a design pattern is. :p - Nicolas Dorier
@Soviut, @Nicolas: design patterns are taught to people in crappy Java schools where they intend to replace good sense and brains. (At least in France) - Alexandre C.
[+27] [2009-05-23 13:07:56] Karsten

Does the build/deployment need 10 different manual commands which only one guy knows about?

(35) Isn't this covered by the Joel Test already, a 1-click build process? - Tim Sullivan
(3) If you are clicking at all, I think you are doing something wrong. My system generates tweets when other people break the build ;) - nosatalian
(1) ahhh now I understand why 1-click build process is on the Joel list already... - Zeus
Yes it is, the original Joel test has a 1 step build. Click vs command not as important IMHO. - Zachary K
[+27] [2009-05-24 23:42:45] Bernard Dy

Is unpaid overtime a regular occurrence, and nothing is being done to change that?

EDIT: StefanB notes that some overtime might be normal. I don't disagree with this, and in fact when I'm passionate about a project, I will give it of my own volition. But I've been in places where some is expected of the employee and is programmed into the schedule; I'm not talking about emergency situations that require occasional heroics, I'm talking about sizable chunks of time that show disrespect for the employee's personal time.

The law states you are paid for a standard work week of 40 hours. Dedicated employees have no problem giving a little extra, but when it's chronic or counted on by management, and that same management isn't comparably dedicated to offering comp time or overtime pay, that's when people are justified in being upset about it.

I would say standard clause these days is "your salary already includes 'certain' number of overtime hours" where the actual number of hours is never specified - stefanB
Well, I worked for a company that had some sort of compensation (you could take time off for work overtime) but it wasn't clear what exactly was the overtime since you are expected to work late when you need to finish your tasks (when you have no tasks to be finished you would be unemployed wouldn't you? the better you are the more tasks you have). Even worse manager would try to restrict me working overtime due to not willing to give time off (even though I did not ask). I ended up working late when needed and coming a bit late to compensate disregarding the whole managed approach. - stefanB
(1) If you're FLSA exempt, then overtime is (sadly) unpaid, at least where I work... - Jeff Kelley
If you are reading this page on stackoverflow you are a good enough developer to negotiate either paid overtime or get a job where you don't have to work much. - Mike McQuaid
(1) @Mike Arthur: I wish, for myself and so many others dealing with corporate America, that it was that simple. - Bernard Dy
Who gets paid by the hour? I spend as much time as I feel is necessary to accomplish what I deem adequate, if they don't like it, they can fire me, but so far we are both happy. - nosatalian
[+21] [2009-05-23 13:25:24] community_owned

Is there a dress code for "dress-down Friday"?

(1) Once worked at a place where they implemented a "No Blue Jeans" rule for casual Friday because they thought the outfits one of their young ladies wore on Fridays were too provocative and thus unprofessional. The problem was it wasn't her pants (blue jeans or otherwise) which were so provocative, but her very low-cut tops! - PTBNL
(15) Or is there a need for a "dress-down" Friday? - Tim Scarborough
(17) Do you have naked fridays? - Martin Beckett
[+21] [2009-05-23 13:27:08] tomjen

Are rules set in stone, even if the programmer have a good reason to break them?

This is actually why I dislike places that requires a suit - it is not the suit itself, but the attitude that the company conveys where appearances are more important than functionality.

(5) Rules exist to be broken. - User
Did you really mean to put it that way? Answering 'yes' to that question sounds sensible to me (as long as the reasons really have to be /good/). - Jonik
Thanks, changed mine to an upvote - Jonik
(1) Im currently contracting somewhere where I dont have admin on my machine, and can not run anything that networks hasnt approved, not even Reflector. I get around this by having my laptop on my desk, and using my own mobile internet. - pzycoman
[+20] [2009-05-23 21:55:19] Paul Morie

Here are the first two that popped into my head:

Are suggestions about programming techniques or implementation details from non-technical people taken seriously by management?

(As a corollary) Do employees from multiple departments without an ownership stake in technology make suggestions about programming techniques or implementation details and expect to be taken seriously?

(6) My project manager is great. He knows he's not technical, so he says, "Here, build this." I do and all is well. I've had plenty of project managers that want to micromanage every detail of a given project. - Drew
(3) @Drew You're very lucky! - André
Every so often, we get business change requests with "Hey, you should use this newfangled feature I saw on a Powerpoint slide to improve performance." Fortunately, my boss is good enough to reject all such requests and make them come back with business requirements only. - lins314159
[+18] [2009-05-23 22:20:06] John D. Cook

Have you upgraded to Fortran 77 yet?

(6) May backfire if the answer is something like "No, we're still on Fortran II". - Spoike
(1) hilarious. Or better yet...Fortran.NET - Devtron
[+16] [2009-05-25 00:10:29] stefanB

Is developer regularly (once a month) asked to complete numerous online courses prescribed by management to tick some bigger company-wide goal that is completely irrelevant to what developer is paid for (e.g. ethic course, personal goal management course, meeting your goals course, how to use your new time tracking tool in 50 easy steps course, be happy at work course ...)?

(2) Monthly compliance training here, but as I work in healthcare I give it a pass - Joel Coehoorn
+1. I've had to do everything from hurricane preparedness to handling a chemical spill. I'm now covered if knock my coffee cup over again... - Tim Scarborough
It is literally impossible for ethics (real ethics, regardless of what the course teaches) to be irrelevant to what anyone does in any context. - eyelidlessness
[+15] [2009-05-24 19:38:40] Nat

Do management judge projects by their costs only and are unable to judge them by their value earned?

[+15] [2009-06-07 07:27:58] abmv

Are you the only developer?

[+14] [2009-05-23 13:24:25] User

Are you obliged to participate in the company's "must" events?

We had to perform a City-rally, according to the predefined plan, make photos of predefined objects, find out questions to specific answers and be in time for evening restaurant (cheap bar, I only got a cup of coffee). It's either I miss something or I'm glad I'm not German.

(2) I am german and I also would not like doing something like that.. ^^ - Karsten
(5) this sounds like a perfect day - compared what our "must" events are. sitting in a boring room listeling to company jingles about 4 hours hearing praise for the sales people, although they are not there. - Andreas Petersson
(2) Then again, why would you work in a place where you wouldn't want to participate? Such events can, undeniably, improve 'togetherness' and whatnot within the company. (Or have I just been exceptionally lucky to work in places where you can actually have fun with the coworkers? Well, at least later into the evening, with the booze flowing etc...) - Jonik
(1) Enforcing those events is not technically legal in the U.S. unless you get paid hours to go to them. - Harvey
(1) I'm with Jonik on this. How fun an event is depends on the company culture, if it is rather repressive then the events tend to become something you will be happy to miss. If the culture is one having great co-workers and work environment then the event tend to become something you'll be happy to participate wether it'll be as simple as an afterwork at a pub to a training trip with the company. - Spoike
[+13] [2009-05-24 23:15:31] theog

Are they one-deep in any critical positions, like Oracle DBA's? So when the one guy goes on vacation you're hosed?

(2) Yea, that's us. - User
(2) I've seen this many places. Worse when they do more than one thing such as Oracle DBA and MQ Series admin. - jmucchiello
(2) Oh man.. Today I'm practicing DDD, last week I had to migrate a client's Win 2000 domain with multiple servers to Win SBS 2008 (don't ask who picked SBS ...). Tomorrow I'm setting up a new spam filter gateway for our office. On and on and on. That customer should've sued us for accepting to work on their infrastructure. Somedays I get to program. And the boss wonders why a big refactor is only now getting done after 6 months. :-/ - qes
A great variant: what's your bus-number for each of your core dev competencies? - r00fus
[+13] [2009-05-27 17:45:56] Ryan Liang
  • Do the developers work on multiple projects in parallel?

  • Do the developers use print statements for debugging? (usually implies no IDE is available and the systems are ancient legacy system)

  • Do the developers need to work on other tasks, such as maintaining servers or desktop support?

(7) I can't agree with the first one. I have 2 projects going on right now. One is a Java Web app and the other a new C# .NET app. I enjoy having multiple things going on. Does anybody else get bored working on the same old crap day in and day out, or is it just me? - amischiefr
@amischiefr: Good for you that you can get to work on projects on multiple platforms and manage to handle both at the same time. From my experience, it's the context switching that is hurting the productivity. Every time I switch from one project to another, I always need to spend some time to pick up the details of what I was left. I am not saying working on the same project for years. I also work on different projects, but I would prefer one at a time. - Ryan Liang
(1) If you work on an OS that takes 12 minutes to build and 5 minutes to reboot, context switching is a necessity. Having multiple projects at a time is by far the best way to go if anything you are doing requires blocking - nosatalian
@unknown (google): You reminded me some classic scenarios in Joel Spolsky's first Joel on software. Developers would put a sit-up board next to their workstation because the project took long time to build. During the build, they would work out on the sit-up board! I was kidding. But you were right. In your scenario, you'd better find some other things to work on to make the best use of your time. - Ryan Liang
I have 3 projects on the go at the moment; sorry but to be frank only being able to manage one project seems inept to me. Don't agree with the other two either. - NimChimpsky
I disagree with the first point. I hate only having one ongoing task, and if I'm blocked I don't have another one to switch to, plus my work gets very monotonous if I'm only working on one thing - CashCow
[+13] [2009-05-27 09:13:04] SoftDeveloper

So the guy in charge of software development has never been a developer?

(10) Worse is the CEO who once did some programming in VB/Fortran 66/Excel macro and therefore can make technical decisions - Martin Beckett
(1) Not necessarily bad, but most higher-ups don't realize the limits of their knowledge. - David Thornley
[+12] [2009-05-23 18:45:09] keeper

Has management imposed KPI's to measure individual programmer performance?

I'm so glad that I have no idea what a KPI is. :) - Doug McClean
Key Performance Indicator - SLaks
So you mean being measured is a bad thing? Or do you mean that bad KPIs are a bad thing? - erikkallen
[+12] [2009-06-19 09:11:32] Brann

Are your developers working on single-monitor workstations ?

More thoughts regarding this topic on ServerFault [1]


(1) Covered in the Joel Test, I believe, although not this specifically. - David Thornley
I think this is covered by best tools available. - Zachary K
[+10] [2009-12-15 15:06:35] David Thornley

Did they lie to you in the interview? (That should be worth -10 or so.)

(2) Of course this one is hard to know until later! - Zachary K
[+10] [2009-05-27 11:30:16] Josh

Does the number of new feature requests correlate to the length of time the CMO was stuck at the airport with his Blackberry?

Have a stakeholder is a stakeholder. - Preet Sangha
[+10] [2009-05-27 11:04:35] Alterlife

Do employees have to fill in an hourly timesheet?

(4) Downvoted public sector projects require time accounting. - Rob Spieldenner
(1) quarter hour, actually.. :( - Agent Conundrum
(2) And that makes them horrible projects to work for. - Alterlife
[+10] [2009-05-27 18:28:34] Lakshman Prasad

Is Ie6 the primary browser Org wide?

[+8] [2009-05-23 14:38:08] Bob Cross

How many Dilbert cartoons are posted on your cube / office walls?

This is doubly-damning for some organizations. Not only are the employees making not-so-subtle commentary about their work environment, they're also telling me "we're cliched Scott Adams characters just as much as the management!"

"Pointy-haired boss! Hur hur!" ... Spare me!

In the interest of full disclosure, my cube currently has three xkcd and one Penny Arcade strips.

which ones? - the cartoons you have on the wall. - Nat
@Nat, and And, let's be clear, they're not just on my wall. One wall is 3/4s tall with a window for the rest (helps the natural light from the window get into the rest of the floor). I use that as a two way whiteboard plus comic mounting area. - Bob Cross
Hahaha... I have 6 or so on my wall ;0 - Ethan J. Brown
[+8] [2009-05-23 13:09:33] Karsten

Do the developers think that they can keep every bug/issue in their minds, and therefore use no issue/bugtracking?

(11) That is already covered in the original Joel test, so it is kind of redundant. - tomjen
[+8] [2009-05-27 11:57:31] Tim Scarborough

Are there no programming questions when interviewing a new developer?

(2) I don't think you need to ask, you'll see anyway ! - Nicolas Dorier
(2) Isn't this in the Joel test? - erikkallen
[+7] [2009-05-23 13:21:54] Reef
  • ! (is there a QA department?)
  • What is the QA:developer ratio? (1:10 is an absolute minimum, 1:3 is good, 2:1 is NASA)

(3) I don't know if I'd make the assumption that NASA is 2:1. see - Jay R.
QA will never find all the errors, but it can usually find most of them. Some managers say "Why can't the coders just write a bug-free code? " (I've actually heard that) - Reef
(1) Why can't that manager get people to write better specs - Matthew Whited
[+6] [2009-05-23 23:15:48] Ólafur Waage

This has probably been answered but.

  • Do you code before any planning is done?

I would reverse that. - nosatalian
[+6] [2009-06-02 19:01:30] PeterAllenWebb

Have the developers been asked to find "creative solutions" to meet unrealistic deadlines?

[+6] [2009-05-27 12:36:32] alexs

Do you have to Google Traslate/Babelfish the dev specs, business analysis docs and/or client requirements?

(2) That must be painful. - Eric Hogue
[+6] [2009-05-27 13:38:24] Joel Coehoorn
  • Are developers doing significant DB work without the benefit of a good DBA?
  • Do you have a good deployment plan?

[+6] [2009-05-27 17:28:53] Mark Freedman

Do you test in production (load testing or otherwise) just because you can't mirror your production environment in a test environment?

If not, is your test environment running on the same server(s) as your production environment? - lins314159
[+6] [2009-05-27 11:06:22] Alterlife

Are you forced to use an ill designed hungarian syntax?

[+6] [2009-05-24 19:36:40] Nat

Do you plan when to do refactoring? (If refactoring is something you plan, then people aren't doing it all the time, when required. If the business prioritise what's on the plan, you're also letting non-technical people make decisions about essential technical work).

A related one:

Do you branch before refactoring? (You're not breaking refactoring into small, low-risk steps. You're not sharing the work between those working on the branch and those on trunk. You're introducing merge hell between trunk and the refactored code.).

I've seen both of these many times, sometimes on the same project.

I was told something like "You can do refactoring whenever you see the opportunity if it makes you happy". LOL. As though I need it. - User
(1) We've used branch-before-refactor once or twice to good effect (over the past five years), but it should definitely be the exception, not the rule. - Joe White
Refactoring tends to touch a lot of stuff, which is really what you don't want to merge. - David Thornley
Huh? Why would no not want to merge that as quickly as possible? The longer you leave it, the harder/riskier/slower the eventual merge will be. - Nat
[+5] [2009-05-24 19:42:21] Nat

Are projects managed merely to fail as cheaply as possible?

[+5] [2009-05-27 09:31:10] community_owned

Do you not work for a company that develops and sells software?

[+5] [2009-05-27 17:54:19] mkoeller
  • Does the only connection of developer workplaces to the internet go through a HTTP proxy that is limited to ports 80 and 443?

  • Do you have proxy authentication in place? Is it configured to Basic Authentication? Does it lock the user profile on 3 failed authentication requests?

And because it's in perfect harmony with the above:

  • Do you require developers to change their user profile's password every n weeks?

(1) I recognize that! - Nat
[+5] [2009-05-27 18:10:57] Mariano

Is there computer policies in your company that interfere with your daily work?

+1 - We had to get a network admin to "sign off" on us restarting IIS on the internal test server, that only we used. - pzycoman
[+5] [2009-05-27 12:08:45] Tony Edgecombe

Is the team all male (or all female).

On a small team it probably doesn't matter but when you have a larger team that is single sex it quickly leads to a poor working environment.

(1) One of the best places I worked at was an entirely male environment. - pzycoman
(1) Some of the worst environments I've ever worked in were all male. So there you go. - Preet Sangha
(3) If it's a female manager and all female employees... there might be a problem with the manager. - TJR
(6) There are women in software development? - nosatalian
[+5] [2009-06-08 11:53:06] chrmue

Do you have the feeling that dilbert strips are not funny, they just describe your daily experience?

[+5] [2009-05-28 20:20:54] Daniel Ribeiro

When developers make changes, and unit tests break, do they always simply delete them, no questions asked?

[+5] [2009-05-24 19:07:38] JohnFx

Do they measure developers by SLOC or LOC?

What would that be? - User
Source Lines of code/Lines of code - JohnFx
[+5] [2009-05-23 22:11:38] Amit

Do you have to fill in TPS reports ?

(4) Have you seen my stapler? - Matthew Whited
More importantly, are you using the new coversheet? - MPelletier
[+5] [2009-12-03 08:32:08] Clinton

Do you spend more time waiting for your project to compile than actually writing code?

[+5] [2009-06-26 18:57:27] Devtron

How much paperwork is required for a database modification?

Do you have clean restrooms for me to poop in?

Do you require development from janitor closets?

Do you have a real network that does not require Remote Desktop Connections?

Will you pay for my lunch? Every once in a while at least?

(1) "Yes" answers would take away from a company's score for you? Well, I guess some people must enjoy paying for their lunch, which they then eat in their dirty bathroom/janitor closet office =) - Matt Ball
[+3] [2009-10-22 18:23:57] Kevin

Do you laugh at developers when they tell you they need new hardware?

[+3] [2009-12-15 19:53:51] Brann
  • Technology

    • They still develop using obsolete languages (vb6, cobol, etc.)
    • They don't have a migration plan to the latest framework / virtual machine / whatever (example they use .net 1.0 with no plan to update)
    • They develop in-house stuff they should outsource (eg they reinvent the wheel instead of buying one - usually the internal wheel is less reliable, less power-rich, and very expensive)

  • Source control

    • They don't use it
    • They use on obsolete source control (eg visual source safe)
    • They don't use branches when needed
    • They don't tag their checkin with meaningful comments (or better, with workitems ID)
    • They prevent any checkin without a related workitem ID (this is so annoying for trivial modifications, like a spelling error in a text)
    • They don't store their db schema (or build scripts, or some other key information) in their source control

  • Development methodology

    • They don't have a test server, and a preproduction server, and a development server
    • They don't have automated builds
    • They don't have automated tests

  • Developer consideration

    • They don't let developers buy hardware when they need it (an extra monitor, an extra dev machine, some RAM, a SSD drive, whatever)
    • They don't let developers buy books when they need it.
    • Developers don't have a decent chair to sit on
    • They don't have internet access, or you use a white-list sytem

  • Organization / Management

    • There's a rigid time management / reporting system which costs more than 5mn per day per developer
    • IT people depends on a non-IT person for IT related decisions
    • Developers are segregated from users
    • Creating a user in a database / gaining access to a shared directory / whatever requires more than 2 minutes of paperwork
    • Developers don't have administration rights on their computer

[+3] [2009-12-23 19:24:25] YeahStu

Does Technical Support have the authority to ask developers to help troubleshoot a problem without first performing due diligence?

how about faking due diligence? there is no accountability ... if it seems too tough to troubleshoot, it gets sent to development - IAbstract
[+3] [2010-01-06 00:32:35] iChaib

Do you develop your softwares on the same plateform for 10 years

Medical is like that. - Joshua
Which is why the medical field is a cesspit of poor IT practices, and bad news for anyone who isn't planning to wind down until retirement. - Wayne Molina
[+3] [2010-06-08 06:14:53] Evan Plaice

Here's the cowboy contractor edition...

Does the employer negotiate a request for an increase in pay by not paying at all?

Are you interviewing 1099 programmers because you think 10-12 bucks an hour with no benefits/tax contributions/incentives is a reasonable and good strategy to save money on the bottom line?

Does your boss still use AOL as a web browser?

Is the project manager currently reading self-help books because this is the first 'real' project he's managed?

Has the project manager stonewalled with the other (and more senior) developer and attempted hostile negotiation the week of CDR (Critical Design Review) because he thinks it's a good tactic to 'up his cut?'

Note: By stonewalled I mean, convinced the other developer to not commit his work to the repository during the month leading up to CDR.

Does the contracted (and highly paid) integration specialist spend the full week of integration writing his portion of software from scratch and leave without any testing?

Are there features being added into the spec (preventing it from being frozen) as concessions because the project manager (who had to be dumped from the team) created an initial schedule that was impossible to meet?

Do the Customer's employees expect periodic out-of-state on-site support to teach them how to code in a new language and how to run a windows based system (that any teenager could handle) even though the the customer explicitly opted out of the on-site training portion of the package?

Does project tracking consist of a many concurrent/conflicting versions of a word document containing a table of problems with the project (not just bugs)?

Does the customer techs need numbered step-by-step procedures for every conceivable task that could be done on said system because the windows control panel is 'advanced stuff?'

Does the customer developer's decades of extensive experience with SCM (Software Configuration Management) consist of copying a new source file and incrementing the numbered suffix in the filename?

Is the computer you're attempting to interface with using a custom proprietary variant of Unix and still running the version written in the mid 80s?

Are the computers you're interfacing with taller than you and have 1000th the processing power of the cell phone in your pocket?

Or my personal favorite...

Does the customer default to reject 'good' advice on the grounds that they prefer to save a nickel by spending a million?

And... people think that working from an air-conditioned cubicle with sub-par-quality coffee is bad... Try to be the guy who's pulling his hair out trying to convince everybody else on the project that adopting version control is a good idea because none of them have even heard of it. Or being a junior developer with no guidance and little experience making critical make-or-break decisions about the project because no one else has a clue.

I feel like I've earned a pair of spurs that would complement a nice pair of shiny rattlesnake-skin boots.

"Is the project manager currently reading self-help books because this is the first 'real' project he's managed?" -- Hey that's not fair, everyone has to start sometime. Maybe ask if the project manager is refusing to read self-help books even though she sure needs them. - Windows programmer
(1) Not when the project is worth 100K+ and the said beginner PM is in his early 50's. There's was a little(lot) too much yeehaw included in that project. - Evan Plaice
[+3] [2010-06-08 08:53:03] Pavel Radzivilovsky

Do you write design documents in MSWord (instead of a company wiki)

To be fair, many companies do that; for drafts it might be ok. As long as the final documentation is maintained as a wiki... - sleske
It's not that bad actually. MSWord has a reversion system just like any other wiki. - the_drow
it has poor hyperlinks, poor cross-document search and poor revision control. - Pavel Radzivilovsky
[+3] [2010-10-19 16:42:10] Richard Warburton

Is your entire developer team a Monoculture (in terms of Operating System, Programming Language, IDE etc.).

By this I specifically mean do they all share the exact same opinions about these things, or is there free debate over them.

[+3] [2009-05-23 14:14:59] Sevki

Do they use dial-up?

(2) lol Have you ever came accross that? - the_drow
[+3] [2009-05-23 12:49:28] community_owned

Is the Testing Plan, for a given piece of software, developed after the software itself is developed?

(The Test Plan should be using the Requirements as its basis rather than the software.)

Also: Is there a test plan? Is it up to date? - Pondidum
Greenfield development is rather rare. When most projects are maintenance projects and most projects were done with less than optimal process to start with, this may be an unreasonable expectation. - MatthewMartin
It always felt like cheating to write both the code and the tests. Then again, some people wrote code and tests such that the code failed the tests. - David Thornley
[+3] [2009-05-23 11:33:43] Paul Tomblin

Do they mix EJB, Hibernate, SQL in .properties files, and a custom code generator?

(4) Custom code generator == life saver. - Joshua
(10) Custom code generator == career dead end. - Paul Tomblin
(1) Custom code generator == complete inability to take advantage of advances in technology, in my experience. - David Thornley
[+3] [2009-06-02 18:46:42] JP772

Do you have more active code branches than team members?

[+3] [2009-05-27 23:36:05] Jon Erickson

Is it a top-down company or are teams self-organizing?

Are you confined to non-open source tools (because it "hasn't been tested")?

[+3] [2009-05-27 11:39:33] privateace
  • Are there any relationships/alliances between any team members?
  • Are there any relationships/alliances between team members->outside persons?

[+3] [2009-05-24 20:00:23] John Cromartie
  • Is your development environment constrained to the point of having no ability to load or cleanly interface with external libraries or tools?
  • Do you use an undocumented, incomprehensible and over-engineered framework with major portions of the source code controlled by an outside party?

[+3] [2009-05-25 00:16:25] stefanB

Is people manager making code production decisions (e.g. you need to split coding that module in 5 parts because I give you 5 people, could you have test plan finished a week before requirements are completed so that test developers can start implementing test cases ...)?

[+3] [2009-05-24 23:10:02] abendigo

Is the build process manual? Does it have a dedicated "build person", and take hours to produce one build, assuming nothing goes wrong?

(3) Already covered in the original Joel test (can do one step build) - stefanB
[+2] [2009-05-25 07:00:45] stefanB

Are you required to restart your development box at least once a week?

Even though developing for Linux/Unix systems it always feels like Linux development environment is only an after-though. You're given Windows box and have to open millions of terminals and work remotely using vnc with minimalistic setup to not burden the server where every other developer uses Window box. Not to mention that you have to 'restart' once a week when critical patches for software are applied.

Where are those companies using Mac OS only environment?


Oh did I say "at least once a week"? It's becoming more like once a week but every forth week apply new patches so three restarts a week are required.

Someone in my office made a point that Monday morning restart of window box is ok BECAUSE IT"S AFTER WEEKEND. I told him that it's like to expect to take your car to service every Monday, because it's Monday and the car is expected to run for the rest of the week.

Sorry if all these restarts are norm in Windows world and people got used to that but my Mac Book Pro I use at home gets restarted about once every two/three months unless I left it unplugged and it runs out of power ... but that does not happen often.

"companies using Mac OS only environment" - Probably in an industry like graphical design/advertising. "Mac OS only" would suck though, just like "Windows only". In the best places you can choose quite freely. - Jonik
Hm ok that's fair considering that Mac is posix compliant unix system I would be extremely happy to ditch windows/remote login to linux via plain terminal setup for Mac OS only, but yeah if there was an option to choose your system that would be great as well. Unfortunately most places I've seen is Windows/remote linux login which is extremely sad to use windows just because company things outlook is the only email application. - stefanB
Personally I have Windows running inside VMware on my Linux work machine, to be able to use Outlook (properly) and for other Windows stuff like testing with IE, etc. This setup works well enough. - Jonik
I can see a place that asked people to shut their computers down before leaving for the night. - Zachary K
[+2] [2009-05-27 11:35:03] Josh

Are your designs disregarded because they're not inline with the company's [secret] vision?

[+2] [2009-06-07 07:11:51] AB Kolan

Do you only write Unit Tests after the development is done ?

[+2] [2009-05-23 15:14:29] Sam Saffron

Do your unit tests take longer than 1 hour to run?

Hmm, what it unit tests include some kind of performance tests? I think it's OK, because unit tests are part of build process that runs nightly... - Michael Damatov
(3) i think that integration and performance tests can take a while to run, however you want to keep your unit tests ultra fast. - Sam Saffron
(1) Of course, this question is a follow up to "Do you use unit tests?" - Jason Baker
"Longer than one minute to run" would be more like it. - Nat
[+2] [2009-12-14 23:10:55] stefanB

Does your company have a causal dress code policy all the time or only when no 'VIP' are walking around?

I was sold on casual dress code (jeans/T-shirts) during inteviews, I was told not to dress up for interview but more and more often we get email notifications that for next one/two weeks no t-shirts or required black trousers/shirt code ...

[+2] [2010-03-28 01:30:54] daf

Recently seen:

  • WPM (words per minute) requirement of a job specification for a programmer.

This is a true indicator of cluelessness.

No it isn't if its set reasonable. Most programmers with really low WPM without a really good excuse do way too much copy, paste, and modify. - Joshua
Being able to touch type shows you have optimized the interface between your brain and the computer. - Thorbjørn Ravn Andersen
does the job description include the phrase "...and other duties as assigned"? If so, it might mean that this "programmer" will also be pulling duty as the admin assistant. :-) - Bob Jarvis
I have a low word count per minute, but i have memorised almost every resharper shortcut to counter it - burnt_hand
[+2] [2010-06-08 08:54:24] Pavel Radzivilovsky

Do you write test plan only after the software is complete? (as opposed to, during development)

[+2] [2010-06-08 14:23:42] Pavel Radzivilovsky

Are your programmers reluctant to show work in progress?

(As in "can I freely edit stuff of others", notifications vs priviledges, etc)

[+2] [2009-06-21 20:34:27] iammichael

Is developer productivity or performance evaluated by metrics such as "lines of code written" or "number of bugs fixed"?

[+1] [2009-08-28 19:29:43] Gus Paul
  • Is third party software managed by a central purchasing department that applies the same rules and timescales to software purchases/licensing the it would to office supplies?

  • Does all internally approved 3rd party software have it's .msi rebuilt and wrapped in a proprietary scripting language, inevitably breaking perfectly unusable installation processes? Do you have to wait 2 months for an offshore vendor to write this script?

[+1] [2009-12-07 15:03:13] Charlie Brown

Do you strongly enforce code-generation tools to shelter your programmers from the confusing intricacies of programming?

[+1] [2009-12-07 15:09:34] wheaties

Is there a "rock-star" developer within the group?

Is the metric of quality done fast?

[+1] [2010-03-02 02:19:05] MPelletier

Are the architecture, analysis, and tests performed by straight-out-of-school developers, paid the salary of a developer, and with the sole title of "developer"?

[+1] [2009-05-23 11:41:14] vobject

"Has marketing a higher budget than development?"

(4) I'm not going to vote this down because I think it alludes to a problem with priorities but our company pays for everything we need for development work, including staff but our marketing budget dwarves it. TV advertising is expensive - Neil Trodden
Did not mean to offend anyone. I do not have inside knowledge about how the budget of a company is shared. Maybe it is normal to have marketing be more epensive than anything else. The question (and some answers) just reminds me of the Dilbert strips. Mainly this one: - vobject
the ratio of marketing to dev budgets is probably not something you will know in an interview so its not a very useful thing. And in many cases it might make a lot of sense to have a lot more money in marketing. I would expect Groupon's software to be pretty simple, but their marketing operation rather larger. - Zachary K
[+1] [2009-06-10 04:16:30] guzelo
  • Do your developers look puzzled when you ask them where their customer requirements are?

  • Do the software developers have to waste their time dressing up with anti-ESD coats and shoes to go accross the production floor into the warehouse to pick up their just-delivered SW/HW tools?

[+1] [2009-05-27 12:10:58] Ken I.

Are you forced to implement system changes recommended by non-programmer users that will threaten the security/integrity of the system simply because the non-programmer user "thinks like the customer"?

[0] [2009-05-23 14:02:37] Marco van de Voort

Do you provide a full proof for your software?

its fool btw 15 chars - Woot4Moo
No. Maybe "complete proof" is better, but definitely not fool proof. - Marco van de Voort
[0] [2010-08-06 13:51:52] Greg Beech

Do you fix bugs before writing new code?

Oh... wait a minute... that one's actually number 5 on the actual Joel Test. I wouldn't want to work for any company that answered "yes" to this one.

If you want an explanation, why don't we turn to Joel himself? In an article written only a year after the "Joel test", he explains why Fog Creek don't fix bugs before writing new code [1].


(1) You missed an important paragraph: "But mostly, it's worth fixing bugs. Even if they are "harmless" bugs, they may reduce the reputation of your company and your product, which, in the long run, will have a significant impact on your earnings." - Joel Coehoorn
(1) @Joel - I didn't miss that paragraph, and I don't see how it changes the point. The fact is that article states that Fog Creek do not fix bugs as a matter of course before writing new code, but make a decision on a per-bug basis as to whether and when it is worth fixing. Just because they may make the decision that "mostly" bugs are worth fixing, does not change the fact that they choose to leave some unfixed before writing new code. And thus, do not pass the "Joel test" on this point. Which is a good thing. - Greg Beech
[0] [2011-02-02 08:43:37] Nilesh

Are you still using Waterfall?