What was the absolute worst programming job and why?
-
I have had a few were the client has failed to pay. Those are probably worse. At least when you get paid it is easy to write off the bad stuff as just another day. Although, there was this one place. My first real job. I was left to do a task all by myself with no real experience and I did it. Problem was it didn't work. Two weeks I spent re-writing and testing and re-writing only to find out that it was the bosses code that caused the error (the holy among holy that I was not allowed to touch). Then I get dinged on my performance review for it :P
Need a C# Consultant? I'm available.
Happiness in intelligent people is the rarest thing I know. -- Ernest HemingwayMaybe not my worst job but the same result. Got given wave 2 of a project that was originally set up by my boss. The whole thing went horribly wrong and over budget for a variety of reasons mostly Fuzzy spec (written and approved by my boss) so not what the client actually wanted Tasks agreed (by my boss) with the client but not included in the budget(controlled by my boss) so way over budget Got slaughtered by my boss for the projects problems and no bonus or pay rise as a result. The bit I loved the most was finding a "Post Mortem" report from my bosses original wave 1 setup from before I joined (which it seems also went wrong for exactly the same reasons) detailing what went wrong and how these problems must avoided in the future.
-
There are 2 experiances that could count as worst job (haven't figure out wich one is the worst) 1: my first job Hired to do .NET programming I end up in a enviroment completly programmed in a language I knew nothing about (the name even eludes me at the moment)[EDIT](just remembered the name: navision)[\EDIT]. First 2 weeks I have nothing to (really I spend 2 weeks sitting there doing nothing, sounds nice but trust me it isn't). Thirth week I get asked to do some minor adjustments to a report, so I think well this should be easy (really they were very minor, move a label and such). I spend 4 hours searching how to do this, then asked one of the other programmers and get the answer 'It's somewhere in the code, just fidle with it a bit and see what happens'. I do so and another 3 hours later still nothing, I ask the programmer if he can show me how to do it and get the answer 'Sorry I don't know how to do it I have to do just the same like you, fidle with it and watch what happens'. I turned around gave my resigniation and got the hell out of there. 2: my current job (the first 6 months) Again hired to do .NET programming (this time I really got to work and in .net) next to a supposidly very expirenced programmer. He talked my boss into buying a component (will remain unnamed) with the promise it will improve the programming speed. After 6 months we still hadn't finished the programme (wich should have been done in 1 month). The guy never talked to me never told me what he changed, didn't document or comment code, and for everything my boss asked (simple stuff like a simple lookup in a combobox list) his answer was: 'That's not possible standerd, I'll have to write code for it wich will take xx time'. Thank god my boss fired him or I wouldn't have lasted another month. I still have to use that component for 1 project (small one) and everytime I curse like hell when the client asks for a change (ofcourse not out loud ;P ) I think number 1 was the worst but 2 is a very close folower
modified on Tuesday, July 22, 2008 6:19 AM
Hmm, was that component an OR-Mapper? :laugh:
Wout
-
Writing an ASP.NET app in VB. Seriously: don't do it X| The IT Director ( a journalist ) had written a "prototype" X| X| I wrote 120,000 LOC in a year and they didn't pay my last invoice X| X| X| They generated £1M ( $2M ) in sales in a year :mad:
---------------------------------- Be excellent to each other :)
-
Agreeing to pair programming at a software house many years ago becuase I though it would be cool to try out a fairly new concept and almost coming to blows because my 'partner' was a complete ****. I think he thought the same about me. Needless to say I'll never do that again!
I'd like to see some real world examples showing that it actually works. I'm interested in agile methodologies but pair programming... I don't know. Does that mean the client pays for two full-time developers working on one routine at the same time (one is a backseater)? Everyone has a different coding style and it may lead to the exact situation that you depicted (fighting). Maybe pair programming is good when you need to improve performance of some routines/modules? Maybe if it involves a complex algorithm it's better to have two brains to think about it? But otherwise than that wouldn't unit tests, naming conventions and coding standards be enough?
-
Hmm, was that component an OR-Mapper? :laugh:
Wout
No, I think (from what I understand off OR-Mapper) that would even be an improvment so... I would give the name but I don't think that anyone here would consider using it so no need to warn people (in my defence at the time I was just starting my career so didn't have the knowledge to tell my boss not to take it, I (and my boss aswell) took the word of that 'experienced' programmer and believed him)
-
I'd like to see some real world examples showing that it actually works. I'm interested in agile methodologies but pair programming... I don't know. Does that mean the client pays for two full-time developers working on one routine at the same time (one is a backseater)? Everyone has a different coding style and it may lead to the exact situation that you depicted (fighting). Maybe pair programming is good when you need to improve performance of some routines/modules? Maybe if it involves a complex algorithm it's better to have two brains to think about it? But otherwise than that wouldn't unit tests, naming conventions and coding standards be enough?
It was a software house that I'd previoulsy consulted for and had helped to write the core product so it seemed a good fit. However this other chap and myself were just not suited to each other and I felt the exercise was more about micro-management than achieving anything of importance. I'm not saying I was always right and he wrong but, after a while, I just couldn't stand the sight of him. I'm okay in a team or alone but not with someone sitting with me every minute of every day (well, it felt like it): it just doesn't work and I've yet to see it work properly anywhere I've been. I have turned down work on the basis of pair programming.
Pawel Krakowiak wrote:
Maybe pair programming is good when you need to improve performance of some routines/modules? Maybe if it involves a complex algorithm it's better to have two brains to think about it?
Indded but that doesn't need pair programming.
-
First day... Me: So, where is the code kept? Boss: Well, I have some copies of it on my laptop, and Steve has it as well. Me: On his laptop? Boss: Yes. But we don't know where Steve is, and he's taken his laptop with him. [Long pause] Me: Are you saying you don't use source control? Boss: I don't think so. But we do back-up the server regularly. Me: But the code is on the laptops, not the server? Boss: Yes. [Longer pause, deep breaths] Me: OK. So do you know which customers have which version? [Even longer pause] Boss: It depends what you mean by 'version'. [Much shorter pause] Me: I just need to get something from my car. I think I'll take my coat...
-
Back when I was new at running a company, I agreed to take on an open ended project. The scope looked to be fairly well defined, and I estimated it would take 2 months to deliver. Oh what an idiot I was - the contract I presented was full of holes, and the client ruthlessly took advantage of us. 6 months later and with the scope blown wide open, we finally delivered the application. Stupidly, we let the client have the source as well - baaad mistake that; they changed the code and then demanded updates in the supported app. This wouldn't have been so bad if we'd known that they'd been mucking around with core functionality. Never again.
Deja View - the feeling that you've seen this post before.
-
The job I had for 4 or so weeks at a game company where the lead guy was reinventing the 3D engine and the company ran out of money and didn't tell their employees, leading them on with "I'll get your checks in a couple days" and then one day, the people financing the game (who stopped financing it, obviously) came in in the middle of the night and took all the computer equipment (which was their property so they had every right to do so.) Marc
That sounds par for the course for most game companies :-D (I'm currently at my fourth one, after two shut-downs and a lay off...)
There are three kinds of people in the world - those who can count and those who can't...
-
Anything that includes one or more of the following statements: - I just need a button that... - We had this system developed for us and would like you to... - It shouldn't be too hard to do... - Our last programmer was on drugs... (true story) - Do you know Lotus Notes? - We have an old system that we want converted to :insert language here: (as if it will happen by magic?!!??!!) - No, we don't have the source code - do you need it? (again, true story) Feel free to add to the list!!
-------------------------------------------------------- Knowledge is knowing that the tomato is a fruit. Wisdom is not putting it in fruit salad!!
The one every game developer dreads :- - Can you make it more like [insert GTA, Halo, WoW or some other top seller here]
There are three kinds of people in the world - those who can count and those who can't...
modified on Tuesday, July 22, 2008 7:57 AM
-
I used to maintain Windows apps written in Delphi 7 which used SQL Server 2000. The client part wasn't using any OOP concepts (besides what Delphi generates, I guess :P) and the SQL part was the worst... Someone thought it would be cool if the code run on any database regardless of its name, so all queries were enclosed in exec statements, like so: exec("select * into table2 from table1") No one heard of table variables, no one heard of temporary tables either. Usually there was one huge stored procedure which did processing from start to end and stored intermediary results by destroying and creating physical tables, everything in execute statements of course. Said procedures used to run 40 minutes on multi-processor servers with a lot of memory and sometimes choked them to the point where SQL Server couldn't run anything else for the duration and spit timeouts. And in the 30th minute you encountered a syntax error somewhere in your dynamic SQL. :D Oh, joy... There was no documentation for the code, but there was also no documentation (or a very sparse one) for the applications, so I didn't really know what was their purpose - every app calculated some financial data and I didn't have a clue what would be the correct result. The funniest thing is there were users who have been working with said apps for like 7 years and even knew their way around some stored procedures, so at times they were able to tell me what to fix (as they were not allowed to do it directly, it had to go through the IT dept.). Ridiculous, isn't it? :laugh:
-
Anything that includes one or more of the following statements: - I just need a button that... - We had this system developed for us and would like you to... - It shouldn't be too hard to do... - Our last programmer was on drugs... (true story) - Do you know Lotus Notes? - We have an old system that we want converted to :insert language here: (as if it will happen by magic?!!??!!) - No, we don't have the source code - do you need it? (again, true story) Feel free to add to the list!!
-------------------------------------------------------- Knowledge is knowing that the tomato is a fruit. Wisdom is not putting it in fruit salad!!
Heh - Yeah: "Put a button", "Shove some data"... I decided to rename the "Post" method (which posted data to the DB) "Shove" on my base object. Id like to add that the words "Just" and "Only" should require a license to use.
-
My current job (which is also my first job as a programmer). CFO that stalls almost every attempt at developing the team and giving body to it. A manager that is fairly new to the task and is on the edge of a burn-out (if not beyond). Requests for self-study are not accepted, because the manager thinks that's not a good signal to the rest of the IT-department (SysOps and sorts) and the trainings that need to take place are going to be planned (not taken) at it's earliest in september. I'm the single .NET-programmer (very junior in experience) and no or litte hired personel for the last year, so no-one to use as a mirror... And a personal thing: they have high expectancies, where I mostly don't know if I can meet them, since I don't know where I stand in the entire .NET-environment knowledge-wise....
I'm assuming you're young and/or just getting started in the workplace? If I'm right here - just go with it. You can learn loads for free on the internet (I've never paid a dime for training anywhere, and the training that my employers have paid for has been no better than training I was able to find at no cost), and you should take every opportunity to do it - piss on what your old-guy control-freak bosses are telling you. You can learn a TON here too... If you have a question - post it! Regardless of whatever faces people put on, we're all just here, and while some may be more organized than you or seem to be more "together", you're just as capable as anyone if you put the time into it. And - if you aren't happy where you are - get your resume out there! It makes very little sense to say that your worst job ever is the one you currently have and NOT do that.
-
I used to maintain Windows apps written in Delphi 7 which used SQL Server 2000. The client part wasn't using any OOP concepts (besides what Delphi generates, I guess :P) and the SQL part was the worst... Someone thought it would be cool if the code run on any database regardless of its name, so all queries were enclosed in exec statements, like so: exec("select * into table2 from table1") No one heard of table variables, no one heard of temporary tables either. Usually there was one huge stored procedure which did processing from start to end and stored intermediary results by destroying and creating physical tables, everything in execute statements of course. Said procedures used to run 40 minutes on multi-processor servers with a lot of memory and sometimes choked them to the point where SQL Server couldn't run anything else for the duration and spit timeouts. And in the 30th minute you encountered a syntax error somewhere in your dynamic SQL. :D Oh, joy... There was no documentation for the code, but there was also no documentation (or a very sparse one) for the applications, so I didn't really know what was their purpose - every app calculated some financial data and I didn't have a clue what would be the correct result. The funniest thing is there were users who have been working with said apps for like 7 years and even knew their way around some stored procedures, so at times they were able to tell me what to fix (as they were not allowed to do it directly, it had to go through the IT dept.). Ridiculous, isn't it? :laugh:
Ignorance is bliss - for the ignorant... Its hell for the rest of us. My fav was a job where nobody had ever figured out how to add dates... The result was a whole new month that occured yearly and a system in which every month had only 28 days. Nice!
-
Another one is one of my current projects. The client came with a small web application concept and called it a web widget. After talking to him I found out he needs a mobile messaging application with user accounts, subscription plans and support for multiple SMS gateways - which should be pluggable so that more gateways can be added later. At first he asked for a proof-of-concept application to see what I could do with a gateway, so I created it. It was thrown away and I still don't understand what he wanted it for... Then he insisted on having weekly meetings on Skype and discussing the project. I started writing a functional specification and creating UI mockups in Visio. After I worked on the mockups and the documentation he had some new features or changed his mind about something each week, so I was back to the 'drawing board'. I told him a few times to slow down and expressed my concern that we will be stuck designing forever if it goes like that and that we should have something working and then build on top of that instead. Meanwhile he told me he doesn't like Microsoft world because there are license costs and he would rather develop this using an open source server/framework/technology/language/whatever (%#$%# red flag for me!), yet he chose to hire me (a .NET developer) to do the job. But he wanted not to use Microsoft stuff if he could, so first we decided not to use ASP.NET controls and ASP.NET AJAX. I had to evaluate some other UI toolkits and chose ExtJS finally (it's great, by the way!). Then he said he would need custom attributes for contacts, in our terms it means implementing an Entity-Attribute Value[^] model. Every blog post I visited (even one where someone shown a complete implementation for MS SQL) said not to do it at all costs. Crap. Two weeks ago he told me they will need email support along the SMS functionality, but I asked him to defer it to a later phase. The whole process took about 130 hours of which we spent almost 20 hours talking about new features and reviewing the mockups, 30 hours spent evaluating toolkits and 3rd party web services and 44 hours writing the spec and working on the mockups. He is angry that he doesn't see any progress besides the functional spec and I heard yesterday that he would have expected to have the working application in that time and budge
-
Straight out of college I took a position with a small family run business. It wasnt just that the job was bad (and the pay was pitiful), but my boss and I had serious communication issues. I literally was handed a napkin with some scribbles on it and was told that the scribbled notes were supposed to be the documentation for the project he had just sealed the deal on. Three months later when there was a critical part of the project that was missing he blamed me for missing it, because it was inside the folds of the napkin. And here I was thinking that all of the documentation was on the front, go figure. Later, when I was discussing my future with the company I expressed a desire to take on a bigger role, maybe lead the team through some projects. My boss was quick to tell me "this is a family company and you dont have the right last name for that type of position." A couple of weeks later I was handing in my resignation. Luckily, since then I have moved through some great learning positions and into a terrific job with a top notch team.
-
Just about any you show up for and accept a wage/salary for. How about this: "We are converting legacy code that was written over 10 years in VB4 - VB6 to RealBasic for use in Mac environments" for $12 an hour. I'm a cook now.
-
I'm assuming you're young and/or just getting started in the workplace? If I'm right here - just go with it. You can learn loads for free on the internet (I've never paid a dime for training anywhere, and the training that my employers have paid for has been no better than training I was able to find at no cost), and you should take every opportunity to do it - piss on what your old-guy control-freak bosses are telling you. You can learn a TON here too... If you have a question - post it! Regardless of whatever faces people put on, we're all just here, and while some may be more organized than you or seem to be more "together", you're just as capable as anyone if you put the time into it. And - if you aren't happy where you are - get your resume out there! It makes very little sense to say that your worst job ever is the one you currently have and NOT do that.
I like to think I'm young (33 y.o.) and am working for this company for 6 years now, previously as desktopadministrator, systemadministrator and networkadministrator. So the company isn't new. And internet is definitely very much filled with enough resources; that's where I got most of the stuff from for the software I wrote in the meantime (so yes, I was able to get some things going). But there is a point at which I don't know anymore where to look for some things. And I wouldn't dare to post newbie-questions in the forum(s) for which I should know the answer myself because of it being working knowledge for any level of programmer.... (no offence meant to this and/or other communities, just my own personal thoughts/feelings)... As for the resume-part... I've started treading that road... This workplace has been 'in development' for nearly two years, now, and only very little progress has been made (we've looked at trainings about a year ago, and still no trainings followed, for example, because of hesitation of the manager and sabotage from the CFO). Since I've been in IT for some years longer, I think I can say this is actually quite bad... (at least I hope never to have such a workplace again, be it in programming or sysadmin).... and now, let's barf a bit an be rid of it... ;)