Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple APILearn More
Search - "estimation"
Management : "How long you think it would take?"
Me : "now this is a rough estimate, but I think building the back-end and database alone could take 6-months minimum"
Management : "WHAT ARE YOU TALKING ABOUT? YOU ARE NOT SERIOUS"
me : "its a big proj..."
Management : "I thought it will be something like 10 days, already told the client it can be done"
me : "but we are not ready"
Management : "how are we not ready? we already have the virtual 3D shop, and we can use this ready-to-deploy eCommerce service as our data base "
... "you need to figure this out, this is not acceptable" he continued
* 2 Days Later -talking to my direct boss *
Boss : "since you don't know how to do it..."
me : "what ? I didn't say I can't do it, all I said it will take six months"
Boss : "yeah yeah, anyway there is this studio, a professional polish studio, we called them and they can do it, we will sign a contract with them, this will let you focus on the front-end. good?"
me : "well alright then"
Boss : "please write a doc, explaining everything needed from the backend"
-to me that was the end of it, took a long time to tell me they made the deal-
* 5 Months later *
- "Abdu, can you come here for a minute..."
- "yes boss?"
- "the document we asked you to do for the Polish studio, did you specify that we needed an integration with the API we are using for eCommerce?"
scared to death I answered : "why of course I did!"
I ran to my PC to check it out because I didn't know, I forgot because no one even comment on my doc. I check it out, and it was clearly explained... I got relaxed...
turns out they didn't even do what we asked them for. took them 5 months, and with no communication whatsoever. all their work was useless to us. complete dump waste.
never mentioned this until a year later... in a heat of moment when they were asking me to make an impossible task with no men and no time... I reminded them of this story... management didn't like it. but it was the truth. they didnt push this crazily this time13
Boss throwing up a huge source code that I didn't see before.
Boss: Hey, this is an app from a contractor to do XYZ.
Me: Oh, okay.. so?
Boss: You will continue the code and the maintenance now. How much time do you need to implement X feature?
Me: I need to see the code first, can't say nothing now.
Boss: ok I need estimation now.
Me: *getting nervous* I need to see the fuckening code first. if you want estimation now I would say one year..
The CEO asks God:
"God, how much time do you need to create the earth?"
God: "uh, 10 billion years I think"
CEO: " You have only 7 days. Well 6, the last one is to fix everything gone wrong after deploying"
And here we are6
Providing work estimation:
Dev: This should take about 2 weeks
Non dev: Really? But it's so simple. Shouldn't be that long right? I think it can be done in one week.
*After one week*
Non dev: Why is it still not done? I thought you only need one week?9
Starting 124,086,667,135,647* projects, but never actually finishing them.
* Note this number is an estimation and may not be entirely accurate.3
President of my employer: how long do you thing it will take to complete x type of migration?
Me: I don't know. We've never done one.
President: well how long do you think it will take based on your experience?
Me: I don't know. I've never done one.6
Boss: We want this feature ASAP, how will it take from your time?
Me:*giving honest estimation* about 4 days, there are many details to handle..
Boss: oh, we need it tomorrow evening, I said to the client it'll be ready..
SO WHY YOU ASKING ME FOR ESTIMATION YOU F**
Stupid annoying client want me to add 2 new fields on a form. Ok I said, my estimation is that I need 2 days to make the changes on form, database and all the scripts that posting and getting data, plus testing. His reply was, come one do you really want 48 hours to just add 2 fields, its sooo easy!!!! WTF dude... if it is sooo easy why are you fucking bother me??? Do it your self!!!!9
Fuck those clients which are surprised when they get an invoice when they ask you to do something for them.
I think it's as simple as:
- you know my hourly rate
- you ask me to do some work for you
- I give you an estimation
- you agree with the estimation
- I get the job done and show it to you
- you accept the edits/solutions
- I send you an invoice with less hours than estimated
- you agree with the invoice and pay
It seems that every step is going well, except the last one...
Well... fuck you too.13
ESTIMATING FUCKING HOURS.
Well not literally, that only takes 10 minutes.
But software estimation... anyone pretending to be good at it is a dirty liar. Adding a button? Uh, let's say 2 hours, I mean I gotta poop in between as well, and it's probably some broken bootstrap theme with hacked custom margins.
Building a commenting system coupled to an ancient CRM? Uh... maybe one day? Maybe a month? I don't even know what the CRMs looks like? You won't show me because "that's irrelevant"?
WELL THEN I DON'T FUCKING HAVE A CLUE.
And in the time we spent on discussing time estimations, I could have written like half of the feature... or zero... because you still haven't fucking shown me what the CRM API looks like.
YOU KNOW WHAT I'LL GIVE YOU AN ESTIMATION. ME. VACATION. DONE IN 6 WEEKS.6
In our company the estimation is done by customer / PO. Usually, the deadline is set to the day before yesterday after the issue arrived. Always highest prio.
Oh, almost forgot: when a developer does his estimations, the resulting number gets divided by 7 by the PMs. Buffers? Who needs that. QA? Pfff. We are EFFICIENT.
Deadline not met? Bugs in the release? The developer must be bad.8
"How long will it take us to build X?"
"How long is a piece of string?"
Very similar indeed. Time estimates are insanely hard even with all the cards on the table, be sure to lay them all out before asking.1
So I used to do some freelancing in web development last year, nothing too fancy just some simple PHP websites. Comes the worst meeting in my life. So I am from India and we have a lot of long lasting business here being passed on over generations. TL;DR the guy was the owner of a very old business which was actually very huge and the guy was educated too, so I assumed that he'll be sensible as compared to other people.
The meeting was in an expensive cafe and he paid for it, he even told me upfront that meeting is on him. Great, right? So we sit down, order some coffee and then start discussing what he needed.
The guy needed an ecommerce website built with backend and logistics system integrated. We discussed possible designs for the website and stuff too and so far the deal looked promising to both of us.
I explained him the cost estimate and told him that I would email him the final quote from myself once we discussed server cost and shit.
So now comes the bargaining part where he asked me to give him server and domain for free.
At this point, I suspected that he didn't know that servers and domains are not something that you make. You have to purchase and renew them periodically.
So I told that guy that he didn't understand the cost estimation and explained to him that X is the cost of making this fucking thing and Y is its monthly maintenance cost, if he wanted annually could be done too. And this Y did not include server and domain costing.
Now came the fucking tide, the guy straight up turned to his shit and told me I am lying and trying to con him. So I gently asked him if he had ever gotten any website made. To which, he said No, but he knows how the costing works.
I was like "Bitch?". So I calmly tried to explain that that's not how websites are done, delivered and maintained.
He didn't seemed to be understanding and kept on fucking repeating that he knows his shit and blah blah.
At this point, I was like "Okay. Fuck this dude then. I can find another project. " and then I told him that he'll need to find someone according to his needs.
Interestingly enough, the guy called someone and then walked out of the cafe while talking on phone. I waited for 5 minutes and he didn't come back so I decided I would pay for my coffee and leave. Turns out the guy had paid his bill before my arrival and ditched me with the excuse of the call.
But oh well, I think working with such an idiot would have been much worse than paying for that coffee.4
An old conversation with a former Team Lead (TL)
TL: The client has requested for a feature. Can you provide an effort estimation.
(gives estimation with task breakdown)
TL: 2 weeks? They wants it in 3 days!
PM: We have to do this this and this. How long will it take you?
Me: Looks like a 4 hr job
Me: Still not complete after 2 days
Me every time :D3
I hate it when I don't have all the requirements or they are fuzzy and I'm asked to estimate the task/project.5
pm: why this things are getting late in development.
me: no, I'm not late, on track, this will be done by end of the next week.
pm: but my estimation was for today EOD.
me: you never asked me for the estimation..
pm: we are here for that.
me: then do this yourself..*asshole*
Coworker: We you have to estimate these tasks.
Me (thinking): This task should take one day, but I'll add 4 hours in case something unexpected happens again.
* Estimates 12h
Coworker: Alright, the tasks for this sprint have been selected. Please start to work on them.
Me: * Starts working on certain task
* Sees time available for task
2d 4h (=20h)
* Writes coworker
Dude, that much time is overkill for that task!
Coworker: Yeah, the client said something similar.
Me: Then why did you estimate it that high?
Me: Ok, what am I gonna do with all that extra time? 😑
Around 4 hours in and almost done. What should I do with that extra time?
Task in question: Add a mutually exclusive field to a database table, add it to the form, test it and update the docs.
Enjoy the unrelated, clickbait cat15
I remember a bad freelance experience.
It was a sophisticated mobile applications (many UI, many customization, many APIs to integrate with). since the client have many future freelance projects, I give him 3 weeks as estimation time, and one day per week I work on its place to evaluate the progress and sync our work.
I worked hard, the quality was excellent.. but he kept ask for "small" changes and "small" features.. at first it was OK, and I was planning to give him a good example to profit from his future projects.. but he toke advantage for that and the same app extended from 3 weeks to 2 months and more.. he barely added a little to the initial price..
So what I did? I uploaded the code to a private repository in Bitbucket, added him to the team.. I wrote few lines how to sign and publish the app.. aand disappeared.
his luck, I disappeared from the country, I immigrated to another country for best job opportunity.1
The 5 stages of project management:
1 - the Mission:
Receive a project
2 - the Vision:
Over confidence and optimistic time estimation. Tell people how quick you can finish it.
3 - the Climax:
Adding unnecessary features. Try to be innovative. Think different. Feeling like a Rockstar.
4 - the Bargain:
Does not aware deadline is not far away. Reverse all unnecessary or impractical moomshot features. A bit stressed
5 - the Embarrassment:
Unpredicted obstacles or incidents. Late delivery or fail. Feel like a loser.1
Estimation shows I was put on about 13 watchlists after searching: "how to kill all children of single parent"
The struggles of a programmer1
Boss : Did you finish the service app?
Me: Nope, sir you told us to complete the immediate relief website.
Boss: Ok. Did u complete that?
Me: Nope, when it was half you told us to complete the clients web app?
Boss: Oh god. So is that over?
Me: Unfortunately, no sir a month more and we can present the project estimation report if we are free😁😉2
If your boss asks you for an estimation don't follow your gut coz your gut sucks. Ask for time to analyse before giving any estimation. And yeah don't forget external factors such as :
- third party tool down (github I'm looking at you)
- updates (windows, IDE, etc.)
- 90% of the time it doesn't work
- if it involves front dev just go ahead and double your estimation
- YOUR BOSS THINKS YOU OVERESTIMATED
There was a sales manager who was raked with overseeing me and another dev finish a last minute request project. He said at one point to the other dev that he was mad at developers because we understood something that he would never understand.
This same manager would often sit in on estimation meetings and constantly say that we were estimating too high and needed to come up with faster solutions. When we would offer him with caveats of possible technical debt or unintended side-effects/performance issues, he'd want us to go with that solution. He would then complain that we were always wanting to work on technical debt and that our application was slow. He would also ask for very high level estimates for large, unscoped features/apps without any meaningful level of detail, then hold us to the high-level estimated date even after revealing additional features previously unmentioned.
We learned to never compromise on the right solution and to push back hard on dates without proper scoping. They didn't learn, so I and most of the good devs left.
them: "Is it done yet?"
wisecrack: "Not yet."
them: "How close do you think you are to being done?"
wisecrack:"Dunno. It's going smooth though."
them:"well do you think it'll be done in a few days?"
wisecrack:"Well I don't know. Depends on if you want to keep playing 20 questions instead of letting me work."
them:"Well I'm just excited."
Literal conversation I just had ten minutes ago.
Less excited each day I have to answer the same set of questions, sometimes multiple times a day as if I know the answer.
What do I look like, a professional developer?1
I'm on my first free lance project, and devRant asks me for my horror story. -_-
Well, I undersold myself and gave such a stupid time estimation. Fortunately, the client was smarter, and he wants just half the work in same time period and will still gave me the same amount xD1
So, 9months ago my scrum master came to me and asked me to spearhead a "little" API... 2months work, no worries... I started the analysis and quickly discovered that that estimation was grossly understimated...
I convinced them that it was not 3 months but 4. I alerted to the design mistakes that were made, I pushed changes and made sure the entire project worked, was stable and the best it could be... 4 months passed, target proposition donne... Several change requests since then and we have been implementing braindead CR after CR for 5 months... Most CRs came from design issued I raised but we're ignored at the time just to come back and bite them on the ass...
Horrible design, bad documentation, amateur requirements analysis... However, delivered successfully with great acceptance...
What was my reward? They rearranged my team, removing virtually every good performer.
Never did I receive a "good work" or a "thank you"... I don't want one, I am just doing my job... However can you please not fuck me in the ass!? I now have 2 projects to spearhead at the same time and virtually no team... I can only handle so much!!!
Some good news? Ok, just announced I'm the project owner of a new project, that we will take advantage and make a 2 in one.... Great! Some more work for my lap! Thank you for the workload raise!... Ok, timewise? One month! And I still don't if that includes implementation....
TL DR; did my job, got fucked with more work...
Sorry for the vent, just wandering if I should try and not do my job...2
Each sprint lasts for 2 weeks. But I get the basic info to start working on my stories only when 3/4th of the sprint is completed....
So yeah....no one gives shit about estimation at least in my case.6
Me with estimations:
*enter the supermarket
*take a small basket because I need just one or two things..
*realizes I needed more things, basket get full, me getting tired.. oh shit..
Boss asks some changes
-ok boss, one hour at most, it's just adding few lines..
*then I realize that it's not that simple1
I am a senior Android dev, and I have an old colleague (iOS senior dev). We work on the same project, but in every estimation session he pushes a lot on the lower side: he estimates 4h a task that normally takes 6h or 8h, and the reason is that he has no social life. Right after work he starts working again from home (I can see all his commits), he also works almost entire weekends. I would say he works as average 12/13 h per day.
I don t want to work extra time (unpayed).
About him, it is his life, so I don t care...but at the same time this makes me pressure. I care a lot about quality of code, and I don t want to sacrifice it just for catching up. Most of the people in the team know that he works a lot extra time.
How would you handle this?28
People rant here about how they hate documenting things or writing tests or whatever.
Yes these things are not the most interesting but I have a feeling that we are forgetting about most horrendous of tasks - estimating. Especially in agencies. Especially related to altering legacy features. Especially big projects.
I mean, I'm spending time doing something that is basically dev's Voo Doo, hoping that I will be right... and usually I'm not.6
My first project it’s an emotional roller coaster. I was a little trainee/ junior dev at my job with a little more than a month learning RoR and one day my tech lead receives an email from the big boss saying: “We got a big client who wants a total redesign of his web and we said yes we can do it in a month, so please check if anything it’s reusable”, after reading my tech lead said to me “Do you want to help me with this ?” And well, we spend like 2-3 hours checking all the controllers, views, assets, etc. We conclude that the project was mostly front end changes and the back end will stay the same, so yeah it can be done in a month. The next day in a meeting with all the team I was nominee to be the person in charge of that project, because it was an easy project and all my teammates hate to do front end stuff, so I take the challenge. After that I met the Project Manager, another guy who recently start as PM about a month, so yeah we were two new guys who need to handle the project of a big client, nothing can go wrong. We did the planing, I give an estimation ( first one in my life ) for the tasks and added like 4 hours in case anything goes wrong. Then the first sprint came by, and I couldn’t finish it because the time given to some features was to low and the “design” was a mockup made by the PM, ok, no problems, we add more time to the tasks and we ask for a real design. At the half of the sprint the client start adding more and more stuff, the PM doesn’t talk back, just say yes yes yes. Then in a blink of an eye the easy project became a three months projects with no design at all, two devs ( a new guy who recently begin as dev enter the project ), just mockups and good hopes. But somehow we did it, we finish it! Nope. The early Monday of the next week I received an email of the PM saying we would have a second version and the estimation of the tech lead was a minimum of six months ( that became 8 months). This time was hell, because the client doesn’t decide what the hell he wants so a task would take a couple of days more or so, the PM became the personal bitch of the client, but it wasn’t his fault, because we later knew that the company became partner with this client and because of that the PM didn’t have too much choice :/, the designs were cool, but they weren’t on time ever, our only design guy had to do designs to our project and another 5 projects of the company, so yeah, we weren’t the only ones suffering. At the end we survive, the project was done and the client somehow was happy. Of course the project didn’t end and it was terminated half a year later, but I’ll always remember it because thanks to this project I was given the opportunity to work as a Front end dev and I’m happy still working as one.
We as developers often get a lot of pressure considering the deadline for $someProduct™.
But sometimes it happens to me that I need less than half of the estimated time for development of $randomFeature or $product™.
Do you think it is fair to (rarely) procrastinate a bit in order to not show your boss that it needed much less time, so he will not lower his time estimations for future stuff?1
I was asked to give estimation on an app, that:
1. No one has a clue what it does, even though there is v1 on the store with almost 10% of functionality working
2. No one has a clue what should be in the new rewritten version
3. We are already behind schedule and I have no clue why, I've just been told that
4. They need UI flow that shows how the app will work with static data and when API's are ready (because ya know, writing code is easier than creating wireframes and modifying them accordingly) I will then need to link app with API as if it is as simple as drinking a cup of water, especially that: 1. What is water? 2. Do I have a cup or is it given, and 3. Relax bro, drinking water is like eating a burger, piece of cake!
I'm not sure what to do, not enough that it's React Native but also spaghetti requirements that no one was able to answer my simple question: What is the app responsible of?
P.S.: Some say I must rewrite the old app ONLY, no new features, others say: Turn the new web portal into mobile app, I say: WTF is going one?6
project deadline already set in stone, but you still ask how long it's going to take?
"How long will it take to finish by Friday?"
After working for months , I've understood that we should overestimate the time that will be taken to complete a task
But now it's getting annoying , I mean It's been a week I finished my project and am ideal ,
Btw, the project timeline was a week , ( I finished the work in a day )
anyone having the same problem of mine? I was asked to give an estimation but I suck at giving estimations!
I once gave my boss an estimation of three weeks, and completed in 1.5 weeks + including unit tests for my work O_O4
P L E A S E
Do not just teach them on how to program. Teach them on how to properly write a documentation and how to properly execute a project. Like, don't start coding directly. Teach how to plan a project properly especially on estimation. (lol)4
MENTORS - MY STORY (Part III)
The next mentor is my former boss in the previous company I worked.
3.- Manager DJ.
Soon after I joined the company, Manager E.A. left and it was crushing. The next in line joined as a temporal replacement; he was no good.
Like a year later, they hired Manager DJ, a bit older than EA, huge experience with international companies and a a very smart person.
His most valuable characteristic? His ability to listen. He would let you speak and explain everything and he would be there, listening and learning from you.
That humility was impressive for me, because this guy had a lot of experience, yes, but he understood that he was the new guy and he needed to learn what was the current scenario before he could twist anything. Impressive.
We bonded because I was technical lead of one of the dev teams, and he trusted me which I value a lot. He'd ask me my opinion from time to time regarding important decisions. Even if he wouldn't take my advice, he valued the opinion of the developers and that made me trust him a lot.
From him I learned that, no matter how much experience you have in one field, you can always learn from others and if you're new, the best you can do is sit silently and listen, waiting for your moment to step up when necessary, and that could take weeks or months.
The other thing I learned from him was courage.
See, we were a company A formed of the join of three other companies (a, b, c) and we were part of a major group of companies (P)
(a, b and c) used the enterprise system we developed, but internally the system was a bit chaotic, lots of bad practices and very unstable. But it was like that because those were the rules set by company P.
DJ talked to me
- DJ: Hey, what do you think we should do to fix all the problems we have?
- Me: Well, if it were up to me, we'd apply a complete refactoring of the system. Re-engineering the core and reconstruct all modules using a modular structure. It's A LOT of work, A LOT, but it'd be the way.
- DJ: ...
- DJ: What about the guidelines of P?
- Me: Those guidelines are obsolete, and we'd probably go against them. I know it's crazy but you asked me.
Some time later, we talked about it again, and again, and again until one day.
- DJ: Let's do it. Take these 4 developers with you, I rented other office away from here so nobody will bother you with anything else, this will be a semi-secret project. Present me a methodology plan, and a rough estimation. Let's work with weekly advances, and if in three months we have something good, we continue that road, tear everything apart and implement the solution you guys develop.
- Me: Really? That's impressive! What about P?
- DJ: I'll handle them.
The guy would battle to defend us and our work. And we were extremely motivated. We did revolutionize the development processes we had. We reconstructed the entire system and the results were excellent.
I left the company when we were in the last quarter of the development but I'm proud because they're still using our solution and even P took our approach.
Having the courage of going against everyone in order to do the right thing and to do things right was an impressive demonstration of self confidence, intelligence and balls.
DJ and I talk every now and then. I appreciate him a lot.
Thank you DJ for your lessons and your trust.
- 5 days until customer integration test. I finished my work for the test a week ago so I am relaxed. 10 days of estimated work for other team, 1 dev scheduled for this task.
I reminded of the deadline, which seemed not realistic anymore; "Don't be so pessimistic" they said, "Everything is fine", "We'll get it done".
- 2 days to go and half of the system doesn't work, the external test system rejects all data (nobody had time to read the specs -> let's call it 'assumption based development' (ABD))
I reminded of the deadline, and that I would like to have an internal test with all components beforehand; "Don't be so pessimistic" they said, "Everything is fine", "Just some minor issues".
- 1 day to go and dev from other team called in sick... (and I can really empathize this decision); "Someone else can jump in and finish the work" they said.
- An hour later the test was cancelled not even 24 hours before it should take place. We could have rescheduled the test more than a week ago, that wouldn't have been so disgusting and even save our customer some hours of preparation effort.
I hate myself when I was right from the start but wouldn't enforce my position because I'm too kind sometimes.
Damit I always get in trouble after I give a deadline to any task :/
My estimation of work done is poor4
4 hours of estimation for a bug which won't repro
Fucking hate these testers (Floyidian bhai tu nai)14
Took a task with 3 story points ( mappable to ~2-3days) and wondered why it was so much more than the estimation. I expected to finish in 2 to 2 1/2 days but needed 4. Afterwards I just realized that I accidentally did more then needed and finished two upcoming stories as well, each 2 SP so 7SP for everything.
Feeling jumped from "man I could be faster" to "man that was really fast".
It feels like a fuck up, however, it is victory1
feel stupid bcoz you underestimated the time to complete the project, feel even more stupid when you do it again and again1
I think I'll finish this before lunch...
I think I will finish it today!
*end of the day*
Not finished... But almost
Been coding the whole day, but my estimation was way off :(1
Yesterday I had a conversation with a mobile app development company to make a clone of the current contacts app. 3 points from 10 mins conversations;
1. They offered me for a working prototype in just 35% of actual app development cost. They'll take 15 days to work on that. ( Me: "Do you mean the prototype that I created in 40 mins using invision and sent you its video recording?" after a little argument they agreed that they meant the same.)
2. They said they will have to embed the complete search engine in the app. (Really!! we never name searching in DB as "search engine")
3. They said they'll take approx 15 days in UI and UX. (Me: "will you change the designs I shared?" They: "It is our internal process, we can't give much detail on that")1
I know that everyone rants about clients "knowing how long it takes.."
But a customer says "it shouldn't take long because it is similar to .."
Just why..just because it looks somewhat similar doesn't mean it is just as simple/hard to make..2
I really hate it when I work on a user story consisting only of a cryptic title: "Implement feature X".
Esp. when I missed planning during a holiday and can only wonder who in their right mind would have given it 3 points.
Why thank you.
Sometimes, just pulling the acceptance criteria out of somebody's nose takes days. It doesn't get better once I realize that not all external dependencies have been properly resolved. It's worse if there are other departments involved, as then you get into politics.
Me: "We are dependent on team X to deliver Y before we should have even planned this ticket. I'm amazed that our team was even able to estimate this ticket as I would have only raised a question mark during estimation meeting. We could have thrown dices during estimation as the number would have been as meaningful and I'd have more time to actually figure out what we should be doing."
Dev lead / PO: "I understand. But let's just do <crazy workaround that will be live until hell freezes over> temporarily."
It's borderline insane how much a chaotic work flow is branded as agile. Let's call it scrum but let's get rid of all the meaningful artefacts that make it scrum.1
In an IT management class, the professor wanted us to estimate the operation costs for a small IT company, breaking them down by service offered. I remember creating a markdown file, multiple times executing the line `echo $RANDOM >> estimations.md`. We rounded the numbers slightly, pimped the document a bit and submitted a nice PDF. When we had to present our work, the professor asked us how we had proceeded to calculate those results. We told him a story about an Excel file we worked on, but did not submit, because we thought he'd be interested in the end result and not care about those details. He asked us to submit that Excel calculation, because he wanted to comprehend our method. So we got together, created an Excel sheet, copied our "estimations" into column C and called it "service cost". For column B, we used the same "cost per man hour" value (scientifically estimated using the RAND() function) for every row. Finally, we divided the "service cost" by the "cost per man hour" for every row, put the result in column A and called it "effort (in man hours)". The professor, being able to "reproduce" our estimation, accepted our solution.2
Had a project estimation meeting with my manager yesterday. I told him that it will take minimum 3 months to complete the project, and he finally settled for 15 days.
Why do we have these bullshit meetings at the first place?
During my time at university my friend got me a job, he said. He explained there was someone who was a member of some student club where they needed a website. Me and this person met and discussed the scope of the project, "nothing major but it will take some time" I thought to myself.
I gave her a rough estimation and told her my rate (extremely cheap). She looked at me and said "I was thinking a case of beer would be enough?".
We were both students, but seriously?? I almost contacted a proper company to give them the details just to get a real cost estimation to shove it in her snug fucking face!
Any dev who is asked to give “deadlines” then cried about how it’s “waterfall” and you cannot produce business requirement deadlines in agile methodology needs to stop being dependent on terminology and learn that part of programming is proper estimation.
Milestones, business deadlines and agile can go-exist. Anyone who says they don’t, then cries “waterfall” when asked to produce deadlines greater than 4 weeks out, please never work with me11
We estimated out how long a new project was gonna take using story points. It wasn't too big and the estimate came out to two months. We discussed it and it seemed to be all good.
Later on someone pointed out a Quora question where my boss asked why it would take so long to develop such a project.
My boss trusts people on Quora more than his own employees.2
Some managers think if one woman can deliver a baby in 9 months, then two can deliver a baby in 4 and a half...1
Recently I've been working on an ERP in logistics, and I was doing it solo. Gotta say that it's a big mistake to take this up alone, and architected the whole system based on the flexibility of scale. It took me more than 7 months to bang enough walls to realize that tech work is not what it used to be.
As of now there are a slew of meetings that I need to go to. It pretty much felt like the client was trying to find faults in my work.
Software timeline estimation becomes irrelevant, and work still needs to continue on anyways. At this point, I really do feel like giving up and just be a product manager instead. What say you?1
The mechanical team once told me, hey I want this feature on the software - sure it will take approx 1 week. Yea I know, but I want it without any bugs.
WTF?? They sure got some f words from me. 😅1
I once said that programming is the only talent I have. First thing what the manager said that moment "bullshit, it's not a talent, if you had spent so much time in something else you would be good at that too".
I didn't appreciate it that moment. You won't see me ranting about managers much but this guy was special. But, maybe he's right. I did spent so much time, you could hardly call it a talent.
I do consider myself good because I'm quite alright in making compromise, estimation and communication. This ofcourse has nothing to do with my time spent learning languages but it's the thing that devides me as programmer. Coding doesn't, I don't do at work what I learn privately. That's why some good developers don't write code privately. It's not really required in many cases. So my good is in the soft skills. Also, I care a lot about customers / issues. I care more about the user experience than code base. Wish more programmers did it.
Also I started when I was 8yo, didn't have internet so I learned digging before googling. Some times I should Google it faster, digging is not always a good thing.
That's it :)5
Good Morning Folks!!!
I haven't been posting in a while, besides the fact that I went thru a crazy psychiatric crisis 6 weeks ago, there have not been much news to share here.
Now, recovering and working again luckily, I have to face again the stupid pointy haired boss.
So, this fucker asked me for an estimation to build a simple web app.
He: Hey, can you make an estimation for this app
Me: sure, here it is.
He: *to the client*, here's the estimation for the web app you requested
Client: Uhmm, can I haz desktop for winbug$??
He: Let me check with dev
Me: Sure why not, we can do F# using MVU which is basically the same as using modern web frameworks
He: Sure, I'll tell that to the client.
Client: Oooohhh, C#, we lovez C#, can I haz discount?
He: Client wants discount to make it in C#.
Me: Oh, you can give him a discount to make it in F#, I never said C#
He: But your cv says you used C# ten years ago.
Me: Sure, but is not keeping up with functional design patterns, which is what I do.
He: Ok, so I'm offering him the discount in F#
He: So, project is approved, thanks for the discount, you have 3 weeks to present the product in C#.
Me: Sure, I'll start when I get the downpayment.
Me: I'm considering saying that I didn't understand that he wanted it in C#, and just do F# and not let him know until the project is done.
Dev work estimation is harder when the higher ups gives you a one line jira description and expect you to provide them with a timeline. Like how many times i gotta send the ticket back up the pipeline ><1
After months and months of waiting for the devRant mousepad to become available again in their store ... it turns out it's going to be ducking expensive to get that item (shipping costs as much as the product itself... and it could take 6 more weeks to arrive!) Came on, 1-6 weeks ... the variance of the estimation is huge ... I have lost the motivation :(10
Programming Lesson #7
TLDR: Beating deadlines is difficult
There is no easy way to give an estimation or deadline for a particular development task. Sometimes it takes a lot less or often a lot more time to finish a task than estimated deadlines and that's totally fine. Just make sure you have a manager/senior mentor who is well aware of this fact and doesn't scrutinize you regularly for missing deadlines.
I am going to make sure that when I get into a senior management position, I would show understanding and empathy towards my juniors similar to how my seniors show to me currently when I miss deadlines.4
Screw Scrum, screw it very much. Is it a task or a story? Oh let's make it a story to track points. What are points, really? *20 minute grilling always follows* Well they're kind of a roundabout way of talking about time without talking about time, mkay? But last time 2 points took you a day, what gives now? What do you mean points are for internal use, but how will management plan ahead for next quarter? Ok, let's mix in all those new people, and propotionately bump the expectation for the sprint, mkay? Yeah, they did 34 points per sprint over there, we'll just add those in. Oh, and by the way, after the 4-day estimation session we had where everyone was seizuring, I scheduled us at 645 points for the coming quarter, mkay? Don't worry, I added 15% for the "unexpected dtuff" so you're safe. Fuck you scrum, scrum-fall, whatever you are. Lost a dev lead role once for being honest about it after a year with a team that loved me, and projects completed more or less on time. Been reconsidered for a dev lead role for being honest about it in another place. Somebody else peddle this kool-aid, this one prefers a walk-on role in the wall to a lead role in the cage.5
Hey guys. I am in a situation where I need to decide wether to take on a new project or not. And if not, how to turn down that client so that I would not burn any bridges. So I need your opinions on this matter in order to make the final decision.
To make things clear heres some background info. 10 months ago I quitted my fulltime position in another EU country and went back to my own home country. 10 months forward till today and I have my own ltd company which currently has 5 projects. Its doing pretty well money wise. All projects combined, I already earn more then I ever did and I need to work max 10 hours a week since all projects are remote projects so I dont waste time on useless meetings and etc. However I dont feel fulfilled or challenged anymore because surprise surprise doing well paid projects doesnt guarante your sense of fulfillment.
So I noticed that I have lots of spare time which I spend diving into rabbitholes with hobby projects. I decided that its time to scale my company and take on more projects and maybe even hire more people.
So I started searching for other projects I could work on (prefferibly remote projects or flexible ones where I could come in 2-3 days a week in office and work remotely rest of the week). Reason being that I am already out of sync with fulltime position lifestyle and I am totally result oriented, not punch in my hours and go home oriented.
For exampleIf i get my weekly tasks I prefer to do them in 1-2 days (even if it requires doing double shifts which rarely but happens) but then I want to have rest of the week off. Thats how my brain works and thats how Im wired. I cant stand fulltime positions especially in enterprise bigger companies where I come in and do maybe 2 hours of actual work everyday because of all useless meetings and blockers from backend/etc. Its soul crushing to me.
So I posted linkedin ads and started searching for new clients/projects. One month ago I went to an interview for an android project in a startup.
The project looked interesting enough. Main task was to rewrite their android app from java to kotlin. Apparently their current current app was built by a backend developer who wants to focus solely on backend.
So during the interview they showed me their app which was quite simple frontend wise but not so simple backend wise from what I was able to figure out.
Their project lead (also a backed guy) asked me my estimation of price and completion of task. I told them maybe 2-3 months to do everything properly.
Project lead was basically shocked because all other candidates told him they can rewrite the app from java to kotlin in 2-3 weeks. I told him that everything is possible but his app quality will suffer and for a better estimation he would we would need to sign an NDA so I could evaluate the costs. So we ended the interview.
After that we kept in touch for one month (it took them one month to google a generic NDA and sign it digitally with me).
So heres the redflags I noticed:
1. They dont respect my time. Wasted 1 month of my time and after signing NDA gave me 2days to estimate their project and go to a meeting and give them detailed info about what I can offer. I thats not a brain rape then I dont know what it is
2. They are changing initial conditions we talked about. We agreed on rewriting the codebase and be done with it. Now they prefer a fulltime worker who would be responsible for android app as his own product. So basically project lead was not able to find a fulltime dev so now hes trying to convert me (a company owner) to his fulltime worker.
3. Lack of respect. During the interview he started speaking in his own native language to me with some expression (he seemed pissed off at that moment when he switched languages).
4. Bad culture fit. As I said Im used to relaxed clients and projects where I dont need to be chained to a desk a monitored and be micromanaged. I mean lets sign a contract give me access to your codebase and tell me what to do, I will produce results and lets be done with it.
5. Project lead is a backend guy who doesnt understand how complicated android apps can be. No architecture and no unit tests are in his frontend app. He doesnt care about writing proper app since he ships it in his own device so he doesnt need to worry about supporting custom devices or different api levels of android and etc. But not having any architecture? Cmon.
So basically I am confused. Project lead needs a fulltime dev but hes in contact with me in hopes that I would sign a fulltime contract. But how I can work fulltime if all what I can see are redflags?
Basicaly I thinkthis was a misundersanding. Im searching for fulltime remote projects and hes offering fulltime inhouse projects. Project lead never outsourced so hes confused as well.
As you can see decision is already basically made to turn him down, I just need to know how to tell him to fck off in the most polite manner and thats it.6
If I need 2 weeks to implement a new feature, I need at least one more week to find better solutions which make the code easier to read. Then I would like to spend yet another week to think about other solutions to make sure I can't find one that is even better..
I hardly ever get that time but when I do, I create something beautiful..
The last time I was able to reduce > 2000 lines of code to a about 50 lines generic service which is easily extendable and understandable.
Do you include stuff like this in your estimations?
Talking about some new feature he haven't totally thought about. so i tell him to think about it.
Talking about a bug, but can't reproduce it.
Talking about another enormous new feature but halt it after hearing the initial estimation.
Total time waster = 1.5 hours for every day.
DON'T LET CUSTOMERS WASTE YOUR DEVELOPMENT TIME.
instead of talking - use project tracking software (i.e. JIRA)
Working in an Agile manner provides numerous ways to lessen or eliminate dependence on estimates. #NoEstimates
Be me at new job.
Just learned that bonus is tied to project estimate skills. Range is +- 25% of estimate vs reality.
They are waterfall. I've spent the last three years as Agile.
Our team moved to scrum a while back. But everybody still does story point estimation by mentally assigning 1 story point for each day of work it would require. :/
On top of that, management compares the performance of two *different* scrum teams based on the story points they finish in a sprint. ://
How pervasive is underestimating project/sprint work to land contracts and expecting devs to make it work in time?
How often are you expected to work more than 8?2
Anyone in crypto mining?
Have a small question: why the fuck I am payed half of what I was expecting?!
I know the estimation is not accurate, but half of that or less?!?
(Estimation from the H/s)3
How do you guys explain to your CEO, PM, boss [whatever] that you cannot give them accurate time estimates for debugging? 😅
If something i made has a bug, and uses external libraries, not even debugging my code (more like, how i used / implemented something has a problem), i obviously have to first of all check what the hell is wrong ! I dont just make bugs for fun and happen to know exactly what is the problem and therefore the solution ...
PM asked me estimation hours for medium scale project, which can last for a year, most probably more. Any suggestions? :p3
My team leader (Indian) asked me, in my second month in the job, to estimate the required time for testing some screens.
I made the estimations based on my experience and understanding of "screen testing" then discussed it with him and he accepted the estimations.
When the time came to start the task, he sent me a document about writing automation test for the screens,which was new thing to me.
The task took more than the estimations (3 times) and I have been blamed because I made wrong estimations.
The team leader was the one who blamed me!!!
Never estimate a task without full description...2
So I'm going to have to give an estimate for how long this new project is going to take. It's about time I learn how to properly estimate projects. Or does the learning only happen with more experience? 🤔3
My most difficult estimation job ever.
Will I be able to conquer technological immortality before I die ?2
Time estimation of software development should be a product of observation of historical evidence, and many factors that come with it, like:
- What was the language used?
- How many developers worked on it
- How many years each developer has in experience in programming?
- IQ of each developer
- How many kids they have
- The weather
Analyzed by data scientist.
Not something you get by asking developers and interrupting their work, because many are people with superior complexity who often overestimate their capability of solving given problems.
Don't trust them to estimate!4
working memory I think I have
> what my work practise require
> average dev self estimation
> what average dev have
> what I have
> what I think I have, when I cannot live up to the expectation of my working practises.
> A fucking goldfish
DAMNIT CHANGE MY DAMN PRACTISES... or I just keept it functional languange completly...
As experienced developers, how do you do time estimation in spite of things being stuck and new, unexpected, stuff coming at you with no extra time? This has happened to me and it's depressing and frustrating to have to ask for an extension again and again. Plus, the code and tests for it get boring.8
Does anyone really enjoy doing self-assessments?
I find them agonizingly painful to do. I'm not usually one to brag about my own accomplishments so this is unnatural to me. Yet, it seems to be the way of things.
If your manager and you don't know where you stand in each other's estimation you need to talk more.7
Newton's first law integrated into work estimation:
For every simple task there is a complex solution which devs will choose and it will take an infinite amount of time, unless acted upon by an unbalanced force.
where "unbalanced_force" belongs to the set union of ["managers", "POs"] and "anyone else who doesn't even work on that project".1
How do you estimate cost for project in freelancing?
What would be your cost of simple app n website seprately?
Share your suggestions on full time freelancing6
It’s becoming frustrating. Not only do I have to code and solve problems but I also have to have opinions on how to allocate work, manage a team, try to give ideas on the team setup etc. Kanban is used as a silver bullet. The one and only solution with dussins of columns. Trying to work with agile in mind while the rest of the organization is working in accordance to the waterfall modell. Every damn task is estimated in hours. The estimation is always off with at least 20%. It was fun in the beginning. Less fun now when we keep changing the way we work every six month. It feels like the managers are throwing work at us to solve. I want to think about code and technical solution and less of the managing stuff.7
As lead dev of a team, should I be writing estimation docs (more like novels) for new projects? I'm even told it should be at least n pages like back in frickin' high school.
Am I in the wrong for thinking it should be the PM's job to communicate with us devs and then write these useless docs to present to stakeholders, and he's just making me do his job while he's doing whatever else at home?
This is a genuine question. Am I being a lazy dick here?1
Well I'm back on this stupid project with this stupid Product Owner and I really hate this, it really demotivates me.
I was assigned to this project (data analytics) for like 6 months, working alone with this stupid PO that knows nothing about team management or project management.
The guy had a "methodology" where he established all task to be done daily and would not tell me what we have to do in the entire project but instead would tell me day by day all the tasks to be done in each day. This means that HE was the one making the time estimation which is plain wrong!.
Anyways, I talked to him and told him that I need to have a wide overview of the project in order to be able to make a good time estimation, and it kind of worked.
But the guy is a pain in the ass, calls me every 4 hours to "talk" about the project and texts me every hour to check "how are we doing?".
This project was killing me, I had no motivation to work on it, I hated every minute of it, I didn't like it at all to the point my boss (not him) talked to me and asked me what was wrong with me. I told him: This is not the project for me. He told me: Ok let's try to move you to another project.
After six months of agony, the project was stale (customer approval, paperwork, blah, blah) I was assigned to two other projects that I liked, more software architecture and development, not data analytics.
And last week my boss came back to me with "well, the project was approved so we need you back at it".
WHAT PART OF I'M NOT THE RIGHT GUY FOR THIS PROJECT DIDN'T YOU GET?
Now I'm again with this dude, calling me, texting me, sending me infinite emails, asking for minutely updates...
I really don't want to be working on this project.
Absolutely hate it when managers give an estimate for an hour tasks to be completed in 7 days.. why can't they just accept they are shit and ask for the effort estimation from the concerned dev.. all the AGILity goes in an awry..2
Just discovered "git hours" (https://github.com/kimmobrunfeldt/...) and it's as simple as awesome! I'm gonna start using it in combination with RescueTime to check how accurate are my estimations... Any thoughts, suggestions or experiences on this, guys?
Experience, intuition and 50-200% risk premium.
For me it is important to not put too much effort in it, as the developer estimation is usually mangled through sales and management anyway and doesn't have much to do with the final price.
And as nobody really bases internal budget and schedule on it as well, it's kind of pointless in most cases.
How does your organisation and team balance PR comments demanding changes and dev time?
Here, while fixing PR comments we sometimes end up wasting as much time as we took in actually developing the feature... As a result, almost every major user story overshoots the estimation and almost every sprint gets delayed.
Yes, to each his own; but talking in general, why do you think this time wasting happens?
Do you think that happens because some of us are not as experienced as the others, the existing code not being up to the mark giving a bad example, or just a skewed review process?2
In the first place I dont do it that often in private projects because the estimation is always wrong.
At work i just think about best and worst case scenario and the average time it could take. If the the worst case scenario is really time intensive and there are a lot of factors that could go wrong in contrast to the best case, I significantly increase the estimated time for the task. Otherwise its 1/6 best case; 1/6 worst case; 4/6 average time2
Fcuk windows with its Creators update which takes forever. Would be useful to have for each update an estimation of how long its installing will take.14
Is it normal that devs go back home on time? Or it's only me sometime I didn't have any progress at the end of the day coz I stuck at something? Luckily my manager is cool with my 1 day extra for time estimation. Haha.