|
Thread Rules 1. This is not a "do my homework for me" thread. If you have specific questions, ask, but don't post an assignment or homework problem and expect an exact solution. 2. No recruiting for your cockamamie projects (you won't replace facebook with 3 dudes you found on the internet and $20) 3. If you can't articulate why a language is bad, don't start slinging shit about it. Just remember that nothing is worse than making CSS IE6 compatible. 4. Use [code] tags to format code blocks. |
On November 23 2012 06:51 phar wrote:Show nested quote +On November 22 2012 16:09 Craton wrote:I would definitely never assume others are right, though. That's always a disaster waiting to happen. You should take what anyone says with a many grains of salt and do more research on it. Yea, I meant assume other people at my work are right, not in some random online forum. At work I'm surrounded by people who are significantly better than me at programming and smarter in general, so it's a pretty safe bet. Even if they do end up being wrong, I stand by what I initially said. It works more often than not to start from their position and go from there, working through the logic.
No. Other people are always wrong. You are also always wrong.
With those 2 rules, you will find it a 100 times easier to fix problems. I don't know how often i had to debug the code of some coworker and he said "here, this part is wrong" and by ignoring him and stepping through everything properly myself, i found out that the error was a hundred lines before the point he called wrong. If i had accepted that he was right, i would have spent hours more checking for the problem at the wrong place instead of checking the whole process for the right spot.
Accept that everyone makes mistakes - great programmer or not - and triple-check every assumption, your own as well as those of others. Every assumption will turn out being wrong.
|
Debugging code is a whole different ballgame, in which all bets are off, up is down, left is right, and heisenbugs rape your sleep.
For context, I was just talking about design decisions, at the level of how to structure systems or which libraries are appropriate. You're entirely correct about debugging actual code.
|
Years back when I was interning we had an ASP.NET solution that had a custom-built library that handled all of the database interactions (it was a really cool system, but way above my head at the time). I worked with one other intern.
One day I'm working on something and getting bizarre results from the DB (iirc the library was returning things as the wrong kind of object) and I couldn't figure out why. I went and got some help from a veteran developer and he's sitting down at my machine, manages to reproduce the bug, but can't figure out why it's being weird. After 10 minutes or so of trying different things, everything starts working correctly. The code was never changed, but suddenly it went from unexpected errors to a-okay. Yes, cleaning and rebuilding was the first thing we tried.
It's that kind of thing that drives you mad. The absolute worst kind of bug is one you know existed and you never fixed because you know at some point down the road it's gonna be back.
|
This is not a well thought out question but I was wondering about this:
in C++ when a compiler optimizes a loop does it sometimes translate it to a bunch of inline statements with && and || ?
|
On November 23 2012 10:25 JeanLuc wrote: This is not a well thought out question but I was wondering about this:
in C++ when a compiler optimizes a loop does it sometimes translate it to a bunch of inline statements with && and || ? The Compiler often translates stuff in structures that are not even intelligible to humans.
|
On November 23 2012 07:46 Morfildur wrote:Show nested quote +On November 23 2012 06:51 phar wrote:On November 22 2012 16:09 Craton wrote:I would definitely never assume others are right, though. That's always a disaster waiting to happen. You should take what anyone says with a many grains of salt and do more research on it. Yea, I meant assume other people at my work are right, not in some random online forum. At work I'm surrounded by people who are significantly better than me at programming and smarter in general, so it's a pretty safe bet. Even if they do end up being wrong, I stand by what I initially said. It works more often than not to start from their position and go from there, working through the logic. No. Other people are always wrong. You are also always wrong. With those 2 rules, you will find it a 100 times easier to fix problems. I don't know how often i had to debug the code of some coworker and he said "here, this part is wrong" and by ignoring him and stepping through everything properly myself, i found out that the error was a hundred lines before the point he called wrong. If i had accepted that he was right, i would have spent hours more checking for the problem at the wrong place instead of checking the whole process for the right spot. Accept that everyone makes mistakes - great programmer or not - and triple-check every assumption, your own as well as those of others. Every assumption will turn out being wrong. That advice contradicts itself lol
|
On November 23 2012 10:25 JeanLuc wrote: This is not a well thought out question but I was wondering about this:
in C++ when a compiler optimizes a loop does it sometimes translate it to a bunch of inline statements with && and || ? http://en.wikipedia.org/wiki/Loop_optimization
|
On November 23 2012 10:25 JeanLuc wrote: This is not a well thought out question but I was wondering about this:
in C++ when a compiler optimizes a loop does it sometimes translate it to a bunch of inline statements with && and || ?
It comes down to the specific compiler and its configuration. Some compilers have an 'unroll loops' switch which does what you might be thinking about here.
|
On November 23 2012 09:54 Craton wrote:I went and got some help from a veteran developer and he's sitting down at my machine, manages to reproduce the bug, but can't figure out why it's being weird. After 10 minutes or so of trying different things, everything starts working correctly. One of my co-workers used to be a professor of theoretical physics, so whenever that happened with him around we'd blame it on the negation field:
http://www.phdcomics.com/comics/archive.php?comicid=821
|
Zurich15343 Posts
On November 22 2012 22:18 tec27 wrote: You shouldn't need to poll. The change event should do everything you need. You are most likely right. This gig is so wrong ... I am hired for close to $10k to write like 20 lines of code.
|
On November 23 2012 18:16 zatic wrote:Show nested quote +On November 22 2012 22:18 tec27 wrote: You shouldn't need to poll. The change event should do everything you need. You are most likely right. This gig is so wrong ... I am hired for close to $10k to write like 20 lines of code. That's the awesome part of this job. A few years back, I was hired to move data between excel files or something like that, I got like 2 weeks paid to do this... did it in 1-2 hours using normal sorting and copy+paste. When the people who pay the money don't understand something enough to make reasonable estimates, it's a good day to make money.
|
On the other hand it sucks when they who do not understand how things work tend to underestimate the amount of time it takes to make it work...
|
On November 23 2012 18:54 KaiserJohan wrote: On the other hand it sucks when they who do not understand how things work tend to underestimate the amount of time it takes to make it work...
Which is unfortunately the majority of the time for business app developers, according to every story I've ever heard from business-devs.
Good thing I'm going to be in research or game development forever.
|
On November 23 2012 19:14 heishe wrote:Show nested quote +On November 23 2012 18:54 KaiserJohan wrote: On the other hand it sucks when they who do not understand how things work tend to underestimate the amount of time it takes to make it work... Which is unfortunately the majority of the time for business app developers, according to every story I've ever heard from business-devs. Good thing I'm going to be in research or game development forever. Hmm, it's not a problem where I'm working... it's a big company though and the business part and the developer part are kept seperate, the business part can't make proper estimations for us developers, we make the estimations and then they decide if they are willing to pay for it, internally.
|
On November 23 2012 19:14 heishe wrote:Show nested quote +On November 23 2012 18:54 KaiserJohan wrote: On the other hand it sucks when they who do not understand how things work tend to underestimate the amount of time it takes to make it work... Which is unfortunately the majority of the time for business app developers, according to every story I've ever heard from business-devs. Good thing I'm going to be in research or game development forever. you're funny... game development isn't exactly known to be laid-back, slacker-friendly work.
|
Zurich15343 Posts
On November 23 2012 19:19 Tobberoth wrote:Show nested quote +On November 23 2012 19:14 heishe wrote:On November 23 2012 18:54 KaiserJohan wrote: On the other hand it sucks when they who do not understand how things work tend to underestimate the amount of time it takes to make it work... Which is unfortunately the majority of the time for business app developers, according to every story I've ever heard from business-devs. Good thing I'm going to be in research or game development forever. Hmm, it's not a problem where I'm working... it's a big company though and the business part and the developer part are kept seperate, the business part can't make proper estimations for us developers, we make the estimations and then they decide if they are willing to pay for it, internally. If it's all in house that should work. In consulting it's more like:
Customer: Hey, we need this and this. Sales rep: No problem! We can do ANYTHING! And it'll cost you less than getting the same from Consultancy X! Customer: Great! It's a wrap!
Sales rep: Sup, here are the business specs for a 2 year project. You have 6 weeks. Consultant: ...
|
On November 23 2012 19:30 Fyodor wrote:Show nested quote +On November 23 2012 19:14 heishe wrote:On November 23 2012 18:54 KaiserJohan wrote: On the other hand it sucks when they who do not understand how things work tend to underestimate the amount of time it takes to make it work... Which is unfortunately the majority of the time for business app developers, according to every story I've ever heard from business-devs. Good thing I'm going to be in research or game development forever. you're funny... game development isn't exactly known to be laid-back, slacker-friendly work.
But it doesn't rely on external estimations of your work! Being indie you have no limitation (except until you and your companions run out of food) and with a publishers you have a budget (that can possibly even be extended) that you know about beforehand. In both cases, you're the one who has the last say in what's doable and what's not, and you're not handed three months to complete a project which would be more fit for a year
In other words, if you fuck up, it's most likely your fault for wanting to do too much.
|
On November 23 2012 19:14 heishe wrote:+ Show Spoiler +On November 23 2012 18:54 KaiserJohan wrote: On the other hand it sucks when they who do not understand how things work tend to underestimate the amount of time it takes to make it work... Which is unfortunately the majority of the time for business app developers, according to every story I've ever heard from business-devs. Good thing I'm going to be in research or game development forever. I just know that too well. I've been working as an app developer for almost 10 years now, mainly on customer specific solutions. There's a huge lack of consulting between sales and development, so I never really get the time I need. Often when you finished the first version of the software according to specification the customer starts to get ideas which may look simple to him, but more often than not required complete reworking of integral parts.
It's often a vicious circle, not enough time, not enough information, customer does not know what he wants, sales always wants to sell and makes compromises.
Also can't even count how many times I've made total switches between programming languages and right now regularely have to switch between different ones, because most of our projects aren't in the same language (currently C, C++, C#(.NET), Visual Basic (legacy software support, ugh), Delphi, Java).
Is anyone else in a similar situation and how do you cope with that? When I have to switch between 3 languages and 3 different projects in one day I always need a few minutes to adjust to the syntax again and often catch myself trying to use Delphi syntax in C or something like that. Quite straining sometimes to be honest...
|
We don't really have a "sales" team where I work (we are government contractors). Government puts out RFPs and then we have a project manager and technical manager write the proposal, which includes doing the time estimations.
It's really stupid for any company to have someone doing time, labor, and material estimations that isn't an experienced project/technical manager.
|
Hi everyone, I was programming a few programms about 2 years ago. I was trying Java back then. But the my school and everything came together and i stopped doing anything in this direcion. Now i want to start again maybe with C#. But i cant get an idea neither can i get any help... I wanted to know if i could help anybody with a project he´s working on... or anything like this to get me in touch with programming again.
|
|
|
|