3,544 reputation
819
bio website
location
age
visits member for 3 years, 6 months
seen 19 hours ago

Oct
25
answered Why don't research papers that mention custom software release the source code?
Oct
20
answered Why learn more programming languages?
Oct
19
answered Refactoring and Open / Closed principle
Oct
18
comment What are programmers made to do in spare time in jobs?
Testing and documentation are potentially never ending tasks, Even more so than polishing the code. You can always do a better job of hunting down corner cases, see how your rotational integration handles a rattleback, do a better job documenting the design or how to use the product.
Oct
17
comment What kind of process should I use to learn a big system?
@SnOrfus - Companies put new employees on probationary status. They have to. Companies make mistakes in hiring. This goes both ways. New employees should view new employers as probationary. People accept job offers that in hindsight are really bad mistakes. Not treating a new employer as probationary is harmful to career, health, sanity. Lack of a mentorship program nowadays (the concept is not new) is one of those red flags that your employer is Nightmare, LLC. Looking for a job after having just landed one is not a fun prospect. Next time around, remember to ask the right questions.
Oct
16
comment What kind of process should I use to learn a big system?
As a side comment, new employees are almost always on probationary status. Companies sometimes do make mistakes when hiring. Joe "Looks Great on Paper" Smith is in reality Joe "Can't Program for Beans" Smith. This probationary status is a two-way street. People sometimes make mistakes when accepting jobs. What looked like DreamJob, Inc. is actually Nightmare, LLC. You should be just as ready and willing to fire your new employer as they are ready and willing to fire you during this probationary period.
Oct
16
comment What kind of process should I use to learn a big system?
Would the random driveby downvoter care to comment on the reason for the downvote?
Oct
16
answered What kind of process should I use to learn a big system?
Oct
16
comment Are long methods always bad?
@jk. - generated code isn't really source code. That is exactly the conclusion we came to. Those 50,000 lines just don't count. Not as SLOCs, not as artificially bumping our productivity rate, not as artificially reducing our defect rate. The code generator -- now that does count as source code.
Oct
16
awarded  Nice Answer
Oct
15
comment Are long methods always bad?
@Javier: Even at initialization time it can be a very bad idea, at least in a Monte Carlo setup. A simulation that takes minutes to initialize, but only seconds to run goes against the grain of getting tens of thousands of runs in overnight. Changing key initialization time tasks to compile time tasks fixes that problem. We've tried a number of techniques, including the compiled data structure approach. It just doesn't work or would be very hard to make work in some cases (e.g., a huge gravity model). The straight line code approach is easy to autogenerate, easy to verify. It's just ugly code.
Oct
15
comment Are long methods always bad?
@JoachimSauer - Because parsing a large data file at run time in a Monte Carlo setup is a bad idea. A very, very bad idea.
Oct
15
answered Are long methods always bad?
Oct
11
answered Verfication vs validation again, does testing belong to verification? If so, which?
Oct
11
awarded  Enthusiast
Oct
10
comment Of what significance is the solution to the game of checkers in AI research?
Or the game go, which was once thought to be immune compared to relatively simple games such as chess. Go is now also being (somewhat) successfully attacked by AI techniques.
Oct
10
comment Should you promise to deliver a feature that you aren't sure if its implementable?
@mattnz - It's tough to say "No", but sometimes it's needed. "Can you get that change done by tomorrow?" Well, no. But I can get it by the end of week. "Could you do a Monte Carlo analysis with each these several hundred control variables varied randomly per run?" That's the one that garnered the "in which millennium do you want the result" response. I discussed the curse of dimensionality and suggested we pare that list down to something reasonable. How you say no is important, but you do sometimes have to say no. Diplomatically, of course.
Oct
10
comment Is a coding standard even needed any more?
When I'm king and get to write the rules, I make it so the style must be the same at the module level (rather than project/library level). The first author of a module gets to choose the style for that module, within limits. When I'm not the king, I try to live within the rules within reason. If the rules are downright silly, or if I have to read a 300 page PDF just to determine what the rules are, well, I kinda ignore them. That's the chief problem with silly or verbose rules. People ignore them.
Oct
9
comment What can be done to decrease the number of live issues with applications?
So you should advocate for more time for testing by you programmers, not none.
Oct
9
answered What can be done to decrease the number of live issues with applications?